From 90e4aa5da237ee9b8b7176a7ce34b0b825553255 Mon Sep 17 00:00:00 2001 From: plun1331 Date: Mon, 9 Sep 2024 12:57:54 -0700 Subject: [PATCH] update from master (#5) * chore(deps-dev): update pylint requirement from ~=3.2.3 to ~=3.2.4 (#2482) Updates the requirements on [pylint](https://github.com/pylint-dev/pylint) to permit the latest version. - [Release notes](https://github.com/pylint-dev/pylint/releases) - [Commits](https://github.com/pylint-dev/pylint/compare/v3.2.3...v3.2.4) --- updated-dependencies: - dependency-name: pylint dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: limits on integer and number option types (#2462) Signed-off-by: JustaSqu1d <89910983+JustaSqu1d@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Co-authored-by: Lala Sabathil * feat: update monetization (#2438) * fix: always cast PartialMessage(able) IDs to int (#2406) * force partial IDs to int * changelog * Update CHANGELOG.md Co-authored-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Signed-off-by: UK <41271523+NeloBlivion@users.noreply.github.com> * different fix * adjust changelog --------- Signed-off-by: UK <41271523+NeloBlivion@users.noreply.github.com> Co-authored-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> * feat: add Attachment.title (#2486) * feat: implement MemberFlags (#2489) * feat: implement RoleFlags (#2487) * implement roleflags * style(pre-commit): auto fixes from pre-commit.com hooks * cl * style(pre-commit): auto fixes from pre-commit.com hooks * Update discord/flags.py Signed-off-by: plun1331 * Update CHANGELOG.md Co-authored-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Signed-off-by: UK <41271523+NeloBlivion@users.noreply.github.com> * fix docs * again? * better formatting * flags.py aktualisieren Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> * test formatting fix * resolve conflicts * revert --------- Signed-off-by: plun1331 Signed-off-by: UK <41271523+NeloBlivion@users.noreply.github.com> Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: plun1331 Co-authored-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> * fix: enum option issues (#2463) * patch enums * cl * document enum choice/autocomplete behaviour * Update discord/commands/options.py Co-authored-by: Icebluewolf <44532864+Icebluewolf@users.noreply.github.com> Signed-off-by: UK <41271523+NeloBlivion@users.noreply.github.com> * clarify docstring and warn * style(pre-commit): auto fixes from pre-commit.com hooks * import * style(pre-commit): auto fixes from pre-commit.com hooks --------- Signed-off-by: UK <41271523+NeloBlivion@users.noreply.github.com> Co-authored-by: Icebluewolf <44532864+Icebluewolf@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Lala Sabathil * feat: implement MessageCall (#2488) * implement messagecalls * style(pre-commit): auto fixes from pre-commit.com hooks * adjust design + cl * style(pre-commit): auto fixes from pre-commit.com hooks * __all__ * message.py aktualisieren Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> --------- Signed-off-by: UK <41271523+NeloBlivion@users.noreply.github.com> Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> * chore(deps-dev): update pylint requirement from ~=3.2.4 to ~=3.2.5 (#2484) Updates the requirements on [pylint](https://github.com/pylint-dev/pylint) to permit the latest version. - [Release notes](https://github.com/pylint-dev/pylint/releases) - [Commits](https://github.com/pylint-dev/pylint/compare/v3.2.4...v3.2.5) --- updated-dependencies: - dependency-name: pylint dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix: remove_application_command missing case (#2480) * fix: remove_application_command has wrong logic * changelog * fix: premium buttons and entitlement iterator (#2490) * Fix premium buttons * Fix EntitlementIterator call * Test yarl bool * Add TODO * style(pre-commit): auto fixes from pre-commit.com hooks * Cast `exclude_ended` to int * Fix cast * Adjust fetch_entitlements to match other iterators * Add changelog --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * fix: update audit log filtering & sorting (#2371) * fix: either i'm high and it won't work, or i'm god and this works * Update iterators.py * Update iterators.py Signed-off-by: Lala Sabathil * chore: clean code Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> * chore: add changelog entry Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> * chore: add changelog entry Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> * style(pre-commit): auto fixes from pre-commit.com hooks * Update guild.py Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> --------- Signed-off-by: Lala Sabathil Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Co-authored-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * chore: remove `vanity_code` from `Guild.edit` (#2491) chore: remove vanity_code from Guild.edit * fix: further address audit log issues (#2492) * chore: improve nesting error message (#2275) * chore: improve subgroup limit error message * Changelog * style(pre-commit): auto fixes from pre-commit.com hooks * Update discord/commands/core.py Co-authored-by: Lala Sabathil Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> * Update core.py * style(pre-commit): auto fixes from pre-commit.com hooks * Update CHANGELOG.md * style(pre-commit): auto fixes from pre-commit.com hooks --------- Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Lala Sabathil * docs: add missing attributes to UserCommand and MessageCommand (#2494) * chore: update readme and changelog (#2493) * chore: fix incorrect pull ID * chore: update key features * chore: add dot * chore: add 2.6 header * chore: move the 2.6 header * chore: add complete changelog link * fix changelog position of #2275 * Update CHANGELOG.md --------- Co-authored-by: Lala Sabathil * docs: add docs for Interaction.entitlements (#2495) Signed-off-by: plun1331 * fix: Rename 'cover' to 'image' in relation to ScheduledEvent (#2496) * fix: Rename 'cover' to 'image' in relation to ScheduledEvent * docs: Typo * style(pre-commit): auto fixes from pre-commit.com hooks --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * chore(deps-dev): update coverage requirement from ~=7.5 to ~=7.6 (#2497) Updates the requirements on [coverage](https://github.com/nedbat/coveragepy) to permit the latest version. - [Release notes](https://github.com/nedbat/coveragepy/releases) - [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst) - [Commits](https://github.com/nedbat/coveragepy/compare/7.5.0...7.6.0) --- updated-dependencies: - dependency-name: coverage dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix: inverted type hints in `CheckAnyFailure` (#2502) * chore(deps-dev): update mypy requirement from ~=1.10.1 to ~=1.11.0 (#2503) Updates the requirements on [mypy](https://github.com/python/mypy) to permit the latest version. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.10.1...v1.11) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): update pylint requirement from ~=3.2.5 to ~=3.2.6 (#2505) Updates the requirements on [pylint](https://github.com/pylint-dev/pylint) to permit the latest version. - [Release notes](https://github.com/pylint-dev/pylint/releases) - [Commits](https://github.com/pylint-dev/pylint/compare/v3.2.5...v3.2.6) --- updated-dependencies: - dependency-name: pylint dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): update pytest requirement from ~=8.2.2 to ~=8.3.1 (#2506) Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.2.2...8.3.1) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: minor `InputText` formatting issues (#2507) * chore(deps-dev): update pytest requirement from ~=8.3.1 to ~=8.3.2 (#2508) Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version. - [Release notes](https://github.com/pytest-dev/pytest/releases) - [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pytest-dev/pytest/compare/8.3.1...8.3.2) --- updated-dependencies: - dependency-name: pytest dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix: avoid premature garbage collection of tasks (#2510) * avoid premature garbage collection of Client tasks * style(pre-commit): auto fixes from pre-commit.com hooks * remove typehint (pre-commit makes it non compatible with older python) * style(pre-commit): auto fixes from pre-commit.com hooks --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * fix: :memo: Improve wording in `option` decorator slightly (#2512) :memo: Improve wording in `option` decorator slightly * chore(deps-dev): update mypy requirement from ~=1.11.0 to ~=1.11.1 (#2511) Updates the requirements on [mypy](https://github.com/python/mypy) to permit the latest version. - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.11...v1.11.1) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump flake8 from 7.1.0 to 7.1.1 (#2518) Bumps [flake8](https://github.com/pycqa/flake8) from 7.1.0 to 7.1.1. - [Commits](https://github.com/pycqa/flake8/compare/7.1.0...7.1.1) --- updated-dependencies: - dependency-name: flake8 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(python)!: remove support for python 3.8 (#2521) * chore(python)!: remove support for python 3.8 Needed for new docs + python 3.8 is gonna be EOL by october * fix: changelog warning Signed-off-by: Lala Sabathil --------- Signed-off-by: Lala Sabathil * feat: multilingual docs (#2522) * New Crowdin Translations (#2523) New Crowdin translations by GitHub Action Co-authored-by: Crowdin Bot * [ci skip] fix(actions): crowdin commit message Signed-off-by: Lala Sabathil * [ci skip] fix(actions): auto approve for crowdin, bot might use other name Signed-off-by: Lala Sabathil * fix(actions): crowdin upload only per command in commit message or dispatch Signed-off-by: Lala Sabathil * [ci skip] Update readme to include link to crowdin Signed-off-by: Lala Sabathil * [ci skip] fix(actions): fix typos .-. Signed-off-by: Lala Sabathil * fix(docs): fix translation language codes (#2524) * Revert "fix(docs): fix translation language codes (#2524)" This reverts commit 13e1b43afd816ffe8ab7224997dd790fc616c51e. * [ci skip] fix: fix codeowners typo Signed-off-by: Lala Sabathil * [ci skip] fix(actions): another code owner fix Signed-off-by: Lala Sabathil * fix(actions): missing lang code fix (#2525) * Reapply "fix(docs): fix translation language codes (#2524)" This reverts commit 00c2091828a5338b1a341e87dd1c940f0cbe954a. * fix(actions): missing lang code fix * style(pre-commit): auto fixes from pre-commit.com hooks --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> !crowdin upload * fix(actions): add rusian !crowdin upload * docs: Update localizations from Crowdin (#2526) Co-authored-by: Crowdin Bot * docs: fix hyphen-related grammar (#2527) !crowdin upload * feat: implement `Guild.fetch_role` (#2528) * feat: implement `Guild.fetch_role` * style(pre-commit): auto fixes from pre-commit.com hooks * docs: add changelog entry --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> !crowdin update * fix(docs): fix encoding? tf !crowdin upload * fix(actions): try to fix docs action * fix: sync en base translation * fix(docs): fix speed breaker !crowdin upload * chore: do something precommit (#2530) * chore: do something precommit * style(pre-commit): auto fixes from pre-commit.com hooks --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * docs: Update localizations from Crowdin (#2531) Co-authored-by: Crowdin Bot * docs: Update localizations from Crowdin (#2533) Co-authored-by: Crowdin Bot * fic(actions): let actions run on dispatch * fic(actions): manually dispatch workflows * fix(actions): manually run pr checks * chore(actions): auto approve * [ci skip] chore(actions): delete branch automatically * [ci skip] fix(actions): meow * Update docs-localization-download.yml * [ci skip] fix(actions): shush action * [ci skip] fix(actions): i hate it here * [ci skip] fix(actions): refresh pull * docs: Update localizations from Crowdin (#2539) * docs: Update localizations from Crowdin * style(pre-commit): auto fixes from pre-commit.com hooks --------- Co-authored-by: Crowdin Bot Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * fix(actions): fix * docs: Update localizations from Crowdin (#2540) * docs: Update localizations from Crowdin * style(pre-commit): auto fixes from pre-commit.com hooks --------- Co-authored-by: Crowdin Bot Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * [ci skip] fix(actions): fix ref * docs: Update localizations from Crowdin (#2541) Co-authored-by: Crowdin Bot * docs: Update localizations from Crowdin (#2542) Co-authored-by: Crowdin Bot * docs: Update localizations from Crowdin (#2544) Co-authored-by: Crowdin Bot * docs: Update localizations from Crowdin (#2545) Co-authored-by: Crowdin Bot * fix(actions): fix crowdin action, use bot to create pr * fix(actions): fix crowdin action, use bot to create pr * docs: Update localizations from Crowdin (#2546) * docs: Update localizations from Crowdin * style(pre-commit): auto fixes from pre-commit.com hooks --------- Co-authored-by: Crowdin Bot Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * [ci skip] chore(actions): update description * chore(actions)!: rework actions (#2547) * Delete codeql.yml * Create codeql.yml Signed-off-by: Lala Sabathil * [ci skip] fix: update codeowners * fix(actions): fix actions? * fix(actions): fix actions! * fix(actions): finer actions * [ci skip] chore: update dependabot.yml - We have grouped updates now - Updates will only be checked weekly, to not spam Signed-off-by: Lala Sabathil * [ci skip] fix: depandabot config fix Signed-off-by: Lala Sabathil * chore: Update README.rst Signed-off-by: Lala Sabathil * fix(actions): Action scheduling & path check for localization upload - rescheduled codeql to sunday 00:00 - scheduled docs upload to monday 00:00 * [ci skip] chore: update readme Signed-off-by: Lala Sabathil * [ci skip] fix: fix readme Signed-off-by: Lala Sabathil * feat: release actions and other changes * chore(actions): move sec check to action * chore(actions): Update dependabot.yml Signed-off-by: Lala Sabathil * ci(deps): bump pycord-development/execute-whitelist-action from 1.0.5 to 1.0.6 in the patch-version-bumps group (#2552) ci(deps): bump pycord-development/execute-whitelist-action Bumps the patch-version-bumps group with 1 update: [pycord-development/execute-whitelist-action](https://github.com/pycord-development/execute-whitelist-action). Updates `pycord-development/execute-whitelist-action` from 1.0.5 to 1.0.6 - [Release notes](https://github.com/pycord-development/execute-whitelist-action/releases) - [Commits](https://github.com/pycord-development/execute-whitelist-action/compare/v1.0.5...v1.0.6) --- updated-dependencies: - dependency-name: pycord-development/execute-whitelist-action dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-version-bumps ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * [ci skip] fix(deps-actions): update whitelist action Signed-off-by: Lala Sabathil * feat(actions): seperate rdt localization build trigger through gha * fix(docs): fix linkcheck issues * [ci skip] fix: fix linkcheck again * fix(releases): fix release builds & add new release system * fix: fix eol issue * fix: empty commit (#2553) * empty commit * style(pre-commit): auto fixes from pre-commit.com hooks --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * fix(actions): use marketplace action Signed-off-by: Lala Sabathil * fix(actions): re-add docs and discord step * [ci skip] fix: add logo Signed-off-by: Lala Sabathil * [ci skip] fix: replace with repo image Signed-off-by: Lala Sabathil * docs: Update localizations from Crowdin (#2559) Co-authored-by: Crowdin Bot * docs: Update localizations from Crowdin (#2560) Co-authored-by: Crowdin Bot * chore(deps-dev): update mypy requirement from ~=1.11.1 to ~=1.11.2 in the major-version-bumps group (#2562) chore(deps-dev): update mypy requirement Updates the requirements on [mypy](https://github.com/python/mypy) to permit the latest version. Updates `mypy` to 1.11.2 - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.11.1...v1.11.2) --- updated-dependencies: - dependency-name: mypy dependency-type: direct:development dependency-group: major-version-bumps ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * ci(deps): bump ribtoks/tdg-github-action from 0.4.11.pre.beta to 0.4.12.pre.beta in the patch-version-bumps group (#2563) ci(deps): bump ribtoks/tdg-github-action Bumps the patch-version-bumps group with 1 update: [ribtoks/tdg-github-action](https://github.com/ribtoks/tdg-github-action). Updates `ribtoks/tdg-github-action` from 0.4.11.pre.beta to 0.4.12.pre.beta - [Release notes](https://github.com/ribtoks/tdg-github-action/releases) - [Commits](https://github.com/ribtoks/tdg-github-action/compare/v0.4.11-beta...v0.4.12-beta) --- updated-dependencies: - dependency-name: ribtoks/tdg-github-action dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-version-bumps ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix: EntitlementIterator behavior and type-hinting (#2555) * fix: EntitlementIterator behaviour and type-hinting * style(pre-commit): auto fixes from pre-commit.com hooks * simplify if's * add changelog entry * style(pre-commit): auto fixes from pre-commit.com hooks * revert missclick --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Lala Sabathil * feat: Member.display_banner (#2556) Signed-off-by: Matty Widdop <18513864+MattyTheHacker@users.noreply.github.com> Signed-off-by: Lala Sabathil Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Lala Sabathil Co-authored-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Co-authored-by: Lala Sabathil Co-authored-by: YoggieS <61660055+yoggys@users.noreply.github.com> Co-authored-by: plun1331 * fix: Missing slots attributes, wrong variable type, duplicate http methods (#2500) * remove duplicates, fix unused parameter * polls state storage typehint fix * fix RawReactionClearEmojiEvent __slots__ * fix RawMessagePollVoteEvent __slots__ * fix ForumChannel.default_sort_order type the value were actually int instead of SortOrder enum * style(pre-commit): auto fixes from pre-commit.com hooks * changelog * style(pre-commit): auto fixes from pre-commit.com hooks * Update CHANGELOG.md Co-authored-by: JustaSqu1d <89910983+JustaSqu1d@users.noreply.github.com> Signed-off-by: Readeem <99687127+Readeem@users.noreply.github.com> * Update CHANGELOG.md Co-authored-by: JustaSqu1d <89910983+JustaSqu1d@users.noreply.github.com> Signed-off-by: Readeem <99687127+Readeem@users.noreply.github.com> * Update CHANGELOG.md Co-authored-by: JustaSqu1d <89910983+JustaSqu1d@users.noreply.github.com> Signed-off-by: Readeem <99687127+Readeem@users.noreply.github.com> * style(pre-commit): auto fixes from pre-commit.com hooks * style(pre-commit): auto fixes from pre-commit.com hooks * Apply suggestions from code review Signed-off-by: plun1331 * style(pre-commit): auto fixes from pre-commit.com hooks --------- Signed-off-by: Readeem <99687127+Readeem@users.noreply.github.com> Signed-off-by: Lala Sabathil Signed-off-by: plun1331 Co-authored-by: Readeem Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: JustaSqu1d <89910983+JustaSqu1d@users.noreply.github.com> Co-authored-by: Lala Sabathil Co-authored-by: plun1331 * docs: fix ext.bridge menu behavior (#2566) change data to autoclass * feat: add missing AppInfo attributes (#2520) * feat: add missing AppInfo attributes * fix: add `install_params` to slots * docs: add related documentation * style(pre-commit): auto fixes from pre-commit.com hooks * fix: typing * docs: fix spacing * style(pre-commit): auto fixes from pre-commit.com hooks * fix: add AppInstallParams to `__all__` * fix: invalid scopes typehint * fix: docs types formatting * docs: add changelog entry * style(pre-commit): auto fixes from pre-commit.com hooks * feat: deprecate `AppInfo.summary` * style(pre-commit): auto fixes from pre-commit.com hooks * docs: fix changelog to adhere to conventions * fix: properly deprecate `summary` * docs: fix `tags` typing * style(pre-commit): auto fixes from pre-commit.com hooks * docs: fix summary formatting --------- Signed-off-by: JustaSqu1d <89910983+JustaSqu1d@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Lala Sabathil * chore(deps-dev): update pylint requirement from ~=3.2.6 to ~=3.2.7 in the major-version-bumps group (#2567) chore(deps-dev): update pylint requirement Updates the requirements on [pylint](https://github.com/pylint-dev/pylint) to permit the latest version. Updates `pylint` to 3.2.7 - [Release notes](https://github.com/pylint-dev/pylint/releases) - [Commits](https://github.com/pylint-dev/pylint/compare/v3.2.6...v3.2.7) --- updated-dependencies: - dependency-name: pylint dependency-type: direct:development dependency-group: major-version-bumps ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix: allow PartialMessage to have PartialMessageable as a channel (#2568) * fix: allow PartialMessage to have PartialMessageable as a channel Signed-off-by: plun1331 * Update CHANGELOG.md Signed-off-by: plun1331 * style(pre-commit): auto fixes from pre-commit.com hooks --------- Signed-off-by: plun1331 Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * docs: Update localizations from Crowdin (#2570) Co-authored-by: Crowdin Bot --------- Signed-off-by: dependabot[bot] Signed-off-by: JustaSqu1d <89910983+JustaSqu1d@users.noreply.github.com> Signed-off-by: UK <41271523+NeloBlivion@users.noreply.github.com> Signed-off-by: plun1331 Signed-off-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Signed-off-by: Lala Sabathil Signed-off-by: Lala Sabathil Signed-off-by: Matty Widdop <18513864+MattyTheHacker@users.noreply.github.com> Signed-off-by: Readeem <99687127+Readeem@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: JustaSqu1d <89910983+JustaSqu1d@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Dorukyum <53639936+Dorukyum@users.noreply.github.com> Co-authored-by: Lala Sabathil Co-authored-by: UK <41271523+NeloBlivion@users.noreply.github.com> Co-authored-by: Icebluewolf <44532864+Icebluewolf@users.noreply.github.com> Co-authored-by: Timo <35654063+tibue99@users.noreply.github.com> Co-authored-by: Lala Sabathil Co-authored-by: Paillat Co-authored-by: Bruno Alvalat Co-authored-by: Paillat Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Crowdin Bot Co-authored-by: Nyuw~ Co-authored-by: YoggieS <61660055+yoggys@users.noreply.github.com> Co-authored-by: Matty Widdop <18513864+MattyTheHacker@users.noreply.github.com> Co-authored-by: Readeem <99687127+Readeem@users.noreply.github.com> Co-authored-by: Readeem --- .flake8 | 2 +- .github/CODEOWNERS | 14 +- .github/ISSUE_TEMPLATE/bug_report.yml | 2 +- .github/ISSUE_TEMPLATE/feature_request.yml | 2 +- .github/dependabot.yml | 14 + .github/workflows/check.yml | 38 - .github/workflows/codeql-analysis.yml | 73 - .github/workflows/codeql.yml | 37 + .github/workflows/docs-checks.yml | 59 + .../workflows/docs-localization-download.yml | 135 + .../workflows/docs-localization-upload.yml | 58 + .github/workflows/lib-checks.yml | 158 + .github/workflows/lint.yml | 53 - .github/workflows/pr-auto-approve.yml | 30 + .github/workflows/{pr.yml => pr-checks.yml} | 19 +- .github/workflows/readthedocs.yml | 39 + .github/workflows/release.yml | 189 + .github/workflows/test.yml | 80 - .github/workflows/todo-checks.yml | 34 + .github/workflows/todo.yml | 15 - .github/workflows/version-updates.yml | 20 - .gitignore | 36 +- .pre-commit-config.yaml | 12 +- .readthedocs.yml | 2 +- CHANGELOG.md | 85 +- README.rst | 29 +- crowdin.yml | 19 + discord/appinfo.py | 117 +- discord/asset.py | 15 +- discord/audit_logs.py | 8 +- discord/bot.py | 23 +- discord/channel.py | 5 +- discord/client.py | 103 +- discord/cog.py | 2 +- discord/commands/core.py | 53 +- discord/commands/options.py | 38 +- discord/components.py | 7 + discord/enums.py | 10 + discord/ext/bridge/core.py | 2 +- discord/ext/commands/cog.py | 2 +- discord/ext/commands/core.py | 2 +- discord/ext/commands/errors.py | 6 +- discord/flags.py | 129 + discord/guild.py | 101 +- discord/http.py | 92 +- discord/interactions.py | 10 + discord/iterators.py | 177 +- discord/member.py | 60 + discord/message.py | 58 +- discord/monetization.py | 33 +- discord/oggparse.py | 6 +- discord/raw_models.py | 22 +- discord/role.py | 8 + discord/scheduled_events.py | 45 +- discord/state.py | 2 +- discord/types/appinfo.py | 5 + discord/types/components.py | 4 +- discord/types/member.py | 2 + discord/types/message.py | 6 + discord/types/role.py | 1 + discord/ui/button.py | 37 +- discord/ui/input_text.py | 6 +- discord/user.py | 56 + discord/utils.py | 1 + docs/Makefile | 2 +- docs/_static/js/scorer.js | 82 - docs/api/application_info.rst | 5 + docs/api/audit_logs.rst | 6 + docs/api/data_classes.rst | 15 + docs/api/enums.rst | 63 +- docs/build/locales/.doctrees/api/abcs.doctree | Bin 0 -> 288782 bytes .../api/application_commands.doctree | Bin 0 -> 588433 bytes .../.doctrees/api/application_info.doctree | Bin 0 -> 135028 bytes .../locales/.doctrees/api/async_iter.doctree | Bin 0 -> 39483 bytes .../locales/.doctrees/api/audit_logs.doctree | Bin 0 -> 209948 bytes .../locales/.doctrees/api/clients.doctree | Bin 0 -> 1287617 bytes docs/build/locales/.doctrees/api/cogs.doctree | Bin 0 -> 91557 bytes .../.doctrees/api/data_classes.doctree | Bin 0 -> 1724012 bytes .../build/locales/.doctrees/api/enums.doctree | Bin 0 -> 785821 bytes .../locales/.doctrees/api/events.doctree | Bin 0 -> 497326 bytes .../locales/.doctrees/api/exceptions.doctree | Bin 0 -> 186282 bytes .../build/locales/.doctrees/api/index.doctree | Bin 0 -> 7364 bytes .../locales/.doctrees/api/models.doctree | Bin 0 -> 6445957 bytes .../build/locales/.doctrees/api/sinks.doctree | Bin 0 -> 79594 bytes .../locales/.doctrees/api/ui_kit.doctree | Bin 0 -> 440279 bytes .../build/locales/.doctrees/api/utils.doctree | Bin 0 -> 218733 bytes .../.doctrees/api/version_info.doctree | Bin 0 -> 10340 bytes .../build/locales/.doctrees/api/voice.doctree | Bin 0 -> 293150 bytes .../locales/.doctrees/api/webhooks.doctree | Bin 0 -> 490206 bytes .../build/locales/.doctrees/changelog.doctree | Bin 0 -> 347427 bytes docs/build/locales/.doctrees/cogs.doctree | Bin 0 -> 19492 bytes docs/build/locales/.doctrees/discord.doctree | Bin 0 -> 31447 bytes .../locales/.doctrees/environment.pickle | Bin 0 -> 7390518 bytes .../locales/.doctrees/ext/bridge/api.doctree | Bin 0 -> 248711 bytes .../.doctrees/ext/bridge/index.doctree | Bin 0 -> 8748 bytes .../.doctrees/ext/commands/api.doctree | Bin 0 -> 2802118 bytes .../.doctrees/ext/commands/cogs.doctree | Bin 0 -> 34804 bytes .../.doctrees/ext/commands/commands.doctree | Bin 0 -> 175967 bytes .../.doctrees/ext/commands/extensions.doctree | Bin 0 -> 15878 bytes .../.doctrees/ext/commands/index.doctree | Bin 0 -> 7113 bytes .../locales/.doctrees/ext/pages/index.doctree | Bin 0 -> 438229 bytes .../locales/.doctrees/ext/tasks/index.doctree | Bin 0 -> 161791 bytes docs/build/locales/.doctrees/faq.doctree | Bin 0 -> 83941 bytes docs/build/locales/.doctrees/index.doctree | Bin 0 -> 24859 bytes .../locales/.doctrees/installing.doctree | Bin 0 -> 22203 bytes docs/build/locales/.doctrees/intents.doctree | Bin 0 -> 66965 bytes docs/build/locales/.doctrees/logging.doctree | Bin 0 -> 12489 bytes .../locales/.doctrees/migrating_to_v1.doctree | Bin 0 -> 359822 bytes .../locales/.doctrees/migrating_to_v2.doctree | Bin 0 -> 122109 bytes .../locales/.doctrees/old_changelog.doctree | Bin 0 -> 699607 bytes .../locales/.doctrees/quickstart.doctree | Bin 0 -> 28898 bytes .../.doctrees/version_guarantees.doctree | Bin 0 -> 12181 bytes docs/build/locales/api/abcs.pot | 1263 + .../locales/api/application_commands.pot | 1903 ++ docs/build/locales/api/application_info.pot | 506 + docs/build/locales/api/async_iter.pot | 189 + docs/build/locales/api/audit_logs.pot | 996 + docs/build/locales/api/clients.pot | 3935 ++++ docs/build/locales/api/cogs.pot | 355 + docs/build/locales/api/data_classes.pot | 6436 +++++ docs/build/locales/api/enums.pot | 3309 +++ docs/build/locales/api/events.pot | 1900 ++ docs/build/locales/api/exceptions.pot | 621 + docs/build/locales/api/index.pot | 37 + docs/build/locales/api/models.pot | 19628 ++++++++++++++++ docs/build/locales/api/sinks.pot | 223 + docs/build/locales/api/ui_kit.pot | 1072 + docs/build/locales/api/utils.pot | 905 + docs/build/locales/api/version_info.pot | 42 + docs/build/locales/api/voice.pot | 1049 + docs/build/locales/api/webhooks.pot | 1396 ++ docs/build/locales/changelog.pot | 1970 ++ docs/build/locales/cogs.pot | 112 + docs/build/locales/discord.pot | 201 + docs/build/locales/ext/bridge/api.pot | 707 + docs/build/locales/ext/bridge/index.pot | 32 + docs/build/locales/ext/commands/api.pot | 8978 +++++++ docs/build/locales/ext/commands/cogs.pot | 217 + docs/build/locales/ext/commands/commands.pot | 1006 + .../build/locales/ext/commands/extensions.pot | 97 + docs/build/locales/ext/commands/index.pot | 27 + docs/build/locales/ext/pages/index.pot | 1257 + docs/build/locales/ext/tasks/index.pot | 530 + docs/build/locales/faq.pot | 527 + docs/build/locales/index.pot | 191 + docs/build/locales/installing.pot | 162 + docs/build/locales/intents.pot | 392 + docs/build/locales/logging.pot | 52 + docs/build/locales/migrating_to_v1.pot | 2565 ++ docs/build/locales/migrating_to_v2.pot | 700 + docs/build/locales/old_changelog.pot | 3708 +++ docs/build/locales/quickstart.pot | 159 + docs/build/locales/version_guarantees.pot | 92 + docs/conf.py | 65 +- docs/ext/bridge/api.rst | 2 +- docs/locales/de/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../de/LC_MESSAGES/api/application_info.po | 181 + docs/locales/de/LC_MESSAGES/api/async_iter.po | 106 + docs/locales/de/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/de/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/de/LC_MESSAGES/api/cogs.po | 187 + .../de/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/de/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/de/LC_MESSAGES/api/events.po | 985 + docs/locales/de/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/de/LC_MESSAGES/api/index.po | 25 + docs/locales/de/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/de/LC_MESSAGES/api/sinks.po | 106 + docs/locales/de/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/de/LC_MESSAGES/api/utils.po | 481 + .../de/LC_MESSAGES/api/version_info.po | 28 + docs/locales/de/LC_MESSAGES/api/voice.po | 505 + docs/locales/de/LC_MESSAGES/api/webhooks.po | 553 + docs/locales/de/LC_MESSAGES/changelog.po | 1111 + docs/locales/de/LC_MESSAGES/cogs.po | 70 + docs/locales/de/LC_MESSAGES/discord.po | 121 + docs/locales/de/LC_MESSAGES/ext/bridge/api.po | 388 + .../de/LC_MESSAGES/ext/bridge/index.po | 22 + .../de/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../de/LC_MESSAGES/ext/commands/cogs.po | 133 + .../de/LC_MESSAGES/ext/commands/commands.po | 592 + .../de/LC_MESSAGES/ext/commands/extensions.po | 61 + .../de/LC_MESSAGES/ext/commands/index.po | 19 + .../locales/de/LC_MESSAGES/ext/pages/index.po | 649 + .../locales/de/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/de/LC_MESSAGES/faq.po | 313 + docs/locales/de/LC_MESSAGES/index.po | 115 + docs/locales/de/LC_MESSAGES/installing.po | 100 + docs/locales/de/LC_MESSAGES/intents.po | 238 + docs/locales/de/LC_MESSAGES/logging.po | 34 + .../locales/de/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../locales/de/LC_MESSAGES/migrating_to_v2.po | 418 + docs/locales/de/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/de/LC_MESSAGES/quickstart.po | 97 + .../de/LC_MESSAGES/version_guarantees.po | 58 + docs/locales/en/LC_MESSAGES/api/abcs.po | 1245 + .../LC_MESSAGES/api/application_commands.po | 1849 ++ .../en/LC_MESSAGES/api/application_info.po | 380 + docs/locales/en/LC_MESSAGES/api/async_iter.po | 178 + docs/locales/en/LC_MESSAGES/api/audit_logs.po | 804 + docs/locales/en/LC_MESSAGES/api/clients.po | 3193 +++ docs/locales/en/LC_MESSAGES/api/cogs.po | 323 + .../en/LC_MESSAGES/api/data_classes.po | 5390 +++++ docs/locales/en/LC_MESSAGES/api/enums.po | 2799 +++ docs/locales/en/LC_MESSAGES/api/events.po | 1732 ++ docs/locales/en/LC_MESSAGES/api/exceptions.po | 534 + docs/locales/en/LC_MESSAGES/api/index.po | 41 + docs/locales/en/LC_MESSAGES/api/models.po | 14579 ++++++++++++ docs/locales/en/LC_MESSAGES/api/sinks.po | 190 + docs/locales/en/LC_MESSAGES/api/ui_kit.po | 979 + docs/locales/en/LC_MESSAGES/api/utils.po | 819 + .../en/LC_MESSAGES/api/version_info.po | 47 + docs/locales/en/LC_MESSAGES/api/voice.po | 1025 + docs/locales/en/LC_MESSAGES/api/webhooks.po | 1282 + docs/locales/en/LC_MESSAGES/changelog.po | 2384 ++ docs/locales/en/LC_MESSAGES/cogs.po | 118 + docs/locales/en/LC_MESSAGES/discord.po | 206 + docs/locales/en/LC_MESSAGES/ext/bridge/api.po | 782 + .../en/LC_MESSAGES/ext/bridge/index.po | 38 + .../en/LC_MESSAGES/ext/commands/api.po | 8248 +++++++ .../en/LC_MESSAGES/ext/commands/cogs.po | 227 + .../en/LC_MESSAGES/ext/commands/commands.po | 1094 + .../en/LC_MESSAGES/ext/commands/extensions.po | 115 + .../en/LC_MESSAGES/ext/commands/index.po | 35 + .../locales/en/LC_MESSAGES/ext/pages/index.po | 1287 + .../locales/en/LC_MESSAGES/ext/tasks/index.po | 540 + docs/locales/en/LC_MESSAGES/faq.po | 552 + docs/locales/en/LC_MESSAGES/index.po | 171 + docs/locales/en/LC_MESSAGES/installing.po | 164 + docs/locales/en/LC_MESSAGES/intents.po | 445 + docs/locales/en/LC_MESSAGES/logging.po | 67 + .../locales/en/LC_MESSAGES/migrating_to_v1.po | 2403 ++ .../locales/en/LC_MESSAGES/migrating_to_v2.po | 695 + docs/locales/en/LC_MESSAGES/old_changelog.po | 3837 +++ docs/locales/en/LC_MESSAGES/quickstart.po | 181 + .../en/LC_MESSAGES/version_guarantees.po | 92 + docs/locales/es/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../es/LC_MESSAGES/api/application_info.po | 181 + docs/locales/es/LC_MESSAGES/api/async_iter.po | 106 + docs/locales/es/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/es/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/es/LC_MESSAGES/api/cogs.po | 187 + .../es/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/es/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/es/LC_MESSAGES/api/events.po | 985 + docs/locales/es/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/es/LC_MESSAGES/api/index.po | 25 + docs/locales/es/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/es/LC_MESSAGES/api/sinks.po | 106 + docs/locales/es/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/es/LC_MESSAGES/api/utils.po | 481 + .../es/LC_MESSAGES/api/version_info.po | 28 + docs/locales/es/LC_MESSAGES/api/voice.po | 505 + docs/locales/es/LC_MESSAGES/api/webhooks.po | 553 + docs/locales/es/LC_MESSAGES/changelog.po | 1111 + docs/locales/es/LC_MESSAGES/cogs.po | 70 + docs/locales/es/LC_MESSAGES/discord.po | 121 + docs/locales/es/LC_MESSAGES/ext/bridge/api.po | 388 + .../es/LC_MESSAGES/ext/bridge/index.po | 22 + .../es/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../es/LC_MESSAGES/ext/commands/cogs.po | 133 + .../es/LC_MESSAGES/ext/commands/commands.po | 592 + .../es/LC_MESSAGES/ext/commands/extensions.po | 61 + .../es/LC_MESSAGES/ext/commands/index.po | 19 + .../locales/es/LC_MESSAGES/ext/pages/index.po | 649 + .../locales/es/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/es/LC_MESSAGES/faq.po | 313 + docs/locales/es/LC_MESSAGES/index.po | 115 + docs/locales/es/LC_MESSAGES/installing.po | 100 + docs/locales/es/LC_MESSAGES/intents.po | 238 + docs/locales/es/LC_MESSAGES/logging.po | 34 + .../locales/es/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../locales/es/LC_MESSAGES/migrating_to_v2.po | 418 + docs/locales/es/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/es/LC_MESSAGES/quickstart.po | 97 + .../es/LC_MESSAGES/version_guarantees.po | 58 + docs/locales/fr/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../fr/LC_MESSAGES/api/application_info.po | 181 + docs/locales/fr/LC_MESSAGES/api/async_iter.po | 106 + docs/locales/fr/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/fr/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/fr/LC_MESSAGES/api/cogs.po | 187 + .../fr/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/fr/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/fr/LC_MESSAGES/api/events.po | 985 + docs/locales/fr/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/fr/LC_MESSAGES/api/index.po | 25 + docs/locales/fr/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/fr/LC_MESSAGES/api/sinks.po | 106 + docs/locales/fr/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/fr/LC_MESSAGES/api/utils.po | 481 + .../fr/LC_MESSAGES/api/version_info.po | 28 + docs/locales/fr/LC_MESSAGES/api/voice.po | 505 + docs/locales/fr/LC_MESSAGES/api/webhooks.po | 553 + docs/locales/fr/LC_MESSAGES/changelog.po | 1111 + docs/locales/fr/LC_MESSAGES/cogs.po | 70 + docs/locales/fr/LC_MESSAGES/discord.po | 121 + docs/locales/fr/LC_MESSAGES/ext/bridge/api.po | 388 + .../fr/LC_MESSAGES/ext/bridge/index.po | 22 + .../fr/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../fr/LC_MESSAGES/ext/commands/cogs.po | 133 + .../fr/LC_MESSAGES/ext/commands/commands.po | 592 + .../fr/LC_MESSAGES/ext/commands/extensions.po | 61 + .../fr/LC_MESSAGES/ext/commands/index.po | 19 + .../locales/fr/LC_MESSAGES/ext/pages/index.po | 649 + .../locales/fr/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/fr/LC_MESSAGES/faq.po | 313 + docs/locales/fr/LC_MESSAGES/index.po | 115 + docs/locales/fr/LC_MESSAGES/installing.po | 100 + docs/locales/fr/LC_MESSAGES/intents.po | 238 + docs/locales/fr/LC_MESSAGES/logging.po | 34 + .../locales/fr/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../locales/fr/LC_MESSAGES/migrating_to_v2.po | 418 + docs/locales/fr/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/fr/LC_MESSAGES/quickstart.po | 97 + .../fr/LC_MESSAGES/version_guarantees.po | 58 + docs/locales/hi/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../hi/LC_MESSAGES/api/application_info.po | 181 + docs/locales/hi/LC_MESSAGES/api/async_iter.po | 106 + docs/locales/hi/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/hi/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/hi/LC_MESSAGES/api/cogs.po | 187 + .../hi/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/hi/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/hi/LC_MESSAGES/api/events.po | 985 + docs/locales/hi/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/hi/LC_MESSAGES/api/index.po | 25 + docs/locales/hi/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/hi/LC_MESSAGES/api/sinks.po | 106 + docs/locales/hi/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/hi/LC_MESSAGES/api/utils.po | 481 + .../hi/LC_MESSAGES/api/version_info.po | 28 + docs/locales/hi/LC_MESSAGES/api/voice.po | 505 + docs/locales/hi/LC_MESSAGES/api/webhooks.po | 553 + docs/locales/hi/LC_MESSAGES/changelog.po | 1111 + docs/locales/hi/LC_MESSAGES/cogs.po | 70 + docs/locales/hi/LC_MESSAGES/discord.po | 121 + docs/locales/hi/LC_MESSAGES/ext/bridge/api.po | 388 + .../hi/LC_MESSAGES/ext/bridge/index.po | 22 + .../hi/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../hi/LC_MESSAGES/ext/commands/cogs.po | 133 + .../hi/LC_MESSAGES/ext/commands/commands.po | 592 + .../hi/LC_MESSAGES/ext/commands/extensions.po | 61 + .../hi/LC_MESSAGES/ext/commands/index.po | 19 + .../locales/hi/LC_MESSAGES/ext/pages/index.po | 649 + .../locales/hi/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/hi/LC_MESSAGES/faq.po | 313 + docs/locales/hi/LC_MESSAGES/index.po | 115 + docs/locales/hi/LC_MESSAGES/installing.po | 100 + docs/locales/hi/LC_MESSAGES/intents.po | 238 + docs/locales/hi/LC_MESSAGES/logging.po | 34 + .../locales/hi/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../locales/hi/LC_MESSAGES/migrating_to_v2.po | 418 + docs/locales/hi/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/hi/LC_MESSAGES/quickstart.po | 97 + .../hi/LC_MESSAGES/version_guarantees.po | 58 + docs/locales/it/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../it/LC_MESSAGES/api/application_info.po | 181 + docs/locales/it/LC_MESSAGES/api/async_iter.po | 106 + docs/locales/it/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/it/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/it/LC_MESSAGES/api/cogs.po | 187 + .../it/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/it/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/it/LC_MESSAGES/api/events.po | 985 + docs/locales/it/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/it/LC_MESSAGES/api/index.po | 25 + docs/locales/it/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/it/LC_MESSAGES/api/sinks.po | 106 + docs/locales/it/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/it/LC_MESSAGES/api/utils.po | 481 + .../it/LC_MESSAGES/api/version_info.po | 28 + docs/locales/it/LC_MESSAGES/api/voice.po | 505 + docs/locales/it/LC_MESSAGES/api/webhooks.po | 553 + docs/locales/it/LC_MESSAGES/changelog.po | 1111 + docs/locales/it/LC_MESSAGES/cogs.po | 70 + docs/locales/it/LC_MESSAGES/discord.po | 121 + docs/locales/it/LC_MESSAGES/ext/bridge/api.po | 388 + .../it/LC_MESSAGES/ext/bridge/index.po | 22 + .../it/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../it/LC_MESSAGES/ext/commands/cogs.po | 133 + .../it/LC_MESSAGES/ext/commands/commands.po | 592 + .../it/LC_MESSAGES/ext/commands/extensions.po | 61 + .../it/LC_MESSAGES/ext/commands/index.po | 19 + .../locales/it/LC_MESSAGES/ext/pages/index.po | 649 + .../locales/it/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/it/LC_MESSAGES/faq.po | 313 + docs/locales/it/LC_MESSAGES/index.po | 115 + docs/locales/it/LC_MESSAGES/installing.po | 100 + docs/locales/it/LC_MESSAGES/intents.po | 238 + docs/locales/it/LC_MESSAGES/logging.po | 34 + .../locales/it/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../locales/it/LC_MESSAGES/migrating_to_v2.po | 418 + docs/locales/it/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/it/LC_MESSAGES/quickstart.po | 97 + .../it/LC_MESSAGES/version_guarantees.po | 58 + docs/locales/ja/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../ja/LC_MESSAGES/api/application_info.po | 181 + docs/locales/ja/LC_MESSAGES/api/async_iter.po | 106 + docs/locales/ja/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/ja/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/ja/LC_MESSAGES/api/cogs.po | 187 + .../ja/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/ja/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/ja/LC_MESSAGES/api/events.po | 985 + docs/locales/ja/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/ja/LC_MESSAGES/api/index.po | 25 + docs/locales/ja/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/ja/LC_MESSAGES/api/sinks.po | 106 + docs/locales/ja/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/ja/LC_MESSAGES/api/utils.po | 481 + .../ja/LC_MESSAGES/api/version_info.po | 28 + docs/locales/ja/LC_MESSAGES/api/voice.po | 505 + docs/locales/ja/LC_MESSAGES/api/webhooks.po | 553 + .../ja/LC_MESSAGES/build/locales/api/abcs.po | 685 + .../build/locales/api/application_commands.po | 880 + .../build/locales/api/application_info.po | 181 + .../build/locales/api/async_iter.po | 106 + .../build/locales/api/audit_logs.po | 502 + .../LC_MESSAGES/build/locales/api/clients.po | 1576 ++ .../ja/LC_MESSAGES/build/locales/api/cogs.po | 190 + .../build/locales/api/data_classes.po | 2896 +++ .../ja/LC_MESSAGES/build/locales/api/enums.po | 1771 ++ .../LC_MESSAGES/build/locales/api/events.po | 985 + .../build/locales/api/exceptions.po | 331 + .../ja/LC_MESSAGES/build/locales/api/index.po | 25 + .../LC_MESSAGES/build/locales/api/models.po | 7788 ++++++ .../ja/LC_MESSAGES/build/locales/api/sinks.po | 106 + .../LC_MESSAGES/build/locales/api/ui_kit.po | 535 + .../ja/LC_MESSAGES/build/locales/api/utils.po | 481 + .../build/locales/api/version_info.po | 28 + .../ja/LC_MESSAGES/build/locales/api/voice.po | 505 + .../LC_MESSAGES/build/locales/api/webhooks.po | 553 + .../ja/LC_MESSAGES/build/locales/changelog.po | 1102 + .../ja/LC_MESSAGES/build/locales/cogs.po | 70 + .../ja/LC_MESSAGES/build/locales/discord.po | 121 + .../build/locales/ext/bridge/api.po | 388 + .../build/locales/ext/bridge/index.po | 22 + .../build/locales/ext/commands/api.po | 4117 ++++ .../build/locales/ext/commands/cogs.po | 133 + .../build/locales/ext/commands/commands.po | 592 + .../build/locales/ext/commands/extensions.po | 61 + .../build/locales/ext/commands/index.po | 19 + .../build/locales/ext/pages/index.po | 649 + .../build/locales/ext/tasks/index.po | 283 + .../ja/LC_MESSAGES/build/locales/faq.po | 313 + .../ja/LC_MESSAGES/build/locales/index.po | 115 + .../LC_MESSAGES/build/locales/installing.po | 100 + .../ja/LC_MESSAGES/build/locales/intents.po | 238 + .../ja/LC_MESSAGES/build/locales/logging.po | 34 + .../build/locales/migrating_to_v1.po | 1507 ++ .../build/locales/migrating_to_v2.po | 418 + .../build/locales/old_changelog.po | 2140 ++ .../LC_MESSAGES/build/locales/quickstart.po | 97 + .../build/locales/version_guarantees.po | 58 + docs/locales/ja/LC_MESSAGES/changelog.po | 1111 + docs/locales/ja/LC_MESSAGES/cogs.po | 70 + docs/locales/ja/LC_MESSAGES/discord.po | 121 + docs/locales/ja/LC_MESSAGES/ext/bridge/api.po | 388 + .../ja/LC_MESSAGES/ext/bridge/index.po | 22 + .../ja/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../ja/LC_MESSAGES/ext/commands/cogs.po | 133 + .../ja/LC_MESSAGES/ext/commands/commands.po | 592 + .../ja/LC_MESSAGES/ext/commands/extensions.po | 61 + .../ja/LC_MESSAGES/ext/commands/index.po | 19 + .../locales/ja/LC_MESSAGES/ext/pages/index.po | 649 + .../locales/ja/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/ja/LC_MESSAGES/faq.po | 313 + docs/locales/ja/LC_MESSAGES/index.po | 115 + docs/locales/ja/LC_MESSAGES/installing.po | 100 + docs/locales/ja/LC_MESSAGES/intents.po | 238 + docs/locales/ja/LC_MESSAGES/logging.po | 34 + .../locales/ja/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../locales/ja/LC_MESSAGES/migrating_to_v2.po | 418 + docs/locales/ja/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/ja/LC_MESSAGES/quickstart.po | 97 + .../ja/LC_MESSAGES/version_guarantees.po | 58 + docs/locales/ko/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../ko/LC_MESSAGES/api/application_info.po | 181 + docs/locales/ko/LC_MESSAGES/api/async_iter.po | 106 + docs/locales/ko/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/ko/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/ko/LC_MESSAGES/api/cogs.po | 187 + .../ko/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/ko/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/ko/LC_MESSAGES/api/events.po | 985 + docs/locales/ko/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/ko/LC_MESSAGES/api/index.po | 25 + docs/locales/ko/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/ko/LC_MESSAGES/api/sinks.po | 106 + docs/locales/ko/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/ko/LC_MESSAGES/api/utils.po | 481 + .../ko/LC_MESSAGES/api/version_info.po | 28 + docs/locales/ko/LC_MESSAGES/api/voice.po | 505 + docs/locales/ko/LC_MESSAGES/api/webhooks.po | 553 + docs/locales/ko/LC_MESSAGES/changelog.po | 1111 + docs/locales/ko/LC_MESSAGES/cogs.po | 70 + docs/locales/ko/LC_MESSAGES/discord.po | 121 + docs/locales/ko/LC_MESSAGES/ext/bridge/api.po | 388 + .../ko/LC_MESSAGES/ext/bridge/index.po | 22 + .../ko/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../ko/LC_MESSAGES/ext/commands/cogs.po | 133 + .../ko/LC_MESSAGES/ext/commands/commands.po | 592 + .../ko/LC_MESSAGES/ext/commands/extensions.po | 61 + .../ko/LC_MESSAGES/ext/commands/index.po | 19 + .../locales/ko/LC_MESSAGES/ext/pages/index.po | 649 + .../locales/ko/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/ko/LC_MESSAGES/faq.po | 313 + docs/locales/ko/LC_MESSAGES/index.po | 115 + docs/locales/ko/LC_MESSAGES/installing.po | 100 + docs/locales/ko/LC_MESSAGES/intents.po | 238 + docs/locales/ko/LC_MESSAGES/logging.po | 34 + .../locales/ko/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../locales/ko/LC_MESSAGES/migrating_to_v2.po | 418 + docs/locales/ko/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/ko/LC_MESSAGES/quickstart.po | 97 + .../ko/LC_MESSAGES/version_guarantees.po | 58 + docs/locales/pt_BR/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../pt_BR/LC_MESSAGES/api/application_info.po | 181 + .../pt_BR/LC_MESSAGES/api/async_iter.po | 106 + .../pt_BR/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/pt_BR/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/pt_BR/LC_MESSAGES/api/cogs.po | 187 + .../pt_BR/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/pt_BR/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/pt_BR/LC_MESSAGES/api/events.po | 985 + .../pt_BR/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/pt_BR/LC_MESSAGES/api/index.po | 25 + docs/locales/pt_BR/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/pt_BR/LC_MESSAGES/api/sinks.po | 106 + docs/locales/pt_BR/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/pt_BR/LC_MESSAGES/api/utils.po | 481 + .../pt_BR/LC_MESSAGES/api/version_info.po | 28 + docs/locales/pt_BR/LC_MESSAGES/api/voice.po | 505 + .../locales/pt_BR/LC_MESSAGES/api/webhooks.po | 553 + docs/locales/pt_BR/LC_MESSAGES/changelog.po | 1111 + docs/locales/pt_BR/LC_MESSAGES/cogs.po | 70 + docs/locales/pt_BR/LC_MESSAGES/discord.po | 121 + .../pt_BR/LC_MESSAGES/ext/bridge/api.po | 388 + .../pt_BR/LC_MESSAGES/ext/bridge/index.po | 22 + .../pt_BR/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../pt_BR/LC_MESSAGES/ext/commands/cogs.po | 133 + .../LC_MESSAGES/ext/commands/commands.po | 592 + .../LC_MESSAGES/ext/commands/extensions.po | 61 + .../pt_BR/LC_MESSAGES/ext/commands/index.po | 19 + .../pt_BR/LC_MESSAGES/ext/pages/index.po | 649 + .../pt_BR/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/pt_BR/LC_MESSAGES/faq.po | 313 + docs/locales/pt_BR/LC_MESSAGES/index.po | 115 + docs/locales/pt_BR/LC_MESSAGES/installing.po | 100 + docs/locales/pt_BR/LC_MESSAGES/intents.po | 238 + docs/locales/pt_BR/LC_MESSAGES/logging.po | 34 + .../pt_BR/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../pt_BR/LC_MESSAGES/migrating_to_v2.po | 418 + .../pt_BR/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/pt_BR/LC_MESSAGES/quickstart.po | 97 + .../pt_BR/LC_MESSAGES/version_guarantees.po | 58 + docs/locales/ru/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../ru/LC_MESSAGES/api/application_info.po | 181 + docs/locales/ru/LC_MESSAGES/api/async_iter.po | 106 + docs/locales/ru/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/ru/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/ru/LC_MESSAGES/api/cogs.po | 187 + .../ru/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/ru/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/ru/LC_MESSAGES/api/events.po | 985 + docs/locales/ru/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/ru/LC_MESSAGES/api/index.po | 25 + docs/locales/ru/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/ru/LC_MESSAGES/api/sinks.po | 106 + docs/locales/ru/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/ru/LC_MESSAGES/api/utils.po | 481 + .../ru/LC_MESSAGES/api/version_info.po | 28 + docs/locales/ru/LC_MESSAGES/api/voice.po | 505 + docs/locales/ru/LC_MESSAGES/api/webhooks.po | 553 + docs/locales/ru/LC_MESSAGES/changelog.po | 1111 + docs/locales/ru/LC_MESSAGES/cogs.po | 70 + docs/locales/ru/LC_MESSAGES/discord.po | 121 + docs/locales/ru/LC_MESSAGES/ext/bridge/api.po | 388 + .../ru/LC_MESSAGES/ext/bridge/index.po | 22 + .../ru/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../ru/LC_MESSAGES/ext/commands/cogs.po | 133 + .../ru/LC_MESSAGES/ext/commands/commands.po | 592 + .../ru/LC_MESSAGES/ext/commands/extensions.po | 61 + .../ru/LC_MESSAGES/ext/commands/index.po | 19 + .../locales/ru/LC_MESSAGES/ext/pages/index.po | 649 + .../locales/ru/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/ru/LC_MESSAGES/faq.po | 313 + docs/locales/ru/LC_MESSAGES/index.po | 115 + docs/locales/ru/LC_MESSAGES/installing.po | 100 + docs/locales/ru/LC_MESSAGES/intents.po | 238 + docs/locales/ru/LC_MESSAGES/logging.po | 34 + .../locales/ru/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../locales/ru/LC_MESSAGES/migrating_to_v2.po | 418 + docs/locales/ru/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/ru/LC_MESSAGES/quickstart.po | 97 + .../ru/LC_MESSAGES/version_guarantees.po | 58 + docs/locales/zh_CN/LC_MESSAGES/api/abcs.po | 685 + .../LC_MESSAGES/api/application_commands.po | 877 + .../zh_CN/LC_MESSAGES/api/application_info.po | 181 + .../zh_CN/LC_MESSAGES/api/async_iter.po | 106 + .../zh_CN/LC_MESSAGES/api/audit_logs.po | 502 + docs/locales/zh_CN/LC_MESSAGES/api/clients.po | 1567 ++ docs/locales/zh_CN/LC_MESSAGES/api/cogs.po | 187 + .../zh_CN/LC_MESSAGES/api/data_classes.po | 2896 +++ docs/locales/zh_CN/LC_MESSAGES/api/enums.po | 1771 ++ docs/locales/zh_CN/LC_MESSAGES/api/events.po | 985 + .../zh_CN/LC_MESSAGES/api/exceptions.po | 331 + docs/locales/zh_CN/LC_MESSAGES/api/index.po | 25 + docs/locales/zh_CN/LC_MESSAGES/api/models.po | 7804 ++++++ docs/locales/zh_CN/LC_MESSAGES/api/sinks.po | 106 + docs/locales/zh_CN/LC_MESSAGES/api/ui_kit.po | 535 + docs/locales/zh_CN/LC_MESSAGES/api/utils.po | 481 + .../zh_CN/LC_MESSAGES/api/version_info.po | 28 + docs/locales/zh_CN/LC_MESSAGES/api/voice.po | 505 + .../locales/zh_CN/LC_MESSAGES/api/webhooks.po | 553 + docs/locales/zh_CN/LC_MESSAGES/changelog.po | 1111 + docs/locales/zh_CN/LC_MESSAGES/cogs.po | 70 + docs/locales/zh_CN/LC_MESSAGES/discord.po | 121 + .../zh_CN/LC_MESSAGES/ext/bridge/api.po | 388 + .../zh_CN/LC_MESSAGES/ext/bridge/index.po | 22 + .../zh_CN/LC_MESSAGES/ext/commands/api.po | 4105 ++++ .../zh_CN/LC_MESSAGES/ext/commands/cogs.po | 133 + .../LC_MESSAGES/ext/commands/commands.po | 592 + .../LC_MESSAGES/ext/commands/extensions.po | 61 + .../zh_CN/LC_MESSAGES/ext/commands/index.po | 19 + .../zh_CN/LC_MESSAGES/ext/pages/index.po | 649 + .../zh_CN/LC_MESSAGES/ext/tasks/index.po | 283 + docs/locales/zh_CN/LC_MESSAGES/faq.po | 313 + docs/locales/zh_CN/LC_MESSAGES/index.po | 115 + docs/locales/zh_CN/LC_MESSAGES/installing.po | 100 + docs/locales/zh_CN/LC_MESSAGES/intents.po | 238 + docs/locales/zh_CN/LC_MESSAGES/logging.po | 34 + .../zh_CN/LC_MESSAGES/migrating_to_v1.po | 1507 ++ .../zh_CN/LC_MESSAGES/migrating_to_v2.po | 418 + .../zh_CN/LC_MESSAGES/old_changelog.po | 2140 ++ docs/locales/zh_CN/LC_MESSAGES/quickstart.po | 97 + .../zh_CN/LC_MESSAGES/version_guarantees.po | 58 + docs/make.bat | 2 +- pycord.png | Bin 0 -> 59586 bytes pyproject.toml | 15 +- requirements/_locale.txt | 4 + requirements/_release.txt | 5 + requirements/dev.txt | 14 +- requirements/docs.txt | 13 +- 654 files changed, 492372 insertions(+), 637 deletions(-) delete mode 100644 .github/workflows/check.yml delete mode 100644 .github/workflows/codeql-analysis.yml create mode 100644 .github/workflows/codeql.yml create mode 100644 .github/workflows/docs-checks.yml create mode 100644 .github/workflows/docs-localization-download.yml create mode 100644 .github/workflows/docs-localization-upload.yml create mode 100644 .github/workflows/lib-checks.yml delete mode 100644 .github/workflows/lint.yml create mode 100644 .github/workflows/pr-auto-approve.yml rename .github/workflows/{pr.yml => pr-checks.yml} (53%) create mode 100644 .github/workflows/readthedocs.yml create mode 100644 .github/workflows/release.yml delete mode 100644 .github/workflows/test.yml create mode 100644 .github/workflows/todo-checks.yml delete mode 100644 .github/workflows/todo.yml delete mode 100644 .github/workflows/version-updates.yml create mode 100644 crowdin.yml delete mode 100644 docs/_static/js/scorer.js create mode 100644 docs/build/locales/.doctrees/api/abcs.doctree create mode 100644 docs/build/locales/.doctrees/api/application_commands.doctree create mode 100644 docs/build/locales/.doctrees/api/application_info.doctree create mode 100644 docs/build/locales/.doctrees/api/async_iter.doctree create mode 100644 docs/build/locales/.doctrees/api/audit_logs.doctree create mode 100644 docs/build/locales/.doctrees/api/clients.doctree create mode 100644 docs/build/locales/.doctrees/api/cogs.doctree create mode 100644 docs/build/locales/.doctrees/api/data_classes.doctree create mode 100644 docs/build/locales/.doctrees/api/enums.doctree create mode 100644 docs/build/locales/.doctrees/api/events.doctree create mode 100644 docs/build/locales/.doctrees/api/exceptions.doctree create mode 100644 docs/build/locales/.doctrees/api/index.doctree create mode 100644 docs/build/locales/.doctrees/api/models.doctree create mode 100644 docs/build/locales/.doctrees/api/sinks.doctree create mode 100644 docs/build/locales/.doctrees/api/ui_kit.doctree create mode 100644 docs/build/locales/.doctrees/api/utils.doctree create mode 100644 docs/build/locales/.doctrees/api/version_info.doctree create mode 100644 docs/build/locales/.doctrees/api/voice.doctree create mode 100644 docs/build/locales/.doctrees/api/webhooks.doctree create mode 100644 docs/build/locales/.doctrees/changelog.doctree create mode 100644 docs/build/locales/.doctrees/cogs.doctree create mode 100644 docs/build/locales/.doctrees/discord.doctree create mode 100644 docs/build/locales/.doctrees/environment.pickle create mode 100644 docs/build/locales/.doctrees/ext/bridge/api.doctree create mode 100644 docs/build/locales/.doctrees/ext/bridge/index.doctree create mode 100644 docs/build/locales/.doctrees/ext/commands/api.doctree create mode 100644 docs/build/locales/.doctrees/ext/commands/cogs.doctree create mode 100644 docs/build/locales/.doctrees/ext/commands/commands.doctree create mode 100644 docs/build/locales/.doctrees/ext/commands/extensions.doctree create mode 100644 docs/build/locales/.doctrees/ext/commands/index.doctree create mode 100644 docs/build/locales/.doctrees/ext/pages/index.doctree create mode 100644 docs/build/locales/.doctrees/ext/tasks/index.doctree create mode 100644 docs/build/locales/.doctrees/faq.doctree create mode 100644 docs/build/locales/.doctrees/index.doctree create mode 100644 docs/build/locales/.doctrees/installing.doctree create mode 100644 docs/build/locales/.doctrees/intents.doctree create mode 100644 docs/build/locales/.doctrees/logging.doctree create mode 100644 docs/build/locales/.doctrees/migrating_to_v1.doctree create mode 100644 docs/build/locales/.doctrees/migrating_to_v2.doctree create mode 100644 docs/build/locales/.doctrees/old_changelog.doctree create mode 100644 docs/build/locales/.doctrees/quickstart.doctree create mode 100644 docs/build/locales/.doctrees/version_guarantees.doctree create mode 100644 docs/build/locales/api/abcs.pot create mode 100644 docs/build/locales/api/application_commands.pot create mode 100644 docs/build/locales/api/application_info.pot create mode 100644 docs/build/locales/api/async_iter.pot create mode 100644 docs/build/locales/api/audit_logs.pot create mode 100644 docs/build/locales/api/clients.pot create mode 100644 docs/build/locales/api/cogs.pot create mode 100644 docs/build/locales/api/data_classes.pot create mode 100644 docs/build/locales/api/enums.pot create mode 100644 docs/build/locales/api/events.pot create mode 100644 docs/build/locales/api/exceptions.pot create mode 100644 docs/build/locales/api/index.pot create mode 100644 docs/build/locales/api/models.pot create mode 100644 docs/build/locales/api/sinks.pot create mode 100644 docs/build/locales/api/ui_kit.pot create mode 100644 docs/build/locales/api/utils.pot create mode 100644 docs/build/locales/api/version_info.pot create mode 100644 docs/build/locales/api/voice.pot create mode 100644 docs/build/locales/api/webhooks.pot create mode 100644 docs/build/locales/changelog.pot create mode 100644 docs/build/locales/cogs.pot create mode 100644 docs/build/locales/discord.pot create mode 100644 docs/build/locales/ext/bridge/api.pot create mode 100644 docs/build/locales/ext/bridge/index.pot create mode 100644 docs/build/locales/ext/commands/api.pot create mode 100644 docs/build/locales/ext/commands/cogs.pot create mode 100644 docs/build/locales/ext/commands/commands.pot create mode 100644 docs/build/locales/ext/commands/extensions.pot create mode 100644 docs/build/locales/ext/commands/index.pot create mode 100644 docs/build/locales/ext/pages/index.pot create mode 100644 docs/build/locales/ext/tasks/index.pot create mode 100644 docs/build/locales/faq.pot create mode 100644 docs/build/locales/index.pot create mode 100644 docs/build/locales/installing.pot create mode 100644 docs/build/locales/intents.pot create mode 100644 docs/build/locales/logging.pot create mode 100644 docs/build/locales/migrating_to_v1.pot create mode 100644 docs/build/locales/migrating_to_v2.pot create mode 100644 docs/build/locales/old_changelog.pot create mode 100644 docs/build/locales/quickstart.pot create mode 100644 docs/build/locales/version_guarantees.pot create mode 100644 docs/locales/de/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/de/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/de/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/de/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/de/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/de/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/de/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/de/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/de/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/de/LC_MESSAGES/api/events.po create mode 100644 docs/locales/de/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/de/LC_MESSAGES/api/index.po create mode 100644 docs/locales/de/LC_MESSAGES/api/models.po create mode 100644 docs/locales/de/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/de/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/de/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/de/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/de/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/de/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/de/LC_MESSAGES/changelog.po create mode 100644 docs/locales/de/LC_MESSAGES/cogs.po create mode 100644 docs/locales/de/LC_MESSAGES/discord.po create mode 100644 docs/locales/de/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/de/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/de/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/de/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/de/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/de/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/de/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/de/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/de/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/de/LC_MESSAGES/faq.po create mode 100644 docs/locales/de/LC_MESSAGES/index.po create mode 100644 docs/locales/de/LC_MESSAGES/installing.po create mode 100644 docs/locales/de/LC_MESSAGES/intents.po create mode 100644 docs/locales/de/LC_MESSAGES/logging.po create mode 100644 docs/locales/de/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/de/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/de/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/de/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/de/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/en/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/en/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/en/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/en/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/en/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/en/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/en/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/en/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/en/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/en/LC_MESSAGES/api/events.po create mode 100644 docs/locales/en/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/en/LC_MESSAGES/api/index.po create mode 100644 docs/locales/en/LC_MESSAGES/api/models.po create mode 100644 docs/locales/en/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/en/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/en/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/en/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/en/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/en/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/en/LC_MESSAGES/changelog.po create mode 100644 docs/locales/en/LC_MESSAGES/cogs.po create mode 100644 docs/locales/en/LC_MESSAGES/discord.po create mode 100644 docs/locales/en/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/en/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/en/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/en/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/en/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/en/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/en/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/en/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/en/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/en/LC_MESSAGES/faq.po create mode 100644 docs/locales/en/LC_MESSAGES/index.po create mode 100644 docs/locales/en/LC_MESSAGES/installing.po create mode 100644 docs/locales/en/LC_MESSAGES/intents.po create mode 100644 docs/locales/en/LC_MESSAGES/logging.po create mode 100644 docs/locales/en/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/en/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/en/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/en/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/en/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/es/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/es/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/es/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/es/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/es/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/es/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/es/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/es/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/es/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/es/LC_MESSAGES/api/events.po create mode 100644 docs/locales/es/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/es/LC_MESSAGES/api/index.po create mode 100644 docs/locales/es/LC_MESSAGES/api/models.po create mode 100644 docs/locales/es/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/es/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/es/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/es/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/es/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/es/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/es/LC_MESSAGES/changelog.po create mode 100644 docs/locales/es/LC_MESSAGES/cogs.po create mode 100644 docs/locales/es/LC_MESSAGES/discord.po create mode 100644 docs/locales/es/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/es/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/es/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/es/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/es/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/es/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/es/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/es/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/es/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/es/LC_MESSAGES/faq.po create mode 100644 docs/locales/es/LC_MESSAGES/index.po create mode 100644 docs/locales/es/LC_MESSAGES/installing.po create mode 100644 docs/locales/es/LC_MESSAGES/intents.po create mode 100644 docs/locales/es/LC_MESSAGES/logging.po create mode 100644 docs/locales/es/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/es/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/es/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/es/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/es/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/events.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/index.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/models.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/fr/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/fr/LC_MESSAGES/changelog.po create mode 100644 docs/locales/fr/LC_MESSAGES/cogs.po create mode 100644 docs/locales/fr/LC_MESSAGES/discord.po create mode 100644 docs/locales/fr/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/fr/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/fr/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/fr/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/fr/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/fr/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/fr/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/fr/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/fr/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/fr/LC_MESSAGES/faq.po create mode 100644 docs/locales/fr/LC_MESSAGES/index.po create mode 100644 docs/locales/fr/LC_MESSAGES/installing.po create mode 100644 docs/locales/fr/LC_MESSAGES/intents.po create mode 100644 docs/locales/fr/LC_MESSAGES/logging.po create mode 100644 docs/locales/fr/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/fr/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/fr/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/fr/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/fr/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/events.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/index.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/models.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/hi/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/hi/LC_MESSAGES/changelog.po create mode 100644 docs/locales/hi/LC_MESSAGES/cogs.po create mode 100644 docs/locales/hi/LC_MESSAGES/discord.po create mode 100644 docs/locales/hi/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/hi/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/hi/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/hi/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/hi/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/hi/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/hi/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/hi/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/hi/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/hi/LC_MESSAGES/faq.po create mode 100644 docs/locales/hi/LC_MESSAGES/index.po create mode 100644 docs/locales/hi/LC_MESSAGES/installing.po create mode 100644 docs/locales/hi/LC_MESSAGES/intents.po create mode 100644 docs/locales/hi/LC_MESSAGES/logging.po create mode 100644 docs/locales/hi/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/hi/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/hi/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/hi/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/hi/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/it/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/it/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/it/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/it/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/it/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/it/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/it/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/it/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/it/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/it/LC_MESSAGES/api/events.po create mode 100644 docs/locales/it/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/it/LC_MESSAGES/api/index.po create mode 100644 docs/locales/it/LC_MESSAGES/api/models.po create mode 100644 docs/locales/it/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/it/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/it/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/it/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/it/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/it/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/it/LC_MESSAGES/changelog.po create mode 100644 docs/locales/it/LC_MESSAGES/cogs.po create mode 100644 docs/locales/it/LC_MESSAGES/discord.po create mode 100644 docs/locales/it/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/it/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/it/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/it/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/it/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/it/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/it/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/it/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/it/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/it/LC_MESSAGES/faq.po create mode 100644 docs/locales/it/LC_MESSAGES/index.po create mode 100644 docs/locales/it/LC_MESSAGES/installing.po create mode 100644 docs/locales/it/LC_MESSAGES/intents.po create mode 100644 docs/locales/it/LC_MESSAGES/logging.po create mode 100644 docs/locales/it/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/it/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/it/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/it/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/it/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/events.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/models.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/ja/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/abcs.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/application_commands.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/application_info.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/async_iter.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/audit_logs.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/clients.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/cogs.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/data_classes.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/enums.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/events.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/exceptions.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/models.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/sinks.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/ui_kit.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/utils.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/version_info.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/voice.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/api/webhooks.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/changelog.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/cogs.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/discord.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/ext/bridge/api.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/ext/bridge/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/api.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/cogs.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/commands.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/extensions.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/ext/pages/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/ext/tasks/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/faq.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/installing.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/intents.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/logging.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/migrating_to_v1.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/migrating_to_v2.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/old_changelog.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/quickstart.po create mode 100644 docs/locales/ja/LC_MESSAGES/build/locales/version_guarantees.po create mode 100644 docs/locales/ja/LC_MESSAGES/changelog.po create mode 100644 docs/locales/ja/LC_MESSAGES/cogs.po create mode 100644 docs/locales/ja/LC_MESSAGES/discord.po create mode 100644 docs/locales/ja/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/ja/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/ja/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/ja/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/ja/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/ja/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/faq.po create mode 100644 docs/locales/ja/LC_MESSAGES/index.po create mode 100644 docs/locales/ja/LC_MESSAGES/installing.po create mode 100644 docs/locales/ja/LC_MESSAGES/intents.po create mode 100644 docs/locales/ja/LC_MESSAGES/logging.po create mode 100644 docs/locales/ja/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/ja/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/ja/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/ja/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/ja/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/events.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/index.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/models.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/ko/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/ko/LC_MESSAGES/changelog.po create mode 100644 docs/locales/ko/LC_MESSAGES/cogs.po create mode 100644 docs/locales/ko/LC_MESSAGES/discord.po create mode 100644 docs/locales/ko/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/ko/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/ko/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/ko/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/ko/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/ko/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/ko/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/ko/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/ko/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/ko/LC_MESSAGES/faq.po create mode 100644 docs/locales/ko/LC_MESSAGES/index.po create mode 100644 docs/locales/ko/LC_MESSAGES/installing.po create mode 100644 docs/locales/ko/LC_MESSAGES/intents.po create mode 100644 docs/locales/ko/LC_MESSAGES/logging.po create mode 100644 docs/locales/ko/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/ko/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/ko/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/ko/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/ko/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/events.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/index.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/models.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/changelog.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/cogs.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/discord.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/faq.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/index.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/installing.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/intents.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/logging.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/pt_BR/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/events.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/index.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/models.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/ru/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/ru/LC_MESSAGES/changelog.po create mode 100644 docs/locales/ru/LC_MESSAGES/cogs.po create mode 100644 docs/locales/ru/LC_MESSAGES/discord.po create mode 100644 docs/locales/ru/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/ru/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/ru/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/ru/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/ru/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/ru/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/ru/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/ru/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/ru/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/ru/LC_MESSAGES/faq.po create mode 100644 docs/locales/ru/LC_MESSAGES/index.po create mode 100644 docs/locales/ru/LC_MESSAGES/installing.po create mode 100644 docs/locales/ru/LC_MESSAGES/intents.po create mode 100644 docs/locales/ru/LC_MESSAGES/logging.po create mode 100644 docs/locales/ru/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/ru/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/ru/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/ru/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/ru/LC_MESSAGES/version_guarantees.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/abcs.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/application_commands.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/application_info.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/async_iter.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/audit_logs.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/clients.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/cogs.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/data_classes.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/enums.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/events.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/exceptions.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/index.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/models.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/sinks.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/ui_kit.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/utils.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/version_info.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/voice.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/api/webhooks.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/changelog.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/cogs.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/discord.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/ext/bridge/api.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/ext/bridge/index.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/ext/commands/api.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/ext/commands/cogs.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/ext/commands/commands.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/ext/commands/extensions.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/ext/commands/index.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/ext/pages/index.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/ext/tasks/index.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/faq.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/index.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/installing.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/intents.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/logging.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/migrating_to_v1.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/migrating_to_v2.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/old_changelog.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/quickstart.po create mode 100644 docs/locales/zh_CN/LC_MESSAGES/version_guarantees.po create mode 100644 pycord.png create mode 100644 requirements/_locale.txt create mode 100644 requirements/_release.txt diff --git a/.flake8 b/.flake8 index b8d6ca33b5..c53ad8835c 100644 --- a/.flake8 +++ b/.flake8 @@ -1,5 +1,5 @@ [flake8] -min_python_version = 3.8 +min_python_version = 3.9 # Incompatible with black see https://github.com/ambv/black/issues/315 ignore = diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index d343b50a5c..11a4b0d8d8 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,6 +1,12 @@ * @Pycord-Development/maintainers -/tests/ @Pycord-Development/maintain-tests -/discord/ext/testing/ @Pycord-Development/maintain-tests -/discord/ext/bridge/ @Pycord-Development/maintain-ext-bridge -/.github/ @Pycord-Development/project-leads +/tests/ @Pycord-Development/maintain-tests @Pycord-Development/maintainers +/discord/ext/testing/ @Pycord-Development/maintain-tests @Pycord-Development/maintainers +/discord/ext/bridge/ @Pycord-Development/maintain-ext-bridge @Pycord-Development/maintainers +/.github/ @Pycord-Development/maintainers @Lulalaby +/docs/locales/ @Pycord-Development/maintain-translations +/docs/build/locales/ @Pycord-Development/maintain-translations +/.github/workflows/docs-localization-download.yml @Pycord-Development/maintain-translations +/.github/workflows/docs-localization-upload.yml @Pycord-Development/maintain-translations +/crowdin.yml @Pycord-Development/maintain-translations +/requirements/_locale.txt @Pycord-Development/maintain-translations diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index ac8bf3c65e..061ec492ab 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -1,6 +1,6 @@ name: Bug Report description: Report broken or incorrect behaviour -labels: unconfirmed bug +labels: ["unconfirmed bug"] body: - type: markdown attributes: diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml index 67572c9bea..5409e28b3f 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -1,6 +1,6 @@ name: Feature Request description: Suggest a feature for this library -labels: feature request +labels: ["feature request"] body: - type: input attributes: diff --git a/.github/dependabot.yml b/.github/dependabot.yml index a5b317a336..a36074330e 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -2,6 +2,13 @@ version: 2 updates: - package-ecosystem: "pip" directory: "/" + groups: + minor-version-bumps: + update-types: ["minor"] + patch-version-bumps: + update-types: ["patch"] + major-version-bumps: + update-types: ["major"] schedule: interval: "daily" commit-message: @@ -10,6 +17,13 @@ updates: include: "scope" - package-ecosystem: "github-actions" directory: "/" + groups: + minor-version-bumps: + update-types: ["minor"] + patch-version-bumps: + update-types: ["patch"] + major-version-bumps: + update-types: ["major"] schedule: interval: "daily" commit-message: diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml deleted file mode 100644 index 8462f34514..0000000000 --- a/.github/workflows/check.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Checks -on: [pull_request, push] - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -jobs: - codespell: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: "3.12" - cache: "pip" - cache-dependency-path: "requirements/dev.txt" - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install -r requirements/dev.txt - - run: - codespell --ignore-words-list="groupt,nd,ot,ro,falsy,BU" \ - --exclude-file=".github/workflows/codespell.yml" - bandit: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: "3.12" - cache: "pip" - cache-dependency-path: "requirements/dev.txt" - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install -r requirements/dev.txt - - run: bandit --recursive --skip B101,B104,B105,B110,B307,B311,B404,B603,B607 . diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml deleted file mode 100644 index 4fbb2b5b8a..0000000000 --- a/.github/workflows/codeql-analysis.yml +++ /dev/null @@ -1,73 +0,0 @@ -# For most projects, this workflow file will not need changing; you simply need -# to commit it to your repository. -# -# You may wish to alter this file to override the set of languages analyzed, -# or to provide custom queries or build logic. -# -# ******** NOTE ******** -# We have attempted to detect the languages in your repository. Please check -# the `language` matrix defined below to confirm you have the correct set of -# supported CodeQL languages. -# -name: "CodeQL" - -on: - push: null - pull_request: null - schedule: - - cron: "26 6 * * 6" - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -jobs: - analyze: - # if: github.event.pull_request.user.type != 'Bot' && !contains(github.event.pull_request.labels.*.name, 'skip-ci') - name: Analyze - runs-on: ubuntu-latest - permissions: - actions: read - contents: read - security-events: write - - strategy: - fail-fast: false - matrix: - language: ["python"] - # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] - # Learn more: - # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v3 - with: - languages: ${{ matrix.language }} - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. - # queries: ./path/to/local/query, your-org/your-repo/queries@main - - # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). - # If this step fails, then you should remove it and run the build manually (see below) - - name: Autobuild - uses: github/codeql-action/autobuild@v3 - - # ℹ️ Command-line programs to run using the OS shell. - # 📚 https://git.io/JvXDl - - # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines - # and modify them (or add more) to build your code if your project - # uses a compiled language - - #- run: | - # make bootstrap - # make release - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v3 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml new file mode 100644 index 0000000000..ef7d88e37e --- /dev/null +++ b/.github/workflows/codeql.yml @@ -0,0 +1,37 @@ +name: "CodeQL" + +on: + push: + branches: [master] + pull_request: + workflow_dispatch: + schedule: + - cron: "0 0 * * 0" + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +jobs: + analyze: + name: "Analyze" + runs-on: ubuntu-latest + permissions: + actions: read + contents: read + security-events: write + strategy: + fail-fast: false + matrix: + language: ["python"] + steps: + - name: "Checkout repository" + uses: actions/checkout@v4 + - name: "Initialize CodeQL" + uses: github/codeql-action/init@v3 + with: + languages: ${{ matrix.language }} + - name: "Autobuild" + uses: github/codeql-action/autobuild@v3 + - name: "Perform CodeQL Analysis" + uses: github/codeql-action/analyze@v3 diff --git a/.github/workflows/docs-checks.yml b/.github/workflows/docs-checks.yml new file mode 100644 index 0000000000..0837c60f84 --- /dev/null +++ b/.github/workflows/docs-checks.yml @@ -0,0 +1,59 @@ +name: "Documentation Checks" + +on: + push: + paths: + - "discord/**" + - "docs/**" + - "requirements/**" + - "*.toml" + - "*.py" + branches: [master] + pull_request: + paths: + - "discord/**" + - "docs/**" + - "requirements/" + - "*.toml" + - "*.py" + workflow_dispatch: + inputs: + with_linkcheck: + type: boolean + description: "Whether to run the linkcheck" + default: true + schedule: + - cron: "0 0 * * *" + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +permissions: write-all + +jobs: + docs: + runs-on: ubuntu-latest + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + - name: "Setup Python" + uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: "pip" + cache-dependency-path: "requirements/docs.txt" + check-latest: true + - name: Install dependencies + run: | + python -m pip install -U pip + pip install ".[docs]" + - name: "Check Links" + if: ${{ github.event_name == 'schedule' || inputs.with_linkcheck }} + run: | + cd docs + make linkcheck + - name: "Compile to html" + run: | + cd docs + make -e SPHINXOPTS="-D language='en'" html diff --git a/.github/workflows/docs-localization-download.yml b/.github/workflows/docs-localization-download.yml new file mode 100644 index 0000000000..34e75a4dc7 --- /dev/null +++ b/.github/workflows/docs-localization-download.yml @@ -0,0 +1,135 @@ +name: "Multilingual Docs Download" + +on: + workflow_dispatch: + +permissions: write-all + +jobs: + download: + name: "Download localizations from Crowdin" + runs-on: ubuntu-latest + environment: translations + outputs: + pr_ref: ${{ steps.convert_outputs.outputs.pr_ref }} + pr_id: ${{ steps.convert_outputs.outputs.pr_id }} + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + with: + fetch-tags: true + - name: "Install Python" + uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: "pip" + cache-dependency-path: "requirements/_locale.txt" + - name: "Install Dependencies" + run: | + python -m pip install --upgrade pip setuptools wheel + pip install -r requirements/_locale.txt + pip install .[speed,voice,docs] + - name: "Get locales" + run: | + make html + sphinx-build -b gettext . ./build/locales + working-directory: ./docs + - name: "Build locales" + run: + sphinx-intl update -p ./build/locales ${{ vars.SPHINX_LANGUAGES }} + working-directory: ./docs + - name: "Crowdin" + id: crowdin + uses: crowdin/github-action@v2 + with: + upload_sources: false + upload_translations: false + download_translations: false + download_bundle: ${{ vars.CROWDIN_BUNDLE_ID }} + localization_branch_name: ${{ vars.CROWDIN_LOCALIZATION_BRANCH }} + create_pull_request: true + pull_request_title: ${{ vars.CROWDIN_PR_TITLE }} + pull_request_body: ${{ vars.CROWDIN_PR_BODY }} + pull_request_base_branch_name: "master" + pull_request_reviewers: "Lulalaby" + config: "crowdin.yml" + base_path: "." + commit_message: ${{ vars.CROWDIN_COMMIT_MSG }} + env: + GITHUB_TOKEN: ${{ secrets.CI_TOKEN }} + CROWDIN_PROJECT_ID: ${{ vars.CROWDIN_PROJECT_ID }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_API_TOKEN }} + - name: "Convert Outputs" + id: convert_outputs + run: | + PR_REF="l10n_master" + PR_ID="${{ steps.crowdin.outputs.pull_request_number }}" + echo "pr_ref=$(echo -n "$PR_REF" | base64)" >> $GITHUB_OUTPUT + echo "pr_id=$(echo -n "$PR_ID" | base64)" >> $GITHUB_OUTPUT + + pr: + name: "PR operations" + needs: [download] + runs-on: ubuntu-latest + environment: translations + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + - name: "Refresh Pull" + run: | + git fetch --all + git reset --hard origin/master + git pull + - name: "Convert Outputs" + id: convert_outputs + run: | + PR_REF=$(echo -n "${{ needs.download.outputs.pr_ref }}" | base64 --decode) + PR_ID=$(echo -n "${{ needs.download.outputs.pr_id }}" | base64 --decode) + echo "pr_ref=$PR_REF" >> $GITHUB_OUTPUT + echo "pr_id=$PR_ID" >> $GITHUB_OUTPUT + #- name: Invoke checks workflow + #uses: benc-uk/workflow-dispatch@v1.2.4 + #with: + #workflow: check.yml + #ref: ${{ steps.convert_outputs.outputs.pr_ref }} + #- name: Invoke codeql workflow + #uses: benc-uk/workflow-dispatch@v1.2.4 + #with: + #workflow: codeql-analysis.yml + #ref: ${{ steps.convert_outputs.outputs.pr_ref }} + #- name: Invoke lint workflow + #uses: benc-uk/workflow-dispatch@v1.2.4 + #with: + #workflow: lint.yml + #ref: ${{ steps.convert_outputs.outputs.pr_ref }} + #- name: Invoke pr workflow + #uses: benc-uk/workflow-dispatch@v1.2.4 + #with: + #workflow: pr.yml + #ref: ${{ steps.convert_outputs.outputs.pr_ref }} + #- name: Invoke test workflow + #uses: benc-uk/workflow-dispatch@v1.2.4 + #with: + #workflow: test.yml + #ref: ${{ steps.convert_outputs.outputs.pr_ref }} + #- name: Invoke todo workflow + #uses: benc-uk/workflow-dispatch@v1.2.4 + #with: + #workflow: todo.yml + #ref: ${{ steps.convert_outputs.outputs.pr_ref }} + #- name: Invoke version updates workflow + #uses: benc-uk/workflow-dispatch@v1.2.4 + #with: + #workflow: version-updates.yml + #ref: ${{ steps.convert_outputs.outputs.pr_ref }} + - name: "Auto Approve" + run: gh pr review --approve -b "Auto-approval for localization sync" "$PR_ID" + env: + PR_ID: ${{ steps.convert_outputs.outputs.pr_id }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: "Enable Auto Merge" + if: ${{ always() }} + run: gh pr merge --auto --squash $PR_ID + env: + PR_ID: ${{ steps.convert_outputs.outputs.pr_id }} + GITHUB_TOKEN: ${{ secrets.CI_TOKEN }} diff --git a/.github/workflows/docs-localization-upload.yml b/.github/workflows/docs-localization-upload.yml new file mode 100644 index 0000000000..521dc80ee3 --- /dev/null +++ b/.github/workflows/docs-localization-upload.yml @@ -0,0 +1,58 @@ +name: "Multilingual Docs Upload" + +on: + push: + paths: + - "discord/**" + - "docs/**" + branches: [master] + workflow_dispatch: + schedule: + - cron: "0 0 * * 1" + +permissions: write-all + +jobs: + upload: + name: "Upload localization base to Crowdin" + runs-on: ubuntu-latest + if: ${{ contains(github.event.head_commit.message, '!crowdin upload') || github.event_name == 'workflow_dispatch' }} + environment: translations + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + with: + fetch-tags: true + - name: "Install Python" + uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: "pip" + cache-dependency-path: "requirements/_locale.txt" + - name: "Install Dependencies" + run: | + python -m pip install --upgrade pip setuptools wheel + pip install -r requirements/_locale.txt + pip install .[speed,voice,docs] + - name: "Get locales" + run: | + make html + sphinx-build -b gettext . ./build/locales + working-directory: ./docs + - name: "Build locales" + run: + sphinx-intl update -p ./build/locales ${{ vars.SPHINX_LANGUAGES }} + working-directory: ./docs + - name: "Crowdin" + uses: crowdin/github-action@v2 + with: + upload_sources: true + upload_translations: false + download_translations: false + localization_branch_name: ${{ vars.CROWDIN_LOCALIZATION_BRANCH }} + create_pull_request: false + config: "crowdin.yml" + env: + GITHUB_TOKEN: ${{ secrets.CI_TOKEN }} + CROWDIN_PROJECT_ID: ${{ vars.CROWDIN_PROJECT_ID }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_API_TOKEN }} diff --git a/.github/workflows/lib-checks.yml b/.github/workflows/lib-checks.yml new file mode 100644 index 0000000000..6c4a4941bb --- /dev/null +++ b/.github/workflows/lib-checks.yml @@ -0,0 +1,158 @@ +name: "Library Checks" + +on: + push: + paths: + - "discord/**" + - "requirements/**" + - "*.toml" + - "*.py" + - ".*" + branches: [master] + pull_request: + paths: + - "discord/**" + - "requirements/**" + - "*.toml" + - "*.py" + - ".*" + workflow_dispatch: + schedule: + - cron: "0 0 * * *" + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +permissions: write-all + +jobs: + codespell: + if: ${{ github.event_name != 'schedule' }} + runs-on: ubuntu-latest + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + - name: "Setup Python" + uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: "pip" + cache-dependency-path: "requirements/dev.txt" + - name: "Install dependencies" + run: | + python -m pip install --upgrade pip + pip install -r requirements/dev.txt + - name: "Run codespell" + run: + codespell --ignore-words-list="groupt,nd,ot,ro,falsy,BU" \ + --exclude-file=".github/workflows/codespell.yml" + bandit: + if: ${{ github.event_name != 'schedule' }} + runs-on: ubuntu-latest + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + - name: "Setup Python" + uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: "pip" + cache-dependency-path: "requirements/dev.txt" + - name: "Install dependencies" + run: | + python -m pip install --upgrade pip + pip install -r requirements/dev.txt + - name: "Run bandit" + run: bandit --recursive --skip B101,B104,B105,B110,B307,B311,B404,B603,B607 . + pylint: + if: ${{ github.event_name != 'schedule' }} + runs-on: ubuntu-latest + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + - name: "Setup Python" + uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: "pip" + cache-dependency-path: "requirements/dev.txt" + - name: "Install dependencies" + run: | + python -m pip install --upgrade pip + pip install -r requirements/dev.txt + - name: "Setup cache" + id: cache-pylint + uses: actions/cache@v4 + with: + path: .pylint.d + key: pylint + - name: "Run pylint" + run: pylint discord/ --exit-zero + mypy: + if: ${{ github.event_name != 'schedule' }} + runs-on: ubuntu-latest + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + - name: "Setup Python" + uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: "pip" + cache-dependency-path: "requirements/dev.txt" + - name: "Install dependencies" + run: | + python -m pip install --upgrade pip + pip install -r requirements/dev.txt + - name: "Setup cache" + id: cache-mypy + uses: actions/cache@v4 + with: + path: .mypy_cache + key: mypy + - name: "Make mypy cache directory" + id: cache-dir-mypy + run: mkdir -p -v .mypy_cache + - name: "Run mypy" + run: mypy --non-interactive discord/ + pytest: + strategy: + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + python-version: ["3.9", "3.10", "3.11", "3.12"] + exclude: + - { python-version: "3.9", os: "macos-latest" } + include: + - { python-version: "3.9", os: "macos-13" } + runs-on: ${{ matrix.os }} + env: + OS: ${{ matrix.os }} + PYTHON: ${{ matrix.python-version }} + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + - name: "Setup Python" + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + cache: "pip" + cache-dependency-path: "requirements/dev.txt" + check-latest: true + - name: "Install dependencies" + run: | + python -m pip install --upgrade pip + pip install flake8 + pip install -r requirements/dev.txt + - name: "Setup cache" + id: cache-pytest + uses: actions/cache@v4 + with: + path: .pytest_cache + key: ${{ matrix.os }}-${{ matrix.python-version }}-pytest + - name: "Lint with flake8" + run: | + # stop the build if there are Python syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # exit-zero treats all errors as warnings. + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=120 --statistics diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml deleted file mode 100644 index d7238f4c3c..0000000000 --- a/.github/workflows/lint.yml +++ /dev/null @@ -1,53 +0,0 @@ -name: Type Check and Lint -on: [push, pull_request] - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -jobs: - pylint: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: "3.12" - cache: "pip" - cache-dependency-path: "requirements/dev.txt" - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install -r requirements/dev.txt - - name: Setup cache - id: cache-pylint - uses: actions/cache@v4 - with: - path: .pylint.d - key: pylint - - name: Analyse code with pylint - run: | - pylint discord/ --exit-zero - mypy: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: "3.12" - cache: "pip" - cache-dependency-path: "requirements/dev.txt" - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install -r requirements/dev.txt - - name: Setup cache - id: cache-mypy - uses: actions/cache@v4 - with: - path: .mypy_cache - key: mypy - - name: Make mypy cache directory - run: mkdir -p -v .mypy_cache - - name: Run type checks with Mypy - run: mypy --non-interactive discord/ diff --git a/.github/workflows/pr-auto-approve.yml b/.github/workflows/pr-auto-approve.yml new file mode 100644 index 0000000000..2337c1dadb --- /dev/null +++ b/.github/workflows/pr-auto-approve.yml @@ -0,0 +1,30 @@ +name: "Auto Approve" + +on: [pull_request] + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +permissions: write-all + +jobs: + auto-approve: + runs-on: ubuntu-latest + if: + ${{ github.actor == 'dependabot[bot]' || github.actor == 'crowdin-bot' || + github.actor == 'Crowdin Bot' || github.actor_id == 106019021 || github.actor_id + == 58779643 }} + continue-on-error: true + steps: + - name: "Auto Approve" + run: gh pr review --approve "$PR_URL" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} + - name: "Enable Auto Merge" + if: ${{ always() }} + run: gh pr merge --auto --squash "$PR_URL" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/.github/workflows/pr.yml b/.github/workflows/pr-checks.yml similarity index 53% rename from .github/workflows/pr.yml rename to .github/workflows/pr-checks.yml index 19a1206409..8448acc094 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr-checks.yml @@ -1,6 +1,7 @@ -name: "Lint PR" +name: "Pull Request Checks" on: + workflow_dispatch: pull_request_target: types: [opened, synchronize, reopened, edited] @@ -8,18 +9,22 @@ concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true +permissions: write-all + jobs: - check_dependencies: + pr-dependencies: runs-on: ubuntu-latest - name: Check Dependencies + name: "Check PR Dependencies" steps: - - uses: gregsdennis/dependencies-action@main + - name: PR Dependency Check + uses: gregsdennis/dependencies-action@v1.4.1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - check_title: - name: Check Title + semantic-title: + name: "Check Semantic Title" runs-on: ubuntu-latest steps: - - uses: amannn/action-semantic-pull-request@v5 + - name: "Check Semantic Pull Request" + uses: amannn/action-semantic-pull-request@v5.5.3 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/readthedocs.yml b/.github/workflows/readthedocs.yml new file mode 100644 index 0000000000..e5b039625c --- /dev/null +++ b/.github/workflows/readthedocs.yml @@ -0,0 +1,39 @@ +name: "Read The Docs Localization" + +on: + push: + branches: [master] + paths: + - "discord/**" + - "docs/**" + workflow_dispatch: + schedule: + - cron: "0 0 * * 1" + +permissions: write-all + +jobs: + localization_builds: + runs-on: ubuntu-latest + environment: documentation + strategy: + matrix: + rdt_projects: [ + "pycord-spanish", + "pycord-japanese", + "pycord-brazilian", + "pycord-russian", + "pycord-german", + "pycord-hindi", + "pycord-korean", + "pycord-italian", + "pycord-chinese", + "pycord-french" + ] + steps: + - name: "Trigger RDT ${{ matrix.rdt_projects }}" + run: | + PROJECT=${{ matrix.rdt_projects }} + curl --location --request POST "https://readthedocs.org/api/v3/projects/$PROJECT/versions/master/builds/" \ + --header 'Content-Type: application/json' \ + --header "Authorization: Token ${{ secrets.READTHEDOCS_TOKEN }}" \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000000..1756ab300d --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,189 @@ +name: "Release" + +on: + workflow_dispatch: + inputs: + version: + type: string + description: "Version number to release (e.g., 1.2.3, 1.2.3-rc1, 1.2.0)" + required: true + +permissions: write-all + +jobs: + safety_check: + runs-on: ubuntu-latest + environment: release + steps: + - name: "Security Check" + uses: Aiko-IT-Systems/execute-whitelist-action@v1.0.0 + with: + whitelisted-github-ids: ${{ vars.ALLOWED_USER_IDS }} + token: ${{ secrets.GITHUB_TOKEN }} + + pre_config: + needs: [safety_check] + outputs: + branch_name: ${{ steps.determine_vars.outputs.branch_name }} + is_rc: ${{ steps.determine_vars.outputs.is_rc }} + version: ${{ steps.determine_vars.outputs.version }} + previous_tag: ${{ steps.determine_vars.outputs.previous_tag }} + runs-on: ubuntu-latest + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + with: + fetch-depth: 0 + fetch-tags: true + + - name: "Determine Push Branch" + id: determine_vars + env: + VERSION: ${{ github.event.inputs.version }} + run: | + echo "version=$VERSION" >> $GITHUB_OUTPUT + PREVIOUS_TAG=$(git describe --tags --abbrev=0 HEAD^) + echo "previous_tag=${PREVIOUS_TAG}" >> $GITHUB_OUTPUT + if [[ $VERSION =~ -rc ]]; then + MAJOR_MINOR_VERSION=$(echo $VERSION | grep -oE '^[0-9]+\.[0-9]+') + echo "branch_name=v${MAJOR_MINOR_VERSION}.x" >> $GITHUB_OUTPUT + echo "is_rc=true" >> $GITHUB_OUTPUT + elif [[ $VERSION =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then + MAJOR_MINOR_VERSION=$(echo $VERSION | grep -oE '^[0-9]+\.[0-9]+') + echo "branch_name=v${MAJOR_MINOR_VERSION}.x" >> $GITHUB_OUTPUT + echo "is_rc=false" >> $GITHUB_OUTPUT + else + MAJOR_MINOR_VERSION=$(echo $VERSION | grep -oE '^[0-9]+\.[0-9]+') + echo "branch_name=v${MAJOR_MINOR_VERSION}.x" >> $GITHUB_OUTPUT + echo "is_rc=false" >> $GITHUB_OUTPUT + fi + + lib_release: + needs: [safety_check,pre_config] + runs-on: ubuntu-latest + environment: release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + with: + fetch-depth: 0 + fetch-tags: true + + - name: "Release Pycord" + id: pycord-release + uses: Aiko-IT-Systems/pycord-lib-release-action@v1.0.0 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + pypi-token: ${{ secrets.PYPI_TOKEN }} + version-branch-name: ${{ needs.pre_config.outputs.branch_name }} + ref: ${{ github.ref_name }} + repository: ${{ github.repository }} + python-version: "3.12" + release-requirements: "requirements/_release.txt" + version: ${{ needs.pre_config.outputs.version }} + is-rc: ${{ needs.pre_config.outputs.is_rc }} + pypi-package: "py-cord" + + - name: "Echo release url" + run: echo "${{ steps.pycord-release.outputs.gh-release }}" + + docs_release: + runs-on: ubuntu-latest + needs: [lib_release,pre_config] + if: needs.pre_config.outputs.is_rc == 'false' || (needs.pre_config.outputs.is_rc == 'true' && endsWith(needs.pre_config.outputs.version, '.0-rc1')) + environment: release + steps: + - name: "Sync Versions on Read the Docs" + run: | + curl --location --request POST 'https://readthedocs.org/api/v3/projects/pycord/sync-versions/' \ + --header 'Content-Type: application/json' \ + --header "Authorization: Token ${{ secrets.READTHEDOCS_TOKEN }}" + + - name: "Activate and Show Version on Read the Docs" + run: | + VERSION=${{ needs.pre_config.outputs.version }} + MAJOR_MINOR_VERSION=$(echo $VERSION | grep -oE '^[0-9]+\.[0-9]+') + PATCH_VERSION=${VERSION##*.} + if [[ $PATCH_VERSION =~ ^[0-9]+$ ]]; then + DOCS_VERSION="v$VERSION" + else + DOCS_VERSION="v$MAJOR_MINOR_VERSION.x" + fi + curl --location --request PATCH "https://readthedocs.org/api/v3/projects/pycord/versions/$DOCS_VERSION/" \ + --header 'Content-Type: application/json' \ + --header "Authorization: Token ${{ secrets.READTHEDOCS_TOKEN }}" \ + --data '{ + "active": true, + "hidden": false + }' + + inform_discord: + runs-on: ubuntu-latest + needs: [lib_release,docs_release,close_milestone,pre_config] + environment: release + steps: + - name: "Notify Discord" + run: | + VERSION=${{ needs.pre_config.outputs.version }} + MAJOR_MINOR_VERSION=$(echo $VERSION | grep -oE '^[0-9]+\.[0-9]+') + DOCS_URL="" + GITHUB_COMPARE_URL="" + GITHUB_RELEASE_URL="" + PYPI_RELEASE_URL="" + ANNOUNCEMENT="## <:pycord:1063211537008955495> Pycord v${MAJOR_MINOR_VERSION} is out!\n\n" + ANNOUNCEMENT="${ANNOUNCEMENT}[@everyone]\n\n" + ANNOUNCEMENT="${ANNOUNCEMENT}You can view the changelog here: <$DOCS_URL>\n\n" + ANNOUNCEMENT="${ANNOUNCEMENT}Feel free to take a look at the [GitHub changelog]($GITHUB_COMPARE_URL), [GitHub release page]($GITHUB_RELEASE_URL) and the [PyPI release page]($PYPI_RELEASE_URL).\n\n" + ANNOUNCEMENT="${ANNOUNCEMENT}You can install this version by running the following command:\n\`\`\`sh\npip install -U py-cord==$VERSION\n\`\`\`\n\n" + curl -H "Content-Type: application/json" \ + -X POST \ + -d "{\"content\":\"$ANNOUNCEMENT\"}" \ + ${{ secrets.DISCORD_WEBHOOK_URL }} + + determine_milestone_id: + runs-on: ubuntu-latest + needs: [lib_release,pre_config] + if: ${{ !contains(needs.pre_config.outputs.version, '-') && endsWith(needs.pre_config.outputs.version, '.0') }} + outputs: + old_milestone_version: ${{ steps.extract_version.outputs.old_milestone_version }} + new_milestone_version: ${{ steps.extract_version.outputs.new_milestone_version }} + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + environment: release + steps: + - name: "Extract Milestone Version" + id: extract_version + run: | + gh extension install valeriobelli/gh-milestone + VERSION=${{ needs.pre_config.outputs.version }} + OLD_MILESTONE_VERSION=$(gh milestone list --query "v2.7" | grep "#" | awk '{print $2}') + NEW_MILESTONE_VERSION="v$(echo $VERSION | grep -oE '^[0-9]+\.[0-9]+')" + echo "old_milestone_version=$OLD_MILESTONE_VERSION" >> $GITHUB_OUTPUT + echo "new_milestone_version=$NEW_MILESTONE_VERSION" >> $GITHUB_OUTPUT + + close_milestone: + runs-on: ubuntu-latest + needs: [determine_milestone_id,pre_config] + if: ${{ !contains(needs.pre_config.outputs.version, '-') && endsWith(needs.pre_config.outputs.version, '.0') }} + environment: release + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + with: + fetch-depth: 0 + fetch-tags: true + + - name: "Close Milestone" + run: | + gh extension install valeriobelli/gh-milestone + OLD_MILESTONE_ID=$(gh milestone list --query "${{ needs.determine_milestone_id.outputs.old_milestone_version }}" | grep "#" | cut -d' ' -f2 | cut -d '#' -f2) + gh milestone edit $OLD_MILESTONE_ID --state closed + + - name: "Create New Milestone" + run: | + gh extension install valeriobelli/gh-milestone + gh milestone create "${{ needs.determine_milestone_id.outputs.new_milestone_version }}" diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index 9c500580ee..0000000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,80 +0,0 @@ -name: Unit Tests - -on: - push: - pull_request: - schedule: - - cron: "0 0 * * *" - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -jobs: - pytest: - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest, macos-latest, windows-latest] - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] - # Python 3.8/3.9 are on macos-13 but not macos-latest (macos-14-arm64) - # https://github.com/actions/setup-python/issues/696#issuecomment-1637587760 - exclude: - - { python-version: "3.8", os: "macos-latest" } - - { python-version: "3.9", os: "macos-latest" } - include: - - { python-version: "3.8", os: "macos-13" } - - { python-version: "3.9", os: "macos-13" } - - env: - OS: ${{ matrix.os }} - PYTHON: ${{ matrix.python-version }} - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python-version }} - cache: "pip" - cache-dependency-path: "requirements/dev.txt" - check-latest: true - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install flake8 - pip install -r requirements/dev.txt - - name: Setup cache - id: cache-pytest - uses: actions/cache@v4 - with: - path: .pytest_cache - key: ${{ matrix.os }}-${{ matrix.python-version }}-pytest - - name: Lint with flake8 - run: | - # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - # exit-zero treats all errors as warnings. - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=120 --statistics - docs: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 - with: - python-version: "3.8" - cache: "pip" - cache-dependency-path: "requirements/docs.txt" - check-latest: true - - name: Install dependencies - run: | - python -m pip install -U pip - pip install ".[docs]" - - name: Check Links - if: github.event_name == 'schedule' - run: | - cd docs - make linkcheck - - name: Compile to html - run: | - cd docs - make html diff --git a/.github/workflows/todo-checks.yml b/.github/workflows/todo-checks.yml new file mode 100644 index 0000000000..b210393136 --- /dev/null +++ b/.github/workflows/todo-checks.yml @@ -0,0 +1,34 @@ +name: "TODO Checks" + +on: + push: + paths: + - "discord/**" + - "docs/**" + - "examples/**" + - "tests/**" + branches: [master] + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +permissions: write-all + +jobs: + todo-check: + runs-on: ubuntu-latest + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + - name: "Track TODO Action" + uses: ribtoks/tdg-github-action@v0.4.12-beta + with: + TOKEN: ${{ secrets.GITHUB_TOKEN }} + REPO: ${{ github.repository }} + SHA: ${{ github.sha }} + REF: ${{ github.ref }} + COMMENT_ON_ISSUES: true + EXCLUDE_PATTERN: "\\.(doctree|doctrees|pickle)$" + ASSIGN_FROM_BLAME: true diff --git a/.github/workflows/todo.yml b/.github/workflows/todo.yml deleted file mode 100644 index 08271e51e8..0000000000 --- a/.github/workflows/todo.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: Check TODO -on: [push, pull_request] -jobs: - todo: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Run tdg-github-action - uses: ribtoks/tdg-github-action@v0.4.11-beta - with: - TOKEN: ${{ secrets.GITHUB_TOKEN }} - REPO: ${{ github.repository }} - SHA: ${{ github.sha }} - REF: ${{ github.ref }} - COMMENT_ON_ISSUES: true diff --git a/.github/workflows/version-updates.yml b/.github/workflows/version-updates.yml deleted file mode 100644 index f98f1f34ed..0000000000 --- a/.github/workflows/version-updates.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Version Update Auto Merge -on: pull_request - -permissions: - contents: write - pull-requests: write - -jobs: - auto-merge: - runs-on: ubuntu-latest - if: ${{ github.actor == 'dependabot[bot]' }} - steps: - - run: gh pr review --approve "$PR_URL" - env: - PR_URL: ${{github.event.pull_request.html_url}} - GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - - run: gh pr merge --auto --squash "$PR_URL" - env: - PR_URL: ${{github.event.pull_request.html_url}} - GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/.gitignore b/.gitignore index f45b1f8803..96be4f61db 100644 --- a/.gitignore +++ b/.gitignore @@ -8,7 +8,8 @@ __pycache__/ # Distribution / packaging .Python -build/ +./build/ +./_build/ develop-eggs/ dist/ downloads/ @@ -51,10 +52,6 @@ coverage.xml .pytest_cache/ cover/ -# Translations -*.mo -*.pot - # Django stuff: *.log local_settings.py @@ -165,17 +162,16 @@ cython_debug/ *.egg-info .venv/ docs/_build -docs/crowdin.py *.buildinfo -*.mp3 -*.m4a -*.wav -*.mp4 -*.ogg -*.pcm -*.png -*.jpg -*.flac +!*.mp3 +!*.m4a +!*.wav +!*.mp4 +!*.ogg +!*.pcm +!*.png +!*.jpg +!*.flac .vs/ .DS_Store __pycache__ @@ -186,3 +182,13 @@ node_modules/* # changelog is autogenerated from CHANGELOG.md docs/changelog.md + +# Translations +docs/build/html +docs/build/doctrees +docs/build/linkcheck +!docs/build/locales/* +*.mo +!docs/locales/* +/build/ +/vscode/ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index ab0e6556f8..3aa0288d23 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -7,7 +7,9 @@ repos: rev: v4.6.0 hooks: - id: trailing-whitespace + exclude: \.(po|pot|yml|yaml)$ - id: end-of-file-fixer + exclude: \.(po|pot|yml|yaml)$ - repo: https://github.com/PyCQA/autoflake rev: v2.3.1 hooks: @@ -19,19 +21,21 @@ repos: # - --remove-duplicate-keys # - --remove-unused-variables - repo: https://github.com/asottile/pyupgrade - rev: v3.16.0 + rev: v3.17.0 hooks: - id: pyupgrade - args: [--py38-plus] + exclude: \.(po|pot|yml|yaml)$ - repo: https://github.com/PyCQA/isort rev: 5.13.2 hooks: - id: isort + exclude: \.(po|pot|yml|yaml)$ - repo: https://github.com/psf/black - rev: 24.4.2 + rev: 24.8.0 hooks: - id: black args: [--safe, --quiet] + exclude: \.(po|pot|yml|yaml)$ - repo: https://github.com/Pierre-Sassoulas/black-disable-checker rev: v1.1.3 hooks: @@ -81,10 +85,12 @@ repos: hooks: - id: prettier args: [--prose-wrap=always, --print-width=88] + exclude: \.(po|pot|yml|yaml)$ - repo: https://github.com/DanielNoord/pydocstringformatter rev: v0.7.3 hooks: - id: pydocstringformatter + exclude: \.(po|pot|yml|yaml)$ args: [ --style=numpydoc, diff --git a/.readthedocs.yml b/.readthedocs.yml index 59842ef8bb..7113eb48e6 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -4,7 +4,7 @@ formats: [] build: os: ubuntu-22.04 tools: - python: "3.8" + python: "3.12" sphinx: configuration: docs/conf.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 32b1ae5f9d..80929555d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,51 @@ possible (see our [Version Guarantees] for more info). These changes are available on the `master` branch, but have not yet been released. +⚠️ **This Version Removes Support For Python 3.8** ⚠️ + +### Added + +- Added `Guild.fetch_role` method. + ([#2528](https://github.com/Pycord-Development/pycord/pull/2528)) +- Added the following `AppInfo` attributes: `approximate_guild_count`, + `approximate_user_install_count`, `custom_install_url`, `install_params`, + `interactions_endpoint_url`, `redirect_uris`, `role_connections_verification_url`, and + `tags`. ([#2520](https://github.com/Pycord-Development/pycord/pull/2520)) +- Added `Member.guild_banner` and `Member.display_banner` properties. + ([#2556](https://github.com/Pycord-Development/pycord/pull/2556)) + +### Changed + +- Renamed `cover` property of `ScheduledEvent` and `cover` argument of + `ScheduledEvent.edit` to `image`. + ([#2496](https://github.com/Pycord-Development/pycord/pull/2496)) +- ⚠️ **This Version Removes Support For Python 3.8** ⚠️ + ([#2521](https://github.com/Pycord-Development/pycord/pull/2521)) + +### Deprecated + +- Deprecated `AppInfo.summary` in favor of `AppInfo.description`. + ([#2520](https://github.com/Pycord-Development/pycord/pull/2520)) + +### Fixed + +- Fixed `EntitlementIterator` behavior with `limit > 100`. + ([#2555](https://github.com/Pycord-Development/pycord/pull/2555)) +- Fixed missing `stacklevel` parameter in `warn_deprecated` function call inside + `@utils.deprecated`. ([#2500](https://github.com/Pycord-Development/pycord/pull/2500)) +- Fixed the typehint in `ConnectionState._polls` to reflect actual behavior, changing it + from `Guild` to `Poll`. + ([#2500](https://github.com/Pycord-Development/pycord/pull/2500)) +- Fixed missing `__slots__` attributes in `RawReactionClearEmojiEvent` and + `RawMessagePollVoteEvent`. + ([#2500](https://github.com/Pycord-Development/pycord/pull/2500)) +- Fixed the type of `ForumChannel.default_sort_order`, changing it from `int` to + `SortOrder`. ([#2500](https://github.com/Pycord-Development/pycord/pull/2500)) +- Fixed `PartialMessage`s causing errors when created from `PartialMessageable`. + ([#2568](https://github.com/Pycord-Development/pycord/pull/2500)) + +## [2.6.0] - 2024-07-09 + ### Added - Added `banner` parameter to `ClientUser.edit`. @@ -29,7 +74,17 @@ These changes are available on the `master` branch, but have not yet been releas - Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450)) - Added support for user-installable applications. - ([#2409](https://github.com/Pycord-Development/pycord/pull/2409) + ([#2409](https://github.com/Pycord-Development/pycord/pull/2409)) +- Added support for one-time purchases for Discord monetization. + ([#2438](https://github.com/Pycord-Development/pycord/pull/2438)) +- Added `Attachment.title`. + ([#2486](https://github.com/Pycord-Development/pycord/pull/2486)) +- Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489)) +- Added `bypass_verification` parameter to `Member.edit`. + ([#2489](https://github.com/Pycord-Development/pycord/pull/2489)) +- Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487)) +- Added `MessageCall` information. + ([#2488](https://github.com/Pycord-Development/pycord/pull/2488)) ### Fixed @@ -42,6 +97,8 @@ These changes are available on the `master` branch, but have not yet been releas ([#2390](https://github.com/Pycord-Development/pycord/pull/2390)) - Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402)) +- Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. + ([#2406](https://github.com/Pycord-Development/pycord/pull/2406)) - Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400)) - Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. @@ -56,10 +113,18 @@ These changes are available on the `master` branch, but have not yet been releas ([#2448](https://github.com/Pycord-Development/pycord/pull/2448)) - Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458)) +- Fixed issues with enums as `Option` types with long descriptions or too many values. + ([#2463](https://github.com/Pycord-Development/pycord/pull/2463)) - Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457)) - Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464)) +- Fixed `remove_application_command` causing issues while reloading extensions. + ([#2480](https://github.com/Pycord-Development/pycord/pull/2480)) +- Fixed outdated logic for filtering and sorting audit log entries. + ([#2371](https://github.com/Pycord-Development/pycord/pull/2371)) +- Further fixed logic when fetching audit logs. + ([#2492](https://github.com/Pycord-Development/pycord/pull/2492)) ### Changed @@ -77,13 +142,23 @@ These changes are available on the `master` branch, but have not yet been releas `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409)) - `Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. - ([#2409](https://github.com/Pycord-Development/pycord/pull/2409) + ([#2409](https://github.com/Pycord-Development/pycord/pull/2409)) +- Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an + `EntitlementIterator`. + ([#2490](https://github.com/Pycord-Development/pycord/pull/2490)) +- Changed the error message that appears when attempting to add a subcommand group to a + subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275)) ### Removed - Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421)) +- Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` + and `after` parameters. + ([#2371](https://github.com/Pycord-Development/pycord/pull/2371)) +- Removed the `vanity_code` parameter from `Guild.edit`. + ([#2491](https://github.com/Pycord-Development/pycord/pull/2491)) ## [2.5.0] - 2024-03-02 @@ -275,7 +350,6 @@ These changes are available on the `master` branch, but have not yet been releas ([#2185](https://github.com/Pycord-Development/pycord/pull/2185)) - Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`. - ([#2164](https://github.com/Pycord-Development/pycord/pull/2164)) - Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191)) - Fixed a misplaced payload object inside of the thread creation payload. @@ -605,7 +679,7 @@ These changes are available on the `master` branch, but have not yet been releas - Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490)) -- Fix type issues in options.py +- Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473)) - Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521)) @@ -855,7 +929,8 @@ These changes are available on the `master` branch, but have not yet been releas - Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240)) -[unreleased]: https://github.com/Pycord-Development/pycord/compare/v2.5.0...HEAD +[unreleased]: https://github.com/Pycord-Development/pycord/compare/v2.6.0...HEAD +[2.6.0]: https://github.com/Pycord-Development/pycord/compare/v2.5.0...v2.6.0 [2.5.0]: https://github.com/Pycord-Development/pycord/compare/v2.4.1...v2.5.0 [2.4.1]: https://github.com/Pycord-Development/pycord/compare/v2.4.0...v2.4.1 [2.4.0]: https://github.com/Pycord-Development/pycord/compare/v2.3.3...v2.4.0 diff --git a/README.rst b/README.rst index a65654c4e6..b91f3dea06 100644 --- a/README.rst +++ b/README.rst @@ -1,9 +1,10 @@ -Pycord +.. image:: https://raw.githubusercontent.com/Pycord-Development/pycord/master/pycord.png + :alt: Pycord v3 + +Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python. + ====== -.. image:: https://img.shields.io/discord/881207955029110855?label=discord&style=for-the-badge&logo=discord&color=5865F2&logoColor=white - :target: https://pycord.dev/discord - :alt: Discord server invite .. image:: https://img.shields.io/pypi/v/py-cord.svg?style=for-the-badge&logo=pypi&color=yellowgreen&logoColor=white :target: https://pypi.python.org/pypi/py-cord :alt: PyPI version info @@ -17,7 +18,15 @@ Pycord :target: https://github.com/Pycord-Development/pycord/releases :alt: Latest release -A fork of discord.py. Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python. +.. image:: https://img.shields.io/discord/881207955029110855?label=discord&style=for-the-badge&logo=discord&color=5865F2&logoColor=white + :target: https://pycord.dev/discord + :alt: Discord server invite + +.. image:: https://badges.crowdin.net/badge/dark/crowdin-on-light.png + :target: https://translations.pycord.dev/documentation/?utm_source=badge&utm_medium=referral&utm_campaign=badge-add-on + :alt: Crowdin | Agile localization for tech companies + +====== Key Features ------------ @@ -25,12 +34,12 @@ Key Features - Modern Pythonic API using ``async`` and ``await``. - Proper rate limit handling. - Optimised for both speed and memory usage. -- Full Application Command Support +- Full application API support. Installing ---------- -**Python 3.8 or higher is required** +**Python 3.9 or higher is required** To install the library without full voice support, run the following command: @@ -141,3 +150,9 @@ Useful Links - `Learn how to create Discord bots with Pycord `_ - `Our Official Discord Server `_ - `Official Discord Developers Server `_ + +Translations +------------ + +.. image:: https://badges.awesome-crowdin.com/translation-200034237-5.png + :alt: Translation Status diff --git a/crowdin.yml b/crowdin.yml new file mode 100644 index 0000000000..d9142bc3db --- /dev/null +++ b/crowdin.yml @@ -0,0 +1,19 @@ +base_path: "docs/build/locales" +base_url: "https://pycord.crowdin.com" + +preserve_hierarchy: true + +commit_message: "docs: Update translations" + +export_languages: ["de", "ja", "fr", "it", "hi", "ko", "pt-BR", "es-ES", "zh-CN"] + +bundles: + - 1 + +files: + [ + { + source: "**/*.pot", + translation: "/docs/locales/%two_letters_code%/LC_MESSAGES/%original_path%/%file_name%.po", + }, + ] diff --git a/discord/appinfo.py b/discord/appinfo.py index 9554c96b5d..034b1bb158 100644 --- a/discord/appinfo.py +++ b/discord/appinfo.py @@ -29,11 +29,13 @@ from . import utils from .asset import Asset +from .permissions import Permissions if TYPE_CHECKING: from .guild import Guild from .state import ConnectionState from .types.appinfo import AppInfo as AppInfoPayload + from .types.appinfo import AppInstallParams as AppInstallParamsPayload from .types.appinfo import PartialAppInfo as PartialAppInfoPayload from .types.appinfo import Team as TeamPayload from .user import User @@ -41,6 +43,7 @@ __all__ = ( "AppInfo", "PartialAppInfo", + "AppInstallParams", ) @@ -70,11 +73,6 @@ class AppInfo: grant flow to join. rpc_origins: Optional[List[:class:`str`]] A list of RPC origin URLs, if RPC is enabled. - summary: :class:`str` - If this application is a game sold on Discord, - this field will be the summary field for the store page of its primary SKU. - - .. versionadded:: 1.3 verify_key: :class:`str` The hex encoded key for verification in interactions and the @@ -110,6 +108,48 @@ class AppInfo: The application's privacy policy URL, if set. .. versionadded:: 2.0 + + approximate_guild_count: Optional[:class:`int`] + The approximate count of guilds to which the app has been added, if any. + + .. versionadded:: 2.7 + + approximate_user_install_count: Optional[:class:`int`] + The approximate count of users who have installed the application, if any. + + .. versionadded:: 2.7 + + redirect_uris: Optional[List[:class:`str`]] + The list of redirect URIs for the application, if set. + + .. versionadded:: 2.7 + + interactions_endpoint_url: Optional[:class:`str`] + The interactions endpoint URL for the application, if set. + + .. versionadded:: 2.7 + + role_connections_verification_url: Optional[:class:`str`] + The role connection verification URL for the application, if set. + + .. versionadded:: 2.7 + + install_params: Optional[List[:class:`AppInstallParams`]] + The settings for the application's default in-app authorization link, if set. + + .. versionadded:: 2.7 + + tags: Optional[List[:class:`str`]] + The list of tags describing the content and functionality of the app, if set. + + Maximium of 5 tags. + + .. versionadded:: 2.7 + + custom_install_url: Optional[:class:`str`] + The default custom authorization URL for the application, if set. + + .. versionadded:: 2.7 """ __slots__ = ( @@ -122,7 +162,7 @@ class AppInfo: "bot_require_code_grant", "owner", "_icon", - "summary", + "_summary", "verify_key", "team", "guild_id", @@ -131,6 +171,14 @@ class AppInfo: "_cover_image", "terms_of_service_url", "privacy_policy_url", + "approximate_guild_count", + "approximate_user_install_count", + "redirect_uris", + "interactions_endpoint_url", + "role_connections_verification_url", + "install_params", + "tags", + "custom_install_url", ) def __init__(self, state: ConnectionState, data: AppInfoPayload): @@ -149,7 +197,7 @@ def __init__(self, state: ConnectionState, data: AppInfoPayload): team: TeamPayload | None = data.get("team") self.team: Team | None = Team(state, team) if team else None - self.summary: str = data["summary"] + self._summary: str = data["summary"] self.verify_key: str = data["verify_key"] self.guild_id: int | None = utils._get_as_snowflake(data, "guild_id") @@ -161,6 +209,24 @@ def __init__(self, state: ConnectionState, data: AppInfoPayload): self._cover_image: str | None = data.get("cover_image") self.terms_of_service_url: str | None = data.get("terms_of_service_url") self.privacy_policy_url: str | None = data.get("privacy_policy_url") + self.approximate_guild_count: int | None = data.get("approximate_guild_count") + self.approximate_user_install_count: int | None = data.get( + "approximate_user_install_count" + ) + self.redirect_uris: list[str] | None = data.get("redirect_uris", []) + self.interactions_endpoint_url: str | None = data.get( + "interactions_endpoint_url" + ) + self.role_connections_verification_url: str | None = data.get( + "role_connections_verification_url" + ) + + install_params = data.get("install_params") + self.install_params: AppInstallParams | None = ( + AppInstallParams(install_params) if install_params else None + ) + self.tags: list[str] | None = data.get("tags", []) + self.custom_install_url: str | None = data.get("custom_install_url") def __repr__(self) -> str: return ( @@ -195,6 +261,23 @@ def guild(self) -> Guild | None: """ return self._state._get_guild(self.guild_id) + @property + def summary(self) -> str | None: + """If this application is a game sold on Discord, + this field will be the summary field for the store page of its primary SKU. + + It currently returns an empty string. + + .. versionadded:: 1.3 + .. deprecated:: 2.7 + """ + utils.warn_deprecated( + "summary", + "description", + reference="https://discord.com/developers/docs/resources/application#application-object-application-structure", + ) + return self._summary + class PartialAppInfo: """Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite` @@ -257,3 +340,23 @@ def icon(self) -> Asset | None: if self._icon is None: return None return Asset._from_icon(self._state, self.id, self._icon, path="app") + + +class AppInstallParams: + """Represents the settings for the custom authorization URL of an application. + + .. versionadded:: 2.7 + + Attributes + ---------- + scopes: List[:class:`str`] + The list of OAuth2 scopes for adding the application to a guild. + permissions: :class:`Permissions` + The permissions to request for the bot role in the guild. + """ + + __slots__ = ("scopes", "permissions") + + def __init__(self, data: AppInstallParamsPayload) -> None: + self.scopes: list[str] = data.get("scopes", []) + self.permissions: Permissions = Permissions(int(data["permissions"])) diff --git a/discord/asset.py b/discord/asset.py index 103bc4ba7e..07c7ca8e7b 100644 --- a/discord/asset.py +++ b/discord/asset.py @@ -212,6 +212,19 @@ def _from_guild_avatar( animated=animated, ) + @classmethod + def _from_guild_banner( + cls, state, guild_id: int, member_id: int, banner: str + ) -> Asset: + animated = banner.startswith("a_") + format = "gif" if animated else "png" + return cls( + state, + url=f"{cls.BASE}/guilds/{guild_id}/users/{member_id}/banners/{banner}.{format}?size=512", + key=banner, + animated=animated, + ) + @classmethod def _from_icon(cls, state, object_id: int, icon_hash: str, path: str) -> Asset: return cls( @@ -277,7 +290,7 @@ def _from_user_banner(cls, state, user_id: int, banner_hash: str) -> Asset: ) @classmethod - def _from_scheduled_event_cover( + def _from_scheduled_event_image( cls, state, event_id: int, cover_hash: str ) -> Asset: return cls( diff --git a/discord/audit_logs.py b/discord/audit_logs.py index 4bac078c4f..7497e8c37a 100644 --- a/discord/audit_logs.py +++ b/discord/audit_logs.py @@ -153,12 +153,12 @@ def _transform_avatar(entry: AuditLogEntry, data: str | None) -> Asset | None: return Asset._from_avatar(entry._state, entry._target_id, data) # type: ignore -def _transform_scheduled_event_cover( +def _transform_scheduled_event_image( entry: AuditLogEntry, data: str | None ) -> Asset | None: if data is None: return None - return Asset._from_scheduled_event_cover(entry._state, entry._target_id, data) + return Asset._from_scheduled_event_image(entry._state, entry._target_id, data) def _guild_hash_transformer( @@ -213,7 +213,7 @@ class AuditLogDiff: def __len__(self) -> int: return len(self.__dict__) - def __iter__(self) -> Generator[tuple[str, Any], None, None]: + def __iter__(self) -> Generator[tuple[str, Any]]: yield from self.__dict__.items() def __repr__(self) -> str: @@ -274,7 +274,7 @@ class AuditLogChanges: _enum_transformer(enums.ScheduledEventLocationType), ), "command_id": ("command_id", _transform_snowflake), - "image_hash": ("cover", _transform_scheduled_event_cover), + "image_hash": ("image", _transform_scheduled_event_image), "trigger_type": (None, _enum_transformer(enums.AutoModTriggerType)), "event_type": (None, _enum_transformer(enums.AutoModEventType)), "actions": (None, _transform_actions), diff --git a/discord/bot.py b/discord/bot.py index 19a1ca9bdc..6ecc921f5c 100644 --- a/discord/bot.py +++ b/discord/bot.py @@ -108,7 +108,7 @@ def application_commands(self) -> list[ApplicationCommand]: return list(self._application_commands.values()) def add_application_command(self, command: ApplicationCommand) -> None: - """Adds a :class:`.ApplicationCommand` into the internal list of commands. + """Adds an :class:`.ApplicationCommand` into the internal list of commands. This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead. @@ -143,7 +143,7 @@ def add_application_command(self, command: ApplicationCommand) -> None: def remove_application_command( self, command: ApplicationCommand ) -> ApplicationCommand | None: - """Remove a :class:`.ApplicationCommand` from the internal list + """Remove an :class:`.ApplicationCommand` from the internal list of commands. .. versionadded:: 2.0 @@ -156,16 +156,15 @@ def remove_application_command( Returns ------- Optional[:class:`.ApplicationCommand`] - The command that was removed. If the name is not valid then + The command that was removed. If the command has not been added, ``None`` is returned instead. """ - if command.id is None: - try: - index = self._pending_application_commands.index(command) - except ValueError: - return None - return self._pending_application_commands.pop(index) - return self._application_commands.pop(command.id, None) + if command.id: + self._application_commands.pop(command.id, None) + + if command in self._pending_application_commands: + self._pending_application_commands.remove(command) + return command @property def get_command(self): @@ -185,7 +184,7 @@ def get_application_command( guild_ids: list[int] | None = None, type: type[ApplicationCommand] = ApplicationCommand, ) -> ApplicationCommand | None: - """Get a :class:`.ApplicationCommand` from the internal list + """Get an :class:`.ApplicationCommand` from the internal list of commands. .. versionadded:: 2.0 @@ -1052,7 +1051,7 @@ def inner(cls: type[SlashCommandGroup]) -> SlashCommandGroup: slash_group = group - def walk_application_commands(self) -> Generator[ApplicationCommand, None, None]: + def walk_application_commands(self) -> Generator[ApplicationCommand]: """An iterator that recursively walks through all application commands and subcommands. Yields diff --git a/discord/channel.py b/discord/channel.py index 77c733194f..27230a380f 100644 --- a/discord/channel.py +++ b/discord/channel.py @@ -1036,6 +1036,9 @@ def _update(self, guild: Guild, data: ForumChannelPayload) -> None: for tag in (data.get("available_tags") or []) ] self.default_sort_order: SortOrder | None = data.get("default_sort_order", None) + if self.default_sort_order is not None: + self.default_sort_order = try_enum(SortOrder, self.default_sort_order) + reaction_emoji_ctx: dict = data.get("default_reaction_emoji") if reaction_emoji_ctx is not None: emoji_name = reaction_emoji_ctx.get("emoji_name") @@ -1339,7 +1342,7 @@ async def create_thread( f.close() ret = Thread(guild=self.guild, state=self._state, data=data) - msg = ret.get_partial_message(data["last_message_id"]) + msg = ret.get_partial_message(int(data["last_message_id"])) if view: state.store_view(view, msg.id) diff --git a/discord/client.py b/discord/client.py index d46964042f..7f13696f6f 100644 --- a/discord/client.py +++ b/discord/client.py @@ -49,7 +49,7 @@ from .guild import Guild from .http import HTTPClient from .invite import Invite -from .iterators import GuildIterator +from .iterators import EntitlementIterator, GuildIterator from .mentions import AllowedMentions from .monetization import SKU, Entitlement from .object import Object @@ -256,6 +256,9 @@ def __init__( VoiceClient.warn_nacl = False _log.warning("PyNaCl is not installed, voice will NOT be supported") + # Used to hard-reference tasks so they don't get garbage collected (discarded with done_callbacks) + self._tasks = set() + async def __aenter__(self) -> Client: loop = asyncio.get_running_loop() self.loop = loop @@ -423,8 +426,12 @@ def _schedule_event( **kwargs: Any, ) -> asyncio.Task: wrapped = self._run_event(coro, event_name, *args, **kwargs) - # Schedules the task - return asyncio.create_task(wrapped, name=f"pycord: {event_name}") + + # Schedule task and store in set to avoid task garbage collection + task = asyncio.create_task(wrapped, name=f"pycord: {event_name}") + self._tasks.add(task) + task.add_done_callback(self._tasks.discard) + return task def dispatch(self, event: str, *args: Any, **kwargs: Any) -> None: _log.debug("Dispatching event %s", event) @@ -1034,7 +1041,7 @@ def get_poll(self, id: int, /) -> Poll | None: """ return self._connection.get_poll(id) - def get_all_channels(self) -> Generator[GuildChannel, None, None]: + def get_all_channels(self) -> Generator[GuildChannel]: """A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'. This is equivalent to: :: @@ -1058,7 +1065,7 @@ def get_all_channels(self) -> Generator[GuildChannel, None, None]: for guild in self.guilds: yield from guild.channels - def get_all_members(self) -> Generator[Member, None, None]: + def get_all_members(self) -> Generator[Member]: """Returns a generator with every :class:`.Member` the client can see. This is equivalent to: :: @@ -2043,17 +2050,83 @@ async def fetch_skus(self) -> list[SKU]: data = await self._connection.http.list_skus(self.application_id) return [SKU(data=s) for s in data] - async def fetch_entitlements(self) -> list[Entitlement]: - """|coro| + def entitlements( + self, + user: Snowflake | None = None, + skus: list[Snowflake] | None = None, + before: SnowflakeTime | None = None, + after: SnowflakeTime | None = None, + limit: int | None = 100, + guild: Snowflake | None = None, + exclude_ended: bool = False, + ) -> EntitlementIterator: + """Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements. - Fetches the bot's entitlements. + .. versionadded:: 2.6 - .. versionadded:: 2.5 + Parameters + ---------- + user: :class:`.abc.Snowflake` | None + Limit the fetched entitlements to entitlements owned by this user. + skus: list[:class:`.abc.Snowflake`] | None + Limit the fetched entitlements to entitlements that are for these SKUs. + before: :class:`.abc.Snowflake` | :class:`datetime.datetime` | None + Retrieves guilds before this date or object. + If a datetime is provided, it is recommended to use a UTC-aware datetime. + If the datetime is naive, it is assumed to be local time. + after: :class:`.abc.Snowflake` | :class:`datetime.datetime` | None + Retrieve guilds after this date or object. + If a datetime is provided, it is recommended to use a UTC-aware datetime. + If the datetime is naive, it is assumed to be local time. + limit: Optional[:class:`int`] + The number of entitlements to retrieve. + If ``None``, retrieves every entitlement, which may be slow. + Defaults to ``100``. + guild: :class:`.abc.Snowflake` | None + Limit the fetched entitlements to entitlements owned by this guild. + exclude_ended: :class:`bool` + Whether to limit the fetched entitlements to those that have not ended. + Defaults to ``False``. - Returns - ------- - List[:class:`.Entitlement`] - The bot's entitlements. + Yields + ------ + :class:`.Entitlement` + The application's entitlements. + + Raises + ------ + :exc:`HTTPException` + Retrieving the entitlements failed. + + Examples + -------- + + Usage :: + + async for entitlement in client.entitlements(): + print(entitlement.user_id) + + Flattening into a list :: + + entitlements = await user.entitlements().flatten() + + All parameters are optional. + """ + return EntitlementIterator( + self._connection, + user_id=user.id if user else None, + sku_ids=[sku.id for sku in skus] if skus else None, + before=before, + after=after, + limit=limit, + guild_id=guild.id if guild else None, + exclude_ended=exclude_ended, + ) + + @property + def store_url(self) -> str: + """:class:`str`: The URL that leads to the application's store page for monetization. + + .. versionadded:: 2.6 """ - data = await self._connection.http.list_entitlements(self.application_id) - return [Entitlement(data=e, state=self._connection) for e in data] + return f"https://discord.com/application-directory/{self.application_id}/store" diff --git a/discord/cog.py b/discord/cog.py index 4f064edb26..e23def38e2 100644 --- a/discord/cog.py +++ b/discord/cog.py @@ -346,7 +346,7 @@ def description(self) -> str: def description(self, description: str) -> None: self.__cog_description__ = description - def walk_commands(self) -> Generator[ApplicationCommand, None, None]: + def walk_commands(self) -> Generator[ApplicationCommand]: """An iterator that recursively walks through this cog's commands and subcommands. Yields diff --git a/discord/commands/core.py b/discord/commands/core.py index d89ea0a5b2..9212e76bed 100644 --- a/discord/commands/core.py +++ b/discord/commands/core.py @@ -519,7 +519,7 @@ def before_invoke(self, coro): called. This makes it a useful function to set up database connections or any type of set up required. - This pre-invoke hook takes a sole parameter, a :class:`.ApplicationContext`. + This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info. Parameters @@ -544,7 +544,7 @@ def after_invoke(self, coro): called. This makes it a useful function to clean-up database connections or any type of clean up required. - This post-invoke hook takes a sole parameter, a :class:`.ApplicationContext`. + This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info. Parameters @@ -1425,8 +1425,7 @@ def create_subgroup( """ if self.parent is not None: - # TODO: Improve this error message - raise Exception("a subgroup cannot have a subgroup") + raise Exception("A subcommand group cannot be added to a subcommand group") sub_command_group = SlashCommandGroup( name, description, guild_ids, parent=self, **kwargs @@ -1514,7 +1513,7 @@ async def call_after_hooks(self, ctx: ApplicationContext) -> None: else: await self._after_invoke(ctx) # type: ignore - def walk_commands(self) -> Generator[SlashCommand | SlashCommandGroup, None, None]: + def walk_commands(self) -> Generator[SlashCommand | SlashCommandGroup]: """An iterator that recursively walks through all slash commands and groups in this group. Yields @@ -1731,7 +1730,17 @@ class UserCommand(ContextMenuCommand): The coroutine that is executed when the command is called. guild_ids: Optional[List[:class:`int`]] The ids of the guilds where this command will be registered. - cog: Optional[:class:`.Cog`] + guild_only: :class:`bool` + Whether the command should only be usable inside a guild. + + .. deprecated:: 2.6 + Use the ``contexts`` parameter instead. + nsfw: :class:`bool` + Whether the command should be restricted to 18+ channels and users. + Apps intending to be listed in the App Directory cannot have NSFW commands. + default_member_permissions: :class:`~discord.Permissions` + The default permissions a member needs to be able to run the command. + cog: Optional[:class:`Cog`] The cog that this command belongs to. ``None`` if there isn't one. checks: List[Callable[[:class:`.ApplicationContext`], :class:`bool`]] A list of predicates that verifies if the command could be executed @@ -1740,6 +1749,16 @@ class UserCommand(ContextMenuCommand): :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event. + cooldown: Optional[:class:`~discord.ext.commands.Cooldown`] + The cooldown applied when the command is invoked. ``None`` if the command + doesn't have a cooldown. + name_localizations: Dict[:class:`str`, :class:`str`] + The name localizations for this command. The values of this should be ``"locale": "name"``. See + `here `_ for a list of valid locales. + integration_types: Set[:class:`IntegrationType`] + The installation contexts where this command is available. Unapplicable for guild commands. + contexts: Set[:class:`InteractionContextType`] + The interaction contexts where this command is available. Unapplicable for guild commands. """ type = 2 @@ -1830,7 +1849,17 @@ class MessageCommand(ContextMenuCommand): The coroutine that is executed when the command is called. guild_ids: Optional[List[:class:`int`]] The ids of the guilds where this command will be registered. - cog: Optional[:class:`.Cog`] + guild_only: :class:`bool` + Whether the command should only be usable inside a guild. + + .. deprecated:: 2.6 + Use the ``contexts`` parameter instead. + nsfw: :class:`bool` + Whether the command should be restricted to 18+ channels and users. + Apps intending to be listed in the App Directory cannot have NSFW commands. + default_member_permissions: :class:`~discord.Permissions` + The default permissions a member needs to be able to run the command. + cog: Optional[:class:`Cog`] The cog that this command belongs to. ``None`` if there isn't one. checks: List[Callable[[:class:`.ApplicationContext`], :class:`bool`]] A list of predicates that verifies if the command could be executed @@ -1839,6 +1868,16 @@ class MessageCommand(ContextMenuCommand): :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event. + cooldown: Optional[:class:`~discord.ext.commands.Cooldown`] + The cooldown applied when the command is invoked. ``None`` if the command + doesn't have a cooldown. + name_localizations: Dict[:class:`str`, :class:`str`] + The name localizations for this command. The values of this should be ``"locale": "name"``. See + `here `_ for a list of valid locales. + integration_types: Set[:class:`IntegrationType`] + The installation contexts where this command is available. Unapplicable for guild commands. + contexts: Set[:class:`InteractionContextType`] + The interaction contexts where this command is available. Unapplicable for guild commands. """ type = 3 diff --git a/discord/commands/options.py b/discord/commands/options.py index 2ca8c5a39a..721a03ffe3 100644 --- a/discord/commands/options.py +++ b/discord/commands/options.py @@ -25,6 +25,7 @@ from __future__ import annotations import inspect +import logging from enum import Enum from typing import TYPE_CHECKING, Literal, Optional, Type, Union @@ -41,7 +42,7 @@ from ..enums import ChannelType from ..enums import Enum as DiscordEnum from ..enums import SlashCommandOptionType -from ..utils import MISSING +from ..utils import MISSING, basic_autocomplete if TYPE_CHECKING: from ..ext.commands import Converter @@ -86,6 +87,8 @@ DMChannel: ChannelType.private, } +_log = logging.getLogger(__name__) + class ThreadOption: """Represents a class that can be passed as the ``input_type`` for an :class:`Option` class. @@ -115,12 +118,13 @@ class Option: input_type: Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]] The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. + If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead. name: :class:`str` The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter. description: Optional[:class:`str`] The description of this option. - Must be 100 characters or fewer. + Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used. choices: Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]] The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). @@ -195,7 +199,14 @@ def __init__( input_type_is_class = isinstance(input_type, type) if input_type_is_class and issubclass(input_type, (Enum, DiscordEnum)): if description is None: - description = inspect.getdoc(input_type) + description = inspect.cleandoc(input_type.__doc__) + if description and len(description) > 100: + description = description[:97] + "..." + _log.warning( + "Option %s's description was truncated due to Enum %s's docstring exceeding 100 characters.", + self.name, + input_type, + ) enum_choices = [OptionChoice(e.name, e.value) for e in input_type] value_class = enum_choices[0].value.__class__ if all(isinstance(elem.value, value_class) for elem in enum_choices): @@ -250,10 +261,19 @@ def __init__( kwargs.pop("required", True) if "default" not in kwargs else False ) self.default = kwargs.pop("default", None) - self.choices: list[OptionChoice] = enum_choices or [ - o if isinstance(o, OptionChoice) else OptionChoice(o) - for o in kwargs.pop("choices", []) - ] + + self.autocomplete = kwargs.pop("autocomplete", None) + if len(enum_choices) > 25: + self.choices: list[OptionChoice] = [] + for e in enum_choices: + e.value = str(e.value) + self.autocomplete = basic_autocomplete(enum_choices) + self.input_type = SlashCommandOptionType.string + else: + self.choices: list[OptionChoice] = enum_choices or [ + o if isinstance(o, OptionChoice) else OptionChoice(o) + for o in kwargs.pop("choices", []) + ] if self.input_type == SlashCommandOptionType.integer: minmax_types = (int, type(None)) @@ -323,8 +343,6 @@ def __init__( if self.max_length < 1 or self.max_length > 6000: raise AttributeError("max_length must between 1 and 6000 (inclusive)") - self.autocomplete = kwargs.pop("autocomplete", None) - self.name_localizations = kwargs.pop("name_localizations", MISSING) self.description_localizations = kwargs.pop( "description_localizations", MISSING @@ -406,7 +424,7 @@ def option(name, input_type=None, **kwargs): Attributes ---------- parameter_name: :class:`str` - The name of the target parameter this option is mapped to. + The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name. """ diff --git a/discord/components.py b/discord/components.py index eb360f7250..d85fc4b07c 100644 --- a/discord/components.py +++ b/discord/components.py @@ -234,6 +234,8 @@ class Button(Component): The label of the button, if any. emoji: Optional[:class:`PartialEmoji`] The emoji of the button, if available. + sku_id: Optional[:class:`int`] + The ID of the SKU this button refers to. """ __slots__: tuple[str, ...] = ( @@ -243,6 +245,7 @@ class Button(Component): "disabled", "label", "emoji", + "sku_id", ) __repr_info__: ClassVar[tuple[str, ...]] = __slots__ @@ -259,6 +262,7 @@ def __init__(self, data: ButtonComponentPayload): self.emoji = PartialEmoji.from_dict(data["emoji"]) except KeyError: self.emoji = None + self.sku_id: str | None = data.get("sku_id") def to_dict(self) -> ButtonComponentPayload: payload = { @@ -276,6 +280,9 @@ def to_dict(self) -> ButtonComponentPayload: if self.emoji: payload["emoji"] = self.emoji.to_dict() + if self.sku_id: + payload["sku_id"] = self.sku_id + return payload # type: ignore diff --git a/discord/enums.py b/discord/enums.py index 1446e1af7d..14aa54d460 100644 --- a/discord/enums.py +++ b/discord/enums.py @@ -724,6 +724,7 @@ class ButtonStyle(Enum): success = 3 danger = 4 link = 5 + premium = 6 # Aliases blurple = 1 @@ -1005,6 +1006,8 @@ class ReactionType(Enum): class SKUType(Enum): """The SKU type""" + durable = 2 + consumable = 3 subscription = 5 subscription_group = 6 @@ -1012,6 +1015,13 @@ class SKUType(Enum): class EntitlementType(Enum): """The entitlement type""" + purchase = 1 + premium_subscription = 2 + developer_gift = 3 + test_mode_purchase = 4 + free_purchase = 5 + user_gift = 6 + premium_purchase = 7 application_subscription = 8 diff --git a/discord/ext/bridge/core.py b/discord/ext/bridge/core.py index 384e9ab37a..103f345693 100644 --- a/discord/ext/bridge/core.py +++ b/discord/ext/bridge/core.py @@ -660,7 +660,7 @@ def bridge_option(name, input_type=None, **kwargs): Attributes ---------- parameter_name: :class:`str` - The name of the target parameter this option is mapped to. + The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name. """ diff --git a/discord/ext/commands/cog.py b/discord/ext/commands/cog.py index 570609d9a2..871d3e816e 100644 --- a/discord/ext/commands/cog.py +++ b/discord/ext/commands/cog.py @@ -50,7 +50,7 @@ def __new__(cls: type[CogT], *args: Any, **kwargs: Any) -> CogT: # To do this, we need to interfere with the Cog creation process. return super().__new__(cls) - def walk_commands(self) -> Generator[Command, None, None]: + def walk_commands(self) -> Generator[Command]: """An iterator that recursively walks through this cog's commands and subcommands. Yields diff --git a/discord/ext/commands/core.py b/discord/ext/commands/core.py index 1f876f175d..992ba05956 100644 --- a/discord/ext/commands/core.py +++ b/discord/ext/commands/core.py @@ -1326,7 +1326,7 @@ def remove_command(self, name: str) -> Command[CogT, Any, Any] | None: self.prefixed_commands[alias] = cmd return command - def walk_commands(self) -> Generator[Command[CogT, Any, Any], None, None]: + def walk_commands(self) -> Generator[Command[CogT, Any, Any]]: """An iterator that recursively walks through all commands and subcommands. .. versionchanged:: 1.4 diff --git a/discord/ext/commands/errors.py b/discord/ext/commands/errors.py index c9174054d8..c768fd7c00 100644 --- a/discord/ext/commands/errors.py +++ b/discord/ext/commands/errors.py @@ -212,10 +212,10 @@ class CheckAnyFailure(CheckFailure): """ def __init__( - self, checks: list[CheckFailure], errors: list[Callable[[Context], bool]] + self, checks: list[Callable[[Context], bool]], errors: list[CheckFailure] ) -> None: - self.checks: list[CheckFailure] = checks - self.errors: list[Callable[[Context], bool]] = errors + self.checks: list[Callable[[Context], bool]] = checks + self.errors: list[CheckFailure] = errors super().__init__("You do not have permission to run this command.") diff --git a/discord/flags.py b/discord/flags.py index 37fd8baa24..8a1ac8fd7e 100644 --- a/discord/flags.py +++ b/discord/flags.py @@ -39,6 +39,8 @@ "ApplicationFlags", "ChannelFlags", "SKUFlags", + "RoleFlags", + "MemberFlags", ) FV = TypeVar("FV", bound="flag_value") @@ -1684,3 +1686,130 @@ def guild_subscription(self): def user_subscription(self): """:class:`bool`: Returns ``True`` if the SKU is a user subscription.""" return 1 << 8 + + +@fill_with_flags() +class MemberFlags(BaseFlags): + r"""Wraps up the Discord Member flags. + + .. container:: operations + + .. describe:: x == y + + Checks if two MemberFlags are equal. + .. describe:: x != y + + Checks if two MemberFlags are not equal. + .. describe:: x + y + + Adds two flags together. Equivalent to ``x | y``. + .. describe:: x - y + + Subtracts two flags from each other. + .. describe:: x | y + + Returns the union of two flags. Equivalent to ``x + y``. + .. describe:: x & y + + Returns the intersection of two flags. + .. describe:: ~x + + Returns the inverse of a flag. + .. describe:: hash(x) + + Return the flag's hash. + .. describe:: iter(x) + + Returns an iterator of ``(name, value)`` pairs. This allows it + to be, for example, constructed as a dict or a list of pairs. + Note that aliases are not shown. + + .. versionadded:: 2.6 + + Attributes + ----------- + value: :class:`int` + The raw value. You should query flags via the properties + rather than using this raw value. + """ + + __slots__ = () + + @flag_value + def did_rejoin(self): + """:class:`bool`: Returns ``True`` if the member left and rejoined the guild.""" + return 1 << 0 + + @flag_value + def completed_onboarding(self): + """:class:`bool`: Returns ``True`` if the member has completed onboarding.""" + return 1 << 1 + + @flag_value + def bypasses_verification(self): + """:class:`bool`: Returns ``True`` if the member is exempt from verification requirements. + + .. note:: + + This can be edited through :func:`~discord.Member.edit`. + """ + return 1 << 2 + + @flag_value + def started_onboarding(self): + """:class:`bool`: Returns ``True`` if the member has started onboarding.""" + return 1 << 3 + + +@fill_with_flags() +class RoleFlags(BaseFlags): + r"""Wraps up the Discord Role flags. + + .. container:: operations + + .. describe:: x == y + + Checks if two RoleFlags are equal. + .. describe:: x != y + + Checks if two RoleFlags are not equal. + .. describe:: x + y + + Adds two flags together. Equivalent to ``x | y``. + .. describe:: x - y + + Subtracts two flags from each other. + .. describe:: x | y + + Returns the union of two flags. Equivalent to ``x + y``. + .. describe:: x & y + + Returns the intersection of two flags. + .. describe:: ~x + + Returns the inverse of a flag. + .. describe:: hash(x) + + Return the flag's hash. + .. describe:: iter(x) + + Returns an iterator of ``(name, value)`` pairs. This allows it + to be, for example, constructed as a dict or a list of pairs. + Note that aliases are not shown. + + .. versionadded:: 2.6 + + Attributes + ----------- + value: :class:`int` + The raw value. This value is a bit array field of a 53-bit integer + representing the currently available flags. You should query + flags via the properties rather than using this raw value. + """ + + __slots__ = () + + @flag_value + def in_prompt(self): + """:class:`bool`: Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`.""" + return 1 << 0 diff --git a/discord/guild.py b/discord/guild.py index 5c9892337b..c29ea19696 100644 --- a/discord/guild.py +++ b/discord/guild.py @@ -68,7 +68,12 @@ from .flags import SystemChannelFlags from .integrations import Integration, _integration_factory from .invite import Invite -from .iterators import AuditLogIterator, BanIterator, MemberIterator +from .iterators import ( + AuditLogIterator, + BanIterator, + EntitlementIterator, + MemberIterator, +) from .member import Member, VoiceState from .mixins import Hashable from .monetization import Entitlement @@ -205,7 +210,7 @@ class Guild(Hashable): features: List[:class:`str`] A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features - `here `_. + `here `_. premium_tier: :class:`int` The premium tier for this guild. Corresponds to "Nitro Server" in the official UI. The number goes from 0 to 3 inclusive. @@ -1649,7 +1654,6 @@ async def edit( default_notifications: NotificationLevel = MISSING, verification_level: VerificationLevel = MISSING, explicit_content_filter: ContentFilter = MISSING, - vanity_code: str = MISSING, system_channel: TextChannel | None = MISSING, system_channel_flags: SystemChannelFlags = MISSING, preferred_locale: str = MISSING, @@ -1715,8 +1719,6 @@ async def edit( The new default notification level for the guild. explicit_content_filter: :class:`ContentFilter` The new explicit content filter for the guild. - vanity_code: :class:`str` - The new vanity code for the guild. system_channel: Optional[:class:`TextChannel`] The new channel that is used for the system channel. Could be ``None`` for no system channel. system_channel_flags: :class:`SystemChannelFlags` @@ -1759,9 +1761,6 @@ async def edit( http = self._state.http - if vanity_code is not MISSING: - await http.change_vanity_code(self.id, vanity_code, reason=reason) - fields: dict[str, Any] = {} if name is not MISSING: fields["name"] = name @@ -2816,6 +2815,30 @@ async def fetch_roles(self) -> list[Role]: data = await self._state.http.get_roles(self.id) return [Role(guild=self, state=self._state, data=d) for d in data] + async def fetch_role(self, role_id: int) -> Role: + """|coro| + + Retrieves a :class:`Role` that the guild has. + + .. note:: + + This method is an API call. For general usage, consider using :attr:`get_role` instead. + + .. versionadded:: 2.7 + + Returns + ------- + :class:`Role` + The role in the guild with the specified ID. + + Raises + ------ + HTTPException + Retrieving the role failed. + """ + data = await self._state.http.get_role(self.id, role_id) + return Role(guild=self, state=self._state, data=data) + async def _fetch_role(self, role_id: int) -> Role: """|coro| @@ -3284,7 +3307,6 @@ def audit_logs( limit: int | None = 100, before: SnowflakeTime | None = None, after: SnowflakeTime | None = None, - oldest_first: bool | None = None, user: Snowflake = None, action: AuditLogAction = None, ) -> AuditLogIterator: @@ -3292,6 +3314,9 @@ def audit_logs( You must have the :attr:`~Permissions.view_audit_log` permission to use this. + See `API documentation `_ + for more information about the `before` and `after` parameters. + Parameters ---------- limit: Optional[:class:`int`] @@ -3304,9 +3329,6 @@ def audit_logs( Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. - oldest_first: :class:`bool` - If set to ``True``, return entries in oldest->newest order. Defaults to ``True`` if - ``after`` is specified, otherwise ``False``. user: :class:`abc.Snowflake` The moderator to filter entries from. action: :class:`AuditLogAction` @@ -3351,7 +3373,6 @@ def audit_logs( before=before, after=after, limit=limit, - oldest_first=oldest_first, user_id=user_id, action_type=action, ) @@ -4093,3 +4114,57 @@ async def create_test_entitlement(self, sku: Snowflake) -> Entitlement: } data = await self._state.http.create_test_entitlement(self.id, payload) return Entitlement(data=data, state=self._state) + + def entitlements( + self, + skus: list[Snowflake] | None = None, + before: SnowflakeTime | None = None, + after: SnowflakeTime | None = None, + limit: int | None = 100, + exclude_ended: bool = False, + ) -> EntitlementIterator: + """Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements. + + This is identical to :meth:`Client.entitlements` with the ``guild`` parameter. + + .. versionadded:: 2.6 + + Parameters + ---------- + skus: list[:class:`.abc.Snowflake`] | None + Limit the fetched entitlements to entitlements that are for these SKUs. + before: :class:`.abc.Snowflake` | :class:`datetime.datetime` | None + Retrieves guilds before this date or object. + If a datetime is provided, it is recommended to use a UTC-aware datetime. + If the datetime is naive, it is assumed to be local time. + after: :class:`.abc.Snowflake` | :class:`datetime.datetime` | None + Retrieve guilds after this date or object. + If a datetime is provided, it is recommended to use a UTC-aware datetime. + If the datetime is naive, it is assumed to be local time. + limit: Optional[:class:`int`] + The number of entitlements to retrieve. + If ``None``, retrieves every entitlement, which may be slow. + Defaults to ``100``. + exclude_ended: :class:`bool` + Whether to limit the fetched entitlements to those that have not ended. + Defaults to ``False``. + + Yields + ------ + :class:`.Entitlement` + The application's entitlements. + + Raises + ------ + :exc:`HTTPException` + Retrieving the entitlements failed. + """ + return EntitlementIterator( + self._state, + sku_ids=[sku.id for sku in skus] if skus else None, + before=before, + after=after, + limit=limit, + guild_id=self.id, + exclude_ended=exclude_ended, + ) diff --git a/discord/http.py b/discord/http.py index 85ea7c002c..f42bcdc233 100644 --- a/discord/http.py +++ b/discord/http.py @@ -1628,16 +1628,6 @@ def get_vanity_code(self, guild_id: Snowflake) -> Response[invite.VanityInvite]: Route("GET", "/guilds/{guild_id}/vanity-url", guild_id=guild_id) ) - def change_vanity_code( - self, guild_id: Snowflake, code: str, *, reason: str | None = None - ) -> Response[None]: - payload: dict[str, Any] = {"code": code} - return self.request( - Route("PATCH", "/guilds/{guild_id}/vanity-url", guild_id=guild_id), - json=payload, - reason=reason, - ) - def get_all_guild_channels( self, guild_id: Snowflake ) -> Response[list[guild.GuildChannel]]: @@ -1956,9 +1946,9 @@ def get_audit_logs( action_type: AuditLogAction | None = None, ) -> Response[audit_log.AuditLog]: params: dict[str, Any] = {"limit": limit} - if before: + if before is not None: params["before"] = before - if after: + if after is not None: params["after"] = after if user_id: params["user_id"] = user_id @@ -2058,6 +2048,16 @@ def delete_invite( def get_roles(self, guild_id: Snowflake) -> Response[list[role.Role]]: return self.request(Route("GET", "/guilds/{guild_id}/roles", guild_id=guild_id)) + def get_role(self, guild_id: Snowflake, role_id: Snowflake) -> Response[role.Role]: + return self.request( + Route( + "GET", + "/guilds/{guild_id}/roles/{role_id}", + guild_id=guild_id, + role_id=role_id, + ) + ) + def edit_role( self, guild_id: Snowflake, @@ -2592,35 +2592,6 @@ def bulk_upsert_guild_commands( ) return self.request(r, json=payload) - # Application commands (permissions) - - def get_command_permissions( - self, - application_id: Snowflake, - guild_id: Snowflake, - command_id: Snowflake, - ) -> Response[interactions.GuildApplicationCommandPermissions]: - r = Route( - "GET", - "/applications/{application_id}/guilds/{guild_id}/commands/{command_id}/permissions", - application_id=application_id, - guild_id=guild_id, - ) - return self.request(r) - - def get_guild_command_permissions( - self, - application_id: Snowflake, - guild_id: Snowflake, - ) -> Response[list[interactions.GuildApplicationCommandPermissions]]: - r = Route( - "GET", - "/applications/{application_id}/guilds/{guild_id}/commands/permissions", - application_id=application_id, - guild_id=guild_id, - ) - return self.request(r) - # Guild Automod Rules def get_auto_moderation_rules( @@ -2858,6 +2829,8 @@ def delete_followup_message( ) return self.request(r) + # Application commands (permissions) + def get_guild_application_command_permissions( self, application_id: Snowflake, @@ -2957,12 +2930,49 @@ def list_skus( def list_entitlements( self, application_id: Snowflake, + *, + user_id: Snowflake | None = None, + sku_ids: list[Snowflake] | None = None, + before: Snowflake | None = None, + after: Snowflake | None = None, + limit: int | None = None, + guild_id: Snowflake | None = None, + exclude_ended: bool | None = None, ) -> Response[list[monetization.Entitlement]]: + params: dict[str, Any] = {} + if user_id is not None: + params["user_id"] = user_id + if sku_ids is not None: + params["sku_ids"] = ",".join(sku_ids) + if before is not None: + params["before"] = before + if after is not None: + params["after"] = after + if limit is not None: + params["limit"] = limit + if guild_id is not None: + params["guild_id"] = guild_id + if exclude_ended is not None: + params["exclude_ended"] = int(exclude_ended) + r = Route( "GET", "/applications/{application_id}/entitlements", application_id=application_id, ) + return self.request(r, params=params) + + def consume_entitlement( + self, + application_id: Snowflake, + entitlement_id: Snowflake, + ) -> Response[None]: + r = Route( + "POST", + "/applications/{application_id}/entitlements/{entitlement_id}/consume", + application_id=application_id, + entitlement_id=entitlement_id, + ) return self.request(r) def create_test_entitlement( diff --git a/discord/interactions.py b/discord/interactions.py index 5725796d06..e7d7fade3e 100644 --- a/discord/interactions.py +++ b/discord/interactions.py @@ -140,6 +140,10 @@ class Interaction: The guilds preferred locale, if invoked in a guild. custom_id: Optional[:class:`str`] The custom ID for the interaction. + entitlements: list[:class:`Entitlement`] + Entitlements that apply to the invoking user, showing access to premium SKUs. + + .. versionadded:: 2.5 authorizing_integration_owners: :class:`AuthorizingIntegrationOwners` Contains the entities (users or guilds) that authorized this interaction. @@ -1229,10 +1233,16 @@ async def send_modal(self, modal: Modal) -> Interaction: self._parent._state.store_modal(modal, self._parent.user.id) return self._parent + @utils.deprecated("a button with type ButtonType.premium", "2.6") async def premium_required(self) -> Interaction: """|coro| + Responds to this interaction by sending a premium required message. + .. deprecated:: 2.6 + + A button with type :attr:`ButtonType.premium` should be used instead. + Raises ------ HTTPException diff --git a/discord/iterators.py b/discord/iterators.py index 438c41d2ef..13f67266ea 100644 --- a/discord/iterators.py +++ b/discord/iterators.py @@ -40,6 +40,7 @@ from .audit_logs import AuditLogEntry from .errors import NoMoreItems +from .monetization import Entitlement from .object import Object from .utils import maybe_coroutine, snowflake_time, time_snowflake @@ -50,6 +51,7 @@ "GuildIterator", "MemberIterator", "ScheduledEventSubscribersIterator", + "EntitlementIterator", ) if TYPE_CHECKING: @@ -62,6 +64,7 @@ from .types.audit_log import AuditLog as AuditLogPayload from .types.guild import Guild as GuildPayload from .types.message import Message as MessagePayload + from .types.monetization import Entitlement as EntitlementPayload from .types.threads import Thread as ThreadPayload from .types.user import PartialUser as PartialUserPayload from .user import User @@ -474,7 +477,6 @@ def __init__( limit=None, before=None, after=None, - oldest_first=None, user_id=None, action_type=None, ): @@ -483,7 +485,6 @@ def __init__( if isinstance(after, datetime.datetime): after = Object(id=time_snowflake(after, high=True)) - self.reverse = after is not None if oldest_first is None else oldest_first self.guild = guild self.loop = guild._state.loop self.request = guild._state.http.get_audit_logs @@ -491,54 +492,34 @@ def __init__( self.before = before self.user_id = user_id self.action_type = action_type - self.after = after or OLDEST_OBJECT + self.after = after self._users = {} self._state = guild._state - - self._filter = None # entry dict -> bool - self.entries = asyncio.Queue() - if self.reverse: - self._strategy = self._after_strategy - if self.before: - self._filter = lambda m: int(m["id"]) < self.before.id - else: - self._strategy = self._before_strategy - if self.after and self.after != OLDEST_OBJECT: - self._filter = lambda m: int(m["id"]) > self.after.id - - async def _before_strategy(self, retrieve): + async def _retrieve_entries(self, retrieve): + if not self._get_retrieve(): + return before = self.before.id if self.before else None - data: AuditLogPayload = await self.request( - self.guild.id, - limit=retrieve, - user_id=self.user_id, - action_type=self.action_type, - before=before, - ) - - entries = data.get("audit_log_entries", []) - if len(data) and entries: - if self.limit is not None: - self.limit -= retrieve - self.before = Object(id=int(entries[-1]["id"])) - return data.get("users", []), entries - - async def _after_strategy(self, retrieve): after = self.after.id if self.after else None data: AuditLogPayload = await self.request( self.guild.id, limit=retrieve, user_id=self.user_id, action_type=self.action_type, + before=before, after=after, ) + entries = data.get("audit_log_entries", []) + # if ONLY after is passed and NOT before, Discord reverses the sort to oldest first. if len(data) and entries: if self.limit is not None: self.limit -= retrieve - self.after = Object(id=int(entries[0]["id"])) + if self.before or not self.after: + self.before = Object(id=int(entries[-1]["id"])) + if self.after and not self.before: + self.after = Object(id=int(entries[-1]["id"])) return data.get("users", []), entries async def next(self) -> AuditLogEntry: @@ -563,24 +544,15 @@ async def _fill(self): from .user import User if self._get_retrieve(): - users, data = await self._strategy(self.retrieve) + users, data = await self._retrieve_entries(self.retrieve) if len(data) < 100: self.limit = 0 # terminate the infinite loop - if self.reverse: - data = reversed(data) - if self._filter: - data = filter(self._filter, data) - for user in users: u = User(data=user, state=self._state) self._users[u.id] = u for element in data: - # TODO: remove this if statement later - if element["action_type"] is None: - continue - await self.entries.put( AuditLogEntry(data=element, users=self._users, guild=self.guild) ) @@ -964,6 +936,7 @@ def user_from_payload(self, data): async def fill_subs(self): if not self._get_retrieve(): return + before = self.before.id if self.before else None after = self.after.id if self.after else None data = await self.get_subscribers( @@ -988,3 +961,121 @@ async def fill_subs(self): await self.subscribers.put(self.member_from_payload(element)) else: await self.subscribers.put(self.user_from_payload(element)) + + +class EntitlementIterator(_AsyncIterator["Entitlement"]): + def __init__( + self, + state, + user_id: int | None = None, + sku_ids: list[int] | None = None, + before: datetime.datetime | Object | None = None, + after: datetime.datetime | Object | None = None, + limit: int | None = None, + guild_id: int | None = None, + exclude_ended: bool | None = None, + ): + self.user_id = user_id + self.sku_ids = sku_ids + + if isinstance(before, datetime.datetime): + before = Object(id=time_snowflake(before, high=False)) + if isinstance(after, datetime.datetime): + after = Object(id=time_snowflake(after, high=True)) + + self.before = before + self.after = after + self.limit = limit + self.guild_id = guild_id + self.exclude_ended = exclude_ended + + self._filter = None + + if self.before and self.after: + self._retrieve_entitlements = self._retrieve_entitlements_before_strategy + self._filter = lambda e: int(e["id"]) > self.after.id + elif self.after: + self._retrieve_entitlements = self._retrieve_entitlements_after_strategy + else: + self._retrieve_entitlements = self._retrieve_entitlements_before_strategy + + self.state = state + self.get_entitlements = state.http.list_entitlements + self.entitlements = asyncio.Queue() + + async def next(self) -> Entitlement: + if self.entitlements.empty(): + await self.fill_entitlements() + + try: + return self.entitlements.get_nowait() + except asyncio.QueueEmpty: + raise NoMoreItems() + + def _get_retrieve(self): + l = self.limit + if l is None or l > 100: + r = 100 + else: + r = l + self.retrieve = r + return r > 0 + + async def fill_entitlements(self): + if not self._get_retrieve(): + return + + data = await self._retrieve_entitlements(self.retrieve) + + if self._filter: + data = list(filter(self._filter, data)) + + if len(data) < 100: + self.limit = 0 # terminate loop + + for element in data: + await self.entitlements.put(Entitlement(data=element, state=self.state)) + + async def _retrieve_entitlements(self, retrieve) -> list[Entitlement]: + """Retrieve entitlements and update next parameters.""" + raise NotImplementedError + + async def _retrieve_entitlements_before_strategy( + self, retrieve: int + ) -> list[EntitlementPayload]: + """Retrieve entitlements using before parameter.""" + before = self.before.id if self.before else None + data = await self.get_entitlements( + self.state.application_id, + before=before, + limit=retrieve, + user_id=self.user_id, + guild_id=self.guild_id, + sku_ids=self.sku_ids, + exclude_ended=self.exclude_ended, + ) + if data: + if self.limit is not None: + self.limit -= retrieve + self.before = Object(id=int(data[-1]["id"])) + return data + + async def _retrieve_entitlements_after_strategy( + self, retrieve: int + ) -> list[EntitlementPayload]: + """Retrieve entitlements using after parameter.""" + after = self.after.id if self.after else None + data = await self.get_entitlements( + self.state.application_id, + after=after, + limit=retrieve, + user_id=self.user_id, + guild_id=self.guild_id, + sku_ids=self.sku_ids, + exclude_ended=self.exclude_ended, + ) + if data: + if self.limit is not None: + self.limit -= retrieve + self.after = Object(id=int(data[-1]["id"])) + return data diff --git a/discord/member.py b/discord/member.py index 57c04b2936..f1a546c918 100644 --- a/discord/member.py +++ b/discord/member.py @@ -39,6 +39,7 @@ from .asset import Asset from .colour import Colour from .enums import Status, try_enum +from .flags import MemberFlags from .object import Object from .permissions import Permissions from .user import BaseUser, User, _UserTag @@ -269,6 +270,10 @@ class Member(discord.abc.Messageable, _UserTag): An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout. .. versionadded:: 2.0 + flags: :class:`MemberFlags` + Extra attributes of the member. + + .. versionadded:: 2.6 """ __slots__ = ( @@ -283,7 +288,9 @@ class Member(discord.abc.Messageable, _UserTag): "_user", "_state", "_avatar", + "_banner", "communication_disabled_until", + "flags", ) if TYPE_CHECKING: @@ -322,9 +329,11 @@ def __init__( self.nick: str | None = data.get("nick", None) self.pending: bool = data.get("pending", False) self._avatar: str | None = data.get("avatar") + self._banner: str | None = data.get("banner") self.communication_disabled_until: datetime.datetime | None = utils.parse_time( data.get("communication_disabled_until") ) + self.flags: MemberFlags = MemberFlags._from_value(data.get("flags", 0)) def __str__(self) -> str: return str(self._user) @@ -399,7 +408,9 @@ def _copy(cls: type[M], member: M) -> M: self.activities = member.activities self._state = member._state self._avatar = member._avatar + self._banner = member._banner self.communication_disabled_until = member.communication_disabled_until + self.flags = member.flags # Reference will not be copied unless necessary by PRESENCE_UPDATE # See below @@ -426,9 +437,11 @@ def _update(self, data: MemberPayload) -> None: self.premium_since = utils.parse_time(data.get("premium_since")) self._roles = utils.SnowflakeList(map(int, data["roles"])) self._avatar = data.get("avatar") + self._banner = data.get("banner") self.communication_disabled_until = utils.parse_time( data.get("communication_disabled_until") ) + self.flags = MemberFlags._from_value(data.get("flags", 0)) def _presence_update( self, data: PartialPresenceUpdate, user: UserPayload @@ -594,6 +607,31 @@ def guild_avatar(self) -> Asset | None: self._state, self.guild.id, self.id, self._avatar ) + @property + def display_banner(self) -> Asset | None: + """Returns the member's display banner. + + For regular members this is just their banner, but + if they have a guild specific banner then that + is returned instead. + + .. versionadded:: 2.7 + """ + return self.guild_banner or self._user.banner + + @property + def guild_banner(self) -> Asset | None: + """Returns an :class:`Asset` for the guild banner + the member has. If unavailable, ``None`` is returned. + + .. versionadded:: 2.7 + """ + if self._banner is None: + return None + return Asset._from_guild_banner( + self._state, self.guild.id, self.id, self._banner + ) + @property def activity(self) -> ActivityTypes | None: """Returns the primary @@ -729,6 +767,7 @@ async def edit( voice_channel: VocalGuildChannel | None = MISSING, reason: str | None = None, communication_disabled_until: datetime.datetime | None = MISSING, + bypass_verification: bool | None = MISSING, ) -> Member | None: """|coro| @@ -751,6 +790,18 @@ async def edit( +------------------------------+--------------------------------------+ | communication_disabled_until | :attr:`Permissions.moderate_members` | +------------------------------+--------------------------------------+ + | bypass_verification | See note below | + +------------------------------+--------------------------------------+ + + .. note:: + + `bypass_verification` may be edited under three scenarios: + + - Client has :attr:`Permissions.manage_guild` + + - Client has :attr:`Permissions.manage_roles` + + - Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members` All parameters are optional. @@ -785,6 +836,10 @@ async def edit( from timeout. .. versionadded:: 2.0 + bypass_verification: Optional[:class:`bool`] + Indicates if the member should bypass the guild's verification requirements. + + .. versionadded:: 2.6 Returns ------- @@ -849,6 +904,11 @@ async def edit( else: payload["communication_disabled_until"] = communication_disabled_until + if bypass_verification is not MISSING: + flags = MemberFlags._from_value(self.flags.value) + flags.bypasses_verification = bypass_verification + payload["flags"] = flags.value + if payload: data = await http.edit_member(guild_id, self.id, reason=reason, **payload) return Member(data=data, guild=self.guild, state=self._state) diff --git a/discord/message.py b/discord/message.py index 109bef02c8..56d1cec968 100644 --- a/discord/message.py +++ b/discord/message.py @@ -42,6 +42,7 @@ from urllib.parse import parse_qs, urlparse from . import utils +from .channel import PartialMessageable from .components import _component_factory from .embeds import Embed from .emoji import Emoji @@ -52,6 +53,7 @@ from .guild import Guild from .member import Member from .mixins import Hashable +from .object import Object from .partial_emoji import PartialEmoji from .poll import Poll from .reaction import Reaction @@ -80,9 +82,11 @@ from .types.message import Message as MessagePayload from .types.message import MessageActivity as MessageActivityPayload from .types.message import MessageApplication as MessageApplicationPayload + from .types.message import MessageCall as MessageCallPayload from .types.message import MessageReference as MessageReferencePayload from .types.message import Reaction as ReactionPayload from .types.poll import Poll as PollPayload + from .types.snowflake import SnowflakeList from .types.threads import ThreadArchiveDuration from .types.user import User as UserPayload from .ui.view import View @@ -96,6 +100,7 @@ "Message", "PartialMessage", "MessageReference", + "MessageCall", "DeletedReferencedMessage", ) @@ -155,6 +160,11 @@ class Attachment(Hashable): The attachment's width, in pixels. Only applicable to images and videos. filename: :class:`str` The attachment's filename. + title: Optional[:class:`str`] + The attachment's title. This is equal to the original :attr:`filename` (without an extension) + if special characters were filtered from it. + + .. versionadded:: 2.6 url: :class:`str` The attachment URL. If the message this attachment was attached to is deleted, then this will 404. @@ -213,6 +223,7 @@ class Attachment(Hashable): "_ex", "_is", "hm", + "title", ) def __init__(self, *, data: AttachmentPayload, state: ConnectionState): @@ -221,6 +232,7 @@ def __init__(self, *, data: AttachmentPayload, state: ConnectionState): self.height: int | None = data.get("height") self.width: int | None = data.get("width") self.filename: str = data["filename"] + self.title: str | None = data.get("title") self.url: str = data.get("url") self.proxy_url: str = data.get("proxy_url") self._http = state.http @@ -593,6 +605,34 @@ def to_dict(self) -> MessageReferencePayload: to_message_reference_dict = to_dict +class MessageCall: + """Represents information about a call in a private channel. + + .. versionadded:: 2.6 + """ + + def __init__(self, state: ConnectionState, data: MessageCallPayload): + self._state: ConnectionState = state + self._participants: SnowflakeList = data.get("participants", []) + self._ended_timestamp: datetime.datetime | None = utils.parse_time( + data["ended_timestamp"] + ) + + @property + def participants(self) -> list[User | Object]: + """A list of :class:`User` that participated in this call. + + If a user is not found in the client's cache, + then it will be returned as an :class:`Object`. + """ + return [self._state.get_user(int(i)) or Object(i) for i in self._participants] + + @property + def ended_at(self) -> datetime.datetime | None: + """An aware timestamp of when the call ended.""" + return self._ended_timestamp + + def flatten_handlers(cls): prefix = len("_handle_") handlers = [ @@ -740,6 +780,10 @@ class Message(Hashable): poll: Optional[:class:`Poll`] The poll associated with this message, if applicable. + .. versionadded:: 2.6 + call: Optional[:class:`MessageCall`] + The call information associated with this message, if applicable. + .. versionadded:: 2.6 """ @@ -778,6 +822,7 @@ class Message(Hashable): "interaction_metadata", "thread", "_poll", + "call", ) if TYPE_CHECKING: @@ -888,6 +933,12 @@ def __init__( except KeyError: self.thread = None + self.call: MessageCall | None + try: + self.call = MessageCall(state=self._state, data=data["call"]) + except KeyError: + self.call = None + for handler in ("author", "member", "mentions", "mention_roles"): try: getattr(self, f"_handle_{handler}")(data[handler]) @@ -1951,6 +2002,7 @@ class PartialMessage(Hashable): - :meth:`DMChannel.get_partial_message` - :meth:`VoiceChannel.get_partial_message` - :meth:`StageChannel.get_partial_message` + - :meth:`PartialMessageable.get_partial_message` Note that this class is trimmed down and has no rich attributes. @@ -1972,7 +2024,7 @@ class PartialMessage(Hashable): Attributes ---------- - channel: Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`] + channel: Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`, :class:`PartialMessageable`] The channel associated with this partial message. id: :class:`int` The message ID. @@ -2003,9 +2055,9 @@ def __init__(self, *, channel: PartialMessageableChannel, id: int): ChannelType.news_thread, ChannelType.public_thread, ChannelType.private_thread, - ): + ) and not isinstance(channel, PartialMessageable): raise TypeError( - "Expected TextChannel, VoiceChannel, StageChannel, DMChannel or Thread not" + "Expected TextChannel, VoiceChannel, StageChannel, DMChannel, Thread or PartialMessageable not" f" {type(channel)!r}" ) diff --git a/discord/monetization.py b/discord/monetization.py index 487c6659e1..f18ce0593b 100644 --- a/discord/monetization.py +++ b/discord/monetization.py @@ -96,6 +96,11 @@ def __str__(self) -> str: def __eq__(self, other: object) -> bool: return isinstance(other, self.__class__) and other.id == self.id + @property + def url(self) -> str: + """:class:`str`: Returns the URL for the SKU.""" + return f"https://discord.com/application-directory/{self.application_id}/store/{self.id}" + class Entitlement(Hashable): """Represents a Discord entitlement. @@ -122,6 +127,10 @@ class Entitlement(Hashable): When the entitlement expires. guild_id: Union[:class:`int`, :class:`MISSING`] The ID of the guild that owns this entitlement. + consumed: :class:`bool` + Whether or not this entitlement has been consumed. + This will always be ``False`` for entitlements that are not + of type :attr:`EntitlementType.consumable`. """ __slots__ = ( @@ -135,6 +144,7 @@ class Entitlement(Hashable): "starts_at", "ends_at", "guild_id", + "consumed", ) def __init__(self, *, data: EntitlementPayload, state: ConnectionState) -> None: @@ -150,17 +160,38 @@ def __init__(self, *, data: EntitlementPayload, state: ConnectionState) -> None: ) self.ends_at: datetime | MISSING = parse_time(data.get("ends_at")) or MISSING self.guild_id: int | MISSING = _get_as_snowflake(data, "guild_id") or MISSING + self.consumed: bool = data.get("consumed", False) def __repr__(self) -> str: return ( f"" + f"starts_at={self.starts_at} ends_at={self.ends_at} guild_id={self.guild_id} consumed={self.consumed}>" ) def __eq__(self, other: object) -> bool: return isinstance(other, self.__class__) and other.id == self.id + async def consume(self) -> None: + """|coro| + + Consumes this entitlement. + + This can only be done on entitlements of type :attr:`EntitlementType.consumable`. + + Raises + ------ + TypeError + The entitlement is not consumable. + HTTPException + Consuming the entitlement failed. + """ + if self.type is not EntitlementType.consumable: + raise TypeError("Cannot consume non-consumable entitlement") + + await self._state.http.consume_entitlement(self._state.application_id, self.id) + self.consumed = True + async def delete(self) -> None: """|coro| diff --git a/discord/oggparse.py b/discord/oggparse.py index 9cc0025bf1..4901c38b77 100644 --- a/discord/oggparse.py +++ b/discord/oggparse.py @@ -74,7 +74,7 @@ def __init__(self, stream: IO[bytes]) -> None: except Exception: raise OggError("bad data stream") from None - def iter_packets(self) -> Generator[tuple[bytes, bool], None, None]: + def iter_packets(self) -> Generator[tuple[bytes, bool]]: packetlen = offset = 0 partial = True @@ -106,13 +106,13 @@ def _next_page(self) -> OggPage | None: else: raise OggError("invalid header magic") - def _iter_pages(self) -> Generator[OggPage, None, None]: + def _iter_pages(self) -> Generator[OggPage]: page = self._next_page() while page: yield page page = self._next_page() - def iter_packets(self) -> Generator[bytes, None, None]: + def iter_packets(self) -> Generator[bytes]: partial = b"" for page in self._iter_pages(): for data, complete in page.iter_packets(): diff --git a/discord/raw_models.py b/discord/raw_models.py index e59507dd48..a2881839a6 100644 --- a/discord/raw_models.py +++ b/discord/raw_models.py @@ -327,7 +327,17 @@ class RawReactionClearEmojiEvent(_RawReprMixin): .. versionadded:: 2.5 """ - __slots__ = ("message_id", "channel_id", "guild_id", "emoji", "burst", "data") + __slots__ = ( + "message_id", + "channel_id", + "guild_id", + "emoji", + "burst", + "data", + "burst_colours", + "burst_colors", + "type", + ) def __init__(self, data: ReactionClearEmojiEvent, emoji: PartialEmoji) -> None: self.emoji: PartialEmoji = emoji @@ -807,7 +817,15 @@ class RawMessagePollVoteEvent(_RawReprMixin): The raw data sent by the `gateway ` """ - __slots__ = ("user_id", "message_id", "channel_id", "guild_id", "data", "added") + __slots__ = ( + "user_id", + "message_id", + "answer_id", + "channel_id", + "guild_id", + "data", + "added", + ) def __init__(self, data: MessagePollVoteEvent, added: bool) -> None: self.user_id: int = int(data["user_id"]) diff --git a/discord/role.py b/discord/role.py index 4012d29cb5..1907606e9d 100644 --- a/discord/role.py +++ b/discord/role.py @@ -30,6 +30,7 @@ from .asset import Asset from .colour import Colour from .errors import InvalidArgument +from .flags import RoleFlags from .mixins import Hashable from .permissions import Permissions from .utils import MISSING, _bytes_to_base64_data, _get_as_snowflake, snowflake_time @@ -177,6 +178,11 @@ class Role(Hashable): Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. .. versionadded:: 2.0 + + flags: :class:`RoleFlags` + Extra attributes of the role. + + .. versionadded:: 2.6 """ __slots__ = ( @@ -193,6 +199,7 @@ class Role(Hashable): "unicode_emoji", "_icon", "_state", + "flags", ) def __init__(self, *, guild: Guild, state: ConnectionState, data: RolePayload): @@ -253,6 +260,7 @@ def _update(self, data: RolePayload): self.mentionable: bool = data.get("mentionable", False) self._icon: str | None = data.get("icon") self.unicode_emoji: str | None = data.get("unicode_emoji") + self.flags: RoleFlags = RoleFlags._from_value(data.get("flags", 0)) self.tags: RoleTags | None try: diff --git a/discord/scheduled_events.py b/discord/scheduled_events.py index 4ba16bcdec..7e339dcee7 100644 --- a/discord/scheduled_events.py +++ b/discord/scheduled_events.py @@ -35,10 +35,11 @@ ScheduledEventStatus, try_enum, ) -from .errors import ValidationError +from .errors import InvalidArgument, ValidationError from .iterators import ScheduledEventSubscribersIterator from .mixins import Hashable from .object import Object +from .utils import warn_deprecated __all__ = ( "ScheduledEvent", @@ -180,7 +181,7 @@ class ScheduledEvent(Hashable): "location", "guild", "_state", - "_cover", + "_image", "subscriber_count", ) @@ -198,7 +199,7 @@ def __init__( self.guild: Guild = guild self.name: str = data.get("name") self.description: str | None = data.get("description", None) - self._cover: str | None = data.get("image", None) + self._image: str | None = data.get("image", None) self.start_time: datetime.datetime = datetime.datetime.fromisoformat( data.get("scheduled_start_time") ) @@ -254,13 +255,24 @@ def url(self) -> str: @property def cover(self) -> Asset | None: + """ + Returns the scheduled event cover image asset, if available. + + .. deprecated:: 2.7 + Use the :attr:`image` property instead. + """ + warn_deprecated("cover", "image", "2.7") + return self.image + + @property + def image(self) -> Asset | None: """Returns the scheduled event cover image asset, if available.""" - if self._cover is None: + if self._image is None: return None - return Asset._from_scheduled_event_cover( + return Asset._from_scheduled_event_image( self._state, self.id, - self._cover, + self._image, ) async def edit( @@ -276,6 +288,7 @@ async def edit( start_time: datetime.datetime = MISSING, end_time: datetime.datetime = MISSING, cover: bytes | None = MISSING, + image: bytes | None = MISSING, privacy_level: ScheduledEventPrivacyLevel = ScheduledEventPrivacyLevel.guild_only, ) -> ScheduledEvent | None: """|coro| @@ -310,9 +323,14 @@ async def edit( so there is no need to change this parameter. reason: Optional[:class:`str`] The reason to show in the audit log. + image: Optional[:class:`bytes`] + The cover image of the scheduled event. cover: Optional[:class:`bytes`] The cover image of the scheduled event. + .. deprecated:: 2.7 + Use the `image` argument instead. + Returns ------- Optional[:class:`.ScheduledEvent`] @@ -341,8 +359,19 @@ async def edit( payload["privacy_level"] = int(privacy_level) if cover is not MISSING: - if cover is not None: - payload["image"] = utils._bytes_to_base64_data(cover) + warn_deprecated("cover", "image", "2.7") + if image is not MISSING: + raise InvalidArgument( + "cannot pass both `image` and `cover` to `ScheduledEvent.edit`" + ) + else: + image = cover + + if image is not MISSING: + if image is None: + payload["image"] = None + else: + payload["image"] = utils._bytes_to_base64_data(image) if location is not MISSING: if not isinstance( diff --git a/discord/state.py b/discord/state.py index c8d8d4dced..4170d33fef 100644 --- a/discord/state.py +++ b/discord/state.py @@ -276,7 +276,7 @@ def clear(self, *, views: bool = True) -> None: self._emojis: dict[int, Emoji] = {} self._stickers: dict[int, GuildSticker] = {} self._guilds: dict[int, Guild] = {} - self._polls: dict[int, Guild] = {} + self._polls: dict[int, Poll] = {} if views: self._view_store: ViewStore = ViewStore(self) self._modal_store: ModalStore = ModalStore(self) diff --git a/discord/types/appinfo.py b/discord/types/appinfo.py index 989d3f7a58..8d891acbed 100644 --- a/discord/types/appinfo.py +++ b/discord/types/appinfo.py @@ -59,3 +59,8 @@ class PartialAppInfo(BaseAppInfo): rpc_origins: NotRequired[list[str]] cover_image: NotRequired[str] flags: NotRequired[int] + + +class AppInstallParams(TypedDict): + scopes: list[str] + permissions: str diff --git a/discord/types/components.py b/discord/types/components.py index fa82d47b6f..4c0ce30ad4 100644 --- a/discord/types/components.py +++ b/discord/types/components.py @@ -30,9 +30,10 @@ from .._typed_dict import NotRequired, TypedDict from .channel import ChannelType from .emoji import PartialEmoji +from .snowflake import Snowflake ComponentType = Literal[1, 2, 3, 4] -ButtonStyle = Literal[1, 2, 3, 4, 5] +ButtonStyle = Literal[1, 2, 3, 4, 5, 6] InputTextStyle = Literal[1, 2] @@ -49,6 +50,7 @@ class ButtonComponent(TypedDict): label: NotRequired[str] type: Literal[2] style: ButtonStyle + sku_id: Snowflake class InputText(TypedDict): diff --git a/discord/types/member.py b/discord/types/member.py index c6fdf6183a..618bb13efe 100644 --- a/discord/types/member.py +++ b/discord/types/member.py @@ -42,12 +42,14 @@ class PartialMember(TypedDict): class Member(PartialMember, total=False): avatar: str + banner: str user: User nick: str premium_since: str pending: bool permissions: str communication_disabled_until: str + flags: int class _OptionalMemberWithUser(PartialMember, total=False): diff --git a/discord/types/message.py b/discord/types/message.py index 8988891efa..f138609d1b 100644 --- a/discord/types/message.py +++ b/discord/types/message.py @@ -80,6 +80,7 @@ class Attachment(TypedDict): duration_secs: NotRequired[float] waveform: NotRequired[str] flags: NotRequired[int] + title: NotRequired[str] MessageActivityType = Literal[1, 2, 3, 5] @@ -153,3 +154,8 @@ class AllowedMentions(TypedDict): roles: SnowflakeList users: SnowflakeList replied_user: bool + + +class MessageCall(TypedDict): + participants: SnowflakeList + ended_timestamp: NotRequired[str] diff --git a/discord/types/role.py b/discord/types/role.py index 8996e7e21d..d387d38b77 100644 --- a/discord/types/role.py +++ b/discord/types/role.py @@ -39,6 +39,7 @@ class Role(TypedDict): permissions: str managed: bool mentionable: bool + flags: int class RoleTags(TypedDict, total=False): diff --git a/discord/ui/button.py b/discord/ui/button.py index c607de459c..5487fd6b73 100644 --- a/discord/ui/button.py +++ b/discord/ui/button.py @@ -67,6 +67,8 @@ class Button(Item[V]): The label of the button, if any. Maximum of 80 chars. emoji: Optional[Union[:class:`.PartialEmoji`, :class:`.Emoji`, :class:`str`]] The emoji of the button, if available. + sku_id: Optional[Union[:class:`int`]] + The ID of the SKU this button refers to. row: Optional[:class:`int`] The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd @@ -81,6 +83,7 @@ class Button(Item[V]): "disabled", "label", "emoji", + "sku_id", "row", ) @@ -93,6 +96,7 @@ def __init__( custom_id: str | None = None, url: str | None = None, emoji: str | Emoji | PartialEmoji | None = None, + sku_id: int | None = None, row: int | None = None, ): super().__init__() @@ -102,6 +106,10 @@ def __init__( raise ValueError("custom_id must be 100 characters or fewer") if custom_id is not None and url is not None: raise TypeError("cannot mix both url and custom_id with Button") + if sku_id is not None and url is not None: + raise TypeError("cannot mix both url and sku_id with Button") + if custom_id is not None and sku_id is not None: + raise TypeError("cannot mix both sku_id and custom_id with Button") if not isinstance(custom_id, str) and custom_id is not None: raise TypeError( @@ -109,11 +117,13 @@ def __init__( ) self._provided_custom_id = custom_id is not None - if url is None and custom_id is None: + if url is None and custom_id is None and sku_id is None: custom_id = os.urandom(16).hex() if url is not None: style = ButtonStyle.link + if sku_id is not None: + style = ButtonStyle.premium if emoji is not None: if isinstance(emoji, str): @@ -134,6 +144,7 @@ def __init__( label=label, style=style, emoji=emoji, + sku_id=sku_id, ) self.row = row @@ -212,6 +223,20 @@ def emoji(self, value: str | Emoji | PartialEmoji | None): # type: ignore f" {value.__class__} instead" ) + @property + def sku_id(self) -> int | None: + """The ID of the SKU this button refers to.""" + return self._underlying.sku_id + + @sku_id.setter + def sku_id(self, value: int | None): # type: ignore + if value is None: + self._underlying.sku_id = None + elif isinstance(value, int): + self._underlying.sku_id = value + else: + raise TypeError(f"expected int or None, received {value.__class__} instead") + @classmethod def from_component(cls: type[B], button: ButtonComponent) -> B: return cls( @@ -221,6 +246,7 @@ def from_component(cls: type[B], button: ButtonComponent) -> B: custom_id=button.custom_id, url=button.url, emoji=button.emoji, + sku_id=button.sku_id, row=None, ) @@ -260,11 +286,10 @@ def button( .. note:: - Buttons with a URL cannot be created with this function. - Consider creating a :class:`Button` manually instead. - This is because buttons with a URL do not have a callback - associated with them since Discord does not do any processing - with it. + Premium and link buttons cannot be created with this decorator. Consider + creating a :class:`Button` object manually instead. These types of + buttons do not have a callback associated since Discord doesn't handle + them when clicked. Parameters ---------- diff --git a/discord/ui/input_text.py b/discord/ui/input_text.py index 115f9708af..dd7438be21 100644 --- a/discord/ui/input_text.py +++ b/discord/ui/input_text.py @@ -36,7 +36,7 @@ class InputText: The maximum number of characters that can be entered. Must be between 1 and 4000. required: Optional[:class:`bool`] - Whether the input text field is required or not. Defaults to `True`. + Whether the input text field is required or not. Defaults to ``True``. value: Optional[:class:`str`] Pre-fills the input text field with this value. Must be 4000 characters or fewer. @@ -151,7 +151,7 @@ def placeholder(self, value: str | None): @property def min_length(self) -> int | None: - """The minimum number of characters that must be entered. Defaults to `0`.""" + """The minimum number of characters that must be entered. Defaults to 0.""" return self._underlying.min_length @min_length.setter @@ -177,7 +177,7 @@ def max_length(self, value: int | None): @property def required(self) -> bool | None: - """Whether the input text field is required or not. Defaults to `True`.""" + """Whether the input text field is required or not. Defaults to ``True``.""" return self._underlying.required @required.setter diff --git a/discord/user.py b/discord/user.py index 57580575a0..d986a018f5 100644 --- a/discord/user.py +++ b/discord/user.py @@ -32,12 +32,14 @@ from .asset import Asset from .colour import Colour from .flags import PublicUserFlags +from .iterators import EntitlementIterator from .monetization import Entitlement from .utils import MISSING, _bytes_to_base64_data, snowflake_time if TYPE_CHECKING: from datetime import datetime + from .abc import Snowflake, SnowflakeTime from .channel import DMChannel from .guild import Guild from .message import Message @@ -636,3 +638,57 @@ async def create_test_entitlement(self, sku: discord.abc.Snowflake) -> Entitleme } data = await self._state.http.create_test_entitlement(self.id, payload) return Entitlement(data=data, state=self._state) + + def entitlements( + self, + skus: list[Snowflake] | None = None, + before: SnowflakeTime | None = None, + after: SnowflakeTime | None = None, + limit: int | None = 100, + exclude_ended: bool = False, + ) -> EntitlementIterator: + """Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements. + + This is identical to :meth:`Client.entitlements` with the ``user`` parameter. + + .. versionadded:: 2.6 + + Parameters + ---------- + skus: list[:class:`.abc.Snowflake`] | None + Limit the fetched entitlements to entitlements that are for these SKUs. + before: :class:`.abc.Snowflake` | :class:`datetime.datetime` | None + Retrieves guilds before this date or object. + If a datetime is provided, it is recommended to use a UTC-aware datetime. + If the datetime is naive, it is assumed to be local time. + after: :class:`.abc.Snowflake` | :class:`datetime.datetime` | None + Retrieve guilds after this date or object. + If a datetime is provided, it is recommended to use a UTC-aware datetime. + If the datetime is naive, it is assumed to be local time. + limit: Optional[:class:`int`] + The number of entitlements to retrieve. + If ``None``, retrieves every entitlement, which may be slow. + Defaults to ``100``. + exclude_ended: :class:`bool` + Whether to limit the fetched entitlements to those that have not ended. + Defaults to ``False``. + + Yields + ------ + :class:`.Entitlement` + The application's entitlements. + + Raises + ------ + :exc:`HTTPException` + Retrieving the entitlements failed. + """ + return EntitlementIterator( + self._state, + sku_ids=[sku.id for sku in skus] if skus else None, + before=before, + after=after, + limit=limit, + user_id=self.id, + exclude_ended=exclude_ended, + ) diff --git a/discord/utils.py b/discord/utils.py index b95678a1c4..9f01f53e71 100644 --- a/discord/utils.py +++ b/discord/utils.py @@ -377,6 +377,7 @@ def decorated(*args: P.args, **kwargs: P.kwargs) -> T: since=since, removed=removed, reference=reference, + stacklevel=stacklevel, ) return func(*args, **kwargs) diff --git a/docs/Makefile b/docs/Makefile index b46de8d972..3c42e15882 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -5,7 +5,7 @@ SPHINXOPTS = SPHINXBUILD = sphinx-build PAPER = -BUILDDIR = _build +BUILDDIR = build # User-friendly check for sphinx-build ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) diff --git a/docs/_static/js/scorer.js b/docs/_static/js/scorer.js deleted file mode 100644 index a0f50cb083..0000000000 --- a/docs/_static/js/scorer.js +++ /dev/null @@ -1,82 +0,0 @@ -"use-strict"; - -let queryBeingDone = null; -let pattern = null; - -const escapedRegex = /[-\/\\^$*+?.()|[\]{}]/g; -function escapeRegex(e) { - return e.replace(escapedRegex, "\\$&"); -} - -// for some reason Sphinx shows some entries twice -// if something has been scored already I'd rather sort it to the bottom -const beenScored = new Set(); - -function __score(haystack, regex) { - let match = regex.exec(haystack); - if (match == null) { - return Number.MAX_VALUE; - } - let subLength = match[0].length; - let start = match.index; - return (subLength * 1000 + start) / 1000.0; -} - -// unused for now -function __cleanNamespaces(query) { - return query.replace(/(discord\.(ext\.)?)?(.+)/, "$3"); -} - -Scorer = { - // Implement the following function to further tweak the score for each result - // The function takes a result array [filename, title, anchor, descr, score] - // and returns the new score. - score: (result) => { - // only inflate the score of things that are actual API reference things - const [, title, , , score] = result; - - if (pattern !== null && title.startsWith("discord.")) { - let _score = __score(title, pattern); - if (_score === Number.MAX_VALUE) { - return score; - } - if (beenScored.has(title)) { - return 0; - } - beenScored.add(title); - let newScore = 100 + queryBeingDone.length - _score; - // console.log(`${title}: ${score} -> ${newScore} (${_score})`); - return newScore; - } - return score; - }, - - // query matches the full name of an object - objNameMatch: 15, - // or matches in the last dotted part of the object name - objPartialMatch: 11, - // Additive scores depending on the priority of the object - objPrio: { - 0: 15, // used to be importantResults - 1: 7, // used to be objectResults - 2: -5, // used to be unimportantResults - }, - // Used when the priority is not in the mapping. - objPrioDefault: 0, - - // query found in title - title: 15, - partialTitle: 7, - // query found in terms - term: 5, - partialTerm: 2, -}; - -document.addEventListener("DOMContentLoaded", () => { - const params = new URLSearchParams(window.location.search); - queryBeingDone = params.get("q"); - if (queryBeingDone) { - let pattern = Array.from(queryBeingDone).map(escapeRegex).join(".*?"); - pattern = new RegExp(pattern, "i"); - } -}); diff --git a/docs/api/application_info.rst b/docs/api/application_info.rst index a0fe725320..585902b3a4 100644 --- a/docs/api/application_info.rst +++ b/docs/api/application_info.rst @@ -13,6 +13,11 @@ Application Info .. autoclass:: PartialAppInfo() :members: +.. attributetable:: AppInstallParams + +.. autoclass:: AppInstallParams() + :members: + .. attributetable:: Team .. autoclass:: Team() diff --git a/docs/api/audit_logs.rst b/docs/api/audit_logs.rst index 08c27ee640..c8ac5a877a 100644 --- a/docs/api/audit_logs.rst +++ b/docs/api/audit_logs.rst @@ -524,5 +524,11 @@ this goal, it must make use of a couple of data classes that aid in this goal. :type: :class:`str` + .. attribute:: image + + The cover image of a :class:`ScheduledEvent`. + + :type: :class:`str` + .. this is currently missing the following keys: reason and application_id I'm not sure how to about porting these diff --git a/docs/api/data_classes.rst b/docs/api/data_classes.rst index f0508ac09b..1d891b90cd 100644 --- a/docs/api/data_classes.rst +++ b/docs/api/data_classes.rst @@ -49,6 +49,11 @@ Message .. autoclass:: MessageReference :members: +.. attributetable:: MessageCall + +.. autoclass:: MessageCall + :members: + .. attributetable:: PartialMessage .. autoclass:: PartialMessage @@ -166,6 +171,16 @@ Flags .. autoclass:: SKUFlags() :members: +.. attributetable:: MemberFlags + +.. autoclass:: MemberFlags() + :members: + +.. attributetable:: RoleFlags + +.. autoclass:: RoleFlags() + :members: + Colour ------ diff --git a/docs/api/enums.rst b/docs/api/enums.rst index b54f962e47..c734e2fd1e 100644 --- a/docs/api/enums.rst +++ b/docs/api/enums.rst @@ -29,7 +29,12 @@ of :class:`enum.Enum`. A string. .. attribute:: integer - An integer. + An integer between -2⁵³ and 2⁵³. + + .. note:: + + IDs, such as 881224361015672863, are often too big for this input type. + .. attribute:: boolean A boolean. @@ -47,7 +52,11 @@ of :class:`enum.Enum`. A mentionable (user or role). .. attribute:: number - A floating number. + A floating-point number between -2⁵³ and 2⁵³. + + .. note:: + + IDs, such as 881224361015672863, are often too big for this input type. .. attribute:: attachment @@ -409,13 +418,13 @@ of :class:`enum.Enum`. Represents a slash command interaction. .. attribute:: component - Represents a component based interaction, i.e. using the Discord Bot UI Kit. + Represents a component-based interaction, i.e. using the Discord Bot UI Kit. .. attribute:: auto_complete Represents a autocomplete interaction for slash commands. .. attribute:: modal_submit - Represents a modal based interaction. + Represents a modal-based interaction. .. class:: InteractionResponseType @@ -518,6 +527,9 @@ of :class:`enum.Enum`. .. attribute:: link Represents a link button. + .. attribute:: premium + + Represents a premium button. .. attribute:: blurple @@ -1401,6 +1413,7 @@ of :class:`enum.Enum`. - :attr:`~discord.ScheduledEvent.location` - :attr:`~discord.ScheduledEvent.status` - :attr:`~discord.ScheduledEventLocation.type` + - :attr:`~discord.ScheduledEvent.image` .. versionadded:: 2.0 @@ -1421,6 +1434,7 @@ of :class:`enum.Enum`. - :attr:`~discord.ScheduledEvent.location` - :attr:`~discord.ScheduledEvent.status` - :attr:`~discord.ScheduledEventLocation.type` + - :attr:`~discord.ScheduledEvent.image` .. versionadded:: 2.0 @@ -1441,6 +1455,7 @@ of :class:`enum.Enum`. - :attr:`~discord.ScheduledEvent.location` - :attr:`~discord.ScheduledEvent.status` - :attr:`~discord.ScheduledEventLocation.type` + - :attr:`~discord.ScheduledEvent.image` .. versionadded:: 2.0 @@ -2369,6 +2384,16 @@ of :class:`enum.Enum`. .. versionadded:: 2.5 + .. attribute:: durable + + A one-time purchase that is permanent and is not subject to either renewal + or consumption, such as lifetime access to an app's premium features. + + .. attribute:: consumable + + A one-time, non-renewable purchase that provides access, such as a temporary + power-up or boost in a game. + .. attribute:: subscription Represents a recurring subscription. @@ -2384,7 +2409,35 @@ of :class:`enum.Enum`. .. versionadded:: 2.5 - .. attribute:: app_subscription + .. attribute:: purchase + + Entitlement was purchased by the user. + + .. attribute:: premium_subscription + + Entitlement is for a Discord Nitro subscription. + + .. attribute:: developer_gift + + Entitlement was gifted by the developer. + + .. attribute:: test_mode_purchase + + Entitlement was purchased by a developer in the application's test mode. + + .. attribute:: free_purchase + + Entitlement was granted when the SKU was free. + + .. attribute:: user_gift + + Entitlement was gifted by another user. + + .. attribute:: premium_purchase + + Entitlement was claimed by a user for free as a Nitro subscriber. + + .. attribute:: application_subscription Entitlement was purchased as an app subscription. diff --git a/docs/build/locales/.doctrees/api/abcs.doctree b/docs/build/locales/.doctrees/api/abcs.doctree new file mode 100644 index 0000000000000000000000000000000000000000..4bd66ea63ea16d9105e45f058d6e6f57da04e7fe GIT binary patch literal 288782 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� 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�qyS5wmP#M}Dptxc?K)7*T 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
  • }1rE&ER}1m}g4T4Lg5NhsBX!Bte#CIX##i$U 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/api/async_iter.doctree b/docs/build/locales/.doctrees/api/async_iter.doctree new file mode 100644 index 0000000000000000000000000000000000000000..57206fe30421914bb91c162a71ccde4de1852382 GIT binary patch literal 39483 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 I85$e^4~7#AfdBvi literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/api/audit_logs.doctree b/docs/build/locales/.doctrees/api/audit_logs.doctree new file mode 100644 index 0000000000000000000000000000000000000000..ed889a25cad3d34813232d95ebd5e4601d36a606 GIT binary patch literal 209948 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 F{C|Z4(KrAA literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/api/clients.doctree b/docs/build/locales/.doctrees/api/clients.doctree new file mode 100644 index 0000000000000000000000000000000000000000..2cc7e81218207a2c663bb10c5d92dd5e3602eb95 GIT binary patch literal 1287617 zcmeFa37lkCSvTCt>^+m2OqR(Gm4!^tWTvN z@O$A$daCN)vpw5+w)30^x4d@K)CE)YztNt-%2K;~X4Z6^ZqIQCYoqN>&t6@2yTi5D ztR48CweMb=8SUtsrw6^&zU{7!rtpTn)b2Qax4U){4|mi1!**vd%R9JYuxbs4?IC{b zb>|(o)$X?GW6|%Vr{v!Un|&CWhO2Flc;mZM1D@E_TgjcWvpq(X=@n_S@F#5O^TCZ)!UOz<9LH?wErC ze#GZ3^fLRj-C11;zgVXI09Hp&R+nb(UfO>*W^~ok%}bkT)LYQq(qT;f2>vVKzY6}V zqPwkVv)XU3jgBr2hbx1*BS)};!R*S};Zmq?Ygx;7|yTsd!63mv9+a{XIzLLHu+0h+Ue6K;Q17yrDgN13KcASFc z7R-a`gtd3HTcxLP@^^uT9uo|^OYYAnn7yOvaE!3sJp&B}XtCE}U3dAgDum5wxGRI< z(uh<{NJEz%fs6=Z#;3rg18mGRnh43Kl|?>FN0*KX%-^;2gam|R5eW$25uhuE^`&P3 z(VG$xeLx5eiB%=>A+r?;i4a#LQmAO#-#wEDVDj{L-Nqnx7^)}uuXATm!?~V}lXvabR(!sTy96?FaynlI7$b}?6?^QB)T;@&aZHgK6b5-I>& zmbTK6q=IaLmeWyGiQTt%+CYBcS(b-(1F)pdOlV(+m z&dOITFrm#bAne$DX7FS;J((Z0q3RA-`wGkK$M7@sxZhqO#sBEty{>zxa1i_C0RJ59 zv0n!V7%x#@dsts)x7!<z_T81C<_*x5H^d);-zn;MpBJv)Tcuybq<64MM`z5qlJAo2b2!iMr`8f3s3@En zZKrwqliW^yXU*>+{roOr^Mm0Em=4{3rwv&xf%XP^tml=0ReZJ!x{|xOIND9nhyj{- zbv_ECol+ZtSmn16WgXQh`hY{Ca1_zo4saoc+CkyJ)1xLjU@F^Vk zw=%{hGc&?&?^eczir(%rb6tY@W|B!_JpW5LRoci>I6N70hnnuC2jc<1XQo;9d#4Gh9>VV~sI1#Y&G#XvC3_@>{ zj_u9|QU_ll!5C4$k?@=%nZXObD-zrH?5VbU+J--JZL~*xoHx7nk|G0qJv3ceBX1u! zw?~)F`+6BHws50^Hw~{q0rp0i81sdZV&@&fH{wBqAT3YV-={)Qcy}<$ggFgo9VFG- zXqxtd9@GBUlr3tsHLe(Pjbmx+XgjHaOx*fYnVui^Yyu(FYVR&ggZ=!fHFy~5LHH(3 z^Dctw{$P{CjPImhz`N2WZTGrE@`Q#`O{np3ixRFD`{v4$^mugDahE9-uw~(il@=teEwhYnO~l-Dox{wMMm6 zZj~+DX}C3*65f4i63EflGVdVQmI*NMcKhF;D9y1?a|=TI@vXsyg4uNnCcO+L4IDCU zcHv(oc6bAjHTFoUPaDrYDK5b_6S=%&oXx z2a}pV1E!D(;fj>$_+$VZxzmQ8Vs@l9-YWI)?<%`hXh@Sd8<|8@vD(aLGP-c(EGf8W z4>RbhY(?~cn!4HN4e(ErpF(VvDu1(BfYVzx+ub$q6=*uzM&jb^3Sb;d_mW9B#(Mzd1!i@KFJkN{1x8U6g(f4yS%oynNUW*34 zSbZIRBI)nFo;n#5RaZxOSK`P}0!DEX?jKP%PgDZR^brwURl8bq-A1)pF)X9rELz1{ zt6Z~9*KQV@u0tLhRd6jzlELf@dV%0_2Ze=&+g6ConLT}bZ+RI4>zVB{?e4-tVc07m z1aqqGxR6$E5T7%_^k=8>5bv6cZUKH#YBdl6y1k=oGy_T$`!T>>rXht4N7rbkCbpp~ zQYJ4A^2d=uR7oRmLXtqCnQ@LB8werxqw5{KvYe`2F)M~^RGMY0Vb-c} z+Li0Ix`Pdk{B`h@oPvuQE)__scB>7~VYvB^F2BujT!$P!{G~#9w&){Ir5oLgzYoR< zgp1}yNVSxwA)NkQi=r9tpYVLN1#xPuL(!}VW87N$GQ(Ipa!0#_8A|ejVlC#<6Cy^$3caVrrZ?j~Q~C`q!q6GP*wK4fdhFf2 zDcD4mH$$w?&>NZ^lPl^vy| zX_ALd7Mp21*KREK3A`7sazjKJb+b{jS|!IQRgI=mt76M?9jDbQ8N~+4t{tOk2&|6d z+m4~w;yi-T3wtaHw9uO2Eu+pWpJBO5v-uuU^umRnoM55%Q=5I>ee_SD$xZP^R%=Dq zsyaoZWYmpT!)jKF^@>?7Tc+Er7adbsq}6lIN=q5-5(+n5unRt0$u@|$LPJ6~QG$!e|@(AZ(ZP z-c4VbZ(RP~?H%?bSTL=+J@Ik3`1vqJtIopM+QlD=?|bnEmxqJkr9IuA_)WY=J<)gr zcZdwKMc)PWRN5?P!{Is=Pm5XSPF(1nM(B0E?WAwRm&x0(czq-G;O${&BomYk_%DbQ zd@C+|EfjnIlOAu(?)&FKS7P_QL}mu>Q+Ph%?z@Y2-(Zoktv6hl*mu8-v52PCefJWe z{7?BT^X$8Cr+s%7LAAo2Pxc)(n8SeWx#R>Z+}Xls_+RjUgdz)|GG@5rE4Jls;YF)1 zVy#Z$RNI`MLnLQuZeg}Pm}l#NRYk9~ht#;`4(%npXs!<7ju^rU>vYayV34e6_%aH+ z&6=T&Hs9{HdJCbg_4JLKtF%M>M}Sj*`&agx(cajq{H;pae*T-f@Ck5QtbXQzG{)3s zJqd;`gl+Hu5gb*SLwM#6pl=e|H3C?(2~A@b(k8T-jg#*GNpc{tw+Ab(4O7crd&u`E zY!_>0rhw}7xeWA35N0OkOkRqRK&MB~V>o(JXeR+zHxep*TwM~SH3esn+c=zEkFF-f z*^%|*%)17Ca8zBE#9~=!3vyeL%fpZ`MayXw>s6>6-f=WhO$hJ#v7ctV6Vh)ZtvY;Mi{NCvpR2>qqNah`A{3{p z)o@E?%PqU*vSGlvUTW3Kjb@{6SIf0Z1z8K0w=7R@-?LcShuOJb=)&#paKTU3P|PFG zrU5~<M4GhUJUU5WIoDrMv8&mHtNAsf6HO(oHl z>AOynUB0kl>mzxp%Bd?slmtU2r!F`tK_Cj*@d=*#HqkdH_Hv_EFPdh(;aV-jt~8oe zw^VF2kmyw@)$AgXi3(+z6lvyMza}CaPrs&#+=W(S=+}Z#lU3#D%(#9n6p-Xb8Tz&N zUa*Mws|2t2(WiIOr}qb+K7daTdmm(ff1CaN5c~T(?C0jMRW=g4y`qs2#!RJ|iot@W%@Bd_rCLB3TzkY&hzNl9nd4;m=_-!nmppUk!r)2%l#TZTP-BVK+%iCMmfHU8))} zbNEA}9kiF*9kWlNgE=x4=N1HF7G|eY)MhBe1xe{3#dzqN%LU6ExXvL-JDS$$%LTp8 zGdum1UcZ23qE@euV1?}>9%~MIQ0je6ypIzk%Q*T(j&aN#x_=>z#X`Sdm_|dI3fys> z4ibFfTc0g_mmj_rHUMmcB?MH075mZO@Q1;Iq_;Ew9Jev@f>aW~{}2#bl7fD56!;0- z+rLr|K39ZxRLB(n78xMQ6smSkxK7p1{{>yiTrh@<=$mLNZE>5~IOA#OTpbr!Nzm)A z1w#-#*)}(Sj_EWv4#(HxFWVAeRIkPFqZc*CzlvL}<#h?Vnh>`IG?j5Xf#o%c7O!Bt zI+0+=jl)32BoUIpgN+bloA8R%?_6#aWv55fCdbi}RUEBH#iaGcRZImN2XaeU2~sgh zD0?AByF&51;9~&le3HC-ffnFVosRn*0;#cuIe>D{>Y{K~*c2FHkPRbb)IjQ}v#xn5 zR%#Sd<16iit%{K{Z# zp)cO3>&e>#C4Qtvp1r;F+a@fEu~$6kd;>??xo{W!axnk=VM6XM_yuYja~Cwqj@@vJ z^@fcDK1R`MHr!?tA(u+4ZaO75?k>0?F#K;1G&9w6kmNe}5Dm^<2bU%FAaUUDM%Fl< z7vT^1NO3R1CnNo)YgpML{^RINM>rY>=wG0zv<Yyn(dZrH4Ov7Sfl0|We3iLylw;{&hgv`G?AZ0t1;XN zLXrx*Gkx_0RPII)mRoY8TyBJmw+c7HUi!q`2<+2&;6}K~ajn(G`NdV#nb3F=u9Q6q za+8g4Cg5ySIEMs(!VI9sEhqKWa8Ef%uV^&vF97CSx5>;x|t+Bm&Nc=S7Fqo5*4VTI~xI6<1sw{#96 zy*xQUa{hgkrLP4WD1{+z?PDR zpe(VsR$GYRRLo}CF>L5#<%VsQ%(81ZW~*cuZFXQniR4@xC{}mj98k7W_Cqu*SITy) zZ6$T=)sc0Lr;fdmj}ceL-W=(7J?hwxqAwk>XwhmW*1nW!0P(NXV&HOBJiZj6)U7Q9GMQb%-FxQ^#l`XV7X4 zbxcUlWX&o%Gp>$_{VustE_Lj02wp6z^SAVgsblQZd7zFRq|}sos{VvJHGZ0ZdU)qC zvQidrxDl$^B}v^vWT?4MUn9i(uI;1-;kNq?P9Xw&Dlv`~`T38aE3sW1ktKllWjvoy zO`|dmvk422DQiiK6)M|B+rUCGmF)=FqhgYk|@>bqU}tTL9`d zb&V3PQbCd6C%%?C^9g#7^0Jbg^O(qxQEDE;t$#I9izec(*}!JdRNBBMNvM+D`g@7^ zl{F{07)l^x0yx{#HWMx7#>Ca>RF{B=ClZK#Le@!tGGO=^jf&B-k&S1xiq(3fkte|MEw-ZH zsfBP3EBYtUfp#}Yx1!$~j4jlns;;MrtZ0KH?Oa&V9}ng~wiW$*)HG&A8&=b`TV~a@ z$_>MDU8`87Gwp=z?Mzvl; z5xQEv?xHT8+b|my3)!wt!?ImOM)QUnh*ZY2Z)qYQMyoOGTOrqkv6C(x31-~B6~;kw zqg?jw_1lGgdjox9_AUE#9@w`o*fRzlsiaa*(Ur`i7oW14rQedae{LDx)JuMNWpiDxFWeD%d?6houqJ|944pAQ{ zMna(uuKwN$BJ7(i%kXxeAn(CxwpkV;fibLq3uDha%f8Jl4Ca&$SNiQ!h@Z^cODL-7 zcBJ&g`_JJbrA_B~0rmLXtFniUZqhH*2S$Hs}B)yW_XvCIkQfra)J#4WmmStN*qoMo|nr;Y^GS;1erLD}mo|eF) z$JDHznWCZ~0cGzDQFe0*$|Ai;llz&C!`)9!j=Ohl6z=i@AOnet`5MJvx`LLbo)Q}$ z=YS5(*J7(>SZ=9VH;lSlY1RzOvWrfsVk1qaX5|V3*Yf4(m1o6^8Tom^i?BoD`FZSV zsI2@&2IWx3n>Ii1(^>SAZod9;Ft*Tco}d%$TJseFQs^G>{JdivY3IUx{a?ZS$2MQT zK}}=kYX!xoN>uj1wNTx{YT$fgsak7Q>o8?o^;$d#d`m)FUb65=Jma@(hrdnG8NZ!U zSCVAeO|MA1f~rG2R+!HzgC@wiEBKfga$j;QY4ociqpMqrtT<$6@m-F-bmXPklx{>* zX;WH<*_^iIxFmZb2$z7*lm_K^U=$_eOET(v8hvvqRzhV)(`Z&&pgsc`$0pKPnibou z)!iz}Hs;RjBcdM9(58uem2;5}Hw2#NAQP7}vrLfbtEWcX&=wZRIt=am30^Fae1bkP zLz{g%4-D;Q)R=9<#6jUvI!HC|8&9catPble?pQw?VR~PmIa^8)stkJ^*VSyp)vlrBx5`d{Fqgq0~EqM|9;GlI6^hgp9GHT z@^$4g&tEB9uF?e0fr-xPH?+-BoMSLVq+2qi=g;wUq^;Cb=QloUC$dc zBhnpDm8XgPBM}^wEge<}K3tU-a#o0?^wm=%uF4B-CAm?qnAtOd3}2PMn?5mBo_#tG zRQbp7SjNl&H5HW3Z}%LOoxN1n*ZIpEp_N}wDySIz;K2t_k$q9z4&|MePlR6ZM8^Iw z;PENcv=;$Oou>VA^x?e%f0UD+YROrC#gH9zHCo)L3zlvRtGwMVRpJ&)=9e!isjj#n z)_+s1H~1c|`cyF0r0rp>B-e1&-YWIVE>`m1B!hmtK#VVdm78ePXEW+$G^zKjjI{ID zUPto~nqtRQuA|xN(~SU__!`3Njr#F)x2*W%r3(p_l=z)JuV9l@w;5S;2^)E3xH{$Q zR1)zK4)47XU1!^S;e~Zxr26qriQ{<1nfIVeUimnnHEzJs-N-CQ9C?r=4!IpCCTOL}rb{PoOK^uBFi>{t`_kT_RsfE+N{BT#|5U!g{4F&_`Dk zf}RMkaT6Y zx2iV(FPa-yoBbqv%?J`7{1;zSG9O$obZN1F$L5m24O@2x+z=efjkc3!u$^AlIJ-i} zK(@PlGy0m4BQ8Nxi6e4q*GVjqzGz9!=46HYls!U0oMfYj8J}dS@Bc*KoLo)IZnSVU zNW-ul1O9T;w#zl6hMIb)xo$ajrk4G6B9;9fpZRu)At1an3VM8t^IeZ-&{(D~p_xTk z>Ar+&Fm?bs9f@jv39(xwI5Ox~5Ry)bzJ!_V0-)QDySR$A8{Ekkd=GV?gEyVY}PBKa=m1fO_+XBmx5o^Uy*vF z?rliB5`vT!p+n{rgekK1DCdgbRpa0)1TsVl@crVDQnzqhOsz)dgoEk=DE)>vsHxQ( z9>N7akjQ->GalXi__t5UC{no6}* zuV&wJz-kig^LiNwA_(!Ly(BJjxpDS+FJP}`%eS4rd}9G0Vdg2ng;4zXJ-#3 z$S>|mRYcQ4wUJ=sI8X943lb)~gEo&m_zorM@6RG|QH8`cn%)y+#NSe9d1S=rBBQQH zMtl~1O(-M2h^Fh75wC}-KFTK@c7h27zJsA<|BS`>=@O56m6W1VMg)MdTlZ=e5s%~X`c)bri)~_O!7NvpBQvCdO=<%t=(w@UbDE=6DiubHi@$G zQJqMDi9hzQcNGBh-Jo(Z$Y=|PrN2P_E!=mG2Qy33ugCJqhKux`L%k;WWH%EMe8H^v zW2N5}7isuAHVOYrIQ1p%)IFVh)In37Ob$Jr#GKqcx{$k3%srY2nox{*k4M+*agXi@ zna0n1c?cbH=O{s?Is{0f0ZqXUF$51KL)tV&b5#TQ{sq9pP-p zL5-qD5%*El>#X#Ze28*1&ue)XTDXm>u-rqXFuG``U|PLZn2E3v8C>DL14Qv{4re$} zs-kDFqH6e%rLh$(x6?aaxRr~F!{$o+u;1vI&8$84wv%8!5Z7-sbfrKB)h3&nSR_5Q!Oz@7o>Y`W(S@S?W7NuXfF`t8TGT zw{XzhMRu#zEF&~-mW$PLqh&he9#QD^-g`olTwWavL3~uPo>3)9`&CrVa|^cyACJM& zfU+oXPviKQdj@4zDDB~ne!tg8y_7+rZ?=Q7cw`z}p4h)c0iPx~Nse5V7_ZgMB!Tk& zhI;cU4?!e8eQC76i;T7&di!gJR<#FNd}-+I3urnny-DjKqUSfPa8e+zEkTlz*>s2^ zY3X`EUmQiI4_qZ+b>T%Ja09GMBW$MU5-L^D$U&;DIQs_TiL){<%P@tWCS>K^Xexu2 zhEZ8rzJ}eu%7(VvXozY@xWWu@@0962+~=b39-qGnsS*CRn#GoBlyT_BL^@Tg(y%Ml z5`L=NxE-`uVaF!E0fjiIY5jLBZq#>IIwlGou>zOk$SKZhIvs5Gbd>ZIwjA7Qfful0 zxm~-r+Q%iZ!5tQJbXh&Tp>qo_6ACQXTz%zWfyGwgfFv!K{-Jbi6wwqzOjACqYdWL> zr}xD+xrM@Nw}X;Q!O2+eh2=}2U6SBU3AuF3M$&;tK84_mGS~P!0?p(WET3B^Zn+7y&aTv~riC&>&1MA$GwpJz&Mt_ya|dU+ z5<%CBi~S}sCYbFq-+G+%zaSzgzJ@UP5iJSH6cC0RctG%nsA=3$?pEu#3DBt-MF;*y z$EqOMfNCmk!>%>qdCU_KJQnQrg~NxD2SFwOgzD?pd8RFgu4h6mg;jRBsu{lGZ$UGP zsN}bdPmOkW+Ejv}GY=O~4>t&h7m<%74MV7`!8{};|ApKTBg*|bdV8Pu)A&a#3U@%m z=T|NJH!|v9k^Jo*(py>S}@+5KjiuX(C+%K&++Chpz&spub zYaVl2An4{h_1C-+9BctI?el(;O$nRUmckpJ3s5~}4rkP;FNTsox zN^t+f$gDK7N)6*D2g*2)T?FLNdN~KlaGVaw(JS|t3%Mb@I>=$#+F!N$xX4x_`E7TcF_%|B zEMkul-$McMb&M$!L;9LR0r6F86Ur_K2@dUxg&U`6*BfQjmxc|DD;*pJ(pp6nTB?*A zbsTY_+dwekiv+J)ou2)GJn#AwZQq^CRMcsc>PV7;3NOw)D#tr#XAaCw7w|vSEr64J z|8e^5`u)DY8iY7;dmk=X+xFd4Qv*#Q&CumJ+JZbs+XWAA@0i`iRp{|>o~)cjE(nzu`QkJ+FN?(@nOb`w(n&=GhUROdCL9hUD?R zW`E{(d^?2f4itVpS_p!jEUHS6n3LrG+q!2FWaWQOo;)C;6+aK^4D2zjOT3;N6q2Z~ zpb=9dFD%SR;){Nk!Kw(=`z{5@rl8GF`NDc?ZfarbWsvu<-)8xu@ym(A)QPDXd|04W z(!Wz23R6c5esjkhno4T{9nt)L^*z9B>ef3to%YJ0J(xPidQ6*00NRwkf*AwoQb(~V z<$8Q_>g1HbSYIlDH@b$59vcOT2e5us5b-K{ij(A71b41Mb4W^9c}@f?s&tcGB-z<3 z&t!;Kdyv^hPbP^b*Y5$b&s z{=-|%Hq%!LlrM@jPX`1s3wJC9b3sj6&dySou^Gh)fru-l13~Obgz!q5AGdqOd(v3n zr=7k`31myru&Lg%m!m7KvX@>c>eXl}5yECR&Lr-#J)91Ll@ic>A7vsT+%JJb5B4jG z|9r4Rcm%TJSQ5;CCWQGWyey6Ja~lWlcTNuOU(W`&6li!j-8;Emh)^xVU8v;Z=)rtl zf|v^ga1yNlFogAv;6(}If0P^I*`n?flY{&(RgkYk)Lkq{T4r#=X%1pqq)vc@ zguQOqUcM&{wpY-Tje+f@=xRdPUXP~VuCQ&U!uIhS2iyAOu)X8ahV3Sp1rqm0C9-Pj zkFFc6EVa95=IMeAgwa`f8~iXF90r@XYo@I15x4L-cwi7*AdeNb2h_2mU2(TUF+(QM zsNAhUwpdQL!ZqyGY-gg9Ys=-I@>^&`zC=q;^6Emb0e35&p{6mnBI??ity;q_l?>ec zh^luL@+uZF*X6Iqu7*kJwAEj})?)yFisqMY z0RO3W`Z6VC8o+;qt|lae&!VYB2R5B6~k;ID=-j~KvT-#Bpp`{dxh z;NnbhZ-4kZU7$*K^-xGpO72KnNsBOlf(E<6~>cGkqiSk0B%Uw>xQkF3R`>QU^_oKY?r@{ zVf)Hd*nZ!}!S>~o!}isWHf$pXFwwItB2}Z*dm$dDS-G!{G)>oja-C!40pqK{PCtO2 zMR?wD%BERw*6=^0X`{XvuIFhqDmV>Lu9PgQhnPMt8OPj?{(f|s^(wcc$s8Taj#gnN zo4PcCl<>U15kJl*4wHzOzS?NU`yB)}N1Eeo^xQwr_UE88|2P}_bRHaMyLlNorU;FT z+dfkdwp}9rJ&T_perEejyBmjT!YQ~tF~IwFMeO&`BlKUv64re(E`)~nP3kq_WSm-& z%u`Ossn7COE4y^BDjHQeqpeo92ThT-p&Z2%<;l3hD!zvBx?Vq??l_)5o+=$=ITYrm zkVN9g@piIFs;f$F6g!TWh>vi1?;n7q^&H2$G=U{~)w0_#Ykn{h%3#Y@`VQ@sa}+s`kcGFYUvTH`SJH}jR*&Q6Yf}M((HJ& zm>d0%&7j%@ayW}QadNmSh1iwj2`{1da~bhuUlJ3grfHmJ;85vHmUtTScqN+3jl7`Za#U0#VC^k5C7+3RtAa%u?ydAvE>vav zTi%4eCS>KGK~o7=IsGjWWJ#5Qq6-cgI}uaLO;Azk8E%r9XG|q3cq#`hH;U+A{Ae(?K;Kp! zp^aDAjU$Z?4ieHP&D{+OxpAHgzK7f9SAu0Esn@btiv?W&g__0!uC`M{#VB0E)2x+^ zM#Hp_wTsjD)k?M5EEbJ&o`7pRR?#3wVYh-RP;wU3BFHEywWGmAgNw}4s1O`u8gvk_ zI?>>g@Z5HZDm+y^YaCg&lkZd(fATg*5x>b!htN%4({)C}7QW zqwy=aiRQ^}8JYERdA_*Jpowh)IJl56SBgzs##XV4I964wT4o8i)LT{qgYyWVa^{fUG^lpw7#uGizz-Wy{@?$F*37;%Sogzkhpdyhh-sxw>A4z`s~a^&W5W`7{t z1srkgj^{wka0}-4WeFu`_PHcY*XznIM#xdssB*Zn=cof;MkKnjZ;cF~QlhLxk*`wg z%5I>m33aHapsA!oZO-M&CNj+9%KjDzZO}GhZk>*7J@O}TWY1$xoEUOBvQ2tFmv=PN zk$sYZL!~ZR&S@0v2hda|j$DrHB;v^9$i9!3>^rgp3{K?8)+29UvY1FPgxS zEK(#t%q!`YTxiO6jC>FJnvjWq2u&qC<#b|45G6UW)#Z{B&g<7D;Ye{|M`0gsikU8K zsqe!atRkUekzCk>v~%df{!FlpBz0OAXfcn^r>SYo(q~4 zLjPxED0Lr{wXAFj{Z;fep@iOa*`q6=$v-ThJfY)SG*5Q8$PAauam^(KP3)flM=si1 zW))%`H)a?PD&SfTt5LPBQVmtY>NYAjliO9rm^?0ROx$t(4;iSTSGnVwq(M%f)~DF3 z8|t{Ofe_L)26=TcF;=0bF)`M1TSmQBHS9*iHHsC-bQ)E_vfMCmDM{7L<+#2^^+U_@ zDambpllr=lDRQ%1PV2iOuu#Ro<%#_!=xO&-H+m^>Ut}berpA*3_nIV*%c{yIMTiSk|U7pN183)^6CSa#%B3sA}CX%5JmSs#S5%h)cv-w@TUN z4moSzkpXXswTVN@yEjGegeRZ_c$$ZuC1#D&1#^geNU-i3#u11}6?W3f48 z##Dp4WxLcjxNuZ{3?0?KAIv;SvmVP)9Rk7o81?$7II90vJAbXC`mfM*Y)AE%^yBGr zul@1T1xTW!`ZH{jDrqW;Lb{_m5g+03-mjwT^*E|8jRp{pd?;P&OfMojz(k?kDh3-+?)CTFB+2ek#46 z%lVnu)*~-4eP(4Lkzo3? zX+A#t?v!4YJk$@+8@Z5_?f+OrUlVfhDw;}I%ITqwph@yjE2|}4oja(L5TrP$qks=L z!%PRY)c2(vs@&9ZiYQ-el#8`0a>q(_7l%+AWusNG%(_*_O&{mKgZhmbWRmHieq9!A zq&uj8BpBP{Al^U+HSdue)P%Hi=%9Xou#6-%T9#%p&(3?OY0R@zv8`&uteB{0Wf^6= z)F?Hra-)i)%tfbGt>mhV+?vQsEQyjaT*In=dS#-Kh0jM3d}GXEL)_DU8o{KhRpl1W zpQUcJ!uf9_1F0LJtX*Xb=f6T4x3D`JwrL=9wP71AqX^e^ zxn5=w+^qYtuU5Uzl8j37QQxS(E#!*SDwm789D#%?3NB0PHbG6hm3q-if@6_!)*}h# z&{r-=5ElSXL(_E&0Op|1P|(O%EMOb=Pm3oT%hfdIEEdSQ+CYwfu~w;=MO+q&3L$2z zin@`w*`w4z=*i8UPJK%TxFxP8<`|2s)3sB{KTUd#tm5k%asRY%tt5ju+dut%1W4we zeuzFX|1|q_9{8uP6Bm~iW~7Yi0$GMV=fK)X+yy#I-Yfszjqphq!tQ3exJ=_H>TDju zog=n;^eJX%;Eq)u3OSqtq zXcweSWBw4D!a(^=*^__4Q85rcg`@nbev}WRi&!b9cjHHhKt76GUvrZDDdmEQx;$*R)SR+61WbCovJK z@-&Ji)+e%X*pv680R4L671N=J=8=jzV8$aALO6*SMR@-uZMJt2_v{ZO3mEB*oP_d3 zCw?Pl4a>K;_fYMnU!c@$x{0-5`Zv0t@vFZ~vsUObIsmRE=*Bii2gfX3R9GaReF=W5Dga+Ih zf0RDL%gt5$X3=QaRTIj+jbu&(s(sxo)-1Tra8I9AWaj35Ku!=Ze=1!)DEM!HTh-}i zWM6ghuT{=>**d>l68v&7e}@u5t?*?CrCcT2ac@_DG4lp-N2)RWkjJb`X+0#Hx$~bB1o?UilD=Ij zUn>-aZ@9B$I{&4eQ~#|;K~H16t}$Q zx!l!L?)A%gnd=|qhA>efzs&Xb8R@CaBqKxixau!+^*%x+JLS7vKZ(BmyIj5BqjH^0 zjDL(iMXqoC2%7{1QSACwdLkQ^s@I-f-#P)vG14SWLt_4?$h0)@QzJ>q_qTF(B}XnT znC}a?c(`OYoT}k8UEDRM;{opW9TrZvhf9V1z3zT) z{Pd+AjgO%a{d72nFd^ihLR{>*QY8`nLOI#*LL==CAO{*g2XLq|Ub@3LPWF4zcP_Hu z&L)vW_Vgs3>*$a8(!5`Jkn6zh`yaWpk)r4ZI0jqL@GX>{AaW@>I-TzWR2w zsqK_;`_U12=}Y*pg8!-~*G5~g&$ppk;4%0P408u9J8>bK9(nK$nrWu9Y_6CO7Zuwv zHW3LI6~!u|`Bv4g)!mX&EaB>Qw`x`DmeVwAMjd{IoT6e2y40~nOjM+=hF*QIFI9e% zNfkX|@Z%1&)o0C>Um*PxIeO(e(Lx6bG}W(R6A}V$l;h&)hX~uLc_}ibgnB=}I653# zm;gJ4OW(pd2pkp{`7;EPJU(5>n10}VdxU4g&hRo~uK_^Mp*%>~mg2qr=DpkGC8C_cZp z+Hw4Q%n@mDS>Xkc3lXH*Ev$BV#a|e)y}kqIk&xNrHw@K-cTT{%s>yzxv?R{Dtun57 zFPXKHTehK|)l9cqYPl7s1opM;Mw3`KZbfb6&F1f$U|IZ9y5FLvF>|U?E*9Ax1jQnb zm)0DsTE!jq^=1*GsMIo;G>V&3-uobhg@ED~RHphk?JJ9eVP6E96wOZ?u=tDI>!uBe zYkQwYBW7Q#*O=4KvQ$@%i_0Qchhw@^{I)k)cOC7KF1N)yNq4OND-GoPHsGP?OWMJ| zMW&!`lH=vn{0m#9+Jn3`Y0^@^iKdcQBWJ>6#4X2s9c+CBdf&?dlJFByzmPCF?HwEe z&Xk)bqbSqsAKU=?RKnOYU?i>PlkC+@3f@WanZk_K>vfVzSQpH>oFs-w~OGx}x!@_%^mswFenl8Y+Gk znr;jg`wL7UEvdS!_Cc%NIsx%J;iCg!t>q6F(hYIU!&r~I41H13Vu(k8u=o-8KRIDnz zM)kxAel07zgF(5!_5b4AUvUHMA%3mxci`e*n#*p*J#munAaX*$ecuIw^mim8xT!f@ z3@dIB76gZ%P86n2Ox@4^!>%;tCoL*3bAl7^&fo*PZkYa^;@1sN9WCS@iVY*C1XFk_ zxNdmr80#^zjfS%paVosUr>*oAyy)M8dnj#6xgN7Sba9ie=!Fs7ci`gREj$H39dwf! zH3oSNsWpVyxrHd9C22T6PuqmA;cOQKDQP*ssNH~MEr(8!(XjCVB=>**EV|P9*)&Sd zZ=$KB9^dLVDc32^6^^$5UorcHwT zA5&*O+_&-9q@n&KGL*XS%V5twcJN8I9<>Kqh0?(NuhCS3`#Mad9Je|LaK}ZbGZHLf zV2}Fh=>qfxAI5|=`YJX5H!Ub-KoBi(S`Frsc&l@4Mv84bCIfE0Iv|832HZ}MQ@yY< zC1f(-W^^?n173or5+OWF3@F`rOVVTy=*GczZF1PY{o5F}?@5L2`!)`?zd1Q5%~$5f8| zy64}7@J`S@|1LMovjy^BPY(1is6bzbK%P+d3`NFx3g^@{I*n~?g)^MSdbG^TXj18B z-ahS|$I>z{L01!MnFTccmTH+PupURXY=nT0sFrgZ2jkl0Fn)42jL(f~nF8Cf^~n<< zfD`q}7v=_Yw)lF%w*H;^;+$(KzIK{+B?(jC=s27=0E9TTC^9$IMl&8u&ED#tl~=v(-g`FzhVJNpuIRhSTSvPt`NLc*njL8kHNt4yj?Vs7_AHh z$lhD;q&(mS1(EEBPhrr1F49OPb+3&sVkgH>;75=Sji;mHFvF3!6)X_wf*(RCJS&*hy2}oP3-s=$UfGmFuJR7x$Mu|9Rw>JS7WrUp z^vO>xhpXe~mc14p5(4;%Wicrr@D`dM-2KR}O_jk?)1 zaTeAs8cxl%oJO%)X_i_gyJfm&T4t(3AN!uQLWkAO&iy!#?%u`)uP?BateH_EcvF;1 znw6VKb(nSpZ%P8|^^w)9fzj}?5T#E)c}I4wcyFVAd?&>&`CVzKpNI^llB4XX$hPj@ zioSH(fhI8e3ur2NDsozPBomU4bgRoH(ZCPPo~8B9JYy56UO+isj7dBZJQ|9&Xoh<( zolF|@H8kVh*d|5=(PpN(WUdNMvN*9B`weq$M}r2%YUFrb{IEKV$cnm(4E9MUl*y@g4@5iv4nw zS}K^!m(=H>Oy7E)zZDCVM@0>)G=iJ)M@4o}>Yb?PAv^}_UKn&WI=vAZ7HMC%h3Min z%AeUjgUvn#mEykKH_1@i#zE-IVx@AA`ba6Rq&$N57JLt3cU`dHB;`$8V(BV0)yW4{ zh5d0Kz?bK46f0;G;>Np-W*t=y{|nr@9_5f-+MI?IUspVeak;LTN|&PKji&B55ggYj z#Y#YX{~Pnqt5H7fHpgL=Z2~nQPGt+wDEaX=d~o~FFIXLpLa&8W{){6BzQ#!hZ?}sc zr9J#91ZF9vMO7EB)s3B?G(4Mn^Oc56;2qqEwQu)I<#ruZuDH5uDrUBWO)H zmh6UQ)g1@*GipYqUTnCnR;k&l+YPr~D_X1)h@wNc?x6xs`2Xr)6=j^xvcvs0KDo{z zENC!vO@|%z0k+!*6h_`!EsUI#T@qf;IO`n4q>VB9zuSBiI#6X ziLhVH*C;kBm7n%RW|qK0ub>Wm7D~Kg;#H9W(m98`{j9vdvL_Nb^2ECDMOPCt&JUxh z#5kLCT_X_To7WSM2m4jXCW2&0&n9p(iajze5<}vRqGWvHrI|#Cw^_68VyTFt^^S#e z9QB6f;Igi&QMZbgjc0TK^9z#GV01ZzFC((TDYrkMx@G0rqEBn;i4NV1ayGlJM+p0r zZbGp9dIlk7*0BGTEb>t+kFc7C+!y={!Po-X+jNBJ?SU(Gw2K1{`?u??d3))%O#mWG zr=!{W`W*Njr16gw6D#qy?o5)ogWS3VrE_S)-2ZMpH?u=JaGl#Hv)B zE@{zmIXewT3DBXO5{zO4VkK4}Df*7;%(|4^qDf?it`eVxIGNGnL}sg8juftkP*rQ1 zGS@*+zRPYFD>bKOwG24(nq|vv7NM3@TFs)vt|Cd_E(nxdp#38wXO(Q^DblOlkwQG5 z(~IvkYr!J3$T(a~MLy=yGv{Kr+N`u(*Ro2@vQcZ4tVW|&c3X9$ zQK`1zBF!73K9R6Gd5RJj6Elp(#dlBYM{F;9pbT#^}jq+;(02KRSeoPKlKZLA!F0V|3 z3|o4nRJ>nsmxQRNI5NZE0W1GY2&OLvYfDnGwJywmL{ptKO>|*?o;6Zy++T3e-=Wk( z=KhbEG9HKX-Sk);TD67D|My1CcTa>&IWiQW?+D%rs5JZ~T+TK6<>;!vUxB8uz*L|e z6{9Id`VZ(w(G}_EqbSNlM)mi)ezXayzx$I&7ugz0%hM?4EDsspdxZES>MZ{Req4{U z{31pC@dEJo0c_koE(tW@5Z@U{J@t}WF+XhEe@Ii!nN-oejk&-Ji=CbY&o+}lqMRFr zT?)cMNA=yhz3$<_tp{fw+~F;x2+{l8>o&_eSfHw3)5=dwm@kBmzo%}{xROLLBjl#~ z1$QgcNzyzYp!UAzxy|2>4oJN(M|xKc5n1`nbPBf7l}=u2%-7RsDrukjoPtD9$Lkr3G1?)u8gtXu5%@oDLT&9e(v5rnN$B$$(d`AB_TCBPRpb8nejv%YDC) zgOpnfMy+0hr9k(N)^O{n-KbXUaNw4zRog0-OXYK4JMV*hLPBFtM^VfOe;+lC8R4aR zrCN5ahJ$K(22Ak=S>=xFqG+=L?*>(BPO2m{N$tEUDSN_!7?i#qE}5vXj5{${B!zC| zP=t1(Yf-E5{Z(!dk$m7z#m}G-=iWyie2tvONl#?1QvCym$xAifTA=Zb*(zl5FGVJk zj{aOWG3O$x<4?;BqHEP!)kc+ltL7SR4Oi}#92m*1QoUrEHIt%i>D)vx<({oiGnl4N zkzVD+yFbNV&8%Jbygc6V62 zd#d+<3%ii|OQf)z>g~k^l{oZ^<+Qd7jS?K#^s_=}%0a=4L_9sM#@$WSoI98zHSTVX z^sLTO-s7`<)Hkrnt3Bl08H#8s?F>16)RA4@cQUaBhTFRk*;HCOfUe??jsh1<81qL* z-%&aJX=Bov*w#rE_UUawCO1sr$e2A!Tm91`7*%z`K&6nzPEaZCp-y~?VX4o8E2MGm zjf|t>U8bB&mEt(Mnov7jKvRiu)~g+|yQ%!eCa4s2lYsy)dNZ6_) zVTw(x4+u>)N)h}F&5wN!0dzE2)z~qLCYtJ)J<)SqWsN3}Q9MsSU!A-CIU63?3eXx(FG{lJ{a=^C|;r;MF%lH$~XavhxMaP5TNiUkuK6TWR|B< zEI<+Rxo6N~q5+EQ@Z)*{6gwqp$HNmpi!OP1B9LJsIN`@DNGdaf;jRmqVkl;Yz4@^; z$(*5yD|v|E2FQsU$^D5vG4>y zewoiLaGXLxsWqIEg^Lf7;bT^s^-{UjGVF4x=row)RMC*1a2s;JaO#!Zfvh4Hd_3?I zF2O(89u5k<(_MZakAG7S@?y#BF7n0r$puK-b@vm3`*$Y>xA!4x>L34$0H#=SYE9gu zR543M!)h945vANK$ZdCVi&D#|kTszs16#K*ncc-$I`CYOQsVLJ!BI$Q)Ss;Arf+>2w%>kvmPC16j25en zR=r_X8%CpSAYNluY89tmt(6VeY2eJf)+ZDhQ%liQ=k|W7*&9?eXjZc80yV4t7HS%E`BcoJZCS_%tRP9yL@Ir;3@f|bauNBf z;jZfxm(L_IvO~1%&D`EwlrrrXY5y0u*ekjKG53s`b+0iqo}L>n#4bEo@f0*l2v*R~ zGO4Q$=pa}@##K^I!V9UnFPS#s6-gQ`L^@WHCrhL3Sj7o8ceMxEy`hmu9-2z>C}*r9 zT_Ukn#-$KtqXrOG0v1sKLrTR07SVUq{phiN0==Gk&~4^>p@4gZ7C8!N)e}6)cL#I9 zu#*FU3%Od;u*$V&xl*qejf#m%1@MAbixtDM5PWQsb1Pl25{P;D@%9Yt)2lrE_(b+< zX87?H!k|>6k0!1KbWgQ=s{=$FeH|)A*(&hZB*K!e=h{QpnHGl+aqO1VH7fOj`vl>3 z>Gfw}2gDS;#Asz`*m9-{e+ZHH&fLh8*#9ROWI!eA^>g%d4)#xrRlb*+`|KaRkL&%B zo>lH0kN`UU5>R~rU4`|dz)fQP z=sPOw4-i>AXH+>oJv%E-BEtFSI&*V$Ad%^xGpgBe;#|%{*Z}8tkdS}=UoB0XXB z-L4Z+t+l%y5dm>8Cji?)o>d(fx8VSAtzxrYbQ}2Bs5*vK&%fLKcm@<>yPbXync4C8d&rm_4 z_Hgata6|PzauMHfhh~4#9j;)WlW7SEux30d7?%1{gIAUA|Fp9dKLQ8 zVlZ7JT0_$ifunO}5nTrHC_u^VP9>{XJP|JMbRjm5NTxA~c(_P5VC=gt&d#G$pMkn) z&04Ku+cjjyx=zigT6qnS=Vt(063O?lS2GQeTjMA40|{~)w;JFhUs-XxFdUrKKA96_ zk6NSKNh^2Kb-tIQsigDeO0SIgzm;rWi(N?4sdMUoAii-{S=;$poR;pvqk z*&th8rm67sN|DQw+-Sz%nl$$okZ$IuSALj4%F-*@r}H4a@$ei0xJVF_g)l1=!`CT&2~q@-6=|=xX%B4av9c zwB7EIr%15c5Fuz2%0ui{LBlN=rNC`?6i`jK41b5R6D&TA?iY58 zns9J{%q4wqMnBR7>5BdY(nX{ONqHK@(iKBC@xDl;6-`(CG=5x9y5hwmT`}MmzvA$n zfE>?RRE2>^T-+_o4K;gFOcYz+pVORkW-pe=A=X6=%CKO9*(an5am(TGn-Xhb_bgG)vrcVpPgT(`lg!UduLJWF3{+d7h0rgnxjx)B;X;^n0trcGnH^jKV|gJ^7rf z8eP!tsz03@ETnC6ugFiLQ9^zZ{VeM+D*InM2Up45La>O!t-;4*Jl#m%e7yHjZ@w%* zWn{i`N!WZKGMb7|ZftED44t*nHvBz|(c?*wJe>I+wji|!nItsQ;A3biNrO!^jOyi- z?(}@fzZzaz4?&gRH^RAxQtko(D>(*H_$GOTqVK3K&&x@gCld`iOL-b9F^_0Lt^iDp z|0V}l`GPm|1#?kh7VDK_vskPfO%%6q%N9z8SLjwc%dE7D4psL{7fA$8ZpghY1E=&V zPbK;>_G+dl|CyxV6=nv*e!zh27o-6V0ay1F)MQHa^96dLg>0b0liilN+Cla^ekZ`s z&d*bu`FY{m|9OPVf~zyMD&&@%RrX3JSBX_GK%)d!rJvJTb(aXNVW~-(fLBp#9{0j4 z5>s9i=~tbj>;cKn1iXSxUF|`kv2-8E^wEu-FOBGA|@ zl^QM-83bKSR3*-kl_Sj;@xFLFG%NDyDc zedBv`qdlg3{SRsy)4gh@g&GSujZ~`?;pZ!v<%UtQQSheTbV~>e02>>nd)*r3W{8vz zBJRS9*#}d>hN2i&w>K=%SskvV1Usyd@mb+pDceJ6Ji(|E_q;7P7^My1$IwV?=tvQ) zaq~ZZ0)5L7EG9sc@;~0lCXplx>4~xt$vWVuLZZ+YGYbo2!5m|4rp6NZJ`f%14CG6& z^==o#2q6~rKYcXPJeTZ>j)`gQ&%2J0f1~4y3`RIy~_2jHTG(z-gWD}W@lARyYe+LU*n?B z2f`$*0kV@&oUA=uD(vrd_cL^62b8D7F$4j~KZUsX+E`@34W@t3fQgbP@f&zqwIH-f zSl__wxtQ?FY!XRKNKZ1EkiZNkoXG+7c@FgiCcI>SWT+?;`ojnuMBS)YN1Eqi!swWo z*5k6*@yLTeDhZEhAKp{0l!V77+}kIn%s%_{0tP#T2@j;m(`ZxMG1i!0QPE|$z;0~A zRK;UBL%U`f3PBT>W`1$ zd}E5xA~lUELXDzhRp3~wqZ*_^_qO8}863i?l*%sBBZ{P!CMiO>BJb5nu4C}?NK}L7 z(v7;0;rj^&$)Wd=7P7M8nH73}2tDccFO4tgb!aM?ow-8qNk(VteGIQin432A{-72t ziUbJ>l38}EI3AJvdfKxItCOcl9M9R9 zxM3_d*2@tddKXS>;Uo6GCOc=g-EqcTUg-oOzTkVv-=EA4?vTH~iZKAsaBSgY*u%kF z#?d;n4!1e#)xyi{Hq2tvt&}Q7WI#1xh!T%)+b!)z|BpF13ljz92v9+Do|OrhIWPyc zb1;|=A1$AqUv>urbJ3mQ|B82}Z9n3x#Gyn_2NIu#ogE^rOZ2?o4~%2eIUPKo&&+r_MfW*7bta{Qhd;9XO{`?WX-k@KeFok3Tl7o3~C4Iiip zIU84|0fsF-QY&k--wpQRNcKkXJL&!GO9-c%gT;-Vy>SDY>Nez%Noj-laR40L_ZZel z&E6R2N{?gu`RXz$<~C}+dm>cIk)b4=Oo#6XGL?S{5pb`5LAsh*$9-7lNkDP*qv*iK zM^XGgVNxiOR3zK7uODlI6cm37s^paw5Dlf}X%tIA2|3=ojusP5LD`BQ*OP+6Dg*~o z%uhdg4f^EiC!stOsVCFoWi{@$8#n3nV+K{IZ6D4d z^MHg1Yb+#rwFdQ};EEzy!)eicln-Mho{#bd`Y7e2v~UO>Dm7}tR1C{*kYl54)Qh!B z)omfAgLG=eNIuK%p7C!XlPW^6`wxhKdA%;$^(Z2MJ1|%JtdN&~HTw#bjP7tS%?hG* z%mK)}hl*f*1ddTTf}+QrcFVQT+MOWkx68CJz^mhEyKUL_MLH4VE?RkPK4YANU2iGNkB>0VSe8qJFU zeah1iEdQtlOOEsOpGOB;xu9C-@_G8d4aW93y>H;<%DhLqT$zvtM4a0!t?2_kn~pD0M_MT#*GMcjZ!2?-(evuwwxTj`ZzD~&8JDLG`0 zdh&PD*hUj_%&n2}R6#P{rrKajQhSg^k!DkU3YwntO;zwE1>6GgD@h|!=tJhj3P(lX zQGKkBqhMz~5<}-X-wx5WphcGgY*kVvXMS<9Lbo&1vbdwGShR``E^&k8cZ?bmr*M+H zWZQPJ)UupbxrKcoee)+0=Ml)qX3zt@%7YBovR5-BkbfUqS%sNrv09yG=YCu|cQRma z{zl=>C)1veJTQR|s?|9hnz$0nK@wPaiJiUL??Wd*`6;GE413cE0rlO%QqXk&pnzcJ z&=rTm#Sp724*kjkaf4a9ONSB=7Lm%`g@S>)p@}aR%swT74^jB4w_+}$2Z!ljVxl5h zK}krHZAs45@=qawygWC7NV4dEFzACG)k0PDvn-47!j1swl42fxPnB6g5*yHzB&Xg) zqxf=a6JC+}eM@9~RkDmHo8G{dsP>?+OL`L9JJEDwWD{E-!JTKCa`xK;_6tyO!AS`M zQOE)Vio8mA9+OwmcT{=xQIc1JPQT502GIG~Ia&@vy^pdG2wD0gS~gIKcnq0Ou_Gc4 zA@i%HTC0Lka;a$>4byG3tU9i@!;KjAhEqf?bxxW8(hNR}$$b4z!UM}!<>-}1q)7eD znkx@1Z)UGu%k#TCGamFl%KCb!!p9YdUrf z$7stG$x8|+Pf|4X#vsGZuMoj>7rIiAZBYnSiK5ooxjQ-2=Po~(7h2L5bqN}24YPHm z&s~AO<;)%Ct4T_q+s!5cF%uKA^hBlrRmkqU%~uJNz>40|9)}{J9O*utz;fl5@O_7> zv(dyw_!z`xmaJN-4qpuNOOR)47OQ2ajC8aTvP<%cfSn9V=~I+Mz;^a(rrP&|VN#e# z{$ymzQ$9nd|8l*eBk413FnR0#zwE1Oi#TN654xDaWVzb`j-C5Cuj29%Xlwu5+i zj8wK4;PqS#@fOh+PtVH8|SI^IRf z#DyDTN3a;FqnAcH(z7AY?2nEPkSLk`(dX%V_Bi5)intP)aPd|QO;Fmytmvdlkq!yKtT5LpW(ms}&Bz4LTcqgVJ z?UH9J_F?tMP!b;nuw@lUrO>fT$uxtmMkh8RCCS3Q%2@T2%z-OV`LW0j*)5|?%@7e2h4`$|obweXx$kBqYuzSQC1IX(acc@?jf7|F zU`?Sqes3^5?DK44sn>g8b{ck9|1JFV6TW}2Eg@YjBNRM-$z~e`q(y(18IPVBLhSwY*>dTJ0s|o z=u0PEG)mcP&{R^&a%Kb(n@br%e);a#BbRFwtd!IdKUDB2h<%6*LKurlE7o5Wjp;f| zXi+eIYrpqX=#VG=yqG?Qi9fY!%P^dJtL2tq^Ob8Romz0}bqi&5adv^_ntWqAOs2nY z2K@Hi_Hw&pB3Y+bm?Pa_ZsBFLjm=svV)!msA{I^@f`ox80LjMEm+kT|Q`bPMc>3 z2M@A(FOYGNmS*3fF+{ll1hd?J*X)pkiDVrUbe3s95WB3VFw>rOXA9zTI{)=MyQg{& z_@^xwP8{H}Ygvd#xTMfCr7i?AabUY$v)}IV3mlaUobP~7-CeT5M}DE562VDg=hrzY zC(E^KG^Cjz;XX*6@iYyEj+KgAABqf_F6lBWZoMB}O(^I-fu@q6%U5wLUC!-|@vf8s zDP#xbCJ?}xTymx!1>V+RdTGaKD+-YyWpM2^Yr&EA=};O7n_#Oi9;B{5uf<^02>l$r zEiL>R8z^R^N$Dy1>U4pWK*(RGDf@(c$?Y)_CJp+ZT1Z44DY`o|zlxqFB;`$q6jI)l z=g!P@N={mExOpd%@{y@AWqN2sMX@&ihD=QLD*&Ewuhij3DVbKI)Tm)sE>hX(R>{J> zn6_IgR;i4KDsZCY`gQEo@Er2({_oMd*zV7Hrs5$WGTq9SCmL!eJob8kn#TN{sDfu% zhHICL1|s3Lx>YxdNJ_Smo?LM%P4YD*#aNYnR4MhoffwHHo7^~3+@ zP#~8MIm^l2!&Vk{6+Kp{(djKTmA1Ndl#}C3LBZAl(n=Cf6wpvSV)5nZJE|MKO!2D; zNDCuP(lo@{OH;8H19hI%6b>pnwMh%+(y3WN{rX0;+-ev_!>Cnp=|H7ftvAZm8r|ee zX9UtEAkjH@{ysi~8t7H-{3Xed)hiF-+{|9xfFzQ)p(B~!(#bX^$bO8P#spc-!L?hC zTZd?`7!}KIRxA|m!{sEkTCG&9v-8RcDc6c1JEmlZsANXxm|^&EGt0Dxt8nDN#}iVb z5MWu6@|=ky@5v1zNxHq8;U^uKa-4kJx=Zgv-*TLsDF{i4Bky99NMdYyB4b@;Y*sZc zWbC{U$3PRb4B7fKkx6NwHwIf@3bv-@a<+C%yHPG1j$=6`1bppAvDqxqZE@9N({xL@ zFA@1=2HW&0N^DJhG8S9w99}dK}=^qcV<;js-gBW= z1U6jt{#$P(5AR%IznI_tV}}a2I_|)pAG8Jn#}zfW zlBQg=ZOU!_KkU5;oMl&4FWezLrIPL>BBmdp%%UxAZ@3&yNRfi#!+ zB3=-ir(^(0d*+Ti$<;U|k`sd(-+wCh%hzEgeEa-4`o*?S_Uk0rKCeIxN)&x%%y~fg z4oVZYJl5Dj^9{$biC)5ldcN<;E3Pi+~1Xv+`7g5JF~7< zm&UQbg-}%TMLutvePDKes&K&t0To*%+_)9h2&ypOO`6qa9&yDL5`y$o0qjq*RTcqk z=t}qTVKjyOGa@)PbF|8__WAQmm_r0}d>h@1t-g@xWlYC;1;k^9cF5U7RKA@SQc(f; z@ja9#VR1QHS+)Z_cmT&zV>e||riu{EO*ze-qjAi_FmN4`Op~@RlVt}%1UK@D=#E%Q zTT-wP6*jSY>FDWbbiH9p?i8G^O&jEy*2FnG8Sw)X)Inx;Wa~5hYG+sjm?WnABFL{s zaLU)NI7-_YGP0m6*T(2DHts-E&Dh8@9v8*yL)y+Ce{cws=!PLtmKHzoS{6AVaH#pw zesE$BFd_Ug)ACe3qN+>+kFP|21%z=GA)XV)g(XyL5K4=_2g^y7!%Zl}6QzW5B?F4t zfi3|ZgmN{S>V(3^sYxhWpvgr{b`|riMnc0$T08`&j!`2-#O70nc(>D$Xnp^O5Nkqh z?*zRtY$C^h)Qr4d8U)>Dn1r2fyVVVvVK}IuwzsF6)zo(N;Rv-o`>;@LXK&RuIX!}C zND&@>AO9E{D(!os9?rd^NX0b2>1zA4vau!lHo2seLv6>RY_(k=jVi_v($?za+j3{J zys|jIBo&S9Zw0~^XUizkY;?9!$4uegdl5CwS;ad@nhc*_vx}k;9y0U>p5Kq+pxeil z2Bhz0R5i*fKA($~#EBYlK~!Fb{CM)p7_sL9EadZW_Tg4pUT;KfsgI^Y{9eF59qscou4oD3G@dD_ejZ(x>laQr_gQM1lXFqiPgC61YT@3N zmvrMnf|AU=PN#{&EGXessTTMpdto^Y!nx!g6dm1FAiuZ)-1J#pVK$O%oaf1DWj^1Y zwfX#u-m*)#hkwU{izy^7a`avxBOY;8MH#V?KCGnejg}D`(AOGe#C9}Yw~Sy1gKE-& zs%c4pGwEO?Bav^U3OpXhr!oH(NEVFmA>TphwS%OW3_QQx8F<}hJZR!a7)N1B+p{UK zb=DwmW;W&>!*8I=QJ)INC;q9$_~i?y2?(#CRAxs*iy8^TraageHxh4AOWm0xxt7M%j3)&mM>2v;^SXJZg9b&(0BwJRcOiQ9I~MvI!TR z6l(bf)!K(Ire1BE;g8_qdTfRz)W@BJuS4g;Vpy5q!wD!t-W7J2vjgmf7z;8K$@7yI%BvAnjR?_p4hX;9JyU4kL)UeIYAnp!eVd(g*w3!hz{HsWWs$akqQLE%EoSr^_Tbi@W z2M(Zu;WDL2l^?>~xj2ivl`*WJDBpUJXJ4i4sJLb+vbrNL7c1=zW9xD-iwocAf!ze3 zYTUiVf{!Qo1#{sS%t{=f5E9zZJ@IJ@SLQcDInKzG`Ka;-uzH5RG|75f zVcc)!XtA(zlBldKi zFqM?B5n-w`IY*vUavNK_()%6^#+BaRqF+quWxq}W zrFW;H*UYC2rNMA!IJstSnnkN|D84*Zkkv6HS%LDqIXD_1jfva}d*g9>!l%*K`} zgl8@gheq1#AEW(7+W71alcr>xX|)e#HqBfQ51?mp&6*k8Fj_AnXs2 zp|PC?y#RGeQLdrg>qSw&Pk}OqhQ14N7fjpcDl~!)tP>5%%f-Xy^?<2dqudF{Xr@?x zDu?J&ZnUF=c2QHVDp`x}4*X6W#Z6q%4!v%>6C~|+A6G?#Rx?CRR%W?dQ;nP~2u0|u z+23kGd)Kfa5tQ;IYMOJ_`U5XQ>g7QfK~5CvG@v?IksrlL82G&wyP+^DD1}|$sDMh- zTU)gi#KC2Bw#5Kd(f;hpP_j&n#eo8X6gGkW??%sp_Pb5whwY;5Hf{!cxDbqs9igAL zT3xCt)@3!T%FhBMGKIhJPIT!~2a#4fh5cw7~ z)eeyr<9cY<*G`dITu-)AA}bNhBUpigd5()!J7;S~2|C$}`uu71DcGyoYPS6L!0#gJ z(u)!t5B)R_T7yp9!#?9t*{(|L_3{w_)!2)ubj<9v`OW|}0JAVd`KO|tzZ6iE2dMHj zscl~{)t^(-98;zJxP!BGk|s!_-)zQy7v+=EDD}Ew3jsKExp^d0U48TZ{de5>K$NgL zN0j(p?7%2e#!O$@cH2mUS<1Ayv~V~&KcjE`0zPA-q6_$6W|P1smdmU`Z*+NTO0O$wf*d2%X`(=TdfS|a z170<_nSyI*fr6V+(5usLMx;6=p4Ux%KaLRwi_kD!!uR`?D?EIWL9={{8aESr)Z%7! z%(9Pa)T;=tk-DJdS9c>3TqBP{#f>J1rve48EBExC+eogVU(80rew_q1k|)a4aWP%- zO^+R*l!c{s5-N9y6IpB|Pt;qE!&c&vldy1FOEbun2=^tc08j3K*PQm)0anILv74zlen(sD)sRUXK&~Fi6$SptnTLJ!U?uEDj|0^7ZRSMO= z*FB00Tw)X>m}V0bBXU*ZFSVu*yGL6?sd_$%^8Lp_V^tdEuCo?$sOo8WD^|E3)8qwZ zQd`_-{d@E;%#+1(Nt!5k6p1v`OesYSl$6^AVordW^6M7P>zXP5&1zrAO!@6>S#`~n z*{loAl-b+*X3B?in*(D1uYiEiK>Mg0gSde%6wtQUi{l_k{IDH_1H==A?N*XARlac# zOE8b~4r;k(zWW9zE);pa@%H`uZhAJIh>(mN$(Jdi3C|>tk9h|9iP^MqY+hmkOv@}MA@>s(_2cemJyYU$W~gz$s;+2=9aCuMRzyfU{udt@$|(8uD=5|L;b z8`nubOC{LBwsDmz#%^aRjO}Q!7Mrt#{g}RRCdqLZ4w_0I0ZQ_jEi{My>A(K@I zGVISyvLwbREDYE-W)B0pl$nNud}%I8jx4dv)?Hu}D2f%F>o-(OpIrCS$t!CuJ@JF6 z>7lkcvJ!f&2!)Y41Eetv15`{3k=~5xd4wxHO9W%u=<{Kr>O*78b9@NOEP1QIa=jBQ z72-#)Mh7k}%QEij@uU50Y)M@cuAUrsR0~qe2zsSdw}dnxVomOVi93SD02euv#ms)B zKT?1Uv&9st;ZDQs0cu)cLu&S-wA1NCEmUDmTS0r!C(jPCSu+gEZmO=O2?(xx&R$r6>T4igf%QXuY>!JkH+TBXa2vzvOLVD`ewFw+c5&qE{TxihO( z(__PsV;Go6RiSBegMmoE=gngJBVzRf=hHP+k zc21Oj7IPRuTyi*)Ens=jYPg-^=$HF zJ+A&5o4nbBL1dd3lQdq4jt{SbVM4ce55I?|zgX$N*z0de{C-{&FMzX z9*&EUy3HW&d8t1LQ7|?M!+sP70o5@ey?d0?`iG_{X-XgvV$3Q^I^zVaF2+U`C5_RO zOZj%FCW~mQ39(8=NsAPd(xRl(1#@#2CB4@P7DG1IkPTF@_*v*#$cD&op+GuEUvKJ1eV^qgDwj#b@InE&yI^(t6zNmJ#l#G?xY#X5gf~r|X^S0W_Edy7 zONyk;{)d9f7qg`l9pIgwrq7|NOL!J~0X|c?QO*mXpg#OG&Dy?h_lJ169xp&a zWiB3_ys=9MNcaejuUgb4?fz#PSTha&a;}i0e?-%+c1!(P4QS1|Y*Vi4q>D+eIH~za zvm|G=N%_3lfkVhj{S)EQLLoT!iuqA7qilpbEFPBhpXk?E=Q%xhQ7=%d7 ztr?5-AVdKW?H1d^A?_h32xIv$eH)MEYK}Tj2scI-9g@66-xKr`GDzriVZV(+UxT36 zM{raeAD z4!@S#fVT=+w;B}-mD1(fiKDZ~Gl=}Y$>QR|;#33IS*Z>(>wy(Tb`(0LxIvz9kSswI zHNy`yx1{%5wg`aJH1X5-e14xhkaa03ZoRB@5oELlp3KNxddQQHC7Q z@$(%gstiC^F-i(Rk;8(PD@0Nn#I0VZ+r>Q-$R-cQ$RuoqX_};iRv&Cw)nW185wt*j zAdHeE4JsNX-^@N8?OKpGbOhzgKNTz=-7}f2oM>~x>rvD+C%ih)@Y7x|Y{u~BCdd$; zq99>69r(Ck=(S>Yhjx_kI;o0f_9{b26KNeZa_w2V@3L;OOdoygcXgOnSaetCDmIBC zwx&0RXf*<%EarT;ie=tqO{$y}tw^Zidw7Da$=5*36>J@ZQ8R20Jg?vBctH=fx;xzz z4zRG@M|4o9a&wy8wp>7G!_;&njGGOsk(0N z(0lG{cnSStz6SQ|B=9vnAqsF%r&^gyOTodUJSpx)y0^hldoWiBE|8 zMqtI@>nd6Oe#L5J616j{AC2cCZPQ#YDrNp$Hs0zp$KmNH1UL6_7`~k|i*N$zn0u~v z$KTDSTI9*7<=;`O9{vvXYI_=v_}!Y1R+!MI7B}3z;A?*Qx-YmTYlC6I@Z;P zLfv19X-iROQnjumD#eCdHcu>70-~Q1QxjVfLM=MIBy9VGCJL!^krZ&y$JsALZE>&J zX|m(q$k68&ho5O(EQ(o{9~wKp<3nJip^!e|zv4>xz zpKDK@+nPeO3s^v_swsOENOOrgYAJSE$uW}j%&oaf>fCeta-ThqezAR){W>Z3*_mMe zU~=HdVzQLXM@gwy-`r=-M&sCL+f4AA{Z3wiGAzilbpPz~v1=*BXIEnh_aRo6*dNm6 zU;S3>6u_@_Tzlb#*fVn<2?M$PTygU?*`(LK z>8bS(uclu4u52V0d$bc{%(gsf#w66aM0%%lEzWwLx1*^`CYid8xb*r|*2tXiHiIC= zii~KAt?~=@5)xNEP-q#tm*Tocn(|pyxkmbcdlc6-QZb6Lv8d2Mtcw4kR`gQ$SZlaM z%BNt;TVty?nACx@(>1A4gt5*1y~LONQ?2b6-D`7U>*uRu>mBY>| z0nf(BWZN}U5q?Q@EmfDgcYOcZYG3D$@7J(K77I zB-5HHqK|zowmsw4lG00rLqR=Ibn~Rj0H!mO@Bv~LDR;~pv*x#AH z!X5H{)07UZqKi(?qVc$fe1`t5Hq>*hDVawC{ieX^^mxx;t2TSk^%aMsFh*0&QCKlD zjrO79$TV}ggc))DN$@h=+0Kw;l(Vy84;&eO#)9{`TaWfPrl0Yt6g5;x(bLmJ)2M+^ zkE$`n3rqXdaQ)vcTpJOLt6SyhQVp~f+?QF+%MnfRKFUiJ*kfX@msek&Vne$hrRdmq zC@Z;B1Q}3TLqe9=r+Seev^rrgXm|Qv-0X)jDqIYLC`Ii-zZp_-%<^$*(QL!mF&v;v z*I|o36?Zp#?9-8VH*vw5&i$I8yo){HB68n+JR6}V#u6%GARmVK77lE#gCV;Gi~i#l z1XwQTCwS{A*fwWLh_aj*!e}{Z<^q(50qJw)ooiI}-dbcK1mwHfvOx^y#ZG!$ML^o$ znF8{xOhEEw7Kz3`qmj61+|0kymh?$$8YZRJ6N(>WD>ZwlC=@@9rsEWfa-n%~cslqX zLx~{{ZAjbVu;6`89NOQQ;_&W@)GNi)E{esUpV%ENFE8$%o-!zz)p0?37fH&P?aqqb zYv}*3h5njy@|1x|#O1ix#rzz>Eb|d+PJXn_R3UziP8k=}Uo|*y#=rr4LFhJm3 zJ52m`FO1rem-HgI`upTbDIb?sCU&FW93g?|Q)4%B_bM(KcPjKMB7x|jF>0>jlJR5M zr(=i&ns!pJE`XK8Oq`4Eqo%oYQRs#3Hja4_!lt}tyEjM>)R~4s0-Yg1eut8Ck#VfO zVc-1y!Q5=TM@HTwc`u^!ABqMh6`_ahB+o!QC2ZvFa>v-MRpdUrwdTbEm>!R48MK%e@%-r5XZ*+~q z+Nl7xRD$LqDiUS+wqfG%B> zM?@+l5V3SE2~@st>Qw|SNn?=Q1%}_+rlESvjSmEr!%Sj1`&%*GCn_UZ38`;l48T*3 zJrrk|vjlkk0MJCSi#S3yXXIN8BLs!{{UB+zI%&^iHmNP!wTT`&h(uP6YqRXXPr;v) zm(t}SCVTeWvG3B$CwSQ+;jyz#yGz_DDI<}DMll=D!C@)M{aPA@yDUML59^p5-~ifZ z0q-S8?7eb=4R-)S4-U`AzpGGhaF1%fb9{Iq{(J%Rs&B?G+9R-C!7_NZh7g#?jPQo* zxs5Vz%+5EEPmnSZHc-}fH?p=LMuNeZOaJsx<4|(!D3UMpc#}*96$L_!rOQcE5?)X? zO-a7xA1HeMwv(Pkd&6lXW0Ldp_W4cy*qr!wu3jJp_^Mf*r}} zGxSE9yxX)J!)ljy3@v$ei|Ag0;8YBzHQr`5t|X#qM5b3>P&#P^PkVahQfY)Z&M0+< z0J2mu2g#s0Ak#c5r360g*FiGyda!jgQ(W0_=drQI)WcZ5UWCVT`0xyV+XZ`Y=@K6w zo{cmRtEU#!fEH{=iy=8UO0tVU7U^h`;@X7fw!cb#=?G`1Ys-} zvs;~|!7FD=(aeKPlIYMlLRQYqdYhzbU@{)%LGW^>@N8lelN==eQWX9yClA#MN!*`x zwR-nBqEkXG<%C#7LBI#E21;jXGfYBzZUjfD=MYQ$4+V{dYzalND$Z0BhtSle45_V+ z6c`aJaIkWtocCEldzjL!?EuiH;o*9`&!=UyB{EFE5*-Skv!EjBY2G4eUoUkh=L8Ay zbedkph|jO(@<{}7O!e&!&Mkz2xP48@g6U931k%`JzQUPpY4-5!T!6&E3uq@w;!d$C zQf*_Fu6Tmg>BHU+T_9*2Nfxh^sU^Z-30)+tx=RCfBJs!K%Dl{L%&u=Q96lV(Bjj`j zT)f1y7Q_F@l#AJP7M;>tJ^=iu3lk`gyog)hqM4XDg{q2^Bq+H+G?hG@kxzijnx?lHEJilkJjk?Kw8%EdtrBh@?6R5wzwaYh-b zh@gv|SAxEYQMuRZL<%%;2%(7SB(FT#2vi~3CL?q6F1F_|``6Clhp;>mYw{ZU30WZ2 zp9Dqqyv~5Gbu~TDkHaPkT6It?v4;wR{SHezZlrejidp(H3Q&6-=Okp%3}M1)Aos-h!sCeW=h{^ybQqa@HaR^5H`? zYuj4%GCW+5wP<^0E#k1}*AzaAUWLg>Cn{+-Iz!Q(c{xE&5h7)kW?Rj8^sHIfJq6ZeO$5Zg}3|rJG*^p$)K~}wUmgO6s zX1V&N;A-OMQlm%8FesA?9z{eI*@@U`mD`tKc@mii7ZxW(y0j^AMnpb<`2(;^v2ZJq z4v<&ZVn_aeJgGQYHfD1KpQSVmC49E4IG(o%Mj!D=2`)zWO7 z;5$_jY9^UGBJEhpcJ-n%kbnL~Z=k+er=Ne(8&4S6HAV4Lf?DK`V%oaSkx(RJ6$mQO zP5%#d!gbR#)R&-8B@91njbkcBw$%$&ie^eR(odr+mn3jly}p8`+Bu?H(m&$KVyoAL zTCAQ=^hAqjFgc-(of>Z*7r$t@a?`{Gk|u1XG^ge|sAB`V zS|fFAN7FG<$C=iOH4+(q5BL)Xz6_PmC)4?QL=(G6v{vDySk*?qsbm(PA%xvhTh=FN zh01Q(Mp6ajR2W447Agz{T|@|aQ8MTa+KJz3b@O)1527N=JnA0u67hgcW}zejn>Qum zDm((u$boTiaRJGzmsY|^I1mm8B&Q*)5uyMKBelmb`d)l7L2_OOuBnE&hqHpu7s#u@ zZ}D&uNKTMZ8yIH>Bb4qx!-~kl_-H3)G&ypW#ntBCQpq|spe{!5luC@QPDb8zO58lrvzthh3qG=GTDC=RV9BAL|+-j71f9P2#s#_;Q)Oyo(fK}m`|QFz>A7e@ajoQa=*q=M4&n0_G}VO<8)uX` zy?m3&dF-X!A+sdGQ#hq6Qj#W_+{mc3?SGIUUb^jnh~8G(3`TGJA7CprFGzP+0<~=Wtq!}~ zWH_bvE2k8*xH8Yw(HX>-P^QFUrC6$p2WI3nIkdu&`AB>_#4bbQDxrFpleubnnVyz)HJ%KdR|S`(_r=VHVEIo=dmP z7C|?9IIo-&IP6vdSDb=Iri*&~Uh0{=4dnY?P8R18!%LTy5*9{>ry)%7QtVXxT2af7 zim6EME#C%|DCV}k6H5|+(gR{@LcZf-9WH-$!tNjpJfyV8^}D3kLtRp@jr8_Gn=Y>! z=Cz0RqyQHHH_JRv3{W^VQzSC%e9Skqh)}{yQ4nF_2z*EJrMnulQ%K4q?AfzR2co$J zT*RMd=0Npy5h-<#O%vQ_WWd7o^i9Fs5~V!}<`(7;HnN*%_y`Uni8$2U!)XGkc7am; zg8wzurV4jZHd(lX#B?>@|0xTb=CS8&wFI#+MmA=w@@uFIE?Q2{AYhz+UTY0vl8k-& zae8iEjjmj(hvW3~5SnVrb~V!rajfRKc`dHBuAY{yQn$xHNQ>n8vIwZ`?6Zl{L1l2C zrNGT8rU2T%L&I=rPhcMGI|JD7rw=L}ZAO-4dM{gti7j2%asd0oXgU^PZO15||-_q}y$_+HC}x(V9jTEKzAr&8wH* z?xiC$v-1xefCj%1FGL4ufq1aI#D49bzIXSLWB2Y}2#5FXzL%x4x_4US-Z8Flp0fep zZJ_Tq?B2k>+aNyElNzjU$5-^xZk`pZKmt7Kx=aGt$*L}=V#b zWBp1M(2K+@Uz|DxBi{oQG;H(d7R=3A0sSl|Sad$JZg&<}B@w(u#_u!Gv(Pqzw3P;J zuN}0a#0%0v;5B1}J$fF}mjr1@r^#|jN~>f_(vIP21*_AiNS}%e{=^KU!u~{xk$+{M zx+fqm_)B>q6})n(LsJoFI;o%*HyVAWJ4k?J70_qs7dz9jUnj?z4oY3sGaWu1)4Kzg&ivn8a{y0#&D!0!0;pGJJ6vzQqptnNQpn88xos} znjmtq5M9p`(5!N#teJuMw?)@d7}U)`{CigWIvI#Rm@TVr2I6eig&BymxAij+kEKG6 zZ3!Vvi~aE3V#(61IY6amq^)hi1?zSDD8D&?1-BD51E@*8h$(o+vG?&MCl?+-f2-Oy@w{kYR< zrD2S6ey!9G(}zKO{pK3hCA8Onp{60daF{o zy&oFw^}Oo=0xsZf?e%beTH+L*(re$fQ+g0X`bf#Rr8d`mt=hu_NV{Q-BpiFGsm(A`Bt5*&k|~e|U6oQ3~AgKGhCsj+@A7o z(Tms$dcCL(u^)PAyWCk0~E``8b+Tm7s#c!v_Pmo6=YaR>g!y z%+v7wr$Ux~9Fyas_0Q-R6Rqsm`b4Xm(y*@y8!mum$`sYrEr^y~oK2RFlOWoQhO3Ve z8gr?6;2cxJvf_y@Al}WQdM&UVoSnmlFyK6- zQQB&q5@=^UiA$Yg+&D|1ZADWT!~K8<)9P zll#eDY-05q}tW-KdhSEprCRkvPAhQmJmcY>n}_u)x%Bd%$^ z8d}J#YrR^r+SjpOEsD0pv72Ttnz>@;{L;;6=GvL-R%Rw|C!w%on9aJ-dX>GcZ@oIf z(i~GiC>AaB4S$Vz78@se7EsYi#4nkN^yIrrJ#*r8Kq2CP=6PuTQFEO^K)5=4&;tAr6Xuua}(C6p9Z{`nL&7YBIyMzeSP zrPZ@}xYMJvM&E__B%8e1gRZtX46mO>Q_b*N@h$`@5joQk&(c&=J}o zY;%mhEc#T0j{Fk)bo9Qq`A*8dneA!vPX*M+>@h`HxtLJfwAjxsqNch1EJ+c$mIhIr zcKcq-PX|rE*X^S^X_zzzt$tb9*IKG}zT_#;xsC?MZeLiwX<-ElC5qVWM_}$j{+Ko% zp{QwoQ(4R=r500-yO)rd3^@d5srU`Dol^QTQt4(E7mmW+O34cF4>m)la|+*U1C=Nm z3oFaP!RkeDthvfl>zVd*g_>(Cqek1QcB7Gt+*YwErt!j>ir`$2zV#wFOwJb-!RfI{ z6bWp4W9*p5dH%US80=x9KY)=HqMu^{rJM&VITM9oI}?J9z%2wDEXN)y9QQlEhw3(Q z)9>~YKaB%~APia&tEQ_=3q@`@A2q5WPIJ^@d7hU*eLA%2b zqsk8Zd^uP=m@FS3{&##{i3^XhNfdD*y(#CyDdNJ)u;(SHFv^v+nrXW38?4!s(^ehw zKMUkf>lEbQLfPn`+lhi!GlEOKhl?j^yW1Q@9aQ~J`((hVME>_Ppq5WDNB-_!MG3nr zEA%Rq1ln~+&9$bIU_^wA1BvlWal^+jx=uOefXJx}AEl-_b)nTmk@9X2@$PZkLyUMB zMIEX%h>C-Kh%CC(`kyCC{A&aPap0p8xEd3D-3eIzz&9#N{Hy56sR3+e8bEY>c-1LF zv*Te;D=&WIcQbcWv`T`A>(>bkDY>l5OSe>oE3oa&RsKv!@F(RVGrL|1D zq}+`}l(@9o7dM*Z+tX&c0JadD$@{o7n6@u*^Y_X4#c%%7uk|^Dh0Aq)j^IYbtk4JI z!=OCjG z11uL;=mS121HRO=v?ppy39>1!+YhW(JDjFo3;e(v2@PyMrYBWk3p z&Z#@ABrTz-ORSjK6u!iT%8hcq#6r+0`7nGcx?YbjahpNxA`bqw=u~(UHPlOg;^`TE znDOuubr90Gq64D-6W~#NljvHCy}BO7w_EM&cog57Evv3aF`IRvM=^U_-=lcKr30|} zMzL(M?M5lW#M^$m+l$~+j1be*4*K2Bpc%E2wB@r@A4W|4mCC0mP3u!P+(zXh=aac< zd0QKX8sc%4mv=%n(-f|cTKF?gkE`bt48Wy^eo=M!7t{$?=uXRKq7Cv_)*z-Dp=))c z&G>(gzFZQ+VaER)nreDoMKeBeuV%)-Xyb+rKRJBuBS>ddYgJ0#@Q?AmaN7}ZnZM+$ z99ER{v@xKhk!^lZX9=ch?bL^|hzhD)uhZ!^aoZ1tl+qAov72BC0ig!3jY^V%IoFDU>@PClx7rPrSMA~URYY5IFc-&z-|^c zINnYb$o_*sTpEq9>zZXC+mz?SW{A*ol$(kpmR86QyFI_%LY#R!#WhKfU3D-D$)2|- zj^Va5%gFMzn?W9~4-Lbg<3nt_C2tj2&fV(*i>UVceNe6u%Sfavs=c0t4xGGYIu!H* zqi1AeOR7B0)e|o;dWI-4ikg1Nz*t^hRIn7?Y9%^9;oj|jwwNMateC!pH^8H&x#NAe zgMuk>9OEd3P}NR9KsB>oic3#zI0%9^yZ1E8yWJvj-k7{=e&J|37aU5Mcbkk&>^T|v znHt&%8aLd=#7&`l*r~|fR(ah-G{Pyo4~+_(!t_|@QFCK?tlU^$D9;^17)@nsD{>PD z)S=j9vJbUQCb9-x&n9z#t;y^`N4sN_IgF<3-elPJk{!tm(CE1)1Yev1zR0j(IFD^4 z6j?#-Z%pU$qeoL1Ivw$q5>Y?lM3MnwQ`QtaF9iTj7XT0%RX6CgS_p`N_#SvDz<@Ry^| z9=LE4kzoZS=58QKto$nll;5umluEWTL1NoMVjo1$g2ZA-Z}`WlGG*6;jW$f8w4VlX zr`bxIY4tm4??;!eeNrPa!q}Ke%&=~|E#6vUcaaCCip5(~z-jg-S(Tq%^zfwN|4Xx@#>R<8J_X@vgD4`~cmrCMYM}K_ zG^e017Y#Tzo9$@2?#-s^iH1C>{~^f0Io}$RoBI4N`V?&CB?;K69U(;yBsY0Kl4cqw z-MEFwlir|L)dc-5bm^L+##Tg~wb;tNbqEu*JdR1Tio20aRAL=#%toWHdhP=?a1-=X z=@&CWvtK8H3Hot-1319SSCm?zFOb@xW=3Nz#$kwlvfb$gR{b$lGpmdlBkR%RZ5a z)1D}_eZ;*;*X6N4sE)S3bdTafn;4}!+P>f(YYk}QQy2rCJp!kYmX|)p!#(y5zl6I`Q$=1gR>Ga;`D8pA4T%P-0SE^)!4A z9wd;`;-*az8g41*CJx%D>afRdfFjW_}ubVM!ymRBYjf$phJ=!=(|ZjaYz=2yP%B|KC)bU{g#Is;_U%!bS+p>qAp73 zMR7zY{(ppb;_@FmPMOj-l{q}vY2EOMmUu?;HUYw~Hc@^Bvmd$~ zEQc7h&1SmNVp*hg2g|{1?4bbhCKplHbFhdWHwvVka0kn)vc(iB?K(tq)}&Wb)0{Oa zYKCF2(~kQc_%{d08Qes5uVyFcBhVX;b-J%o6hFC^>lRaV0KsLw<;Bbc!=5003WG{yKC(g}mL6nR{JpIUR7eJVcDwue8o z`ZXz9m(HUd`X6FbH+#@2z#*PLj;5M;uISJ&lFw{?1W$1-PcQ^|95c`wo)sIi5Ffc~ zdGcMpj7zKmJ* zPipY2aa0#vVLVevIQ=G*>&j_c){ttHbk|nyY z{JkQ{+ni`LkWfP|ObDO}xzHN~DWpIzO>k>J?Ix6AJPkTYuZu*lxWr#oE^Hh@C-vpR zJ2C@~CKYbQx$GXC*6!o7VNZh{)PzXbcLU3ek)Xs0HwW|hC%(I@Fe#|@2mxAN*wr{3 z9HOiGI0vFeGue;j>2Yd;g;uc}|6xLJ=N3Ygy^)7YT)8A;8HH9I36@ZyrBG$i3{HYk zwI>SCM=Il46FqYb-XJXVT0cFuM9=n2^f2IQTw;G*B7XqxB2D8bX(%Co@QK#%%dAP5 z(xaaIc_~|`*@Hp)qD$PnIu=MEW+P!xr(zmtfi|K3FgzP;Q+ z_mstjl_P~xR~mGMY?6N};D5OmZpC5k3k(RrXpT+kjV^LcHr-cef%0rOm0Rib6u+!W zNoIG|=~82f@7fd9V=7iJatvNz8$9(Xne;z9H(PDcP4wNkf-caPix3^B&NI<;-Ftx+ zbWyP8{Qht@_)!8qZ?BVYq+x12GJwV;iWD*c+MM4^x`QA>%u~NR7__@lI0#cjv^FE( z3#zJjpJU|jmV(ByuY5HGCvkW9p$dmd5v)fhq)|sy5v;e$&z;XaRhcDaBItXyXRBFo zo{$vT-%3>6?xbE_56RiQZlR_*n^(6PcG6zEA0rUW>kN8+ci02}RKq^qdsT(pZ!k=I0seD-qP|Dtsykittj4pxlC0gtAF5&gi{`q_GHPlit|k zMw7#LV5+N*+tl=)hq8T&ez8zC_UmK{WusGmy-+r4F^*8SD|KHwo5mHpSmJh6QAMt& zYp15BcEP|9C-h53tyRBm{eJ=Taz)G7s*GH};?+^k?eRC40qvbh#{qG}cHQp+BGmwGJ-le@@)CZ-r$5pi`Aai4Xw3u(?o+-IPv zYtt%>rP|6GnSpRTIFE^JBThy=hZ0~%@J+fW?h2c_Y+MuHD%nP0!JIw4%ue_04@E#v zTKnv;;Se+;mrl7>4uoH7l-u2-xZ;+?C`QoNsSpct9QIp{bgz4)HH3We36$?Om8om1 zlxT%WqL*?_D4Bsj)S_10i*k|JbE_li#qLpDND`w|Mbgi>M_L1t_ypF3q$-Va(Po9h zQuQ?a0wn0zqRrSwz%#qQ3y`y;&DiT)v>Dr0jS7WQs^jGFC9!Q(i8ia5ZtG@b z_#>-*os0~BAllMqP%p=OHtWKS4B6ZI85tf94FU*#pIEs#4i1ubpAsO2sCDPHdpH^< z{ch50<0?vkD!S}!ZJb;lwU?VRuGo7j+=;QNNvxq0NM=RWxw`f_Or4wKpU(6qkEjCfTGq|;1hVx5|q>w$&FCl8;G1h z)>YV}kvib;0+Oo2*fQT}HM!pqB!owl8yp!~7mhObqP*M9l-{Lm>mE~YYM;DdpG$`{ z6o0!erT`KpRFkmNx5JI!#B?BZqYD27cI)kLsA9VU8M$5%D5vVY}K6wO|=~LlZxSoAFGNA0o z>9nWCjD*Kf%tghL9XYm}J-Kpj_7Dn1ghS--MRAEED4Ie=SP&0FA)(aARO7BBY3!Yw z#q+xciPJarBPew?6o#2kW7<{L-p(mcXJk_V_lOG!Y;M%SVAEtRpRvGnPOnO)MFUDief-MNaF}KhJB=|F(0z#U@~$&HRc0snPv|L z9hXOed=yQ`BMLV06%zDC9Ejiy^1EksV4;JQ4s=C-UTdpeWN9y6fP;Z>Z&MjJ@Ht@e% z1DgaRNDdM`KEApY|6WO8GxLHHaz$dLe@16(RGq(%rW(y{WaAXMC~!l0{u^t#E1VRo)PpHUIY7e)ORlb*2a-eDxBY7hB z@LoF{1ify@Z($FQT44}*9Um#@Vq|j&gI?vJ@LwFkDn!Kf_VE2=3^XrnuqU+j2FRa( z_{bb8Wl&HMzyHUtagd(G(`fCn)4a8&ykd>pWrDoRNx%9AL@N{;_tO}q=C)*dtn-4& zeWNt)gVefEZ#vsm5d#uXR{l=F+$+@pT4TV-vL@ z3()5_QTrQn6TO)>uv+vrF)=mO&@GpcPHo{igh$ci%B_zA=v^xVN0OC3EMqCHX7;#j- zMfIVs4isGY%RU6i^49^`TLqT4I>AyQ-{LQ$1LsC$9;x)}fN#pimLNXc)sy2oAQr{8 z9lE^8g-X_=K$`3HRcFT_A|U1w1kmiaVJYhjI({ca2w5vYhOsn6s7P;)A zL9gHLq#^3!z?2mx-N5fsUb9v=iDAL(_$5Xy)4oXpidiYMjBi=3QZi{S4%`otg=`sirMvGd`Q3uryqb7MLDlwHm0-VHuf~kl$$IMi+ zqM;xh`KJ<4FA`9c2lnzcym|lrJ8pa+O4xl~y6M6Ag6}Z6>%nUBDl@5m6``p9**2p)sUTZV736-gGUN!w z;^6iMhT?J{*9bbzRX%$Ned|%C?BG)rW%@cciJ~J6y)h1uhFZMC0bcZ0_F94L16KDA zIMiU=3&6NEalyFAz}io`O+Rc#sTU%9udWgN6Z({m_3Y=nUppEFbw?%XYWto9=L4$xddE|wjbRi$pJ@#zDLVIDA?Wj!5v0-dXGZ`^r|IE)@NtoqvZR{d7x8%|n*KDK zL=jEXn{t}=){Fp*wYJ6z+~2pRR!(enw8IO*5432(5AC?wf^OKuxf;4ng5Au+1rZ#t zk$WCWBjrx5#1DVNAY4Ah96z{w700PpR_Il1kF?*6nyYb~a!){nvCE(YxdFNxi7<8< z=2hHil2f@OjGefEhp}IMD}J#scJ}Ke2xGr2PUe#3vv?$R}YLoXx&(1VbuCI>l1zgu%0TB5@ypa zI&jvCTURR|2Gnao-1=sY6t=UN5#PoeBWhZI0~sp+R7-fkxddl!#AP&f>E$MdMdsEc zl^f-vRSQ9+B*^dO-PyDJ1I#tp2*yzD~gE+p=ZV4Oq=)T^O*My{#Xx`mjh3VDuNn(#7^4Qf2v04C}cE zgND}|q)5p$NWCBoQE%R-%D$$RynAPI|H7e!a#*U6RcJ}r45oKA?!NQZU8INZyMY{I z_=HOUp_782VaCatYZi+CWg*ive<%})7>G-h2Vi=ZS^tKANj-4sx0!#Xb^q5^_ok4q zX8`#W`f>>ohXLg8(6qh*gqXQFo>eZCbSn`L@+Y)X9?(iKW#0KmIq;(7s*M6Ar$$D) zYJ*zj<@bE5)qty=?a1pRh_e}>mQkSm zp|F(6;F0<9G`jgdK~sw!Fv;@qm1b5zt6Oi&X!T5MA==;*^p!SvInh$+0s$!>NOF|C zGdqTx(bXDh_FOd8Xm%qTr|5{Lhc1+p>_rYF>R}9mq$neBhzD@+er81 z3(y9%KQiS(m2E1aVam3tgVr3%Iev5?MZ}hA_Mj7lW1D&|nrbXxF_5C1=gYS#$^@tI zu}hEObAx(Ru*!o9%q)CbvCL165yn5Ub{M~A958+@r2DEJ9xf!O0a_y>)P^i5-3VqW zc%KVqvA;20TIZ41wV1^*Sjk(3qIWw{WDs!`JFox<#mm#Qh2o1WRLwrQZcw4j!?lti zO}s(a@>{)rH-?+Es@?0R5i~%OM_8yxs&4h1}Gv}Y#B*1k!7N$2kWtc2HwFYowl)B9nh|j&% zgW37x!!z)4(TSnNsdEiJuSDA&Hi;tIrZ?rZeMvR=qT>o*DnLHN8nm1|D!FUKwnaBP zXgPv{anUJB`f)Sp4_aQ(4+iZHE=VGBy6d-*V6AdS#U_JY`4sC@@GiqYPGrnXJ=tw0 zW+FPVKKJKW#(+l3$3{Rx7t?h~`Gtfy9l#}ws4jA)5BJ_EY z<0DN~c%3y;IdRmXU#fsgYY_CCwA$T%3z?o4y)Vo6@9durwA^vzkP*3 zzz^Ye*4?i<0jpbzH^bTCq*^stEzuD|~ zJwHZ9$~eG(`hA#+!!E=`>=+5W&U747Iq}Ek;DpfV2}z*Ot4H z2pW*Cw&F&UeCu%p4Um?_g9ds}!!H&zzLa!1Q~X<3n851o<8ZZ;^Hh#Cc{`4+H*57-rLFch?b+&t-URYva;PWATkYO+&EuAn z2bOm?cFMKwylz+H8miH7U}^T?fu$osl$WB0#L zpU)``so3L}QbeC+H8PoIIEyZFe10z;f*WZ(7eAODauEY@Yc}2qK+G+t05cEjtKKY; z#wED?Q?37SHlK9|IjE%#=crc}g>dSuS0{j_e)=_s-$X)Rga2FBQGW<9pB=3|d`8SR*A2+}1&WYd}FSLDmOYqFSS~?FvyV z!37}l!NC0rspReyRkIaKnuV3$53kPfAxw@7+&9xNCUDuW^$A=xrD0zqdoGY>o=7$B zu7uFQBy}jRZb62K#aYr4b(DfXX`DT0{8@^*D}YhCXf#? zfvhic1xYeQ`R%1cE3y)Im>_C45zm7Zjy3UnZuao(^0lpIQ&jI3kCO+Yxs^CMkj$e_ z%e6NJb4!VgEHgyW8Rn$9Kr$aHmiT}m=3W@yHW zotBLz-Wu^@8|kgw2KgTf5|3V@=wyPp!ZDOw_uEbvoRg3P0xllD<9aS%KkK#g=7^OO@ zUf~{V4XEN%7z3(K%e09?OtH5arubh9Q@`q7mkU$BR2@^lmR~W32&Id*Xuvn#0?z)6J)eJvMYOZZ;c^4k8$Jla~eOeT^C2j}gWO8rg z>?1ErY}cQfcO~RRVTAcDp_+p_?$RRDr6tjDl|1XtWO-$A-i)H(vvh1e+K0nwu)MH1 zjX-5w^GxQ0a1PP-X|f!_Wx_K<21ky}%|-zgtlNovkJ|ay2(-^e&}@Uxw5Y_0kXb!H z%SB+$g%O>ZK02U|_OuMpMn5QZb&9sG>OR z-deBnuMFQK$QIN z@DnfT_rrF(jZnBw?DxVBqGQPAHzJc#d#cAN&a^S+Qy{4i4Uy*f5NF?#w+bw;5(_Fm zHde@_^a_R~lPvYKujS0rGbz0+8(U(1ql-KpnUnwDet1DJ0%RHD=+T!y)f*@zMtYQ5&qL`dL0B=#$nRxCEhrr1OqYvH70{F zn!0O#;b=M+AgAv08&n*b6>q+2OZyu$M&ik1 zB2&z499=0Hd*+=c{W%a?B`#A)w#@?IVk_#lJ8<&%o49q@_QGxgu`!7INahyfN=-1R zoCWlwBWR8=FXA#k!af}tmpMn4%Elzsc)!P>qWjh%W0+<~#u8z&@%b0MT8|O1zcHoJQ))^hCqZNQ zvGu3q(z25}4BXa`OLR$uKqKUmht!6+>wy0YV=qE>6t5M=5i$k^?RFnAw^ifCpE!d2 z>dU1saU*?R?}>5Yb$Rx1G9`cLatfzT_=xYvd6HSRmXJA!9HU&jlaX;#2OQg+mn8B3Yq<#Uw%{bmk)^H43^C8r;2q@09@p(@>f~&V+g*{YyTe zA_emS@)yaDa8nnh)??}fsf^|pB9vigYY?U$Lm*0jgb*L{PemE8txOr3P<%DR5J=V3 zzUZ+o6xS^9-cB8j5P0vf1~bJ~J%RT&wjQ$wgDJ|R58sQX539hV1g{zVPX)bdvd)cw zM@f5yB(03vfns&AnN77Dgd8x!^xTJS!%h1%bkTj)FG7WzXZ zngE3#wrMLuf1#7m4RKLp`#f8)v)DfUPBUo^I$bJs;RVekKu)Cq6(j>MX!o&;Ry~HE zH-eMuZ=Ww?VJupuJKXA0b?)X@4u`PKFQlf49ml*yaS&yvOfuE)${xWBhN>pV^d`Gd z+io_RX&erY(E)J@^-ZTHZb;H#We(*~(H+823a#`oV8QsGxy<=r3V9DzMxM6Ky^#SC zL~EWD>9M}e;e*0@clLMYi89M;0yq{OVSa~3;d|hz_(VIjyx$t%+_&oOeD7sTG)#VK?pm_la8q|g?A9Q zEPxZ-h*}RsDlck_fSp{E6`%GWV_ecHQ;u1c`|2(4a&h?qaXP2+14Nu+M;Q1)zZD~k zUJJI#H1R`RqxPb<7a(b4fTR{xcZAoYOPAZa{*Dka%VPdOH6DK~>%3Uh^Ef>r9CJ~7 zSL`>%vzvm2OZEw9RB)o9$GWIDMR*OD>~+-9h!f3|tijBQ*OTklu=SWdRFvyaMbmZ5 zb**;CHp4}vXZ{lee=!I?gMWc8Z6m>!_66^A(%$~Yl=gdTIzi0H0gX~IwXyW26qgw% zQ5Yz#p>M23F=vLUTe7Ij zLXl&Imr71HCZ}x-KUEoN1Q8*Eeu4oH6l7|f^tfCEZIfnk0!)z_`HR$?3!aVijW)}N zte#D2QBU5ykxkz0!643ZJ@V~nx^8*H^hmxy0;#D;HbCtebd6{Z8@PaePITDcn4;rH zP6Q!NPcu@~wZZ)-VjPVaK5P+#sWzUL%}DB4xuE2aSsj$q0wG8!j%rjxaWu3n^$m|$ zE0;udw5-Pnnh+8&@%r6XzaNLb-}Tyqrr%7FzqlRtAq3mV`&v~3zGMU+9` zX)dNPN&GZS;#M+l`AjRO+jVeTXS|(U?1W}6;Y(~Vk zzt+weZ%mpx;(3Lgu`dl48(u&oG1TBbuOPV` z3uTd4B8(W`G?<;Mo+Z&L;U?8MV?>SN7AwPt@G8`}1%}shQ0htM>gEDnM&EjpId*ZO zC>Q7U}`gu6HbMZutwLFzE#BbN^4*TglZgQE(3GYk_2x~ZthmYX0qC5?%2a0Gfc!s&tlmlIf zrf>2KGPxPtGAV$Jbd^y!XeP)F6?p9)P-c4nmMq7W4E{OtatbA#HCHrP4z(uz6_wc;bp0DZ3Cgw2&QJ&%=9;tmrvm$ z8!Z{vjm37bmZlkI?pg@_KhhvH7HN!=HfYU3KK> zr1v~!+%YVbr;KC2)|oPn`%Fk8uPBS&a|q-ZP2CAemD7%nbcah6XqnY^a9 z3O|1;W?6joUe`>O9w+pppQ5HbzvrKbUZft^fndg|ygTr5;|l4=ad{jX6N*!}5%18Z z;sz#9=;IJHg{YPwgsA3&&V8d(BTtf;&GkH~O%4j^uEtd|jpkii=D^`6nxF`N=H1K{B291m zzMzo`l(vLUhs*ef(E|PpcKWxh`D!$dU5F>ho!ZOt>RGxBqz;eoZHQ>*e63HA!pGS&;jkoYMGZhm+4IY_!u;G z$pmxT6S*rN#TuE*I^`<95;NT=e~8KBwVLm4_k3MxoqB7ZZ@G@D7MaVaRET!f)9{;M zj`eJP=M{3jNUQW5ELQA*1!OLBE1i?$4Ku-#Bv-KVw*@Oh%^jIwY47u+g~f&EPYBaB z)hkxzicwy3c{Z5abL7ar`E+5rkuEMAreeh!ZKHy*i1`5e&)HA8K+=`@h*B=m_0>SX zqZnBPQMZ!yyw$!=CF?_?Epfr7nTuwwm^r^RNA%3KGuN%mOx{lNWXCX@bzvpz?5(I| z4Jd3gfT=Nr{jKTiyg=GSr!25@j(b2$l{Ne+S`FU_wwqsT!@WEQEM$dx2I-O?U>&0Qu??CvYm>Qz0 z+kZ8485``nJ8iKyAN0%;LMWZi5*O=+6M)<*@%23VG*$g$!(HSiE&0ZT38+~k{ zQQAf|uud!LwA)>jerfiQK5_K+X{%SXWtfz8VVR;T0tbx5dv&zhpP)sJ(rO=c0eXnv?#)Vz~9y15ZP(49P@=qnreqTUw4QlKEq^3E( z3w`LU(8hyaka(>m^gD5aRI$B&+zFe=>si8gA2?sRux0k+-^)ESJ-mHcs+hua_n1fV zqqEC1JVn*M8&CoqXL)v2;{kYpr82AYCLeNWB#lyqj|KG90|mdos|-Ivw9sk)mLb}q zm}r%d>qho{0e$O{eeCd96xsK`*(8dzJ9?w<`KHKwVqHjMh+1tFaKCR&!~wAyjD9*8 zot7vVJ&n^KL||Hg2yqXNc+@Wq{hpsTQCKp;V-Rd5Rqn4DJjLizHw6Y?C6~s}xjz2^u+tvqt5^ZviAlT@=LAw)iO|{=PI8nntqZsY&j_FsE?F8i54Vix|eptIBkdRFzI=IKlP&+!I%hO zfI^hCJC(2cK8iuFe2O`mc5{ljg!0J>oFWcAw8xC%KjYBjo`8r;lg1;t>A4#T2cfhi z7dM*Z6zquOAPVQM!50vsm}`*zTAyoBINR12!*Llms7EsaYC6u9x&$xGy97m(akv8; z$}u1(BL2HpH{j1!<~8LHA(9rc4zJ3ZuO2v2ZomwF+`IN5>=#*Zs1 zE?j-@VvW}B>icu|d|j@-kFR~cE?_;So=J+8j9a~v()eE))ug`3YJ zXX)ZQ)1ZCRy(dW$d)_Mru&cQDHgoqLCsmN!2oK%&MAuT@*Y(hCevYYM)bY@rD%uk9 z*7MM1vo7?|Wp9OtPT_i#@8#iII6I)nSZ5qe{779Us*fkUp!{W%Y}}B_W5N3OX*fN{HyN=Lyg@mk=<_&qGr@f zk~sD}*i&%JChf&(8sOr6KW$Uy!Qpo%G(C4e3za#HG%O1-3zV5}?73rK0~y`trW!Ya zVh$$rxTZIUD-XDVvx_RvFCnKqBs8_zJ$*1)J|J|>>Bj8*(lVsAa0BT#LWXY^v@(g! z-(TyP8hQP)MP8<0Kc`@J1qA#KF)7Sxo3;>WJPJ*}VGU&Rzb?+V965F+0p+++d!7j8 zC{L{Oc67ByY5qHCstJ&dY@8yS4Kn%9AAfN88jLu!ggJ9bpRTP_yO}3RiVEuxXqf~* zO(9gl!v=hPvZXQJgfXNIFilW+D(b`olr{7Gb`W;^{U+|^BVk(ThvbwrVXn(ug6_9L z&#;Aarnv1_AE7BSp!N|J(OOgO0&*=VWu`tfE~Msbo@F0`s!HA}XnqlJaP3cDAv}H` z|Kw=uk9oN4=NPie0c07n^onSo$;Ou0pKyWNQ4tMGwkx6u5k-z25>Y_JnnHjwuejLl zv%eJxx7_0bp-wD0@8w2nn)9Nx2T{A%^V)vYZ+p#7)9<1JS`(>cko~;XZ&GfEk-a_|7Dh-yQAH!Q<4;DHX8%KjB+}w;3)If{5 zI(NhD5-zNWqpq1Pt|*@6bZsEE7h{t&o+)^4y|*en3Gu?;zX^?;`;+GHuN&1efxdNr zKiis$qFPR2lfcSyG0XHurx8;DZX>E?Envq;YiX)L{dj9yriP%acXhD9yp=-*>0(f z1dZNrMx(0qK72GjF0z%B#JAi=xZ?`fN07;en^B7B{RTFPB6_Dc<@Ej-E54-&%;F4rU-XXGDtc}%WDTHa?2>7mS)farvY^WWT$E9-+eV(*05OC}bl!_#0gu8I zxtnUlTfLaUr+kX_>GC?*&%@a`PUcCsc=o~yf?-)GEK6U0Bw0K>yF|HLDB%Nhx$~e| zAr7jB%AS^uA{7hmiNeL7RmO!zxPLkVChH;GPZA2N5bhtdNfZ$-y(uT$c5R4r0|rKF z)o!YpI=*Vns+^?iP(78HqV)=@kG(+~$&or?)b>$m3GC$0K zTRz1c)t4WY=u;78_?-&6iZJle8DPvumI+)%MjjQUm&|Tg>5mjoTzsENKjmP^nT{`{ zrn#d_j9a6F9xS7{ROQ7{bAZIc?Fi;%c;OP{8LnbFK1=X_c4w5a^`sdeuZL@i-AaF? zme{VmM2+pI(5T?vCp|7_w{xx3oVe~X1 zP->&h&Ar0l@Wg_#b-)m%2<{~|sKveR35XbB>C~3?Np~X=BP_$wiW^OGy~+_IOs51M zBm8PCipL1EUnfC~@TEK=kJYFtjSxORA0f;dj3Yj{rJ@P>B-p<^Hh5R#3KaaCU7k4* zEv(EhFI~HTaV4prH|W;^bzQoYGp35FBuW$k!*9)+uikf}0)_=R3&Mp@*AOJtFyon$ z$iJISblsuCYR$vnp%@oBf5;uV_HTX0+|lYO<9&PgE-kO@9PdHJ zqo?g#T0wDU7P7&kJ<=tVABPs^s52-Rq+TdsTtf|%A4q<(^Ntnd)^TLCy8qOJ*1 z5uncF*3*;dVitPB>oN*4h|AL3IZuNyDyvU53{StyKy1_S^m$`^lkoI}k0lw|EId71 zbzyjV_Oy9;`h#%Z0-v|@jq?j|fMz6J6t9Rqv~58sikF~l@SxXecYWB~6Y{R<8OvMM z5b-Q_;Tj4|mlee_Ya!%RSxos04eaUO^An7znQ+jX1ig|bNUt|XvhOSM>7X&Wt_3x_ z;Jh4j*^W|6(83!rwD|>x__jEDobQwLH6Akl0@`RAGEM+x*UjUy5>|uuK!J)K z3#S=aNDqzz6kH=wa2!Vgdsq3=wbO(DV<(6I&C`XyzS&CP(}}Bq#14EJt(QWy$i)3r z3HMFuTgvo%YD2s_a&>-kknh()UNdsFT;z+5RzO?p8*4(kx#~y9$R9%R@_R!Px?Uf} zq#}x8@1V%r5P|E_uGp^Z*VH_bP;S8w~@Kx^j#+c zo#U>9s$gN?cfDR*-QQHF@{br)K2a`@>VxH{zWS4d#uu;;RomBTLsi&wZrRV#(41Sg zGl+XVWcBpWOb9Jrlc4YR9Iw;vps-_rzON;2*-0Www=+`De76+%L8(CO*R5k->o*Pd zpep7f$U`rFCgxzA1s*CgvH!3(kVxF}Fwy_OpaRD({j369=lH6EzQ@gFTAbmnJ)WK@ z*ESuIs_I;Qj%~(V6LR^P7^-mjWan6sw^mpeC?Y8Xt>%90F;wi}td zQ1Sq_`NeQyUxf5M@@C>+vK%-1_~E6LnP@Vx8G`p`_4UDO{#% zze%*;S{v<(ym%60I?&erJq&4*5$<(VF4xJ7U{n8G(5fbZKQXUnV)LRtYf~J z#Ms3aug{>;j>Xoo4@0LTG13hZNOimC8Q_-;x|+x^fm`aYqX&q(I8VUAbx^FC0uk*(x+ZqK%hvcykqqH4i}@+g{?gsgH=~h3&{4Acw8( z4LT01o>fttB0KhVp_s2KAz##@6D%)6WR*OXD#Ldw2&l3+#lKaNjb1reEl%;x?Arpw zr`zO)r8othEJPEu+LRr#89CByx@Z#}n23N*W=;Uzu$Q!>9{O3Mep={s0=M7q4m({C zgg@}3+9BFERzQ(9r|H1uAeV#AyRTL+uN*~FTys1x*hUTmQaPy)zZ`46+B3whd;K!g3qaWIc z40^uf*9y))J-cUBRrRpF3Fa$%Ecbt7?fo~Q(X&9KPr%HaMjcf4bGn^=+y+cS7af-a zbO#CJKDw!(1P>M9E|>a*cYaU122)nO%BhKvGi7ROP|;&t8>%^~+Dk)oRE3%_VQ1)q zp!@+kinoXTe$+!=Tmtxc!-TlJC|g;p=)t2Sh!=ECUV0MPxj&aCsOZ{YjewJv(aKW= zA{TJ-3M)WV<*wRB^AgNuqXNr~>j4Z^)P%`wG)k3>(twk*!2tL1JzLkRpH0POa=7t> z=6pWp%ufCQR1taoHn=N5SNULo{l z{wW32UvMajfcx@2&(3Tpld61J~`v!yzgsBxv{%`RxGx07_VC5;Lun zCCwG3=J{b5k73nWQp`R4cB%$?6eapAxpy3J$}bXj->3~cLNd4BevKiy9L#EpO4B6& zZ((jV8;?0Tijtnc%ob5(l%OZ-eM1*z7nmt^r9j5q^k&wYWtT4~d~B$vp4 zO}w&_2CH#%<@)xh*j5|<3OQelK{iRKlJn@l0g0kuqmmr{S2wX*}ihHWSh1#e-&2dbMPm z5k05bX3r-?v5pk%uR|c)?0hAeXfRu1C+d4uxX>cB`m7|$SwZDD@T{L1A{yS=Ry#PIsWm*2Rwh?=*4 zf>dJmx5#R{Po3*H6Op|&b%z7252)L|uolF) z+VmE6BvP5!RY%X)Db93yU$)62D}XiA>31;HcD@uQ%e=WmHMc<#r~}cP?auW zB2?8Gl*<;B2h!*_NlLJEWI5C5)%bBO*@7pUhc-_a+y}_t75Re4t0%PH&qgd1 zTFPs=WCLwfCJa7aNhVvAxj0vj4=je)LR;`xmX_yWJ@8jr@uD9rpa*7}Mnab|( zK81^nc~l1!hArBRigW5-gD!OI-x(sapMN?&PnsdWwDr9<%KC(E7aefX%Aq}Uy)Z;GL9|xx^^=%+E3{4ytA$Ba zON$E!N^;Xs=z*G}*;U_Ru z;lg?m7v)T-?KRJWM}h?jzG-}_mhNQ-`zbou837kS{htV?Db#ta9=)jm{j2oCbmAqx z#P*?MP4!q>MBleDbc#S%w^|8vHOtEm^OFpiM@4adM@1RLj}~%7f%h@=cslSt5>rh` zfQS^@VX zS@yI75Ifjwcvo+dAkTSMpHv&#)%w&8lY{$q9o#j&tNS2|iuI|ycaL>SMDjTLON9Fw(x>nJBKV4|V2J@n0Gl+s9$&`}9epn`)o6|LY z<6eA&)AaxqBYhORABL#pIp{<|5_f~3J&fc209lLGZ3A?={+dD8>zlguA?&04OjlK) zTui_RXz11v7bF52UAG-4q2qOtwuS$4ZEXOO$^YPvB?B;8eR_ZI5U&($Q zxA18BK>9u_7{coQW`6Hk3|WDDVfWI0dU4xkW-eHvtdjjp`xc_s9{;Iv3lsXS@xs#n z))JDCeOlV==Bwkx-?y;BLKI-CEzAw6uuFfTHl~Oxcm%>{F(}o~wR{lzS;abJ#xWTb z6|rHyr^}?OJhT6xucQjRk!SXOLS{di_mDGXNnvosgZbq}3WB~`owpN6k!Ol2nBDEC^#uMKtaP>r-+6(O^$}&oCX>g0t$9pfdozIFmV7z(UgvY=Q*Xr zd`DM0-t#jlya0!vy@g9z`UxwUYqFwFFfBi1PvN}G57|!awLATR*BzqibGI`HhMhPZ z^nhtwzdZ(5rqWXN@h`A=TXPu0p59;~)5b&f#l6Jn@;ot0hy+op* z;KY%FXWJCfFf%zC`qMx|{qt2rf_A=|I55xGg6FyO)qF=kU*9dx*PkK51t|QiEnAZK zEmjhr^lUwo^D#eLQBuQ++6Wiv43LEGCqBwuAqy==0Ui{;>rm!-`Nf&!_id?Z;_FS% zR{N|x-v3iIuEjjwpG?A4YyCMGf3f{PNN>=$zcIopISqVHCmBrX>`B# zTYLTGaU9L^>`*PW)SGlNehpXi-BxQjL*Ga+NUyUwXXu-)plx=I{T0kL;W7Ig7&^^k zw$vF)X*jQC>x9g@r1j-zy-L=Cv*A&>a?)^BGb!gVNsWwqGcu$_9KKzFiwEimLuE44vf=RCDo~rk4IY=2mm@SXe<(YUw|- zMSxdwS`0l=*+AD~&d%lH=^)08wpS$Rj@zYw#sZH9H{Wx?fwTc}^G#fT(1{(#LoLpJ zH1z!*T0?h&K`-vRXcu4ibp9%XR{0VMyPR2x+-osw{d2TI$pxo2RC9bfOGEQ~+UrFq zr87iqYyf?x1<*yPHe)KCsBYOY-n)B#@t&RjzLh0(0o+NM zruboH%>LRjcL(|y-jSZJckH-h?v8s!KHNNy{~ph>^ILr5jyX}jLCXo~7;O^|tD2{< zsp2-JsbbXxMJCWE5umvhT3fYp7Ts*cW3%J?Cd@VA@qH(TuKD<8*RyjgFs799g|CxS9*QRTg8`bDByQxO_6Snpq#Q74F?HIdbm*^9j4vkAWYm|5Dn0E zmztpKQSV3JI`((PtsOhWQjcUmC~Wn%3D&8rco!&37HS^qjkr+p2E$Ir?S~!T8^oP{ zGJvXwf@B`+j&#)V3P>OCQ|d|!S+6`^1=UBxh52}KWmZd`;i-_l_Qg9kx9~rEmmv~o zm}ha8B2Ci_S)91jn=nNw_V`{vYHSJW(-Q?ZVS5<~U3ZZJBNInwJ#GPEdhsIV=3qBV z@Mtc~k5?3=onHKgg2fN78H*PyE96-0`pzKndQmUz_1reHKTv?89eJ^bdfx3$k80JA zG%WrCL&UgsIk{sIfnmqsEF8zQ@0p7?pDzqR(U|y$Sei8k$;wE(p z(h;^g1?iDdT}R+1nUcttv2S^yupusQksIH$cRr2cV{LM`QHIqWR7goOKe-pJxAx4RZV| z+NILkmiC$UZ%vSBo-RQ@Udly}h1gDI#rX{x$$3d*niGr{g?63$T{6>a?c25?@?d>L z{+j(OHbnBT)JNp++P^gcBGV;I0g+p@W332-M~gQE>f{d+XMbtmp$%sruaC3O+rMJN z8UKooGh0E9Z`i*z0nXATOoX#KgK||K3eQeC(`XZRIHf8NTrU{i1b^gc^E_0(4bZm^ zisDNAu~FqA{Z+5>AP#xx+edQ*;A&7=<)L9)=u@ylRTpd87W!ev_$F!* z7MdQs2V)dBkX1acWfuz36uKp>gu8aNZhi9g6fLcGi9T8kSCsP04Mgg}OR}gh{}7Xa zTCTz98k!+hhc~5fDbrtTOs|_0n;Bvsi@9uiq9xtsW(;j^h$S{IPAU}}rRxc=&hZG^ zY1$;3V9J8EAIh6Vm*7Pn9wru~j56<*(g4T}Ysz;G@GEwm?WBRp- zieF+JsL!Bk`4&;}A`E?SLTIZ;xM(jNBuwsk|8C8Ijk4T)H zs^Nr>QLyr{DPrZ%CdbO(Oc^W1+pfUN@rJmUC#i{`<|io;z+P;UD``$24S3rDl(hc9 z?G1hSD2HJbw8K8?TMhi`wi7(ZJw2yyIAa5*7Y8*I`}NIn|FM;3R6dk?1&=%WAq~yd zy-$X{AVgylv`a*nRxkD=2L-+YABFH;D6P}1dw&aTkRr7qRR*@T#w*KrW@+wM&yT~U zWokZ1Ms?~}3T=hd-kCl7;1YuUo7I7v>v7wtL7OanM+D1r2~NSF zf?PfNS(U0d!1K9!=1a}b*zNS0vNP5()}YJfW|I9fwoQEo6(W{1_7NC5P03!aj#Iv@ z#D|tPUcs)>xrV2p+%4QFmRXpVR}(5GZ~^_CP%+=ph03os>5E!Ix}w%#0ePw&OZ9HF1uyHgoVBB6Hwe1= zUp0lbDreT;8}y@7=1kpP6LNljCdv3u#RiG&A`I@mFof=hot}NR1WlS}p)$o5~ zs6x&g$*gs-sIv>|Nh}_`Z}e(m`!6;cR_;H4#!{ELhPN2p;N?O4G7f0Ur|d}6NTmHd99FJE-8t0 zNZtuO!ijv(>3SVpTU|d4f^Hl~apE`*g899KqAbh5OB>^Q#Oo^9iC%4{N30tDaeJqG zGA2u>JFD3uY|QiQ9$2PLutD*7C(4|&*7fx}*XJDdT%P5Ams-PPtsJ19rUWm3Z@iMx zdQNMgpH*(sWpkz0@Dv(etTo(j%v>&It8>Y3V~f{kQ1@xM4aOL%Flx-dlphn)hR6cnYdubo_J;Vj=6GXfZkJ!7aHhASFCN}Ot}C!*E)^lyhmE8 zRpq?0la;!8dwdoySRD@qxPzXbAcM|Ly7&``#>mFPov+{PCX`#L2gckmReWSx;YONP zQ6sK1HmkGz!>b9RK)Jh>=1i5lbIM5x@s$$hw;9XO&tFr|BPuZg0kM&Nr=ewu-FVI}-?owxEVKmb5>0qus@~R`9Hs!z#9{dfT}H690)t?CT^A+w zkUQ4zv*uAjfLJxJ9S)ryl*1mC02&?Is^AMMXsS{bd`=Z5>HZ^C6}&h5wm|Z^HkzDB z6{M;VgfyE<)42b>kkKx9}nZm^V-Ca1$_*(T22q4vzDu^ z$@0=376gjejO`*GS=T8lU&py?eMf@h%eBGLgk&EMlKmoP7Kbc?Y0=ri8wUNv4V{4x zTk62=qUT+|7kM>;g81#_^O(}cu0*n&xCmEMCawmBQI6VUQ>;}k%MsZ|8k!@rZZhbh zqKt?CdamD&1LXYo-C!8{um^NIWr0K*k%_PmQUP>&Iw=dpOV3A9&O|E_Rwuaqd|G^} zVTi9uQoGO!6jhg~zHOX`xonhRxovF6P(_)T?6#rQx)vKH;?slM&j%MglyBO)SpB@R z+68FNvoI&;tTtMwpypREg0kuky*`T2`OsR!I7vD^91{>eb_vfp>+}kEDx5_GI%Uq< zR8yee8Zl|F+ero$YDExk}+eS0HViN#e*{ves|8MPrtDCXvh zUt}mQCmc13p=r&qXJT%(W*Bo!6x9s7n=Jw-S?m+u36z_{Vy#OgG(I5z6 ztCe9)_9}QB?CV+u??bf_piuM&DgdEU^yrm%x#)IDb;1sg{(K9bQW(#Qzq~76IXLbwAltV^*$0(#g^2ptCQ4*T53N?BXc158^dn zL~3jCpqZ3nE%jcAqSJaWXD#9{R_}%VwYGXMyq3z^YQ1#QDpUxM*)zXy&(876eE8IO zdFNg~eCoKg^vhNesV=Lu6izUWN-*bDd;JLJu^>>WCf0YPfO>Scv7*a)qe3teMx#g3tObQ&j^LOptxTi? z|MjUOvT$O_#iNVywY6l)pIbq02h*hayYLyFG;am2$f19z1xtELy#N=)`lTEnFkwtP zrG6KmT8Ol!DfP?7_$Dd!OWC%XrqpMvE=;M@EdVJ@T0pQgx$~?hQt1l zGVMcLC5K^vtY|7@+x01WUU!DfiY^04vq$|k|8A5&_Jf5O#RHi%M+Op;=BUgDX`a<# zYdTB{h*#vWURG618dlg9ckAe7G&IdPH?|#g`)J7;_u39(ETTRt@xeBQpN1}Sw)}pd zwtZ-u)PLOymYGqdN&Rh@z-B5i^g)E~LKxzIRNMNSvqcD4Z?a9<%(l+4N1dVxd%(y< zseqY5m|Ll`e@hbkM7E8hGstRd_!te%*&31vbz8e$5G4^xj5-4^9=6dVU_f=DyS*U` z-YKv(XtuixsJvk<_R=rI^~d27QSW65sV~)rltDhl7A}rrN+|sY%*Yv0{`?EeFL(*Q0Fe?Kh{={D~0e zDC3wjBcH=w%52HX+jDoO9V{pp<4E?F;wC-E*s$*EKCN)R^y~M)vz#g17tu7S?fF>c z)5?ctj1TE_)64*U0p_xilf?kt!O-RgXwvtJ6D73W62)^XH0P(I!A}Cj%#*DJz=$V8 z4U>wjSxTh|57Rf##5RRFs}uI&rS5g{zixm&a2_nx1Gf!tkb~0hR2W~!g(_tg9zLxC z==3V*VPb_T^Khk=I>t9^-s()w4QObNb9>!x*AF|+z(GlTbc*+q0SX5ve$;l_2vsSw zQfntiPwO#3HfXN1(H)Q?uQe5IeH&QZTN^-xNp6gOI>Tf+eW<3prpD-JVQ$rQ$C#|h z7`>k@qR4bdPgJBE=WlIb)A?KLWqJNSV0_vFqdKN&E-yBNcWG0ccLP6ZyG|S@!w!1M z3_IR%0G*g>8icU!xwTEvD-43=OH_E5n4uBxmJ2PKl^foK(qApku%!U7lJ5mX{Xdo#7JfM<@riw73(&Rq#Em_&cc~^m0^g zgX;+Mku+FT%{2{k+_w6ko4_*nRiH^_=W>G8jYHfr_oZz3>OJdanX3kJfsyW_ddL>` zy1K7RVf5W>=SA11My5Ln#L;(X)~T893MZDrWAp`lZ7rs|OX`y*x8j|&H?!i^1-UTj z&D6uFZrc;^gpB_pN7y>p_RhwxR3>U_+q=*h-^8}}a6Xn)%4X#Iq+vN8c8k(B?3=j-mlm|gMQ8*^i zd;vF-2+iQ4q(A5n+wG25FQLjUDx7%Qm1xpQRhC+J$ID|JsIAVdcu^}RYSyTTX`^@L0z%lWc>%eHy*gC`;QKM9dU{$^P}7X?J{p=MOFtMw;1AI@EE&3} zWiUj}zz~fv{UGSTnoz6zw`6VpsgUu_zs3&FqSQhq-K2YOyPR6+@fb z6-fgvwky_v0r3pCHge`A%b!3}-r6Xh6kn%RiQ7bA&^JFp+c+Nf@YPlvJAG7fMs~CV z`=ZwkU@-IWzp!{GLAOKpZXHAFcWFo5WAL#GR44+2_^y$_ke3eA%u2Izi-pixs-Z=L zxWz)K^~Hl`QVW?SROo`I0g!*R0spy>{$dsj_SYd`u{bZi@{FIluiPqedfqBQ?@z<> zaH724rAuHkq)FV*6#!{X(LM$(n?0R&WW!hQSTE~B3akPP!e$A4VI@$1lA7uD*(!_F zsz#Oox#7`uH0#tX0fiGwrX2O~wY69Rj@L}m5``}%Vj(7BiIn;%^+ za*@06k_8cBPvUmsb)$9><%7e=|SBxLxCBe)Dy=%1E2DjOR?nPv4LX`-U9i zYTvLQprPpv+t^Cq>o}h81_=sP;3DJ&4zg5HP0RQDPSWqQKBbjGHNCnwZ1G~{4V%AM za>K?`36|frf~Cd{`#qSzrfV2Fj(Wp>SN81@2l3=LY(!i`lqffBJ|o?*32Ezi!~VN$ z8%0Nfs(0mX*#C=$=B_gFFmiAKY5g3CJ&@|{rT6{$PO;O}+&wQkra$Q!og75x@n z_zGy|B=x3jveCcR-mHQ6;@dFC65WQsftk6401G9sB_Q&pn;_vUM9Wwxxk0yw1g0MH zQ0pqUU&E9(+9Z)UA$$x(asqA({Hp{y}DVNrr^%nq2cMB zbpu{e#FuMKtlxQ>-Adb-%SJ7hTj>=T+Wb~Zno{wtl6;f|dxACHZnuNd(*gCTLbCG^r{6HfFI_)&x&ung*Kwc{FYSomJI|{C zw!)f3;f+|ceB(4Lzjun0yc$|Gh~GPfVp=??`ri2r0wlY4-b;V6dnfzr5V&_<%C9~v zX!yQ!esR3wFNWo9iLBO?_@Pw%-k$BDNNZ_yftBDGy^UrqxWI1F5XMakZ^6Y+L^iH& zmT#mdfYvb8d_8k5n7;2MVdMpHQ1N&Y!$mlt|J>7xcIXC?g3qO3j za)A9$`+9B7J3lq~ddnrG++?nEW+9s8Orw`#J!>&1oLR>0+_3On%+C!A#l$U445t_I zg&rax=oE+B%Q*(t!PxMhd}?uAG&MFHH8#c6k-IP6eaY^JmL_xU+dXq5eeLwoMn0A( zx><-ow(3G-L-w?}vEjj#m4LvHIP|&Z5_KIEK8reD=(k<3*B(aRpwsL15Z)IC?vUNp zwSa(r+8R@KA-tJH^0oYAOpDR^h%CjAEiSxTSz!b4`B8kl!tECs2-WrAGcwPP{-so! zXmQ|enkdzXw`eabAL|$&)Ah1uy74ULvdKn^Zv03LZLS*=vlr{e#(qgV<680swBgiF zLx5%)@|nC}WgboP%rLPcWtyot%L_cuw^BZ7klVmVo)rpj41JU^OS+w4Fc?IR<2zn& zfSO5EwB!)axAF;`rI*qgrlC6-5_GatuLH(4L^TaPCHwY>gLrb&5H7o*5ydpbXC%`Q zA#GCA&}KB}^AQq+2pGnpq?0H=N&0$TwwWSTONEG}FCK#NY#N%o-G?Els0)G`4BBoF z1-L>#?)#Mc;`G~IyH?2j#ZupD&7i1i)UX?e?4r;(>PZiVgD^%KaA(+eLe%W2U9{s>6*wkJ=4M6W-V&aK2ANa{>p3Lxg!nLrO+OOideAdnmT1>$H1O)E%;} z&6kZcaNIQ`+=1g(L~XQzppSMR@=CWG!2!K7)vL;GfOn{G~rV}hZ<<{ zPoy1HXz@?B0<78LbR*`nQHkYnx&uSkd^jlu1r3lBed<~~^*nq6-@A3q4bB6a^KqDy zGoKf?BiD1$vlqo5I>Qd!xTueS)N7Q@8w5RykFLdhS5<&jVLqbaDKlSX#^#GT6onO{ zd`~%+dm#Iz;i%KwSFg2n-Y znu6l$9WL!#h+2zFtjljgwFpzc`i#b&yEifJ)|&mwl7gHWJ07By@8{_8kn} z@Y{I37R7&!Eux6x=}9@o zKfETWF>{?)B~2f*PycK=!8Fk&shuBfh|}~iKzUa;=_GBZkN-Cqdfk3I?8Wf-$4Jj0 zpMSY!i%`gQ$$w(dD_>%crtP!xn(42vF)P0`(Wz6lR$enby)@Yuz#YEAJ|~Vr`ylS{ z70!X;K{F`@TLO)V!c&Lu<3Iwb!s?#T3 z2(Q&Jsc&~@ZC;bUE+T23+l4Vb}+#=gz zBR8(x`DlS=Epp>(xM7Q%(S4tr)eg| zbT&xe3jDN8SFGd4eZan6n;ZB3$=6#h!sI4%ZrnmN%b7+$hxM$*jeAm#qq+a~4>2+K z-x}mB9JeQEw6A+?1xez}`*{xRb@15!8J}9n`=%b-PZ{Hzgol4J+g4MLZMNz{k8Sp} zxySZFk$}MHhxyjICIgdV7om$ujG#{!0cX(7gD}Fs+UN=B#4K@HbJe;^iAL35%f#%Q zY`Hhy8;A2~o*JQ98NVGu1RbZ2R{R40W*}3$NUq9$5;v#EVNvAb4{3_j!gCaVP5Hq8 zF+QN{T+M7d-^W}wv1hUEY`l9C+YYgFv4=L>DIKfas`D?j)zmjjU}fH&Gs+Mn&jAw! zQchL6W|c1*WrO0ZlEjH%ZclW;0aVP1#{tkj}ktyS0TdD*u|9K=&}&GH$^HA_gF)HR#=Ldm36}y&(=B#3Y#>zaM@3*uiz@&3bfoazTrCz#tNk6m>twI=4KbP7d`y}^Kxe!!kp`mt0m*8-y6 zK~tp%?Fq)_ln=hs_@F5_pG)5JBlaFRxLVzv>Ft=yMu(OI_q`a}+?i5-;O2ImKX}O% zF2J3JR%}x{af(Mm@6|DJdWH!Nw*_eUghaz}>bnXK{&I>q`1s^F_`50NK;Lc+1ZWjX zP577VIZY%mA^mmOCzrs1*M&#aiK9N$>Zm(Fe>Jy{oXY@xHql|Lwgi4n1=JM@OoD96 z61dXewR!)I17g!RfjA(*(dRLZO>W% zOUh-gtL6XV+7KjEb6?j*7-W@))J`Z`+T+hJ9&B2|^is^NTK<_REb?_doGk*1PcD3k zo~Wm>?(2G34KQQYs@J4S^*G~m`bnc6{!JK~%9hebI76e2vp4X1oz5WYxzV7DMycqM zig@OJ5)Ou4iUTYcB!oI{@jsVAt$c~}D)(ZY!(OfQVx6n{ZLdvRzGX#tv%9x;%1rE; zU8oIeg<9t;wygQ7uE5I;{8Wp0y%x2`Y!OA&N>9qE_0$50rlBa9>y(0r%JKU`W9D+K zHz7<4Yoav^U4Mv+wHFLrH0*UzX%1=fgYKXoz?u_7)vxV}3K)ROmzX0=JGpaL)LAuV zsPChpxpNHNwEZB$5$3qS$^h{j z&;Z(lPCtxLx6P&a$D(sgv$UNkE%<5JFjE4}=wSI0dkm^9HuHa~_7)Y^{RG1a=G3Eu z>1P#Ox`03RupN639G2>_hwV6Q4iUhIaf98mQec1e1iU7+UA$9d)B8GoD7|X1KwF8i zZx~C^G1knU_f@t_eFp8=*u;+0@Ze}W+((+Y`Ywj9`Fc?lNDL7Trw~~EO9hJ?-E{&v z4jkMbyZFD}oh0K69m(x`@E6M*W`7+5j^qndx6MktXYYc)Ql2w>cHWaL z#!SPNtmF@hX=lQvC~lq}d@Vq%ijs0Jlzui6P~3(5*lhUf+p5}N3#}qkv9@nQsaS^0<8S5d5z`o5FqJ4AVCjoL~mzVam{H$2SV!Xd~ z>yxjiR^TK9qzkqnSN1~&Hnq#*>d8V$o6SC!N)*j1{1-Gws;V6=-c#;EpEN$9%lT&d z+Q%@LO_*5B!GDXP&Gj|n>0~%3Csz5i zL240dz&WTR9iwh9y!+^ThKl9r{u3aC(MLEVk=jHp@YEZX^^)}?0!wLia{ek14`C^?*)*Zwgt(nwcBItG->?g~2W@(yN z&yT4FeM>xUT}5NSSj1m5d-jc49DI)TF6KNp(jwrkC+rCa>VinQq#cVv1u2~LvkGn; z=y|u0`O+kuzm+~z&iNM`>sSltU&ywq&!7^Hh4Z@@`e1QBxnm_(H1Cfc;8|iV=&$HL ze4PaK2E3xk*Bhn?aS+31@bi>Bw6f&?j zVSq)gaTa+@?6aa=V+%dRq&RDmA03-G?Q#ue7$yUsN{~^l_b5W?>)3Jn4w`p4U6{UW zXKx%`K~scjZb~3wU(=NEUG{2qC_#-NmDksXX6|&lpN8g6rx;C-hf#vA4ROy6oyZ>y z;v{rXlEUf2fxx-|SA`IqOBA=lRXmx(i*skYRO)mhtu+K>SoxkLwD;5oO)Wb%Cp1ct ze-~!vgw|=JQHmcSyu$U}IEaH@I~k&jiVKY;2zuoCE0_C3J=|vXPE1+#Dkn6;+ms2d zLCnf$YC|R z#WXa>Sv{wRazb4<3Hk$o3VFD=u|u$Pghvt1-8Ndk!^_(aNTQe9 z29z`LN(QO&CDN-r=->+WYGu&DWx3!PHJ?*zEdKn02&k=24&S0pDop9duM!0>t&IYO za$j5l3YBt4b9lKyFv836dM(QRWwwYS%B3gelzUDkkTIwIB?-RYFg{gI9!)5C3n-X2 z!7125IdSN`UX0QYs9v1-eUupwBNX$8sm2-Bj!t+UgIM_za};dn3m%>Dh#IqUU6Brk zDsJP^3F)Q8z5wpu6gE0xhPMym{!QT)C>}JEQmw_mNmQNsH@{AQG5;p}>k#m7@{T|syWS-G5eb>|oNZ2l*3lS+d1>&=sbEp;1e znX$Z^O!_?4($$}&5INqu$wuBxx#7_knzg{2xmn_aoeoAq>{0x2>YdR1n%W}>$?V^9 zD;HR|V)bseFw~|F=?LcD&2!kG$@5?zX0ZZhYMEkv!HY4iio`dYlP zN_QkivZ*Kb4(w9zj>H}cFD&nlM8D}CSV4U_$$rF{a2-6bv4Os(9@xFc_$D6MJ$x+D zY_o#J*{TaYu-Vh*9@us3j>K@zW2pkZZ?2p~4je|E&`0T5$L(|@5B)1~rR(;(aSs_~ zEZAK0zP^WtE~9g?pC#ekD?)8<1trb30)LF0SG4I}*&WX>Q}XNPry#p5T4ME*cKdh3 zptsZ-@AjADmcMwQwTrTW#xgyV)=O{fidQfNyYwYX%X?Ul%x#-@FYS-f2e`F|hA!=m zm)Y-Qnx694<}vBYZhwU(v_(tO>06d}`!a)ybpKD5jH2(c!2A0;nkPLdHWC~Z&%^`9 zC-if$nJMRf%w-d_7E{jKF|@fUhh&K2`DLDo<5YyJE{d1XPE)@x!Ik;sUV4ZTggoy| z)Ju6>>19?nYOqv7MR3qqH|n9eZUQ%R*YAY!z(YC91U*Ywx!fOaR(cUU?-rtQl=j`d zgeKSEtHsupPrSAj`U?xQt!ooT$c$-r_$w>RJLUxJuU%Y;7gxr!d*VF-sshhpV1#Mt z9~g}0;;nem4{-V1wi#W;$MX?>-$9?*F$d1tNnADudkXSBeUb2~vHGF2F6vu5Qx{4K z-+hFrQL%#QtbJ|;JPUaI(==hq<7bqhLHYdO7@sd^`=jGaVI zAqsl1=T+L+e*p0a6Ld;UH~i)XOfQ7&x`*go45XBkhKkvoPwFBXnzNic!(lJ>x+wjC zP7q-{^nBk%6MH0AcgT`ntH0i5B&=}@*K4QKkLXT$?bW0#v4BeE9~HK7E#@Y>?Qy=y z{w?X?QMGrj7!x0XK?RXF^s@>@UGioz9wj*sH`C~pe~p}nTa9^jzEc^uI;HwaZ0Y(8 zDt;|8bti@@GWE!C!5@zgPQtoo@pLXgseoh#S}lvgglv%s)qF=c{+~m}e=F@^&WDMY zSbNhviAl0KU`2@r&^m5A4gfNu(l)qA8G>~jKkg-HMt~^Me&DrxE-ouh(m_dGm*U*Y z#TJn(ca3`$IHy;+xs$lLYF2LUJfFQfl^BdSVk(t!%E>b)ejcEqIq?$@;hpOu5gQf0 z-99?U2L6zGwj*3H^t?{37>qLnF;rIxvAznrDt#^q>UV2{pq5ph6V!>qtCT*|hc~qgf@{HmH^_!T|b{$g)itsaKf@%U9y7RW;Xd-9@n$ z^)Kk(qiv+8ig`i*ffYE-j+O6XE*nKyj+MioF|A{z>Vkd}xZ&G;)7Hf{5ZN^6w=k#B z0zn!{r|WtBZrkm*QR2MQL6f4S8+#Bw-P*l7|G5I53WpJ)PMO0hBQ4s%*@Oc7G8&rW zD>%EOI36YmWRmL-J!CO=0K@>HU|k~mhrpp9Ey2!5 zMb6`U=Eo~Sv7AcK#Z9&0MhNCX7uREum0Z_Q_2EgFTXkKtD{xWJ#pBr`iu5jeqSAsc z)XuL9VN6}?U3p|K7#}Xz8k!uLr+}epOPrw{Tw3}FOk^P$h@T3Ej^9T_C+x)NJLcDp zgMBQ6U-=RV-#irKG3?dKP>f5os0k|G|G0Q1+%3wOldjuZ*AgbLtPOvKm|s=_2Q3aG z!plYXiVtz4OL=iF5lX7A{%MM{oXn8{t?z@eT zlv70$!aWs)OUvhk>%;i!`p`<+C|!n}GL$q!G`HJH5*$qf*7l~><>7@4R^>~~5w3k! z9)a+=EL#)QU zfybt?8Y{;5Cb1e%<70_v=c?)=dPEy!(@P7>_H#a$xbc58!KqdS+d&pUG+8& zb=xcQkpFURSk$@|afDNu^Dkm%E=vYOI3v-+DT*A_XY(OFq6jVP-3YgQz=v8{>TIXt zfC!jdz(0>Et6t^z7eZ9c`^!hztJN-*1{Uz6o;fjvZKR<&3LD10n|R&fFhYfF-;aII zNdnk7yM466!i}@UQm0wKGm(%tg3ByIAxDes-?gOe`LzC0X?vj+FwLaxd6>&a4Hjv; z9YY@^X-gU259PbIuC|W(o3j_qc^2m6?1j`_KSbf<*d3tUF(M#>en0dR*vW=5I;WGz zvKD)tUI9?zM9yABrBi0FO7r(!9E!pYP`;;}*uI^H=9sDz1UP?s;V?lxpaAhBNcnQn zv$)en!lCDtRWzB%{GBr!8g+Sv0Y;WKJOkWkGH;lIdGT@Gy3cGxug@R^ufwH-2j zrpOR}H(NxJ?U0_Rhq-PDH|rV~ff=(_y(Z7g*BhU+z@-60Q$2Iqh&V63uruiN;Lf6Y zrUCMY@y|hf*o#1%aa_Bf`W6jK#GlXUq7W8!k8H__uL+K!gY>9QZX zzB7d0-tTo?KSqmbRJRH`4qP&U+l#3aO!?)2ki_-4_c8dCFR?jYUh%l4{v6JAy^Y6YUt!lwU`6>w;^K&B=}5M3l#AJ)RKR2{gu4+7 zsztazW{W5yTzXPYxShrj&#HPmjfX0i_lMPnbQ7wlIu5j7PW9+5k@#H{m_cJL^gjwg z?M}~yw>Ipyto z8k$qyh6!$u2>NLET^OcNb;TPd{XrbHJ=hbHPOTf!iJbqla93_k*TPv<<2b+As6R=z zk85vHIj?*SDhO(&pUc^8iZ#EVK_5!5YexL*GmRzaQmolk?dfcn`V8tF-*Q#E4@1{{ zRlA?s9~tqlSQxqxEa_dTNA@GwRO*pse;ooI+4IwK!TaYUL^qT=WX}{SIWmPk z9Wf1m>_g2-XIR?eq|VrX1dLT#QqG3bV?}hwQ{z9M4PU)$y^4Md*cJF(c*dPl+e7e`ZH);@&~z{4bQe=&gy~v z3D#^g`{=0V9@rnVL6du6A7Wpx%>#P|hEBNNa*-uBne)IFqF2r|`dffvEgsktO&;dG zq91{MatEwV#KQl|%a{xK!_us-KOA(hHKRkQr=KN~Tp#!A)dmuqx?gWH#y4@lUeCu8 zB{XxtW~(lAzh+OHyI&s+nFoYk$#*U+Kw;nU;!eNa?ZU9z_IxjHC++qi4A4Q^AF_@% znsI;Tns`Oclb^kf9bj3Zawdwj=FkO|$rlaO>CV;@vxU z1XHHqpCoFMOH@cnZ$e&5qDmjD@-2gi5YHVaxF8MuUJt?Ws7XFRZ(6wU-JXk@3(UT) zrH4O?l5f)Gu{zsn{RI4$N+XfvT~;t5HKS-z0i(APBvOJ{^Xw8_Z>L!sdT^P>y>-OF zMU{=;f>}7fCAikdzSC)UqPB~0c=SW`P|mX-hJE6|Y8ML6BTZ+&;j@%SDzLHcd88kl z02;S%00d7T{Sgh#-K|5I^I+UVD{(k!WB8W*LD*}@4w9AH-FQ&u7|{gMMMC+}6G;*2 zzm!n5j+D-X zTL7_bO1&{()3Pa82C|q$lF<`tZ@iY7nUfLa9X}2;b237WV7Q;r z2HoqB@O6AteRmOp7kDTh+-2Qq%E^~#gPWAD!jv}6NFgJ_%9P2dL6FQ+ZK&qRX@Q33 z$SFxWN#OP=v6e3ecM}9Fa zzD!4ci4`c#bmaRmmyHrEN5=gay5=K82}cxQCF0X{WGX-Ke7)r}@Dx5_GI%UqPjF0&UhoZ2`mP?Bq zKm92U&G8dTi3BJv1$S>7A;55h^@an-#l;kjvs|}NVSCd`5A9~2Rr24GJmyypRAWmE zv!&M(k_0#JXim`1x^i^o2o0&#yE5Ps3-`nAqe`z z0X%^SP7gzPYTJ$jUm${u>w0HD&!AYoM8Z0cmH8}twK7&_wle06og?d;E;>^i2MSqV zh(T6atmHnA{tuwhAc*D?%w3DD&tr=yB5Qh5PSy`KBkS@|#-tT*Ng}@5_*glGG|~O2 zfB|iT6LBB)Q4o0OK>I^~@gVeu$RHg!J(P1o3HqK>mxv$6U{=1w91)k>ndns>V(^(7 ztihd>bdWSU_v{PcPD)`(5ht5{5O-1v6M6BVnUroVPD-Nd)JgelLKI6IWq%z4PRgxR zg$+d;cZR$D#l?7GT#%)2a0#(hII-l&(JSz^wRp}>Eg~rHJ^Lu; z=H9bB7=;JzWE1jw5~F|yw(=?t?m9_~w_J%L!HZM^m}#V_`nw#jEYG7p@VG@qf)8XR zif2)uX!aT^G<;Rcopa3I87|DDhAPUXF1EJ%VHl6cTe%7gHaM?xcEykKX})YB*>rQ| z*_oRrw~hjb&EL~poG{Jzl}~=b_@sWsG`p657IRs(i%qC55iNxWN83ShstP^&8iqE% zmJ-zzyKYX*ZJC5fdO>~ABnJqQFv{%G4>d{U%g=gkN-Qu<%_;~nX+Sbyj){*06z`*b zaSzB3@i7ty`0iiQpYWq_H3ZjTbf<;&e>m`6q^=F!HZ1;q7a2y>dx<6GX-59DSfyNC z%BULl-Tnd*_{!3b){Y%QzMo$FhO(25&r8=Js97g1O&pc%gq$tLPN*Vs;PitCv6^lV z)%#G{sECHa8?wI z&doS0!?(vffrdHMb6?uG5N!@vZOMqChCajXz8Z!8Z0>=oP(Q>1eT984G}vb?hrxE5 ztNJi-j8Ezu+w3s740BC*7(4<)AFRVbunT#*2;xjw4`tD^hNNB_e;4x-)YVK;aJJt} zcuLXvaPy!unF>0RR6}p2fu-(s6~UD?tDnSxrBjG1(=9gWofxX%cVn%Z)#Yb>s|o~a zMQbh{HFTdqRJU$ZGVJ zLzhl{9+{Bt=!WmAhh<@8Lba=K(^Ke>8;jFT{8Iwqg;x4e(Vw$KKc9wXr;`9e5JwJG z`bI(C&t}^YI#;XFXITz9@?#C>g3wtrzkPZtKwughR)2GgQ zb}r=hF(U6;_OXlwXd%zx+o}2pH*#bD6jc7Y~|Ay%!d9*;fcyf3yMr z`6~Uz%w_DaL%>{ik+2Bx{w1Z>vWFB|%lM#a7|TvmZ5!EQm>`|pR`%bVIt1p*2~ocY za9i2`$%e1`>t`#=fLIXXe}aJ?aj@imm-2DT^K}N-_uQxxp4|WFIGS~8hO)wmB`=P? z2f(kzPyQDrPv6!ljVRY%w#7SP}i+w0u+!wKi~vX$4Yh;oG<&97by~1TFds& zuk1E$WH+$pK{?CVIF6-J?A(gU6pht2=s~{)$*2te*#c$x3YsBRmN%tuDbqjNnBF9} z=Nq{)Cde%s@e?q#`Eg9dP;CAZ8(b zYp5ZqO;Z=&32E=fPI~RO>kkmO+#UufJ?nZX5!6Scbd*p=Bb*+kCyz8!*OTg)x>9*f zMw-;pmHwOC!la=q{aFa?b(lFN1MGS~VAt5l#i2$=)9|ts}nJ zROKAK22vMmRpZrG+u5xql~8l(U54Xo1yM7KlOYqO`Yq-G`dI!JQ%6MpDjy2HTu2Vd zrEjzDzuArD&6sOK5&3QmU0)F?@InP|>IfZzr5a=-aQuEc|vd zaN-`K1aKii-|t=*sqh}ckOxi_IDXP;lL*jHEcFUb!k^zxh!AVuPLzc_pKqt?Bm8zE z7*Pnpa&fNQPJ|9pJgEA1@-+e$yPbTU{z|)W(_e?c?IiV{@7=pVc5&1w*-2J%G*~RX zrJSF;rQ`?Kysf!Q zx3zupZCyI8Z4D-5vx5DvX(|9};_(uq*Gvx4t0sqN`S~NME0;blg}~@|S~W8o$eBhz zfRI?r-TomKiOcW!yYO9p$1fFt;;w&Ii3HW}{9-5Ip&xM}SLe=u%{6GA4d-sAoaUt& zPeUdR6@3`v$uyyI0pDwohJL?4$M)%z*0n6X6 zyZ*`f#VViuCF8T^vC-t-e-Gxe$ui5m{{H7(MhXy2$7=iFiXKV zVgJdrrPHoN9XhnvUTh&Oj1`^h%(jbS6KpSPk@}Vw!7e3FC0O3YHzbs2lZwBA)sOxg z|H-w4{#bgV{yIa5K1{tr7?IC1*y!}p+p=$uIEat5F~R5rco0^P{Hohio!Ehh~)g5pQNF=3>(yQrfhtqsUde1 zP9?7k!s>;c4ocHTs31Hb95{Vq1Nb_}uJ`nQ}tr2~N(cV-;S9=34n zZlNjkQaF#ex`-H;nF7;0wT+LD$tGvq0~9I0NEAH2HVPDuz8ZtrA+B>Y{j72{(H+~D zLU-mnC0t+9(R+@*z_}i;DDwu!w{@Ov#`Slx?ddaU#8@80ynvxo;(FR&p6e-sCfaB2npnu(@9;fZ4!!j4)K*0bkkfy1Y`qf&D?_j-k!hANLj&ND?Z~} zSECNYz6BJJg6zo8QLF>dd_rt&WdD#T`OVrWQ6$DY8E8NYy2PNLO^LxatI)OijxI5p zUJw7AzF6ma_)%kNx;SViQ2vzdUY|ju-Ex8Q*BH8Hfubbq+pmX0x1c2Z3}u>>F|lDv znS$pzDPz8)OPOm)%G4!jn{hw}8*FPbr9yh&HfUgNr1vA5tq$q^*!ZkYIL%1!2bjxt zDYIy>N51fBE=G2)51?v~4CJ?+ua|ZN-ANTXvJyaz!3NA|Si|BB7+U-yb8*?`iwuF%;|B*0l-iP@XL9Ta30* z{vQi!ma_$5<#})<@wSr`>TP7YTws z6#_&bNYv*F64$R)qwAcT_L5`UUno*gQ^SqMITvN`+sh)3}Yzg_X5>NuJIBtWt_ng61{Sey*|>(GpofiLl%@*@2eaWZUh%{UoT-_gQj z!eVD_x;U6d1G5p3>%>bgRq}uT#Q;zWAy2ECX+V#`~CS9)nj`4eRx=! z!>4IjV|aN+EBFs1q}1heayI;@5#_>mEuvhiVuAR}sc)`HxD$Incc0 zHYOV^CC1xxv`|`}$xIS?D-BKC4j3R94!tNwO=>p@(RSNGctH|%P;G9A9_$Ws%PG)6 zvxU4w)NS!wdl0PKT3FhD*#hbuEdU7n0EOkt_WH{!tn`K`QLuM;iK-gy^z)Iru-fB?A5OADC2RU5q=-*V zG**)2W31@ZkWnX6fdh+@!D!1|+d)<h^=Wo~gqt z=!LMxW10S&iSo)=rcdF1*P6L<@jxaK5=e+8luk_Zgs6rW>V7XQv;tn)3sNFnj;UH0 zX<}Ucn%(@E1Fa~HSU{o?DdzZJEo_0QX|t`HS)DMb>LCi5E$!Kyeg>1{xVn2Dv8CHu zFq*JdNBD6(zh{2IUq+XsrG2}0BNSqDeopk5V5EbEi$rx@KyAPtnW_M4VSh{P$F;Gq z2qd3j0h8%L5%jYrkTm=GIfw1od*HAgk-y>}w&Sq5!|sKvoYW|Q{xB|()T-&Lr{i_@ z_KrE_)gsaL4Ek;=x;9`oMN~c0SdlJhRJ%9nHMF#Yxo~6dIeI$Vvp#{w9Oa=9_hG0a zsW!6j6ji6*?=LSNyl?bs2&GYxpxP`!rsyv?+hO7XzwIwrqP=G<8vs0N(#%97p68^Q z`Hn8lK1uk7)kNvv)kW#&rijwdOpeljIy6vv{9zg|ThLQ}L#yTV=Nb^v z6p2Z$0VOU}9(etzTAthYeJ>oKqOCV{(ALijLn>oi{#~M2?gG540ueb4$UZBN&G|7? zmdZJnX624Wy1iAcmB;3MJypRfFP$}Fa~}R;T`HC@H5Wo~E)6xWn@?u$(V{#S&EoWg zR4+G;ZL_Q!jEwbzs>dqHqO|s|xOMluPpTm_yKxH!DWtgI+L_)Q^>gyZwah*@hxzB` z%rDUC^vJc$t1!mE0JD_i_v*97!G4M=taFSM)$KI38{IPeOsJq+nBQIRnA^Sty5;N29Y|8 zwUL%%v!~Kflg-{#kIjly6Vh6AcB!HJsJhbV`LrUMMKh3!UqM<$pOqB$A}cJKX+*z_ zxoiYrv2z^6&<9^5It7gITn+&1!W-BGXwGM1PR?A^$rTY?9ty)CTs21MD*ECfYr#Qi z3~Hkf>oV6bRlrs`yNE^`F;}@%p;>uQjIhlL_0B$s2gL}-U-6*opqNh)AX!k%r|B;i z6vO^H1cG9=v&{Z|D@zD8-MfI(55-ZK>Rnnr<^o}I%%WBbMo%LwCboTGlBft}omZus zoFp*j8^ED@=_@}~q_3PPkeAE+YBqfJo(HA;i?VBh+rr40Gs`GJC=KN=NJ0FAYf{++ElPk!7*D_Z6sq2jyVQHZ9-kAF&-RqBpaj$$G~(_Cw5GsmW)SI z*QFL2wAR^hqOWBNNpKfV4%+i32W|PWA@Pxmk0~T*In(I>1(mNQKIR;oyyQh+9*aHm z0GV=j77;RMmq`RYL`HBYRE95e_Fsn(nHvp6Hw}?_iZQ-Ph|JINvBZc+?taMbOLm`8 z+Vg7n<-4!gw|nMBQWj1hWvea>k;$Gm50Uxlo*mfPbsQ#4Lma&=H6Lgf^1d1c<12zi zIAZK^Fq00KvSEJ?<+USW?xvw>B#gGv)mE=N2ok^B83u@i=?!2J8n%ZWFGk%&Wc3ax zKK%dUNSGHGAl1#I6Gy_loTg1p-}NJ5UTLgFSH#pyUu7iBOEH!0l(pRXeg#97J72v> z7!t#4jD+D7N|7*xlqpBTn0S`QRAnTLvM`NxMqf*1#QMg%{4rorQ#&_fUH*`UnpTnj zf5f_ct~S)@Cc|T0J|oCZcP-P;Dh6~Bkr{@>Em8^eDRPSaE6tWlhQinnDeb>)e79U2 zRC~p~#kQu;P}3{+BMepKK~1liArS7b6YIhmjbdFgRA}B|6BAInbKYU|9o>vKQM?LA z*F<9_I!}3tPDU1F)Uj)EU{S0KZ8_Cip2Qq9<+6>4otuUKrh+2qRUXaqDfVh*G|OL; z&tcu7Srm1P-{aQqCcQF0sqUvE%+J)0XX(|(up)FE3@Qk)qn|aQ^B~2u+(6$=#gh@w za+9$loqkR2#2U|X9ow@$K}~7&6bx0QQN4JUB4Jb!&vH${60Pwp86Gu>Wumc2Vwvyg z66^2DpSCXXEP3LeYCucD^go4&mIDUW>WBA3W&BOSa#J&r=D>L_O~+5~0_manFQ0FG zSf_TCU8+y-XBQA-O@4V9hAR9r+3Bssw4743YZ7NXUX>q96o4Q=zYakyVrt>QSR+>7 zQ5&o8oFZ1=J~>w3dx&7QJg&vWP`OT0%SEn`6^Tpk#dDB*5QkwGy&wB-(C?x8EZV&c zqhT+0<93I-AeMhu(S>F!Fp<-R?6dN?mQU8uu(;!$ZfaF)<#8>)pDJV1h->){wyo+I zx`-5TA09UMRdyv z#^7?i5#jRa7W0eHL`tGt%s0!4y$S15bjt=TT(E8shJJ*$rExTLBUl}WFhRNqO+)^n z-*Kosk$qeI8gm$?ta_C*8PV*NnXEx{%N4bemSeU@&`^`vYDTvdp4X(o=vrnSMM#Tp zxs}#L(`f3E_!Y!e_+fb){sk*InyE*(VJ;gDSd5(!hW-@PBZ@}3nM1(3@&=Xwn)4>i z$r-Gdbc0UPNg}jDb35IRKXmZ7>v{+(3;iBt>D6Me>nnguB8D><(P<+FE0-)ZE01sy zHdmqR*$43m7vZ-n9#kFS@+JZ#i*R`}{ly|&*k6Z0gv-Opiy0!^b1_~h4Qe?KuatOrpB&4M6~BN;f@ZfEq6g(K#pg3tr;D}*NfDIxOdY#T+fC)Oy7PhzNz!KGK9 zIE_bHe2fj!mwfp4bj81qDmbF%&no{B3&vk^z5i@q@1J1`U)3t<)Bhu_uJe`2*IOUH1eu|J7cE1{`@Oyn zzO55Lj3={SKtoN%u-w6?1v8vCAGIjjEK5DT_G&72J&yh5a5t5)C`>mml~s?dy$j;{ z|7Qype)`D6paR=B{jAcEZr#b6Tww7<4z?%KXl}vAD~f!2vN5l&|1{G%Z)8i?XHcoz zqI2GXq0Mzp5*><%{eE(&ZJ_-TJh}1hT-xBwb>u?NK&zRfO~``Pa}G4~9sQzk8eM^l zNd=RYJeA_%ZdzfjB5bwpmVCq1?}nDmc{+}w5Vc$qFNp)U=Q_Rl@KDp!4p6RT$B2AuQQtJO_-Y9uB-fT`+1Qwm!yI$lddP0>-) zfPjUNcuNlE~mpL^iR!O-i5Vu`j3YGu z&ChPHA9-CWcwpZdr~h|i%Boj6{S!G&nf@EtR=!>vZ#h2r3Jo>+pr&o*@~q14t&6B; zc{{2o&t9`{ej&OlWr=Ob)FVY}TZ^7Nae4l36mHcaJQW5UckWzIaeO*R)y zzoGt;|Joe?9P!Z!#zz$P`A-9m`oVj4`Et@bf@TWZ^l|_;J%&#-m#=*CXnL*mKxlR* zZ^T?SdbOO%Cu8WE&t%0-mfv#zn5JG-0^+F_v`sCcCmsnChK>x`o}A;q00oyw6l_Z0 zQUJegih!S)9Ps@q172)&%HYnTyk-lSs{r&jO3FF7p9DcqD|L9 z3FMSKEKLrW&S6Px_d^IeaahJE1cWl~?QSP@2Z=vSIZYQi=9{YQk(k6Up z_x!M=GpEsES-x?amD@?h#a74*`yg&76}E)pLDhEB*MV+QJL&7`FJ>oYe;opL(uXl) z%F?b<8)+7QnHg)Ac1^=RdXh39>p@;<8a;|Hk4X=l%h|sr1H2b7wH=OVR*yR&{-YHR zl4dWWju)l|w%^L8TK)N{m_(O$&0e*%OLk=s33dh6P}v$&H!Lc@Yl&F$cfch5hXlx9 zWV>i=5&Z~;+W1q48n=l4N$o*73!?=1=)<&X)57>0_;D>3#$y#CRN~o1W$QXqG=THJ`P%rI5uh?dFYXQ6iQjg82ggS@7=->H?smOl$LW*N zP&2mm(I_Va*I4bDBQL$wSci)2;z~^r#l3-B;J^oGm5x`A%MGv4rA5Qb@3F@4a`=;2 z;g?_fCevL{qmpy^4M_Bwt1CaAO!STprwR3l@Zt+$udhML?KH^FSBq2|@IruFu1`R2uX%i>+F155i_J_;3cuB38zn?XtTe(Yu_Gv58b=dYJsf&Ag;TqBLN~{ z0i)9KF#YUX9Pf=o)hh#8Jzyn5jfCn%kZ_c5;wTrVoCh1a<3&z{n~@u!FbX2G5NnCr zLxT`KULjn|g*Y)NHzRr#R8Ft*n-Ph`s#&=i{Q~ytRLtmatPRba41a)znlikm8GS%p zKnhe^=5;Nd^?0McCQ}K;Ln;}a=Ic?kkM|ltY^Z(wp)tH%C@R{A`AzVy)=|%VUQVvH ztnHjlsGIa}VY!@5T&L6Pc7g$-t2(Y1#9pV{jRQnpxdXo&dIPYDeKVX*-i0ZvUgc~; zR5xWdX<%*tW^GjE*yZaq)MS^M*7hx#-5U4KBJ26-*$cu@jTh%Cn&SP$*i4C@Iis-lz1D0=` zX5|(^v_y&bKsVpUtO*w%Vv6pzE5 z$Wjo_iL1WZ}sMBSQMo_i{V=s6SZb{Y0#X43!M1cZ&F2makji7 zQ(>cUQn}O7i)dEUlo#X2wV3j9RF?MsdK0GAf(7}$xk+#It9VX=fZOuK(jXjn(JE`& z@@CN!V0k6nr?)O5Yhgj#BBclO7HynDyzk&27XnE?QCp(7P}vs>PTAk48Pm)7StY}? zjzaG>R-ki&dPT3Sqw-sr%62ALj@}PosB-kytD{0VS1#y^N4cPnW6CE)0_mB&etZa; zBDAIlyxOzcM0WW(Cw0NpXgm58CL~tE+;5{lL9gOKr?$#o6t?4b-*v)v;5Z1|LIGT; z)KNPjje7LM&5A^vxd|<@mgl1gQLM023H1*`d6u^uAJ0O(aO%}ev!j2YZa$9}SU}DH%s+_looKF5`QkT?FP0N=b^h?zFxP}s{2v&qP;t%tVS|kC zr(nhWW+mkcVxT}i0(G9yOawG1G@ASKn41$>d-(sc_a$(WRn^@Cv(htc0}Lu#3B+k& zXlh?Z27`c#EGm+S!Z`iv)vM_$x~rP5YKB2v5{*i1jfq1{;u29*lDI`i0kQ-TUrR_ucnib@ed%>F?)I{ocFV+3z{$o|~`YI)TqU-$jRVdjKpyIzNYB;-h-^nfvklFqs7HTr#74y* ztJvA>tjkE#Nm$kmVeXCeKE0n(==OD5dnlcB7fk)29Sr@sAbcQV>8cIxzW8}xL~u4s zP<57C?c5uq<}1sSuydRJp?=v0!-ou{j{wAK37=v`s@NFByp;lAAzG9TCYh{b37_sf z^=iohIMa<%Hf!Uk)UjF<{)Lt(utj_!7A+shb-viSPUjJ-7osTyxqk3zj~MKzJ&LaW zMfWJKgHL=EO}K9$!WRRDf5;X6x_hiIo7=pVlLpI+i!kx`4Hj@g=`G9sVK6wv1TvT9 z;S_Y47ta+uGvaw6bhP@y#~Z9_!`hVmMyybMB-i;t_d4Hau9L+1+d}2^JK@~YVD2;S zQCyhgqol{&m)v8Gfw^!BV__~$qmi5zE33<%x<8E-u4W_r=vbw|GhF@y1Mn?zjEEEY zE^NCrB1-i$bwXUhSh#`X1`Pj9#c~r@muf~@#;dTuZ=gMEo!?^)3F}6P>Wy>fpikBtw$}NL-e#}!`v~e#;Q4qkE{sdCG|1o>i?yQE)pA8q|Y(+tgJHsczH87a85? z+YVLdkTgF)X8n#Xjm`Fh2Ol|rO0{G{LP|gLAlZn+<8ie5FpWtg!Hcl;YA7W7UlPePI0ON#qI|`EO~4|1pd8SJK~I}=1^HV zvgU@}@R2hiNk&(v=7cyhqBCDlK`-2$0S89iuhekNtJW@8nt9w~U#%8v4cvBHsx(W5 z#3(d(XM{w0&CiiLLs01v@6PBrp*h`6bY}$Uz~zK6(gRd?h8K<9n)l)Wi2Jew7 z;u11|h_yY7z7j1)*c!boz&C}?Z;;`-hZm}j|nU5<0H>>$WZ}hh3t4N5IRL$nY^5B@D5!L*;TUA2-I=b+#HzN%lj3 zge_6;LDl+>Xv*i%G`k;~_6tflh54b)L-U-+jsuTHDA1A^OvnNQT0W%Z{YXBf`Hh|r z`Ao{ZS_|UERM(_$NgfY7$wNb~?h<~vRBX%-!E$AU2tAe~gDW?$T=bA>-)=OTE!<>U z^jhs&qg1Q4+WB^?)u!9p;_WbEG46VPQv&_br@ZF%8`!6bHLu?w-5H8dx*C?!joMx5 z%rf5_N-As*tqdFle@M*gjGgO zf*yqzAlGtqNw<%^!1BP`Z@-US^|o-1S072tZo5ktJn?L+2(c|_WD#QY*brjJMM8{0 zOOa&e$GRkwCox9>Y?Ex~($Jw~)301)C{c!eoH0jzz1ala*$fPN4;nATU)Y{U(^U&P zC2nk6G$D+qadGKK)fpx3v{RTSI!y6rc|Ril%x`q@*FDS}ffXFiAtg&)>m)IaKr#r+ z6FBZfU^8EC6{~)+iaNNc_E%{Z8?}5jz)6`_saUTDX@%v+1R5R@mTnQui{k!T3K7h+ zT*;zL66`z~{H39^oYCUDAR@V~w^C;Uy2_R_;7G{Q{o3J-Oe zmd{1;AriWNG zYZLm6SUdWgw}qNPdL0zX!c6XIc)mpEf#78D4(7c10nZc)Cv}%esH=d*Y8cq zF5vI#`SZ){MTehc)4Beet6won^)9sFXe0l|>})u9{CVW8e0H{j`ALV|6IZ`xMPnT@ zNLBaBQ4wK+j&R7W$6re0*Bg!Fl@&2M_r;kbLXvJ|&{sM(ztLwkCGjLCwkbrM(#5+b zG`CkAL8PE8&kdnXA<+ov=p`W^m=I*NV-n_k;sv?k2XWf)RFC%6m@ZdK%}O!w8qiAR zmR~N>Epx?ulRTc4z^m5NACq_`x^y{Mh+4S0LiLEKZky?tS|QK2*~;(2k5?Fq2KMq zW_q0>B9|iU&OV<+cGt;TkB<7#tSki|Hk1g;6Uhq$fLHY&m~tUQA(Vd9)yj>NNaq@@ z4b7Kh$%C3$W$2%e7Gd+#JJXt8il#2HsOP}(Y@eTHjr0O8St>)n**#xZn#~)>pKrY2 zkc%A2agp@V{TZ6IdDx?ihpWkPIaXs0p4ajTbjtHu6#5srEbN2}XJxf|i7N@{+gPaHe!6dP0L`KaP8;+OuY)y zy*%9Y?`UN46w_l>(#KeqF=4E!*P^vGjJ1v4uo#0)VrH`}x1cYV2z6MNJJ2+{Wl7>8 zDU9_M0$f=8IRdQ~rZOSR_U;e8=r!sYLh~ElV-r)|nFBoLtrQM$mJ)rB@&&dyR>%7z=M3r+jWlWn6ZJHn0u1Z^joT+#U!qj|hS zB6M>vmpLY;8DG)a{5am|$U@bW-4kH$LR0zG8vG{hdaY0@m)dZmAS7BqIp=!bD?nW( zX7_NKZ=%bTG*2WnVVck2Jb6=Uyp7QQ8>p#C`zf6#vNrM+v~#jmnRs**w-j!Z8TM^b zp^5h!E7BF)@kVDBugS-#gHX3^WFsnE@^Pbcoy@aow~wGN7mYZy+vm`9)!I#oUGjAj zYw~a<7y4AgRREM35n95Acq6RP$*?4i`P*0^XUTlNg_19*9qR?Pa;;hOs(G*KS1S2t z-LI7kt+Xupt^{x^YKSO16HCS~oO~Ev8eh&@ zdQKi6EyA`BaC%N^XzCJ-(y2gHldhs`CrTJ8H z=^cC$LY(UQTiqH-b7yV+CXy8aql0{UT=n@#Ey)L7y+A>OVkzH%x+@n-wMMyJsg-<6 z$6I5+$uEroFTOSU1!`)VhmVZk|gj38Rt4Z}JwSFWtP1B62Z)ll!Q()o=0< zqhFmevssoOVpG?9P-)v?S$-Bxvs;!V9FqJdKTit`{U!v%(3(6?v8_$W+WaQwHxu=n ze4S<(>$=ham?mqCFPQu$H0{iOlQ%Ia#bc3ZmHSPI*HRj+E9}#W_)RwcYFcQ*x~Ku|lAaG1i;WMRK;$+>Kf8A~DBwx=75A zW^s`$QU}~c z!ah>CWXb4UC-ZEItcSi_G~!TXccAI26`ATH3D-$f$z3FzJ;+@l06OX-5pRUSIT@Cu zF`HN*XG!=f>*ZQdt`_SRRO+wQn}v3{RjswFRa{1wCp%Hcf~w1CMciw-F9F;NOA=*g zV#)Z0Q?J}bBJAH}Xi+2XA`u%4d!u9*$$bP!<|4VDelZsb`*j4kNLXRcgo*hgk3?-AL>pMF-r*fKcWezbefzcohH0ncJg54 z&hf$F; z<%4#mT&Fwc^pno}#6>O3gP^@UPq9-vGKiuJIHG}C4@~f)L|U$ix~;8#Zzl?Z@FEVa zJ`(bCmp=W<9L@pGPvIno=lf{DfX-Wn2NGbjdl|=h=taMpbtH+kJ!507`*>;^md-Fh z3k##%D&(s;;Z!JB>cxg%$d{_sf>&zLsnNr5fBSV~EQ@b9pGHkhJN%LHMeR?$3X;~` z7v-ao#TP}7RW+*H@kzd@=TU2`FY5V5zq;|5&4fS5rmpv(3J!+}|1vbqZo-q?P4Y!? zGAA=S0Ft)D#XWeNp-i?LzIQbxY|tv@5L>JXHD(?Mgdk8~#-T zAQ_!i4;jtl;Yq0H&MI?Er?blZINr8P<*ecqP8D4K6m#bWLA_ROqAU+eJRx{e&NrL5 zxvrYW)qz0^_gJ*(jIMiSd}sVcbeZ%ir+*@+3DbWDXVrA97CHnTYg$G2x9tbI;muvqs~4*1q7LugkOc zhvUyTUe3uyj(FCrXp}v5S1_N|c-Bs_axOp0^>65$``0XFE4*wcjnKO8YZK%L&Gae` zc=(7WU7Gm+@~(xf&sv&zyaG_pAG=&@={==+)^2cAc* ztqwfj=vOzRvu$Vgv8n4lsD`*>JF|eM*|#$!*pnQ1oZiWw6@gZB;F*xMIq=MHChEX@ znG*#X0Mj_|_=4%?Xqt9r2i}tsut>DZ9T>!GDfdW4_US|%c)x|NR91*5xDnxSFEurV zLrMqUnUw6sBz;<^-Pvl31V`OA^;^Z=@PM({jLx|Sjpp&NBD8YnoH?e`IcI(>jXJaX zdMf7}r(U}1{(j7z@BeFFzTR#Xi!HBKg>SCZDEf^?yYA;Je$_7rsSn$I2wl3&bcMEw zR3=Q@8Ju(9O^vq^8vhP8HEBGhb52$O{VA9?HqTsc#54B-u`Q=2N$$CAZ_s&HS7SSb zdrt4u;-lL^{e%i_1C6V2%%hAUbdt}e(N0ERE_!ijw6oE4G8%203ShNz5$6?hWDB^C z`sc(Ov7wj@f6|y+utLF~l?E;+Xu^SBLGZVpZ@@K&^1#h}t$@N}MGE=qXi&8pF&+2M zZA^f-!ktF~k54f>M^LNSky{#1!dG{pqkrbHJAW6IUJlrmb>fCP?dD>3ACYx- zpo$cGRabfjC%;#dBh*XsrIxhpS^vgF3^Kr+deH@bwk zYN1FQJ9MHQZV3(OZse2Y23NjZ4(he0AJl5iay#(rZPbaZ=TZBh+HB#9Zt~S>^`&N= zX@wlZY10=`Wx6F0hAhTDZa<4K)66(fLjIz4D2c;Ijg7Jdat0Kui&=x zaslUOy+%;+>a_~0;ud_=BxAXuNA_jX7dgR_;`XHr(1A zexrM{OXP_hhmbJTSZ$>=f4dWX8t~J2!a1$B5m%gXeZDIeadex^4X_}Hy7PNCcScJ(Pg3Cb3LBQ3)Pl!vCz`| zLAu>RAc-|&R}BGk7GAgVxpV*U`>7G3@cL)iDo1#o9;>{L53IMPncwL$;S}K-oKc`+ zt7QHV4HpWBt;(m0@cCO~LOP3Q6B1uzYu0NRqNrV=inOrWa~;o|O<-}Ez^qF0fd&pvhc%5VC) znteKv(B7WZIFeg3Zf@=*vX_4m0=-XgWy^XIu2BqNBUlRyY8h6VD*!sn3_APr+QC zS1FggRuu_Sw9NH$39wa|i)b_xbGbz~4|fU2hdpwo8ZtB$ z9_|v3K6|6&aMzy`AX&KUEA)$nyV$QIAl!8pC4nyX=jUUy&`%zTZ{h1n1hh_y{I@iG zeDQ=WVv52iFCRz=@b7@EYIN(yPNu-rKSy1yJZFspQw)NZNYunG=Q!p~E^s)*PaDzH zB}S}af}>a?Bm8txs2KFfO8AgW?u(Qy%46O0bwyUr7=OO;B10~6B&;FHqq~k~ZH6@- z2KlTetg%gH3m(U~6a(=%h9rIwxR?_Bp+_pjO{XPmZdGjBNJ=Qq5$8M`RuqdY?n&72)bIWwA*!@&8m6j z7V$h2P2ht?ui5&#q z60Qo(>~mdCy)x3z+~;}=8d)-k>9ML3bpJ|{&-G4fZS}dn!sypjH7|w7x#paq8IC?n8n4iXcxkme%}67w6~L2@2#K+}^C z2FTDt%9VH1N+wsfk^_dyR?_l>Jn(}Os?g$OX0udoHz5Ox_!r`#7BoDs>8Evp^w6bC z@hZkKadArH_&My;i8w31gs##-Q%Y$rcD_JOO|g^GS;6v5I&_y*?AX}b~Bisg3E zE1-B#x$Kwgxb_1Hj->7KdA~ur&b=}oJ9r3PCVk4iDnu$1rtJ(~mE7H9)A$+G)THs0 zUKN>#{B&qgTORVGM)Htn=+mV9jQlo2~ z5VAR4_Mk5peK_>sRcN|uJ*b2g!etUy@^}L0462ADpgEd#EZ*3C1e!`u*MJ!@PoiF*gkRbp*I!&Z9ltV2Dzd`#L@Rx97(v9G_`AWb}5E zaLt?{_Mm##4kyj_(FF*1jqQ~*(e42*;*E+-j+-|{U9Gg%#&M&ALsSrW-BC(9$;4bZ z_eHC*W#TwpI3GY$mo$~$4Pq~zLHs_}XnYsW7v1x9xo|!|{(R%bja=l23r7-4_q{Z0 z(}nXoJY02AAk8+gm;1N@YUU~zqB4sVihIH_->E(pL zF|$y^w<704$wgg750dZymrq$pbKQDS6{g%waF@^FV{U-Df&5m)dp8j*-|BWkLx+o);v|R7A?jmpjF^W3g+A4GBq`~3MsvC6TUe2 z>eQ_D9`|yW`DyMOli$DZ6;i^ zT%3DF0v3r@xj%t;E#(fTz&@Rbuk1I`mC6e71UDia-cC(T;gHf-Hcft2L#?Ovn(eZ; zP4J)Xu(wkD1Rpa%k|$J>;KYP07jaoVOV-1{(hZaB2c zrBXZJ!lf{9p;d6AKi@86&(wGu;ec;b zQD1z6JB2z5HQ%w? z3=}Rp)fh}?gKRqRB=qH?A%_lpESj!b2P)n+W4%PZ-0jBMh%)~Lphw+q;*HovOonx7 z%*|LRXWgQoFEyGa95XAm%B@NZb)t%;LbclTi;YH|1$cC9sOpeb#GT+962PvoE^$C6 z){S2{^~&9DVlR^nEo#KwZenj~Z<*d1u;btCD8o5& zhYW8p2}hgaDF`PKp9aP5i;0E~rG@rP8f&)$(DBAcCZF1^QCDkqhfK7jwakb5#b_C} zy_(aR_DVE$2}|i`BBtTav^!a&@ttYE;hwL{nfBK4=Nm6XWOTXEEx^)g_He*@S zZKgQNvNVz0`zL%-Lg2>h7HK$f&)6E>EF&OKxCPWc&nL*$V;fhWl&kG(fofG(f?A_k zEaxlrcCCa&h@wZy!QCUyM8Wl5p>pi;a)NT45`jQ1SY$iSR z6DsNBHPAs8Nmf7A7)@t&)u`XRc<@5P#Gw(dEZ^~-gsz+<7=JMDv1qE;^c&bXD_fU> zc5vI`e8=w$58cV$AMloXhwkj&bu{calD~>uOEu}W^{Vx|I60D=i{Q-6`HhT}6qvX% zaITI4JJDJ2(I7~N_&6h+pS7umoySv~*zB=P*r~DQ>gZK>3634t6=*s^?40IUeG;yY znsMOCVLWU@;6Tc}okGwN9c;$xxE}Efs5;R=K0}^P5!U@?tywIUs?9p~U2WXnnV8-1 zUC1`L4MHlrW@@9Ns>TflZ01T|#ImEmB@g$URH7nTs%stwxS5)oevXu$zQ=}sx6lMh z>*D(fqfvry?|9>L1^X{HR-MtQ_X?wVJZF$m%|)C!rqiisejHDphH|z$^|H$baJTrukfsV{uK16{g=HvwUOJ&0vTmuM!XXJC$f zn(WTb;MDstx{MczPGbK6H8qJnrBiQ5t9F;e>U)F!igrx+`fWnev&|9NA9 zrvCTmy}?KUoKHDcj$2zqML36lt&$U;*Hq+OonY~%+Fz+oNcS6a^5TE3(Yd!*WSw4gL9h3)YN3!l!59k z;V(-h(P~9ZdcVG+i~5zZQ1?3R|D#>bXta zDewf#brZnA-!Fby>zXN9F312s#rVx+lOL z>%t?FEVXFX+_5g4PxeO1j`dezDWPNi7w8vrtg~N7fMcBz9N#jK?p{bSJ@GP}|5LsOT9 zB0bE+BHWGs0oG`IH~OEs=j(E#e{uZz#)}NO$PqWXB#-Xz(yUE4`mf{RYTW42v0_Fg zp%4AL=uevsyJ?;&z2}dW-gD~H;WSV2rR2|bZ*%ddssrTa zn<v;-%dvUox2Rgfs*CgM&svY3eUSQYU4elICy@d?!0YWH1g^lK`PEQf^mu&L`k zsHE+%`>sOM>~8ys7U3% zuGOMT$4}{rR~1gU0*@Rv2>N6W-tk6G;!wfe$4>RM8(q$eB1WUbs-N+{q!V z*<^T7Bktr7djxxHB57=BQl32vp~GF-c#<_`BLE_VkX zMJxTf;o5#ru8931SM>AlvBtQcCY(aND3Z<-k}upt)DEGe;pqgE8*J#>s(d7XsXdcR zeT#dkuFHjfJ)B+|+G51(wATON41dw-}F1T!{J0|)>AWnHA(e~%= zMY_=TrSxd~JNGCqwDD2WqwPEHvBp4KIEAs$mZs5&ms2W&Za|AMy`0zL;cC2`$3)tZ zS57?T-pIwt6`b&IZsyvXB|TjY=?c?d%n3Hy(>bgmdK0g_zxUGIV6MM3^p}Uw#D0It z8zLiTIOh#>onD7-671X_;NBpd&0AdR-`Z)RoZ?`)$s+AkIZs3vXP$}df;q0uo=iG^ zb_#ke=e1h6U42M}^{5X-7=xvrH=pxEy_cKs42HQ|JD$kM#P|C=sUG+7?|3pM$ApoxlKuSGFmd$wq?;mfWOq7Ek4jqgD%fT!T4r@_2MiGcAMj zY4rVMGB~ed;Lzzz+XHSwzHF=SAL?ENS+a5r`)k4L^bU2Ojiw5fq|2{0h=loIPmNi# znz#8RS~A3{ia{-J(?p6xj+=R#O5dk($nwxesZuH<>%Upf=kw*7-)=N;-W7LP*HL`G zQLGn^{4)SA;0qEPRUOkQ&H&tw4xC~{cQVU-*d5(lqp`aj#2Z~bWh;xpdnCU#A#KfL zOm|0%v2Ar!mKkxty^)%l4!HPiqj7E!dl7BSlq-h@!zFpu5PQcf*)r=uUMe<|W7qs0 z=%BvsQZVSxC+c(d*Zc(PLE};sa|Ir1_n$)1#;ufM?5w`Vx)8qhk0(Q3!u(jBheomZ;dD zuqEm}sMO`~Fn$e96@i>G<iWclkPQC~Q+TBAYWPt%KYG!#q5;Zfw(W7Sb zl(enVT5vwXv^UD2rdWw>O~o=GH>GU1p@%Zt#+k{dve z(@0D6yKK_(DjLNqEw3@g*XcD|JmyNaM7@WU((+kox~9^Sva=%;XwuSztSK!m?? zKO%t4Z*&3lsz;FaT?XCr9>IAj2>7Z&gBeY}hm7X&1W07TO+Ir>AT`G1Grx=%u~|$$ zy1A5yMwop0Ldip+p%&e9Uv9SRu=!fWJPPs`s)bf5waNF3=+fm@7!mF9tD#T%6`Su) zVMy|{Hrn1NsUdz};_E`2^I16aD8jEeX#y!V-MvY9wi2bWaS0avEyeN~zp0DTcoG=# zM?8j_n*NBCX>IJjk^%YiBR4(Yh*4PJfH&Z`m2;1PE)+6027zX1Awg424VoWIUeK#*R4?=9=jl4m8*iiwv~L^wR( z@3)qaqNsBkh-!=IQW41WsaL1^z{C5HEF~rAD(^$xYv^Pdxy*;&63SlV=A>xkZWtc< z?6Dvy=7D*TeyzaAPPD-k`Ht=!LpWx9)Q!qi>8W8vMejkQ^m@?LjHM8+=w}0gQ0eMr zMpy9^tFF3xJDS-}(#EVh9CgeUC#=X4T9Sg`4ToiUmMLUht7@9ruq)n2umCEL-j!1j zX|}SX-!fAPtowe*fE5A5t=h9X*TZ!{e; z;wCC=({Je|bh`IJuCn)Gn&H1=QDK@P`*j4Q8J@xRz=Pbhl21r^1dGAa@ZfoeR<a{&)AP10I!Q zs*jY0Dj-fa8tIb0+d&s2Cz@}r*bRJ59Zs$v#Kp;cAk7REi1@H10u<{6M2v8Bh1={v=+J#lSOt z#DsvhjWoBoV~o0uRVHsCXGfOaGsNG1zt;==A&dESf*x{y200Ix8!j|)&avMPBYq&W z@fu6aT*2olWSmZ!sxw8}l}xDb>~5f@VN$>oc`w{LrwV&IPalBCOYNFvtX5a`Rko$*5W-vrr80#pFUU{9O9Qvc1`_)rny_rEX1O z25#+LK-s+)LX=#D|0}f$RyG5fsEs!`MBC2G&~W8UIFRr#UKXFE%3}VpOBjbdmMlEC zlJJcBJ1o-k04EedZmFc_3ynrPjXI?#jc3w~iVmyv97N--JZ(~HEdn!>SGxGz9K8(X zXY{vZ(?ijeRxLo~>bkF?UQGeo!^71GP>rfW33@NO48-ovLQNLZ&vjkt_dr?sIb zK@US zttb!#VCLk9TE?;CLny77w-Uw=I$@k5Z|YO%z_sBpTu*A=)C1Aj-H+1G>8sYedUE7V z0X8f!K$jndE`z8?jx?8OBBtPaP;i1Ex$HXdpRtlq2mTBFVmgrhTAdE$nr3zSuh8k; z+P^ulB^SpYgL<5<664xWLQ9?#YRR}Erv2e<=W&0Ry7%b*aUNLb2C;X*LmW}rMQnM8 zAPJj1*M!IbHbQrZe;7gFzo4BBQS+7CC!wL5j-yZU*b!G1YI}jlxV{g;;rc|%fF02q zZ6M0DXOQ6Pop@yX&hC;_gOJy0RJ>CqF!=jATE5Q*L@8POJnkrA@J zLwOcb#Md0C+ecd{ zqVJ=|u=++STPDzl*~;`DR4dAnxBVcRX3qp7tz|!MWm`1ifTss>#-U{H2pw9owuuc$ z=aK9m^BXd*7E#%v^8lw8mW+`7T2Kh$I zFSWdOrPZo6n#DZb`w_2>2+TaOW#?`;2uY1aPiS@_K8iLJdPF_ij#28k|3v@ zpi>3NCR}uZQS=}kk-!1kn(yeIi=JH6;t(H2G*!gMdK$(Soma29FoefzDN!L@oD>xB zBZt2AoMmp#8n~xB!7?tNQfly{(6ivvMxh!s{Yn{^*Ok3SyHRV@i-mT*T!y=;;3eOy z!1?qP%j(oADtt=ho{3N0f`Uheg}EpUcy}Z2kP#aSd!yt6Gy?)8D?l@(U(6lDejNes z7;JI&`SX1oD~t8MoT7PO#OIT6wy=A-lnHRhisoTBCVJ1_LX9a;q;z;CAgfw6x?s)Z zKe#jMYURdBxLf>r3hB*U7XC+Bj>R!?G7T+npfc0LI;tYarbpJdDF@N5!6nwAKlq$ERvSxyA=h_nv;P+lWJt3nD4P1Ux zsI`mvTDjb=HVTCrj(L^*TD$C5TI~Gvb)yM@iTSY^teek`0WfaeJV;H)wQidI{ybwF z-MXo!vu@ZiTe5Gc8@qjTic#mEzO-66Cn$yf=_8ws^G#YRw{h6aCB^-t6M(9XlYF1Y zKcKHMt(^ZvQ^m?jdAOAXg0e{p?Hsm1i=Fegmf1P&oUfrlynt7k(TMigk3fBry2C|z z;G@5!c^?N!x{@p8%jFhoDOYh868A^7>OrYqZ#PO6Y)Q)XYArF9f!jG>v8+y=qGIO| z;it57KAoahZs!QuAVgOxJ4Xm)d!uAKr}i#k=hW#Jvvb(5Bf!o%3;L*kpqKVG0rB-D zteov!dxpbP>GJFmq-Ox2>8RhD<8V#XeC38om^2hY!m6I=4T2d7s?eU%thX)lZ7A{N z11a_PMYCIV>_;xN`&{bPVq$F|420T3EBU58*P=i2Ic(4H4>|Q^=hU6?pIgw>C7*Rf z^7zj}>P92+A1i32Tg^U?xyJue@_MTJ{c{WEk#+q-gVOf&16sx0s0h6-GnVez=eo0Ui43U{lH$MWpc;R#_;x^1=Q~K5s*CyZb!6z{~QwmQ1GlIBAwNM2q8;lMhX1x>-5@vrI6vK zaA<{a&IHC(!qEl73Fag%bU95uaEnJQMj7CIV*s75RB=F;HWN%@o!O5=S7S{Ot0zWr`&g4}AV=!+)*VTlN5MA3%N`ZAE zndMsgFqKG2ylwlb3@AG0Q%aN@&{RcSs@t{=#3>~sPqs0LTI7HW7Y&tK4vC46>@tM< zHe^UCs5Wqvpjj&i*nImQ&K0z)Z5%7`i|tCY*&-S8O+^{3bT32V#eRqeEn~H`n}y?} zoE~p}(9ijitwA<}f^sG@18?C%B5Cy0o)WYT%Os-R(5BEO*x??1T6cCmDsJ(N++qF1 ze;~>G`3dArxvkxAJa*kW?cfD5J-?ChVAO$74%>hwEmrs(idT<~4MX-0R1G05y*;ZM zL*e&VMC%E+rn)9Labz|Y*>V?k5z3ZhB3e?0c&#ynE)g>6g4dv{F?GS+XsU{ov2}s6 z#!+QJVMPKdQwG~KhLS{R!aQD>BzXFE3K~2H!xCk3FJHA@E4J%?qnfWb%8j?uqcxudFZ3l+0{$ zE`@0^Bq_mHqwf6aLZDVFGb6-xn;DKL`NUEH~$ON)b!@3OsqN&=G#(k z+H3kVw26xHsn}y=P%+U>M?E;Z>q%5jZ_UH0S45=C)2P0IMwT=xdaPOkx@6cc_AoPI z9kxio_oxqUC5rD9$?yYX2%VHv$&kE%`5(3ly$2PAj{VCq@6kj<%4k5mxv?c$>ZpLA zI!Y11wL~cs-q2_xiBje_y5iYEN+E`d&|BPV$q?rN5Gu+Y&`gsO#rgR-zGN<(YV~qZ z@@jQtRW{4Wqihz7m148yE|&4XWda8+Mw(lBNadC+Rb} z^1Z27o}l2^Mnvcus+sd_^vvnVYZvmU`BW(8o27CAK`p=7^7EB;vF%rzwKmaFJpC$k z^wa1v=~GTegq8`@QHJ32&!&dz2tB=!nws>KHnomLIEl=4X>+X507@8mN!hJ*f0YKM zW|~7wJOx2*FoMHxbS^NPI(QxWa$(h>4(>%$#Znwk9aw|If|9p`l3&Xg>zrf;DNB96 z27PkwDAf?>t=5CKU#gcIjcUCeH2iuiUnsVMDnxEt?s#{~(+>Llbn~1B}8zl#N|Aqj`659Tjez8C=`*nl_dY1yPbuc!cO}jQ8F(~%+Bm%w1 zksn2L$P>Ay^~2v31>@s!yDxem^~3i7)Ob51Q!d+oM_sMOW!2H#ZE@D|QrYB$yIX%7 zU@%kJzJmo#B1#z|A&gRsQnDv{lu}F%V&y+MjIkk0Ja4x9nTvtnX`>>9 z$YTq$19#%@=t>?Gt!3r@*|6+TJM5IuGJ#sSIHrq-Ui7OeI+0ZN69nE^SEjl*kouC@ zmTPkFxkgF=>e+mDTwVv|MxouVRO?7KF1IT6Mxox!7g~W=thL+q1|1Zz?1q!=)C~5; z< zq>RJUK2Z|?^_JN=liQw-2I+V))sCP<-G#|*SJS*HxvhIjLIhK>`LDFhUlj<7RYRnm z(yFPX=#^VFg8S_Tia8Z-)d)FkZ3QhI5Ke&kFdOv%IN`MAf6#InLzhPU9I?&$bB10 z=Qjat$vGR(7LqgX{t+$0w1qx^hpVxLPO;*VAJqRp=$sox7EB52=%f+!>SmIdH#GW( zI3CiNNqN;tBQyQssqvSWmT;P4{$P%H0X6>_GepKw_J)$?{((~Ems=FW>Bsc+vQ5RQK}XL1QY;oEz{!dti*wjWD8tp0K>Aq zjPvaM+|9lIf!u*PoP@^(RGk)GhJe4Ar|e*VnJ%ZKI}>hM4weq`!gPbFSA_iZpym+q&hjPgwE6|Cd1&x|3(3=K?mp7d&n^ zowm@cSX(`t>9hfTjcGb$ zTD6wXPBs>s#c~ms5e6RaB`j3(2*?=;2e!&qRqjI8c+T~q=4*C*2u_H3D@9l%flgTb z{`>Gk#>MX|7VxX)mSKLX(a%COwgB-K7nwOLX;sbGCr28cqbH=f5KhJ^w+MyG5fWW@ zjwM@!`>>?YBAlgP%pzpJjsT1B%z22}o_{d5rmt2M|uTIFdSY0CQktkFof51fT5X*?Ir>bd^BtnaPScx!>0(Yn5yRUAOt zM1M>9^4e%hwv>QOX1QEl_m`RC&3lTyg1j*FW)!ORs0ugp|McU3%G7 z@ctpk6?I}-vTD#|I+MtIA76-&hC2PKQhr2dE>Tlp2;g`R?}eM6e#L8|%uhaO*IB zlNjP-q*xc%XwLe`U&Rtbo%R>>i|I7>YjrwJPHC0(k$+;o@3r=!=vL69lB2P1j>o8O z4!w;_%W-+1SZe;sv^Unfou(U6cjeCCg?o7Yo4x(P9x8OQ3wQZqQ#wEqu{}>hZYdrN zhW#b}hdAk{9f~_n?^ifP%*T=}zvCp!Ok($6qpnu=O~f10-#>F%fB!X|+d4f1UZP;6 zR(Y{B1`rv5ru9;d8`u@cEPk$^){CA)gM}YSIBtDkD9Y^;(0N*KGnzWhS*d@LF#yV<`0m%1MLe#l`;8aNl6TTN>W7+(#*kLu~uRGpEBT=sOfmC#NN_;|+PF;OwsT>o76= zFCsi#n8byb0IBjsB5={YTo(f8(?onLW;-h52*2mqWje)Ij5@TU2O{01tSVsF&KyMb=zoxLe;z3jUT8+nQL6QqOsA!eOy$0EvI#Q{?-ge6i}mb69Pc3N0j* z<-HoxE*s5Cu~i5vNWL6#!(Vl&0v9?7;pG+&;%=#4ZlT{=o)54U!X=MXIn?X)5clXW zET91GU>APv$G`ohsd-$09H63w+%ZnHPl=8H85DYn5`)2+DNJ zbfXE7;jm}}QH)lrGP-emzXq^{<-rgod2dy2WEN+NcI9Sgab9$JadsB5j5aDT%8oqT{>TAPS%Vu0n>nZj2-XAeO5<}^1pw`oqd5%+y*mlDl z?T6?zw3lmlK&1!pO{d40frnCa2l`9w?(?ug9}I$E9zO5ShZV6^F|@EeKkO``pJ)P7 z`W$%^lOk+SYAP7MtjqPp*+MDkqyxpr!e*vq%aBF zncS7b922gf;ubsjzvxkL%oEFSIU2FuM* ziO%GLnf)_U?S6j-`z@3YXy+)HeZYhK$B1Eb%%gu1y`EV-7#b)>VQ%Sbu=o@fQlo$b zEI(7$K_knVGJ33rdG#}8+r)_i0MvGx>}RNT7(ZT*PZSyWVxwPO31kZ&zmQE`??E-l z947}}iKf}Z$7H>l;bXQwf+sJt&3TlLz(kX4*7L(qph!Ul?pe~|^ zAWzWTtyaFnDyjEJx$@>kGWl>X>v1yXlJG_5857#C4{v4IdUG(ST0kmS=CMCK;^X>?}d9;ahn>DN8MErLG8+{_rvwX2$zrc2G4#Ot)U?cqt_<2;`b*PW;=_&(GThsztyZ)Dz#?7T!LEtB3pVNR}uQg%JreNdl^P%h@=#?GTS(p*N2F-52GL_|P> zm=i#;-71vYjb^P_E0%p6#>c%_MZejuAx9>tG;m#LI^*f@nc|LzVs_){P!#r4%qKc- z9@ckS>BJBMCLcT zNp!~=68Y>bBXcr%ET#=;-DcVZhh;*MiE`r_4yWk&e==xUH$o7=;E)nZek4r)A4Ui9 zq)e>M0~jFPw>WxOw^eSnt z-;RV|l9rbrCTRKSL#vi&Z>8|u@w>Xf(;=Kf%Wp>qF5PUXP*uwx7mY1s!db4K99kZW ziqZ0CaiqDltuaNXmM0=0*}@5+Ox5J7`C7Ap$Zw%mZPu$593iQc(xA_5co(!Z053?6ryWC7EO>!jLj~BfYB>{CD0Vs(d!!>BB~qB zeizLNL3Ik3g|^F-^!kt=iJV2@`ox;_y-h~rCLxXI+K4wY7&T92yf|Xi(Bm{ljrm|2oDyuk*nk6({TchRzh=&LZno(l{*EDJ@??;Rp^Bc{m zx#13QJg8h@&d4$sENSKI*;(T3+1WMc?MUDMQ1W*)`wVv74Z)9bq7o#8_(Wx{#7Sh@ zmd9ZM#b!NZh$`J?ga95sDpPf@G=+8ku2rq| z{XdjaV3P2AU{&zbb~h$2FBe<2rdMtkyoQGgqD{ZiN_|83lM|pgvb%{VU;6aE zFjhR9!ZXT?lTyBu3r5r{FLHY|`!uKv8+vU)Wk*~<&>wGWD#?1A7 zmY!(D;aN^}G|&`mSuaQ07X$R?1N0Kjj79C?#b#MyRN{nY$#$6*px`Dl0TjOZ<+2Bqla0GgkY2ez*TS3-_@{Nr{iQU6LSMITyZ=TSoC({5wyHnmcoR#R z9PT1h5Xl%FpqZ$HVQY=>N5yF#3tQ7dQ3{(W(%@o48e}vqFE^UU3lqh#G{?l8Klvj- zJ(Gj#PfrM{Pn{egr(RqN3w>@v%WED6rjkBslWOCwfh@Mog|KbvfCsm2@(o;4hWc5> zY6E$0g?s}=piz6jfLqG)K|bGr=hn?)+;dw&mr0*;D}#WI{$}Oibsu!?qOwu_|BesvDNJKBR3DcRF#_RZB2lDJ zpBvCg!sToNrd7C{J3%n#(ASv4WoBYvPAgp2L$*8MI~n7HaCcAEd)4Yx3REui45afdZ7q``_VZGCZ_2yx zsS!yO$5ZT{k48=@fNZ{Y3)lE|dWTkyUOZ^kUsOc)Q1{cvLip0>LmadYhKIU8i@v+z zEvBEvyDn3057Ms{cv2$mg`5A_B(U!t38vB;H7c%KmMquYf}O*S>DgJHxsTIdCbqGv zmtAisqQgB+MS#A+gsW<3t!z~mBuLM4#^tR>C%UPtN)Ey`Py8}R27I=vK$G-remNN- zUxAP(suDuJlFt{hzpSCy0sQ8rM!oI@B`TO#%;WZ<)W@f8MVBr#C;_<27 zkrcRep4~HYHTY|Nq`g+ zAzb2g@50A6i#bN({24w^C2{_UO~NK|=uN!DF?34|=+STThZ2ncW(*n6M_F7cRS-HY zh7-D1@k&T?Zx|s)s~(6sK0KBO?h~KXLSp#LuZ8(n-R-cuwXgqmfG>tcJ`V zjlNTn`3Y`MACKC_fEDTTs1JE)#15|6M!ry8Xa8)_V zKm_e(PzXweX1Ut-aesNjox()boB@tyFpZyLb_TdMlEY8(Pyxgu;t@vc;Gn8b_231R z&7pIzs1QeKn>pqbNy`k!8>0$V7x_^c4;XS)eMsOh8xxJEz${Es2a^y8ggJ!$Z84}+OZj@c+$#8Wzk(AM=duU}d71+XIvqMw?{xURNc^n1pWi8-AY%$=|;)?;pH?is3 z;USL@T}7v$$m^-fm2%>|J5Dv=!SwkoC4AM@fR8s88A(d>xn$PQIhi$6J>btqU9HTn zaXnyQg4I0iY6XFd*}=#lWYh!R6n4X3>E&X>io1}NT5;WnqLtgy>$|S{m4A(KCJVOE`*&WlsBL$ zpr+$ykARp~%6Er*6c=vzDB1xjXDQ!v-D8bWSu~u&1Q6yZ9O@9_b4uG@lmp1>s9X2 z#=urMiLtPirqM_RU#Tm*Um?@3P_xpQE^Z{vG6fX7Stj@S#LhVO}n z!JrrM6*GqY^C_;2(iHJM`)ZhA1C-<&sr#5iUC4gVmlqSK`BW;z4?4*~H4J57i0zSg z9wtKtfO z^WoLcJdi^L3&mMOith*@%TtHQoIQw*c&{}t;y?5K{v!QG@Mv~cM>vj~hvp9~oxN*1 zvf}E0&_JV}(ztzejzZs?m8d0U{ISucZepmEK{h>i{L?%}PkfuRbFjTxvGp@Fi?DLB zK?dzsyIF0+&sonm%3iD8C>82{wNa?yN*Dak!!Fix7xg5|e*Q~p2ua@IS>^voO^u*x zcd}(a-ya^8O;z`krIQmGACZMW6Kwja`&_oLNvPamwF!+Fq3Tsf=&`mZRl~R|NjV*7 zQfq5YN6zS1XQphaGpDnu>piHebR>+OkEYpEXGrTMmHy;>O67SY&}!AwOvu{YbmljD zAoyJ)ZaSrM?HW_CS{gH^YNb(&QYwMxJ%aOARK(>53F;~$b@9)ujc(%UP*Dr!*g$@Y z;-6+Kea6Qd02dl9rugS`Cp2&Eu%9`@c*T~=UCWthGiM@h@3iY)zER6JaZOnPb^1$9 zl>98T%gt(~SPu#XDqt2rE+K)(G}Z$Gu3!~?%A?oo*r$on>;JEdf4(9UL28-~2I#Xv;Pj|B=>OG`XPwz(4HC0dB!C4Us zw4x9uWPt%qeOca*x)UoaR;S78~7 ze}2X2D4xF*wM(NjBR9VIr+b2l#XrBbs%dGu)SOAYPLsQ-&=b++dUG4N`w#hqnC|Sh zSuv+>!qIpXxecwgq@(fjL(StBQ^1pp+L*U;qrLThUHI#$O>s1SGdgf7cEk2ikH)W$ z#uh+4(bbdVXgpO4Cel;NdvdhUbpV7GmziQr(S9^uK{JWk5XG-yD2^u<#Q=H@4o>zGe4HFtQ=6RKyj2Y;d z&t}!!z!s_Zpu)qk>29OxWUQKz^D3MpsHS;@1d#=9{0*a`5yONYr!h>-?=l)DKcHdkhRIPM(Py9w zglvY%_t+x!9#R@6TQQBbHB8Qh0En=l873xhO~b_Ue#9^_ztIen9~a?V+akMBm7gCM z;bf(jkA%X<5+{)tY_&x=FEm7zZg(aY;j9?ViMb<&v3>O8DPINd8vVPQXcRcrmB zFT%NM_&s}7@Y8&W=3L^9&bS>4RhK`HPbf5B|NMtxhjP#f!xTG|Wpv>306KOkw?t!$ z9m+Ybo*cf!_#MhQ94(XDp%9wMj0jP@F-2tt9!&jOg4s2)Ly0Fr`jnr2`5rPYTri_g z`PmoBAaX&0KIMfpA7-CUq>$!EBOE8$;gYd<%F}(+)J%CwSxEEs$e&NF@JAIWe*{YE z9o|BkVUk#M(}FC6vD!MC_ohLaC_eckfHtv|$(0|BtT{)?zX_r*a~aJq8nPgxY4{gL z^HipxIVQG^KVoGx%@t;Z>OV~gs%uk5)4jM9HueuDv^;O^c}fO&%~i*n0)}RZQI``xVhY*jSH2jT#^4&~L?aQTpg zGh;qU)%Q&h%pVvZ%%7eZn9~Xuql%^p-^mysgxe=zX`$cbsuU$VxZmXB1W+m-4${&S zHZMeBOss)YI8sG5&j3G>oico}pc3U~ki zQw{T!kEKNy(G|~E+m1#~Q(+a=Fi%C_YONwBFKyK@k7JX-_H`txNpDmV)S{XzcOOC6 zRtiX}#T|*c$eHkpBWS9MHCr^{J5E*1-9{(zazfG8=E#6iOjS(t%gG4s83=8nF0o^5 zdzD(L+VJXCuk5$HdaKZERdESJvxNO)jY=QKk4wwqB7G~mbnz2?%Fh*TVV@?RE4n0- zb0bwTM`dZ1YG*;Pk@$IDeZiGY%|GXDr3&$^HkEuXOpl=A9@onea=k{ ze)OI0W2t*zY78CEQ(4?37lG($QJm=gYQ?M9>v_K#6w5vi)s>5-B94rEC9l~CYIKuc zDx#ld5R9Kvfpm$!F4A^}pBJ!eMUH6akV3*JU-@>k)q_+L^&^rC6m za#u2y>y#_(E>N$Qf|?r{>>230TKPxygf7-w~zOp2UiKwU>K7tIJLMP?d?^$-5SEZSGN=`G`EvRDPq@19gn* z-aYmH`VSiIy}6BZ=gplzcSdaK-sQRJYiTr8OpBI9txiL$Q)64r?U}nowv1-|gsYAk zJ^2;A#VFI)x)g|vxiT-o&b5^USn_Z3B{NOkz2{D%c>O$g@#_BmL9Wwd7x?&0nBb=6 z;aqre>|)?kRk&8pUkX|fHyzv;6rKtPGmg_#a_*mwU^1@wvI({Bm#Jx3{!CloN)DGh zczN7e)vPx2^F^>3q4o$Pi-$~>r6(!@`vjyTI0imlyF@=#-8sdiKx8JjpV_>QVnE7vPQvr()2jWV`X z&0@PA6!Yzp-)NP~?bJ8c{5NAAH<$6f4+$Ta>Y~jT-}`)neVUv(Edq(cqUP7}Nm%Yn z4NIv4xU9U1nwqk5vT?-=uE*VO+NC^PPC_(7Uv_%8dh?xDj=au77OEo1cJ0(LQJ2hK z0`)3SBwU`K8ZL_KRK@Lq_%Ro4j<&jVT5lnOc0LO7e2%LT8D3#4lGdbQjrw3g4bwO^F@??N#`~n zFsQ{(QE_}MvQHCZMFm)OogR4!mzM%@r__O^J`}rR$>lt}Ttq4jZiVFA;Uo&)rgkid zSbr#y@IY!LD0KXh1Yl?`z+b}08A3syz~`yx_(N_fIN~`YJq>O zHgmx*##4#sqd%b&mm7%OKK?-hyjR088!(|%4D&y15;lgRH}MSfvyV6?rvz4ByvnIO z^rBx~Jy}UwI5RaZWZ`+L21gj-Jm0J}1FwLK;Yy84IViX4&1T&X5dSUvMIYBDrqy8o zl|X|dJTLuT=2c7dDRKJ|d zRo*>V#3uf>eb|EaTYY~Y*{FCh9I#)zXK&iQc<`p({bu*3-8ZokkvGlGGB(irIcXif zTSwom+r5r`w~l|Nnh7h%;Vb%RcUWyQ>`2WY>h@@n;ch#evn2CHC+O7eHsx7kl-RW2 zdGzEofH$%Goc%-Hi;jZTpqRtm+tF0nY_F$bY-WX;^m~tGs~s+mC^$^3#vTApaIoB* zWp3T)9#0Nm<(4sO_#ozn1}!vDrDnV)$in@{q32oj%(%b%jCZ;LM$_ThOnWW!H)qZ{ zkq9~yC%Q!e526V_pYR;H8(nua1ETO_+Z#=Hnf2%hqS5;>i1uLu8oPdu{W=1IXr+E{ zpSOrhJ3{Z?KEJ=PfV(*MF$*X*wl=NC)?7VIBIH)4fP`z1X}{kaB0(3&&V+H7JuLS{ zpe7xs=m8xbmiv6vd}V$TVYw#OjCDWJ8wAd^TVr*nyPzfP6!%9`vVJ{U*{UOZ5=h;z zQLmQB-u6*kvI!ek;ce!hg-Sw;^l7hPNk)ImC4JYqBxkhm+i2?24mxr0Xy3oEMtY?3 zn21&_YcO7770MI2j^jV+qFLuUwxa2n>xh?`a`7WkODpPSPu<@Kh*lG|%q0m49?ZN5 z>*m2sHv@T)7< zKq6lV=W&}$+2D5Hv$#czA9pi!u{vC9h@LB7$# zK2Hw|FFx_0fWj^;5<$YnCE7s1Nt@f<@`m2-*}=iV%wX7p!7-bg>mLYi1!&-2@%zj3 z08KE}$AhI#3t?kw#BZ-}b=vJ<2~o)$-8dF3;1`Qda{nU)=4p-Zl2AK4dq1#92 z7)onxTXH+~5pGMSGl<$pu3@cF@#{^$ zSy*Y5R)xdF>|IEaho z4?FueufPif1VSHf{5QdHLfQ=#0dlzrT0UTGm(Q3$+x z;5EETu@ALkY3oZ;?P4Y^(500@c9_M>MH8tHM@i`IqpE|mZkB>alsp52Q zlIEr_mHVm7!kvlOj=bYo*{?KAx$LkQs$WdKV&X&Y$o)JTSrQ%Su}T!WkLHrlN5c*( zlb2@Q3&a+W6YXGzuWx2_c~*B$o!mLBzumK0I^(V(O~QVQ<{nDe?W4mhlJ=jBMaE0o zd|sJOyY?byo$Hy4=iJw z-X4B-?f2NHiSfwOqfJw8`tr^Ik(O2z&$05DvTfq@qdbuU^KqZjc|#`~bIzR4&PF2( zpV8xZJ}buZ8S}UdX3S+-d25%Aw_-Z5@zW(V$B>^+Fb7n)=_ie)=wMOpmSk?am_bYL zK?SVCaCs`4PKKM#65JF6D;o#ZEfaTgP(&9R2bpA%ii6IwjI9EVm`&p#cdtAi@|hHT z$-S_oH&c3H-y5>N!frygnUafSa9YHBL{AGLVM+h~#Y zc*wm@(5bAO6c4!vJ&mab-;1US^jPqKeMMgJ09o=g!goGt+DuRofYJ#VuPWn?v+dj>q#lhqdr31jBJH$T(Wggzx5;b3W z&LqMc;Ryk8>PW!c8qC-t--e=2K9C07W1{)3I!Gax+I=+jY6()D;Y1Ge5E=1`ZE6dP z!+-QWTv+-;x!AmOu}-)DE;MxsbLqh+wG;5@XFE%oY-vEFAJ>uu^-@v<{DfVK!;wZZ7< z^CKY9PdW3Rd*&`EbuCcZ6p9N0C-J8o?+*8PE=YyrjRmPRjYc9!R=$)yb=PAltBD|O zQ^hZj7QG&Q@@SEiIwCSOB?OZm1rkC7gu9VLcMYOIZ#58?H45||qkWbr&^x1LWsL$w zv$jToqPN+jKx?g(fXp}ZRmaDC3Tn)UnFR<}^jhr6U%Uj7+YK2W#WrZ8hj#blv^=W=FhbG>S5Tu)x%1 zbAf+zZa19~RXmJ>DQB6-eW8!k^j0uL20K4+NX4^K#)kgN0PHxip}(g-Lc2u`n@H?E zYz(3sX6i;QF*fuKbmda+4j0R}(Nx)~rHc)bbW9l=;)F)AA%ZG%n>}@MM4)I;H_{#* zOD>ERwR+&)t)G#&6J!NhFL8G)eL!0ft5I#@jtDh2u6GQ&8WVS?qN$2IHcnDp&xX4b z#Lh-6R&j@QZ5Z5c;V}sv6BANbCkE@3!A!YS_wtRPh2q<#V!2qU)q`p~-)J`cYQfL9 z3v^bdyS7oN-A<&dTjmj`RE?UNPN~U8p|-0Vjqn^VH$b)6lfJd!0!n`<5&2W8S4^7* z?j3&y8d<#K^jKvXJqmTQ;T<0gm#qHp;}!omzOlKu7igeR@ERv``^FUFC2q1;`)0OE zy$6*993uB1nksCYGDc+MTcdbwlr6m9GC8MrEW(-Qxi(Q2&&Py*p6Pq7Wo#8N^eOjT zU&TI6jQvc}jt{}r-a+C0&?wruA-oqus8kn^FolBeVe^8ypdT2g$7)|X1)m;LFy&T+ zVN~SIT< zJ^ulkD)hVx6GFm4Q9uz@f7mibCsjvy)Tr7-V=Ah?+cLHap6pb;E!?5U)3w;MbJUAJ zrF8xu%t@ukc;qRx{av<@5!$B5YF~$owom$O9BrRMZ&I6BPTD>ZU5#mCorR`{gSL;g zOwmc(5gs+#Hqn@hw!f2=w%xt*SmRSt^vWX~HTJ2ySAO=Y%sx#n9grc`c$1URR3;xW z>z++bO|$MtE!OxvT4bnx%(GX|cY;pUKS{C1gXn2Y7JV6-DlD2R)@U=PVq=ZVmbp23 z^A;yqREkO!Yvg;P%7494a;)*Q1S%G5e2{*zSR?y&1jHJ5E+R3MC5R69-P#Ebz`7MXaQLDrKO7$n zVeYP+t~{SHTTLSNcrrP^M>__;Piv(OS1LDNd=8zp+MU}e=C|{bUAc=}!NA`)=%g1NCpG*ZmhuLChEio1IeiV+dqm7{XPNs3?6>Ur2`q+31R zjxEGJhQvK;jMAcqS(CD3yrXL>k*fFeD8c2dLe-jCH*BI_|&fJ*;5DXSt{S{}Ua z-`bKQKzJ&j8`CzZi`Qy3y#V#B3pEtSLy6v2zE#3MwMNk|wOCE-?l*zChY> zel&J>ntmei;_4~e9nPXhjx?8mBW~g9Rj`O%Cv){Gg?6A(<9$fQ>E3{qgbMcA^ouE2 z_Ui~xu%|Ef=jY?Ks#YPGeL4wM%Ic@`-VTfYT#CqwXF#RVpSK&0bb@y3Pa4lfURM3t zi^f~IW@7r2uxrg3+8DzBt}W}J^6@{uap8}pH28&RR;$*Na)I4fQLm<+?BL;Q^rS*o zp>li+IuvDj!{rK%_%^&zG@_UeB*V=#vy>Hirzx7vI)={khN0r?_j)L8M1@?#60dWf ztmB%#fkeP>@d*j}qm!W~ZH$vjYe7bU(7k*@T;bL7m147slTURVda9MYMx~0=kGRXB zR>axPe1*bIi3+cpR^f>c6BQo+Fh=3wt%UF=oe)l;@IHnPTx!ap@a~Jo?tX}Vu14Wi znJ@TZ%JgLJz^F%#G?zqD6rSJ!L2%NNrJ!UQh4(O45-PlJ(l4g)*smi%;bBkKxfK=6 z_W4LW=>-nmr|&3@R+CVJpwiyBNd}F$)o7%PBBw^A@m%z0)rdccm}7!F z$`N>5ca$Sv0V`}rX}*wRB(<<#;Z~~8}BWl%ywrHN7+#)u-^;y1~4;`z9cd) zb|TZMbtkvuG@(y)01!9$+_(bvi=N+X`o7m}Hp*o$Xcqmp-wK+jJ>YqbGRs5zuPJ56 z`9gL$dnp($FZBk1Ar5ITFVe=nP^{+``hy{gJo;2PfQw3rn$|Maj>WO<94Zt9OFeHs zcc8y?Gf;s{Ps&xwT^=4eL_!(r*N5fp&0cJ({)m_osOS-&hor!#k4=Hyr&81Dt0R zL5eQXu9y}=IE-&v^k_ZIS>2~!%(P&?jsVl51kbG>3XJ}81@Ut^_pnC#xt!y4s^$yUR&-4C ziHNKyPvmMoHU4TI2q&f=3)&+_J8F-zJ^d5+D6Ru9d=zc797b2mpye~h!w8JbY@l5 zoU9+3(MSD$WJbG%fH*62rmIu^{EXmhDBz#r2uovbXS_ga3M){Bch>VWrx@+CoS)gw z+Y-ZPtD+Xo+IoH_dYk?H%pmAP?a$ATe&`(E#>y(da%X8Ozv5o;T$dsLvw7!qD#Yep{7%h z#RT#3R5Zqc&ip*8ljU%Hc>jLtJKC!q(Q}mIy);6=aS<&u>eww()9}=ghO(7hu~4d( z0*}rN;ewfbsb2I^Sqs6!Rx4kr`E=oo9`^h2$f=UfI@i;$^85V z)kIbF_Usf(d!NZ&8CK%*=lcBt+s*Onan8m$)|l$k1-&UMWI5>bl7MoR<1S1)AvMbsurC# za-LXuD!Ou+ERIy+8_-nA)%t(zy$PITS5-eg$?Tn3vQ8!oNs$24NjgpK%a8<Q#5u^mH{<)tL-yP!S@9{E)$jEQ%OWk)NRG4-Jb58blEg)X1hpL_rb7 zjh`aF|M%SG-KE~U@4f1p$-rMeB&mMy-R~=%pn1mdh}W3&LS0-me{IIH0u_M14}PL)5i}>)ln3%n6Fl9^-8r!_uV(j`9h=K^zyi&*ssz}2d0GkeN$z% z+DlEk%Tg&Nskbsmyg`HAnMcY@6K)yY4%O;)k4$;0uAFRyuAs-bph6wO0h54BUDcN? zIe66TPqn%$OU)T7uG#ZZ@tf2p&u7sGW0y91vS?@K2)6v*ytt?Y!tQ%zIf_i);AA$P zSE3XlU4UbeNy)3Us@YbpTCWs~B|lrQ`?*%D?zM`oO35oRw`FYH@NrF)d6yF`3F3yo z5+`}K40_&D9~bU;^+lg=t3;yAF9u^v0e+@S)1*t35xh-#w1hP9>xn%t_~~FVVcw5$ z`VvK~K1ogO#PZ3W7ks+T`+>LaS>yocezGg%wO{&&kQ>7G77hmED3;+K5$eu(rkL*^ z69b1Ft>S3m*BII$jLd^s^jO!LrY&``tVJnPX|*+m9k)9D4+B+wPDm5YI#@?vCeqgN z=Ly%KFBhph)b%zr)zo#u^MsaF#q6oj^%DGfZAr;sBBXtbq$GW%g;@p~-#Ml21$exiiy0$ZkIK z7Wdb?-Nl29weMN*VQ=6DGeo}dA&d}Q1w!|nk!PG)7b{EBSYbObX;Gl)F}nqg)jVdV z1?&*^1(OsMK5KZ51%EcfEFju2PX#+FpLH*98=?3CuXKfgofw4O=s~HtWDSWialr@n z=(J^D?AF;NarGKfb+4XZX)ofMwmNRhz^$k*+!3b8G{ct2guZ9k^P-11Gh>U zNazm}dJP(e?;_XHH(JlWH3O4M^*u?vl=Ijk%^nO^jJ{&2i>8y2a(scKVr?gQJHWze z2Q?7bzy%Tvu@~}wMC{q$7-DZ<5$yVSG30LIKonA;YiDMO`2!}Hd)%3Gw>KE{cF(b? zjWX$+^2OZuctKAilUG}uV)Ecc4mgMSbsnV7I7eOB?3Ok|Xu`8K3~gj?RGo$) zjY%S27>2kO0iGc^0!rmV5octo*<7|!^_r!;=NIZlE9GYs1A<@}vOE0jEY2?}LOGD=7Jez%y6D&GKrP&r<2<|^0 zJ@Wu&ihD874Vk|_3F2?TiA2z;IMFQ%#Mx}=zKoZKG!=1pOor#f8^xc^em;SUrMva$ z7fW|zzfOU4w_S42E3M$j6gMN2-flICw6+>4db?xXdCBs-W~c;P!@qWKZ^fUD5q zfOLL}dJRceyF39Rg_G4tTf=QZi~zWiXe4+UudqoC{#I-JRp%O=scP>)QdUF?fT8=d>Avw^{AeWDNd*XiIW8UB+NA>(GqB;BESh!N*6z z1I14lu!znQe8(P<@kfakLQS&72rZO=%G~|T+*}~E=H^iU12>2xpn$*zeQ3VK(JT-C zEW{qzIjued4Kq`Ee=;FZk}3ib7{TKvnVbcymy0YzScw2p5OR(TKU+&a^>yBBuEARZa0ZbhhrqAW-Qx8y!l7#wHwf zXmvcL(xC5QrrfG$>y1hYF~wrhFO;jba;{oHoUv5P`jr+PY&yXS3_qV3@+01tw^CEv z`!d-ChN@t2>)K6b8wa@y@*4y>C4YuS_5w>;==$Jqh2#$=h6b^U$XIw7jY5hc(_?+R zWkw2~Aft6J2|3pj7QOp4b;tKN<}I0gqoCICr`EV8yX#J&_*mYj*wV}%bk~I=W8p8+ zRC5a@%vd0cAv_N>Y|(@Sk+vXsjIOo~@L|O7Y;@4JBlFn(uhZ*}+20uPyW!5gDp*Ys zb(7f8U-SnGJO9^-9Rs#WJkw&?l*>qy7oO>&@8xUxteAyGq3`=gSW*SF>?r>6v56Equ#8~ z&jEK=U>V3`!y@lNPcNXoUZ}{4+2&sS$EJvgW;9LQ>_npwaYK)z#Z7E-K$e;dFSC^# zkhgj^XPHi*%(BUwJs3nEog8otnyy-)a8EN^;HdD}0xk-mYX}b;xM9M>{>Bs@AJbyj z-wT8e2z)OsNeSp@JE`5E)f57HN|2Ti&{eu}r%>|CezjTjD~K8vJil3O=Ii-fuHYAw z3h47<*eSh$eq*p{%1qP!_Do1$&#t=b(ylP*g3`@YRC=61(h~H- z47pcRb0KNz8*M-J8mnhhPNtKzuVRxodoZXsTGGA&O(!I2*#bu;?U`VQ0J?^xwSgNZ zY3*-JN&A`;K&>K|!$q`n87I|Z9d}Q9VvpVbhW?aBKEG~}kGbP`Qj$e5M}pyL=)9kL z<@9>73jo?gK4?wEq(YsJDPzf*oANNaa+#ox9mpS`sYb@@66K~?8xUqMxR*Uj-E?EH z#09g|c1F^Ml2Ecic)Zo%+!T6;rb6r@HwI0w)bt9~My}8(HX44l*z$@V>Z;(rrFyYI z{)R*wgI)|)M)Z!mSCO*vYYDa+B2Z4ghq$?ll$E#eok?uU%EmpstdR7j1%E3XZTf^M z`AxdkaWvvASx-%EXUU#d(kePfP-;~c)#aBOo2Se!H8!49t`P^mv~3Y*S|g~Ds0n0J z?00JMPe{D@L|GML=Ss=;7ocZp7!|#06|`7r)*HoKK3~mwm25d%LsjCeUu@PvpwU1l zsuMfc9q2OdQ$b3EnF*6pikm5JNDS2xl6pEdwMi;r_EVTQg@nARN|QLLdRj&3&U0u= z)Qxd`Sw025g^jC7?0HUL=z1gGb+sRTxhTM)I2O=UQyeGBbwwv`?hycRPCSM9r#|mO zpMtx*LcWO$K68}@&bPu3RP%FruT;;LOQo7usL-|}5qI4Y16yK5!Cge8skqCnDMUt- zbfd>BOPY$vXp-T>@J8_&O>ZMWvW%vmr(Z0iiTyeSGMc94UQA{*MOW>5f;{jRmU)DV z%NuSV9QO!pWt>+4{p<~@vWj|}-;d{}x|;6Xrac?_p*_o_CZ4{e(wSH`(~L;$zIIoA zW%2MXnfN4}drf~4(YZtZeb_FcVjs(gN?+3J{lJ>OZ;K{%Gj&2-67gF>^WpPPcK%a% zA?&k8kS=YPkT*)o{$a3?Ri{8Hm~=iyy@sSf-7dm26GA&%;k21+wAC0wd|{*;ZIWL| z0I3HGE?;uO#hEts1vG^rmn7-v8}3nD*(+ic!_afq#QJadSYu?b@F_&gXp?h9O{~A* z&@nRHwn}dgWB*W`$u9z&1rHR?c6`#s(@vb7jiw24_9XWxE}V%`lH)Az9%~Go@hMCK zXLRPL+Y~Z73}+ko7ZPLgPlc~r+^chCh&?kozMkVA#f2|1ih-{UTqy;s5`U^y&AZ1N z180016TsOSEZA@@Q>0-Si-}O(?_QY;UoT3IuOD}h;=-30#lY8kwOVo?^1l?e-sB!_ z3~cd9OaNQwhFLmcXxnamC~0%#xmxybxR>oh<-3!k^26>?T&NVI7^viFw9;K}<vB;1k)IA@-t7&pcHa~O2r))c6{lXOsS1vpu@~Wqmh3VUA zr?{iDRVAi4enZeui`I(Q?1_Z$PmOupaD1?@Aym*gD&_sSDg?}h)D9vvk z!h=wDf24%glSc5CxRBxH)Rbr48IvAnTBz4lXtbKGVxv$j!V6w4mU6Xnz0jyN3fby+ zLH(wuIl+>kep3YM33QCeb6+eV z5-=-rpLpx@5?6BV5~Gu!M~fq zzY2K=^*SpyK7c$k0lH9{xD zO>$n+z~}xR#aAD;nnx1}@zqhD+;5MGWlSetxEkB;Mj5VlO1z~`!mBI@+MyI)La>Ng zH2re6S}0~~MWn?ys+BsbEO^yIGhg*v1usR&8eO{d6oE(NvUb_0vAL{&BmGgDbVima z7sO_ws*#^cm&@3KHTpOS<-f|ZRy_TRrB?;jxu)#os_^a`D81aIi-({NkcrjqWkz*K zSO!*T($yxpa!HlyfufFoN=2DM;{O8!J?PO)xuVCq#5aUE-(M`O8J@Y=rpktkhx{YU zI04k|AAj9(8K@X;k{TkIbMQdTdE=j$hlqfkM!&`ZYwvg=m)LzwhX9z;!m@ z`(VkZ?U!rCFSW=FO*^urp{`e`f3Zl>zaH%ssS3uBYrz0=Q1)95n;U1?Su{!t+s?)K zI0bAA_8^@UK9oHUg@C4>?im45oeRRb%59DN~Z{;d=|1Oj^Z{OQ)u6T=x&dVtM zE~?kJi(5RDq$XOy#z4Y$<|wXQ2-4J;?V%1(;YtpZg~>3vObv3G*pT|DGAehZ(r%hk z8`6wwK{Y=^x}aJqYYfXNr=fm71VZ4Xr#_9 z1e6ea@+spF0H!zWNm`)J^I`U+{f%Ky?z;+l;eVujIw`+!*1o4r25gVr|0bpE9=rd| z6H<`qmXwm}a1}}teUb80eT}Us)vWZgo=;264QcE$x-5bSU)W{UY@txd<|~Dw=OH+h z^~#NUp^|Uls*gsqp35gaBk?on(q$m0w#$YO^Mj-6@U)Dy;WVCRS&_-*^_q*g+(nj1 z?+@rKvsrJQN~w!Gk3|)C*lcvEvY%m1ufOA2?24`#*hGV=25wG&^8PH>0_!$PzF!pqG zkD7DwY?n?SSUsD{M&DA!=d3TY$(udshMmLD{}MFS_EZUT*26YcBc;>D=4l7mB!I4= zS#02jX%_n%L$eIEqCVdpl#C^QSIt?OEI;L>SA*J;95fKbajqZ^DMMRc!>d$VUbWIH zHVbu#%~rjVZ8fvGCXPMRMOx9p0^(+IjOU&hhDa|%UuGpvg_ok>A7y01x!iz~oW4}w&7k~i*=o-?|25y*iw7)T>^y@zMX(#sdYlj=78;2;oh6jT_`?Y)S!0zQ^2Y3mt1G^8* zQP&6N4jjlFIB;OU_3pq+|i>>&BpuF2@mK6)Ol7k6vmO^2{BM6_uv zjtF;R(P3*+Ci|sB%RF1S*@Gc$qgCn(nob5SSEu4H?V6ZT{28%W8+)b{cHSWHG$)J= z2&GU*7lG6&=vkBV0E+xHRz-%>%v$$9B698t%(@Ut9I+M9_28B}_hj9b2aihQk z@K**oBq*|Pww2EC(HF{^`!q13%S}_jq$;xiiJ+^YH;GfXjqd#Hjota%+V{1WaPNY> zwvYp?=Y;}`fx$Y5x{ki&)`)TXR6U1^;eRMteJxmESO&851mjoG)TLBI4`V*Y8kq-Z zPrH)O+C0C?A7aXQt>%0BpSp1CtiJx8NzHeQPPPIQ2E;dt57;}bAoyFY<3jg3T*sky zplQOBqtotDT*slrD25T~JndU{k2S_|C_aT~9pE6aB#lOnLn&tOe2LhCaii*~^D#VJ z&2cDEtKMRIej4f?Ku^`Gw?2`Fp-`*dd}E%4l9Ps>|09||lI)V4h00uyt69axtb72v z`5oRTp*^_s9Aq5-p`!0OCp8%QbPEK&I^nVFWC>b8>7baTu!!olS`qHSQodfTz&5H@ z%ej0u+bY(Itz5ob_Fxeir^xnQ$U8y4?T*>VTj@=g?tH07{t5uLdo z-5CWMi7B8Tl#CFJrzHvL|i>x7STjPf*rIuyg#@>#3AG&hsQ^zLtN6}Q<4JErB zlSGbo%7Ue|ooO#t+wXLiXs!H68$p`Ixwc!Rm>3&7!ihEn7jL0qIWEpLN!-B1&(dd+ zdByt1G!_$YVyiPzsf#QJCVm-BCxVG>=2GMEaR1}Z?Mn9BY^YSIeK13L=vc&Mmri1q zaQ5qkR-@J|WW8n{8`V;+-Y6C7wJL%-UNx7?l5jq;hxI=0Bru&m)Uw1)ksqU`w&QWK zhxOh;)_-QYKj;NF6DUQ*-m$n4Q56yl2bm)){Q=b;Z$hT`eY(M70Clq1KI~I|)-bC;K+F z=E7(#KGDS8cdUL*@uAC~_(=SJvZ5A8MVr;|apb90h#aZOJ+>9S8G@y=;Cg7;4TbTxvz445_u zS+`(@Tl9s=jp!!1R;`;Wt!|>Jj%eX1Kf-5^4OE{W0X=OfyOnv^aJvO(Ice082}Fn1 z*)`$DPVw~AiQ%a`+s zQ@p+uBP9r5;!NQe*{88*3Lg=U3++fDgq%vSm#-CL_PdMs(iy=;>>cn!>WZW7!NTm6 z*w)}R_BB1I7m<=rN{A^DZI_9ZeXdu6zLveg!VKw_%&a8a*(v?r3pz48dwsKsj&yz<{ByLf((4EBhN$UHvA> z|Hp|Zpob(^;HSYC^3e9|)YR;(`X~q$1lKJkvV*KUPQ4T&AgC8lB0UZ6@Zme%%v{J=p&TtD2UfQ|*~V>r}OG zGPi?NM*baQLPCc&@}-JjY9WAGZx&Ij+pFV8Et@SsxuVE?iME4ZgRK%olFo}(6oyl8 z==#v`hC4n4okqM>%I0fM2q!3_^A$z}(ez?jD9XjUqw`oWw%l=_?eaW1is+CyA;SDB z*@eve67(pL<_h>)Qw%T6AdDy?0usl909x5*qf%*=>y2^+mltNMezjJIdjJn}2yG`m zzgUlf;)oFyO}_N0$fo*S0@F+c#mP6|f)Vv9vZ)^7R$Od0)rLJ@8_D!i?#MqC?PdR5 zVk<1_r>l0wlERg7H8r(e8Qu5N8p3W8c;ESo2l>gq=~yeYaFYx@+}<7B3R@8d-qlyb zVXgVl*&PIw1xvQ1stgoTAmCR}t{{*CXODI*p%nH?LG1R#5F>mE)9@BFa`BaZyfCIT z!|!1gMrnpS(6@fPknP~ZN;5o@O#%{W#JHh1x`}EUH&2L%H#&{^N&)b&HCSS~V?924dj?Oa}%%Z2L35Dy~ zr?E8szjea9xx2CyLeh=y%3_nHcEc~ncT%A2sSN%ncT%`*5ZT?t-PrT+yM)1V3)|_2L$hK-tvCkTi<=X4wNHuzrCTwtzt=vGxvC~;2tCHLl@^(FoGpA@_Q-(G89LAuJ=7~~Vw|8$^8uX6c(M9_4O}!psy(0>_*+u-DH1dK6M-buz zxX)-g(^^?-P*gdwL>U=LqV=rNHwpt^PK98hp1%|Wr`1T5uMpz2%1M#x`3r0kVG@Pj zL`#&bO;$|;eGHPal>+dZN6pDZb5I%*KOZDc%j6_}!*9h~!h*y<%b*rLiS#7?%s`dh zjQoc%i_;`%kU45?kOR|itgyTZpZFpvoo}~>lT<$PT%q8}iBX_w&CAfpB@0$VD2P@qELJaH&DUB!;@Ezr zSS=K)^>QhjD>Z9~cIRs~$~j6T^Dkl`j-KKOL%4et+t}+8u$kD#(!MZmt|_;%DGmko z660!QL))dM_J%g$p&*qIY3`kh$qoQ@>m54&Lvf4)b77};&fzC>@Ex7mq3_m+&veUt zxQ&j2;G^BViYQ|M!y(yuEiIDA3G5P{uXBP<4-{;`ZJ8M5xRDM|ge457*Pth-tcgC( z@n$sD!USt+m@xbOsMlLM{y^vT@HTbAV%B_dG$-qf&8tG@<~)P(3MW`}7fBlKzYyI2 z!|0hSygT3N1{keFD7^ba=C4nJJ{6ou1f7Z#-J(F8vXJRG;Rhz{sfbe+G7UAn(KO$t zIZj#7HjbaN_yPfqow8uRPJvSvxt@Qdd#``UTV7s7_AHqI^7gaH^A=B$XN~x=h^Y3H zIC-(lJ;byq&@JyVGfrJx7`-&9TwR|iljYxmHC?@%`YF{(jBf^A4PP*clNiWl4LLq3 z4`xJTCgh05MgdDMca3|d%va_i0lgJ$qu^5ozO8@Z0-y76#%45i$>Px5`Spn#jpWWN z^mNwItnJ+SuLFIn$(_H%P0r#@k*hJZ$f9=05qWt1!PLmj71JP-Db=TDtCk7oTJo!zMR2ie z^bl*|`=~c=Ew~SZ-e3)D^S8==j?a0!4t=>O){*meE1GK7L&78jA{H(GnQzt~gk=$W zO{}sh9(VZzDkOZf0PvF%5swlnHlal8eq|^#6J%HCc^FfiST4{{kek@Vpr}Eu+3*mB ztF_>NZ`A9>T&0-LRZFd^SE*DJ1Y`5FS-y3S3&yGsV}h~4hhUn~U@Uv9z|s>7l7@;+ z$Q0h}dO-K-xM?k&t%6 zlcZlCEGBhi@h7OMy%CE}lHLbw1aZBxP^Ovb(Yo?MKD7LXB|?*im(Cg^L>TB{nI|Uo zw4#<@PP|Bx8p7N73k>`qMzi=0J)WH8{s8rsL~{R*HLOXw`mQfta=(wQ%*ZpzS*qshKAonB)(qOV^ldSy*S4j^-f_JO2hnTT zr}0%|Hts=;p|=zyIs|_!Xm0+j$zIV^s`Q=6bl5;mZF#ikl}v~pK@9*Yd_=)wLmoZX zpaME+chsX}f+Th5`~?r)N;1K15hCo1iq$MpZ)S>|Jvg3+Hnc!tme^(B^neSDtk<<>AdhID+;pPMDvBE z{o3jD+mPEzhYYl4>P&yUgLtiesa%|4-N7Iw9;^~xIGn?%bUr?p)Sl5)RxeHIEmc2IW$)vN;VD z$v)IwYWVzO?NA@?7JUWMYimAKI_^;*K;MLzRGZ3A`n6DZ??lE_e=s&i_!5`bMz4u>GymCHwbi>XMCtjN;c`>-=<3p)1@yb3Z4BanlrqaNnHA`-os=ND&%D57rS-1>X|fBUf4R~ zO8np>i4m3x1_B zUJz316q}XeSKmq7x;doGeC}>O3EBgwuZ#JKZCD{!&1UoUQYl-h7QIr{D`qPVuj-Y3 zubiz_*r}ouTV&#eV*pI}EAFGF_P!|Ee>%>|j51NBO#KWfH1MY?E(jsh>5k!Mb!yq4 zObi9GM}>p+C(wwQ`Xe4YdZU{+<{odByc#JN1D;FUOfkhTTGKJDEuAS6c@+B8-SjOR zK+d#K>EUZ+TiIN(p2d~&#j;mKHLF6gQZ5x**_!Y9IJK3`!}l6=>9PU{0pgJPkbN3^ z6k-sldae4s@Q4LyAa@z_gz+L;L6d8#h&_ZMt4Bp@0UsUW=J6HmzK{%Zllf6{_LP~) z(^rIg`ZWtfY^b#-3SECl@YQ0g(dg2M@eu|KkcsK-r^k9sBPM)&>x`y-K1}>mK zA`0wpOi|E_A;Y;jlMtz72q#5R&1%*l$vKN6}Ln)#@@D`9$Qxoodem0N*45qV;WmW)i(D1ZIJbP1*1Xcb-Ud~iNybVi7+19mC8a>+i2*XwFD)%YM;MK+5Kw2XwU#(MQ)V1g?sq$T0Zl;C!Y_7dac zoDeDvLB>rA8Cw)R8<=?JeX6-E)dJr%Jov&YgBMRzEx=Xi8IPS5~Bo06o2&AkvAzZ5bzXGZx$PO#_{mB#F+pu=0yGY>kX z$S8kH$o%z5(2@lw5<#cpM7JmqK?k|_j+cfs6%llhzMAkx@j-|GB2clQ!?)=d3p%i0 zr$Er*iPBruosSGT><9}vbmu1#a1iCGxr-fBpo8V1p#>C(lpjgMQh%g&PUn5Wv{Ox^ zGF4dNte~sm{z-%ttU~;1Jt0vARhrWD!)wnCU$%MqWPE@(n|ul7Q6S`~G7;Sy~Yt97cRVP@*iU5}FB^4>wDD~a4D zDka~{`1g|Mo08i7C6wtyt~)ZK1`GZaft<3Rw1)CZdrlZQW82Rh^%oZd=%4t36wdsy zan@;2Q(i3F0&TTY&LUqrkGk@eVyV@vHc$exRjJnCbZ+tTk0xmI@C+<<0nvHNRcf)~ zApqVIAc((@_^8s`WKhIMeyim-6seBWR4sq7>gAJD(ptV(ZhCoCyUex<#bN{3;8p77 zS|L~T^W{>#l|KnS_6NpTmN4yql$zS6eYB6=$O)Wbm0FAn&3f$?LT}(n5A|0%^~zfk zFN&-w;WGbeG-BQY(@RN@qrH@IC6a%QTJxQORU-L4R==hQ)Heq4NyqPEQ#X6ig{Z?f z^8qx~wgw50i;!NjeUx^IWWn_0q6|Q5xF~JNhPf#1Z%h~EB^0fQp&RrX_nBhyN1aG9 zK$^rUAwWPSZ)qVyo#eCSLM_`Y7fZNitd3G`xk9c{E5RM%)f)L?;*z%yqDz+vq-|P= zRTFMnewck4?>-3fiv@WHe-kuuCK-kZ{`cbJ(^&j}qfecOqA69Wdm&{0lbYH>CSl_7 z43P&DB_m14JfoOY$$%>nE@Vvd%0{=JHs8{vkVsj1Bk3B74s zgY?}SyYpfBz2^rX1o^%AaxNyJ_j%T8%z#D^#iN_v!tM}QpyonB;uDQKI#$Of5u{U) zE%fE04Tpjppy{d=q!ztcORFS?6gLS7rq~Lmkf0pR(UouHerYm{NMk-1%M*;4%NB|? zzg5A-Pt9Vb(W?143WM92E5w_KlqY4xdt!jC=_R7)RE!wCaOzb!)1;9d4=rjWoN02O z9NsA2nfB`hNajp?5B*}!H1_KhaHc&)I2PolGt#4WQHV!PHkyQ6?Q+e_A^V-CJck)( z#$7u*I~(d{+iopDy4psbE8X>RU?JM(Nab()gP^Mk-N&}rh6`Z!M*g3XrGrFOvm6`Hz4YN!M5^Q@8SIow1BJYim}D!Kdc+vCsvTYMr(5@4tP(nUzl ztYI;VkpR0^t`wFR`>jZJr+cI^l3)1*qJ^ddNl6-wcu5tfbUsJOvAv`p!Nb*fNzVz9 zA0q#?2H*)->4;R2{?fB7UNfDha>me#zb_~&Nfzwvo*)ZWiZtapT}EP32DK~X80D4eI0xwkh~d;x+_7n2mWMXQKZ(n_K3H*l!0(J0okg>t?CZ(qI& z2Ux32F4Pm7OuBCjsEIx3-PF{!x}zOk<0O;5kOX{YdhfAi|Jhz|`o?arJCmuCck|lJ zjX2@r)ffH!kQ_4^dW9N`OaA`rmyXS3;?C4tWt!&}|Lhkx=2cH7^+)TgL4;vjSFl zav-zjz?y0Nm?PlOf7b}$t+_VCn>W3IXS9|;mCg5?-vQKXuDNM(vAx`H_t#vT1O*OO7!~RnuBYkiPY1pK3qg~?;49s17IzVF&7AgS%W zUTtAzHG8iI7~;(ybRp%~dp(Gz>Gxiw32f)&Hj`+y4H!+sDAzH7aKeguXw3XT0{Y$@e5eg~2EC8WXx9lmJ`S@HeT_-s=b@=a z;R)j~VK6^alDIS!oUqquT*$zF-E`sYP=qb@3N%$1sIMka3SS;R(SZC^dXosqu~Ou! z@nKvuVLZMRnGztTMY;rtBJ5Se_RdJy-ZeSc{^0nqJ@{P=+m%Sz9-SO)`{Tp*WhWc9 zYq6WqxYw4*rfa~N=NVZ2M&#Ev`e8PW98R&nF*XLn0tMK{+2>%WvD&Kb_d`yaFf7|7 zG2%N&<4@m0Md@hCGAQODE?mo1%e88~Sj)9=pI0qkD0sPi&C6A5iBGI8#ux!4y~K&N zHv2U8#M+(i%nhF1bkq;7yyh;K*^G8s=@cPu_Rt~f>ChqR_cKpK(z{^)$^K9n_-JAb z(DKCo^COJ^fPOQ*gC6Ue$<%#u=^dY^)en>;)0q{YWm7kMFz77$2-@GF z>150bJH12DEuFOqKx;6$4cRazx4$u&{F%h$jNIgvPAqjUhPZHZvQA$59o6g(h14Bt zlJN8|S=3_e1Fj_@#2LSj;89bMQkk#62RRqE|zoila5H1afb2Es(jR zL*BiFF~~h!M8@7Zm?9bAro;rGoVmg+c>^`I-I58D0lsUF)--96T*BIyHME?d(?x9D z(V9AX8gt*ajHa4^O?0#-Y}XcfS;O-}=H@iHp6dk5xZF=^e9uPDjQcw&j@H~2GJky% z#I%AFiJ(()qFWS*YycUF2oLPrQxVw!G5{3bC_WqDT?8tY4e)OI#j*j|uTvl!;KJU@ zQe+0eb|V8|WoZ&o|D7yqhe5COdh>l$?YiBoNHG*v)!xE8aMYLop|cHhSU zO5Ij7m1U}s{_h7}4ey@F5gIclMoS0@<8QYBz}9KS@z=9Yg{eWirUX;*3{#Fv7l zgvRh)1)9EqrU<;55qH9j9B3W;Lt)?>?y+1Yr}$XW92**n{tG@q;~I%gl6=Bobo!M6 zkm#qH`NqdwwBwB8uSHWEN*g!@OE}3t)p+N*$8$l7k2e;ik~A6#+ACh@JWBYrgZ3Z7 z!_@@sHwyL_f%+04BLek|zh!WKJrhgJpC(Q*$=N{ld{_`(l7Rdz*JtXB-Ns=A3HiBy z76$d|*r0ih0fL}My<>FXMxMm!c9*BxOYK41LzJG~UBlz|$GR(gZwmW*qJ1hVxz0%? zx^7a|p9tljK(PgQKTS+b8vB(Tj_9=f7HVS`OSp`!nnMMsVhtyt{7SWyqwu|PzT`r=*+C`l6WfVlz1^aV5NN-MhU3uQEXc=z_eLW>N7zJM*qM3~O!jv(kO(R3p4 z#;p#FMdBd77A%w)%#x%zvxNZpXBCh)vX2Z9|J>w2{Fd=S{40|J@p`txH~<@78(U&H zborLk)~r#trtH$$#S+~4T((>+6kBy4x52mkW-V8$74l`TQa~ZJMwZSRnS%R*J>8Z0 zg~el;o1VYYzSmo%v#Nvc?#%Ap($?7#{)I*;f8fNWPVKf4>tt<`Ni*zyF@}fWR zarzKSWMorv#T2hUnYqP3R_}Vf=ChUtxXyNEdEoA?vDoeV(^p)2Wk>8W{|s; z8F>A}ePmuO&HFw4YpT`8wN{Jz3;?s^uRAWUm>7O?FCFy_fXm7r^VYHakNzA3*Q+0QU4#Q5?!JvTB9KBFnh~&z&8$>2la$+7z0)-1Rf>txaPt7+U&+J22SBXf1B zX!})c&1MHW@*K4N1~fexwEc>ZDLQF8z@tIiHX0Mr_EN~$I(SBC+uf@O>zg#>^JrXH z_g~PH%R+Ln=xJXzSTs>sH%$9PhIPLYGB+o0{=E|{I%_4W#UM6Z7sDd_TlAbdto!AV z`RkJ){uZ1_1f7Z#-J(E*b)_8}9-+0TvIkZYmMX&t;f>;(V_4Jf-pmrH00Kb#r14!>9Ee)lM@ zu(cS)I9AOCZG=ksaranb9IWP3h!#|)lj~>UuZ8sKaOfD(>@#i72t(Hy+D8&=#xunT zZ+9=%g}k@%=_NtlZ@5QsAy15w9C;shk2MDJ_!K69yltis3q#%J;1h{B?TJF$=iQ5R zq3zM+X#1Lb6c^gWD9O?GE%#Vspp8#qEVLzQG?Evg6hWs=i?Q<}_Tb@a@*>#14Z4cs zHD53I8ar%oKYh(OuM(t;)Grp@iYXlhDptIJX=I&76;>4dhyb^tlxyh-b zspf}Bc;=AkQ;XnhrL98NOxpl{y!K=oQ(yqXD|5HbrlUa(OK#G*RHPL|QELc!+=)2} z^0*+PnGqAei@u*s+QAPpaF}$a?~xo^;e%+ZQAx5i4~s}1gbW&~@q~>-$mxS-$OE`9)^6eoYgU!}G3hlAOa$gUDCvW80F+&t}6Sb*>K$ zZRz+Bp3{i8%0hUVn6liunz)?qd=<0rd&;s zI|7L7T|ITSuLZid2*3gBe)D+eEPA#UKxF8q*>cjBJ<DOHQ83Z5_4tBop3R~PC9 z)Cb4uJ!D=`X2Ow?C3VIr6LUX1yfhsYYD7xo!JzC5dnZmxv5h5Z+(ys$20n$i5twG7 z=$_y2F5VkN#PwD}`-ASeaz|ZIUMRJnSw>+IXk?k{mg1IUCCP0C4SG)~bV893!guEX)*lT}dMuisl!pziZa$=OMO7>dRj72=> zgpI1%6Q_U0BwxdJj4$^)Wi^kc9pa>;Bw%-R>@l&{GpKOBWM?H7?JuJhYa;)$ASKE; zAcS*8d+9Hce2?y#CN5&5zZJtD^r?uA{wDi0Ha2>*=0wRvh*15L2uT_y0S#Y_kR8S| z1?F-pEDCv;N28G30eYN79@^iflZUs{D53K34r_dqBGYYSZe>d}dq^k`pNpm^R34rI zA`Vbs$U_^lwmb}ZKOzt9Z%lc(izHK0vc&L-zgHxApA(G+5=;~EmC8V3HYVGuNPCV_ z`DkgJ^M52c=RY-u64G=2I|Cn_#`m}40+#*oMWECLUE+K_cS8uKf7UaQ>4%&@ud$F} zjd@}p*G1xJ0#Xi{X$vcBCUeAN$4%hnz+LDR*^u51asRoz$VJ_hE}S39Of1c3C|FT@ zqA>Z>i7`n)6vE{v8N5L{X7UC-wuH;J!0u$g(^Q-NafE~cxWnoO{TdA=Bn&>$`hAZz z2~$3#lQ8dM>oj{Xh&#H9!UxcFLK247N5B`=zlECI4rWn!ICxM4fel()#Du&b5i#~R zril6R$C373M%fD=$9ZW8_`F4fDb2PoTg{^hkjO%qZT6TzdW6|#e;I9Dr7_#6GCUCt z7vBGsTzJ0@ja;sQ5#b#@U;0#}{rq|YV^Aa;&=x(;#C$e3<5=KZxZN1*SqN@65i%6P`L`^N9LMPz`Cs&Yhz`_Ai-DJdeNnUuuxBp__ZnAyK#vs8I zEfi=9i9wTwK+gjHo{FA1fnNX1@l+@F6*FiQN1%d~2s0BVr4$)t_auhf2ubawrZ!0> z%pfbv%9#82??o}<{Uc$Fg9m3aqYuTdNKZ!Qo;#3DSXt4<#H$-_?)j}|_lVbCIzBvo z`52;Nc;Meh@uBwM_ybBWcW%R;mwk?NJ@Y=|XKLgQ4^up{6(qxa(;uZ@LwH65WxS)a zzz|LfRxkTWPc1_zcn>P1*H+2IVCCxwgqkXOh1FHGn9x_$WGST!GY%oWG1C?v$A zSpCf>WqBb}NV!(syb8mvd>_C9B%w+<(uG!bE5qIm&>u2W1+0g^%YYRC!>zG}nDw!` zgkqMYRVp#-o`6UXlo1{oE^#*!>47q89^Po0GvWq*$)tJ0xAQP;3ih6-2YwTa;^~3x z*C~)5c(FJ}o|)EC0L6uwR~#Rnr9GYH=dl+y+&(z&k$f!k2-4mlXu~5Xo$tqUJ5Y0* z_H4-Rd*K5Qx`+KG)P9-4u{Ux4_}aa_mEcz8yR>$lPi7%=`HpY{$~9nHtx3@{{>~K0 z(NfgR!rH@Eu`y^qyk`>meGQ}ZivS%j{_=pfrlC0HE|w+!Qu5$}U|L~esZ<$^YK5Jh z)GMFN8}-TTj6#P{ReLCmDF?-5Tden`Rn(sD~I|Mq6}gBvBpR#<5P&%4GuC((r6^5ER-`l;>a|zpsWZ9cu{aiN(<=vbpqB&638~Zi0ZJsh|?aGh!y%=+oKoW^1?Mp{bn7Nbnx z?lNc8ZjG5ryH2bU!jgYZESYbWfBpdytY!k>Zjny6K-qc$#BncbP*aB&^-vXcg#6J` z@-B?-LqpvkTc|Va=3#6Jkw>XHHw!{ah$j51c{2FxvB%?yBMvEK32}^6{<0JjB?&FmemZ-Xy~nOYY0S&F4rp;XNk%YM09z~%Mj ztdC1LvyHqz{#EcB_IT~SA0$P|Kb2a&3c!p;sg4n~9O1m2rlz*1srz0gVnR}$j1plr za*o{8>p{v;{A~$!G2qofs5+?!uHLM3SE5-XTJe*0dPgf!}G>KJ)R zn}Y$QL7_cS%fB)4@<~&QpxO7KkyAh<_geiPJW;yWs&f8~s@Ww8vj)Qq6Dw;F?oOVt{c9nUa~^39aAxEX+9-?Gu7rN!Z+t_@*g9b7 zQ;{zAlkC&jbg?soU3O-=j$1rKDOuZiOQR`hris9R!H_x?Mk7$8=x?xjj!-l`*84Ik z`aFxGY389MeWpgz^idd1pYgSTrq|Io+KRT)t3+mCJW+2(Urt>botSYxnofqO`2q?2 z)@^X>LuTis>Hu#BRoiGwMAiSmNWe`k235Oz718w9CFoV?I8qi9)^RC9pnIJ}rnC2m zmb;Uh+FI^sUP-G7%f&YgQ+1TsS|rywb`gygC+Kvg z6IVpz`RHj(?tCelYTTKqh(?&gi7cXVBxG(*-fTO;qEl3&WCUT0Qhun9p1Fr5#oY+? zkooJAAaNu(kq9~!C%Q#}h?2=YXn4TOo{ET)N!MU_BOES;&=@+RWb~d#$v#LxV?{LB zuTvmO_5{Rl1}i8Gr-j4l)a$a}8=z9$@NDflg~{;kBuZyY3BN7t4jet*(ZgZG(*A2M zANcnTc4v0Ux$L@bCUXtt1t03S=MVLly@tO#6MU7~b=`GveNs;_AU4THngV|mpw|_6 z=b#=QIxQo2efXtJ*}t+HnVPB7Mi-tj^f$QC-87JkpP{d__^}Ue-F0g=gQ^EL@c1Q z1+Pffh%kVh5YYB1vEn3QfE>$4I1V zAlXknP;%(`!K_xT9Ml3k%hao_9B#qG)hGv(vbcJ9IrE=ll^6UYfl61){1IQN!j zKtL}^@aACb&Kv0`(^n2Grz%MxdlX1>2`EhwN>-3Gr>r>&3yR``PDS{KSP55ze?-5S zB4oc#0Y#YUqbiVpXr;FpsR_?BHKF)?5~^@3SA{{3Cq){>pVYy*NxW&rTpF@{vzm! za^7b$jRn7Pn7`^@yC0`4n?BuAcF4c44fn&+{FtX@J|-wpQb{yDhT50EA2c5xnS^~= zcT~eRFfOZN8)s;?TAy%7z4cV7)<=WMhpC5DHmHI_=g+BEZWtS9YF-i`l-E2z$)v$_ zq*Voct1%_jfqBF)(5AL z%3S!`n;c&)_b4uWiBSxEt!G*;SQGzCt!dyMZ47MjNlXA+lPlZ)YWE^thU z#f3OAih($%VEiTbSYx1#PhkRRyVzwvg>l{a5e+2GM!r{6{JU;&xDfn-id;j5Hs|$Pok{o;M|IuknxUeTi zF|c>~exA7ltA&25)tuuVXAI2o;U|E(bHny3Vd&d#eJC+F@?0%@#=UG85~tBLp)s@D zJ&Fs7ViW_3&U4J)?;dLmMDi(&g~%k0M$R#Z?uJxPoe#mTU5!WntdV`UIM3V$=!93^ z+V#nE&D)JFqIp4v+_}L)^I@^s0C~h-kdg9ybI(F=+VjmXw%VsT-~0m6mYiGZ&Nm0M z4n5x-yiI?;`EhU?0KZ)U2<8p!gq(Wb=fO?5$DfCDg|d6-o^ZJp=HZwH4@J`JzP}{P zd@kThllcXCOUZ1+Z3c6q);izCp^!SeQha5ZMwkjl=pwU=-KcW?9nZpr;5S zH@e?yp==gEQF$!0-0k<<^+h^ww0 zatBhP+c@5C&A@b|=|1?_h41J7r|+{s;j_OPDjMLU#aBpx`J~P}pg$m{ka5;t>f=5uCLedVR+bvO z=VrT0h&n7S;UM~4#=jS$5@NQMIo4f)hrZi|;6sF-#CK0LoQiBn<3fEsEJhv3nG5|J@ABBto-kSENzYH!YGd#pgL8O9+ve-=<5I5_nX-x8;=xR(Mx#=6GkYwY8RZu+Y^_Gr5(0M)BvJ)*N zr_^Hg+RcJk>9!04FO!Q;Nk%f0#!Lnaj={`j^hua`XDB@D;qdz?u*SsI zl*f!n$UdC5kfLn*irrHg{14^k=|eifc*xi&@z?YTueV2E86Qkv!8%y(!5*D%UG_ry zV5RT(X6dq)7po-R*~|DzX$Y)SYf>C#fc3LLgUQZEbanv74|LAQzlS&{iAe9#@y-SK z>%~kCY``z1kO(mlioJ$VB0c{IvyPfSd*aipf+e^(hZgpINMm)x&&@9PJU48&tugfFbOf|`=47yV* zOUmr$vqiF+92p^P+6yq(X@{R7#{gApo%vR0rcD&FMW7ili()NM{l2J@g?_{D4jPZtS137y)kdAV}AP{R$j)ndNcs5U)pFpGs&E}JXo zYIF=ST5l5-hzeYP8bh!2si;--C+yR>3S9fBB87;eOyAl@5X4*Dze{aakZmioZg}6_@%Y=+%n;}72Qbqypw+_qP#vaQEEc{S~Lm~>hxGAa6?Y>Ycx6={zUDghZ_YQNMknm zTg~s;R-e&KL-SjY-oX!dvH3-Rs$a*F@)DZPKJ=}Z^JH>1tehtYlCj{KRNmJTlh$2-}h!w9p>V*{4j8 zx?OA^X(Q3)2u`OX4QAjknN|(UKo2!)V$$#bZ(@9ECe6Pws6%?0`&4=yY0}_^gT|uQ z@9&raSC!4Bat&$9EegV~O8Yb5=%4!AY-%DRTRTuQz@xs?3o#HHj< zN%uKwgPAvDBSbpln`0km+PuPp+>IJrQ3|o?dp_x{V;VMys_mLm!y@;u*M`u<9=DB1 z8{Bq~tfH*mw7IX-?h6+tvGznE?e4@#(?sE&Oqz^{LVBzVEPN2{va>%nwu0)EJs=zA zp*uoD@omyte4^>_Lmf zOwxTyvURY{oe^g2yp{UpL>jWd3( z)y1O@c7^Sb?5ka%dx-$%VcHo<5lYI*2J-Z8w3(g8fTyVtp9sfl(a$$Z^+vr_Zh1vN zTddb}UOrd%vjxp!F9HC%9x>@$7r>fM`YeOmh)$x%dS525#+v8fq~@F@ZS(wJt)9(U z>f9J_p8pe@yxD`kPKSB^9W>S0@dTLXGa&N-x`raLfeYx5C=&Y{Q<0R$r#lQbW@|-h zJHKgChXVsCOxCLez=T|ARD8ddE7qHpQj_wRt6r^I$khtDM!A%&l>MXump_jolGJix z-vAyW{di?!vldBZ+^%Jjz>kN_Z?tLB ztl>#Cj1~`m2Aq_ELxVkL0TY%{87xWI=|TL*7NeM#2-k>0Fc^c*;NUru`;ab4Q^g>;5rJ%px{5vCDVdmf@e;lZ%lZO{S_hOiBJKO$`HZwz6(uMc*& zjN_BX$Xc2j9W9Gz=458{3F7p*xd@ZVI4PHg+kwtwj~no{&C81|PBXS3!>tCIWB@93 zH}Z0;qiBXB86*xu*`ot0Pl+c6?7#Gwq1}logvQ^0y@6Kb*nhpzxnf;N#qPfzL|0?( zzaBzUO-7yU{nsocm_z{6Cik2m7EDaD7deI%e7&pGWVZ9)N|6uX4% zWH+jWGg1x0AgxsBtVsb^Qq+9Z9WQw}SXV+mke92WhH3?MJ(Ijc)w3zWb%7SYh5b)9d9w$dX&hVFP5)v@v=gv} zEr9_7=o(g)4O~Ef#HzBtF|4ZLytais;gpH#owV^3HD3k<=@jU|a*AzoQ6Pm!cGi7{ zG-9-4j)aNGJp57&sg1}Tcdz1>#7`v1XA~u3DJwi~uHq)(hk5GbJ!@4`8_#o_?i|pb z4bRx)4_0~*Sz7U9z`YnvH3KfuEs0jHHV>z>#SyVvH<%s{nVa*L#Ca!J3@M(1zboMH272cFedjyf z0Mqz;E@b}tB*WyVWErG+%WCokO;#LuZm_GFQ&P z-_|&cTN79TW_g421Mqvun(Myou9q2 zJAYgIzV^}xTx3mUqipecp}=Bbu&N2Kqc7Quj!{EcJ%>HQ|4^{{da%H-(^k&f!CysF zmrxBYsrxsqQRl5Xl25ym&)Td)%pYRPc&+BU{$E|V?YIiTorb0pneP^zYy~C^h;I}h zuyju~Q#SA1FkvVv=RFtD6P5EuMVl<1ceX7J&H8zA($M6ep!p}c z_wDuT)_@i9zlHU~^X_JX8r9a8uw56rgNKbl#1U^5NjIDXpqm8B(q(&uT_;Pn0x)x8 zlES%C%i)GkxKs*tFJEjmie9mi#m{E8fomu{FAwL6S-0pI_K)0E5kQDMNE|VK6D1t9 zN_8{LpW!c|f*oFJqc7<9k#2JZwIf)!SGSKWcY6aF zh5{ZQ#~CPG_s7O{=lRr>*DJG-QTMCl*J?I$IM`NcmApbdTWQwvjY_%Rz~3Xt`21c# zOW}cXlW~_aie;es#!{xcOeHP6#mxL-w~qhFsthwIW`P)Euh~7igy6;$TujYw<_Ipm zMU^LS$?xKVX;v5T>Xl`x$bwo^D87g49-^q4>?bqu4kNtjQP6aL(Vq%}hdd*24q3zl z3ZC?l7ft0tFwWc@B9AM}2un~kk*VEuJdARvNHCZtn<%V7g{3NEu2R#QKV+fH3?ppO z;URU_CJ7>~n;)~fiS{gzr7eO8G&XZRKj(yjTAQMKr5goON=4g;l=XYs#deIvTg$u55b(Vfl-6Q z#)QLe*#bSSE(hBsOu6SM{$j)8($sdJq^oAGDoXQx`-?(D!v zr}&P_4<7Y!tuDso&5@wfeJZ`4T|O3?wCCK=ZTYvPpeGqEVi}vzC?wg09_wf{V;MpI z2ml$D^_`*CTrODmrCnzAYw8hQ6vRg|E@4wQd(a8YAq!^ERFee>BN>)3V9q`JzBIx2 z+rgUwXpKOI4Oyu9kwAw1jTy*z$g~Ph2H8@%RZh5+R}o6O>=Q}6vN{+UF};&NT}|QL zY!RHHz=p7Y)WW0^-XtGs-P~?<6HRrR{bP>}V4NQTJ#8qvl{w?>7M$gzanVg6I<(H_ zCNytDb=fnFR$Ym*v<1s-5iBG2XVtP-%HnQE#J+Pyuj%31z+$C>T8piGzFconNvY^@ z2?=b2xudfl5O7%x^ry@CdWpA)BL%Jn1E6H|tN-rrv zj+@!*n@x0#NIS~ol3O^Fo2`T@n805p#CPzw+5o;f6-fy-^8f=a7{Cmf(_>xD;DgP< zi7kzc?eEg5qlajeP<8ZnYkZTf)2XAku_c;4BveQ5M$;3jj&^{z0u-F47Z9)^3k(?Q zD&+l$y0X79)zxp3{C}Ky0(wYt1%4WQF*iq?K~JYL{AaH1$iPGt+jPiFvJG_XJVT zozsY%n|)c~*H<+yL#Ns^iPmkl3sr6h&jOEsLQF{L&_ce@^2>!rvFTTfwW?ohR4PrJ zZ>W?@&1~IgZnc=&ih-gqIbrnjZ1tfLIB#v8EVat3nu2L$@Bl1W5nI7$R8lz zfD1;{tH|W}d-iF3S;`H2Je+LlOWu}$D%#r{;6E%tsxM!$q;O^2Nlk56M)$q6hRzW! zok*0@df)lV2`96TJ~Z;o7hw^STSZQe_T(WB6 ztdJx#OHrGe*^~p)(%gmK4Agbt*p|kk?k*IQH_A_*H8Lv+-;g&7)V;)@CPWLHvWrG8 zhD=c#?Dw|90NdR2TLZ5*?+=c52IyO_4aToNz{jIA|A9laSH(vPq0VE`p(c7t?0@AGFlv^ z5w27Sm#`{?Yc>aE>eWi+LZMtNlxkkFRw%aoEIh6Ge6d6q*+-8{bS!qL3+U2C$MmV# zq5AC8*d1y?=fYc&5QNR25DrQp97V}_%D*PZy$mu=8yl-I20weWYl-HtR|+MMq{6sh z@sGrSMrZNPEAVmH`F577*%@K+KfvdSSp0X`B*Ivn-bAzbCB%D?@Sc)jdxG;bjq(24 z8ZDY<(h&6pAZl8NAnIbHUaORAHH2bYMZZ+9wJL}uGz%!?T`iaL6hTNt)bD3Ni=N^L zQM-E;7DGKjufk#=6&yF$loo@L=PMiv#xq6j=l+LD8PR|ku^rB$rnc?yy_Wl1phbq~ z{+67e(|s~=xxYE|Tp`3z6vwWlI-e`Ru1c%x~qLS$)O zU+<*zFwA!Lp6C9)lz_%^f7!27Aouq=e#gwAUU$)#w+q45dkC2(aGwvnLp`7Fo9RcU z1Q(2yV0K|mY-f|m6uy}v=}9MlWz_Oy67gMHere~E*+9%};MXT<`t+xOLS1`1WHg<~ z?obs5BI`Z)FWBaI(0q7oA_>Babp7Y-jr>0e;UN=;jnwH~i5qhXocMdC-+m!jeAwPN zRid?mW9K32mE~S`j7;bYBC*blC^M%x=HqEAeKtJV_BD-8)?Biqo`II zfzcl*n19SYCs*PypHsA44b7*04_inQt{BOu4aKP%zVjM%y_$Slez+i^i0b?x+-{w( zVMvi?o0#5Z_U#o38Olt`mDCJb@mhg8(8Z)Lwf+~;wNztW$;M!CGi4e}6iH54Ao;g0VXS#2Z{aIRXt>vK?p;J+2p&2?=y!69AtbEGEn{Fih%zzJ%BOE^2D;e4`Tp zja!9}M4AYhX{~bM9`MOyeLKaLGS9!g`dR*Y_zwzZ+D`W@_6i(PQ1hHN1PnD`m~=SonnH_`Q_+=Jw+gV>{5S?w46}GVKd} zdmoAc}UavQc z1+RpVcC(&`m$I4EDcOvn7tLuwvM8a`;tuv{e86!dFC7p>9D~0VG(U!}bcT&4?Gd-( zBh=Iuo_k)&_97u6M?-jCO%%gz+-5>k#3Z>fIsnb3Y^A{Tmx;lY$QLGvj_wKm9C{W+ zmn&8LW~*9m6!Rzw={0JNMy*n*RJ}qm*T8M}Ai8Mu5G9H5&ZFou?o;6@BOFec=nVg~ z+h@J*|Bg+3r%_Xz_!9c8cioDrj{9R($U(l4eraI1o}c5LP*(DK)>P9= z7g(z|b>&ql2H_LcqoSS5sq-5y031`QkLeoRUS*b)q^unoE;XIeyw|Hn#BjG%kPK@wI)BO51 zhx2@i0Qo+0qj%{SbDpzbr-1YPBHYi=%S>w?a7u<*_Irb4R~#RnsXd>iFI{f$;jNSK z1~Z>H8)^D>?Ag9w^J>csq1&`)!%eCI(ltfJpT2%r3dAUDwTIu4(%H z#-VwJ9@Kt8lb=N6bxk)zC#N`7(p>C;k=u*hwAmM4jEpqs!^!975My5FH zw9$p9vnmna0Xzg3(s(XDFg=*UMgQ_(yon>_meYV0!|T3|69$*^{13JAUkGLrwkuBM zFIS7|JVd?PwF+K}hpX|eDoWyx)89sa!g0!1CA^}Y_u~a&=vKneu3$1i)(_FVqG}MB z{+*}o@t1Kx0+A2y4ii2wB&;-eAOt6;c@i$2oZMg!q?81*-XAkW1zSg$hvOA|!(P z511TR0$-i~g5*)MQb`xlU^bHk0zE8|gQm{#k25kjiYax06ABkHod9M|{2+3P+ z7V3Tl`SxY6S@is7)h`x{*e(>RwOl1vqzfgY$00Zh$t!^e$;$^DOY-i+HQV zA~XGkRwI*0osyZxOD&nZ!Fa%2H5F*x7B_aM-Fv(R*Y_;CbYp7RSVz=>d zH4;07+PLKYd2}o!x3x|w!QYNAGzl)J2MNANGmWz8t#gvQG<#f0aRzTK$lVWu+KInc z==c>eoiPOVVQR_+_AiNEgut$sD|HWN%=7hPp_r|CC<9i`qxyQOgaRt9=4ef@JRIk^ z9fwMpuk=@-rjBI-N8z(cobhZf)J(wTHXbh65o;z7Aowwt+_&f#vkBO*RoVo>lvZgITzb@N4-Vm4r^uw$b9Hk-e(kgb zo;wLkKsYBjd(WzIlbHiqG6!U%Y5!jALRnEXLxw&h%%w!{CXmk(tGsrZVpJ?)kcEymWbYPJD=H{?daUU)qHC%7(&k0~rPV%7Ui9aKWu?uF4rU#i7ahD! zofqAiqABrB&!@!f*rulwmY{s~Jutia?7C1dbB|xYtJ^s24>C-hQW_*xL~J8wIDi}% zw`2k#DO)LF^6e2&M>*_A!X9E-WX>DQLP~P6TFKQab!6`}kcNzCeWePsyXECtts=5{ zU}&3u#~)$z#LFaLf$%l5lux2z0SR(H((-%$GB$en;UQTR^?~R8nW?UL<26`4NA)Jd z-}p^*6FkL+1Ap}W#n#mbcn!SvlHUZkh@y{x<*6|lg`zXQ?Xn}Cdm(`$N=_$$ZsXG3ynZ`DV3QsAMU_%0$r@uw|wa&fGNCD;`kE>}9V{I0HPpncXB8 zcF%cqKWw`j*xGZmnH!E}ntsb$Ssctv0VTmbwW8D649aQHJ-E1`Ox=A+0dQ{~#Xrdn zJ+<4vPwRUxpUq9ZUblzp&OkR6_5^|(9$W)dhl78B!qh0ihH1(o8~Aj}7vF%iR5)`T zEmN~wF0_DeMl4ZrApnR&V_#-kb?zcGGMxs$$xawS%?!KVf!bBCvji{uy*dkkOG+Z3siyP2X^IoiDlZZnf7A!n!55mOFPAUFArIexrkXrV zc)B7?Ac_@^vd%V0L4qVxPdBWdTr?oM5p>1wq=dzBr*As9Om9iW~o*!_<3@_Rnwm@`xLl|hCISR+P3>K5CsL)hB*t@eG0U377= z0pB(Y+U^)t0%QE|7bgZBk(M|Dxf6{TX_*zK>9H4L3@Ub910bauGz*Bqn@m%nUSn_iPK{CLvvwVy+=(!5nqY>1?~T zUTq3>YYHaC2%1Z17(5SsjcMF1qNzr66EqB{Ou2+JfvQzqH0b(w$tQ2fcH`n`9zbI*RyJx7;J z_~6VifWGkT*X+`Lfp#mC4Q-XiBY`yP*8ZQ_Wrjyq6-%~gG{ zC>%GSf+V;WDcN*<&_T*_{5=)rOO51b!O^`S`rvQ1NvHqFSDv!=3^1>LwwBs#^hsnk>)%q`Z^8~ z1Quh$mya`oh7WgG_+aANkOvxb)EP&-Xdl0#tEx4wiA6dd4m!|y8hRR4S4UF~3y=DN z#-o6e65xzK7>*wKMk?&_e0dl(n8qYz74o23sMS#Kq>(`p%)DPjWnpN=r8@GEAuD^P zK?ncw<7)C?>j0>SUGrA_F5%OLGxUB>uU*N75cFd$vf?+Xcxs(cqw-7L2^@`C27Y)?CgHAN$2tWPO)YY zh!_E!&i8PTZ<*Sh_n3U{^~23e>fhoJYupJA;Z;zKb7r_HYpnA9*4~?}G7!tLCsThx z?S)vjPo_R*^=;yn&JG8g7au`iBQnI#psB_X$1pEqPo^#cKa!ASJaEt0h?;nh#`Ht| zhuT1gAL{E#wlbj~>fcA-%I}$5IYB>EXa@}`Ciix-QjErYFIFU^n2)>p=}Z=B&Tti} zTq)t+2>!2D%hci2$z`jMVkQOYoLQ4%?-~GK`c%jpV&4;%H$!Bfy7b2*%blIn)RsF5 zvrnzvvvh*ha?l z2^~pWx8P&*d|yY>Q2Cta;`2l}`V2M+7<3^Eliuj6rm1;dI?NUX)pT|Z(@GPozhlkC z0kk1pRolVTX_bPhH~fsBuTT~U8)C)=s%no=!)pSg;4<2&-XRWP1~-;Fy)K>cPj7$p zp$^Vhwu_Hb_`lk`hiv5wsokm_f5N(>FL=QX@!briP@dj?n|CBN?=LL0FWkOkD)^FS z#tvSl7qtYyvxiIYrFAvHb>`dg>YIcg9;m>_g{SScgE7pTRwV-7$hYXC$DQe+J!k z9s00&HEsilC16~8FV!f{zHe~3N%XyWxa+$}lnb=PJr4>fZFJg;Ec``aQ;MU7&N(V0 zccO8Y{~DXKRJ3&p&XQ|ntHrEeN13-m9>syZdJVaibI5vI@^cNA;nw6VXF^k*IA>u{ zod9Q{6zz-R=Em1w@xosVHfdLC5y#2V{6=o%F2?qwnGd`61HL2qBi~}ie!9KRwCrNW zUu?IUI~a$e@wY2J)axAKT$WfG{hw^ZhmGe^^1Fj5Ob$jR&XaZ*(=+K9wuOjwe;J2G z;^K=QY;R5>g1>FYv|j)?@j0ea{zBJJ)acg~6Z{#9;5wKP4nIQ?A@vzK>=5h>eCW6} z$BoRdAE)uLL5i)&pCxaZ224MkD}!4 z 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 A*Z=?k literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/api/cogs.doctree b/docs/build/locales/.doctrees/api/cogs.doctree new file mode 100644 index 0000000000000000000000000000000000000000..0ff6e2a955782f543c893f942fbec6a7e3dd0304 GIT binary patch literal 91557 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 qsy(P0Z_u;a+Upx=Z)YIljNt_k+RO=xo35 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� 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 X(a0@-vpH=z}$j7RuRQo;{*x9M0z!4 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%0DEALVhOYVMuVMVHdii_ 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%0A0Y(0KWvhVMl^D0lopaACTLLpbWSka5G?s zoe6dYTnu;*VCF6a^8o7sZwLH0;9G#LcO}>!a3)|i;6}h_051Xl1UP&*f+GR%0lXjZ zBfyh@eRn5V0%!rcfUg4n3ov^Rg86_`0jC2#0k|IU8^G@Yr9BA_0sI@_QowfsKLG5u z7eNZJ2G9iD3HTCVL5g4z;5xuffENHS16J-$@EX7+fF9scz~g|u_9560uof^0cn0||8Noz;3T2NCBn*Zv||1G{H82Hv`TBTnD%b@B-jvz{=MXyasS9;10my#}FI|xEgQ` z;M8LYP6xdEM1qR}-IED60A4+n;BSCy-$-yH;B}`H90%CpEd;v)o<5V{S-@A$BKR6$ z_BjOe0Y3pe1-NsR;7fqZG=eJtU#k+_3)tKsm<4zY@C4xNCc%Ax|6W7zEx_^yK^~B4 z5)=Vb69jJs?A#*Q18~;41RCHsZGzteKHep`7I5%7f()R#o?s2&!{-rv9B|79g4+SB z-bU~`!291$@FBnn?<6<{Fz@p6LC0JeB9!EC^PzmMQsfD1oJa2epJ4-p&-7{7|34fxR21RnwX$43di z0eIzO1b+dn`~<;k04IKm;8ei$bp%%fW?oM)53mmKHo!B0=K-hRKyWtT0l>q6{cj{# z3V7d51k-@iZzeb!a6RB=!0!RC0FJ$d;3UAzTM6a?-T-(L;8wsLfY*M8;Ap@VfGYt{ z0DcNM<2HhG0EN#ItN`2qxCQV}z>M1oE(BZ#_&wkiz*%Bj{%+l zRPG}<4DfNlwSfKaCs+zN7qAZS6yO=asox?v9dIw;0YKpaf)#*w11<*a_-%sS09C*m zz^j12v41{DPffs&08av5{}90mfS&-K0<^zFupTh`VS@R9wSY;$lYpNC&iyXII>2Lq zCje(ZLQn-U z6mO7$)UlakvoH&#ZvS6?3=40hnsuxzZKf#N*zPVv_-|qjn{}lzJzZpM@So(|NbL9Q zIg#;~D4&4~W!%yI-8ZMyv%L5M=1aOhl5@VYUEeC^n{7S+hI$HVCqSz&S;x1*L{0{jVZ`L7Ay2lyf2$AI*+ z1O>qTfQJCvJx8!JU=&~gZUx){z-`tI+;+{bm~G%9+6HcuY~aqx1}=$f;3~Ps`2gG& z)xf1K4P5Qgz>N(J-0RRV065OQfzy*4IAfU|64}5ZlI)ze22OKp;6SGaj(uVWb2M;# z2irB@z}|Yc^{|1hiEO`51G|D6SoGh()&REdv4M4wZ23_GiU z>Md{v=n!G)Ezs)}=0nVhfp=Est5@A^@uo~uZl zE56EJTBOKldOl47(jDBg_+K{b&7(juTl$ZP_*Oa{5MssNXsTfL5!ezyzh8+E)B&V8 z$8FKMX!;b2d`@a@ilOq(hYvH=)q0C$^jP_0o!%8kZ20s~>nA#2qx5=Gt<8 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/api/events.doctree b/docs/build/locales/.doctrees/api/events.doctree new file mode 100644 index 0000000000000000000000000000000000000000..924bdcd6c8877f6d3f2d3d55ef74a19153c6436f GIT binary patch literal 497326 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 WJVd=)sy24~Q?ik^OagnZ~pz}A1 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 U!daT4jTO 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/api/index.doctree b/docs/build/locales/.doctrees/api/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..8d4d464a5bca052c7bd72d529736c315283d2042 GIT binary patch literal 7364 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 TgVK{%(;~Gi6w*~^tb0#hz580_1v}d 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

    }LVM4e4JJh!4~+tZu7*zWG+Yv3``gt>U9J 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 #i;zOq{F9) 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 z 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

    s;nwVu#^~A;m>q2fcv|#^+(ArXiUAJ&aHH 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�+8c@dT$$?--)Mp>l8ronRVOQcs|y)fJTdplAP}CI%YLma zF;^tKuI!M&cF&)|0oe>`x#!2Hj31c&P`S>dTyUc zzP&qWK3q7O$+r@$Jm*zQzuhR`aY-ou4An?KnDdHLaKq*I=BU@06x@?^3^5hAf+X9Y zvrgWcWcz$HwMlLr!6M1_xvY_%WV_^ zb~W|u2km2xko?D|kSu^L*vir%B!FJcSf98Th?Rnr1wPnUpUQ3`rjSE!AjEq z{ub?d`rkj`S0w#U3KE$Bh)bBcYEV-Er4)b#@C-o`tB?Zt9nrPaxOr0m|I=unCk60_ z!LstE00y&;O#uwv=1&29v@{Qp{4D_uZtBG)0iJgaBNJ;Hp!J(jah>yo%(~i41U#FX z@i9CIS}Gl}!iha!>QeT#2S(0AQFc5s)O=sEL4rW+)Mmpr1Jr&_tC* z9VL({4XKgo(MbfHvf^3Yh(-JhcT-c-zmQz!M)NN`Er0d^S3ToTA6Uu^0aD4rt9Y*@ z4n2K<9;-VGonzC|2Ogl-vFQUZGx|;D#`ILc7qhABJ*arLu;Z)IRAI-Asep0(Xr>Pc zzN1vY0JK{AfC$v>q}(gMvKd{1eFw0yz$ zom#nFsZ`5er`f?ZN?x;FFW0JW!$nNSX_qQl`Tidmtdplmv>{@Pf6qQm4Y60X5Fjzc zHMDo2;36fq=&|&|s)iS9nK7ZTKpBm!#;qD!--M6joc|O=S&pW+H1K&Q7MNs{h+_eI zlgt8_WPo)LVZ1oQ$4ZXNt;Wd7M3X7VDD)X+4bz$gUAKI{TESH*Rj1LZB2M0}*4=8W z(`+}3jaIo%RoXM@v&$F&lcyM=YkRLE$oNPGZV{mkQafpL&8a1|fTA!fwP&FW`q|95 zis;Lqp{Az3{GS$Nds>W5z@w>v`VfbFNz}7S&rvPbO~sDID(( zmo^mTL&M&J2hq+pQV*=qzUb_RLvTKBz*95Zd8_hlc*6B_C}Hfd%D+L*v;Hs?@26d* zVrHEg?)AJ%so}NZFvU4Fr`&RUXkD+28rY6ksWjPX>aJ1{ zi6V%Y6VdvY;kk+Ihm>c-^OS)n5L%^*p1a62 z4hufNM*Y5g*A*8p`u8pFDQsu6+ zqv?VfL*ltApa3!5H>*RfEy(;O{0bXgZ#2>=uJ>!`LaV|<;CT}s0(CT=%1x2;{tx53 z-UsjxH4-8Dy}@`xKWj+7t8maH(u`tj7HS_UXplv)K7@Hl+zmI&bO;HP@IeTgX9iQ{ z@YF#w(fc?p?-Te(mxtP_KZw@=Rk-Tj-PCJLVt~dw(g;-75l(C-Wny2TiG9&Nu}|72 zrd8>p6aj^fSDGU5v)0L5Qv{xerZ&4PHt75;)<{ng2n*=;v8}b$n=09@76C`bB@f zXu0Wn4^NZdP5d>eNbpvskVB4lcv# z)aW7*J(&F9RdXt|P+Mkx-k%#34o~BpiBmwi7~HDY_W@k|$t*m$!kk4Eyzo6bX|lEL z(;<{@r%Q)vuU=YMpz~t>ea`GWNV4E8;6&{_9iMXOUWkI*pGCbFZ?KDg%_Achc-w`( zy#k2XnHdDwI_BmT(#H2jrj6crsVUC_Fc4QQ7OM?7j*6b+!57+Wws5MtR&L;gHSz%* z%24lJajv4@&%6ppfr!!zxR;Vj{}jrTMGih4!?q8#{3^?bV4sAyAy|&bo>kpm=`1tR zdpu^}y9NJfwggFlA93@36FRWzKEpM~$|8yo(7Ir33F1w*o_Y?ZF+4#4&LKc9_gs3m z4nSn-L^NBm6%t6>D7bCKru$>N$|a|Y`J-JDzD=5M$_JAW;}Hv9(vg%@=>=wwqi#sO zs#%-8#}f#-TZujh@wzvFZM=<`!xU=;T}d=;R?*a};(fZR=`mHpDn~Q*LW*X1k^!es z>F8UwAuUeUioOlwDJn=HdNUAR7cD1V9G;K9R5~|JMcpb> zitm-HZn@PicMzcW>a}vGRt34jG}0xEN;5Pw5ILzaqLzGWj3%-kt#YU_$x)J;GpR8t zH{u&*Qe#sDFQ&#E`o+{3`*jScu?co*+JP+lsNhtf!cCL1`8ak{o5RkC$F)7xeS~VR z(!$R|k^3w`2@*>>(dANWhk~x8T027};@-V@KcZSYBNlRrsx4foRBsPr?5KL96Z!)& z>n!T+GE!g+*4SOKbgXVDA6Z2=asn1Q3;o$(@0F`fh?nI6n4_vfI)MC2(Tfl|Ub#{7 z8&G_uQnOleTFp+g(djgrMPvxo>NV!z8M`X{l@V4VRN*_QX%mx}d zHhWV1#5c;MB{y9owd7{{#k3^*bqr|9?eYS%;C?+tl56|D^Wye(3RAX=c;VnI~(su)R3nua1E{`OjMA;GNpd3 zW8|oQJQqxGu9$Nc{kW6#qr~{4?vYGTk9nGeIC*>k$T*y+rgD-fIUh@Fie7|vtk+uQ zVy#v#wK|n*#cj7xVz%BYRm$}u&V{sAM?2m!!b*g8ypft_(T;Zn+VN>~2-4gob)?gF z`SrraK?6tjIW1ZrN`dzYG#WXHgHDh3Qfh{3^w1YEw!IE`?iw@|R~O8U?uO!HVlFJ}wW@u;%C z#ijiQG#w8X;+C5k4+1-bwod*hOW+GeivjriLV$1NUnxNT%`pP`y`uy9!(#)oTw)qv zA(28IVG?+c$3 zg=vz>Y4aG1J&F#-;kMZt&L<`qe)6?}OjSP&3H((0z#>a?1jSDbx{`)zK_%wiX1pKK zFx?hom=gRFZBuoz(mcHs;}f0g(TM`sVyl>W7W1@9<|!OEeO^XdKtH1&XSBv4wk``m zJgUk1SS)u!^dcQP)mF3VbQ*Q|aH{oMqg^Q%OU0&J^YF7;Z>&my{ijA)i7;9BQqwFZ zYj%guE!3sWp>vxtU0v74MDjK3@-ESR)S+{?(XTH1^94ZeL|-bypKrM_=M-?<$+L`eB`C=Im-t#as4$!ziJFhPe(ffU~;lMa0&L4@hh zH_WEmkF-!;n|2w0y5!ulcoR z!!37O&g$sYZ;Y@Kp;Nz3O|$6K7*(ewt^I&HBDT?z)`F*+T9i+tYVjx5mE=>4KSp0F z&*V^xTdrGWwYU?M^P`mcC2cIJ?f21^tGygaYlQ23YLABc8d~L0dy*fd3`|z*%GOcJ ziugvE)ZP_98CQFI=@(Ob?AI}%_AX(E5K@B}u}N#xbQ~&fJ?|)@*!BThLb35rLIL@7 zdNrOc;%z}!Ql0HmS+jQ|-jArxw4^n*$V4T^7bsQNJs2~px^{u&Zx*x7qPlJ))y44J zUntD_vu(OKh|ZU=V7{ThCJVQBXJ!gGal$LG)8U6(uD|I?YVx%>K|&$s`e=PCZmjtL z?p(+9K62^W@Py??r4BrXGb_^GXEfH$8PkIOFnR{;Xhdf0Z%bHQNMGjUl0`+5D4fKA zvtpJ)0oQ$;>+xF9xsF@K>7jP3SaXVXuY&44jiR?Y3i!2|Ar-DfDBxvknneL$Zp1^R zoA+rD5K8RjMn;11;g$bIV?hECZCS!AzhbOLQ|ZGKwSi;2%fBH;A&R2ODdhNmqi3C> z@~QXtpf6R14#7kG?;@8<}Jd@Hh%f2Bb9 z3-r<=v-5;VKFb!M<4EOtONitVG#w9w)X+&Hq zu zR6+&V#((6^9bqNHc$uQ6S&Wx+1LH+n4>xjtj7_r~P`AQP*%Gu=wA_+0W!*wK#T+9> zi9SyZ0V8FTn2OT>{YL+~4$Nn#JO_QL%$37Vc`2HXM~en)jH=N($dKR}_0XG8&aXwO z?|acVcU3(3F1mbDhoz~FM3kEdE1#aEq3%Yj9C}hRU%bjQXC|WDQVhj6%A_ZMpCH1| z*U>MgCqGKRjsZRSxW)cGsGE@Lt2iglG0)nLLq~29Jw-I+7YW1M_7&fR68X#YZan(& z^FdcqKQ>ju?R^ICN7Rp}s@`|L%tY-dmMC@OcQ9&HH#R}|pB3}Xq8qOxrvk?^u32^a zbEpoxgeQ2as>T978^9@#@)ztT<*jhL7fQ9lEWTd!!!j4+>Mq3N_XFUMs#*5{B;OUi zNVfov?lmjLGQ!(lwOvJdwNk5A_K>JqY*lN;)o}}KeX@-rRRI%m3v8mMSu|_lmme%H zOmRi0`Q^{0j);#mzkKji^UKSpP>QUge2A0BT33=!Azp~SRBppF<%@e z-wVn)KV^O)uJki{)b?z&<;w2EYcroOAYA8Db~My_w929EBtOLKEtM9PO`()4@r^Pm zy8{FfrtGHZ7gKiZ*D;{%E}@cX>AEh~FHcR!q3XhNWp^VDSwo@Wwn0$op=q={0I@$1NAVYOPXj zvs#}MIH4;`A@W+E={Grqg$c;_Y8<(K=Ljni+q}0^(=5s;@C|!iH@39NZ&6PXZ4^A! zw2^#DYoY#>{nX z;e#_Ol}e*jbxWx6j;w@cr&6nXzVFtloQ^I?Or0RMW<(76v=vR{t!R})TSon3_6j4SQEvTJH6j4^eQ%zaPr_rs`0qaWg z>8kzcOQrN2x~hw&HqhF$5Oc}9X$AB{0#fye;5tP1#l4ac|Rq?8JF%HFag5F_7 zJ-wgMj;G*J{nJo@J}f9hVokS*a&4`CBj`#hsT)+*?fp95kEo>1PK08js?rxM71k#) zhp5830W9)vG5ahEt3q0d!G2IcDdUch61tvHUAqe14z^&2;8kX&ULF2npwUKZ8{+HJ z0gy*kcsF9PenQn!%EJvG*C3(NNuyKqnuz*$%1zXtT$L!?-;b~oq3|A| zrsGg}-=~fu3NLu7DLnZ!s__2Hx{`bf??2F&$~8F@-lm^kWrcS$DCY+$^Gi~A)b`)d zHn+kfT<24GG}PaqRStzG`9Vs-OuH{BG2$C#Qh0lSGOq9*PrsPLW5138g}1|98Z7o_ zGo4zwAZ`N|v>%76+oJRq(Q~%}ctX!9--SYRAH5&XPVAPTE2-peRoS(71Ky9Q&b_ zDwcAO=tU^6Hr=?6yD2M`R<+uK9;>xV)q1mDZ`LZFTQ9AO@_NAtD-p`;erlRUc|{L( zQp78+ipZ;|OK?SEm9AGC)74^QVU?~hqNZuSH;V3~n(xgiYmOw%NPWK&eRIut*^8-swhl*g!zKKZL`eBGBMtRjw926w zC9}mVIdf)WD=39ce4|X7@oNMTwiSGYelg9+ejNjvaTlr3Q2R8L&i^SWLt;%Q!dzRy9|T=VEqS|2)V=TG{fJsp+X`wcNmP{j zf~BrJ<%T$2c{^C-dt&xkbmfiLsq45hR=lrHP#&-9}9QO)-GZ_K&mOrP;z$Z+KdmV>0GmLmZ!pMJHQADmy2Mt2+Up(?l;q1H)0;L>YyaTX!o} zr{Xkm1f@|b`o%^O*Xx#WnO4B^1 z(KPz9(S+q(${{ozk7=Z>lQtRp0ie4PU3J=h>^56oyYwSS(@EmT&N;j#>asCE-r{gfP z9+Ngi#O(Sw5eqlF(i(@_=#K=2N$i`VBgeUyj|E*x<#Iq3B)t#g{fLIxPSstJ0+>Y8 zEDb2qSo;d*8Fg$N06YG^SYZ}p?fR>c{OfdaS04E@e6rlSxbbd+Y_mZDZVv9#-+|XS z&n(vjKmOu$!a15T_88*-kpOAgHL9MO=>RZ)BYF`+vslLY;4)pgjM`Uax72D>e79Kg zaeYFm-e3p%(r>G)XEoB~hp9%I_%Ojp!`l!nKeB=)gOT=qbf8jy#KUmH;({|bm_edr zd&XZ@Z>#&)U~I`po~Rf@e)iBb|e+pMx@ggPO?iWVdIn*?Zk@h%g zJ6#n@cajl8xZliVdtAo$E*gPEr&ljF4p)VWaEtc4o zXgVHC%)aobY375lCQ~M!wB4h&JJD81ky@kH!8Pq2r-nN(OPzA7io4p&I9E_dWxZM_ zb5Tzss(hvwO=KHdFs3#IeMPLMmlB@2)f9Xc>Vcu40*Rp&m`5)Ox{_l3pvv977vTMf=8<+R zSS~fu4hohj4W74P?+o!IHsv`5-z_X)}lM@|(fflFDanJ&k0%+#`^-8pg}t2J_EO zQo?xo3N_7QyzB^0T}vxQ+1^~uIf&gB7Z-o~4vhkNl^B2fuCW5m(ivWuGGvVZ=|9DY zFoV>J!OBDx1L(hu(M^Gw#})M>^kpL+ivhIh#&H=yNlT8JKC>W80)EshWuhe6I7l*$ zsPBJ4-$F)}P}{s#YB#)2y)e}sGS4wK0_(qvbqbGm{xM}oL^oyBB?AKUKqfva@TW@g|oLL|DHVzn{fuqz% zps^zf*X?`)kz354 zb)2aor!RXhO!D2Z*e}QbO88#||Et}-Jlq7|{{me9%dpvdFG9oN%*x<`??& z{=(vs9m~VmqlUb#%_%ZGaQSq9*1vpV2?A!}^27awdoG_p;`SFj`F}zbU#_V>C^oO} zA}x<{MsN>@l-G)Wnv{c2+=RW?%OXIS=sl!78*0b>WK-I@^j@QWR=ewpi^)y2r?6cv ze*2ZX3Rigkz&$YN9y~CZcU*r@A^57W{mLr=T zO4B_?Bc1bmzlJU%3g=CD2nwa~Y-HDa7~l0ifPcUNufAao)D-^Hdo^!884P?hP1^|_RhLE{Am|)zdI9Ik-xYpiH)GIW+3b@_`9;SQ2hMNR+F8AKL4uG7y z3I_h$@GF+)xF^g-&qK}H3RWr|VI6!zB1+t4BPR$1Uq*99R(Gr;Ot+4A-{vnaEr_@u zhb)ir#nvpAl$f(sh?{%F%;ZK%r&?7KMfR3EsVO(HrbRDee~Fxjs@rbk{CcfctyY^Y zBv&40C8xlSk zjdZTC%5oadq*9G0Raq`Y`0Io5hO3XSs07~-A_M|l{1wWG-wtNCV)-2|wD%$E)s)}M zc(@Yz9YbbZe18fZ8{%86Q%dj8;0r~1%jrRSzm{g2O?ppI6oWw%LR&kBl5k6I_68w7 zJ}>4YNm{2)jo8kCsSqXyZ125>nsS-_S<#D(Th!b}vF%rD?M9{AEV~XeFZ_P;%>AN?y$-kF z4ECb4aL`{|9$s)@w(l*?_=C&ic2vv54fq!KDQaPpNo8HS2Z3bQ1DFW}Rya*gK%vdl zTZ3t@K*07U(Vk1xI(``vRV5=KR);5q69&i?0V@HB`5s5GOcJmYx_x}b^>ZjV1&`MN zA!4u?yV66Kv`Bz+=CmuT1gi!?$ip;_)0}lf;h_8vxjk7jqVJzwOmgJH~g) zu3NAAjRta)iyfRvY&h+*S7ma4q(uDV`97vVUUDgBv}Yj{_l*EW5w5tEnwsH?cReO4 zT%pC&*SGuq88$WDSy|sRn4j*>-FE<4m3{a$4$u=eEYe;s}e`2tB;7{2`3nAusqlU+1W{nE*{l5y_kCE@I?}7+cpyP=`QYIyeUJk!WSvIUrMY{HJF}9 z>R;@`rF@QWB=+DNxxup>vjhJyfr@3BeT057YmWU|nKdV@qm}KxFXQ@YzCQ<_YN{<4 z>(*3z7>6~dT>`0g9&gVH4a-*`MXmlY6ct|t0+RV5mreIqL07|tqiNI0g^tat3m4M+ z2CeDnSamTryI5JGT^CL?V%L2d6JLp4_upvG?YfP(MC>}9n51QQl0ljzFof$de$i~v9%FJ>+5 zx^mt3aI6&-Y)h4D2^H1rxMi)?u9Z6NPPtMZxv08k!^tEB)z%B)c*zKG6n5Q3)b#%i zyY6aQYP?-{trdXz?7FMa*NArA&1jn6t|K{;*{<6gGdrtY*FuAAJetX_JDYry>4tIKKDW!i)opCGVv?u_SQ6Diz)oCQ3P4ZRr zHKI-O&uE(8CLz`}ZIZa<63>d75rVME<3j*v`NLa6dI*`vL`Sk`C5d@x41;;f#agRb zEW?DyC4(KW)T}m~x?3+&QHe6HM*{OCk3*{vnqG<<*wlPMNm02ifl7>XuaznMa84@>%k4z&+iZ6*fP6?O%^~qp|c9GL`}}K!G>a1mdH^~4H_czu5`w;hE>s9@YK3a|RJ^NU9c8hqP597uq*1@Kb} zqjE_1u8bq#>Wutjgy39SF*w(O+6-_yZUY*);g;QwS1mg2w%=|vtA4Qvd$3k7`dL-5 zBx0ywj=LlkY)xi-IhM$`+^?WtOarrDE7ZWjlvb#LF9(GjP^lvIw$h8^)UeTuRTURg zH{OxnvZ>YcRJ9uEBeL~AIqnk(_{j5+VBcva*jz&XmxHc`)2n8iL{@0-zTb#htVESq zLC)35?_vl;okSokRmw;3t)fyMCKz#<`4;+_q*8S8cx#$Q0aRuvB?VSzKDDw6J%_aQ zhhl{z=$1E!aQdj|Md+4BtJuQ*cwXHpcTiNN-mX{cWz@5)mAsaZ{e9LfK?!~cLq1rN zFtqPSzJl3tY4}z8#iSwowL)na%xQ(vZ~}%1B2>7mH&qOtA14N7bF2K@kt+YfZn6o! zGgQGBHjYTV&DuMNy6{0rhd&e)6iKUl*&P4_~7#eGb9Jg|@jo4_hStfsqF8uGkO27a->=MA{P%yde7d+&P;1AcIEL`6y41Czkp0jX7 zhNcIFIiHI0_32wWxwDIE+YGuMb{VY7MP; z^DZ%ftosm8F((=0IGm&&xZ`lMT#Pb6(HOwo#)btwHq9T|O)$~@PDJj9kYokBd>6VJ z(Ob9&O%-q9dN$7Rc)AbiKGNOY#pMUs`@_z{-0}mxS5sOSv83rN43|g~6D~qQZnSqG zcybqEh|iFuO=yRE@Kpc0GKN9Y)p`s6DY~UvsaSQ&P{|(1yH>8(8lLC+l(?Tf4y{7C z2&D*tO6G%&rjn-!YAhz`&@ZNv*{>C<!Ojt5q0sO8i9>W z$&Gmv^4}MN<-}RLxkPdZncnBAS3b!xoPLV$c(qSIU0}ySVzO*FTMp6C2Xk^aY8h z-j34hHM$OkS}j5;No8&#Tlgw9ow$MaR2qPWg|g?DoKgvat#-5O)H^K{E-V&t ze6883)tU|&75Wzb^Vpyp>kk2T*clY|(8-lOQ;M9qO}OnQv32(j2%t_;FBCNdLmlof z&3IdRoQriX0ngHws8d$1gKzcOGpW)i3pb;ig~Q!}zf0*0GoqN;R+^~R7ZMZ?9z-0D zD*MOakocWE5XMV=feQ0pW1vLe@K0m~MT{fhChD0h`^Tn%5@Ii;l3R=^*Vh-R=^mgOypML6mqE}X)4L6BhrL;eTzrzI$ zM_5papE-Phnwlpx=Chr=W!b5j6d6aHem*yEYe>jEO+x6rB{Os~oiPw3a6Cxhm(a7= zBUjsQv5E@{N=~O%bx?kziObF1X07JCWv5-F8|jkCj64tGWa;bCW!k6WWGSJ}W+G9q z;$-QI*r(~Vmg7{=$I)e8CK5FF2h`N0xs0d1)oOA#^7CU{iKzuzMfHYLwK`z(>yR+M zoOubViWwd^e`GmMqp&0LtP+`49wKhWy&cD|S@V+KPW;cN#!q+W=BnE7MLijtQA5&Q5!}|bK_|Uvx_prj7Ub5 zMt%$$*`$X`$Gv|9B_z}Fc2J~B$GwZucP6?$mrVlVdPCun`(LGQS?P@`GjxS8IRe-* zO5SE6i1!-PNoKV?is2+E23n{LRhFt{$8Xo1ii@iQk-b+f*J|}@vt4X^HLp~JVn{Z> z6vc2BgKF{==~Gcu^$hlDY6;?NuVw{EHOk)yf|p0F8Qi}}YM%8VWQBAVtwmsb0TPal<2;bNIN;xYh+{vJuJjDnn*!fG8 z7d|yZuR?{APDJ_Y73p7$Z#2PWyrrZE=>Q%}`5i(Oi>0t% zD~qLwXvE4&dR#6wuk_rchEXoDhEaqZ8%Gr7F^Y3wGCEBr-1Gw*_8`h%0r;v|NG9&s zLlJ)wG#?&1%0ZL>s4+2=Q%uN6p&xw_ilV;@*0SOVN(h$TBh>5IA}H}4uXY6Gd>hd% z>pn4(fuf3BI9b!D-uqKPWhDWWO)xuo0Oe%-GJ@<;B+K~8X(nCh;S-4~XpcV^#E>O? zvi&L?f0*gQXG?~Q@PGy*N#lJ=7%WhkCu$88Pv%)zjLMCgX+JzCv1>-&J?%W^Mbs7d zrp88%Lb|`$7*rPl>VZtku(G;OFGN??UBE_UOd;EJx%VJd>7rVO(tWxcO>?_X3Hhe` zG$wpTG|5w~9#ts?vLXaWgHI;flNE3z%<%+tNa6*3pFuy7FCvVdW~pAQl~IYW)@oF% zHLuw$H%hf?&FOS%Ua?H(|EjqKZxvIK#(_>!@qSL>qPdBhn%nOGS#H5jX6R(Hc?Ahj zq^pgd8Txzg$>5g}j=uwFWMf+59$|kHax&VVH?U8~>iBypx>TiO4yt-FH8rW~QE>dd zDf1Fk;W%!`9}}B#j=wiBq$R_ZNI_7|>oR;QsD^+)W~z~%KA9XO{D7fS`$T3yhay!- zppQ{glUDv;aQyv!W|$Ej;A2Xvegyw-lO8G^_kJB8=WzUe1D~sIk3_otDw{-{+k@Vy zGUHKp{H=v!R-H~VtK|{>8-WK}C>Q-tf$5sYZi0!w%;1(h3Bt2*?R|lL`hUG^@6yZ& zP-y&OG+HehpFrQ4X#7Gpi8vakH!4x-G(L)dPKeb}nua3yiN>^&$t(}8Zvw5;f;p|f zB0H_0&)}Cli3qJHTjBJnaNhk@1`ZNxkn~C#Ukc|PH=gVh5Y9Vk^-ELR-bgs_5vob`T509n}NqQa1$F~QoTd}_}1XS;rsn-~P=K&qxQ>UOCp*G1ncX-fF4N@`NLFi^v9&c6pK-|A z$Y0BK$v?xTZN6PMvvgCUXG7I`G=;k@3#zu+N3o$wjFJ^qm)J)d0abhgV?fmwh6~bG zahTe`-bzG?zd}6iwXe&Dr&e}6-C!TZh9@yfRy^HlA873;htHYABrvLfjf_K`+F5}&{rkhF#Hz>L5+ENx(KC7Q%vA)fx1 zeO)#@y)8SQe$zgR4Nqc}ta$nZ`$!|;iBDh*cskiI+2gQvyz-62nf5Hi++W*QYQx+Y zvSaR>_EBt@6Qg9s+z;&|jet2mfiYliv)o(7p=>?9l(^!5gh)E|j*)GO6VWuIO>v=p z6dRJnC|QxT+dk3=Na7P11Cq{+-S);|>=g4$iM{BH5R=#0S8ijsCuYawKKm#(Oo~x7 zOs=P$zg!*vBV1A2KGq1h}E>Dg4D&p{Xg8G$QrT#En?X&Hxwc+n@cKkhHAH{}0 zF-ms)z1BX~2>9bu7z6%J(j7~2$lEMGk%$W)gh+djeTg=t{aSXU{hoak8`8um8qzi} zXPR7=_$yq~pV~(o0d0H|BcUxzquz_Lsb@QOami`CH)^$$)YLPhlL@}L#8kC#%8^vH zSHPpOl2o;S13r1G+JEAgk*b#DC6ozkXU8u@Pg|2NKe)CY67H8QX=^!8{ja-IH&ybU z`aj8NpXb#7@uDqx?ed-a4`v;E>OXj!|J47Z?~n$%*9f@qU|8JI|KhcXhU7T-ANck1 zHw;DCt_Z3#AKSl-n(|}&+Tw-`ZFf42YTc=z zgrC=Jw|u|aXqJi%2Zvso?FfrZF?ytw-oD4myvz*x{OBQ7sXXi)Awnk=q@PEW1mEpw z~XVY%QWjPKo;4cKnSk*`2vR*L4vP4GP{nXUVXuEr?M_KoYP*-8% zW_Fm>nYnAQxN!H50uHsZvt@K802iDAJxMZR1!j;rPn%I9ICsW(aKD0-n?2YxL7{>$ zh9=}#Oib;KnIWa*_`DvC7_%Q&m{3G8JyvsT5XIXPtkCkEE~-zEcPRlTaaVIcOrvnQ zybhlz{r;9QezFAKjO2WG26cN9i<`WkEm7}5We1B0{wSI%B6tHIC@z&xEr1#)gW38B z?xOaokY*=>`LuQ)v46{M$3gJYq}-K*5q+%VIrIHwJG#XpNee8W%g-mHscd{ zOt>)dlHe}-T`^BKC-vEvoV zSd`XqDjLN|FnVlAunlZE3K^Q;=+f&XDZLl~;^fzE8iUKP4eTSO@5_zx^|h!rWV!^q zj4e^`A)^Fqq3L)em{?&{hMl4!L6c!7e8F;>42yXmkzwXHx(wTylOi#LJWWEI1${fG#c}2J7 zwae{Ft>HA&ugnn=;iMFL$uALJ!T4RVau~UXb`F1?C=IxcBVC)KA|GornB2;Y@xioO z>|nNgpIU*Be_5E9CS$C0NlA}*R%QeebcAd&W~ruYCD=8Ye-% zEE{vsr9(dX@(^35-h)Qc$>$f}h^DJ7U(NuN1c=b&iwR#-zQnwb$QSb)UA{b;v^0m%OrBF>5?pyP*l(F7^IQYy84*WJee+tQ-pP8j)`gS866&(7qc~l zoHQ1rX2s{mw4mcv}x7zgE z&>0olh$oLrcoM2%09e@kQTbKFjg(1Kn79uA2HRft2-;w2ex{Gxf3X#YKN8n~&{e~z zWuu69mWHFkmE_%oZZ}#ps@C15%VImV3c3Ch28D=Rr^l*X*X8wz(jKIx#+id>(Nws& zUQgdBRD6zgmieUhndr-gLd$;kVl*9(wB`#WYSA~eXMt=3=xWBE30y!wB8<&%bYc8N zl7rbvYif!SSG-J}%-5HK%Do0Eb?Le#7*)!nNN(A+MhA9^74p>_70^o%N9LEwVj+(> z+9vQS#8JKIc&#SNZdQsVR2=o2rFP3})EjWVy5&YKb7`R;k6j$iGNg;GD{-N@bLHlAS%5H1ZjHl9L13%SrQ1lAlH#cXovu_~~Lr_4>R`Atrt z_EH)mUZ@R?(RD)3C)8fT7O3}-(FA=Bny#);I}gMkU_i4#P2d6nn$U}R9}#-yH@eWf zE8O9(jB>ePikF5@9@iiWoxk6p4qZ;d$4ASV;(8QdGc%=s$7r5R8j2Naj+rba%`e9z zCC?FrBBf-fQmq#&rADbOo6H7aTTNOo)qTDZ?rvMNvIXF z@~YtEoGCHYZy`7D@%?#<3_={r%AD*nx4Z79SlT>X@xDg^GO7+VQ&1Z_xE6WApY0zC zi+E~54lSiu2p#QNXmtN$F7gmk^zRuQK@|FSo*t)3QS%#Jik>b_!w`sZ2IAWNfh^q` zeyQ-xI{F~-?!J5y^(QGrV=)s?#5BeuQPpKejl~PWE&)z7xoU#jl&dlCBXZUJMwhE@ zDDqSiwb1v})LnN&eCDQc%)OL*Foh^CGl)VLq#OCPq_uh6U1|`iVl>SpM9uLqe_ZpP zgR?^}HM>fdc6n^k3k2B+DO)La+*+|wLDi>nwSsDw&332hIex3`6!9+oB0sS;ek6rq z@=Mv5n;F%GiL3Y_R^i#u8Y(YH&jnHpsX;{A!9t9Bl1bu1-2x;hm1Ds{b)KK z2^(2!RLousehI*@nWrZ7!Riq)YJQ`O(YX~6uSn#Yj3eSH8x3Qck6*#K3OT&qAP1fN zF0js!iCj$>_kNkW<21M}ZdF>A**lD}bwW}}F|`2UThY~sE}{3JsX~eCGu_`}WH|8R z`mdwfhG)brJ0{WWBG9A+J`)Su5)dAW9r<~D^$v~ka)jV$B1GasnRq@f6R9-IbzIh7 zE&A|r)GN3Swu*|4h{F{#hv4o^!AO2(vOou_lnC6@@n;x-TblRS%`WUC=6R*Rp;1DO z!F(OeQfC=Qfkr2_!!J-`jq%)Oqg&5)eGRKtrMXVhDvD_RLNk1YfeJjWTjlgv?F%2o z2HDK-bQV5GYLMs2IwworNdjG*3i%NYDSRFDjUp)i)0mCEGL>1=!}&j83)Xv3VPmn( zH{7jp>k1N*PB!2X!=u~58Ub=N^W20vaHHv!nD-IAVt%9RmAm)B7Rp7`K@=`CVPn>% z+`}j|aWRmgQmCd2(zBQ@Gnyw81Tl;71Dj)F4VQ$*xrLQOIcjz>9;5tmf>?wcEmd6< zV1)q1#oE=j*G498r(CYNxYZUHR<$$B(J!U&N`5)|d+PBxMV@vLs#@d%75Boy?mmQD z=RLY>&M(X@AqQ%K@}BsO_3Z8}b}_5)gR~v@o`bmZan9S?_F;14qI)VUB(F3HQltDr zZwU!hlnV+Uh`fM~f7_oc&;=)hUEFzs>|;>!08X;GMPwy+56+=mFV>3J5BCWPrauhP ze@8B|6Eb=q8pT-e^jPJ9BpGdfr_1Od(TbrUPB72YI9xDqU>_-5xM0jdXQO5XSC$Q#Ydy*jw zzTQf*8o}kTWOoSikP^6Ea+?U!xws*(>Xf{89Tx?*onqPPAkC~v_v0l?ej+~M7P&Qr zC-O_+D`lQcVWQpd&oCdz?bA4o0TD}aIZ=I0=9rQ*gM_eje6W3&ks=VDk`-bid=P^D zcQb>X)+8j~2ifvLT)K5ik5$R1OSB+WfYui$(Efs&3rmx}QRLZQ8a?aMD4#t06q~%> zgGOG-iCteo)A7i&^=yGradtWAHGr;WKAOM<^dsWR{6-g7m*u4=43Vo%NL4?u;!A^e z4rZPdz+ueXd)bfZcH>O!`fv)$BkXGLRn+@@WriGcQSXyZ-K5P`)cbrcPe&iejhx$` zsqB8;+W7S)YLpCl(F>wIkbP6^AE#7<2IcxrF5c9`4}W<`648^D>5%Nk5jz_ zf@`8@p*?DicEc~W%WkXIs&<;VSGH4k8m+3=>>%^3`kIkW(-jp8oP z3`y^KRv_imP0vDKHp;MgL0*EUXp(Wq4^h?R-o`YBMQ#R+~RvK=$OrQT2Q0Rctn!%bdOgv;Jf zO-(Kv@BIY3v>QX|4Cl4jsGFPkRlSAuuQCIOFez-*&oE3T!%{s~o^q*1lY!Y#%8okkMWlgr7mj+{WY5gV?Pv12LvOpvUr&htKv;@Ja^#<6}E0+9f ztx|0?a0hw0?Yj71saf_KrOe0nKFQ#fJVnB8G_r{{m2`XG z1RUZH-|~x~BcyvS`p!hUr?N@JkuJSSCf$pPbhE%1U1$0>1ZLG3I2o9EjJz61nU*9- zxm_vN;GHeCkS9^?w8~B2aXWsi)oMC$8D!5-JBh(Bd5ZZ-`HB0E%=_0aEMV&oQoa*q zNCxx1+wF7#?RI~0TAazD(j($<7`|k=x%7yq+>%9;eoyX}V5ES!!zUp=o{H_60(Z4A`KX&Yog5tzfXH@LGKfANG)@rvOkv+WzWY(IjdLo7IbOTd-+A?+l@u_nL_$77Sj!?IzsM#LCn4!gvV?q`4r4_eM&XR!PtreE z_~pmuFq-hoBx2T2=`+nF{>*VP$rDljNTHDsz2>*$;jRX_i-0V+%c+%0V4|j5Yj%)$ z({7fVZR~(uuLIMh=ytMl*XI~U?J&@6>*UoCBMK+zA7-%F#on4WtGV{p_6dkfkJi9n zs*xd{9+A<_FFm>eG{!GIV!w`oOOLALbPX>(5)q=*JCAnA z+!w{2X4K9UU5(?)qsvl9nb^7W9uyEdIM~5NY@UnEz07>CUl{UgewoTt(0uspN8_rY z0L(GBnV%VpT&aW--i88eAz0dq?->fA)Vr5@jk#xNvqT}ApMGDC{%%6Q59PR>{PrKn zUiul%|0UM>TW|V#A)2Brq;@IKMowW8eDcq5yw}*rvlSKQGAf**!$-^sTx(i&ryFo zth2R~ieNNJ!6J9e8lvArhvM4!Kc=7IwefAQ?$w%p*(+CYpqmBeD~VqQw0x1dkXQE$o4Q8%W* zP2nga%rSFRYW#Uwz-a_g`$}qR^3nge`15aM1`uIVc=6uNFqtfqR4-oM`1AYGx9Y`X zd=eLbeixfWoEMMYsKQgv%Cg3mh1{`z6IzL%G6u3hBnL0jHTSdx&WmfAYb)92A+!kX z_D%+o_!e4Hb~{O|ZY6LEfvO(Kps=}j_m zW{MgMBF*$|NUW!{^?{S=B#$XZ_tevpII&)xomjugAe20b{KR_9#gJ>6A+C^b8I7!3 zeaiyQruJu@?%Z--@@=5+OyoPsCJ{%z^d^~nk8TY4R&y@ujz3Eb`A(w)J2i?JvNK_QeffbDFswv{{|@0ri4rH;m+xbfh?9ZzCRqlKElT`3 za~Ms$WfCG^HM+a1tPvMXdEt5w70x{N?8^PfTwZo}K))i0CAK z5N>~N2-djb@NfvO-cM7nG2!78HH5Nw)Px=+UdzM4dT>}ggv7y!7HnSPli7gVR|ASzyH}2cU*RY( zwvS@F!B&i-om8-18~tkgSR>qD%cqbm+byWd(kK#Dk0;~Rj;ddhMII&x*276h0_#;^ zWJQ5>v=@PO{4xUT$udaB*3V56LV9>zN(`7dbwNT|!s|J2vHergwN(CjZ?XNn(LT>D zwx11_mG>6gVAip>*amO&-(q_#Xf+`Gj|F77T^o0gZTT81BO@-%k=6}TcyVu{<1Thl zGDccD@|X`l)B}w%O4Cquem{cn%y-#-kDBtkY_$dAF57CkQO8N*mXAU}?Rv#Q{xpsg zqfTd|hC{_H$bJE;$OUr!W$fYzl)-TdBiv=n8Sv4*&33(~+hTg=%0(h`MUjFx@_L?= zV){(8X%3^_Nz^4bb9K5hG)wWw->l9uIjEAVMp{Wx|*CZR(w^G4CUFZOm`e z%5WVW77+As>`g3`WXo34)Cen6Sf1NAmnz%BIt6IU~^O+%}2=>o1{3HWYjd0}6p!p*D)*>7v?BX(LKFuZpp%oEI^hU+H zE|kts1v2`ye-tw7_l%(|Fv-EJbk8;|LNIHq)NGgib{RL@*HO}_jjIA`I05gMDqgu+ zuak9^Y{e1UM10}T7{rpNNS}%fn?GTnre@fbf?5l7@SOoROM!t5=iGyirK>Eqh{L(Q zj%oYaM11ZnG_r09)EtF>1|V{z*qo2PGg0s9Y!Y$QOK*~?_iz-2>2$QE6 zA!j?2h;Z2_GBAnIXrv<2SZ^1PtYy_`IZA*X%#5puZu6+AsoOFpS%+?AU94934Cbf1 zbN3x^mKOV7-#tKOPViuHz<%wS+P`Q1$o@V3c5nZl{ZkYu+Ar!O=>43&2H&lr@7C;D z!@gT1N>Zw4zlSH`EBa^;`y{St<%?*M-2CTr4yE=>te{i<3mfN;?8Yd|zG`<7VTp8_ z7osPtEJ-d|`SWP1*#7Him^ev;qn2~a5Ag_2wY3Ixb$7?jV5|bp;!Xf^qvQ5ao-Mx2$J2$3DkOCR6cO@GY?4{1HWGG?$H!`i zT`$hS&&g5OaL$pa>m#74l|)^y1|)gZ^#=ShqOOUYB7?5yB(RzubCq-tJ^FRQSXpAO zlW|9y%>iXRZc0?w!=B+pt(~$tc&b6Ax<9rcLPLoo#6*VfrXIP8W{W?Eg5`iQ1)YRd z!!0#1bQij^86p<1Z5K@y%Pm`Ai0H!%3?+xHym0YP(u4x0;={UoMrsQpLp|<$6}{ z_TMoGCQmU!&B@A&J{9i3H)QBlI3Y*}q;Z~b2fjE%ufho-m7`Qj_E`%jgtQam8%=O3 zwm2b(%DEHbI*ny>vp7j|CZ>N&bS?F2-o*4D8twBWrhh+JR^G()VAipT>A~CliRq7m zh5>%RDFDIuJ8^mFFL)?dg91 z9-L-F%KB_~&PVmJcRO>BVN8YKnN?wDm&yDfe zOr*PPHr?hgE-lOj+A#P#T+n4BEJ!$Qa5^vQw8>bG?sm$`<#-?Xy9(V!T(XNTASh=Z zv`2)6G+aqI-No%l#hp`$CumFb;@~!UPJx_kbQi>`4uu`(o%xpX$o;>Nc`+fHekwDX zGHoRVEmEFBsH1<^4Wd1r``Z4x6oc_>Kv)iEOF z9it=V{bNH)(vmaaMLPvxq9u6)lSeQUEgZsHg<1VHm*{QC$vn78j!kt}VFb+T5MP{cHhLb0MMT!%< znf2OvFC_68h=ZbxA;gWmjQm;qL z_g1nl!RmY4ji$MLZ%?p~W%DTUv67`ltnY0HpWqmLZ@1fLZu7l8H3mx3*_P;g^X=o= zAjQWU2~t@aMSO4ZguB|lw^K}+m7Kj4PB7wlTMsa=#PRkrwC9euSK*i8c;muCdfhg1 zIj_3hB%edoZxr}m1((|!MAuSz=5@Kf!)Tw!<@UB8garu)#pkH0>7e-ky>ls!#?icU|B@L^nKprf7RfvJP4vtK$ITh`ZepAF z4KzyI5sGadQAx&a-e0m$$LfDOt(SS9U}g-SOifMl&gg$@CHmilyDg6!?uJx1oal6A z-ni`ssC4(w#isj5v5(~NF)pAIb;|cP=f-R?MN7pER550udmZxm<}OEHHY&CF=Juj# ze%~A!X{K+^wrtvw3KyN=NOH?aM8vr0%7f!tj7oD_zBoW&i2^XE*z{EF7chS9>0Lff*Z=qkz zMaO;}11`Et7yAdiuAAxtusR*>Om0VLC0*^w(UDUoqFv`y*No z_rI;S8$(MWl8e&y9&x5fAqwFf@npOgb6$xj<8RQOdosR(Uxp_mpeE_e*dnH?rw~cF zfg;{VAk27m~{2Sy00qJxP z`GrHy%#t6M7xEOdTWLe1dnzLtBq|lM_D^y2Q_Nl!>-k&*e!6{lf;xVTv3?1)=JI?U zrl|CLsnM@a)A_9O$D%KrsiI3KEn;3o)BILB2^`ZZXX{hUy#FE|;LaHdLuP&#bE7E~ z1hOM32$JobOje;X#chCtvpAzG4U>_)4b)T`6eBAo8)H;@1Uug8J6F@$0 zy&rwqNXWviuRzmPr04vw4Rj=J@ zSKW^9HHx*m({U@5U8$o$rBa0l?@fWV!h=N0xp**H_)xE6XC^IybZAi{u``pVSbU@O zo!OreAlc6B&*>N2nXzBv*qPavEmp9{C|{yC5-SktS^8#WBjtR2Iat772Mb`oMqR+k zG#?Rp>UFVw&}HXz;=W^mZ+j0?9im10^&0xMgkM8-8*m%T&L7|~%;cdq04LA97iwj+UuuR2mUqpjns%$vrpoIx{#u<>E zE>jhEEZb)}ZPud+=gRjn>Gf#Ty4P|d6Z0s}JGU5@oH8umb;ZSt{(Xyk3ftLiw_mxd zaE0d&+yjH|!2^SN$MyFVf=>$Due>r$gcOt%3aK?Sx=QQ4Spn*BZGrDLQT$cS*4u0} z(j`pq*U&|zjMSU(5U8Z_Y{Em|gNu}zAA`2J-aSg&6p03zHS-}AD4V4-S;8iK5W@8W zD~Kj~A4iY9Pv9S&skPnv2RX>X)%VV)USp2Z#qyX?(6R5riC&g6(HyRl_=$d1h22I@ z*L(w@<*sONwEI`oH*XE?f;rp2tesQ!TEr-H{A`Ya5{d8r$fr%j&5w$q}J@WzxgQC>Y zcNt_sXZnp7^jIY-{d`}ASG;A0KGnQk^E_#Nc0(WTU{YC8Y(?DNR1ueTvS%u_hq!{d zC(UA(T$&!Q45rA8Q|Jo|bNnocrsL+1EDzI9Hl2XJY}9R$qUWNiB1JQvY>E@3atk<_ z1Zm}ho}jMo=9rmV>*@wnp z3LlOX_<;jqWjplA?%)7jXp?Y)L|Q$#E^KkS?_sBYvE&VfLgiPovuLb3GV9a|vKLtT z7Xex`W-XQ?w~U+Q-=R=+Q}`#xM(jY))o|&k95IOkIp&DRXtC>XExmhbSw|;!9p{q? zC`gw+#42Jd70xxXm3ju|o_j0BZ92A_dI{R|-PA+)74K9V22>TqvI7oMbMqw}!QA@^ zq#0w`Pq-du*IkFM@RQlrNypZMtZQ~36~DbFh;FaApO9x>C#Ek2PO|I^4GFO`dlVT1 zaDTO!xY(hUoRZsY)M|CN)~?no75r`?DZ5o`HA_|3VKovoi+A@`dcgqNruFA$j?i9> z@59J)rh*f5Zn*u;*(!wdJ4c3d?;X^X?=_4?w>oaMS*>^4SaP*oLga!n&g;cy$MNf4 z!=e4aC}wDmfZp$pur6VUeu$cyhG@os-uiaGKf|}I+V-TL?V1E;$I(Rz)J^^_4A$@Z{i*Y}c8RI*MCguPt7U0`KzgU2e{Teks#*9T7 zA6uDuyUX)C{z7Ks_9B~c%eoqeX}dShwB-}Uz3=|~v_FdyM>Bh`b7oj+o4G^XLAO2Q z@7=esjFDxDy%sLB;_b&Be^e;1S zq;O>NNhFK#%$Pf=t4WYp#08(o1#StSgo}KieUUcAy*oSNe&0Td4RK-=4RPy9Y|3Tv zKf)D#%0AWzXya2D32j*#MZ%r&5^9yhokR6X?Z7j^rE=odJ)CJ|>)rwyRfceLkQ z_y5MPgsr>K6LRCeiK|?#isj8j4v_J%03T03Gj7{+Rm0yy>0OXC)>aP4At)a%pik-_PECsZ(J5_p<)Rb@bwaE_)W!Gy~T2&Xhiq&ed-Du%n zN3Yaqv~cvi>~x|r=ne}Vuxs zAthkoyC?-qY4r}W<*DRicV>n>B+M%{15egM0HC8aTnOeXR}5wf*BM}Ty;=n~X!_-P zqgKW7JUEeDx8u6CTCLG`OY8uJ=16)x1GDNr;!y6QA_JW@;I${IWTi@9lo~MDBlXsb z`UnAXYISP=D<2FEW)rME>RO@wQJ~(A0t-GjkQ1t2uio(hCWF__|Q^apno((UH zrXK7A1SXyN`5E$vg0>F0{n=TNo$#NiFzz|DFfymrODe;sS|vgGEzDE(UaO?x6qB-R z1)u7QNljwtpevhQu4_>(iD7`IiYF#p5(DW)(-D(t^`W0eik__?0XJp(p?^i>EC{hh zZ4aQWaLTrvR=d-zHCoMzTW!^Gv$Ef)w;UW#D*2UiqXE)M7L7Esr%(WGyE?P|=w0Y- zjleESATSUW5}1(T6h~Ie)LDeAf~Oi;$)_MI)jDEi6%3*f(=UpNO23P~&|Jjy3+T!Q zDGM>Z15L+5OqMlAN$7Zx!D~_`okT*^_UF-7kWkfcHgSWoTkMn@@O4AcwX3Ca&GXz! ztJPrV*>uR79yy(asP`lidRzht&GtQK=D=X7J=Q&DK`)6`L>#DP@7^=Bz)v(Va?&~z-cW?y!c+)e;e|2SpdN#sUt z{}62jxw)V(gigv$-)mQW$8n0~W~)$9M6uKQ|l}rUsrncfjjHOwK z$O4SOsVU|NnL;%ZG693HsNK{Q?X{;wcB0M$kLFD1cvfp;me;7z1QNW3x2E6E%F;W~Yjc;g$e%a&8eP)&;rdC9dEO=5=}u zMP#1cW=T78a;B%|@)gZZOT9F)XkojcYLITmoD6*YBoqqewu6%Up5v7(UKM$l?Yh^h zV?Th%Yo*;}6~62!o}gn0ff=)lu#Mh@850fAW~kh+W(AT80SBm$!Y#qR%y11Qq=?Vn zN=?o9Y;vMt+8#jUK&p2A@PnaznV{I|j>7KUg=mrlZKIewX93&SS)@@r2ZfCD4?%7% zvAr!MUC`U)R<lCiq zujz5==d;P{J*ak?#i)1?O%ml@$T1{2)0g%oRCTx$OoOuP5rxJi!ch)HlX7G0kc*C!TDz7)Ko9 zlU;;EhR{bMN^Wn8?2()2_C?;|oZ}2?SChvoWwpmjVr@`%5#pO3E*654zaCRXw91V_0kxEiDOI zC-=b8ya!MAj;-Cf!J_YYR6=I^;&gZJ9yo2cYiAwe`*Ek8xjBDE_P1kl>-F5hE>F}w z?fPBVbb$)--vxQ(4yFt)xFXZ0-Cv~FY&;q~yiseiaA$w1FuOEZ+^SeQIIu^~d3mW( zU=bbaI;x2?8GHcKXV$sL=W_@~8Z2Vfg@dS_bl5o}EGC@qaF7g+YrVWaY$n{aRUnOW zgsdmUeLbLQGT3J@sp4&=08>^OaK^p5eWMFuQw9iI=@c}Iv6blY3T&kbY94PZ?KFDU zXQ`@+bX)0CHhH}Vb)6PlsfwnGu2=?q*-CeO9TFhL-mr0d z)J%wHR z|GGeCpbYcY2}PyfWH6v^LN=n)%S0P7=HwkT5ElZME21w;cgl31VN6%&c2!=anwC#T zS2j&-5f>hsD&k^v(=sg$*SsLe1=(==@}ScoMDGzod$ZE+Lva_uqXrvP=-ZkhUr&T zucoW$>2ABKX8}RL1<+Dr96`h=ig7oFXe3IE2}$&CT%w=)sZmi$)EK{LVl;@F_&;R6-V~Nxq#> z1&b-5o*P}v-zaZ>Iu8p9QX!h9h^!&kQSAgm+L?Y+ZIx7N$|EKdY*?6 ze5;(`gOkA*(;@?>)jLpyvUAo^7rlc`vU5g_ga#|yIajK=R<%|tHtMA& zWMODRb&poI4E1=kUIFf5Vd{nGadAa#=X_WU7VuML=WOqlxC+;I>JIyH7PpM2`f+m| zK?fu#WV&_VC|%^?mwS}_kIP@^wYzY=nHfg>PjQsCW>(#KsrHV%y9qfVR%27$3315D z7_`&5Bs8(ui%2FXME>$ETduimZ^NGwdxL3fZ>pN$XNtpJ0_(s`uE0?!V zaf38;?C_-kv{tE-ZB!xPG+V}u{`Gn@+iVspWk~Q}^6Pk2 zz|Ol&BAiBG7d=HuB4o&?ac61$t3uW(hOz=(Zy{$;BI`v4ql~@DSvd5pc+Nxw1}GU)vy7_K~6d&%VKYx9dH!6aOA3UCRooN-C6mMv5&#X`la)u3oS+^&Hd z7$vV&$(8(4xmI`Ok`@7T^b|u}V&^@kH&1lvmFZ1XL~$IQP;Vv)vxd=ST8ailNP~VH zo9Y_WHO%@dxI0O=!iwB3x`kOof_@CL#!k#Z)@x~yHGGGedGI@9i1pzZVhtaSkxxuJ zt8d{V+2Jgivk)y$T0titwk(I#WH3r(X0m^Po~){NIZ?HZ{UnR4B7OcDnhH(ZUxLG! zq>-GM%;>}>iwiXG1`xzFp5^}<=4KDBwt_{r$&zsYX~6wofSw8WcP{*}dvLX3{_-Sn z$&3?`pc8STT@j#$7k-i8YVzwK2(CT{ z?oID>j;#(-J%wx!NFIqjr4d?vTvX>l${_c+=}iD|M~V7TxW1*=puQkz-k&|Nanlr- zhOp_S^bM1OPRuoBOR9`s?}OM94{b^#}Gve6X^JI)-{)YNdp~Ur?pQK==hpo zSxEyOgIOB`9fP;Y10A0&IRHq$gF%C;T~nOn@z(&6(CY>>S}Ynp&44Y1^&25dJ`h4% zWJ-Jee(n3QDUEJarrgg|^5t^A=4HKlvr+W@R=w#}TFqReR&C`Na!+5fPs zAG46_ou+QW*gLTx+c#oCkI#ES7)Pirs9tZ?DwRqOiU2o@*+RWuXhPgd5%Mz?OU+!4 zB%~VX>MuWDi#%=n;sDFZ(G$PVV^e*vknU+)Ryh;HQwgNZ1Af-_6K5bv2M#}mM%E3$ zJkHww4f>W398mmsOlNIBB$F^5IN%%Eq*3ly^iOtyGjtpKonV|*J$1n7U8&O^f=LIg zoQX?eCkW+2wOp#_OO;kVSFHLCFQ0FeYH(`}&J=RxEG9X#+v@C`?VkwTqNgaGAbgK} z`rCNUmUG6KME0Z5$d&9nOWEY9qgQJD8+-e&DsQ` zX)pn|<=LQ1j=qZNS#Lj%| zpzTQq=40D?)Io79%?{fBj`C@&gDSy6+wIP{3LUiFicNLp`P+8T_6N8~^FiC&te{JB z(Do4YWED8k2W{_#rb!Rlh^l=6vjIw345JR(9x%+!deHU;D_G<+t|Z)#fz0yXU*w>T z{5l8@+6s7|n_nJxK5!ehB{P(JOyl6~6Q(l~d5~eq6VroGybF+RMlzT)Z&%%KvOmf1 zF8gD5+uy@}_Ih2O1~CZT;}0OFZ+ef9aG654Ja63s|2u1qKl$UC>B&j? zFeFN}C_vI#gS{Hg3?Dj(Nrv<#1{<@vG?lyr%QvJbcqJosBc_)IH=t#!9fg{E)^ z#wAr^(LRbT;~pDDasDkOsxiU{xY$0{02%k_6jXsPD=d`-S&GY(D0GziXh~9XZnZDN z2C^H-(5@oGGT$K~LQUkgjJ)Q=#r_hc)wQp{mdtUQ0?&oC?zE3$gA*IYowV+=k2L^k z(J7=rTB{@tXTsHT`ko_;|0%Hb9{bvC*m|cswmxbf#fB|5iaWOc#y-{n*rHQN0b45r z6U2n8rTCU(ivA(+^lkg9Y3JKNA2bYn912`RjY?XQ%AL$v5#WI5*tOqQcMQoQTu2E;E7Hm1w5sgJNkL{RoeLL z5_im9XCK9eIW|fX%r)$z4S+d1i4-um&bZ4maoZ94mz?#&F9aXH)V^{XHut(?^VRlI zY}jO@DA=@`w{NnKH2^N@6jH$D%3y13!rxMS%W+2k5O{jjzA77@KIo38PufSZ;famn zj;GJt#~J`nbP6fpX-J$~m=Lv$yyloJN|C6k7C0g8^s-ellHL&z#pB$K=^ZM z6sm<_K15vT`+;&w6&~k5svM)LG4|*{Vbu)9ghTfPpMf*t`P>tH17MTh6MP7MMcflq z4|e%|!NcXrtM>-i;AW6sDE~D(#0E+99;j||)}8xr+dm971(xH%->`ZYD`A0zM>I-I zdT;QLwDw8v4ZfeXMfYN|0tvyajrRtFx5@7fKHEM5@FYIWpb~w5Fwa7|NFK$W9!FN+ z2c-g_wk0IF_jo#@;1=E>O@$!-TnO3Dw+%mwP3dhzWr6)nw%BS^auBs5}D!Wx4XTqm!Y$sviGLUBs{_VZtM%j)R0r06*OVYKbqO>?QQRx+lAlevZFM* z80w%v(zqeW#kZ@y7mLmCR;0H~kYCOyBe-9Lu@wJPpk>?{Es})TM%V{vKuw*Ck7W*p z50(*NNHnZ}qe_RvxpW}lGs%a&I0lsu%g9Gk-?wPvtJsyVOT|lw-DHVs4+@b+UzmCY zG)+fBuoZ@71Sz^eW{5ICmJvF9@%>p6j12EXGD81Gl@XH*MbG2ogrXsLu1?dih#MDb zR0%fk(CDWlry9a^@N9m3ryKGRzfbERntTwYEWfHgDlB%D3<1Hb`j^pyE{Own@OB876EW7*4b8 z#sn3tkiK)47*E`m;>MFKM=__VkfZcMKvxDg3KuO4dCa|luO-6zbyTT*nScjyt%^{5 zEQ`>j;_=7WK0-YHtJb%Qn`GkgM`ZeH502vTX=u8@;t{J21OQgVpAKI@KuG-Q->Bm6 z1~if8M|4b(bj_0P;`t9C$+RQ)X#}Onv>`DSF4V#%!m(Nx(O8$Hnm%r{RMWpqN2(ph zNPtPTmRGA*p>CEBHRp_p^o94)wF%O<=S zn^U=^mrdBF^{kR#GO=|dnY`MAqu6Re({#jEsB8k;%NzwH8$ef)S~_q|QcM3vm0D0j zy@^!;Ap`ZGbOnRXvln5>++oG3f|1p|S#PQfg)u#-=)T{anwHn4&jrPe9Xj*gLdVgt>ae zvknL~0KdZNI`mDPu79I)`l)C>IM5gL?DDDL*>719rGPmB&pwBNg6Zjsmv1%7ty;O@ zK{X)LkQo@$2=xhqYp(?E?ffJKlLHh7yu<^gjgg6bZC7DVGF0j@|8U8^jl8 zUhM&TAf$d4iUz~kF60I5!I=&|Y>O;%Q0@S077#2#fdiuO$+3?&B`PxUGh$jqtlcB2 z=cZtQ_AY;Vt_Q8K1_CQg%pMMr-r)IkCRc)e(9|4g1f#r>>MSuHmYxWr_#bDYkR;Eq z335V`2OmdEo>&uN?Ja@0(M^bT_$sBN<0GN30gsMPhNkJrm?#tCIN+uLx{6@Yfol>h z`Zuaz`Ba<<@xO@JVfDW)%MrX-vr_q>0{Uo1Qd~e+v4UqUpKsqVLOgcbH9doKNHQs6fe?gMWYWsF zLRSM?03U#+5+yDr#twAUk=0&H+l z2)o;mbQz0{LD}ayaO%#YbGGY)kD*C!?(Ffv^d{;8%8q%Bn|IDm&rLPKT?@JZYpg=( zG*89EkMj2TnGO^nBX+$}QK(la8I7wC1*X0Q5RrwtO4+iAloZ6*2^d2P0w2qLsT>-3 zX9Vc<<~_$n@17-^bK&3Mw2(Z4E&JRI$R_h$ zFl#VM%^9SUgeXBH!#O`bj+PL?CLQN*5)hlQITa8~@f%4#T&?x2B0iaXxROj>?ZHt# zya<}6BOmAj!{Xr#pv3^Xig?h0YZ4FoH>!A8y9M-=iC&;9<2%84T`T+*=p|sh)7fIF z#y|UK&KI=uF(^#VT2~-kz}H5uBq8zX*R$w*!DyMysHNff4sPHo7qf^ls$UWyt+^L9 z6lL^AXXr{i_<8~ZK%II-kB?;@L^9FuS?S-Xnmm?IKZrw^`Se5D=qi^bP|5?v#uwVJZW)6>{KfR{Sd1 zNgxL{Fkn(SaG$#zcwG#MB$opvj55m%UjzRJDwaF~&L@|xH#M=k3)u9#{n;*LO3LI% z%SJoh8n5<@GaMz3{{>lXh~x3G%<&Q2j7u_U-NRlgxEa5ZwC);wmD17pD(Gv#jq$P2 zG$n2(3q+8r=Q10C00ZbM+^Pc?#cAfLJKi8yIM=^Xxpf$|u0ldXL!+add^{wlu`#3~ zrZ`T7%`6Z9=^q(t%$11YjbPJ?6>&0~inNNvIkut0+~sEjL<+1I%9eY7MXG?Ef1EVE zbaaYl>dSr8Cq;7BT3F&5Y0%w6vcl? zQ0#K%()k&YMbXL`r>`8f*n4GpOMmKc@t$Q%#IPJ26mS9~^g87?=^g#pyrqY}(C^L7 zP6cUBg1-fQ{eFOBQ>qi0rUYZLIHLQosUAl(a}r@HLuoxl3_w<0#Rr^$f;N5wip6)k z(~UOV+>vhn6NfN&O%Q3J%A@)91xz@22Lg`oc7|gTYCadJ`4Q-uP;)<1%{B|!Dh8aj z%Ecyxnt8cuGgq&}b>&*k&lh1MZzo{J*bhUOai21(L?ow7l?k%xe$E-HA?o}LHr1)q zF`MoxDP5(3;MVhNL8H=l<22#3YOAa>eo4EOucmf>h_j_T5M^*dU_Y{gBH2dd`_PvS z|CR&A|A40RHeIAcePy*M;#4~(3k>i*wsPx?RV`+{IEQ_H8~Wr-mBUJ`9d*i>hwbgMdygsM7R z%i@81peVR2VL_{>{*E(%5R>d$;RVphN|*Df=x{OgEvL38o-tEJhZ>oL$&kl4@_t8E zoX5w(7`n86Bc#)IZJ=m1ltlgIfm3k_)R=qwubq$6$^;_OlRykIW3E6xjg5EAZGk$U zm(9+??FT41@}lXv4BSF*v|DYkRO-_Z*+|26ys0Mr72Gq6tMR)s=$LPWq$dKvcR2%C zqRyAafI)E;T?ZeVoU;*y7hVCMJ5lGYWD+Lo#5d8@Ibr~E5R{fdK#On=c3uI4tTnWf z4glV&4=HP5m!P+IX&u;Uj0L^vqY_}?3Y=%=6uRJn z{d_iG^s22wt5q-7%FSA%SSWi{ubgi|o%9ywQ-~fH37#3Yd!b94I8M&@=U(qk&I!iH zZOf!TwG$X#L^$t(D#-1r-QHw7a971~{gCLEv%UOC@cln0!YR{A-;V*qeE9xf5NlFR z??|omJu(Rs-{YHTzCS~Sv0(B{7|zi9;p*oSM=iZw8%E)ECyrXJb>YPA`nWL3!_>J8 z^y=S6Q+X2ZDx%elcsdTwfI26R$6K3>f1V^bv#&Cl-uz!!OZ>b9c;0A4a(G-}34NAZUxNxRq8u=DfIPweia<)~h zHS!*WM>gu&2GKW_vU7!_9D#E56hlfTnyK+qc2byiU_G{d#Qj*DLR3x)?Gs>iRd|Y{ z_&aboYgSiy3t_t~eFw|A?o9$k@byegZ)2OTRA?W}r z$So%iG7Obe;PM_Rtui_~%FC*VpWO?{Z*;qgU+kgR>v@d{yfw}qV2BR=O1?$N>ZWw( zW@cvLzBv8BGnHRSUPWL*sGzE%4-iQq9OLNRy!q0DUL5$Vb`(c$oxDswJCL#=2$6?&yYqPrF6(D zi3izwl9qb;k$oAqgreW4GjgfN@w9yu8?e|Yit}>`2p7J;A-@GlFMFA4k*NB#Ge9~~ zI)P|i=ZvkDH3H!Qic>0(- zo<3_I#fB#~iYuPJVIOG#JkbfHfTuN@VQ#|KD(M^Y9!>?6XF?4A%)U|^=6>RixkYza z^}P*qY!p|_9c~|K0L;+|q=2~{$!h?6r?I0RHF{Qo!G8`6R-`Xe;;! zTri3ULMp!AzCatwUh9ssx7kOrp^S~9pv?^ln@(FiL ze#JhD4U=pX1(R0hd&)l60Jx-67zmdxjY6e3%%@P#N+}NI$W6WZh6mlO6o;5_s1(OL z;ml+{r8rjJ2`At0gc=#0BjHz6DGp_tK`9RTsalGIAMSw<Dl(q_LMgn+`*e}4SC>F*fj%%+95M1$p+Je_i{onu2&DhNJ3#>93my>LLZy3 zDJ}G&fUlpax8Oc#v(hYAi`inM+^9AirF_+|RQ*<^RLRxhV#)#+`nX|$Ww8tTTd=8q zZ!_IOA09i{jw(5Mj4af{9UFyVCZ=)Hk2@bD!P49-FRea4_@gvxz zwLoT_!G=PfIq|2Uks%5kA1gvGq85n$oq88Mt`^9vaTMwX(rSV9wei)X@?=-P?;%T6 zdyp^xstQoKwQxT)O@8$oby{345XOHiKzs!#P(o03$iiWU64YjR9|~&IzfteP{w`i4 za;DbtaimwsXdO+lFvX3D`jl=ieMCdJk_o84f{)I{EVUJdB>Z!&c{H|>_SqdpeN34D zI`i_xKzf^KQ_$(!1|tJ334_RD*EWjvQm&fya*(ROT&!fXH80yNXS2;(p<3{>Udi=t z;LXsb&6$U=V0W7)$fvP)f-fe1A|7K;67}mr_UsD~eW+B!a*u6K73szu6_I|6A0@&s zzY|E-1Xxw0>%Xt{1s{Z>>-BF`xfbNfApkH1?vHf>ETK4qw25BHaw{L()zEMwM=7ivW8kii8;?X(A-TIaYKk zipC{khk;GP}?CR18HV=lRzW_(|ptp?Xo-jJ}TKcWUSG^CxEN zP?U@gZNVIjEb~1SK~jr%5ZOV$oL>Qt&CV!7=rHMV1vD~PM)+9fUZ5Lel{Edkq!Pr( zaj0z+k{~;^IjH=f%sOh2WvV?WL>rx<<0a5^fh7nQ`UnuANDv*qx&$%24@nUH8&!hb zindG~adX2YGcbWmx4jKzkxqA+gk(qEr;$cNJL&yj&w7CDsOt$+0=`EoKhQMe6< zFpI*Qw9!=(PbLaqOctp2;3x_wpy|Sj!u7xw0R|L1RR=C0KoOOO_aRZKf1`@ZIkD4S zD4M3i%v{c{zVO3KQukFFMTP8JWUX;}Bmkiv^>0+kyOyWY5kNGZHGUZfqVji0d@1qFSGAd_ zM4wCwe~Bzs?ZHtBe+QbTBZcKxad2w^CbsD-}A z$G2_=!J3%HVeYxagGog3Um8)Uf^<2Z7B^82*(#TyUiJ!=vZJX%5~BKeF#nN6s}@|U zca@HmJ%*7D-E=>H8w$tho^fUD#PuUFEP_&^VYeU zCdn2@J_5?3f5Ty^C}%@z$d6_~d=e*fKwNmDI)zd+C_QEqoYvd9xkN<3MCC?kWH3_k zu_h{wXR7*ls<=Fsi_6=!VuU84c?Ay1j8+7%#2Hs=vr)-AnYer&S+LrJqqw{dnx-Qz zZ3PS2RvwGm1jtcjrVevmW*XjyWTyU&Dl@m^5oaQz4h~(N2^*zl;$bA3=xQ{fO3PUH z^sQR+Xo8R=ramUD;dCJ}EvzggrQSufJWFysiA7!zrBqU0y4_h)o(+xCwK)Gmj>?u? zRHQZu6`2cOPXpcDev?RBl&rKO3?!At)NS1nYO`Vq8E|yL-ejsbxi8b+IR(XI%;u_E z28PKf^`SuUyAu%>lfsV>GyplN1}i>xk;3|SsuT`<IFK8fQ{(Hp8E^Hm#hS`_+jbuxlq0K;DO)?pG3R$GugF;YzrAwGXqBep$H(T+kU?YJ5z#>ApL@EGY^Ne#M(4{dXkyrrS_%NhY z)05jsvOp`DNyWk?165(g9V^+#w!1_0$d44}!&8ztem(GUwA?d7tqe$l){|qF`0h178$eLs0!Ku(C zlWo|Ajq2<R_Zbf?QCx?Jk~BaQ?E{8E$#{BH<5*Qx47)Cin4-!dPUms#nMw?s zeEftq0hQrpk%4uFk@O<#41Wx|vK@z5E^mJtno1I5DH+F<%37{7Y>G=cnG1{vt}qA= zEStvBKn(0xA3U6MKq%!qZj|!9^eE-qgHy_n4<<@EZ**v2iFH6wyW~|)LSPww<`lva zD+CrpR|5)xHPG~+5dudUG=(s~c`ifnMCnq+*8@Em+zaoKbZj+)w@}El~)=&A(#9s5ZZ7 zm?z-_Eck^hr+o0xth0t&K>!&&i4Y$|^DTb*JZhM3b>J>$!=h1`vJIP{PUcO{*a%s( zTd}Eb%{tb}6iLcdOR6~5otbD)?cL$c^`@KCjUA{o;X$uUevOT98=Kj;Z4A!-w~cKh zsWi4R9i#TMb`gBH2)|o2wupSUh#has^_BXE!&msx82Q9>0Dc=Tk~tvp5}>qwewh_? z@)6c@IKqNaB2Tbxg`TVuCHlZ+dBfj)L!Lb(GH_&`5O@^6Ma|j&c!{Wo{A%$7EoW ze$U?lDhE7u!)IlN`8legJPCLsdlS>mv-bCkmaj&mdQYQjO4Tr}$N@VC74m44U^}b?(IUF8|!wxv43C_S`+wvp1hRv#&8d+vNYpfO)QD z6m&;HE`s>&f_E3(zfiD_LtObN2{eqQOpb|07L~ctABdgAzXfZZcZm}Lw$4wnS3`-D zAuMr1vC1yuDD^s$)E8NPj}6Dx`XYxwQ=0%(iGtM^`EOVfWSvvyd#JpYj#gSkS|*r& z!KVWBC)rnEOOSfp;46q0yJFd)yrE{)E_B||kwh$_da6(zupFXd@}V4}-vFe}Cx_^z zfCrjG^!e~BB8O-+8}fXj$3=0nnp>1}6=?HsGPZTeEqeJ&L10b4bSN(WBu;|opF|6i zD;UnPEGHlk^IEbGYRyeGFgOHn6?<|`)h!xfC(TZ}Lu;QTJLxvo7Wq3_cG6(h#_XiQ zTb7*^pm1>t5EaruAHc$=$HL8pdy&A2mA2uaQc^&hFJLGj)@DCb$T!N>dZp1Q6spBs zzEt%fP_&V4Wb>YvZ+h8<&*gbfh@Rq8l(Jl&uf(SMHZ3}rr;_kB&$I)JLZy*Zmk_l; z@282-Ire2l*3DQ=@(0cfM5=%il`d#K*MRsFs|(O zMbrs;4o-EUhz^#|6MUO z-@&;@x}p^ryLeU^D3&o$Fga3hluM{pe9>=IynL-%tQGUsdajml)Sc^y-Vc+t zS$~KVwx>nzcihw7MLtczL%Q@{S6GJ5lon%CU09{-AwB2vEnBX+Y;VISVWF9g8#C8R zRs-FMlAt3ISR|hrQKxZ735`EY>5@nLYEK2No$3r9N!FbVjchoVnZ19=%s%5OP=pKW zbm&_?btYVIa*!TRCV}!a^VA)0kPRk$BlC~SmdC|_7<#mQB0zVMHjG6SCSX%cAB+oN zY}%}rfhUWNYOM;HA({oRS*;ao^Y-#pGVJCk8ayQZPMinCMYOn$^4d1OiYOT&$FhJA=(GEj1# zNeS@aC}=-=2oz0v4E{mdWImHz(7eC*S@4-K=u(%%=U{65nreSYV3Y4HH8JjVPZq=tCzfe31(hD@JXnQgJ7g?v@v3V1&gQhm|E*t}haOMwr zfpepfH^B^^h4v<#Wapdx>hTY*l=%76WxzDP$(!b0H!6uS+DccDB;t&cJK zayy9DukUJiyWm7{b}rnd_>Qs=^(wf0Gz3l9VkP3l|-W^HsX1aF0N;Z|qo!UCW| zNELl%(H4a;znNF!*;NBT|9yrnb}&)(OGU3y%VsN0zvva4)qKrw7MrcCU#jIwetzNo z5PuyaJ!e0}Ut&{zFXQNkxRkP7a64qKJ-Qi(0wXVavP{Ux7vjuLM4ptrOMb5M*8BRv2HR$?Nd{uq(P_Izsu?AFt z0mZwZBfxaBqkp3wV-6=GHR#{Hfsj{6y+)-I3(Q@PI2l;bDT9k+lB5MC3G>B#)-M+e z#agRa%Qv&xR=!wiK$WawvEq8f`6cMmW_KZe*wzpE-*M~r3G!(Qo`{MwEQRc6Zqp(* z)x}l1o`|y*w}I}7pdt^mpDmap;yP#WNaF2<(8z{znfH@AB5r`b<+E8L1Wb;ItH>lw z9E@)iF{>0uK2~-_gdq$aTD}lGI;#zm4v*piD^8#DXuh5+6+Gb4DlllR2Bqx0Tr*p$ z=IXUltL2=a`bq+;=qVy@nH%DA^677*8{$pQ7?Vi-jWLjuNxjp7j}y2d-VC2Rk^1Y& zBuu1^Z=y;4*>^*HM4MkU2|BqUm?p!LZn$!KOqsw9@j3#?=t+e5AbO{OpE5VZWe&YE z4TvfwWeu3X4e?Jfx=bz6fC%Zr?_pD27dpBjR!L_TG+l@ykhi!6e308J81k_#$UoDb z>iM%CxxUvOl?E{fgcN8%2CKWN^+{lL0U!az1SQH}_I#ZFK{FN7@K6Rc_84iy2O&Tj10;7~b) zA#Eb^OigiHeH$q0cLc1bPcOk-PhlH4P$RRNf(3y`z;vr~H9TJbguLy@km>RfS z;wYUQRObZ89RR+LXmoT=ET_&1%9CKr$AllepLNY8ZBh@xN454zJOm#OmX*{)5X{=> zAqd_w4?(ob5%woLhd&tP2_XDE3^H`*@yMeXgW6H<%RlTIpyFj1nSpYE_F^U&BV z-dr2YESP0H30qDXdI(zjqm1;Rx@xjDyLeNbi3;#6h z=<{kcynLydBhIe#kCU!RY`xS6rfQI)KHc_I1FG}*v*?)3no5S!N=xRVYQG=$EoN!BIY7!Hs z#Ujd?lZ~+}o>U{WiJSA7NW2MJ(@_(x{9|_K8@R;4DIfvzoq46=6>45NTLo`c9*)i7 z>VC6Yg<86;O0`9#h4YvqFmZk7Fc^ZK#t0f$Q7kh@#{-_}4>bcpw7=89CrdyAky8%j zDWyB&uSCNFSZ5e+GxAGcEX-tM=uy&ig_FSoOj{Ub@ zU2mtqu+ccLb_Njg0rT$;<4t5-0yVVX{%hxiq<0XAL{9=S_LTIkW*Y;Z-b8$xVpXopF0us-;zm~2pZo+6ZD`-$(Vv4w7Fn|f7YfKO@T?+ z01uyW;gk(px1-33R$_=ucD(!qfn)R}LTq5~m3g{uap;vDTBGKOo9hVW!%MuQU#=omTM7%_{AyjfSal$!=9C zrg~@jQn282IPF96S3Xz(`8DVQ)@(wvfSK5B>3EsiEYYWzUHG--C(;tBW&xP(lJs*okn>%{Qpt&72+x&_{<236$b`iDX> zi`ll{-H(UnufnnACC*7Hy6`Fnd~nGIy}8!jBloDa2o8auk} zojbZSUIWgWf=@CVF1&Dia7@XlN(j2^frJz}{IERL#TmW}g)RaOYFdW9QTG zkILVQJK$p!Vq)=~S?tx|3Nf)8-|L2nO+w_IG1L4yPV*b~X@1r=%_rd{XW0JH5mZj8 zQw=#ul6LC>>nf~ix849vZDzkpjx5aNKGH~??=r%^WF>0SE$Ic?LG&|0C?B%V-4-JA z{{^p7T6`&c{!|7J<3MC$0Cr#l&FLg>*{QVc8MK+6U#e~ECFeQgHmtb>iggq z{`so?opmRGc$fpRN>E4+LkXs5 z+fWh@f(_c@{t*ijf>L(7sP#f)4SHt3(?SGn(0gp-(88%q%)K zF6q8ej%G|v3fZu`{y4=c9z*w@jX6qc_!NyM)N}4LoK{1npK|1V4t7hAyic}*0zBe^ zKsRcWQ3+Ibl;Qa|0y;9g)mhM$O}nbXMLChEKvVhrn~Y;RqLA|-6N&Kv?m~zZc@zBV zpJ-jVbW^Q!GA^8Yt`H&QC|pVSucJwbyoqzc#LmHg1^BN7;jR16$;HpsZ#RrQn<=cO+u{gDF|F_g9vNQPVdU_8;smEW%lbhb&a8V z--+cor-v9RAp?#>_+yiE3N05uj?9S(Wd&={dkyMn60vMSn2~)N+x^IymHNj-&C5Wn zH(^hdSl4LFkj5L=#)~G-_z0+N1j%X-G7>G+*@31Kbvi~snaDG=R#b4zH^T@LBYhCg zgdmR$p;Us79UH4<7s8feU^xi>!7Iw_oV|% zg{8Pa1M@4eUPd^?8NP=z_%dEHK=@q(!Yk-k3XI>A9*o~PIE?=!Ef_DSON@i^N+EQF z64EI-xu```)Egym%67g1mOMW4SNY2bqnG#~`a2)fQt6#yHy)jA3kUip1E6 z^J5l-Hku^E&(&6;>LFQ?#aj^P5J0It$S}275H)BjX|j1(5GQhL$p|P(`UasG8w}I7 zUIGgULJ7at=^g%%QuAd>ZS}-NjC?GQ-zR0jq4?0!QPQ@I&rv~9!9=fJDEVB1#`Bj zd-!8evLQks%1p+FNsirt_@#1e89|vOz3$R*uhNk$y>N3*PDMke04u$BJE1PM1DO*o z!mAHWCE-O6RtMRfua;q95>>a5NdgNjS(Mo-!2zEuJfQ45hfR8fQ-wsNVlzr2;Rjd7+@2yvZW$aS_oRlAkeW~yZo`FARYfm7Ti2V^lko?M<8`+o^joiWfgkwo^YG_am8Mw!1cNrL7k>9=Fnqz6^Gl^%xbe+{8X##`#ez>rgfd;hZ-fwFo!(ix%Cs ze;D-ISG8rRJBeg_kuMQQsXfR*wOCr;fu`wb`rtIn2q}}c`MhD;Rvrl`Lg5jeAe?yQ zBZjeMkcD`}-YdJ8y~2U>*u88#jkaB<#0ju_**_+9&oKJQyz^c=5z1Js&a=jLKE7+s% z+{_HzP9Z&T>3F|%fzqDsqxk!(M2p6>da03R`^W~(`!6|=cWfC_4YyjUkCq8R`iD4B zy*QYz$%8Z8NpN#jth}=cdo?8Tc=f?U7{swPtX@7{B~6dLSJJc}%HDIQSn#)i=Z#i) zT2r-efu`WFTed`8yz4K%fR6>g#3(KMC`UpUp^M{7;UQ=`Hj3g+T>^Z{$05JPNIm;V zyY-R!Ymxh=XL~!kyTA$XlDX*~gbon@Cv%;SwVb}@ z>*9ZkrM=d^G~1Qod+BssQ1y^~6dS78D6Xh_uYIHeP(>$@0;*OLT%a5`VQLw9%Mr!? z5_o#TzAhV{{=ywkU$l>6!xJ0D6;DsvM;ZW6bOI^hX$4oxCNwR@mmEv<4}qko?TfM@ z=|9|&wCoKw-E56eV57JqX{~*v0gyx|kOGocA|8lwW5Uuh@|L5C{Uz`;VqcdHPs7mE zQ9q5@N3k&z8^sk*m)l1g08exRDd1_1X3UzfwMzPi<4k!bFz4AbB8QR60@VHw3isMjyDDbyvztvQ*;qN!@_&eM_iVc5k6nFfcU>|D$ z{Lv|-fWOu9k&6j+EBFT-ZQ_AIS;@XY8_IIf)X_G%#6F4*Wo#4$WtP433+y8efG|3N zfe_}>C=@SgKGIp>c**|J5yy(rSyRP4LqU}1!0sY(5G9R!B5{;^0f{t@@(%cA%*fEE zhiW`gDi8X=gJ2e7$!{ADBCC;_#`hFB&{j(U$qZ%LD*zCmlBBsuEuv9@@{VcEp- z6K78x9hp*M;)00_=O%`)!ejCEonY3+#=ixj7@1=o-)CHrdDgUpq@&-P|OyKb*QES)sC{weAa6= zyj-nP#MrrT9KmpW9U?hufLSH-BeASc4X~^n&6D%j*mPk73AV6v-^}pUGw6HpCbxEb zv)h9rYy342$;Dt>hE^J81~Iy5jA4XMW779#GwmKf2~(mFf&*plvg8NO0#e^|h7`&l z=DhtjG%`dY;A7c&3*Oz8!3rhIQU6Z81-F_x$}t=8_dbvSfV-cNTfbSPo0C1t?IiDCm#{3@F}I!~12K zr|x)zd|y=mMs>kofTh`72y}cLNpzgVu4+UIvl@2oMndmt09Tp3I&xHXe+3_qn}l@p zA}IYFt$8$V5#sDNwmv3I{V%5bMUj7q zpM$g^y(-0)#Fj%aI68|3;NhhjaNv0AP|((>Ml|P|L_i zQr|Dp##gB@nT*;+mZmft4k@v`;e5^eFvH@umm|A*dRcJB0+Tc>Jr58J|sc(Z&V3#s|#^+lLLyA(CKdiabr=30iDBmC!hbV5e>20+g@1$1DR~6)er{%R+G|3- zr-^nq(||;EApuT2$1>zlq78SH9jf&bz$J;$cO8}77eOO~-G`55$*oG{!?;a{OEsBv zH(+xrkeA{&5}m$C>sjTRWb*hrGI_NJM|s?Urs>FIx346jt++_cqshk1SswI&xhy9ip@1{3*A-(S-AAbucGpkybq0|}cn>P`4V z*g8faF_d!Si;O2x$fJo6%tX=$37i0}sxgU=Ws!tjqi;p^ZxV{F&)^VdvGrMPbd^+- ziLFnQ1*$zbimk6g(}fjV>wvri3@BEl4qQNhBGwG=Lt;(;MipyY#XfX?luJdAS>9cq z)*up{|A$5$sw9N7HeAj))sz4>{rcXowdT>JA<02~Oz1a44(eZ~BL~+qLZNc-tL}2} zeKF*pTn^qT-Q!}?a8nSV}T(8 zoG6l02e&Rc4evveQ~ySloDCt=WD>Q|_xSkM?I0i%(>TmMmv}IVDB2oPsG@Q?offwk z581k1YWfnbX*4xRVp1Ou=0B2X)q+d)uF{dCM>Ddaa`gGzobAa>3`-=Jqp#Jk>ScyE zO-@el@td1j*caK?UIOuDv(uB@fldR$;5ZVpGeP~(=?1veX}&>{(3pGJhpvT`#$LU_ z!%ZQrR6_iu+AYPUkb<{+}<2D+GX`VNaaV2v2nnn&P`JHH;ArY#I zxb1uoyQ4I?-n1$uvFkr-W2=NDlVWU2?e9QW1Eyp7S7<6xqFeG@%@cRlszr5#H;T%Bu>@E=iSxC{V_04t}bTrF23aJ zx*q-%*K+1&AW;J70rC+!0mZ**l6(1j4zae${hYuSL1TQ1B+Vy{;knJuwuS_p_$F0e zt3)eHKU_bP{l`KhgJq46W!VpGZFFbp->FP`EVr(2=P}}Q?NJ1sNlBD&NOmHD-$8T22!DaHpCLB3{?Yz4U z8Ky_bVZ_uN+!&h0TS8qQ4s4rP`5?2$gKI+Uw4&}cZr%xLU8kBubsx-TpJrn~D;(q} zKg`JN@iUz{xNd|ujNqgK&o=NinGu-Tq>62KgdTBV=iN*f4y&emllwC5om0@Q`E)~# z{9rOleJBw8hD3zLr0{(N4M0w+1&)thq_F;-Dush zWt3#H_q}A9Y7dUG_c3Uij_hSCM9NkVHO>Sk3J{@4Tphl;#5KGRNnHIKRpP$opyvr# z^T9ny!Gd44lB_~-39eq9#>j)p*!Q~2*nSMvCzr98^IIj7e63GUPg3!E!vvK00dWd4 zH299*B_VdaBruKV4kBQRi3IULfcR-=5aa5Yl=}|?h>(=S$1YM%|4x;1fukM)VG?p{ z9t?!sQv61eaYy2-l+te=27L{<-#Z?frX%C%0>dKiETG{43yO%-fvbx+!~2kk)4x$g z+&M|<5~h%-jiAn&6`z9&08HP8OQZteHP1NLME^HJ_t9!EBmkm~Lj05^9s7#IEpC={ z3?o}d1##n*h1#^RsUB)G za}q+lbBQz!S}#y7#&PTxF!`qZJz&&PJCK`)RNART8S^oapydm()Z3kxn&iIMIY4l? zK+lxmuDr=ESdcW>1^+$J$R>mEQ$`vH>6A%h6(x-fCIsZ(4dt1D+dG`$79x?iVN;z% z-tR^tQRR14+BkuqUWB7W$A{<%qmsn_c+2;O1IbU|0;th#nvVd|C#^tAW`RErec33( za{BQZXqt|8GA$QLQZ>g%fchU}OSeurfenX!ei-_s9QAg0j{4&mxJev^gqbo&Eq|fc z?m~7mMlSqMK_X8xIPvq>Xk8QHqn~3_osSMVIZD(HQXXmK@-17gxomI4CozqgjTgj^@ErVwL4E-@ zKy@uL2~b2Ka|_?dYf`1x@o_MQF0J1P;N`V}qNyv1b{hp=#3fK(T)ZQmYnXOhMIaJA z2?QPsUt2*wjSXMRK6iSy-iC^2Q=B;AFyG^L1Dqjw*_H znog1s>$yOzxFkxfm$(z_W&)w;NhBxMi?@JXb=mAJ+#>)<`XVUM+@0|o?N%G$S)cAr zu)r&<70Y)0@Flt5ijU~ERa7Ly%Kq6TV^;`H92#CMQ8R8Q8zA*+a^C90iBcfbn z>+8uROyrAiqRIC%1Jqg63EVS6FpC%zESt?QMY2}}2keR@R|XmVd5wV5dgr>(ECfP{O4-&&(+h=L;##Z7IUpd1|rORKJ_jv_chWb+D># zD~CXWpQSOg=mUl%LNNV_))S5nwBHo;Y$R@1|JM@`=)5nEL9tKWFiADr^^>5SRpB(TH z0-5s9iQ~=|@LFhOBb*TbM9&vLWe1AO9JrF58sVlf(H_@60anF;Ckx`cSbL*)(=_8e z&6T;)aEF+_%dzhGbaTH_TCuZyDQvg!edkd8bvL47Meu7S{JOU@ME+ex{#{M}J&gQ& zIQe%C{)-@dHDvuKyh6(%^T~APSBGJQ`qJUn=rF%P6F!TAZ3?dKto{8{qCXm?J?&4S z7Q=9O3at0xvq_Z%Zyza-kh~zm!_I81rfz2i5#ACs?{^PqK?Dw4LrDZ)Qk|dNuup|# z`J-Uc^Dc`Z*5COc_G&1LaF~K2qSCa=1dGomPqpFz^dU${crE7sH`cjZlVtxTG_^@E z6~Qbw|DTgaY9)msfG8t4wj8C9!ZPxj>u&a!Si!gKE3hSk{5qYCOJ@Fmv5#U)1j$BG z5=@g=6u?1BwjY6p)&1AgLsUVMylxoq*AjM2W$siv9G|VR%|Wk4>HnNfP|3e!X#x=F=;}`F|B=) zgpd{17R5=jgpk3kjR_%xx5*PiK5Oa+usp)RL5)gNO33G2N-7!gn3irAYOK=}O%U+r zmqKFR7{ZiuTF4u)DNPHhOtPQxn$>D9>ld^6M!DE5mAzs%Td3zM#Y(-HFO{+jpB8f0 z0Lx;&>JB#59Vpu)9VjP4H8}2B@4ug@C+QZ?V7DYKcOo&Dl27hZqQ3=hJT@^sWawHY zIhi8zgWr>!gThuBjQh0RjEqsQcR529B^KKi-wuroH`4L3B4Q$Lr0d@)r=0!xyO3|j zaU$+QzD1jZy3b7JiG34UrrLw-hq8EL-vv#Rdtym;c5}nhIgL_{$j?V2VjZ7E>n8_+3Bq z(cKD-Z1z3!J3C82`RRC;u#}YK_Lmmd4M-PHlPjd#m)7d@a zY|O!l%O{-O&$P0YQmfKzwu+@%u~;ou%guVeTC3M9Ub$RsRKWs^-pnDw8Q=egz&e_p z@KffSe};S->zg0BYP$DajQl`eKwBmVsDq7n4bt2p-==6TBOEq2Krq1sHv8$Y|O~LcXhjd~q?1 zd~=OjtLgiGu9T}5OXX&*nlI%`jiOhr)XGJ_=1RU75y(YPF**5eRPHGu4PT18uLFAd z={3$MkSO_{7*NQfJ1Hf<7BMF|=p#k)}5JX zPwm~|&Gn|6(~TW?9S|P$y5!f`__nc`ecQ&S>z!?5+elvgZR{e4+RxfW@ZBQ(Zqe8x z^4%g9<09WdgYE6iKKy8mrr4)P`LaK?^E57!Zg2H8_|I5DC+}{T&+OX>qp0pQBrN7y z{RQ-7HT$BI2QPW6vbSA=!$HNa;aaY&aMVV_boati0vO!P z*Wk2?oB0L70?4mH7qDg%N-OGk=(MGx^YkWPWKE<_7ryP>hkVn+U-#p$Ir!B-YBMbm zBzZ#iclO|$Bd9Lb#D^t+86-S*BM-5Iapk7a^SG8-xK3ormQa zF3#}X4Ez!b@iwiIDr7nzfG$E6+}{Qd0iQUYO@64JKjwvhNibf2a^bx2VQlPY{_c;< zFj>I~mxD$;5D@zPV8&(_{HLJD&ZprYm90ODj~|17kOMvj{|^uoi|@Q1do|n$FmV}E z$fj3fnh(cJ^XoXDZ@@p6X@1r=%_rd{=Yjs=cvC2GG71$O#(-T|vr{Vd4K_tJ}HVoD+J{v@&M?X1LnKuA_N4>6ud#v@8Y{Z>xKRdIPV~@2{`aFm$ti& z>Dgv*YzBJ|f7WY=w1Yr730es1ItFGhYa>;$D0tTj1U?Ij0YJEp&6n-B^OZ`jRIZd7 zIV?rkEY>UKnqT$&LZzN>)e3d=IV--}dr3V5%ozia%|JGpo^%)q+Z4ai%k07Ax$<-P z+=Gl>-5EHh_lF=OgEs|cOMn4V&t`hAhmZZeP$>(~g?3RhEaQ*v9L;z$Gn4HG$r1_0 z)pqTI8~A~*{veu>AdBIF$)a;6Hl-H?G-UbpVy&L9`Hf~ZTddX#^-49@EO_}w!!Hyo z)g~hA{Np6`wQdtcb2ZUI-0jbzlO&TL%~HUrShanq+`6)S2pkmgR)FOqD_Dj*=fUhd z*T6rD_C{eqia@RJoCh7))S!0sL~fqQ=Ak?Tx=p>GXgPHwR*9+e=XV z!?aqtR?4F@q*1EmieA~PR!cST>a_}ft6nW;3sy&nHl{2>w!shz!vlS)=u{Lwksxq2 zm$SZ*ALR)7ffr7g{5VVAhg|SNraXz4o2y39grHH0g~J@QAX+Bpnk?rgb&>a&KTr|) zoyTw`lzivew_yK|1<*0EzXBP}6yj(+43__=0*zj!R~dIy;|}sHXE>fn@wZVCpF=riMESHqlQ8U2!C?k+IVG2E32o zBy{K|fLs4$i_l+Z2A9}17|-hZxKwr-xbrlOE^Q^4WLg7+@J%*vAcWYu@axdwF4?Oa zx|u634eZaOwYN{*@gRLK;QgBbNP}_)((W^?7kXIk!|^suK3pd}{$kKlbiZ)*z7&I* zCE7URVJ_p`=gRJY9)?W=c4LS7zj#$BiAFytVGTfK4jg%t(aB&(NY1i~7EcvL%)bSV zzXZCIRx)f|NixNI2J|J<^~AYwLYagA3h-ZPyLLNXQM`F*nvUWn>kBJdtjlt0%>0C# zk66P2lCbSb(3aBFO@}P8t`f&)UKPZ(?Nk&$CH_ris3B-YH}H1B&73Tp;<+G7jteh2XLu6AMgMK0e;>#Ev@Ih2+NTh&n4Z7kAXr0Wc zo!#($Km~NPK>-n<#i<~=T&{%n!we9>>^zGpAuPMKm(6_;B}5X71xiR)QS7aN_=5qM z+{L;oDzI$H{j3)%E|x$Nx`j|d9~@w=Oa;9Un+77sqJo0L9n$6vHK9ozeF8fTsiWYj zqK^1eP)BRDt|isX5f{HMInP5j91A z9Smw}%G;HWn!=9K*dr~a9ffvD#{ulPnj)VFp?Lznip-amNKG9Rbj8)w@iNnP*24P~ z)f8DstePTUaW$2L8HCjoRv%f%=I)}VMsPQT{bI@y^Z`Jwk?ET;$(7{@KUpJzpK<`y zL6sU-9xAY2h;Zp=O4U}jUaD1_t!k@S&w4e#SZ?N;jY_MW%{KByJY`RP*LCFpD`6_{ za%}3N@`7Dgw>N82b6c^akeUmgDr$~D#a$P4C#klEbtTDE+c@+kb4dc#whNl3quR*& z!s-l*O>B>uUz9q-wl9LVRGoctvGcAAah*(^;ZT=Bs|4zd^MhG4>57)^y10xmH*!*E z4Nd5>tIl4b6tow3i6MHHwMaqpKaHL9i^hqXh$J+_GgG}c#0kn@`(_a zA7^yHaim&MiPYIggRZzbJ4I&H&ZF=?MRi6N606S0S6rR_J3%u9C9?a=mfsL;OARJVAVJ(I)v0j++si`)h?ez@y6w+S7Q$>66r^qAN zpQOGPzk|xkC?2^Bd|~vKYrMDazhO!;S0qqht6&=Gs4u#}u>Lv&i09Wa6O7Vd*!F2? zOZC@J?vB5<&9-BR?qvE4hx$iol|X-Smf$FK+KzFdU~c53zb*uvQT=rh{v!H|{5lx) z7v3jGMSs!jgDIREihGEP)9QMF9oJvv6Cp8g#8>HT$F>Aras9PH=G4yB@IFQTMHUjP zzsOfyf9--9g!R`3V22m5xx45uQnz8&+atTL$c@%OYgxV!ke>~}HK?w_nk&<+7b-U1 z4oTD(Vk`Bk0p`lI(aW)EB5l-cH;f*v`?05xHVU39+K4|zZG`ab|!`cXoe7q@Uf>GKC+wO<9l&qd2WTl$6`kv)t$e|C75Z%eN5e{_+ zv`V0jIMJIGi#{{9o8l~PZseqmzKIYayQy#CFQSdeuT-?rAO|2r*LbsVFa(BkP{Tof zB&5v`7=-!iqmd~{f^qOaVpBbOF**$q&`NOGp9j2b4n0$@&h(E(F`XF>ZvlDei&CM% zdaZu(Bb1cl7m6IiG6Ve=EYXk|2p`MJQN1_!J2Y~V#L{5w{{)w2suWxC{ixVb@4R$G&a}8(IkQ+GYkdP zr{Fp{TwA_Yjx1ByD<<}1iqYS*+>Q>s~Oc6V`QkaO$=ph zZepNGoF8SNHQH#BMKPtVLPcCM?&%OfsXfRrwcJMC3r*AEp5Stw5l|*>X&I(%<(7aT z6mHS!!HHWo8^)GF7UC9ruPiUY&mDO1VruiCf^@QZ)_1<^&?~#Bqu*Gx&zc!IJer4V zKeZ7va-w62{|Z1!4V)+N7cp?iuR#qQ5)R8R>7)`%Y`iH=gNcvlLSNFd{N6ty+Q?{P zfBw@yVo73NghO*(Yv`DLyZ)iA(0A8VxPI07EboQ+&hV zbH8@*xvL6NHX8({LNUc=id^WJ;>0EamdWLa|n%{@d6P-!dgX6~^lfvB3O8CB)M5A&A0=w*oAGYz2!$ zi0=oW1DjT|#OJ*y7@LE5xveK_h;JxFk0EUtqj#X;`Ca5cTaF+z7+%Val9Mdk1!D{u zrz^g>ioeDm5krO`rKbv73|RnclS?SkWs)a@t~lD1$n4HH;C;MO=n$cg`hZA&8bh|; z09b^VP!oNlai~U-!T6H$V1#fe5W+Xv%w3d+enmfd6j=Z!6U1$5frE7=O!*ns3-y*P zSQObGCRbtX2>&o_x`9ubd36SgBEybCKDZ2js+>Oary$|!j zQDo3G`GFZ>i3c!zo7hGqd|QtqW8{pvWKWHmpK!OZ&=9HZNzj(kRFWt%GN7>kbe|-0 z9g8B9h8luaXdl@?i7j~)nZ`Hv;dm68wULtt&PRyQC^Gy-4yaoAYtREKBGdT+)%=vt z2>KeteGr3`RMZd8FgI%Wa1^@=-)Ky(fFk3_5ZzP-h2qHYRXR69ZVkHPqUSJ~zB;?% z{eVj7m`JF_sv#|s4CWA4L>M){m(6|ECAG?Y6#=6?`OSGk+EQrWCP5VsiF5_ zQx`RqD3T024XLD0@TZDO;!i;(g`%s3x&61+6(&B_U8SO`Xh+D&%H_r50D4?ikxvApo`A2? zQB}tTU2#>lR%YAIT6mwPsv;|iS5@RQetj_qa|o*{OgFHO&E7>-IbEq|0C)OU;G-M> zaZoje5!?mV3l%3%k?YOrM~D6H0CQz(?0MMKMUBN?uzxZ36w+P6Q$=_2r=Yv^3-)#E zT9PTO9nhCd`3V%(Bs5J&VTCT(GcASj^4nr27^S7K?Tyful2w8W_K0qqZxLBi)lxXr zrO+yYmf}QjRyguO1P;fv6lZ&LBPT8OHiQV-P(6&lh?XM14gxLpTqtcYF+JP91#(yJ zXoDwU=PXHAxnp|I6kK?8-)fE7PWtSFq@mePiW?%N^BzOufv3RhagBxa{TQP-P7SJy zBhl&Mp9WoVZFsCK6FPqk?+4U|d4sVr8UvtMJsAfiu0g*5^A2lJOi%D9Y{f1b^jZvH zlcr3A*`{Y9lx-GrTV`7DlLoZG{i#WCr@(c);qFbX)Ae&nIxYOPW5^9vH){m%oegz4|^ zV^d9k_cMiBz1S*O3#~%ATC7(a^<2GB^b2|4_o`l_(!f<*BHd%|pTRHcZW3Y&iJM8O ztBH^@hSlNtA+7%mf2wGG{uCs^3AS;h>xhfrO*K!H97q&y2a}RHKY=x{3Z{{cHDF&j z^0T^^#RLSuj+uCrm4I!ZhPKp7xE^lV+Ln)FvrB+TRLQIa9O@}(mB32ijK@*yw3p?g z&D_YzO1KbkNv(v7@E5TX$ghLIO1Km(gq`gvZ*m9EhP`7K&2zmYi8runvk`1Vq+ubP zU>_i4A6${Gd;Y3t=7ddxDhRbD=y`ETKL3+JncLK`)KCssmXm%aFry}$CU4A-m>KRU_VSw zPVd<`H^V>g26tZ;ZU8|kvjKVswGl8Qz%=WH*$6cs%B@$5jTV&sEJD_9FJCCs%Jq6J zTdbA521$xPNC1>@aNxdp3%X6jO70$DCCo;61vU-Y2!1YGDQ1g4ovV+iNpgztLnKpG|2J`WleVZ-J%~owJz2K?ps@^%}Gqg%zuW@GMgdV*<6a>r{#8s2Ik(0glC_;qT zYkz{jh`mOB9R&8;^O(xyt{}Eo2HTB=j5uFrIL~Ie#f*}M4R>;QfGhT|rXqfn65|qS!;9STJ#0@4GPbu&p-& zO#3%%%`UdyooHkQq!?uB4a_=f^-a(CQ_SSsHQn?l=V$Ce7jWj;ovZI^_au97+d@u7 zvbMe-kOVy?Qq|k(5eAjcLa zzlNrgIvm{WvoAYr`HcdpA}+#~pN^quH6rXK^$t4r{S*T)v;3e`V%aa`s#UQ5iuGc# zS}0YUIX?^OFpJrIePPb=PI@oZpJqvBwfv69rY@G>nZcPGKdF=Gj|(Q_$=xUpVY39Y z+VoXcNm?bZ#)bpS&=_We3IGD!AwU8CcN?51LWM_d0?{lIZ!%V(uK{`FGH5FC$UIC& z+=xi8$qY=K$T83=fq}_+n)6fi>Tzbwz~uVS+{nqmyba++49wf{7cnr& zuT%`oVaYj96OYB`;FXi5F})){62{a$48nZ%(a03Slx;p=iA@(af7)?0f0{vJB~PIC zi1SL3I9PtCw?QMqWomvWd@MU1)dXsrBJ(?8_=}c6&9F9O!l(0037_2hGws74#}!b6 z#3*zGg?vI=t4blsE@6I*fK%;378sWEr%yxEbcF0E-zd33&y*JGPYvs^riBXVNJ$H& zlaXCsu_S75F^nz45UCfgcVN=W2g#=gGKt!M!iX|sM59__vY(M@g5Fn|3?IvVsZ93l zCs8~6eE|zulBgYlUs>)a2s1w3Mp+Gg+4QZ2eU5{s>99}oBx)-R)3$O;KoAPI==9*k zEk7l+WhX<0TkO3)k22Q%4!ttN2eqV=;j_MTmqV``=mbI$lk*Gl+{ABmgzg%-Uq&u* zv1-t0qmlimaq_e=;fSF2I&vsZ|5(fPsE)LJAvEQ5467$Nn7TRWs((wWDZCPbiX_hx z+|y~nyy6eUw46Iqj)jD%V&`EnsCiFl!yG>eyBk`gvSI0bZbQhzvOqmf;7<_EE+=7k z62o@vvPR@^<>?q;T@dvF~p)9@M-{s{DipRnU3 z-f@Wi;Hn>VCAy^-rtmJ!2FD3WCrW*`UT*7mWVd901)n-kh_e(|A~oNyH5X)|pC=)> zna2^wBnI>bM~FxRhUP1m`0ewfI4kT7M{)1LWl*lRU!fC>{XXl;WfM5o1N$xlk7&?Y zRQN}rsieXkkK&+F=K(dVgMHbEJnDq)U)-E-K*cWbO`wN1F2Eue#?NX|ASCnL(w zT2Z6h#X3su+<=l9d_$%xdm@e`b;BT}k zt7nNv@Uu%khJmk_y+7dVL)m8%au3C~DVgC*psxYV@FStA#KW#fg#a9#iGwu?e&twO z3c3y989pA=p`4t=vF~5vbdE!ra{1P!R!HF7m>rCSmwvf0SuLRMVSY3H@FNq}hZ+0>k~LpsRj&!3}rQdUcEaMKGcH zSnRIopr-mB7%jq7H=%&r=(j*K+SU8?jz3AU=Kq+ z+EOnLGA&7Uy^Mi?%cq29``ub|yC7v25{@~j*&dp&Vz!^iwmfDC8ua=@IDg8;5%*gK zBmaSQt%(fv2MGkCfn_n&-wjPACGTdaBj@NkK4QJdDa=AY&)Gr`!<%I51|1vVS~tx@ zh)iah|AiG95vF-C8O1c$XA-T~g+a?q^N-;ys4RIYn-F*T7aRF=F z6PxBpSdOMSBR(AJYtSlzY0jCCYq99{Nv1j1{^mwbrulh*R%)7`kH3g%PJX3fnma9m zXAQS5f{~jqi^b0JrLf1kB3Quh1`8m+23HPS}8tsp`kE~|WnSV8t zb8Vv=%bK{&JB9itXW6DUj29tBGNf)1zxr_hA)+8%Kfm?-(|Z2i-dJV>DYLfW!ja7R zO~2dN(QWVC(Vg)c{#YjXB(ved3u&+>9>_4-6B2m}2u4Q}{=>+5Tcc;43;+7J`w{}NuNEy7`$!mhSn?jKjl{*n&=)4+xCHp_sy=7-l zeim+Bsi2JqW2T;9uWX*WQUGO@ME7KGFq}d)kq=py(6Ln$c|SC@*%vCMvN9;|CXLjI zOGQHxRTKI2;B)`$!RH>W=fr|T)kMtbUFd2e55X$cy&1|3R!u}qiSnITSI38TiO)%R zH4z+?9)SEDf8n3Jnh5^J8L*=b&ZA&J?Swb3M;kk#N?*@wgM+aNfg$Zl2$`HBF_xal z(UWGnrUN#f5G>CyaBwq8)gOvoq*pR|HswDc@;}+k*}k$|s?@TLQngX2H;Wz=Gs!jb z*<#7BHge5Etwc(i9Ncv|j{Kmi|5a2t)a5t~Ic9U^2&^$sFX#lFxgELN;5;d&O)EA_MZ}X1P{uG+J<^R$G|3nb`qW!Vb}< zvFQfBAj=`zTJCa&?Z9~Er5SP=2AM=nZ*v#+ho@)isaRYX^u4SZ?7p4ocaPuQb9P&X6iS&b23-gK68KZn{-V@Bz|Lw<|Qs<54%i5-8k% z47%bXZc6t}tl@YZLcRhQc?CaA#DBpGIW|r&@ z58N)E|BNL6@ZvvGC8g>gUPk6l&Q4(D#aXH0O0A(vXR<+nNMN2}9F2G{F5wqClf&bw zJ04^Z5k#-AB3j}_$$PAA^WTgvn9Ogs>QG1$9DL;>g!DovW2@HkO0|5mS%Va~b+Q#3 zB)ra=op0C~tYRh1IynQI26|)u)=3rnOKzQ9#F~YzlTFsOC9_U0fWBm5r0aEyb#f&% zT~O-;>#>ZH`I)T~d^bPq1V<=CFN9J%kD{b=i=;&wNoIfGP^Yp9#|^^l56(wi1x0hC zWPfm>Y;NRaf82!-A@;}1@fWc_$gfoFk3m>n4x42q{_hV4~vi?&1lIsilhgjr$oEM37!GdVt z35|%#P~-dXvCKnieBTSSAX=RHqVYxBGK;n?+N!;S1;MM441J9AUo-{}ZifI*xVt_I zONGCfzf0Yx9U(>4;s~Zt*}uejQfqA~ej{nnC$uG~I8P=H|AIhC?LpST7IFAFXqt{V zqzgpc(F;ZpZ%*&de4NY<6~dy-RtW<5TtT98*=vmiUOk+g_>SN;)otq%M;zI($zzPzChwzQl zrFe{MA#y>vpnz*(X5n(^%BEW^)cYK0Dgl^^oVbK*rjv#t!SAM^?SO3{~jk zW0~Ysq5td$b??CWQE_Am>h`o%sDdS#XxdHyrS>4h)WSJ8LsN-!=5a`uJgECchG|>5 zB_IfeTXcGG;+Eerj4gvK#4Yw-pGO(%AqO60!7OO7IoaUrJ9j(u%8c%iPiKD4sS-Jb z2=WKoj%yUp)LG7+sWi^XPO;64_-*K&a3#`XDK0IrQOO^|M*T~m4q3#gtd*!<)Sm}k z^`}z3W8|=Ca*;>Oz4I8%CH|;R54{!+G6z7@v%0UsKyltNiU592_jPE2Jjd=hd;y_G z&Bl-6Psi|$Tkuqj&}?tQ>jj0V3=Xl#;0@B+9%_xBM8|66lg~l2r@qZr%eR2)NnC7z z_4l>r0{QyU2m+fKUO49ePu_cg*>zR-;x3Xbjb*vZmg}`#G_vLK?L{u&0>-#tT)>Gj znse?s*E7eXnPG}00S3dPh8s)~rgumPCHzA%y@i@k9uNp6fI|$mpWYp=}~S7%9oTow_sI_p^OJQcSj7Z*bF06_F>>Mn;$ zwOOjA@VA+RF(Go`ndx7$A*NF!10mP`e-=Wn$(6O51b`pK(7RY_ghYCA_@bG3_#&TZ z!zH6;&OLXrLN+=DV@}t9E>5~^WSzTkdy|p#}BcE-0ZB%k?0F^6Ge|iIAz;ZbXz0_l;M;;A$BDCW+^U&8i{k7c|Nf)qMviT@cKkRS!Qq^0Wnr*o<1#|FmiMX{WLF&u+lJa?AaJ%ckuwRB)mzI(K1v*A zR-{WXlK+`H%#CCn-=GEaXPM(M!FZsR{8Ki{bb@49$-hET1B>%n$s`f3m8^$on8~f; zW-_CwJfEzl&$W}Yc_}0C;mE(@@+X-vooF-+my6brU}Q0gX^9O^t98bTI%ApZEnFy{^(!gBEYV)So+{0<*Kcq-Y}@ObWH2djAwf^vDjFd4W*-?0 zcAHbT&90`B7;Lfs5$YP!V!s_l4K0z=+nl5(#0a&Hkh4X$E>SXWvb*#x&e~M>b*Njg zbtgc2e>$Vl>2&Iqa?fivs}0|4_NuK8ZpF?W4od8n)1VhDNgdgVQUwfpDUwoQrH`Iy zDhzsQWh58MWzfHx=*0~B*U%F)=-JaK4EkJykcXr)2O(I|+MDEur{AUq@Rw=;>}l8m zjQ;TShRf%6&m+^~?9zUIQu=7Q;LtB^i6TXiM(EKX2BKvKd+ z;}b>l;myfa|k(lXvNQ?hT>134F2Sm9Cgx?9MF&rOS{8_vWigS5GgM z6gR3PPDP67**_EgH-+1lQ*%|QtwnD4J}`0yx|Kv1h4oRZHbNYc>NVRPzuv5Qom#nF z?RXvxk#?ioZjw=LUZdS_U%tGs0F0Q~w}VBM&(S^Wnw3h6%k%Sd3rpB6^YYOsg!Y#dVrmPUW+aruQn?6MmZ!>Jj@7C zo)Z(4Dt=CQo|^JL?$hY z8RgfYt|5)`KSI&sMmZDs7gGjLrUckIEn}1<`h1T|&Kn(bylOx%UD-0rJ_Kb2>$l3C zUboX};Gm#i@3w0mO?0PI_3J^o+OE@G^Xc+SJ!5fD+sxW8L+wH-U2AYk|47Ldmn|0s1kjueq z`F9SOgA6wLD2k4TP0V4&S%ppvzkNVA(^!Sdz6E6^t8^Q+RwJmlt6{g^X@{QI!cAmB zxz?+C?FviRXUm+4`*FQNwQE*MUyDYyuR~4N@ekF(Ld7iIBhkzSY($d4;m&d~QO0x6 zM{u*(MOe#hfGYrI=`sKuEJH?*C2w|V+5>VcBWReS8l-;+lBIK)Nt86g(|J`nEJ6Hk zxzYB^^>zbkE$Wr9)oHfc<)GW{1+B0mF2)|1)1u5rXd5=iUm66kT5wqI&TwH7*j=hl z$Pa%5gi_}cGCqW~rM%T-`L9f}M)T%)#oV3@P!Vgnq zNm}&hQ7T8G%MTH?2&K|%SGtu-;MLkVp4kX|-!E6IohlAyc47E;SLbeo+lClPh3_o< zF%?zHpW{-LbT`6gX=6d2!}ij-Iu$*H7>@sYA56>GW$LxseafYceu zg>r2Pyp!m~wglcqPi#woJq_zoX9yuOMC2NTbU|efB7IBXV`>0@tp>oJh8@5vYzb(G zgR>=|U(l?kZV4=nU`s$XmAxgPK8s^NBa8vdgR%ceRU1oqy87D!KLQJwmP4*>fuA{r zY^9L7EkNyMsfNUDf$ypIR?A(f$UgkGz@hK5DQOd>(6)dcZ*&ONnzSuo^ce67NHpA6 z+H5&`K&J{AhRL0>l9lR{({`>;a+47oY(LXRs2$Xx2=%O&s zuq_a@gRtH9!k}J80fVJwmg1KPG`J&f6Jcx2?ZYEePEzg&h z=1PrHcM4%Y*j&+HEs{UND=ipg9!+JM{?kL#Kf0ZY^1T#?M2)Hk6Smg^iCXmz&Q>71 znIHIduhXmrwN{)&=Wr6uPK688ON%9zz$mtOndH1iXBCc3_}*B4>~#iZZM5i38nt>6 zOCoET^Hi!s=ydg=(Z(S=nj=rpGwroTrQa*EBvIHD zgEXZ=e(3)awJ_k09>vx?qrc_!*mq}1dU9WdC+{dKx=qf!^#368fYe{B-13|CRI!SIs zX{9TR#vM|{L2A9OjHK60LJ>WMrkMkk{!FXV|0TFU&XCP;g}~~`sw%0njx+@}dOY3_ z30B7>&@Bb9^dRNt)JxEA9JFYs=ZT`nc|fa7n^Tg`<{FHpfmot#bhcjGL8rI8*?nr| zTfCs2omVQ74hwYTvwxYWMXXS3)q2~j;}km%7S!AIj#mk5h-hmxS~x7zTcsNX-!a5U z1Ps2NiaIcuxS@68HPeerx5gKSJg1(up&$JM}*G05*ODMMr~;#wbbJ>;>YnU_+v6{K$+; z>vUX6!%eFDqo`Z3ce~z01WvONH2g*#4i_YDfcK@C z3{|NkZ$+sBs47KMs^9d{8>lMPR&t?SsCx8$5>=0(Cx)u*X(Xt+su@gAL5I_q&gNul zh7p=%3l+_u!PIioJ%~KtrSY3*5&Uzjf}nE-?e^iSay^j5JBE!K;Ya+~QixJ~EKyYG)#B zO=PZ!2IjK7l1;T;fyw<*f+Mc+15%ekgWE6t=CdN z9ZlK27A`#*D3H1MNRMkf=RI=av5lVC!h<~xyYLu&T$?;n#Dm&4Np-+gGn4$(h_-zz zk7(P%+er*(bNe!ag#@=s6TdkMuCQrobA2jApsU9Y|1q(&7>A^;~Q>_V6Y*HSC86f}E-MMo> zcM8O>C3k1_;@A3_UC)ePdlrgj87nq#iTJgrc+3_MR#qZi$F=lujvkP zF4XW5U50XlUHvKXYt$%r?!S+o=ua8HM$gm(5x*um7IxMZcte^cmn+|jU-Q|iTOL%j z1Rwtuu?zs(m0!4^7LpH(4ocj#wU}ulXt$L({lEHJ2n76q=%4VShGoCj>jns1!(m3h z=eL_U3*Eydlyv+ZiM42#+47H_lMr(icg5$9(fWczE_-F84$>>XTauCdb*e-70Mv(u zk^D`k4SPz8EnWT|b!BM-TZ*h0tskIh@udrs4Hl!tvJ?r9*9R&jmK!YwAO;` zZX~#@85wn33>3YYB1QaYyNPWfZK1Ke-`zQ!C|y{_Ua3D5vcsm!iyl4Ff|$Y`y9=SW zgf}H2o!DKI%p?JFd3u85=;Rn3Q)N4FNKnK%%;wDpuwmLyx_Cw7G#GTvd%04RI>Q!% zlhP@|Pl8+V8k?vtE(|JBk|Lqe=21?YD-nu~sB1`}I0;2ZBNPdvB?uAwQ-XmhUX7^D zgkzJ#P+Ez*6H;7KsG)<0!*Nw zVT?n-u%#h}F=i-oNZ)}S1Njh;!CVa31I-Zwc`2JPyO>Fzj2Os^Rojwu){V0UX&SYRBR(968w79enx>0!zx!SV=OpcRUk-wW@CE}qa zQb#L=@*G1y%QLypGk)u@6*WO~*l{JxL_w}k#5Y<@_9*HmuTKgr2o_aUa-uexA`#8v z{a{NoVra=CAQ@V+2uQK?6|~Y8r%Ib52QLFj`e@6rKE*U|gv`y0USg^To^n2s(1Fh= zjyaRX$uUk@ndu*B3O`?wC5ghO5Trr&CUpC`q86cyDlMc;4SVfwuNoqKLg=+y?FM2( zYC*joG}^0k<-wl~F%q$z`+6#>bf1WuOFHR%yhKW2G2BSh-}8j01-?I``L z1*q~{0RG`z>R7b~lzupKXvOTy51=lS@m&p-VPAd*MOO@^+YdkJpl9)u0M=;ZP%9Ydo5qw>_FX6|7_#G6o87V(w5rWA?%Y5Io+hzk59e#VUWFyyO4t6>GvPiZM#*vm z(WfFnQV2D5g(n%j+p?V0FxqJv(l)F=>agHc-y#g2QQLNVhzt!FpW`;6VK0!Vg@ zs!Af+F{VIAN8tUCNOqJ!eLd17G&2S$5$!y*N!%#>DT4Wr0rMXzdYcE)_7S38bw$a7 zGk%2a_7LZ_7Q${geJ9fA1j`GE7QlKB2iKNDN;HIEnu)Qi2nMmj<2Xoph{C+IzGR3_Be$Sxjit(HIhn%Z@r5-u~ zY)3SV2WPsJO~#x1Uha(c;^GQI%Qv_TNr-i{aa0@7Drk)?Q1XNYV8%$rnINz6OlETKA+lLn8 z=yy8U{x;FqJm`1Mqo+c6RTqGM(zQxUO4%2>77J@h1%Y`#*K_bBMYv&c@C*#;38EH( zgPp1u;QY2W9H?Y9qetVZWAfC07UCTy=77Ss!e7>U5a z=TXr-IH)dx_2=ehl6ji?fZ4lI zbTnYb2T1Z@Z&jWN=6U0Q4yLWfsO)P|mZR0x&&|CWqvL7&6H$b%#(qLi46WGH0f1Je8P5;1*JJM9A1g5moLVbtimk~G`T!SMh@tpK zYsW+A-DnW%zXkhfJ#)4xmC>*9en^Cpdw+a{N$?~FCb8)R3@eUJXM@RqD|(p+n@Y4Y z<1=bGOJj$|2Y;w3eo7|AO|eN+3)?V^Eut2IN7w_b)N5X=0S9E=^L($0#P+pbP{Vx~ z-GFBq895$Rh8T&!qX{aS2aodm9WSLSv({yoJKePqY@pxq8c{ttHtcoTbxysmW24Br z?BS@(6q*81b_bgaZkkWSPTL%Khw zdBv}Ubo?8wcmG1nxttGIObe{V-l(dQYq9f8p^aXH_bWs?-upzPBYl66WKiAa%xFXrGtFZGiq>qYP1nPMeKMcAE zb*|Ss^-dMHoQ361yB$!btxC;X9dG2Hx=h(B0EoXw(a`{+ zJ<#|X?*gzUkvEQvF42o4Bh~#Q)Gb(^n7mx|>XmjYte1O@PAh2EJI#8v-fei@nl~^4 zRm9j3D;C2|>d2Q-ssL_Eag{1Jee?!yO0|_-C>L(FJ}7asO-~Fr+0y}ln`bQEu{2=$*N+|`3O)-K&SjjYwt(W%h9Y7uT@n^?5vpb9X$;1hs4e! z#NM44V-k4Ep-J@Yp|v=AR>0~H7yZnGp5ug`I-=&rt8cdU@^Bw3ZlN+a^70qZb8v?u z+^`5*!?31AEkd0j&r&P&kyXrZwdz=bLs`nYQ7WF~Lb>qoJ46w-ZoHqK82+)Rk>KAjexxy&ir(%JQG|<3Mj#F5Pg=|U zL{M0c-WCdzWSS*}Zuk)u9Wq_mW}YsL1Bg0&D6finl$oD5^MZ~4&fR_DMUe&UHz>q} z!_ERmKbxRyWdZA7$Wwp~m8FZTDRTp-Ke8M_n?JKan_ zZAH=1=stDYXP6v8MdRmiRAUIc$lk~(CBzqcGL5@DHiJ88Mr#4Z6d`@Dc z)bu7#UU_+36@m zs*}4_d;Q7PNp+&>KK!L!uT{NFTBsCCccKRzy@qN{NOxk&iCDjyKWWS2?E|`1!2g@v zt<_6=^2yAuXQn;*7>Z_rqs?a`?a7C77mB4lNhZzerak#9bk{ymN1!Frp6Cv7Zq!H- zJpttgyBbo`o=~IQ!|?C)M1RV(C-h7`5XW>R=VJYE7vAvo!{CFb4J&)eBD-I{v>O-9 z=gNIDWN9rfzZ6}S2y5%MWJ6peKzU$v6Ug}s(MRFTz+qUwjSXoXcl{>L#&#R@ zQ#J59%$Z@HAMJ;imQ1?RNv7plcFM_{nc2r8(iX95DS33;SFkWQAI$BU-GRjMdqSKo zAH%icyXX9Aob|@3CtURvke3HJFz5`_bPqnCaCT`%XO@3}TGLZ_*oSRQ%RhzDS}Mwu zkT^tc`IJ|t(rNTswR)#QH@NpIy?R({_WVw*?32gHN+S}HbF5$*5qnm~bkq5eUI`wqf%13OtiB586(RM#2Wfc*$NpMD;MRoE0Q8Uj5FJQEJj?<>i zImM#$wxX^q1hO@^m1?JqqQ#eIOdqpUJ4{Ejqf`l_B@Hb?^#r%Che{!8v$gmphqbg= zxf7xh#r3*r7X{ahQmm+<&1gvIEgY!m)SH1{4!vr<;UU9FqlJHKjjq>ec$L9>IwGrx z7zSOIB!w2jcwlE0xfNtE?QWOTE=1Oj=z9DUnvg?t_iLm<$4DQ|Cd@8oewvY0aiI_$#+bKU*XJ(x<%&iD+9uExxmV;(p&V+L8WXJ$N6W)g%sVS@fqPmqHi@$yE8 zzBjsg`p)q4^v|Q3r@=!XFkS1oo-`|qa>ri0D9joleax7!_?@mboAXGZ5XX)cm(B}^A~e1#IO;?k;m z(C#1uSK0R|H5amf_+AaJ2(sgIxA|-unb@M)tAtOR4e5H0UjV#G7?s2(Ff(=fJ6x!R zn#ok*Od`iZ*ICl40T#*1(%+rQl7g!JFuu0Dmi$%(c+z%R|hur`;<$7fy!~Zr!t>1#E?Y9!jq_|(k3E^B`G6b{yTx6PgTMIv#jh${c0W0 zl)qx~oSSm>guOI#bf)P%_~NB|QP+@g@_H0C;3Vh8OG(DFGtxMKYzBk9a6nJfn3Kxh zgR+b-Q6?bUZk>IBppk-ZiOQc;Ij2Q!!0lRBI znuKL1LKuD`dYuQ$E+?$g0lNmOVbjN3D&@(8C-Gn;b?JE=!vNFG_dE!B5{Pk_s6`;8 zk3%snb}F>ft2cY?HnzqpUej;18eK&HhN}|hd-@O~5x{r~70m^Vv4b*{HZJJ~;R~or z$WLlox{A|X3qc1S58WxM2bMa=Loagbbp^9Xs9PI#nWE^rs5ACb9*Ux)K~VR2r~sr> zz;;B#c$lwC*>v1V!&R#LeALZxwLn@rVx(fYN=XYb+;VOGN0C4r(`5CVp(iQ7S?J{UFcv=Fo8s$fUt%qCnk%4TX>x*c{Il5Y3 zYQ6ko!4q=6Trn=NLVTgBO5*Ejrcg)E#rq-gb+du5=7`e})*7tD*tep6;#7ORcp3!b zd7|feFqZ9t8+|A(;bLVDuL!hQL=Xk?%JyiNb&9gg(r+xrB@ANe6-H5&p2@#bPq7GeLM zs?0*zuRGl>hOpli)yEO``%b;CXcj@(`%#xEj0F((|Dx!sBJ5VM9nmn3ur6iO5hx8| zsqU|!?!pL5j8qI^si}{mQ~`vQ!X}k(`uGflmC7o)P%eZ$>thmO&!#7auCG%7+x8%UJv9Mfb@5T)>zG+x3|=n+^#r_{A8MU^34M^UX;A=OcdDu+x}IeU zbkxB6A<^}C16_^rrh%(DREe!OqV+hoo&}L;iGJt7*2mHM6+M{Vy}Y|LyS&?nk%bIJ z(@WuQ_*`iPyBnGOOMY1DPR${eEQ=#yVRFV&cVg^{u;(q$Amux*@T#zle_6~Am-d7x zS7yIf8_LW3KhUz~l3Uc&4vXC9fY3LKS_E<$9TE7__((+U;6O?n^yC5kO9NLb`vjEb;QH7@a-UMAxh@8-)YR=L zRRCP2JS5|!>2Wf^Rcfo`Lb<^8uZbdT`TB8sV&KZ24hV4d_O1wARq@e)t5IDHT)#=v zjb9;~W4rZ-T5Wzy@PnKy*FG))u3uMGNpQ6@AN?KPj{;ovFw((Qe(3Ulq{HL1QVZoI$H2qxEBEhxhRjXB8l-LS8^?Ie(ZuXEZ z9=D_TAudg9tq!;z{?}apCG)$f(6qu9;JTiQjsjdyrixH zkn^(wK)q8{B>}Z+3TgB>ydM%!k1+dYqq zqi5kuMpVw?Sh%+v&hwKJi9wdw5QKkOoM|wk)@L8sz8Mjk`_-Itq_q}c{WEinA|X=r zRa7bG*pux@QHuaZH(uj(!{uV_HXRsy{R&iNvTcEd+nZ6;z?R{o;xk7bU(eOS$}|z& znQF#~y3>=cveO`m>VCeUt}ujxdf2Yintm&6*6Q76;Ca<@SS^=5Y#R7oc60RT6K#E7 z^dVVKWg0?%OGWb-LMLAX0l!tA(BvxT5lp`)Zo_|@>IIw9HvC#v)Zobbo&MT_p;A;@ zjU?Nus7A$6; zQAa+FQU&ZYDW+0H(nn7{6ESfT0+S2nvd?yWT-s;n(-X7L*wX=EpY4!m3mCu-++3i$ zT3EJ9E^8F(Jz>=_3R~?6r^cAYb_K{N@Xz^H+iee}Z$`7raG9z~+HE^cwvH~w`yuVN z6I1D!X1zHBmNwk2=mT-By^p^WLh>Nd`#d&WU)xDy4!GgP_Zb{ZZq&w`ob^Q(8emv& zw?9C=GB9IOO?i^pHtY$Xh-&3_TlP^G&BilMM{I3sdIbg=Zd0hr&$KL0$o8jas7`w18V3uUSXJ<#r8Mnpe8zX0=^M z-f@=jV&wZnFBN@|2xCvN37C2$!i9A&70qM0on%>Vm-DmVH(^bcXt@0aRhwqGy~XLS zZMYpLtwXbo1iS5Bq6ye-hZ~<7B6y$Ej!hPm^9P%4??7Ecvi?U=)L{J;m~GZLr}wIN|0 zWH>p&V3UPMVXLjzmBq}oqduYFPJgDM?HGDJ8VhZcs!CdDmzm-oZNU2>Ewp1bVckm; z>By0N7EcdT+GX3&a@;Pv3}SG&=yM*s%(@AY+ef)CPR#gR&&3W!z+pFpuE3DCi&})5 zsRw0TA&mQj%hg`p4?UzFuT{EX*s67^T`U?`B~J3vAx0w5^b#tX2TccFocKtpiR8fw zw@|-YJ3{hTAfbD4;vZ#>r5FT03U!$>QNa4^qUdNKFm`dGI8X3UFwczxI;f2wdryeU zJ_2PK(?ta?PNeBBhF;Xvg(y`3y`)Ga1CeRm8R#WdLvo>9=yfkqgrV1q>4~8idm0IP z4PyhFIl#pt$oxs`qSp!v%hB70pGh*!5<-GsMMZ~93w|_D3$E3D@r>a22Uq|N>$X)G{j(1hB3SrjSw$la54 z@4*+SuY6r=9!=L%`bB3j_LLS=WS?X7vTHDzBI8`tH&Jvnii~cmW`3{?N*RG=Q|l<5 zEwsmH5;~um{abN|mHpdgj%=G)q?UMlLfaS zf0b!er8ck&30;_;{riMZN2uKOeWhR=x+V?27E@mv2C*4X&DJ4&}NPtV{y)Z&u26z(Vy z8c77Y*DO%I^`bNBc-79*Hg+Mzwo7)DE(*fM?ykjYY<mddkIb72J*3O? zCID^70>(GRDKJ6u5r4}lKYZ@cyF3h>k`To~b=Z53IqDP+2cT(X7>t z%~vAz`8}+V-QTrL3VEM@Y7WGBL4w3T(|vz?cHjRKRmJ-L6a0w2zhz{7XR0Hq@A?Jx zo&Tl#{^{ZS{_#=uUEj15S!CD0qv!k&-SPW}@Ay9q-*JulF*v&qGa9{z{&^<&lI8XK zHlO5Vp&B+<{^nh~=Yr*#aPb16(Jo*bZGV3)@*Ykj1K9t<@N7evghiyu*L~rNOAjcz z7Uc#z%2LwgQ=@#_a^t7)M1RUO`SeUZ5ZjYd$$|SHfj4|TJvc4ZNmiPCo{xp!WUJ0B zWqqO<=VUyhNs_tiN7%hp9Ny2h=;G_;#nbZJ4;w zA+o$uoAK>MwE$sS!7`DTj zSFZGW3!gEtFwW?wS1{!*PL1!~&YQm>Tv}e>jK;JNlEl&bSgSaxxZo7R z)d@%lKntd&Id+HD_V?W4CA;%)FSslkRYN}?s=^?@`QFP0g@C3jYilBI%Vv><_M4zZV*Wx zcsF@tNGERVr2cxTCg6TB*VyaU5Y@Re_!;OOcY?5|VVxj?X@^W6Ivn?t>Pq1Lml3@c z_p^`ml)fT!N(&`Qdx@$_a)0asfg!nnBe>>8qV^oze|8%8Tbf%+K+dl<$=;#HIjj_H z!g$^;Y7tTpRFN6QZ+l+N^Xp*zPS`9%7&@&E{_KVnSCfs^LJB0ARwxC3i{5c5U{8NA zQgE2S-vlxE4iTJ-f%-~M>OW>qY9TrJma0n1!BOty4Jijlfp5McYR@4DC#KmSlJ&6^ zuniQJrIwi}hRyh&YCOa8J0;isxu`{I{cam+p#6?lX?yi*x7(?Zjh}BL-HZE57O757ry)UJ9lf4iys=UmpG8-|(>W=!s zR(H1ySWpa470q_;plt)qGRjgGjg;xPCB`XqNvqpKtX{7ZAUv<$ta@#~-f1-Ioo>4l zR;%^FM=S((N>*E;E(y>(j-Bl34@Q@)r<7bAPYN_B=J#VNvyDjOkBBEkY8iUdzWhqp;#N z{5k@)aRnhjw${RhYSnhY&ehq|V@ez?I)o%hQms%D-h|$9NnlSalLT8;^vCAr$vHwN zr|s1o4da8fjMn}_$(qADBgUg=z!lLyZI-UTRN2MY=9u;m;u;5a|1*0vL7&GXNTtV1 zb!y-S=o(%T1TeDP8lR%c=VHk}(cJZ!OztWql%G&lNufN|6w2r$ct6-79x;bEyTO4u z!PyNCV+NhHTU_pJ_xYe?oandFPTVnaDyI2kqKAosJ#KqOHdC%JHji-LD(P0v@wC^P zvfoqW7*=jiN0;vxwFtSb)I%))YPGNuH0p4Hbb2AI;z~K_mJtbB?vUGan255>tXsbv zVk9Dp>=#s2`dO|PfrUv|HK?pxfDI8BWqRbJ!#=}V*bW0#znac%^)2+RlT`XhswKmi z)n~T{AB5P5x=j9do!R!Dk#%v_78ETWJjDd##T3@T1cP1B=_ZvH-m^2nIU5G_FU|8t zW!IuCQG^A7UQ16b_=!CYi&ad!kLEIlQ>KF~usKRP+PM& z(9j238TRN!hTs*5sqj@*5@yacc_+FJ?}vn$^@>6XAVUL^5c34I5r>#FAvwE5@A5#* zkpwXzMb}`z=c+3dwj8Z~XKogHqbYf}8vd}bayGhom#9U+N*PD;+Q1aA+@@rXwRW#w z4RG*02y3{T+FKo1dC?Ff5wP+CDq09u5L1{0D{rKVh>gua-bnpw!HWEqV8u@6__oZE z6pP7yGwL$=xd5!Z2SrB&D^4;;p|7`rbN+ll|I%QE%Dx_DIjj^&=16m03|6SAdr*oL zP8KN*SdsFOj1VcXB4s_fP%c>cDN%&M%KxD!1}p680DzV8h4699(+lCQ?%a%(c8Y09 zYdxdx_~8oFE;tIf+2mFkgPueFhD$P})BRX0&o%VXXkh3dRh5LH?Iy29zr}nG2}8#v zQZWIN+<{7X+Je5t;fZpb{!WR-;1Ho}uIgd4pG`f5LWmg%DC;o-1$YDjLoc3(3Q3b^ zrYXPF_|EGeexo;osM7;)2l z5Qad)R?x(C^F9vymc#a{thQ=Hj6}dEIr6|jhvB0T2n(kuANKKuOQU#Dv zibOKVr68kJGs%T=A>*@%A`BUyO-~FN+0y}lj9WdVkf+eUtYz0`d)Xz6i~&jv{ z_!^pC{0eE*pJ_e$Ix+ilW^6BSA%EYiR88)X!0Lby2DY=K21B4yK_L zmAxNj3!@ZGcQKTrrap^O1yD+ggj8#}+=5aqBp1qsQs?}wM5%4`#88So9RMhG#%^!c z!zJcfAa%SAQli8tFzPT>R}7*q0jUH;sjsw-d@#Ko%^K|@Rh2}jhAEp-3-57Q9G@Cs_KxUh9(<}`RmOt1#nNlBB&XTmSMo|X?U`QcPGLp16yDBv zJr!6DQBu#!A1hK0i(D-X^wFXgfn3c_fE#4IN~c?I)q8>8?s>>_Qmb_;$ex5H*Q%_q z=7t!FK&}}oIuhi1GSw7AF7>O0T=LfhWw9R-l<`6#-&$khS!JY_%! z(~yhG-i5M-k&C9g7;;fl(!5`b_J|@6hYfpw~B5RT8}}H03k;D&7x? zUSfTv`kw$_dT;!2*O$=3_XNlbc5QeAk-0`&Eg?b zC1{l=5NeEy=0PYGZ;`Swb}CgA11R;Y1yJ%=h=j8-c6R1Sis92%)MfI20erduMMr~A zYs>D}o~&rs6Htfkcn_R>m~83jOXFlvh-)Z=M} zIYJrVX+`-&!2xo1R^S5MtE!R^b*U+$(IVat2~kH17oa5d{sfFNh9^Pl`Dif?QkR19 zmqlOmfYdhW1l0IMUO?Fwc6=3kU<#>nf3IiZUPZcL;p%b>>V={f0ark(YAtAWtDSNg zk%BlR*6MnVdMzxsJ!BVJoqNOHGQ>y(T)l~k=7Fn$8&)5nnqqjRezovQ{+h6$`grD8 ziUHO~QI{zV1pw>wC^{OzO53n{2$<(X13H+7SXB0XC|h_zMbljjv8bsxqErFIk|H71 zTP|0iR1V37av|11pOc7nFg-EEVowJEVx0zMwU7l?PCz<+J_?*#!z+qG)QO;wfGGZn z){7_6tI;f=Hmj;6I$deXV{|m$4~b49Ae{{_0hsupBqm*ecH)?HC0P4d(Zf8L^io@ zyOp#L9^qK5uo!`kT|j*LX%-uap7?)1|BXS4TvyoK5Q&yHS1QQ=AP;YY_tYoyYY zQgIbHk%-L>_Z{W(f#GezHwx`tFm??q9A z>vLY(k)(_G07*gG&Xa4vdPGK^IqEip1TJxlvo+QIYShh5)h|6d_hA-dredZlHT4{n zDqyNgflIbJO=c&m3FnHm8IlX-GFAVDD8ig8|4L8HRAo;iF;$0&H8Ind3p6l)(wgo! zg2Hn2wp5rTi|L17QqlYw%^#K!A9HQ&H~Y}w5!|so&QMpToPCs0NM^efV~pj#JpS{X zfd&tcI6|a7KN^LY@Yre3>1Pu)?X>6Tq^3P*W0+t=NKA8HN=kEX6iP~Kem?buqx@P{ zvmxadIQ_Jzw3wnhkCDQz!DNaIc<-R-XcXPC((`8!#XxqI!F*dnXEQUHtBJNUn7i|w zt|f_QLn4EImIC_Otjm^ya;g-t9!@xeNtB0kljI?>c#>q?P5tAN zair6lAtO(9MqyK=n2bD$5z4N?ocatI>7(dqWaLySBZ-7cl9tCObURa86hm0j;_^c- zY4H-;Hc3`oS~l`4GMJM)QA9Gc^?m^TF_}7jG7SNF4;w^GK>8qB%P5QqCwbTs0yMT$d= zG)bcH`GhWKih`PYOBCFh&m{`)N@&|8S4Z>?c9y`K6B*Gk=J@u$~L0TY3*3AkHeY1ibZ;{It*2_YM%s0N^=&3ySD_rapvUwr%eg$eT zi_h#l_~L$rifV5ar|D|Cm%~i((jPNfhwDu9C%t^SLG>?b*Rjy?4?WcAkyIj>|J;ApYzlfEayv{&$y$#hk8}!7ju---9C*ENU}wOblEvrvJ=!#_z@G`?e}zaO(VY#G9%x7)8%Rp_`FyNc6vX#jGmEM(Wk*HKE0q70VL;BQGOZH z9ikTDx@%U0UeCiVGUZma?lo)eTIeHrVzt^0T9sCp0&8taa5cE_HAsSC*~}Y@rOFll z1}(6bH$0+*xzRJwIqq(FCOt8C1AAJTyFqtph3T43SzegQ(9%cSS{ff`s^>?HQa!WA z^6BLbTraZ{4~Rm3t>8Jyxlta4{1;9kn+-D+GPPG&A-__!*I$K+iEH9RCH-M%vu7>o zA68vivF_EQiatcOy1Mtp_;Dq=*We|tbia%WmC|M7lG^sGcw=Z=*&S%xmr>91Y1>mx z-Ffp3*U*ItD)dHa*a2T@N`F(dEIHF=GE>*Zbm~i~DA%c96SWAP+Npck{^-=2K?~VZ zLR@2x+!~=O%{BCmvEIAEsoCb{Vm_YhP*;|E&hYU( z21SeecxW!87u&h|_yB1Z#s2478X?CTA|uatH0!(bpci6p*hviXjBZ>`JpwZc z$ZG^Wgpf9Bm7q*lRF?f7U0LbZ>S3$e^P4S-0I>D|&d1?I&QRc`aQFPuz8xCJ=^*{` z>_UhPkJDWwPf)mCu#_J3KG9vtd^U?@;=CC2p^zYF&_SyiG`cvESPdKX7I3~(^Lx#p zT?;Dhu3w=G7Sf4p;Jg$};5=_^D4c&jhRAXL1@y#lo;|G)=T(}C#NwqgxoR^amUqubLA@XljhgOX9 zdTh~Ws8$!}Uxyz@fb)E)9Ou7{DmBjYHxlRn5$_C~mtBIEdL#8N4d-nwjElbH5j*3g zc)|g@!5?Z}`$N(G5W4maRFvb~_e3oMV9Ise-q!S*y2k7Zgt?Ss<%8Z^jicl zHglUg-O#m?IMB7cv7vPB@6b7}YyX>`n670{E7Y~BODoj1Tc;OyEicl!qw(#o#-#|+ zxd3|#&aop^BunRVDH`nhKbqU;s!l}ClJPcf8|fR=d-fKN5aSokP$ztmGjuXT6>>!% ztE%eXIvVd=$nHFLhAZzkw(jpeL=YkUVs3SlDKV_L!&LV;I-5Gr)K0WocbN9YVJbZ_ zw!ups6BnB5j&Y{YrcSg89bJJcj4ncXt^u#WlhS|&a|kWiKU{Sb#5L5RBo)-*QAD*g zb?7X6eDgGyk4qUTMt<2!VK_0i6I*igxbA!B;{4R~?A~48^3ohGyxv8>;)kV0_Ox^I zG1$<43|~b(X6Iuj{kgfB$4v75YYGzGQKT(nwR4RakCX;`7yfu>7oJ*8+-^V0*lwqf zk~Y@=n3@u6F8apk#bcaa*vhxqn(G$Sm8HII7PRuC_fWL>nv1w9w&r33Bo^XpE){!q zQ$p`Dx6o;VGA$?P8k*JDM3923&?#fR=5@SwP;CV5rWe+`xFEIZcX0wRXm|Wh=(Pe` zuU&MKz7(~8{G~yF)joEz?hF^`m`ABHQRC|}+oZ_)@HbfI%4=4$YJ_y8RHH%Rxne+4 z3|t1h5WSDC$3NCK6V30h(F;)IPZH+UG#dIFmlnL)#TjpjaCE=EY<6?>4Apk@GCLv>Gv)FL8DCx2kym zmeCt8l4#t(u!08G$#-I4;!iD%-%>qG8dxCvt*twmOXd6P3jV@e|&kbtnpTZBih zyOk_biB>EK;8%%D3&Xir{G9Bz?sTW6f9&G&{QTU)(yqnb-on!3mgknjMXt7m#^+tI zHDkKaS+kX=Q1nc6iNS<0-IG~))lBz|rmos=8%@Ns!fw~SirMX-1ZS?qZod{&#_jf- z@uci_sXnC9jysdNJ~u6PDeQo~PYZ!e48CzJ_H|F}&MnM6k;@Du`&f2$d2e}^#g(&+ ztfmIO&0(sk6NPpl&32mcjHM`5yu37RU3Nd^l=r6APHmq$ck0yCMcwk$_;nSUBUA+^-h#Z#B)lB(AaA_o}hFY}%c^;X;wlfkR5<+-{rf-(QG7&G(YM6ds= zLrBwD8v$FcV9Y@G%p))S^5W9mZl32!IsG%f(E9Hgv57hFE}X?XAJYo^$C7e~2+`B2 z==jy-;J3QlFTpJCg*e4n#l6Y(a@p%N{01Id)po6iOCZ^~Mr$xv{?XiWX*UK@!V&3$ zhoiBRHWti*4AYBx3vH8Kp`nUj;iPr>(-Qb>CZ1)L8ee$#ue(l#;vb%Xh+7u*h1l2+^I%;0eYFTWjt#Q@V4MUos_A zQi~2#_WVxSuOPcvuZO^rDsH*&R6DqeryO?bWv?F6(k*_lZhUYSXY&}H-~#g}J*+Q) z1bnfQWbGx(T7^e%f0l~oKUrr9*Dc%zDvhhtwb&oLZF}kb^O<*AyzL?JHp3U5p@8i! zA~*L$>BgzKJ=j*9N6rJLYrN$E*7?lb?Lyij>-3$pu%s<7>@Q7(@8>20VXruUcRvax zoWG-=O@czhCmtbozq4gtC2G?b<5{T2@x=`<>H%x=atg?C#fWh;|JoOJoT3 zVPCd{I_Cl6B&l{UyA$#|25C}LaIkrP*rhCCteNZ~;r-gu_wIh7XMI8XM@@%(`8JV?Fo67jtgLhHFsMG5^oSB7TY!eO0UsvH9fD6+moA=!nalT zTAuG!kb$11nMzlRBsk&_;P1Z6L@pv zu}(nlV$x1;O!2X${p|cyM&&ub)&zaJ)A(p)cOzt%h9$RLo0U%0?>5@ia-&`i%N@k8 zmYa>H=ZEET%O^u4m+U^4(J;M>L~e0__*VAmzyrk1huw73^$*$G4d?0bFfsL|v!!rh z0nk6!?Jh4YfTax^KqQWpIB&+CB{B68R_&6ponQ4_ye0Qs7|i{q0W`6U-MjE{0p@-i zKF`J6Z(yBBVs3hq&fMqZqV|}i+}XK4HBar==mEwHDBxLtF3G^KHt``4Mf&lE+bQ z$=dZC%ePVS-9bAKV&5fhqHdy1RD86PeUh|=dcxmfklg6zeb%JgLa&(dl(dX8SJLaS zl13}`z6~*!$RBn*YRZI4tY!d}-Tl!$*!!|{%b6%@ETj*mW|DM`nLaGZ;^u>+J~`W` zMm#f?G7)Vn3%wpAe~m{BrrZ@v}TEPPGoh%z?|UxA`o zO2?j6vHkQCR>TCI`fx^?1IL-O>!s+j$o`o*DSr{%x`j#lE}lQ*7UT5rVjqefJO(#`oQK<4Nti zb7+>k?(3*~c9g6HQrO1JLKm#Up8K-HPDS_J?{>-;*>k^3lqK9Pw&$*Tow(<&-WK0; zA5l`CMB@w-xgbW&7dlBh?k7A1jF7S4p88(n?yF)`l6$xPl~k1Pwp(58m%Ogm>a|;5 zyW)4@m}$2g4O~#sY{PLK;zp$|ZERXjfCq55{cX;GEzfv=xZU>mP@MyI+u!H3YcE+% zAHl%g_IIPIEc4S=T$YpI<0xu43G(f>lPVf+w_UIZ?R^v7^X|60bCiJ`ZU~6cqQ#Wa zr}++%6$*XPY$kVOE}Gwb^*( z^^M!ks}s{YD6Q!9544E?7?jWQPOMLQ%z~;C-)Y@6mq~t$czJx>Vz9J-OI;TF2^k0w z5?1fFdevIJ+6mjucB2xZl)JtE= zhMXn1>t5b)%ZI&3w>V9V{vO#9ek$w)*K5?S5sgGvbvOYl~cm|m~wKzv6a)sP9WX1h{pc_ECbb_enI0c9UaU+NjEe7{mOGol+B7P` z+SQI3Ddh6W9?jcw>L+v0`CYnMvQld zi44@znXdlU>gU9-+5C}CfLKuM@l@0Wy7_!Tu_vau)47ksR=(Nag6Y#g(BnKm_c)92 z;)&qJ?WkGsV!KmmHvD$2UayDsMzh@MHGB1-T5D7r2;6RTz>DehB?c2}_8e3>=u^Qp zGzlZ-8Y_HSxLmB?G*xfNP1P9pJc5e4+>=(Ipva&$pM6o+ZZ73H?a-_!?eS>OE2xcBGTV!IzTK1xkqqP-8n)OAb8>0-5 zIQtc9l={8TNv0ys=rcRwOpX=`?303=s}ON^@Yih)EE;jP(J5af;%tK`OFFk$#F^@K zV#JwxTRh@yM43+0#R#+c-(ofyBqb(#c@XU8g=y@&iO{pT*`;unZSS$v!>sm_w^;Jj z%>({EWN^aO1Ac^CV#P)sj0w7MD_=#%vgurBN^Os`GI4m5+z7IanL3r{dSNa5$f&#N z)NL!gV#Z7rb!EYIhB5PC6fJJdko>w~T4IETF|(b9$fNd%k}OhTy_y-VBV96U)iW>+ zkI{t1O#KqFnlxG+WD+QM=%{7`%hFy8uGe}y@SBx3Ia-E`VNpvrF|+D#J)kZPJatFG zG)ZE{_#_o|jq#jIxh=Gm>zX1GLN*A-5)AYKA46m^zR*M6n|r9aR&!!LDT;3iH49r6 zVNwBZO9;YF6R`MbG^T64Xj+wHQMc(@XSPMsmeCmN1UZJ>BuezgRF}3ZYFiPi zqx#(6Yobm#9Y|-zA}C1Fwlp;9v8i`jHNV?NUKJ0wtpfg9*hy*v1H0X@Ql?v1(=8`M ztPf*!Oz$FnDnj$tuulhW9Zkfxj;@&7GdnZq1w0Hzm?5Q}H$5Z6*~cyTNMdg%d5VAz z=T|)kH|3rKgRvhufEFfWN9W+<0((Y}!sodd`&!nCB*vyU>5P5qU@D{10bgkX&O42z zb4U>;rrcgM48g?ZPPK`U_eLwM1YlyXT`MEPwAC(m!m980$T6Rbi672rmfpqUOuY5F zxuu8BEzbtD^+}dAUtE&1=4r0PjbeitcfG7h>SO(bruMzLsco?93kQsPCG7eVnj|B= zRjMAohjk)}UFl6ayKc@PDr!r6tx5I{r~35SFT$Xd-;X*j7_`$3ys*&?${|)9Z9i|@M~1@RrA4f>LvN$`5WPbXMbqD zu~~IjF#^`veHNgkJIe9vSO>ZUeKcqL$evYhU9P(G_M0(WY*pWGo%yj+ZD4J!! z+Y>6%h@8a=*=aMJyT4iK2Od1C{vPQ_g_s75;A8q5iP+{(dIBDkJ)o?t4YzPw z=E;N-Ww(+=HqnaZyIDiZK#q(5p+~egyR9LzHt;T_!$Jn9rFl~fb3G7c8RUWLu8*E#c8bo1(MPWd96S8rCsD!O^4 zdY!m=rQRMmn^$bIN$F!YUoD2s?8d~+tL-;}8))MSXSw-e0xq99>{a!!3_gEm8Yj%m zZ7S&d0wuHze>OIEx$`RgEfwWEG}dtXrAE!GlzV)spf5#Yb+&6mb+o<%0vTc_tHE?e&P;MohV zdc5de#AEmg zHwsRaZ~-=FA9ey6d?imTP9aY-e?yrAy4XagR04aZm!?pWw=^beDtTDoqAE&6u(*V+ zcCkfjC$dj9L4KQiQjAsWFHtDrm@@rrt`@=n>o`RXo5%gg@*4F|lKT>|IY>IVcr($4rG;tAs^6v)JWxJvaPwfmdh_CS9pw`_? zfq)C`v-k9~2@WY6q2j_#;oOe~_x!+O2Z6-e`yIDuM(mK_#d)%Z+yaeV4liFjh=`=%u(D%tfCHxAxC+C?(<6 zCfh!zTltDrlRg*Bxgj|DFo89%e#GO zN9aoyeN)=AFujB*$fTgI!QX?Gvp>>fUh^$m(`9Ir0(?pN77jwqf-lRBW~SFp}ZZ2NekI+Mb)LF-|&%in^SX zGqmeaxE{E#*>Vmlyu$0rq_8fPR)Id?6<8szS5Tigp0Or0`#dyrpvBrr$xaK^?*EN8EqDCx^3Vyu~cEFdIQ=T6iqgrwT4AYnkoZv@>Yly}2xSCR6vTE&UW zPBWvz5EA0G5evz{fUYMCD#~rbbit2_#uKTiD;od*2=F2fUbL4Cz5PDdSe;cmeR@{pd}Pj?(enodcV_w3`!Lc zYf2D8Lt|ncUCj3Kv+W~+ZZBk%O78^CtO(h99{Y6QqV0eP*}6YBl?~SY)&N?VtQ)-p z9~TJO`Yt}t#kyZ-ok(I`dXvt&1A?&x!w&dLv*~Z0#?m>Yi06S41<^1#n?5-|n|_s1 zCA|~H+4KPp$|`-^p1ka#2wi$A3S|Pnkx!*4LvBUgxfpT_>qHVm(wlUKOpCe_oS61n zv*1Ne_30!l!h*+v1*zkl1wWRb1vfJ~q<135g4z04tWW_auq*a7im!|3T5Y5?qM*a4hH{Sn*I(X?^6na3|rrEa_~;#+o)TC_w@_aci` zw2Y_z#_PR>rD<=5=Q@b?&~L}dRGij3;@l~`hGejAunnr{P}DRve(iG)#(wPM@z%ci zHMK+i!?4ka^N@@CZ`(f}J%d_3-E6Hi-krggHDxOoo!P!WrC(F)u3OsgQSbJ-z2o6l z(Q{(`8jqf5{MN^2sV2g>xR7ZFwkoH0(>CVC5A|kfS9LnLm@eN-x+JS#z4f9qm%_bE zJ4@SG&$nH&qjXUaE_Qbi1-srLF)7fj9V4lh_( z#yOIO3--({+;PGDK016N|0Cw`f_YBoT_L-q3)c|hem`Wf7Vdb-cJ^21-0T+tZ|^th zv0j#wWYIrp>U>)DHaQ0GQ>ZceH2$&0_&)miJ@|*H^*;O;)Y1cwK1H=Agag`AC9ur? zQFraD1G-k=zOm%4eFy!Pa@nUyP1?LqWpB=w!$;lypUmN8UN-h)6wR_^Y(5lGg5PI_ z?EdOh=XPkL{vBfH-ZOUScWkM11Sl)I?)RhW_$FKDh`F$$1=q_@6uYY*G*6v8{8&yv zQ7H2~k%HT^Tgi$P6s=h6>a|SI%3+DW^q5-Ntql_^V?wp8j|MgkZGhh z;T}qQ)Z@86dpueEc1`{{dTe$pS#u;>vF0fA4z8K(wuYD?-i4uNC{LkSG-t8`9rg~c z({}Bi3zl)w<^_oWxWB&^yP)8S=xfj)whx)`M%=-r`^2G34=j2u$`uYSomv;Y{!qXg zHOeDOUxs;Oe?DV>^k?!F_23>tylo2R0DiAWAu>(!#E_nPLpZ+>F2d5I1Q}ZetZ(J1 zNcr{=)bJVBSKqt)72><^-Tg}WrIwjjXL6V&yXsyJ=EK_d02?VF)hk3_g%iDpkcp<> z4BLLKT(9?huUthwZ$Ci(fOgR8(cRtl6+7qNM1h;&pl}9(bTcz_LBQ?PcOuXZR`Jpv z#5HsgoVPGNx42U(m?A|qQQtl^QKPp}Q69kQ47U+9aeArNX*D~Idbf_lqLrZ2tsns& zvYB^k6fY7z%-99xE0}T1aoBHcy}{eFwS;?#Ji7dV7zv>nQ-HJX={e%)GbNe*#7^)@yN~+k<(4TY&W5-&YJg^JaPSqDg z7tn*_6MBuPZ9OAjbQ-oz5p(Z~ZqOo1q+YZAIaHNpQ`u_Aa$bHDMUAbiHLRT^Z>D+A zHq#|9ru8M$FE7DU|Ja1_n%5TyE~2a(MDom~h$GgL1F7uCP*w;VEeq^`^Lsf_}}GIVfPOBgAlX_h9?f=9bO1$0}9hG^$=fgc`e3= zb)FG{h2N{q7<{m|YaOR6m&(r>zJcf(k~Y3nksoPHx{h9Eh++XZ#luxqQo+V9iyMz# zPKM|!@Q>}0c>^&Fvr?zl(cp!NDrAQaQ(q}+Pc%_&6YGqDY$YwL9A9cu1!{ar&L$IT zbRYq@QYAg;RxD4{!uKGa_^E95MYIrpcS!(P?wl;wxvHeUUW(a%%O}X()>t1fpY;>a zK6kpar(u28f-Q%14iCrQB>D;beGgGo@i+TOPulY{C#_JX%s*9C$@$#mD%v6WdlUHL zPekoG`1|ZM{m5VdeV|7dAHYGN-K&r+-mZB{}_=5pg=js(fD5o`cg*OhahN+$XsoeDCg; z3J^E!&7Z3A49n59bNpjb3+L!HpU$nh<$zbn(FgydcyGyK#12@F=K3QZf5PX_!jw|l&S&+$1 zg+OIeRV9V+BvS~ZTk(Fd*E?bh@Ym5Qf_b9I=iNWrBq%4Bc7Z#=5MqN+^_Tt<6r^*MGsR=XmTSZSQOq89Li9eML` z*E@GZ@gv)w`j8dfE)Ho!&jb%d{|!KXlHvufq%1d5f4v;3M0vhFrFGmhoZ{Kujyoxs zWphMrvh(5(A0YvCpWGqYN+-|i@Dz0N31VbS@AgX_uNvY)jSzQu^>BSgrPHj}J-=D+ zb{dt?YtVHX3HcHRCkLm zo9@-k>SAGev=R6}$%AJs(Td(pRYEzDk3aDO&-XapwcYvZqzTo}O%Tg}|4~srYIiR1 z{A;IPo5@UX{oo5cKa9FeW#_uqGQ5d7JM*&}5#f(g*d)lO zkB@pL+%OUrk_(C8!3_%3?HwE*KzQhPK@sMRSwl}O0+KxqYvwRhKn4)5%u?Ad!%j+r zt(8*~trc0pC@dB`D#o^2P6q9S2GgHueS9jt9?kM$i>gXmE?Z4Dj*i3oAuX5VEz3ob zF5P<3LzNax6|KiDn5__p&7$9VESR&^31?|pP{tS8A+lWHTvEIHIltDk(NZKFc2#l~ z22>Zd2z2yXUZaAW*UHU~SFg2uZ4W0seZPx5u(((|?J|ZHqT@9~j6|U0Ra8_dtPFHi z=O>Nx{^kZ^^cboMplD&8{?$S_`7IERAD!2;5@e307{qy~%an=&5I2jWqk*_sZUBLC z=YV-0JD`Kwn6aJqRQ8WimSfn}&&`ctG~LB8jGB5VN)^B`DH6$W2Q@0|3L$oDOoJ*9nQ}MPYqz=y~y#wu}z65$k<4wS1jz#|(Zz%(typGrMDgE>4*Kt1`Vk82oeoRI4AXR)FM<@D|)^Wd~Dznyc|K)Vo!nVFz z$E9QpSo=LCTTaG+!{|+hA^22^WjbVj-~RsKb=;w-%M_;qAa^v1jt1o1i~$1Uc7W}O zhVgZrOWE{wP8tSM-M>QJ90T{=a%d(MjCC9_QZWpqrhXt;A&b=1h*-x-VUy}JeSB0% zV4ze!$%S%Z;KMMb90RYSCx(ISX(SjpZum>YMHT~d&X_qb1=5&5X)SjnI-D*PrrDrb zLgP2VYF#5kLK=jxNJ&KESZP19%ax(IC8}>UB~ro?g0`{h%>hl3MHhJq@PV< z*}0+4J80+pzJs_M>!6(nO`_KaO_mONVu}BbT&(mfjp88gfU>W8=pTvVrV}i|N%ais z05=>QC)Kl@uDO;&5#{zYHhQ}TlM^zWR4+i$5h*v2&j=y~W>x_m5N_3!XEO&G@*ThE}^!#Kh|#w1WI0+B5koee$T2LVtXh zbrMW!C-3>IWhe^6F<>qBe@9ITc4m3<^oV}%^uivI$~p{!TH+m4N|So`6ub8#4?->tbR2!l&hJ{bn@bgH%~ zW72jI3@)(F+vRgo_HGn4C_8!>VA+dCZD#y=&KKG!M@m#*cgRV>S5ZnKr`Oij>Xn_Vyu&1;cNmsE)-m)IRHP0a-e zrb*tOlC_M&&3B5~yzbwf-c0gEN&Stii@b*_--G?5*4=Vr*lf#!(@&4l; zs7wxu1~R3C8E4dAuW8R!js8K8`Uk4pN&dG&zEDkp==)S_!nI0k*=da-GTs@| z!`EyWRb|j5-KID`u@4C=?448%m-n<>DHk~{*(QQ%VhmoIv{6@<6xn=cos4}biW){n zPVqC1&QU?*A!G49=w4clMi&j^Bnj)|+9|>y;~wO1T>NUf5~+UP0cY+S4dUyeB0W ztS6G0TRz84_9qDtc)y@8C^@EUGl==!VTk$dA&E&Bz<)y%vx?;3xW}R9xBOZiNx(Ze zM&1qlPOkwSSNC$CCKrNCwQFK#;7QVHazhzNHSA)=L$4AyyfC=HH7>XdkIp>;JCH(T ziEb>LUShFpi;K&<0V6P&kYdFv$*6l~MyViyQB|i==-?l6FdVE>()0u!cb3B!x}sbz z*L@!$;JCn`-oa%(jh^3V1wACb2G9+_MCccoG!Lt@mbgH8q8VDSg_2a=x7!! z?%4pLi0L4=BCX}!{l?xfIHv#yq4vC=YeD&w%t^9HoG079APLZ$=;K%WY4ElKg9TG`o%%~6AW zI#~IryNLw5tG_ih-;SzGQA%f64Qv08z3+gN>niV+tiG}>%SA478CR`jX*IJmv$HE( zHnLoC#g-|yjP}mV9qo*Fcb1)56)-grFf5@78v>6KLx5012rWE%4?U1a4G?-T^}!3F z1bF}NlzYm(_uPADM?(DGb7C`l?>+77=R4o|J|TAAKuvA2ld@LP`9vi%Ji)B+fRGag ziXP$VT>c2HW+EC< z5tvAXB?Ktdf%t>KwsW!>gfjK{Tl6Wp2Rmxq02v!DVF%;GSp&lvTbj{oWu#I|**H@Yh=Ir z64tn|L%^-g&K@57&9jZio&^S{fEPrE`J3JJ<1p}S-5Ea=nx}|FG7iMnSYNSkAS*)8 zmAI$_B`$H1Az#;c(AE5bBX&R-T5-go+%Y&_VTMR-;R7Rq``38_ceR|>EUk=peAth( z%rjtnd8WiAc_B`<)NDhiT6bdh3pv%g7w!3}*7NYoQaoYWl80Mst+|_LToR-Zw09A7 zp|P;jeJw74$UJ{M9M4LOutiH%MHU;~DU^v4DBA%lv$IqPrc)+kE5#iz7E_a=FO8AP zk2C(nEC8_HC+046Sb3~aD^k z`yQYvO@30VBGZ3rX`qrzH?`jH5?>!Oo*C(M_dT(H# zx-BuW{eE4FUWKJ6xnD{ycmKlDlae^PQL?3X#t#50c8PO6{bH6L`*jppdU>cL;j&L_ z>RlLT>KXm?!`3sZ8j-DMj3CUHLF4x4{0a7F(%K8ZPztRCyu`Cfrf8^q(AE6GBWdm# zppkK5M)8{7>^-%f))ln0BV_NLWt;it`b;sb8GLHGA%pK?On)H;-=ol;8+;yq*#=*j zyrjiW!60^JCR=1DPy}#cFYs*HJjk*4-0(0H?6-?xCjtZ&-IPqoqb$cdu{) zFq?JvQuNiMb@z8@n%%l1Ns-#Rdr`#foYvhTG>BJQx?z>dN4}rBr{psSusDA!$4pnVYfZ;zq%uV7z(1zZPUH@VQZEI86sExxsX!0wprp&T8eY9QDekrI@(&J22P+EV%ht>f>fz8DrXJoxWz7YGoAPkt`F{ z6XaB3e*7L2Ol!dH3?(T>T?__v3M1+^r+f-4x_#G9me7PAEKlN04R#@oi$F(w$eV55w3i<~;-j;CQN<_ZpQ_!5hn0>iLFWrZD1! z0ItH&NV)(n^`YtY3WbCPAA*O%0bJ~@g8c1H$fpS4dKgisBPiH11@r)}8-uZ1*V9kb zCUf=V2;jn^>;Nv=qd=NVEE01G-;3lZr*>AN-iT`BX&@hmm2mxh5B*~Lnf*En^z-?1 zvy;h+`LsyIjHWJ)Jpbs!s5{u$gQ$#>TrlSZL+P-FM?}@%7tk_SOQ}@-%dAEjR6UL7 zqUlIg|NLOQBY>{!sm!>cnjV*vgMfMt%`>GVW=Pk)x8Hh$%$>&0+E~&w9w^Pv)46H^yt6h_ zsQIjzoD_*Bk-Btq>#wLO;EyGKO7tQWXTDM#LwU_wwK`V8#UfOk#1)e=g8qHv`z$qz zq&SU0)$J@moSijJZ|JJyMsas&6x|!}l8NiB@)&>#b*C8j}PCcMiuv zsH&9MXgXEdudqa}%KnRfF;&KXElicEDfL=NP1Ikw0K3h4a;!*n`2}k0QfNYqCzfA0 z$xt|aMvUCd?PcqEYY|({T~5or{T`T9+bEv!LoNVP@R$)KA+~VG2F>TE`m2U#c#I}L zs~HL{RXY9+F~5|9R=C&LABt_x4yL+bL9bTbI*WScyUISCK}2_a*kex2dKV0CvF8qI ziX4neDzsJr77NgCtt-%;YqW>rm#xt_a^+dWazXE!T9c@Na9c%KNvYPB-&1SPw(sGb z1ATQ8tC2xfY^kIRk1){~=2p?QWSEK5M8FDB-Pzi2+_9vN=eo^ly&A$@R(o$^*~G?) zO%rEL#6>5~O$^>dqakf@uqn*|`a=k|erpmTXsYhMmyWwwcG(7ZNMtv%gEVQ6l$P|#4P<3k5i^pL!F zUOm|LJL5SdMDuGRGdb0W*qFK_jYuA6A=ym4b-XzwqdYUt_i5Cgi?L;FURvKzxB51% zqHMFa9DOt*E z5A43X!34O%NIVdA*&*R$Fooj_wbYNNUaIA(iN4q%Fh&=pz`gD;|hMR3aqj z18C%;b^27?h#^QP*}Ebn=Z);szJ|&D7+v;AB0r?2Hi@LXx**t)NY}hrwZ;@z;>xmq zTVXy~qOEukGmDXEtLR-UPh^v5%g~n#%MOWl5}F=niAHzo7mL+8XPM@%f?x>h^Y_3z zXNa$-XNcc2(slEWUg_47IemzyHeZbg{sF2) z*X$m;S8+{i!)jb>rq8?H>|VcnsO6#W)PIo zd!O`1mk*|R+K>h6=sxxL3aIy36Nu-TESiim8_?1?<8J>-GK&dKb~}Sq{3HmdBF*is z>{BECNfb2?UAt@7Ee0uH+1@`r+4kzq>AkF;JvW#eUUSl~rzPOyj9w-6T2B>}Uzr-p z8tJ|)0TzbM+Qr9F$&Oj|x-jWJfX`Er?q9P>M3FANi6`B&lA(-F6TVUae2+C)JcVQ- z(^Vi-S_UW6C#EOU`x#W?Cy|{@&%3GJy}CU&T^GVuY~x7aijtLSNpq#_Nm8YHpy2uK z)bP{@@|y{(UI;;cm(Y+#mVS**B8njCO*}!aqubG()k8o`s1l>Km73<4JS35 zQDbIvZqw#m$M^5vQ}y>Yr?>B#jZWq2_R`-5i0cTCr|8Jj*PDap^R@nZ>A4SK2YC{1 zY#wM%4{=~}hq&pR=WqBHa4Gvki48B9;DUYgYOSqt>NUbQzb+arOce~ajI^!CG-lZ2 zmXWhnK7~l6pK2ZZo$GLBYwe(^%LX?QE3&n=StE1Gi#PEZFVpT)&WnebFn+1|KF2-Z zwdf*LwqYqALLNV>U-MmKafd*I0q_C!4SS7s=#SKbUgKWSuMl<_TF?*qecuN-EKRU& zm%}aIu7T}s?onJ|6QdY`R7*)H$btADYDFJ%kG0Q6(fmoBxtW>vYkNYJQ03j9x2;9sqMssa8l`Uvoq!TwnA-5oAzD6=s z*|T=Y3=x-b++UVJ`Sj@x+{JSV`!vyUUsoHW9IsGEuF*$Kpk|E^MFlkm*8}}8=`7}f zm?n=t3P8{UBC?#9jj+^me~}`H`(OP z9t=`L>>5tfYKL0Sp;E!x*;?x-XxbmeVrN!q3EDjlv>QOz5L`BJ0sWBRvcE9}*Ug86 z?l6tM_p1cNil3Mi<-l470kK*DnG1+drxy?(O(30+fN+Z);jbP|(W~%RlYO2f%r+e<(H-C2DGKC{hMRok@yzdTy!;`3H%}0_}49XPaGw z3UcGyr0?YKL9FhN)S7Qdz2;OWC4#*voA9;hnN!|L|3=u1r)fQwyg3|}g$7e=*K8xnWb&^$Q z{@KojW>ZP`qAwSA9ebVo(X>A*$*MsqH4^0nf0|gUbB-AVF!lLl^vT(vnVt=vkN_y+ z7{LZaO?_qq83ZK=LjI|Q#zzF4+;unAu>mVf7Ed8r>@7+ZPRrnAnjtu9J%dX8B(js~ z5e|-Oq=u(PkhO$W>q51aksv1s4O(zitSsHbCJ{xD^d_DlnzKbPOSqggzRK1-3hlRPdme9|^8=pp* z9hTv@eKl)9dp5sv=Y)rl`^n&PfqI~r@oQM74zGAVP^R=Mn#H=-mxHEqUWXPl?wikf z!>CQ#sFsVPwHk_i`lID)ZLFFv__dKjKF{l_HMQJdJQzFn5@)M}Z<(90)umteVFIl= z{F-0A%RkT+>qM1LdUTS^o}#}ZCZ53C$Z6kC;9OYb-Pzh;xj|kr9od}3RFG^fa#j<| zZ|WZMXl@7Xxrund#M|%ZX#)>Zj2&IA*qqxt*PN_x&egrH$CLh>m*MA!RjxHQ*({0H z1otQ!8u*z>L#a})oM<&N3D22jjmC2cOfyDIT+v@1j5mL0+Tgz$XP}{(gWKS!7G>Gs zB9jy*-)lIK7xLc)gi7w5Unv{N=qB|*L2*Mc!RX+>kD|xc$M7FhY#C8X|HR2it+jO# z^%@a}XfTdY-NrLDv2w!1GStS1o|us_;FL%rW`MJT60=13UGH2&%N4424Vt=k4<@yV zII*3qkr|P=jPWLSei>nX+6ywr_-6|KHTT?I!F+rAHg_gaqUNq%(A@c7YVMEgeeV1F zHTR_?1tX@eo@3_x4>j=@^gi+D^geOZTG3C-6qSVn3!|B;*K8T5?U`!V=O+EmRw1;u z3MmI01qXIb)am6=3v1F+E|r6>5!Ar9ND$Rw}5CJ6cC=`Et=89vL00jMhi< zR3fkS9zZ=%Za*3t!nLDLZMIqUw{6QE$Zg-AJ2)_q!#`Te^8IZIML-v~L;c6hd6Po} z19szc(=?{S#L*p0c%6yC0~`79dZI3YLZsZJPeKDjwn)y9|T>szCb?*uU}?s!@<@|hz(zg|CqMP ztB6h*k4`Mt7*zHH;`^@XJ(5AqR3_&pQj=uQ6kjS(E&e$d5!ty@!h`CZ|3R#SdmkQn z!&0ZoK(G)yZV3RKNpP@)5{1Ef6x@aFBDRVXVu#4GT|zpt-Rfyr1>bJ7U%l>D1z8?Z z`X-K#pzqCumw>+6M+#{}PNZd`?@d8h5}&L3MBfyzxIy%ug1#?w(6a~56-)lh^Zxp@vPSwh8#Ks|(s`*z6K%WR!)hkugk=(~bFPy5|>8V;Sdx2E_EsW2p zn*CZBRjZ98g%-~bP#p`8(#dp8yNHadcf;_+`sLO}+I9mtow zb*}5f)f=Sm);<`brs3Pwp$R5#2$u4Wz*t6V=hhzy)tue6=CvxSuB9MIu}REvZWQ2*c%xvu-U-_@R@JGP=xL%C&Zi$>d>V0iEjh?^DNErZ z>0lQMd1{(+YY%fR@F3UC)Kuajqm=OyHI1OQ&J`-h%1qGEU|nhNjtL0vYk&PbXN6_+Nxye0@a3 z;>MHMA)gM~*pVk$0SiTe>e=0$Q?U?ff)Or!#-xVB>7|5Wu3`JAIB-ckbN~Ma<{e@IT=g}{wirBBCKoy&Qwh3~>gQaYDO`_jlR3N?#e*Tgq|yy-W~v=SEX`3CV8vqg|q(e50g@9_Au81S1Ju^ znntMvI~#R_$=KN(q>e%=C3tG66#0~PHt0^HJ=U3W>1=?0Eh)=t`=b4LaMlK8yD~s+?2fKp3lgjO9ut^b^b=tb{gzIsQe=J&h8& zoGBqe3Bl&)x+{@`fieQ|SW9GQkeeY^OU;|1?Al&+QUqTBBMa_FVeuCM=zCRi8v%r$ ziC(xs+V$qcvvXShOD>0^DNYwGN^lA#w}hIeQF7~UW=Y(=$vb7r9MX2+1L6=v-L0c8 z@sw)AtO{Cbn(Q=dx`xM3`3aRaH8kY8qWiFhJm2cqX1u46Kkb;AgNNo<&K%srf}2f8 z5E1e|d<4XugT8cD%b+2*py^@NkQZZq1Vdh?NKd_ELpFZHq6oqC4N~7Hqi;^I2OpVQ zgAyTS)1WleBDBh&K_xp$LXTe`p;Gt;r67uKluCov2_j5``t*xwQ1(Ta1Osv+kEmg~fe08{7EtZG# zrF_++Sk`cbs|6mjy)QMW)JlY&em6C>^z?kLGU|_w7= z1WKr_idE?4T;{`CoKEASwD{*}K$jN(ytSAZEv`=c3@!dO(LHH#^91kfR=*}aW!vX| z1%2saAcGeF0h;zni_`ju_D#2G0YphK3~O;4ve^lq`u+_1=34yXr>AzS5}9Sw;xyDh zp;ZPgE?H5E{rL51T3iau=tilu_}TwQYVmXE7t`YG*HNIw2WQ%yCaZvy7({Yrlyg-! z?}sj5sX7a(^ASK!sB`t1lGUU1x`gSLZx26 z5o3q-dJ(Kp5VKCB*Iz@rSq_h!wk+eI-0V)08b`e>?0@n9p3K5U332Hr=PX@C>E`l7 zIe%#H5Vb^}-I-vkj3z(~6|K9*aTs&!-Yg%~PUlS^D} zfTW%|(i7Iqj9UY8=*ddC!)k77l^839#$@7oD_JR7Af`CNo_D;kQ##+=l9fSLH;d_W zfqvXS93DTyfz&`!a~1Z<95oHuC$+JLSFKlvi-mHvG+ObhjcTzpS}T_Q`k3ce^C|3; zI4{G!G@#2qd6u=982co~%Wz0^ANDfbXZ34RQa1bK`RGd*Y8mX4SD=S?>!af-V z*%1uG_K6MI>?BQnKOKE%_A(HeWwTFcs9ChiV4p~4i#9cESs}a(Qt(GNN@bsXi6Fwf z3}2>S%syeijsp8+>!jD|?wLZ`TW_zQ%2$7Wl$m1n(hqB8O{mY1(eg9GKc0e_LtiUN z{l5j3NDSJHoxvONlb|bUyKK|hy!9V=-=poaUbkKBrN^2up=C=;X8C`Dp|CeGqnEaU zX&w}7NMp%Nl3_rT$q5R{!FMlGD9a~weU|50RxW)M1wa$;;J_waW7-6h1)_+)fdRtY z04x*pY;K=7iPIs`kupafvd~dA^I|pNpc}41q55U>%h=?k`(p`asxkerAiq&W$I;E7{irPaimx%`3o>LcG7?@ zQ{yUYG1*Lwn?(0vQ{xt^Uz519nHo2sFI@&@Fg5N#)5B_NTn?fn7=}#^8?xC6p8DQ_ zzB8K|L}uAc4H{}QT4gXbBr8gt6Td#q6(S{bbfZ+J#`6dw%+z>3{bHsD`*jqU8bh7Q z_I_lV@b{o(sdq5>WaGRjOT+A>ABM*9c9$VL<8_35ZfDpZD;fTJK_L=*HdALXGhP#P zCC!W-I*Ygd2Jd?`GtSV>3~S-BR))Q3X=J<~^9UOmJHRfl5-Uh!Wc-}ey-G&j@liIs zPOgzDpCu@tnuGnZ-@{o*)$i{2eH0V-r&)PsVL5aLn2$v_KX#C9F^6hZjof&C9LXx6 z-C1EP_*T#nJ_T)2h(Ud5;EFc+T&C+(f@rqG>l1CGD+SxepKyymJJsxT=*rp9ls8Q_ zvT)>d#!(Py!10}&+&I#!Q$?hlgtjtt9({OMu9-6*2`EZAuqVwKNh31B4cpv8Hu z*{7{$CQVybQ0sl@6S$|bn8Y8>4tH(r(3JK2L-Q9nARl0e2Qe7u6W^j0i7kVLP;Kn* zIM=N!=oN@KAXt%&?*ol5iLv5l`c~=m`!WZ z^su2NST)I2^I*w9%i6G1QL4zsQM~n`jBwL8Nn?FbFoD=kR4QJvqdOGKMqB(ZjNxC^<2%3m~-;;khhOQ)@fXa$aCmE<+>k=}PK|Yyw>XwSuRH zc#%)THvbLImFOZRIf&^x^wlHrJ{(Oo;!Rn=E%E|mw0rSdP|no}^HaDosgBxSfwtVH z&k*KIxXxzN(@;ZbmBFT${2&dyc&^fHdT9tnH%evG-%Ai-HvKc{7qjWvucN@GzhJu4 z*q?04N8gV}(|*|ROKA>Vrxi z#`_*^b@P5aEi%?Z=L?i}`8zRY*e-u4NdBc_wrTA0JPLbuwbMix&8Vw(u|cy8~Ji^q)O^*qn^RFwTtrC`L(<4GeS`Zm0#*)&QNSB zHcP>9(sMu{nqROs82#sikdGs7|+SyxG}9B#Q_yz1*o8Z2K9SJ&2crZEx-W zOf+bJ&Vsg~=H}N}bB?gxz9OcInXVE`Lt$yfY+thmu$j%Y+6Y9k#`KramCjumthVo= zsiydrvT=GbrdNnHMi|bwfb0mIZ1=NDp;y7e26ns-iPMoZ#-}ibAnS78ua9^&zfc&i zmdeGkF>lx(F4cWx+=j=uOt~9Pc=N^6suA`AEV@wTL~(QLRuDxlVS)->rb$O_&qP~p(p~>osUy}1-Pue!8fqn4WiaWa zj*#RS&yJc&Cv|9aqf{ncjUd8Ix;p)0CLQ~A6qt0|>wd$Vo9yoK=DO`Y-fV3G;X`}s zb3F4>vaMH$^4dE4?1vF}R>BCx?uK>vIHDA89VWC@9RGMhT@v%AWX)tY9t^sYX5%iM z|65(W@6l}BsJnRGV2QOS6F?#j&F5p5VMB8l7;&FiUm8R6VdMrC6U`CTAzd(|x?DhY zaPUqwr;%){!|cuO#4O6htD5q*|Cd=Q5ZQ;JXGIP72Po{-Ono>2bx8Cg^m%ctR`d&_ zC4^BSew}Z{33b7`b|gihjedX#E{J(0L(b8xx0 zZ7{avsz|d_ht8E`GmgHGzFcT@7)QTE)BYGoF}K?905yCk zVSaJ85w-m$+H%_{gS(4xoy|6)p+1RL8Ehjdn542xWgAJcAKfUGZFJGErERo%Y|5nW$-pM?T=+(E|f%&d2U+;p}aa_qH!hywS6Vp za=yR$2I6~j*Qxu=Xl#*3jmRLIi9ka=8?7>!2vRCVYkPZUBA{MM(5!kPzz(fe#Cwz~(M@Idm4SI9BPa^y5he;9a_hUu~nHr0J!-WDEJ)x~qg~w2v z{+J+t5QM5EU0r94)^G5>M-wE{eG(0pSkoi{B+_I#6#xmFEOjvA@5K7jm@Lj=cMDLuYD>CIMYc1 zy1_MGt z{gINZ?-LM~t2dcK2bm%Xv5k5+HQgYpT+8wYcbyX|f56LFx2{EMQCS|5KN@V^78t=t6Ej-OWX7Lk9kW z<_8fA8Mww8O%L!*K7zN~q;?IyTKaQAo z>$$+aQB#lzLL9sV1hH5T-?8Z-UanGC;vnV=5o7Bhqfc+(WcWGuX(G2A$K$OASw8k? z9${Zd3pP}+V9Re!x{k-E#v>ciD1t}maXgP)6w4!QhC^%#k(`l>;tZ`(6hB-=bK(3D zN>+c3HBWQR*|=aQ1BKaxj#38~JPb|y!v!ZvF3^AyMf;aWOx8*J0iq4sxAB~c_AiPU zTL)Bj+CP!XS?30|bNxsLa8|c|5@w~7Y&;@0^1p{I1(McO5%gH^%Ty7iSn{V*MV%q( zOV^eY$qYkL%n;i}6l=VQ=E+%OwKkfjCjQ!5i3yc#400a>mf3@jcL#&K3QhaNAm>U3 zi3L;?yF5Q)>P~hE2*Y3(n=VqZ%fX1Tb+Col#og;QT&sLKg#r?;QZn^YS?@@QmZDct z?kH3Np~nilgDuqDS~PzVyfj^;(;nOyefmh@tnK>7L-Xq;0cZq2BpSOsh3N~Ad)3+y z47hr`h6H#llS6}UQ`XwE^&xt9BTpv65;z9~52DC%a_#FoA|^e!X>)F}Io0fLFXZ!^ zaR(Fu=l*s|R=GLnHLwYgzh~QX({=GjdlD6tyL%eV*-n=|k^=KSJ;Zyh*Eu*{V-ZC| zs7elJn6w@u-l%QGZ$YuT_={)x*4r^$>mB$HQSl4$zp%@G6*NEGFu#5=fUZZq&94X$ z!o_0nw_4q*-?>(oDacK&w6&6Yg$KdTw)%w9iJ! z{7Id;nVI%%cTWemFS?JJYa>+f5c6}2%?+PGyzWSir`4JSio(=#{$4Ij{;AeB>0X-) zR}<-R^;q{PE?kLG3|#T-z`~faQw2Z6Jys9c;#24Ywg!}nh(gvf_FCdf{H0L!O83HC zsQMr2QT6xkQCz4JqohaGd)#C7fGR$PKA>u~r!;sJu9oxn5?S(3g{?2T*XF|3=hI{B zyY5k3*b<|p$JQ_0WA%V7K7~GDYi-EHio)5k`d1Qj=0kF!Zn_!Fa~$KM9`SUup6PoXFLrD@c9Iy5U&n_uVFL8J+%dTRX~#%%II`}_*AK{(X1 zYCxY9VeyM=uGa#1RvGBPTooti^Q(ew5!=>^YP3*WH7mqe|iUP6|SS?x!8t{AVStMf~5T27TFUDd4mZeNG|lb?Av$T@Z)Q9>MQ%vV71J(E1ZVw%2!qoIft)#cFHMP7R&XJNSS848 z94daXV;I%BlZg4$rgamhMcYh%9Qni-u(KzFU?2IY_FRsoN1E{V`8k;qN3LDZ`a<_* zf;69k7RPflD!mbfiXZ_J3kOj|db~M;MlydPW+%_qOgb%Oo=XJfKAVQ%lzVd2{I%IU z$C^z%0VigLc^10rk$zu{rW*aGOV|@dzCnO_5(+hEUQ3Y95^PEdIgFxDk4Ld0R~wbt z$(6=5$@MLqT*Jq^gUPiv^ut_%fBlh~`2TcbU3VfXJ`?A=@1&+1B+SH-e}B(+|CVjp zbAv&tECh|*wK2D43$nlK3D0E8AL77SA1*b2pFcE!917gWB_DNics_eDP$(>PE6DXe zgs;2sh)uNj(`TCpn1W)lUHjW}lgP5_-Hj-*Zq8#NV!1Y0pQ$Lp>n-!R+3jukVrsZ+ zX9=H|G-;kC&|}@12F(~*T+IH?ls8F%Ge4zKxG1qMD*fCVKVEVq=jHh^TcX*6PK6HD z_ggg8L`TY7+)=W_4xABUVHH?3K*3_YxR?!Da*pW-z!C44<-Yx-7vwbgYky;&2t6+) z!H&k0@KG#uOq8?sUw)dITV) z#I2eH54DTe6IQ(8GnDvc-Z&NmEM@OJKX50IaBc_fDm@GXd%67D;rjX~7f_1rN=H+hRwKL}-*&p^8avG#3 z*rr1~puVO(+}M{LA@k(i6z>F;LMGca1PQYRi0!%|_ocH^h)VgVB7qw+5w8d|x)zNh zf+*;*CHdC`x{?E4<2w6mQ~rndMRXDs;4SKKxK6`!m9Q%KP#dseP0!@hYt7?oI>pls}>n@C=23weq`wtu#bDvyX`Q z%ia-jsBegfSS`sab7N{E;VxZa+eok#cEtOT!nVIL74}>HOvM=>@#i>oC12m-q;*4N zm{|~rbuenaVMndVP>V!0f@`mF2TY_1CT)YCQ*T!ueI~ zuPLuNeW>+oG(E!V^(1hk!kM97-B`$`UQhT#fPe^vqeRY$^qu2Yo=VS`ya7HQef8)& zI}=U&gNTULhSjTy1Vg>rNU+sw#QTtXwZAdd>pz6m>z{)x10enkXRauHo0HNFfssME zo*>wnE7$7~XVQU*LXHyrx1BeCy2JwA6Zf0KQXPm7Sxy6RZz$J$8R{ za*}*fI31+woKtO7q~Ogi&K2aYz7y$6m0=2UOD%#J6jkm{O_iF?ejmrlE)DO{`TMNtnHoEr&YxuvFncgqI9}&J2~GQ>YEo~h&w!9nI5Tv<8w=TV z{)-d>BDA2QxxelsBJS%Q5wGeSA|h5B*7+t944rQy!PfZ^??XD@{>ISxkGul1IYRCK ze+kRgOBM+`vG)H%lhoP5^_7wcA9P9tL$GGBjZP6_kK0C{Pj4IDo*+~*+eY)x*CWw1 z^N5l}a~D25>69x2-u7LybMT)FeIFdp;=q;nvE?!((?F0991h6pK9swXC(P~0rZ6mc z*eM~YGvn8qjV5{a+i=v+?r$Q<;%aZQ<42kcW^9~LrshM1wC|=ynr1ruI|FUVbfCwU z=@5AiYky}N4NPNkb;+pE{mt$KcS7(F=)~U3&3LmNDmlq0)XWBQb$_~MJr9~n`SjSX`8*5- z{dR%{SI{fO;xrC=rxVE8bo5)%SC7u(529&*cJOOtu&i7w5xjX4n*$rZnavgIc!)(l zQP5B-OlzQ{E_B5f&vS}C&7feK$Q#fLmj~Zs^1!X%1UnLar((x|2WTkbOqwu4=aaef zRu6Wq;!g3W;?AE~tB;?zTD{=T2dQZ=GqL((`kIR8+N;~M)h6=4PZJ+g%yYe+qcT-2 zuG)%{-iu9w$YBr=ff?Ozu%E~fWW?F53dWPVN_(P!wtCTWgJj}?MpP?~16QJvldZJl zulZwU4jzgsf<)N^_+1TlTGoYQ)$bmfUn{vq&A+vA^`b@3Xl=rOTPz&$V){k3M*~h; z*ILTv1ojD8tMo?a3e#G>WTB|QkPGTV;bNmT(Rf^BQSs-2&j96ruK{(-yKTt_MvxQ5LuiUsIRJPT|hU6TO| z7$Hj&1?{`7X~ff376LyX1WpSSHf(wVzmmZ#ei9)9kJqR4sjy*x$9Tcrt5BMxc2X%# zt|`-KNpa;X$E2$;vW#a68!t(XjgY>45jC~-*La{xiPb3uEMO3Kby9lJ*C=NkL;q2W`oMkhP--*7QT0Gu?^-(nKk8vC%6N&|v z7Cj1b;@9ck8ZmWeGNCsIa8vG=coxkfeJ&u28NGAq^CKpG;(I1JA!5s47qJH2e@LGS zIYI1}Nlv&0l}H~XZ&L+~O!;%hwy90>{K~5icvCaDek%2-dZ0-1_W@|rXU84ID1cjN z2G?)kU_9|fOq3XMW997~Z!c~jZj+N)#vW+fpVf;^Ef1$L)5#+V+kv*&q`?>jXW;k@ zREX$y{b`D}fVfAMHpD=5y4y6YpBnRtMh6=fOb1)FIdVFJh6z%wz!aH|sIxYo+%*)$tuz3{Q2;el0B3vC?X-g(ZQz5T+KmFEIz)8FHJhCs*KY zohjh%*gDak^0&^;AtCYXRx0Yfb><-Db(8-i`rVo(1)Ll=T?V+5!&62vX|lZrTX1*< zKH}CV4?=EnlWa8?^UUR{Nt$kYf_yuAw$rrD1kL9UFI>V|+LlY0@%70+6|X%dm|K)u z&y=H0EwlAx>NO%q+c5$I6Bj=oiS4%__3~EyTfo0X{98t4RRew^b4X;ziX&SsjJA-> zAt#0@MI;V+1$wp;he#00ydf(kC+TTJnc<|f(t;cRUqPs(20NyL9}+i_+N z>CfSMVpT~1t=U|)-5na(HcKFbmC@_AQy^vc9)Xq4&@LuMvFqf51um1FeVCvodfs8d z)%0o>V-w_xsV=go8o90A9F-qe^k8=owW<9GO;Si04iRkyAG20qQbxAD?1#`-k9*mF zLDTGeSrPztMwoM?PK<$2)K2z&5fgXrWC`!K*VGZqESIvXD+?TPpe zYKxtj1{eZfLD=sN|UILf_UNZ@$sMesOA8 zg}fSq_4OI?Rc)v+|BB(&=qip3_OVclY%{?95$ESRxa@#^te@+^i0{H9yEixCd;1PD zrv~2wvtF9*q0Xf5&kPpw8wUo=y>SN_2L?CPkzD!Q4czPoKmBP2=VSwXjRD4){TTwf zbcG@ zJ_jfBR=M>Tt2i{j47X^T^+WSU21kh$Gt&`q*S(klm{CoSlZa9QEf3ROz=p8(9JJ>Z z8Slq0YXcaNi`)UOQq)G%6PY6=$S~6yL63*OByIsmc24-UyRmWMH_8NzXv5=C;l<8Y zZ+aST>6%ZM(>j3!mwLF@=8E)RE+(6OBX{KJ8!&yTm?l$n^SSbvR~f10M@JgPe5o?h z@I0?t@`uO#(Q?VF)k{>lF`PjzIU310Qj7{gF6k}Q)GiU0@|=~2 zhSSu{t>H+J)Ie^ z2IpV!Rc^y&m%-^wJz;0EQZ~}IWS0QVI@h&cp&Oiwb5iNzmr?^etwtuRw%&j)LiICV zj)&ky8qdWmrgL1>fT;xI9acnzj~144!V$8Z{h^@n$Y53rK2}f*Y(0W{WoD>i_*MZA z7hvqohpCI3ev|0eGX40HWzFq2KF|z4IXNJ*MDvU@_)Le_*;hSguDQ>fgf&M#{cW`0 z-Zm~QO6`i%@#c3L!F9!8Qmh#v!}Dvb9vRIVcZXU}pbj`1HB(mM@=4YJCPnLdnKB~N z0?ZRpf|2k#-Gi=rRLjpqQ%x-|W#dFeTq3LC^r3rOFC?8tIJC8LV87G6M0|dcmdKAF z2%O9@W?aj$fvo7yRyZN=jMn#KXc*9iG+N7fe|WSwT&opEO2d_UwLUg7>iJ`ZYGc%^ zR`W1gO<3DHR`?ktxxs|wgT?t7l#uiFuK1Dln+aA-z5N6IV(N|kT9|rMQ(B;>;e5Z| z>?XPyB2^r~jDlcG`5U1R*dI!Ud^woig7tw~XzNSVE1!x{ z3heY)v~YcImdnag-s`8%bvVm=J&2|*hBmP(%6omEH8SVBTBA6z9;3h);yH;TrFA0z zRLEGql#8KgN^AWp%0v+*zK%gtY^BpwM>*L&imN(`7{v(Tm1UzK*CE;Q4{W!!^LG8H z^W1~>P$q@X#UbyFhy@4QRt2&_Ak6^cF`IaiIjo6(Dr8;aUXcro6^<-}I93SxB&j3# zTa9>~dqfv`@DY0gR+>hknljO{;4r!<4P%kXIMb6rHihs{s=0BIrxw`y0JwSqCTpt= z3~?iMKYrOpDw~#cPA;dv5Ot#&s#0pgQ2me)XJF|>&*buZ5Wm&FhZ8Tz^dxpR+JG;T z-SS}`N{w!xXi?F`Y2s2YDTuSR-^kKW9nT?xL%)9iOsl;&v20@F#HNX}V%^Pi6N5LA zNL$x>x@b${cG<*wv^q7m)x`FR%T&u?)|b0=`5>i1)GH+zUK>J5Y#5h)==vIJI(R)rCzunQ{>D;LC`Nej zO>|dJ6{Dev$|5kgs4_D{JP2oxFj6{t4H|5v2Erw1P7L>}5$xNo)tURK3)0MhfzjMt zy`OsJHqjbu!rIs$w8l1VKYNRX2;whjD?}%Hdc0}jVJqO5pmba-R&Pls6u^9dwTMqih|DV_i$>1tH9z`qeY>)v@@1~Y>$_)KuyAkC z_>73pOR)$AXnWf61AB4z?0GvKVwAfqR_I zkwcs#34ROW#jAp$qIeNOZF~f|{H64#w$vM~=J8ae@gI%Z1OM4mP0b5-s{DZeC`~@W zTJYaUF<&0_YQy#FSiXcC52LkV{8b$rt&V!dQRe7NJ*LioTLU0z=!}O{0{=k_K$L~~ zj}{Zff3*ny8y?DU%W?aXt^iH9Sxh$K*PGK@W+rg}!}IClv;dltwkA-nBnYPcNs4jc ziSn4j?Q~IRkVmhZ40^51h zD;%EE&jN>U4wjPyX?1`hqEp^TP3`EE{uVeqe;OADbAz4ktg340?++vcz2%}{(5x=F zl-@}G<9{gP`ef=QliU+IZ$5@bOof;wFzB&v3!9t6pk^Qz5Eb)W7AEBwX^GjJXFly_^)<^IZCu?GhcOvLK0Ig9I(1t98 zO(?aG{f)VYIE5@0Xp{(YL1!^<6`3qsZlcx!z%==4#e&z01q%zHS}BecDy6E|s1!?H zWq7pSC>1=vQX3sDja2dlrv*;n6p=R{PQWpJDw6elfPI>ntY<^FJ=3hk@*e6=vkxNK zZy9?f`A__%AUl{EvKj+kfJPAvNRNAGz)PuhBm-V%^=o238v|}*Q#X4^$$;0Q>0xES zlR=LGXblFmAsfYj_BSR2o@OziNi*p04C@0{^;(dXBA2QY6$T(PFd~&_q3H`oES1XO zIW z%^nO|icf#@YBcQ=Q_}hfo~Bk@2igokYcQn^*(j#8zcHC|y~T4O;z5^ZS>G_eltiRw zrG1|hAqF@zuqNenr$umEedWKqZFK^l(1K4$z-e~o8=meo_U8sEYMFCh8`m6hS+NV# zLheuD&AsWis~BR-r^Pg;ypVGTW;r01N8;aHJHx^ZWQy`-GRn z{AvOLWM|aJ(tYAR2xy*acIZ3?LC*oxqJ|Ur6}b}HId~mim;36u}%)=#xzk7 z+)B-(1;H+>XOqyf34&YL2m%|pQG&q!#uNm#!$y-4 zWf1PnG8ohK=~+Ot&JI|FVH|kRBi(;e^86=R9mLZG(Z4ubvquFkjMxnOeQKwl?ZiiX zF1%f08-Kc>4Q`_BPj8}B5-2{q+CQ-~|_#KVQotIq^Rop{M|q~I2}x-FR7 ziKGsw;eHctXOpy?^`~$MO2&>7fJ~5C?zWY33R23c2THoVArp3m+wHXsT)?Th!Jx;w zbi)UcrDW{yOeuJp%vx`OD{52nVH%MO#5LCE8Vh{XnwLqz*<|Af+0xA(Qp(29p=p0) zV`!~JpXO$TYRv>_GHT7(&?na1s6i{@eaOXUe`AW#ho-0L@o}PR99=r;8dGGsjhWjp zkx#U>{M5p{Dg1D($w!wAV#lZc%4!~uc1`rzV`B2B#V$`VqTQ@N5|K)Y5VE*L{AqfL z_-ZtAMF(V;h_C7(9Tskt`+MsCq<1hE_)TsTm9lt{oBS#_3q*@zn++I#l!22Xdvwvb znI3d}q`Ikhh6Z-za5HBPnG74bd=7W#yejUm=VX6FEDT7N2IXI3^W16TD>}>^E{x>! zk=w-MWfy$nl347=3YF)rH07Y1Y=lfb8;v3?MtZEvR8v+4M;S3rn-OXq>9iTO`Zed6 zO(vGu)Xg4J%ET+sv_CR&Nwm}ETrfZYT0_p+kOiNHTZj8TJOJTagd>LehJnfnPhQZYgV_K#ZwGPm-nGhAkQ8PXd2EAA#E0R zhvwv02w2JmEMuV6n(yn=A`Elbo>PB>|2cy8g`1!@I7RP^rH(y^Vli5 zjkf}+9>_#pLUp{HAq0$Jn&b31UUi%tnAv-x4%jS#;zMg1Qk+`$ACmLQ{~FVVv5q?~idxf`oLTFi!nydBm@b zB9}s;RvPgUdtEHl>xFWmJX~uO{js!XST9YGqqO*JAy<#$7qm4$E`kD;?^e7e7X?K~ zQ}#{WMKP4SZGy6Z&&|M+WTvb)htCjby*JX?An$(*B9(tC=fV@5#A$Pwun-^1$S`Cf z(qmn6;)6(st^J+JeSs4qCZ6&>8bvrE%y`NdS>wm+&*XT@Lu`p=4>~j)3iNN#RO7V% z$5Rf1)&mq6&R83=z<^;DeP}di}G@E#x9gdF|7snqe%GuPP7|H%Wx>ZK>(S% zI&b?{>iCrX36zsvWV}pWQp*iq*{pT%ynPy{-*?{Hp2U@k8~v%OKf5`18>-Bp0L|V0 zU7K_23g*r7qM{NpT5s5XdNVWF<>E(8+{Dlh&WDi0I7qZ#1J;>5f`=4WHRSivyHfpL zonTh|kwV_LQzMVyCgjgI7>GmihaOwHtW`v8@g+xr+^b~6nxLd z?4`!yUuh7|(aTi!c`}60L|;AHQ=9q*;pJk9sbMT2->I5pdyWKbP$`k>>jYvU3eZ<5 zK(7iu)L?yOA7TBF-eG-H-(Ve-UNt}y5uIs}_Y#Oy4JvN>K2xG0LI_9UprLSZQbZGN z+=)J7qux6Z~sV$?gCFnE4e74Qht5NvKo15&iBC>nD+1f;N9}a})aM(-f8iF%n z89^XE&!HeAEFb=PF8CZif~n^893^$2{a1Ga77sl0%<$oPAdIcpz>RaLXpKl33Z%hd z!bpB|u23rBzop_Z{);XO`TS_~Dezg&nM;32!dD8@Z%K`50WEPC`1nYEe0(!03WaPMv&p7z_K;Fz?nl$Zsxhg!Z~$6EW7?37(wO!)rp63uriGE~z`)Ru zBvqE)YumOQD3+1mpqZ=WCR-;iY-CB{{q9z=#0#C|rW1=w6TyObf{6JcAo6*l7b)-Z zmBMh|E7kM)LTRj07_C-oRk~D^FV<=!UIp^b%-x~hGv@dZ^c3?}f#nTO zu!yuRw;*#>Tq?BJq64Rw$=rPDNq$}xj4dxEl=CWI0kT>b}t zE9(12Kmk$V2+>R_a<}}9n%cQrX3l0wL3e7?;8Qc1>n9136o*^HXH+knSM4gGKGG5ZgG=Or!hte@Uq_r5oYk=D>AfU*@`rEAKnckpNBKu@L z8XMr&UDOR1a;vrBH7?p?4P;VDHe>fr^yMNR$LW0&O&4tJZd|=+(KA{vLaur5{62H+@>{)T#}72A{8LH4mkKCLSjMj@#HTN&rZ%4* zb55Khy*8v<2NN?fz2v%STq0`Lcg*gcqw0>iEn9NXu`(YAiFRB+VqxObxQ_%c++I45 zrwi{mw`Y++({mIEK%QuEl;2@)mu7=i?uA0ulPd>D8rXWn**(P_<`@OpEoe8+D`L?O zeoF4f9|LkWtr;^P+Zt;LQs0H1E1bM5HBN|l#3uY5jCkVFr>C{%C3aCXqv0QznQYcj z3g%wL-K`DaQ@v1W>)q(P#kqGA-nCekvy16hstTFCIO)ta^TV%!x>FiiHIJI1`I286s}_gr!+sGd zl1B=K(s1fD7jI^i5I;qtTyd)PM)qlGB0OhT(w;5kfc(|yo#ph7i z4zs|Cxdqdw<mR{6+!q4r`!z+Q>qnV<1pk0w>T9q$ki4 zgGl@&LIfIbIn$@Y8T5B4$X-~mWD;hwVBHfCrEO(Z3TdOd8;J^lvW`!5qd_iU9i?qa z0Q1^^_Yo>s?LYQwVYUCbyJ~@T|2FgBi#`0zC$RwFxluK4jV}683Gf-(26o8keGs+h zC@b;i+!Ty;Z?7*Z15&(6C_H8R(9jSvqT`~Z_)4A+@WcS(VRL$4vrBhH#os*kn*EWz z%;4Xr=3=uTohUc^`k?uI^Kh0KG+=s26!|mi4IXEG!aWPtQzgCL6HGkHi8|Q&GOFIS zzJmW4E_@RPpX7CV6%1PMrd}f|5KbLYDqwnV(5w=erK;fl3rrX*SRp=;)=BWUBF-hpn>yUo zYR-y`f8?+F2}+zHOgA|D6Ue1ViaQ^D=RX>;}|Z)c#eCl9ttt?Da5P8)RcC5 ztSFAc-YJn^OZdjTRWKiQ!@)(NB{ap!Xd293?Hs+vF^YjDC;#2+9;*jD@hS8HPbWnfIZ+t1 z(;H&*<3Vp!h@upQ8g}_z8CsLSb zPZZj|2%J+=njWA%V7K82pJm8Mas407~_>&K0S8(d&oRjCC`eehpZ;aH(+X|t-pm0 zyO4UwHv@yb9`Ymb%RFzLw|0cGF!CB>`)F23mb*H*rd}&{7@*sJS4iGt(OuRG$t|mW zmI}#xMO)gsWvh@J%sR3{a_}~Lh2$gbP5^Fq3m|aUV^pc+i*~XTR+MoSSApnUG@LO^ zs<*VCE8X{u5Drt9RDL=&g0>;P--5nz+%P|!eX)!X%&3=F z(iq$~b&3!6t8%G##L{oJ@KA$f86A50s4D?3n zicO>v{r0V(Ybpv&_+b$-r^Qi`20S-1i)oN)(OU#IKY|$vY_5~oG+Svi`WStj>Y92Y zIzPl9VbX&hgX2Kwzo2Pf(7DNlP74U6_eGRb6h2RiVr3;2ZB!~#VPY%1O$Gd0#J^?K z?zIceYol3Gu~9|swK7uj)@mhWryTaGg<_#v@QSF-RvsCp%1_Br=;9`)DL$jZ$K{8H z8S3~DA}r>u0?V%w=!up8bw#27B8iI3PzpT?{ing$EdkOhF{9~A#A~jjrgj`ye~V#WNXJK3K|XrIl9fsYDq}p1({QJ+yp(#;#JnQV zDvw4Hx1H#*F4;`Q8Qc$!N#ArWwdN|(Du?+{t6x*#=?XA8vB%YH>Shl*Y8@hT7n*7! zGiCawC>3az!xWT$EGRtyt#RAQhAiYlD7?)6#tim7m4&v)5DdDDeXj(~v=a>m5KV~@ z9egDgO?9Mc>LU26Rw@kR669EExL7FpBVM&SHi9H=)tZN7Z6h@Z2}j{xB2f`@x+MY6 z^r;BG+QdFh48Hn1abTk*Xftw!@H|R8avhm&3AYr8mj(DBGK$>(&XgJJWE8mp>8NBWucPtAVXyJAW_i8dnv*F7vdNLx zuw|P)7%UKedjgdg;2}1o_%TM~W z7USx@z1Dc6KUH{{P&!m#ov2qR9c2G(j3Lf-3Ik345KuiQtasj2!1(DyY56`WNFHKJ(#nm38Ndm_h8on6ImPJ6X(6X8S$ znF69ne}wt(Yr?03I3yK9jPiI1iE@yD6gn$X0mU4O3!xqJRw<`5)|v{%%_+iAU57>y zhAKVQm6NG-0z)+>kVm>rGU0j0Pg{LapDf@=) zp5fz$nJsPdA-Z1W$v910uQE6Pj5mv&6z*72;g06sX^2_~N>l<44g`d4&Ww7qGjDRg zcaXj`JnBOOR~(eGl|*h}-m@>c8%=H$nxZ@jzM-u`q_B0ywd_w#9RzwIN;?coU;xw3 zr^mV|#RrjgzWtpka?=(Gc@B-nMXymjLs9FcPBi@HZwf&7Ls{a>>!UQ%N9~YZms@Gwfs7Dtog?9?) zr&yk5J^zzMdFD=FwFU@zFc`4~|A5s=Jn<1Ji2Z;)GBEwJqZ`<%!Irpz`a+)oW^6ia zfc9t8LDjU0p@jOZj1@;KRqQm%c~sLz)|27N=*VaZX~0JP(c)+$?WSV}UG{g=@g_4A zPgA5Ycew&hU-u0PQXY=8w3$a~EyYDAntII5ctR)sHv@f0C(`3II??{l)QL&kkke?! zk=u|noNLLZ1J|K17j-%O+|y zf`+|RWfY|ZwXB;N>N2M0PfccDVG)?A>Xxx}NF`@fW_+mC(9LB+z1gDynG37TXm@B% zA4w*8nM>|w#%Q71jJx}^3`6PIv+9r1p~AdG$#T!;6;O(?QunIfXvrTP9&J>Sf2~|C zdkw!@tJKpfo!|6b>AWHc3)b{awcQrw%ViP!>Gt#%D(;I!&h1&8fgr^NvYF-D-3es4 zuwG(I$D^{C;u#vanaVb*5{vMVS@B26i?JX5AT?E2ZpPT5%C6bD=xvr3xhzDn_C#$; z?#)CmLb*H*jUs$k^f--jvA;8wOHj#zARKj`@=6+pYnP?;jmG^CSTiu0IGcKTIa{RJ zL&`1I8_~2s>V+>bytks#Q2`bV{bB>x)-Mt7L;A)3#?&uQIZ6l~D?1vdqIl_(PUgj)@vM=A=MQ zSy3ZP=}oFQyX2^mMd+(XEBJUc?T?s>i5j6Yu>oie504F5GG%h#e$or{k|p*xrWASz zxj+_7T^M)a9VrPg=tOL<65s*>Mj-+6g*;N76{@9rrB=dryjm@l>LX)~(fUZfK0Hd% z((wiw5xs~*`9W3*;O>5?%~wb zj-^YPob*JZSLu7_aWy<#*9f?b`wDa#^-59Rbm~=QIgF-)axL^MD6df;sWZPDqnfQixqvv;Ry@@8rO=vlmBBeJw7oE+Begpb) zVcOxNc^8`YM?1+S5(Sz^6jYV+wPLx>X=bq3sLxlSPsTH?r#_AnSf%2MS0=!UrZ2dH zh^xrv`EseMc4aXsJTq75qAau7;8EADYgukQ)l2zJ<|p zwK7~Dt*3TL{WpVaJi`zjh`rWt*r$mRzv0w$w{^YQAexuk7l$`B-F2xkppp628OXe~ z9v^4OvUoi{PetZeut`LbIlYM|^YuwEMwiZS6#4qrK=HJZg?y=O4=q8OYe*AXs1<6B zdZ|&W)$`R++^;O-6t7qq837rm-6&kn;1xf`5c#IsDEuk~QwViO`XiINb5B4du9MfT zq(XBy5{c{N_3G$GgPdj^iR*}_dE&aipkBQNCz*2LU(7swlS`t^Fd zmwu$LyUjHKWv~;sb+=#bO?HsVuGMZ%`*r!(WOJ(7-Cjn0Lmqr;WTG>2w4D&1JU5fW zFBCKXPhe7)8YZV?%GCCbpsV?*erK!O{uT0XMHdgc7vjnj^L;+2G^wS^gQb-#NQ7pBB02Bw^;>R#<0s|RfHDfEP`G>t;}mz0^&`e#xfEFrAwsr42-TtI%K z`7@oS2G4x-Q9#kkd=xgaWb&gEZM)3Oekvs#;T+>QuJll3g#C$H+f<4qhucc(vJ&5Ni;yKhw|A~NDK8trIuJf*gv?Lt zM_iw^D9Lo>o|7;q#&br5Q0ptyA-7nMGZvr;o3B}e+UDw0s07e4GY1dNC!aok34OT? zE{A{jduW>7ze`kOr)@b!?n2BJ)3%hmd;b)+G)R%K%fe(vdZZpDL~TM*yqcI`5DeTvP=29YL9U8@Wgy#rpg8^Rh%#Ze`#wX+b|QaER0GXxbN4o}r`CTC@_W zttcd(NLM>7hEy`l#!z+{MigVoFo+vJj{?1;^~P9fq+Igw_Xsj|R13r22uj4k$9a?| zNvbB0Phyg!M<)@Dd3dQONxCB#TjFztOOj+uk|Zc(xj@=sPm=VsU@=jCBb|*x2b52t zruG44f0HD=iS1`21BfXyL>0o5h9q<*YS7L${e6Crdu4O*sFTCPGCy{usD{#kA0eWERRD< zL^|vD`){9yG`-VEhO{|XM_$=(bIKo*KknjJ7vYXz@?LorWK~pga0Sr~*Ftk2(r!^x zDye$im65Vq`r(9hlYc5qoqDP%Vcm2lqEt>oqX=nDk1c7vCaB=dA)qmc{k18x)92ON zN}~#2hXG)1tb#Q&bCubo_!hQ!vxk&Y{1P1~ok z8BphV#Lnn81^l(41{wlx?;`>p);j|B^bG+Ks}1jpOeEZOmj)0U3AR#=cpp-#_BW>0U^+dwSHk7-POKYDV{T5O^Dzq2rqo!pbQzt6n=f9WRwE!sX&b3>sJt_!S@kkzK}maI`bP@%;Cxw#yx?yI^;e{Z zIxR_v^p~>L1MTM37kaFVbW=zt8rE;6=Fx`r+pV5WftpPuzlBZS?7^U}_%tZ*N7Md@ z=f%?3H;;+aIVqAC`_n49bY zHFIXV0+y0d6lYv+b>S8mVxw)3i=LMfa8geVS%Wwj<;0fKpIY;W^=Vqm7@o9_?Wvm} zLlUR}qjG8yCPuAKv&#lFB|C8rjOOPlM{#EiTbHpu$p%{W=efZ!C?!};qlbevZx zHLBH7WO^Ne1v^}7_~ns8C9T@~RaUhZzZy~n;yULGQus(jlr}lhQ$}e&k-Jk8uX8Sc zRMVfVcO=&3pNfg!oEq&RpZ^=F=>~c3!HtmCAD?;**3jCyOpAiuC^yEt*sZ*AGUv%F zC__>pO6jn-GbAqK8As-WX&bXO4w`0miko~Nr&Vx6TV8Wh(D{TDI@wI^kD{+0)#|^Z zX@AtJTp|&uxXCB>hNpq4KFFpBk$eWbN*;+LO(4?ey3rBO4~ll!)#-p}Xwdhf7s1Ju z(Xpae#r4=RT#qeQ@?+JJkxBtcM;i@f-|hCW~T$cE6b3x z7v^<{RU^1QMeie$H2SwfZJC#i$%GRVe zI(L}1W~pbOW31j9E3tNoHMMx+%yP&;=}KwQf|-ZwNP!4mt{}}qsWO(wAwvVnRvMM^ zaKZEQsk1Dc%pe>;MWP6C$gq}uns~_YkZX7Cy5*_^HGhUqYNa-!5GWs!SujS4;_0Bk zruxHsAJ9vU6^#iVod6x330g&boZ&uT4WFlCf;-qGqL_f*#4|yjG)xA#bNc|}Y|YqE zQ(BL=W)x3YS!jPfXrI<9Xg`m?3+&qKVjBzlp0qdCHi`5YAex{*(28N zn5|9VjIhq_RT;v}RGultcW>*=Of;tt?4be-^>%F!WlY9{ZioHaHokk?%)#B5yws>N`^SmGhYAB$K) z>$zYlPxlHFqyGkB<>0dqIl-ql$|AtdLeK9*&r*5&!;J=_0(?qajQ@BA#0QR4{F+zs z3+0iKL`z%r3YXOr?MDm1=x0Zqx%MV2S{`ZgiOXGt+hAtwC4w_-Zu8-q^gvE086}S|R^d z*m$ISMA!8-K4Lt}M&4|_f=$!Jxh`^4qtLA`h3(c3nzenaYZD$W^L*f zn{<%PxVRU6^=Mq&kEYp;3!(x0ZkByGeuU%@NQscdV%2u`gCLYZu#xZJZ@bp>>o6r@ zH$8!Vg3y`4()#$9ncKOiBEl;Ki3T!E{;j6`E-{#-SCgs?=@Lv?c=O&tP3?_H%9MvY zuH%e|`;rUcLvzp4r%u7!edtMn__HZM{KCbHU<2bHUJ5*weJeGX+?|q6X;c+;vJ4fUoH$g;vLRF)59a?TY_$vf^Jue#X2XMCTvLS zb1C}dyl~xDNOY#+g~bVw(s+SLs?WTTm|*c*0jD0M^i|Z<=79J!7vqF-3)P;xYIYW} z5^$~B*E4a!aB;5}ad2kYRD%H{|^+ZX{@zhHu+=z(9 zyAsf-`;4=uO01%9-Dk{9ny7=5N3lsji-ZFA=#9?Xrus?;VDy{(p#tOMts&#NA&btT zi+i*f&SwuWK8rVYG@bKs2AlXvXnaP5n~Bfd6A)e#XZZz1M!&K)T zUK4uHy(Vv@U(9R5ejOcNldiuPSMhU!vrpU0A=HpA{&f#-JTxEUHQ}vYUX%IV{cI#k!xh z8ktb&&4~+Q$P&&Lf+^@!FY!qVb?DP#%%YOh7kf|fL{fX?*=oB za`9wxf2qZ`zC*p*4w3iZVILhLVr|?Z@@w=Rc8G{ighQnDJA6dQc@80GLoi7o_x&{A zl#Y-K={QkB5}pjI&^m$GVt*22XX! z#+nTWWg;MQd}>Oq$AUd%Qc5oNCoX&U83w9B9Z@>XgI%_m|?G9-!t2ugexLR1D+dsZlHJJRD<4O zQG@32>2%@gh9Wh4I3f!1R*O+uX%yleRwI+UoC=Y~vk6$IjYx%fQ!w8A5kXy8D;{Ui zr?e8Rr%D{Rg9$HKKdQC2rm0t3KVFN63(=1b3gk-iFED_mB&~HzP5GDjQqz=jx{!X? z)6C;ErKw>atGxM>NKKVPiFGa$*bNne{$fD|8SC;65`n~P{a`z^1k{8wC_}<4Xd$F)A%hkHT z_Aax-&fYt)z_Q38EH?rI?(|Ie>~!x;_b}bF%Njt*p&+AZ7_WGsh_}YztthC8F^6Z= z{M0B$j3#Q-Bwm;p{l8cB>Ra{dTi^QDxBELQ`R5aLw!d}0yWV^CY8uvH=(c+a8tN3o zLlYB8E}aWv_|nk%+s%=AiYCeEm4s3NuO(fu%#&xhl2VZ9N$8ZN9k2=OUb zlGvfrczx=g8u(ym)R64#K*b6N0*!=++B0#x(v(3M3thg*M6l*i8wXsaGKmzq+exb% zv)qjnMiGK3q18Ez&5;bPt{4Kex*V=8t^U^tqxq=cKZAb>tuFrRP^(8v>QJknItZ3+ zB{d7+c!gG`46&!s0(C^3#DI7-b%oz)vRkD;}fEeFG2GT6M* zp%OgqX>iy-69p(6#!-bTv;umNIO8p1Z5@6IZ3jr8&Te@gc;D)C;B*Mzbg;% zzkwaX>4{}iER3j*cEb`K=HOTH0aTFuhepGR{^k2p99D_tTR_^SCYrg+pyu`dS$q|G zX%-fs@mA>F;h(FG3cYd(9!dT|KuzsK@Lwp2J$PDVhy)j=Ama~3h617br^eP*{=NCI zwKp7F`~0)`utl?kV{6nuR~y)pOK1yQA)R8GH%{rJN2>ilVAxI!>E$s!LuofJ0nk|n zG|60*b2Fdxq_Abk&!i+ISkGT45e(uaHQ{F7?SqZ+#_f`7L5{4r7F|t46ZJuH5dr=# znda$o`8%U^Cs+rR{zrQ+~IY@>xWNDJp4}#7cWN{yt4KH z^+nM-clZS8bzEYv;a$V$=$_H4&&87(?2ta`P#1AgNhmaf`+rO2W~Y24&`HAh)d-}JXCEBi?dD>l!yuzfQzLIVuNe|CA6k# zbS(ov5hINxe~^ua+GE(Ycq#hLIG8^74{?{|b$HE57d*z~G5Z8{rM_*}L)B6VZq0rp z(+oVYU2sVa!KFQyN5_XZ6z1oxP4c5$cb0_+#PFlt*Kl-cmo2r{ZLHxN)*848n(2`D zk1&+a((xSf{sp>bKIEZjv=4b})M>zjHS^F%#DbAf#DA@1Uj7PymZ+ET2jX|upS9a@8J+e*{Bv*?DTA#S;`^=nljUxDL7bb#7WoJ!1$hK- z4Z0eFH?aDwOY+(;#FJ#jl5Poge-rrv74QJ#B~qzZk7 z>Z%1i(BRV%%=9c=12wLjg^95OXh9S`rHL|l(?%Nmoq|LitCjDK4&55w?+AvsAxz#P zwhC0hg$e!~B24Ud*@Vfba2BU9`73LFE(%N|E?t;>LTr(bz^D%(I|Nrrr)u}%GcpUs zzeY>d`c&=n&~;jc3D%Q~P{4$V4Ov^5IKIb(iQR?^lXFp+bV{VKtd7UgB>eAQv@@h- z5E;t|$WmndZ@9>KQwrt8M224w(Pi+R0i)6lO*D*rCw5!_T?Ri*G)>QMpRev(5aUJv z)>t_46wds~tP`{3j>oRHB^P-2;v}R;WlxFl<{>z(%dnj0Y;X@*8_=gJ`*1iO8RO&bV_SVWP(u7nM^WVgSajjZZUGX8oS!$5_k<_ z8Q$s?q3b=6C<2*d(qq8Rh9{^i5j}R}e%JkosGfAZxx*bXhKrZlE4~&@R^wjqWK(5z z7|TZ!9=rH<=-RO=TeoP&jJs>ELNyuRGSV(pxFXuevT-%qzIWLfggK5m1Y?r@_Z4(8 zBnv2mp9WK4hfRr}kSufNr_`$y?;tq219GP7i*eCgv8&BR$yX^ZHY&xbjO4ws-?%sC zQg8VxG+t$PvEgVEXJje8x!o&RiIOu@d;Lu?+z`QZg#NTZa5CAL zMqtW)j0b0v&Dbi9LlvW`$>qvnr`K;@&k!d~*Y%7~iZ#JDV`dzFF^zGq1<$eTTD5@< zn6=YkG)BH}E!P9)41AAeXb}*S?|&`$-fwP^9(`26HF*(87If}=L^Mr3_icz(v)Th@ zw79&DuvaF`P^mf+z3;~kMlNz+%m!5?Z~dx)yr{rw!oNQv`vuU+CoN5~uYC)E;mS(F zJ62P*7}-ZJTJn7ak^UU9E*I(Jmt@jEF%|AGroWMfXwjM~8KPOtzvF;xaTAhk&;Dw9 zqBD{0OaYVRMa0O~&kS_-_;3I-kP<|#l1T~r7eM!%RD?jOIe#Zg`c@HNcc-ExRnI*q zBxRWxRz_5a#4zz!XNh6b&)Q*9ShrM>```*A6f;Uq4s)k^qxh-N5P2ktJ*w~1umeHv1tCqz#Rk|iTQ|*pmcIWv_bSdd@)O~U& zuS_-jjMBqM!#JOQ8FV ze->X#7R|zr^WFryulna|BPB~NAz4EOV{2g~B#HJ|qT_t}svsEsTl4Kt{Co3Z>xbdk z`i*}UAGT-~hOLU3}f_~1PR^P+Y&ARY;9mpE+PlaEix=Y7uM#=!!tr;xaVtdHA$muT`{!x{e{u;q;BT3Iu5zJokmdDzHCp7>28uiL*>AM%ROHPANc^UvZ# z9?cStyo>#FwShdjgdC8!nwZMrt#G07SZ8yE(1foVwIx3we5k!89JLMqEI!oIEa9lV z!#`IWsFh1-3$-DgVpnXOE)qRbtp(?;POjMSyXvNwj;`9g9zbYawXs}7>dMVh=11bS zZk2lnJlO~7gg6aXZ{BL5JL}b(_gek4T)lY@^+nfAwyQVMs-0JFqOaMn-W*A%A|Uo5 zf`ANDyvcF>X8RsNU~tI>%k4E=rFsj??t#x*6dZuNH!Y}5h0nVmY*YuMD40xTgfL9o z{k4qyVhqK>S7^R~UF8)TzSZacBz}eFruZEf-_4bXbp%kz3*X^In#ZlJvhd;LrtHfR ziiBUM`8S+HI*gBX?!j={{LoqtciNaqEUA?fz7IqBe4w5jmY+jcBZnodasmoL`%=w1 z6{9yV)wp4RaW=|oAtIU!{DSxiy;@`AQfq*;3wSkSMozZxmSj7P5@SblNi5M)n_G;1ixC1q1{xG^zOE{v3*b_!fNYE}jtb$Is> zZ+28$Ynz3Qn0YPJuVoLo@>Xfq*R~3k+s3Nnm7c-{#+8qa&dlt{VN2W;{acH!-e6D~ zSt=W#ljEWX{>)3jr}U_4BI z6?8S2Jn#aCi_2%@{^I<*2>3SwExVv$L)Mj%V7KAPIK$IVgZ=#*%}0xeGS3JP7AMj@ zd~;L2K_>?+I$>I6a;{jPI=3*-f79xiOdg0dszPVa1~_5Yo9*w((lsb;gCs8AnnO%W zduaVngVQ$FLnohh!<|vK(OS_oHQPwYIXK8e88}nW!3EgE1@SZH9Fepe6vA$xf*;BS zxOw6dbmNt-5>zalsE<@f!F(%=Q9|UL4tJ0M(LZQO_dq5jQ)1F<1SkNt{1yuS+`goH zANF=ix(`_6azZq%nRH3_uvj`DAyCpi23@CB(k%rljzG&Koef!+q_f*_Nw**6&a@Jt zCFlk-PiP6c0J=A%+}AA{36^r-u{tJ`h9Twb*=#9if6qtCEhhSqQts8^QtnkLM4w&C z-5tg13PpUsKp1ovRN(flDEUy5&x4Yf+dmGcPslG;IYx!i%IE-GP#&(1brq{UV6=fu zJS-j+Jy0Dy03xn51Q(d)ufp_)`vQZlbzJC)L?x$zXM_z&pcubs(YN?iF0TBTC(*YM zIysCy{5e_lr9R~FH0&;ApZ#9X8f#>}%51{#6tQ?dLZI;50A2GDe)fAk>ePfcZzAY2 z>1PAiCH?F+T>9O1WJ$BXUl6Bh_tlT=3Jl43kwrjUGA@kPs%*emaQX^sfMohHB&0p7 zEg|ji`AA5-pNW(pCFFwt2(|;~L8pA}zz1Yp+z^lYt)l7>_}}O|$;j)jzN|opU$6(I zZ==iw9_C{9bcs^bP(%m*zlpCfHwuE*cZ!3ZUETn@&Wr$utqst_|9zvT3U*zZyh?{P3L zhGpa0Rv3RI=;tl1KMr4l#LZ*XopB)Ssjm~MaCIkv@_io zavzX@yqbV4MaDP7MaB~;l#^X#Oc?1?MlqO6L(e^w_YsMUUfqO!U}oxahg!TA<^0$h)hnr$?0oEMa-TzPE!+9xZDrwGtz~=TM0kIn)hV!j-2X z&_lvkz45nuHy%(c@y#%R?^JAsXv|uPZ;a+vKs?1alBZT8k`{7~Q7e&j$|-~v-?dk3 ziSAluG#;WEc}Al6R)OMVgBjOEmwzuzffF{(7DalDbQETU8anDa_@~xQ;^U#=Mzc}? z z+O*)3kRQ-~re{g$-h6g#hr=rVR@zSdrYZNIBkFNod^A}WK}*{1n*s~K7~Ic*KZj^L zyB*hdkqh@aSiMWhJ&DthKLXnr%I&|c6>!y*O}YJ2Y?6;)!oy=o&pAB@B%n=(z z&~tTmIxtX#1*Xny;M(fU@ja%_>^5ATy*Z-Twm71n7!FyYADwIcF{bFx!W9{moOSNbf7$w1#6!;eWt#Qx|qSD0h+}5g&jNx zF>8$GU)Tx<4XEWUkCBHl?0Fq6vO5c%8ME4(NmgA+cFxlQR!^t3OC|Wf{}=3>elNHK z?3|kgeI%2TWki^E&JEGr%Fa10cRS}aLQ7tD4x$-_sYLPm{|b(hd_6_^WVdtPMPirV zx-cvr$f3~&4?G!8WuGyCEGm;59izi}y2aCFaIYF_pD|RpQIl}fgDioBuiDUgWkfz1 z44wN0xyB3~{MnSU(7@?0wA*n*C-N5pf{dCfT>zghFzwLb8!L~ zJ>kdw@gu*w$XXE|&<-GDDAI3PgxrC-@;z&)WQsP-6`VgZSGs~1_Ow)7D&ysp6!B+F z`KyjLz*0YLux7VUiokharv*vn^+BP$p5lI(w6goGg=E{_N-g9Yf>{*>CODQ{*31yjD6N?#ytT2#VQX2Oz_J-OWwCQUf=Qwt|IIjb?bxs} zf)n$3! zIyfhpyofg&kqV|NCVwH3(^Zw%!cab4=wZcoKv#nm=ZJY+)mP0op{+Yl1}Cmg-n`>N zR1a_^qQj?dlRP}w_oW0vsa_BKOhmHS+kKbk%NY?h&cSgFWPXZPq6&rPLR6o{L9-Fn z=dE>gKvaJRL$yg%UxTi{H=^nV!a#J0bI001k>^2WcH*u!(%XZH=x?Nz{Ii1hoQ3kX1La)}BTLF#{&UoO$>WO&-;xxsLY(aIt0YST*K(=PL*`63NGmcVknI*Q$?Dmcid&gWdBbDQ1RVL84W zmn)ULnq8C6E4^SaZN&8ZqW8mCKHPhZ#5Y1$L!WnWGkyt&p2H^G0knM|ZQHwCu1vg= z8ppgB#+3ZBKb&9gPJtP+7V!&`UC#WH`gF?|2u{lCOqKyLF8M5WwYenUr(25bL59MH z4dnWf_jm9G-f4ZP;>W?jK`c_{%?||@li_GSRFU<4mVk#U#KFq-M$7lbxJ!WEI1`9QXMRfK(I#T zkjWDwJN~&IU0I;!6zu^K`Ueg9jlqyND0l;O^2$x~naNqu*mc+!sVecOR+cI09j)Gc zWhIe#*NG*$h!?*k6YqJsAOq&@d?1aKz1EWRVTZGT9S|6j9Txo}IFaFW0o&w7#Mr^l zWOSDJRsfTc-a|!_N$>d=K(Do^qEkw<`8&~TEviVMyHl|ysNM5g3x1ccwcLY$iPu`h zUr&M8S~gITutSxB;YQ;?>T@kmSFGxIP=&_GKy6croQgGTrkh66o!e*GJta59IZBiW2<$k|E)IKxGL>sL})W&sy;OMYMQV zcq-EqDjE*8_u#0GCsdx6iapYFZNFyn*WUejUo-g>boJ>tj(mE}weUp-PZ1*62Ik4{imKE<^(KDV{wDrQ0y5;ah&k(h z{OZLq&B6}h-e*{j_RrNu* z|6FZgOD>@;Y=v}+6&st~scB_AuI?IQtFDi{}b(W)5JL@b*U$fU)KH>%lV7E?S zkf#h+vE?;;@Y*(1zA6>SN~Bz5IQuF~M=6z{wp!!-Sqy){MU-ESU1bqvzJ;4U7Z3TK zb+x=6)-0%E#XV-RU8o!fuLka;-8Ic}$xSLH13G_UG>8!ye4DiccFLbTEoeGvY#f4z ztkn}{wfEw%(gVEITAeZZ`>n~j>1(=zQwt&g1q|ggpFE!6N1?0X2@WfSjB?5-glwb> zoZ!KX=^G{jzyipK1QFU@Y(DwiV?fGAla|S;Wsi+{IH9fodqHR{fP3B^c>aAq`i1K1 z5^#T@RY?m~ zoSfW1v+olC_vE7&rG7qk%ZwSZB$ZzSu>;~Bj|Qj_m=}VUVHQKThFpKYgk68X7kWkD z)h^x3po0I1rjy4dmaj9}rN>u5fV=c~GBt*H(i(!ZoEfl0FAL@3;Jku9S0yf71Jzz+ zGO4D72iGc?&L>Dq5&vl+AA?6VBl6#fHm`;TbR|PTM&y?qgkp%`*+*3YoH11!Tn&$u z&jzlrFFq3q;Bt}EfD)#+r1$8B0P2*E;Cmo z5ep1;tnp3Mq?M$k<7&W zD&xXtZbDh>kizocG;6n+8T)Mu_nfXy^sQK)l}rn<_5&PEQrR)CT^dC9BWq$#GDLKs zkjhh&3*f&uAn4*5)?~c?D-7l{e>~dd7tqz9x;bJVSI|{tSl?X}ip0ISIK3?adQ%V< ziu;m8Gz$fgL4X;cR5Pf+8pq+PB$9BPbr*L>_?sssq%qA>{1{ZGFEt~65e(HPzK(~k zCcc6);$6nTQj0|#hCvK{?3$qs_Fy~SoeV`H3g<*YBDM3shim6or0_s??R*oRkBe7~ zwcylH8o3GVCw&EtzG9_1;l7MYUXpFxqibGLC7;p+h$483XTNgg)Sfk0ds>i5#Su>_ z-q?xn5-$asYQ|8!&k(d0Q@r@INzF-$*KWs|E6unr;Ve$$deEBRDgS1T9R~3S_e%!h zp`vD7{L!IypV%TF!GwlK{Eb3agPrm>uCdyBgaW2=ZOGax*YQ23a_u%;A- znoGX>Bf(gRxg0)>U2T^`V7~h?NRu+$Q&wICay6Q!)MRoyAV>E{O<`XQ-dl>}N~n9~ zVZv(6pM{Yng}qWxShCPTTA-xBzlBadb&pMn77(;K(?W*4_MZpCEk+aniCt})2+V7r zf4xi_id)o^%hkz_nm7~Mm)VURrrpvFktT|!(*&~|zXsWM>Dp*9jOD|&M;o00UGvdK z(H@bu_#tp5knuv=uXmjpgfEUc7siyV@#ApTn3V!7gEf%Ca%PRx6!uF9PU>ip%a-lGgjhB0!tOtSbCsN&{|HotO$_7}MWK3!Xo=rb;HTESd`6tH4c2cHH~LU|Z-G z0h8oKAPy;g{n?^vs*7{ig^lrnDwGhbWBxk6AY5(~;Q6Y;aOq&hjFF;OQrZPNy083` z=1ZQgeD#IVBtr57{Ec5Uu-_gGY=c(ck^&NwR%^FIW0&(pW~|3(^_|c>h*lpIi*V5@ zeo3a)jcoxO=E>esgZb0el9I_O3r!ynG>w~;G<{zJq2>m*U_nBA3Taz zbmW)A8%-DsX&qiSHF>h*dynq#%RQfbPF}g$@eH~$tR2#^FNb*Zy|c7uNQ%5-?WM+V zlPirH2`X~8S>eTB6O25ZmhE}UJiGza%JtNZsg$4Y~hzCzThu=bpD zZV{psGZ+@APKGn|1VBF%J8v*2oLNwE82-|NVU5*^^JMK^Fht2b{v&5T06zlf<9t3I z;>oU*P=8!B-w{CCr85C*pEaS-WfGKhf|);Qxa^45*>Uc?-g0d_jw*8JwP>g_}qB4(wstZ^#bTPd0M$L z0-0y2mxorngtzSL6Wo+&l`2@DZVFaf5?nWte$+N^2K@uK4PlD{O zsQcu;ytGegV6f++iRwrh)9-+HdK3iZbsHwh=BaN|im88U{hng?iLbZgI~bqz zZ^Cy6L4y)pAG|6Fa{!H`Sff|JQ^#(NA~A)R7( zFr1{UN2=WpJM2UmA03xeQ&JKC7Dl!dv0_?v=VAegwsj)#OR89L94M`?eKT~RXB@MIQwK&@9pXIK_QtFFbo9(Ve zv})&Fi|A|iyB0@8qyt9h(AK5-;ksXO%mqRNGn*QNa#fcs)S`_wJkweOw?fTCwbV-%7s60J#pMZ7Tnk-|AVt_E z3lvDkB@2;7v?c&$W>yMO30|{6Y)~3I9O*}^O-$?NDAj~%qfSfU)EgJZl$T1@OEx-_&l$**z`o5zo*T5_csqFCZ{WmA>*Ba>-LxO})E>AxIG^t#{}=~4ZI2KCj!pf*VUiWGpbc&AMe+D0nc{mzE}eAW31EjoA0}#}rv`h&T2wM|WufrJ zK;gJuN#P$2r|^pf^pY2moxC& zO)2mAcfthok4lCeT1q(^b{TR_zY~m&n2Gl|cC}5sz+6-9a^}{0*x{S|;1cG|eK+@C-l$h@?x%}}%%#0z2DF=j?Pm1N5bb7A zGtl6Z6Cw<$E}IYJ%Hc(tlvI25ho%+XW~S^D4+}><*`z3c7G=dHQz~Ye|M*1O;|*p3?ck3 zgUpu!fyf}U_^Y!ZGX-xu3ouiNbKhvC*@P-P&D2P9_UuNz)Jd{Sca*97Fa zqJgopHlO-t564HVc824lui3-#M_#u99DYMMkXEKEHs82_V)G?99v?zl|(N?;bC{-W}k8i?pq<&woXu(TM#y`w9HJ6 zk{gTQbbRIhc>2c2c4PU@=2&I0S{i}(Dw%!QyGrmJ%vkry?SM*CiKu$-6f?hjv5V7Z9&#BKI#h{;KhvAp$5%o@CSB)WD)XS z15Z5ql-q`V~l7*J+2p?zLVeC>0f{n;3u8H7wz2oRW%)l2T( zxG|DG_DU?fxp}N(GM#^+fp#e7BF~Bf3&iSP70NCX` z6$$ewRFaV+#Yq9nEEo$~pevr@baZ@NLt-DacE=_5sUa(H$nWRlsB}J~8nSA^#@v5s z&FvT8r4|&kV_EL#d!dRTcfwFX;yW(2C!wn;wZ%MXjxCqec2$p!cCGzgHDV)-e<1W- zX-x(iH6hxl$}X^RN=}Gxl!Q3FX-$9b#j{)FP;md9*wyy@CZ{!BY?Rkgm#Fr}e&aQ6 zp`4}k4i$=*KryV+z)0mL%$2{U-Z(TgQaVtf>U@yaN}rj+f{U&V5h*$}Tpb*S3@E5p z4c3?;@>B?vB|+&kJ@JYDL1X-Hg8_%+MTt<DH^urw*h_gKD!-G)az&f47}3B!^)8bcHIqRpHbJ!lI_jv|S=oPaCO zRBMKVlcPSBLOX~@%9(gfG)>K!Xe*`CIE?91V)>+0ZU_drAxYLjC!w9VB*C9;NfK2| zGq~Gs$0bQxO64D?POll+> zY}l0I`5z0AMHEFu<0vqS_%y5< z!smrI1n3D(hob>(G;$7L)*3sNDuc}o;M0v{X2VfM&1g1p5CWQy{jN#)F0(KXZB>2VD2V9bD#+zEdp1MeF#*BqA=)w|4?{n6B;qn#yms7MM(6S*RTA zP2tuhmETqkrt)n9lF5t6PUStZI)5T0r}B}N@R;6&@VyDX{27jQ1uoibc3c8^0uz_Q_r-N9o5rNjZiLO{cH3W=kfKEOfdW=oI%M>GY%Fbb3gD zC3z7sIt@CnygNX~(|H9C06CvmGUOkBE*KlJlgr;>SNr7h|F`_(f5%Nqhl`yh^b;@W zOpi-i{_ziCB(LgAelF!n=xX>|g7S}DK3cgsBz7zR`1_8vdGn8-@PegXf5eHv-;cw{ zlD{+LAODkM{pKQY%fyLD(3v>VFA6CCScR6{sl@hDDF0aHIk`I(rTyc{KgP3w%s<|- z75)-MuEbwYf&Am{p-O9TSmm{*W*j zvWnr!f0SmtH|joF$t%qmBTjo|Tn__!Jr)!l`NfN^CKS5jziQpSFIsfRxy5?_wddfd zj@;t80y8p0i|63Zs+MK^ouv?~U%>{#KlQRFyvz2c4c`h~eWIJ=mePhtMJK-GnP-E0azg}N1>^<$TH(A>0O~w*YooLh})h>qhbdrdAd?Mdc8tS`Y0xJ#G zB5IX{x|C5hPeD~A2wLcw1pH}8LH!^Nt)za|6x2^z{j*erdNkTr){0Qks+}pQ(bw!L zs7Fxl0bbun0FV}jEBEw#sGAA38V`z>x5>w%BL8 z2QSb~^K-h#Z40(QqNGO3Fggai+Go4u3?o)JX>GM!D8iM|=#^Y@1{5y20CRvw8jS<^ zUcK_Kv*1ypitY~Hi{W=ELMKP49)C71GtOL52p+cJO5r&Vds7G=ni#xvzBO(qymXFO zIv>G2D|mS6GU%EQFU`jN=`&%C$Qj>*jzG)Oacs!CyiIl+?npfW17kjdfg!zZG~W(+ z(ZPTj66m7MW1cT=L8^%-1Rp0$1Oy&kggq?N_|7|LXeWa5jtf?kMSZE+F!6xK=;P8+_Ku%)EWdWR1L?=Z;qNEERU zDB?9RvZRO;p9sDh{VM3>)0YNCAb@kGhzw4`zYK<3j50ofU2Vz;bP`793W{4!3ab+> zAnB0iB0ZD6^f<0K(O&vzFDSCvOW%aCeE9ds_#Z;od}Mrpy@Z+iU!#3{*PB6%;+S87 zF(uQChcnHWQh;VK4booDOp}@kv}$|XLiAYdYO_kdnLr!OKrzZ)aRF(l3NlyeTvonH z*=T7wKe{XxagP2$OW$q5pg|l`-u7nbfI9#}Le$Et2a+x;x#nhl& zW}O-ga2PwRu?Ft7*3`+$JBw<=dTY2T$)#TwTpDETbPE_IF9I=4xx?#3(+;zGT0qOX z1a1?aDY$i_Iu2wF2af%f7F@L>`VOUNBZr4b+W19-{cteY4Vpff0vr|&z7!fKXZ6Hr zI;GrTB2kZvHMxiyza$fNEJG(FCSb-+hR~RJg|*CN+RMTKcsB?EAQ@mK_;1q`3R(LN z0ng+`WM_agW9bj%Lb4JdrZ@lLkzgFUdrIascFE z)U;-rc)w;%mrOTVh!<?FCs>~ew{!$+@}YON|9JJh0+*}itWk+ zuzvv*iB&E*^s4t;>%&nUq1O{U_z^Cqq7~hgZw>`LM0AyRC*FsM_Cik*$!rl1D0*zCd>1L3AZdz$`hPz#kGsfBJ<&C1AZ2RdaX( zqp$GqLzRJH2q(!y9q?dCQ%%*M@zQ`9Akc12S@h$`=>dS%U(qs!88=xdm$wg9c2+i4 zw)Sq^GT1vXuygz1rmf|{9hzkp z{x>SR1hv%={C{mju=Z8#Dr2$M1~+Zoxp~{b*2=a`TefZ4344XTZ5`Y(IJmQ1+F07$ ziyK^LJh3=gM#l<~0-XF?6XSI_`5&r|jEF+)@NVnDY8l>N0cXGgsGx&)+#0HVS4lk1 z)$A_7eYXp$O?bhp44)yyk0n}E*J?|W7zgZ;n-@s?$V{eD`@@b=i($g=!ze_zTPoX1 z+qZ5lZQoYfv}I^xxiq+a$EMAL+c%eYR4SG7RzPdAU53_J5pWLvQAs#^m(4O*11RF` z)%u~-$zylJQ|o1X_w-<8Ts(@@+q2n)LSI9sOgs$%ISF4iH0SU1S)j$*S+M%rmGED& zQZ7{0cQy>*1CVtt6ptX0E8=$%CKb~y@{Lq0!7?U~BEXdpkW;lm{B1S>QG|nWwbGte zBceMW*%%Npy;W1zdjaW|*_6|;7Q5R1_2is}cB-aaWSEVGqH(N=av_ukI}CN84mBo5 z%23Ac02JM7kSrG2D3Vf(HI^E|>`U@VvfnhdJtG)MhLdKupfDh2Ue^GBHqTBxvUZG$ z!x?*ZB~9FjqsXJnBBQC1JaLmX50?em0&CZct?&^{((nYlMeKb0z{gOQNtL4k(G;F1Fk7NW*$mh#4piX2{Y-6Wa5X4L?h+s$#aW~Pu?nAj%$lFGeKx`IVX;L% z0;6I8$w?CQ$4)T%a64fkMO% zse7cWIwa?=uAUxcp9wRgudmSCvxOWK>Xa8Y|wbE~1-{>@9GCV|-p zO{FdH`GtR>QAjLqAKX~!-8ryz+xG2)TXt4N2Jo4(9;5hI(cB8eNBc(d8pT@@jAATnhDh`2 zCu@m!YXT64zbHwnR)|D^d`bkcv9e=lZ+YX!fq}uHEv4-{c9zSfa_{!iw({n!J2r1Z z0tnKJuStPoOfULJrD)HNfKe&hgNAw9S}EFds%V-^y5lqYxZX;Z`Wh#6k~kl`+9!#? zbjM?aZ3eQmg+2RvGlJ3X30xL9Fr5_UqsVXC&F%Txw4j(*a(ioL18@D(XS#qPrC~983~M} z2#jAeI<^F(!=UG0=;W29Mw)JI9yCr)X^heHHfSD1&l|)dT=a}zlIeMiU8pP==rC7% zoi(_xw3e1kT3JjrEZc;eCh9MhhAP|2J9lg>?-<;&ZLqv!=isK&#_~1@tZg5Zu@}El zPcF3e0>a5lj8VUTR5~hrCxE9&2cl9*<5YH3@GpQ8!&CrLX*quF~E-h#(Tf(v!5RX1-92Y-)apgdB>dQ#>nQo8p( zR=nf0X4H6vb7|5-c7D@5`xZc$DNZ;;6l-6Dd1_yW|6kkHE+?4k3d(Sw&9SbG_Mbc zPCU&kOVN$5`q%5rPWn>&>rEC#dXur#AWc-Y_v5Msn)OJv*TIjSqz0Xm!hKYF;}sH8m-B72b?9HcZ^7Kh+x7^P2{VY)N%=}C-1f?9 zI7YPwB5t^>PN5YfVBO#F>i(8ipcDWzz$TANn8|T8UvM^TMGBrJd|k$DUDzn`g`#XH z^m#CrkAFNT^kblF_7gf%f*l{Vw~DrdJgEPkBq0zLqEr+NI96AMFbP6SFB|!qyX*+0 zJ{Zf~vD)c~NnlBs?|+Ddq}yQ8z35TnzW7n~rX4(CG&C`SZ-j}|fl|GNNdt!(;|Czq zsWl9wtrl9Um*K$`NckEr9jw6fEKMxDfNdHRt*&xIWX{zK6ZLv!5UGFsaAEhAmq13? z$cUtPAowFZs|IVYm&(175(4Y&7+6L7{JTZ{OoKd2%Q_vt!Q(;ZzOLlWSboeA+%uG1f=$9PY|j_n{k;HZVDo|{(kIg zd#sWZgqVuiL)-@jr?2=)bap4>I%3+Sf+(i#L^{I!NfXfXg77 znk@>|ClpAzAA3`%o)<`YxizkBH~%5N9XV_4@YG~_v7wiVrSlO??0R(A1JE@e9cC9u zA!5gDxCpc?6mLToL_^H^X1C$aw=*$*q(r@}sFO}qFiqxunzTORMH>S;7c%Z>CIJb{ zX5dz(?t4fG>0~X6L`zPH+fp!(P03w=93AK`D2t}KL>9jVLz(Q8Or+X2AQAKp>}rdk zERjV^u8>M&no0x@o$Y{3+#fY9{8#Yag4|U^3wY1`Cor<4g~tUgBty-hg&#pDpRO`! z0YRHHEo6u+uH4l&O{~DKHcbRZ7HuONwuu`+m~L{Ok4kNgru{y~*-KZ!+d5)pS&QJ+9jJlfDps?8HyH(#=%l9{o0qZn;NI z&QV^`qcnqYXQ)~-=!AQ4^?}aNHB<=@JVuf_rT++Hp8Kl@;eMR*d;&oRwbi8hZ?p_0 zuaiwUZTL#3*pcO9fY|qFsX~)Z7B+6%ym3?S!1mtl<e)!vHggQbJwLi3Gs`^<0TT&dHSA}c;}@@~H_Uzm5b+5M%bqtKNKZz1ul*AL zEM7XtHk4rQlLpy(w5U&MwG+foGSKMAKaSJ+FYFOjbxHxR}Ja zAG_KTBhcTo4)GXWcPCvAmvb&})FJFMBrdQIH74q1QcFzRY)I(b-;dq<`yB%mfp(5d z=w<{e-)TXEc?%{Ns0q|z!G2ZgeOC8mU?ScRg2x!>%AONey2RRnCU3iOvgv54JhwZO z$Q#|6Z-up!L9uCI%g(_q<=#!bWk@?5=-s(xXsFaXFf=r@eMf2g#!X;Q_;*Im&WB*g zw5H_jL|V$3_%k@To(RTUj0wJtU2P@^bZ{+;-dMj@oTYD(2Q5bH$46~cOkTF_myMCG zoi`SLWo?P8xTV%$a$@Ehn|W@e<>tvL4L+HTA9D)m|4yJjnV>w1ZZRw)A4R9OhFkIe!LVQT(`V>z2~CZIx|XH*eoEFx0za$I#ZT1DoN- z+|~g|fW)dP$>75s5kLM%3ZxBXgk+tGACotZqmm;{9bD3(g`LQerp|}%PU()c%YaCv zBW*AKB^+tuucv?`?euE>V6|0grh3s%aCy|VW6jfkv?w7KinUi5sfV?fEeEY7 zt>1a2L#1k~V913buUs&#FYVbtR8z6KfvEdre_p;Zd^hYOypFzSxCChsyMs>g#MZEpI-RSX86xm zh-Z8d^EE#N|Alb;mQ2ia4y-w}b_>kbiEn6ygIdTj^rtYi9sJuc8HG$!x@54o} zjX(ghZy&)pBtLH6?NIipal0f{(1t5S($UaFUDQS@R55YRpwQRQ&`O$QeWvOyR{t!| zRJ|$MR@P^#qE$Pesfxa4f2QiluoS-t^|R)JX61=m z*We|N(FxeJNPFumwOZqS{n4{rS60SHt4%Bg)$AE9)l2&;`)Je6eoUkTCo8x^0Tk6b zI9W!m*SePQ!3|#c2WxxWM(obA3;}$0TB>~$N0(xBskLfj4Ub!E;D(IpGMPVicmo1v ziY2C_0HK4_H()5ACFC(A{|&kthU6SEkL#Mxq0)GL>Ym!m;pkRFQD-|$)+jyg!I^Lp zl95SdG8Z@mu^|l1EGG*Q-W z8d9eOLn`Q$Peg`ZyAxn!DS|&Bkj>f6!~rrEof}p`Cm&;BQ#!{Zq5{tib41g0Csu}Y z{2mxG`B-Z1E_RMT54+kF7I=<7>N3z*H(er3d9cbr=5d$iDdM|2az|oacIdxF-ipVQ z{9Mt{kd8N48{!grRnm|SX*_@ZUqV?T`LBNmSou0vNt3I{%< z=n}(Alo+P1B875^y8xI$K{tM^S6`Hsm@HkhFd)u(E$mS;;ELI32yjrFBx*3=RVgqv z7!c_=X9i5YX#WP7vrV>p9d@DXDnA+w zGejUre&#LNWGoN=8h;jGYXj zmF+jJWqQCH5-}oWi!M9_faLX-;PqrFV(|L=1w4}%flcX>{==ea>Lva2V~?-wt`{of z;}C9X3<~=PiunvzN1&uKK5nlHP_#k&i`h)d6tsTTke|7m6NrD)!~?%gfse@pwJ$?s zml@wWJXV>i#dsj#J(fg1_;0Z;7a!o4WIpI^4;e5~8$C7bPY#BC77e!us2;Z~ss2OZ zRR1dhJwE|3s`v8}UC#gWfKkbCMMacJZ~7NN4sUh7O1C4Bt;yl7ykG84MM>12%uytI z>F|CwAXz%R#a~Yehj(*dy*ZTrY>V6BEj#D$@K%cwBCA-le8Os0nA=wEDmSmQUV7~=+=ZQySc4z)^E%V=<*N>V3PZ=d&eTGCo#hWa z5mBua1lI_GKE&&M@}A+!-~sTs4T0xP*DD4e+~wC?c)fHYfQU|Orb*~EG`V8>WKpP( zuF}^um9%0vBNjZv-!<^H}~T(H}_LvU>4jzb_TSZAzRMq zn;}}xpoZq{mC0q$P964fIBLTJ_FurQN)aVju8HeQUI1o0-+vCq@*P_}=lg$xu5Fy} zp_lDul^aBzDNprq5CdrgP1!yC6I0?Km8y zkit?viR)gCj^gjUIrv%aM;+_8S56iSl6IiQ@{WK}mBj*0O?ddt9I{xH~q=bR%w zm*|FEpgI{Y!mWT9lP+p+fT-=dyQVNKJ$G_uK^^wsFD-X=S)Dj@)!qd|#Q5?78N$Z- zeALb3-jqMk8_hR)b6&=i8|KnzVs_#JjcO@{^$!{%S4S)CID0^EwssYcYMWc#@M9cm8#V5>+!@pt;MPW`= zss%KQh1cfcb=gc^meNl|tL<3H z>W$aFgQMC?_G9p4CrUP%`lO=$C5&$=TE1(gY<~?64P~nq3&Q77Tz8Z zRH6v-s9MX=cw-cP)%jKs8-u!A&^S`E?RC~@`zsyCBjE*_O=_+%;s>j5Z*_X1p>|Ee$|$ zX|w`W++hDhEX>qpQdxIl5OUn$z02`}d?mF~1wtGz^kLt=exSZqWBhP`7feGxiHMa_ zDE<02Fy*e9QUmG$^mk!mS9M^bMO0g?b-@8W+Q9Ow)nWx709w?s#_>hN_mno^yAUt` ztX1&ET&xpd6iHTRNZ2xS?EfHaK|N7 z82E@adUskAaJgi9&oD(1Ni{J=aVrevvoJl*vpvw&aGuQ(^SEN0W{M)J58HP(pY~{` zArhNof(n9DB*e@?HZ#EBhx4&chIBytCWNMh_EN^Z4Cc3BtDp-;sW87$Y=|SxR3;vn z?}x6rz=X&U6av>XeD|8WTt&w+vG85pnxq%qxHnK0l@%)O(14BTsBASf}{MfFSV zouaWsDPb<^Uu3EZEemWW;KwtQtZWB>67|SqTGYQqh#(_EvGzk?x@ zRg(!fEdq!eeuG_YZU~GUcshcae*`EuMR<_U^7s;C+lJOu@fh&lhUMr_5CokpTy2tTm0$7fiNct0rlWqV{ z&WAYkc(u};LJ9T)=r{>-yxxLayY0$x(fRiw$7$lWy=9?}#uF&O_;~F1Qj>~^*IdRl8xGv=2$dtRRcUoJ7quO%( zdjN?X<+$95l;Z`MFD}Pr3njFSFCnqTUmZ&9Xh|JP>@}l}gO$``JgZ!J3E0yot0}slY8J0%W-%^j z{rUso)8F5em0-Aa>@UZ2V>r#YB-eFO_sLuGIxxh_@kqD{QNeA{Ir58iDae0lZrC3! ztz+v`@3J<8qspZ`ZfO3=1quby@4;RaiO>V&-Y8%ZOqyH1NaeyqnwXhXH48M(xF1!6Jn8Em$*B{3R^qz zp{K812}5_HMV8qNMwN@+3FBHSL{c5;kI8vbIEd&Codp!Z0GO^O2s?F1kt>mmHH+R) zLn|{UYt5p^to~VQ7JV$*R@RzD(W;#_i=waDYZe^=Sp@iem^LmorK@1kp52A2PR z7TQA;YQZ^$b9YtZmNYu-1!`%QTC9iAfe9iU9mmg$qvJYW>Isd|EJd7*DhNQT@Z6&C zNod?09UtBRW4BS5t1Y9{ z8P~AWIu(eiX&YZ-Ww)1>nK5M__=pbhWwKo`id13G5dwpAggFWdw<4N+YiqLq-dA9L zfkG?TH7OSfdV97@S;0{efBiu>Ezb zGRXk4!rfQa~g+hTf%y9=IYExbMKOc7Qwi5s8c8Vx~&IR57BxvEMj3Jv30+U#-{C z|5C)OuPP8WA*3n_Gb_PcvHx=d(FBezpVB8E;ph{4syMT`umxchqq%v#IGWIgL zFj|2EzwwKP{%eAvj|@viQCkmme@<4(i&c(5(v9NxV0SuyV;f`Shpmx0 z*O-bnJ)Zw=v3Nd$NoAgR{v*)U(6oW^e3z=VZxk!8I|jHef-ZaN!UitLs8|UkyA3aa z^xEGW*@8Jod?-vBz->!6cE72(evsG{B2-K~oDSR->v z&8CXZ6^rL11gfIF&~IOU15{Dot2D&d zev8t$#9z$zqXetd#%ovuB@>*XknGuG3dwH3mlvdv?#gLlafRexT!2ElKc}TJg=DWP zS#4xdNXHVRN`>_CaD{X_>@i=3^g?NK6pGi>8;6EQN(U<9ymYM&Ps3RVl904pmO3;h z;6Nm6V=FgI`e`WQ=k5ZqVcLO6*+V4P)j#!7=&?*FS2a=v43Rn5QRoqCEbg5=MID8r z;>;MQj9}&}xAbKkP->)wQA0ymeASwe^LRG3^d+$;K0=^c`ZjdUM=eFgF&SvgyG&${ zodD#I;1*T@(^EDQTzblG!}Zi1(?q#Uc8hR@JRc>TiLRffWf=7HYm0ukG|!-HW?sxK zuVgYZl#M-mOxf5C`0`Q?WGix7Qe4gWmldF9PRnU&OwHJ<%16x{PkbiT%#{m*&pjVb z5hvNtJueW)#|&CVw$Dw;NTua;yV1#(M0M<(dsQZUlaAR7og8Nz{5koI(}s?z;D8<- zv)`JKvvxKeGbr}NM+nq0w?fw=tYc0F+K;fnbc~GzmyWU9gzK0N=+>`dBn6v(w`X~D zOb5#_RLs2=`EVJYLB-r}4U|kphKjLgkEs~D0bgE&i#ToJfo&mCSd;mCQ3?kGY;@Za5!GW;BL|n(*3H5pr&#gG_w_Z%d&UEs88-qK$0X zf|HI22@M?XDPT1UNLLvh8>w`6!L&ys1cZ1*t_pVVf_Dx#$>0u; zCiN6{Q|=3dglHw$0ZIe6ATR`>>@Hbbzf`DK_RBONyIE-fI`qI*<`zb-;53GpoV%!% zNTZ?rA+$yZ8>3@Tzl0)9d@l8^tT-dX2xf#^ur|n^ydV zSUMjeP%F;9BrmOKzrs%EtkZxsBhWG(XhYVe1MN0U2j1{ZAQ99*dGJ<$|0YQM65&!q z2MP|u-~Vs$n6YwjR)UlVPV;P5q;11wye7fcN;eiG0bV# z#97^4!OKgr({9RbNoH);53wK{Z8WEa#SKXR;sSgW&&z3PM==?t6{x+yd@RXRNL@)w z@?8sq-4)+V(ZSi>6(5OGeTq@RjL3(3OJrC^t#n$EQU7qF4t45!x*%U!)}U$1q#?A( z>S+8$R$ya7JZ6iQs2Y)6>5*B6$~y zW>2OlCjLRA;Azj~g4RzxB(zV0P7a}sKbu0E3**#W(5={AieCG5neEode3jXx?q;!g zK0=_>-3?vyk-AB_pl1N>M$lzK)CR6gh}vzq5Zz^@wzNrcFlmRQXv(|Ei&KUXUS8ju zskfd0D4GBH;mp4}g)Fi&e{sB0YGP>)xXT|IeDoV+a|?z?3(gr+nkO477FPe%;JYIj ze7JIA+{0p%fJN>m!=IBGH*%A~K3s0Hmtk*mlR*oy**S?Mj}YCQemJ}E{s-h!^jBKj}SeZ1#B}`YQp7PCECoF<|OoZP++MwyApe` z-!)0ky_CzWWXWL2zgf`97cnx$#^kKA!&9#6*YaiGwTno~v|!_v)>Lgij9ps?zusM2 z5C2^gS3q3PS^rj0ze^I}7bb_<<+VL|;RB}5Wh{-1rw1b=OOoT6z|;s5DPJyG6l}=< zkASeBA}H(rNzpVl>wXu+^#-bNd9aRm!SIqYTwSg=T7}^f1m#S#T|083Yp9`IurQiL z(ZBJF2KGh4z&0rVf((>jTMdmfQ2r&*Jc#no6N_+BK7L82{Eck^9OlX1QG|_;MziJTQ9SmZFlK&(H5T*>zO35!m%!J7ByTl?~l#E}JDfxtC5O*o2U!B~>u&p1m z=1HcEEace>l9z_LLnl;bNp@HjpLBZ)Lw|xVkhiToA zw}bnwPF#C=%e3NrJ{otH+rBoMZ}K^L6+29Vx}(}*mxUFuUd*4gGMk9j>8j3=sa~tz za;=4c2a3CiRxs@)_Y)dtKOcuV^y_v5}Kj>qKbQJp&%-+!ZjyV-?l35 z70vS7;14mZ=(Wv)hP^xu0`S)-cX;CYujXAea$ZJDQX-8LttpbVr6KFC9TB1fpuL1v zD0R#uN8z!Z7g+h4s% zQ|WJk7ElwP~Jx5V{)XSzr+sWPiKf*-=Upij8VRt@Z%!R2C&fxQg)RJV`hP zJp3SE6$3eum;>ma$N41C=gC&aG+)GzMxnb-!2VgW8$N<5COoxoz5!kH0s9gKcG_wR z;7<$UNdsVhyqp%pi;H_5Ncu00q!o@X#sYqxBgX!teT@A!H;hFOzqt0Df#72$Q z{;8EI4W8smW!qw*RN5+1HlNh4a<@eP);hMZ*T;S)^JpDQ<;hOMuJ&m@@HIN|{u`y? zfypoyX_%Pxz)$<({lMxt{aQ?=lHNUGW+Y6bp|Ld>8bO{WLMqmC?1hn~l~580O%_r} za8y#K2RixG2sWjYC?dmWrDIbH^Q{(5(@Wej{}0J;_M3*=jWA@g5cg8iv#_g8MS(t{ zo(sT?y6L()SW-8klIt!=nR`oj!NJO|C*I1&2rRwCo>4*L<{WnsI{vIJApS2J6x8(-*bmJxl_}RcG!NlIS`SJ;kh7|MVQ#s<~(e`oj z+1zlF(R_&^h$T4NjFD`@WYK^)XAL$iHQ@XuXwq;IWauw z$rr1PF(oMcoyZrfd@1fuA&+r&T@Jt!4=OIgzl1kd{Ph&@#%|CKo_&zqm-@iV)762< z?ZCq^^6<)@l01A7VjSwd7xpsW6228>C)+=3L+4b$MzW!k$zNEAhML@;my0y^9*n&| z$8#(q0EA{kjlIO8e`ar^L_dRlE&kT9IV;+b%a>a7y^69Oy80vn_c7C}D4T;j#a>0x zu&-^xRolMW6X3^Ae6{S^Aqxl6UwaeGVEJops#7neEaL+d*O_mosO5uzJqdRb=)pZ# zIb;pj?S|%9Ww1I_9W>5h1z=9_CyomDp>z?AgP|Qcb~_$NlTVqJuY_i@e$XdT^7bB4 z{sBmrXsJ@2{i#rA(_BXUa2wE}bNWH-YM-!@%ZQ%@ImN1s_~d0EISWPegmqoBGOjQ6 zAu%9X!1E*H1xOidwBV{8)M#il;b-M6##>B~H>h&MSRHSVJb6j*mQi0*+V_i~ljFVy z{%p!^kY4lTt_;)EZp04-;ZEka;AHM|*xRgia3ark4tq#!m5*SWQJ!mndsn3;k@pm{IfgIZySp6)1%E`g}H!zk@PkBK8 zkI*$AkS|mAlmdvErtbnfGw^Mw11GRFe#iIN4Mw{S_tEvD+bz3bfQ7WtQ|phPd-2Q| zBP8*k06B-~SBm;IOM?@0UzkEF#>oW*bl}OQDVnDH?jlbwF-7!m4X;&K`1rzvm)5tW zQI5r~wnho`{H{mpa5`dzt%1dQ3ZQfOSqK8Urzy-Qjb;$%^;sr^p>0H^sxrX!>P2!Gd_Bix(jDI9ZO4NYmvrj z>~}39{vNR6vs1qYuZh*Z4*ykQx|zKf`}g?b*vi^xqM;^7@^USynkoA{5SfyWlp1^P zcb){3@U0a)^)WpW?JTp8>2c`l6Fp8J(>FvXzUrB0%Jd2LHZlE(*7TXi;p4yk>-D`% z{LA*&n=DWCCSyJ^O*FNy%rkda+CdwHwmXFswCdy9en%zV}%CTJ&$+61c zgH!}UL_7-D)EuOfU<8Nzovwxn2)%QV>WnF_#ZNgoL9P`0;N)SdBoA_*16}h$ZeslZ zQrs!XE)(D^Ny}y@kFc~~0yV}i5J08zd3{;D&&ph{EfLj>gcY#dB$~%5+S|oj#OF*Lsb%jBXIV z<##R_&=H;~(_CztZu(@u>U7Xx|H$r{_;_3da6=-yVs#`D<{<*aH8BTp)^#FfLFc zz`o^hC)90p+&U1Z58g76B{I5E)`@D4gTs}<1M-f8wzQgE&Bka2E?&wCxT1D9atqa% z#qtB)@-74pS%IP(^;Q+1k(J^S-@BhH)?w(qpID&hwo|xjeG6b88n|9NjtB#avT?E90a22-9;E_PDW+fY+9#T$F-ne>2#!?|%EZC`*s>x17&vm&n zRGJuR$@qpryAIWM8eoKI#@|(MZ!LC7G}BBYD@jo=f$gn$)?! z>mK~{^6HmhQiuT4-KMAxs{XTn#c?$?4JZCk#?RyCpswZ zQl!^t=!6cUfpT5PKv@Qxx+((7i!%cS`zHaVkJF9;hcqg3so|Y%kEZl>2P0^Zk8})j zd~J6)0{L4qgB<&7kb9(|N3jc*CnW|ffA(r4|Kmcm|Mp`Y<$3`uz$Rqc7dG{5>?~{i2A;{7FOl6VZ0kAgwiduPpBOaqMcxK?C!(9s-_J`C9U*(p^9+ zTxV<%(}Ej9I5w@4Uf|*E0p14tdQiM15?wg%awGv3z}l|1;QAIZdkd}mQA!n5$zRQ` z5?pV_`eEv=ove9aUkwH&k`v{DeF-`_^1$$C)4&35isymZjrgGauLa2Ah8lkC zFUvA>7ak}2!dDE(U}Q;O*9rPcRy_uNjY21%&@|`^(UmiOv5YkpbCCBSWZgRrw^s$j zEkM(>7|Vxqk7e>Gbj?Rmu23n{2Efd$X(H^CfUw_9d-tw6gD}Q1-wtC+W|_Mp-E~g~ zqPL^~&R`a#xlGLB*9MfOro5yoYUuAoS!ycV!rdu7OYKPnmB>>2HU1^C)Wly;fh@IN z!{56PpOpZ=NLo3%(-q|=?AKHdIr}d za4Bt630lrF=Fvf$C^Dzxh>|>@)PVO04alSFXM!UMoJRm;a6Hu^K}LZVeyqb6 z_!a)YzyHG0NV8(T>V8^KM9rI?k&q5BRAUFO3-b~hCBXCD0Cp3QVbVf^50$P7_WL!kVG zubOoK&(cB7%^L&<`bTc1CZsrmKQaPCc zh_;iN(1Q6wh!&q(!rhR`q(qkDWKIVm)gs;olS!lL?f924n#5mE0i$Wn7*w-Ntr4-x zX(mC>JPf0wnQ9ix5&X@Kq1wxqL$rXLwWUKP5bFlte=4FIm&Rq{mSyCV!SQI+ee&kK z3=X{hxfjx4O8YCN0dP7Xpj8GwGc)GMFLG=0ADS7z7_H2;u}r3f-em0yII6UG*kyoO zkftqQe8wG9#o-N5lIu+PPcQsuGyG>O990?gz9r2y=fIjxY9E2wI zxRzBS!KaeY=Skuga)4|RwR4aGj}T}>Y>|1l4>radw@bPNA-aNRkAnIundJB@8d}MW z;Z<~HACY{r@i#msivvUcI(tcT*0s`1QvFNAbBEUruOB{XI0-Qm!^O+7^~&1sqHSTX z6QI{|iM@t*4WFZXMyo#e(wT967=49VikJI@r>zf<08hcbe@^?BcFda|#)9(PjyVs! zN#oVZK}ht4yfknM3g*N-w^B>kkb@KB=~7cc+~|^Q5Zb^rNT&cwAzx%&B|IXTu^NS9hM8b zue?O00Y>*ElnCqZl99KP)ckSxN9Bb8RAtFP2*jraAdfqLKt zIgxVR>@So{t&+>qd1|i}GZ}lbLDSGwn=E|u=;d(}f?%hXT0i1LVrw~JOY?v+=K!_~3V+Ur*GG`4_&X8Cf#x{^7##7Y7WbfS z1iBh%nbP(X$Qx(r#`_RO3OhF4cH4NMOoK0wxBvE}*QGmtj{st`QhNTZ{3tbZtnInjJMW zbp^Q@++L&q?ZH5?&Xw*U8Ic6$8NWFqiN6RS3G(|t2%UT)5vhlQu!s|%orFy(2>TMz zG(8BLAxQQ)7&2L&c!}xnu&Yf>fkCpxmsOjsn@G@swF{DuM_LP_fzor)^9a=}y|viY=Dp+>cA1B8d+Z%WI`QDuMLfvRu_luB)B2|3`N2RyY*Aw1xzNeW zEeplt+N1CY%T&s{xDP^rK|H}o@8V7#tC)a+Y07+NQSgrIsob-~xFI_m5Rgh;*@bT;b{9%Rt;)Fi8=P_VGX0}50yk<~`-ZCH&DJgvYJ#2(+?|JbXDNqL>r_l?zDLJmGkXM3xgz;;Vw*T=_4(uM_&thwT|!WI2XZ|qO}8}p&+u5eV{ z@1MnoDw-u6Rd4jq)ds5M5^_M*qLQ}9T)3Jizbj;^e`;)f)W0_$wmuk+t-tZl;=>lr z5{|8Z^v~4>w&W6Wz}C@mgV}|&qs(Rsb^J$-z@PfJ>qFp=!V&nt{#kqoq*)jODKCv2 zjIk`WMc3zTamYpFfWn2*`NoC0Irvp!O#VY->Qw)(e3&Xg*Fbw?lYbT;rf3$1sX2I* zi*_Xbp?7qif37xIO)en^JS{Q~pDs+zli$_O)Ias!ZuIZXhpp?vv9;eniw|2g3&$27 z*wvnFi(|q+R~y)pOK1yQA)R71KAq=WJyPura3<;`k!pF&LqeHUuK>_lnN)P1SE*F< z$%|y>QmL~z9PHjir!`>W)V%JDxl|8WXw8~S^$x3lmRzd0QeQlDXUnCER_)BCioRyf zrK&xMkOl_`0R6SJy5x+fw_b@3G)zt#fv6moa*163BI#+gQfbKyr|~NIz^bLf{^~)< z=@zLy5H1+6z)R?m?cLSiFHV<`+>KQQN|5YL|CTA?Eoj;}2=(X6I9i>jS7CO3xq`Vs zHb(IIjg8=f=-i1i;cWFsYojqU1{KApHevfMi!4 zx;iMS9A_0_wD|BP*2Y9$KF^(lM zd%7?)!ZibE*RmRaA6$TF!A%o3O%)1jj5HgCdZi+`0_%Cmiaqy*9b7Stg*eajgq?s_3&xh#=hcAV$MmRhyHwjgn zkx?e1;U{>A#f*#-ZDM{ILSL}+Ih_%c0aQOi*SQetBs&LI*J`XD>)8OtXt|X&QdFoA}Mb#abHLh|Mkyk>a>CeC#iUG@Rb5NY{C3!Sw0J^3Sfu zu4|QbLUH5dsz_E5@+eduik*sMf3tC)FoL2jG!AX5uso%}Qx} za2ON?xRLe`Q|%;ii%r@+vR4=Dh1uYTs*oTK)s@I@!JKFu0520_6}17XAyKTc*YZ*V zCu70jMLU8LB1WK-5InOAMT2eeXHz1B?X)lgjHeyf8b_&=DFCG_)A(+jMQVrH(8L(` zMb`Y>Cd!r}^#ZX)K7vVX9+fZ!T@95Gm?7oT31WW;cgig$*^iYZBNVV2Jq`@88at5{w~3oPALM z2k487GyK^SXI&aFhTO3ma(T8)$urulOQ!uhPL-VbX)T0HrEGHThhndM1V*^vl^ZHI z2B&KG;SC2Pv#s_dbj?Sux$aF6GhnsF2p_X=VfEhpa9*t7jD+d}^0FHvAkV=z1_qDD zPeEsi1#r({aHQ01CSG({0%Ns#m^cx-<^y55!MN&R;AN`A1}?AzQyq@)G1XzW;i}_S zR2})q4TWmOQU#v?ft@@vzo`wX>9eRNJKtY`BP8uPKd!l5J9AAzmCM_fB!0Q@5%V5TZ!+PYv+r zdkNA6xS?Hd7nB#%uK2Sla-qS}=&%rbXWMSgSuHB{$pGWh0k6VYCBrRdjSaT`Gizm? zu-z-f=J^OFoIJ;fhoEadY-jB>t`$}S$!jz*o$CjD^y0Rnyodx{!2g&A{_sQWX z?G|33+8b#5zJ)gC)SZNIjT%{5?{NY16KjZM#zFW|R71~8t{%wD1_;f;4fvL4);*kD zYHiiwz?}8$NOmlY1gSB>9Q+<+MB-&xglwV>IRl1jQ(G^Au7=o{Bj!oFEbDSU%%?p% zoRi0byiiaVux3Sy)R%nKGR}!KEY*Ht3gzJtK^8d%)o50ys)cN9p?45+Lh8->j$W2H(y`|F$ z5QMOZVUvVS!0y}k-cI+SyKmFCnQ`)AcZO+l+Wzj}V}zz14NHx% z$-ic3iP>a&ZNduMWVf^}Q`x7<$KI?&%du42B&?w_ncUsaK zHm1p33AAC9haIxnMj6v&30Yd@_yLm00TEU(Vw$Ym4VqxE?L;aUY#XT;^I4!LYqf20dvD*Pl~UUZAif625nW@EY!LA9@owW;<` zpw0!<{z<{ko2;8U8(RZVZL0kt6k?f5#0JLB((d{Uatu=zDC~a379y6-gw6q= zZeaDFc-LFS%kxbEZ41@`^Cbe3S( zNqY5RXi(PL=h_VH!zg7@G5R|iC|4uF!z-Gse;-7Rsa;aj34aiv+VlZFj;e-oS(GWA zuy2JlIBH@{d)xLIP&txEnO}fYcuXckgxZH)m?~d-s@!}dh+tFsrpwJ`8`+72`CCd& ze>wVMeILRrDP->Z{6lu%=gJfwA{^zL@;()(dysz3nCv!ZruC+2@fB&_xUV5oU`lrb zF41UXAN-%G5`fHLyJTgyhT|RMjlEunL!O`)QYe3Fgm>I(I|^YvDrUb+P>J!Uy&alf zn@$ImzIXQPmb0A`b-DwH@$C_M0=2@G%0d(|MB_}SeS0jX@-vd~pCY#tRUyy;k5#vG+rv!dxKyqC(n z??Uv{Z%u_eGgBdU4(|X}bR`-c>il6VT4Bi1cg=2El1 zAN@4&R^lqXX*^?+wwkKCl9rtHy`AIJyDn`^50BxB#7T-2QmTm>(o-}b(1qJ${HJY#-g6TFq%XUC8eMmosm%vKz6w9Z2>S53;`gYia7T~}tj5rKv0 zya|V*i?nUQSpc_RfC*0Iq`P}sNseCEJZeJ+ae`3#C@;`7^BCwzQPUy}L!)DV*SMK1t) zN~n}ED}AxkRx*F&VbV=tQW}Nu0JAgcC__qeCt^&RX>wA^09DvHG8(yTT(|?`0tK0O zM42N>zQ1j|85+A}e`R8797(T*C$&ty&>H1q=$y$I$#~MnZ~(1<8nGVi>f*#X`epG; z9Z$NLQj3uw^W`cT-zjb1F1vT4S%k%KWg&yPKGQ~j`Gwsg0=}!;=sNH3I~X%XH<`$L zU9CQXNHda0l_%D3?HHGE z_f}q&Fh$AT$|{w+yx@QVU*BPuZPq7i<&kv^6Ufr`XXEwBvY5}Ue}-IxD>v7#6Boc9 z)jIS$%9#yV|2k;b3{2bXeCsz7mnmPX*PvROFp1kjWU@mABz7BWIbxbPaAOF4=QoD@ zZ+c=khOnpk-58=*W1^=US5a{1Eb$uH)>1GVZbog+-8xr}o`;I9wTxlbm&%@NLBKBH z)7tvEmiJz0su{X7L~MFUyU*js6$r+!X>(@_&mtPTfn|!tiDe?PBq5I#UtG;FpWeV@+Z102AltekyV44HSl{u^5}i| zLpDp?FtS`#KX~`|a#rEjd02OgEaG3p!a4h)P0PuuXPlL6(~|2>Y(2>6B!cR>S>!kW zzhyaQKb@OSR+`ul1+2?MmWl$>_^RKUe%(R(MWNKgn@}}lqUa04t%On!i&nCy9=aMa@$EO+)4;TqLu7S^@?y?Z7>z@LIF(Gp>3^?OpDoP zNhtA4lj@Q1z(S;YXLeG3%x&d?6BfXuz(30m3SPJ*n#)eJ&$x}+ZM8u&-h~2aw!-j< zd_-Hqze}pgpPFp{86I1RY~RgJw#UM)gd|L~lAT(MhC&`vJ2yY^E)+nm<;rRG(P|NW zm6YN?G@VWjk19l`6Hzszc|9lGN{CLPmF#rd7H+Ezsp4HIfKDBHM&TpWV)j{5O8nBK zx;8wp5UH-pPO71BD@<5I+)9XMqLu74dnnvi8#LoxD1c^1#b)I`x~()zN!r;jHU0iBJlYWb-k+U*p9r@S zqMv9bJN>>AZmSLY@h%iVzYZNP@eyt@`z$FYerZzuEIhCfseY85RDTS&5+apoB|E8B zRf_gFcozyF)zR??mycwttYVUM&Rb2wv%>=pk?;wqn$a2Q3%3#?p=c#L2`>t_)rPe3 zE)+n*ClyR(7(zCfrJhY@(IyWP3Q=RvTpFT_}KT$9RJMKH42& zmy-l^Uu!DWq(ei|DJQ82_Q^ z^xN>LLUej8JDrvd2mOc;okT0y>9i)?RvUEUT_}Q1YU#{NC;F=B#C~WxZ4QqrM5l95 zHKSv4ez=tookT0y>9i}{RvUEUT_}J~tE_cRAFY;4>qXVq+}Ddf z4qH92-|FARxcM%*hu#(6)wg{&HWAUirDCTZWsabo=(RdRwEWUgmWzVD6gv+1-KBhQ zI(C)L2ZUB)%c>zq%Ua<+5vz;$(gqr_EpRDSE$^b6E$spS=Ev~?zl%--%7L&OE^(Dl zr9>NdF-F`-M%Rwv`yKUZ++5bcC!E;i+n3qZW=Mj77i9rqJuYhPK$ZYPnFNYlA5FUL zwSl5n;TmP+*eP?Aj#OsHXV%jlXE+-`uZD)$S|CcO3xe2HLLKOnyy#V&0RW=e`9s-C zJ6$(+VXkq|ZJmN|A&ZYaNNIdlny(FTr#aw~_a_kDMDjN313LaYH6kCzGZ6{%W1wthix=mhDq@-#vITSnR0|huDG(A>bI59OkZB z4?EQ}2`aV81huTkWn6^jAylZt=3%CmO5bXumUZ76T672XT5Eu4E5FGAC-8J$*PBK9;TiOwxKcx!$ma0T7_ zQMDMhS;PiN7#B%eeC)D_6qO)`Idl_^(1-4y)-xe2&vRJ_qYC$Ckkj9W{G$W?AM| z2EX=b2SBoYHS7ho+P2#f>$0WRj+ZW;ayvMBJqF}#>N+!5G*=Umy z6L36wP_-BfvPwE0e57$xas))tpi98>W}GAh!9ZDzE>m)fJ7RR{GM;O03r1Wl$ z>6ny0t3XuW)jq0Qg`qm1l=}UT80HTx|Ks&Rnz=GA{0}ALmjB_7G{65rENuH9ulp&B zc9fClO8RX4=w~@SFIC4i@-lFB#KwH3!!#ewj01hLyPId;`Y=^p7cC^eth`Gcxxe*v z*6E$GPDkyeIoTm2k!5wmDT0GKFQEL4*#?C=jrcOHK*-D{RvHs^giYv7^;_fQYngFE zwo9Zi`7$aoN5W42N3YG3^9ZqelmEHp>}*JB$^U*qt#BLQB>(%R)4px{^O=C3u_4+J zOeqO?4}V0}VoZRW{7+0j>6Sx90xS8Si&;>>O8)2h9!mh@ma!AStleWo=0mKArZbh* ztaxhOW}g7^v!w77$U0Uai!a$6^D`3JWQ|2k&Q?LzL|;hZ04gd{xqOZlO-<#p3x@#B zoad9Zu_|t5ZkCWt+!Sd&g@R-sYQ_-QhmHYAeZW?>{30D!WQ|Z zx{FP)N@X^~W0x6_iku#+j+Xcr%H&JpEeyCLkxexh87b;dYvqW*_R1cj3_BwacByv2e79)gd%LH`6 zjY792gD$pxGU%4EW$+l1K_3GFl=qvKweBDt+Lg6a#bCLtZTNX+$M&a%%i86H7r3@p zU_J0=VnRM^y|6^;#qS?(&Lc%2DLqnXzjK<<*Rx zV?s%~4+o&z!2NTYWCMKM2*tRd9;Eu78+7K+3OSYc-Q1$T< zT)Le>k;IzOy4VIqEW!4CkNL}P8C$S>+htR9rLDSJF+32YvqhyGMz|!9$rZy(vMYuw zQdlLw5q>Q@CR-|BH;F7`HzS<25jQ8#=$ID&OnL$LACaF-p)9^R5WD_Fh^v!s2O|es zhP?Jwup@A`T1C1s+yFLyfNITb>_8E|3s9A#jY6Z9J7_;5Z)xAy%qTzs_8pb+*}7ld zu%dF^H+Ho5eVJ)ysGCO^W@GAxUOVb$2}hNo4BSGtzDbLgeTJIwM$10uG;XVid`jlu z*!XM+7W*bEnXjR0F-j&OT6Px1LF3=LkU1l2!Lq(U#xD%iqKHAVUlxekpS6$LKNg2t z8Xxhqy${Aht);eI%(`mZ^F5}v-7>b?eh&F#hlKvX*ba@(Xv1>qUR$vQBr}I$St}%o z8302NsylyS75rO_O3&5+SX#|RuB+8N-(y6L8za1XV6kH9h4=Wk&8JUZ_ry#(JnE?G6&oE0i)9a9Vx1d}Cv z)ok$*(PeqBi^~@0qW94?_)|CCPeS`|_?F5KF*-zYgbi(R496cK9Hv1o$hbeJLTtKg19*l3yv z(v{46ae8dBhJ#(0Hi{d*_{7neC)P_5#hGY&s3wuD7i8q=#*C(zH403dO;$?spl8eC3i8ZKdsN0O!CVKTPA0c7Yp0aF)Kqv%Tkt7$tAVAD` zyJc+S{R+e>4rNZphz{j0YO(1GvZEO%zNy0G(qXP&RKAdB<-Zb2h?4R%<+u~q223}`p#oU|jDJDooOB&{jbdPY?!uy4cEk)SZLEo- zK~#ikR<1qy9%E8?6Ls9fAZa}K(9@mZ9Cs*NPD0*K+K`p?%2ui?ScGQ7lYt5{-L4pxT@zyb)Cm#ovBV=5(p|6O^B4#e=R&BQmgX%?l45<@mU8$=?(C)4AlMR4mhE zGL=jIj-lFSvyAS+Cs6f};F5Fap{X7hvVJ=oS-)ExS-;snS$}+}ko9Pfb0RTb6U@usj z0oo4LwhVs`gdhb1v=~%EfObHTrKkWck(s6ioW$#XnK>x2D@BI#2PLNAn5x9ga?j3{ z2ryLkBE67!xK?Iv-dMu1yP2`dxcDHq{Ambcx-Y)7815+Tia&rGylLJ&U7s4K1V0p- zz$BjXgkf2>I$ftlS-6P!gpk3Y0$5&O!VV!Z*RSC^?<&O>uotKzJJ-o>2Nwy)C~VTP zPb>n9=!giPP!vL3St^b&sYYsQmytMjGg|MUj*j8BL<9<^b-;t-)9!SMIyiiw1Az;6 zv8$ab*%w>r_r?~CY}mry8gI0$U9R{&M|AlTCSS2=0=+hkHVVYIBDsZZ2lT{P$U%_a z7iy?bd)${;DvBA#uIlv0_5e&rbJ^5^P1SLPxaMLjKH{MIARDj^A)^m5fvScNF^_ok zYUygqvBpCS7eNzf;#m8X!gzl|65f@p`Uvn`O@Jdsr&M`^63;J?63=d*689HI33c;p zY|xoWA_&zSw)sDv)y&qAJ}SILQ{f1^v_XTn6-a|OwNHch6h?zJQW~5gr%=G!i{Z)y z6qXf_^L&pj=eT9;c-+fi4=;q35?2+F0VBhaByB_OS-9pP=sI>rRr}_FJ-3HS(!ALC+N61Qgl1Q)OO|dM%zoNQ08C~>C!|;a3MgoNxh>` z)u7%Y)=p~$*#@!7Id?DnzOOPpId^aL08~-r+m~>Pw0u4_?};~Blsqxf3>XM2P_Wi( z0(pG&b23vV-A7;7K54etq&c`gx~e*N$pbU# zK~z~VHHaz-g4DhsD!%H#&R+#_SZ4c1gS%W`4FEw?mmEZWxoTSmQ7;TZ3IXDV7 zQZwBB=O;S!XnyYWz$SD)-~Y#KkTwL9RRX^M?@`t89_QhrBpq3~3<992V1-FsswMj9$g~aZe5s z!PF*(AE&x&`9^LJlg*tz9%7#WB2=6tI>Zg<^}qTP@QtD%4m0>hBaHku|C^|Hwv?L- z%)_c}=^I@d5`?yVqe}%@it>$!%%s3MiJ#3#oXjkSZ}hnogGWX4`9>Gf^`oV-oPy1c zbzYAbY@7RqrHjX!)y8zKblv48dP_kooSBkA_X!@^^sbf$Z#DfZMY0?Y&8r!U#2gxW zZ8|iz7C%A8;+^sNmVMqskhsEDD}w?ZhShkV)1J+1xjzaoY1`K7qR6UvKhPb}-9-1{NZJ&6(!VSZIrXJWo5&-qe+5-6FqUPz7n zsqy}Y%y_3Ei=%eGVc3ZYI=wapomkCH1Lc;nl|ha)ipPyBT@cH(ems546#Y)u0LK7U z$XW&5wlh$*7!8n`M)7Jex}u6TlW`FaqFDOD^F5{?+%mR)*rhW;W#?eu0%cEU7oQy1 z;iJBG;LC_xdzH0(>Ve-B9C!wY@j3tq3XZMEO^5L*s%_~oUKN5Aa2PSDgkaiLf-FTjj6`OV6Hek;M&e8k z<6}&jCc7BI{0aCCM^4x}*H%aw{DzeP5VH1xK+`hSw)7izhak1(H|!QS(UICrB>~+xAQ( z7*V=jAcu?Vi?WOB6H`c@UtGs{;-wT}otkZqmMW9A64H*`Hq)5G8ULBF5xPN#lBKZh z!L*Dnh1e5W@+b0G!dsVeEq`kKKa?5&G;|SJdM(3JOseViJf!-4RNXJtA8;VsGMUc< ze-G=t4Z-5GRZ6L3cHq6yU6uPwOhuP>ZkgoIw#}#146!35UrgBG$;AC z5LlY&zZGOBlNplSzMDX&uL~$#$^2JFw@=8a9X#{Jd1S%VaFHkohDZRT2mY(zz%#gg zzW{)cI}>pGexllzZr{xzNI|zR=>Y4^f-FV3eMDvwDo)}PeoLNxCb#cZDR|0nN488g zkp8KB4gRVtU)U@1`RI;Bk4+G}@|*zABB~}Oi~rCZ(m84C@MJw{*n@^-FoQd`%&HFT9WK=-m zV!5A*W!kRSo~*lGb-`548`|~C!03TLD>(2Bn)faM2jz`{@k#WnQFj(+y#PIKAjj*F@v2Up^n2 zzF3nO%PTxN4ebCKETi#xztd2%5aqFHBM?s-0vFG}`d#K3>=?sHawiCRVu$PqE1G&k z_>(SeOb?IY5)a0&Hz83{twC{4ev27}H<9ys3R#Ho-^5sxE~{b5@o8$pl2gd&Cu7aB zwPxVs=jEzB$;-wYjraFv#=F7CkECG7WnZtlR9-rr6J>`g^zKq${&NK?0h$JH+!1Z zS?yp%%4+Pr=8|7$<`P3&CsxX4#38|nK=2|$mk~xhZpy*0brNd1!h+;UaaphC#8VvrVO1f{uDh+GW9QF{ zbeTuAOcGfRh+hb<$FsSh@hoOsl(}CSFnwV`Jv&8lr-!5SbXf4d#N=Z3+W@e;pbqCm zWrvW;<`565gSq0z3F-y)ZIwbMiMla(m&GGXuvS@0L1NIG1#(|OJv}O>dP2Q5ZC1XR z!;7fDi7|&i4~`~Z%;8?Z3eB_wF^89;>f;u37^Rql7&luZTEdwoGydDl0QpX8k`p47 z0rFj5w%I4CZ8Vt@%NcS1V2u3sbkZlI=(9N@58oN7_RgtgrR`IC4-?#WgY`qLaEgnH9Lu0v}6(D zQ4}MHmeSMu+wrtaJuS!6y-^4IyMp~)$^Ncle~(~)SJPiY;R_EJcP_4p{s#hFl24+i z&Ab*_;1UtbFHPAmQIf$G)kMbpNERAP9$_0G=eh7 zRjtlB@2T&f**RL7oUD&y9f(G^ey+7vMlg)8E|9s=C0EVNRjAhosMn&$#(BW#MX_F& zqx+0^t)~Rwmw8xlV`&4=MYC^uY^HvGXJ_X|%yBEt#^m`|H71ezd&34}Wb2vADn}0* ztwi@9h3;`vvZTUpYBW^jMWB{BMN6ImMDGRA=zaJ@V}1btk1_91)mx*RM;jCM&C|2M z<@Dx#jp^GqPaU9B> zChAkhAX}>)8cVM%_FhjGu2FsWEjgB>uh4kEia%EJY8wrobkPu9O;C9UzhQQ;uN`^{ za(>qYv_!;=e<^(P$xP7*PdkN>5+85XV@(v`MtIRxxH5a8JeH6nES^6#qCV%R&eKI_@5Uu_t zJFUJNZY4x3(TYW@MPv}>YJ*z53k6VXm1V*Ny)0fod;?b+&=2&eN3~!& zWWAyg27k}#WJ&T0!<0%yTJLnrM}%7raR_g@EyQK16g?l3$HeOETnlR(Z5SsFDcS~1 zRLG4gN3TTH=vDY*o4nWIO>3#J&vR_$k}W_+57CE{176Hr^acXi32e1i80F^T2K)JQ z(HjZeQH~`?#$mEUFQLJ#QzL*$I#;kXT!A;EqBJJlKXlINEx8k(NaIeQHy|1Oc7gsMCyRWX&VMv$#>DZt&$rPW{U0;?eb^8%9q}bX#Xf z%U6-Ri&OlfE?L{fqbH-*@rkuY&mY~PYpPyfK>iUKQ!{U+`ifS{IO(oAz;&VZ-Wi^h z>T!1MfP+4P13smD=v{0tm$h;0irsbG9ZO+5;ZDl+q^hy}%91!T+s%)lR7%_>5?7UX zNKaJCda*#YvKWf7L(=TUMSV0#Rm-~;#*lLEdTam~wzuK$qxFHIAwEbfS4>r=E11+^ zNxC`Om>sW`>SMqdZo$C~JMrkpl@tP=W=j&4j@Y8awTMoU#^heMw!N2* z`X?_?OgaO%f+;P;dSzE71>!#I9S(@(2?}Wmu|z@bG6^^>i~~btV_mg^s49PyI+ri7 z#X4>cD|#XISj@M0DWjQIa5(t_b}wL~Oh!l`g!&+=<`3AB8joH|>Cxs%ZK!b z0V^~S3LyQ1s9FrtS4yO_fu^AR_#~;-3d*HHcH1Bo6cO3h+HZ&}s2k5wOTKE(WU8r+ zrLhryANa=7#B6iM&{so4~vf=U86SKTrDSSL!BjTKPgoklXui7$0#|;Mz)uL z?jNID%3uOIZmSxlMnw=%27iIUC;WGCc3&=pj zPRgcem3U%oKeJQu*7iXgvrj`q20CyjywKXodi6^VLt6@{h4m=|o>Z;gN$EEnK(=JK zu>hf6sdc7Z&(hj8KsrMZ!~MqcE+?|=vO9_S>AZSNs{^LuiFL-(_-6%JKy#T#4=rjc zJ#>ub8db%>#u6%7kXkw%u-a5hN1|#mYUyODmVD!mYpLbX8H$&7%uiqqw1(*#Pwk>R z+w>jdDrAMxCZr0Y*?OlHBNs?e&&+ZLz_x=WEYskYlhO1RDZA+3Gl&xST=3$xLH({qGbEQTrchng_xVhgA8Sk8^OyWM-L0ryShnq8{+$xqdsY&(6n%XNl zIu6_*%$$Q+Yrk`Aedca>Ozdk2G1WfKEuHre;c)V)>bpnzZ%UOF2`nNAykx=vq5i z@QtswmNwAU8kK6jxq)$K15pY?O(_={u62`74LJWaY~seQV_~~DF_$~Ay|jJ1?B4MSMGOM}p^e^(y#1n!Cm9{*z5NCk zfSXLz&GBV;c^*WDA>F{Y{LXK~X6yd7LGiMA{+{Vsv74TD)aUz0M^ZGTODp5eI^Q|~ z`8hN@$5{&4T`{v{K{Ied&t4?Fk$6cl&?yFW+}P=wi^&^eTM=Xop=of>F`mx`=bVUM znaU+u$~2$boO8O-H_kb~^Ki}<&N;~(Lm^yq!w5~N6=~b7t#H3?9=Jcl7@v##&gDPkHM1(x+OH#j6UE6yYIET%GEamx-at})9d)y+$DdqKgzJo19 zhQdQVrt*yM*btxAS@{H8 zY@@{xnrzYhN^y_jsk3EEG2yZgJIjSKp_SxMjibNFj3Wx{h~v#KMkVI2+KG_pwTW-0 zdM9zd^=3o$x`k}jn`Z&-t<)UXwo76QXb(GmnU8{fGaIfA!F1yTYdP;l)nXKE`U2WU z$d;yzmBu=Z^z4ggpVlaM7tcOhAi_V@KEnTJVF*uKJhRYk-E!e#8**UfwDNq9WiEBg z*y%*N+R_c^NB)XhRs1?gVM`#gB-Rj9p>qV+a%cAI%#tThVMz&zY&0)QVG=4TPVT>e z6-_<4f0x#+<*Ql7iOTrRI+CJX2CbfT=!-weNIR1 zLFe9U#V`l3 zF|kC_&fu9E`RM!F#~}##McpcBDDsE(%6=y3ftV=S=v3?*w@6R zCnaRsBEO|FTN|4xjW_msB}$%#kTWoGRzl0rmvT{1$k3wUkh`5vwo=1*G8ds#AR<$troodk z(?Bnli16JdRMidN6`PvyDwVd3JQ~{KV5WI<+?YCP(!dD>?3Q?7;R4Jo@Q?6OSk||Z z%s3>z5K6d;N+G*sPJi-dFHFh$#+DX*nF|M5pCI8etwLW++hA*z3+GQ6!Jq{|(!Bi~ zr_;sgmjQ?$p@Zv}afo1=%!*jbEeyNKoiOyvO{{2YEaiMFJ0*$8C6EE~IYMGkI;g2U z-;x>WhA_M_1vREHM1O|DIZ_~INadL*5U*$b@(BceNfwBWx#@s5@>SAo{?ATVk~u8T z+;$t-oCe9+{GHj^{Iv{c$(_j0=9gU6n7OnuJ6V$%4%spd{A;mrGh8Q@C-skcs>lb2 zjr%I^p?NUMa#nqrK9|YH| zH+@Ow?`_PDq{XtfsDK9N0YQ^t**?3I$xN4r^S6WZY51J;f1aK5zm-DZ{G4BLl0ZrU zP;nS@D=yClN)(}qrC9i+ys#{fK7u(c-6t)5QW?IOCug1JaSNYR#4>0KdmVePiL)s) zaSR#RfJ#}tqP&J6Q)bOXQ8}CS%qJ@JC0SIaNmS-RFFBo7haHK4{#=!uq(+X)3+CCj zG4*`1J4lmbTGE1ahO%fwTXAZ2}v9WX>E*`B8Hpli3Hm7i!V0%fG zDy`eG16ex=5-jO5S;??7-v?DJWBNL?!NW?@E60;|HGbk$vMopSFhIm|Q@s{1A&}Hw zh_&r4%p%j;cT{_=n~Tb{=0&+Dx!O`iXKqE+Z;g&c`)wTB=*X2!O^-BMNKjdaw4g@c z04C;>ug1%1JWtIDXwS)0qsA)o(?lnu45>7ckVbY9bp56v5%xc(CZt&}uEZ)~YYF$A zg&eXB8wU_|q?78+dYyaA;M^QFG+9bPvY4wAI@HSdr5}7Q1IA7j-DBpdRT}9Vsdv@7 zdq%4DO5c{gN@eSop32B@wK`JS($&+~H3!U|cam`i#dl$77sr@&K*)Qus4QqD(F#BW z4HCX;d=CWio#C3iKH{#x@dn5Evpi2C*4L%ljymZPSz|(wg4g5$)nM^+forZ96+}U_ zkouyU!g5N9NU)spB6D_a%FF>@UeTvvB;0lm(i5|t?CB7&otu!la_`>y^dKg@hz6ym z6@7xo#CF;+im;@oSZdwrA~%FN5`^woT;X=#x6!o0Z<6O<)<{uiixPy23p^^r zwA3)4CmLQ^3yZCh-F8a=So$79*N7tJ~WJXsM0zW_5eN zQ$J5uxA&-F<<07*dhN~XroQIS>h^fbBMAFefdM`h_2qQy-oup@CF9$`b?OG>>8XuX zD>D>f)J zcHWoTV^NjUQu?hGjoU>nziDatqAybacy2fwx&Qcw_zBr7H|$|n%EaitF*u)l8zmfc zI#8;NP@=f*E;yaYnpA7Dea-x3MO~4Kl@1)G5|^WvEp!U-3Z4A7fzIFNM(1M^otGHs zoJXfM)(NsX<;#!t#W9xt7RP%0=u?DnzB>IbPeWN3TT1aA+s08lm2W)QoRsd0%CEa_-*f0qh-# z$jrJKA^6~^Pkg5r_zI2%n6lf`x9C1_U@ROV(k^cbqQz8m&g8>?0k+Ue%g~kefXvnX zjz>r%CG#qcLri1N_VnNE1QiuALSpE&nTUuH9-RTIh!IL%D&2%+-9TLtGac!+_$!t9 zOeYW{d^Vwq-JkFrdSde&_H+o$bJmhfrv?bs%`KMK$nJDbzA2$~V^NcWc&n7;HvJBU zBjXh*RA|kRS_dKM_!^Mev_MgopyL~zO13}+gO1c*NLIW-$5*KK4l1GI*EuXAmXodo z|DjFbhg7fTJvY+>j6O(E-B{xsUe0F<73VG8N*QH*6a`4Vh$y4%9F*!y zsh`MW_QRdrszuYaQvHoSzuGDZg@0l7} zJ03ig7(GZ;xpn%2fWpnf#_JcQngyX?<*?zvaB#5{)Hjz>`&;4 zsaf_kKQ*hnG|#JQ*6phgk2V^&HB*C0r}%H?!d8#r8)lY0-Bxq~ zzOjNFV%=krs@|#>Wh-R*ltJGR=eQEEua{XS5g>JvexW5~jq2*W^^zWSbR0n~EN0{d ztUa9Qj}VLbD7<66DCJ784hdnpqi*RE*0N5F_9+dD9jdpBC+we)oXz^H7IXxJ)R4h$P0aCxUY&?uXnUfcrxPD(y1fkwS zRox)e)M+eWxic0gvqj}J@>M0TvE#$+oTDZ2c33G(4TO)=is_MmEc3`S1xo}0mx56~ z49HydUB`%*j8h|6@s>?AM z!t;$U-?VdDaxaoT%or+MtlwD@lJQ3C=BH-H z0Fg?ZiM#=oLR2+R$fTT!Tn9&i73b$5=Av5w+dLD)q{DXzayRP)X`9lw@BT}3n<0HM zwSld@HuFP}`S6Wqxd2;>jm2#gAlGH!dY?>>(_1NsDZAw0_z3zod>esL{BV`#h&ID z$l`&EOe0uG7c?7o%C01Wal&kPB5{AK2Jjv=0QS`G0KW2La)t=V)Lmr*xoDl@oDi5+mB=c`~5lh-mWmVC>pWUGkaVhObuQWW0Bk}sG!>OG5%Oqb)3#ngdG(M(!=nqi-GayF)f%0CyedoV)-=Exm z-!Cny?~6zgdb+OPqv!mG?)Y%~9e-N;9k&g&>91)ni(Mk@7pfP=?%ho^v!-L*I$?04 zQJclx5u1hD+ALx?bFIb5$2eA-iBkug*@~Sk@6NVHsB{Y(W) za`jOKarIH)i#rAM_PJX7jqpqoxtf>K2zt31Rl8h$40`{dfWo=Dk)5mMu;Mu(@{CKk-_|VMtjd9D(U_9X6#R2vW%GTi8AJA zmguC)@%^8%E~ZWi7I8ojEo&=e^l2hC7dT!-bJJ&o+>}e)KBYiOaXZcwx9DH+J$;%V zv1$D4K_x!5e+W;lqvGh&bABi2-{M1*yRyHBR^tDU zP|p{Q-5)BHv@5H}qody!P`IpqjLE9!x~}xiANCe~oc605*7E6s<%@^Bmrh3#z?)j43&HfL$#OzG)(e)f@96M zukhV~WlBO0Q}q#4Eyh%d5t1N?U4=pr=qlxRrt~n$SW(@#p)TjUZ?@8pEem5s{E*LB zQBx117AdO`G7V!TrNVD_5{#A93I0l%jMdKxBg|O+f}WVMVo!&Fv06J;%V4QgB3?`H zVxcj%MJB(QI-J17Y*fcHx!gh)seo3HE9pZq25OlCB@NUWCMQJ;@x4t0wc15gvUQ^2 zNz-%&T8x_}y8L^w=xY|!wA!2@U4F4LM6vf8t7j`zv}<`GneQWPR-j(khABY-nFeRpu2`Ap6=fMxP_4wG{$sup8%*!bcGhc3UqGNpe>28Zfij=G%V zo_2WV*%5INGdS$&5HL6!k&ddq zw=sQSFq7qxn>0Hug=)Yk!UV0b;Kgjwn~Cap3lX(SYW4Y6!55NdZXhGatm%yklr&1~ zOu>!*3g6o_N+%@ZFxfg;1D0m$Bj`iiOs#`}JS2Lb#Z0kW_Y(7R>qqJGi>-sG#)N7k zZBeOAO^qX?86_^1i%|21qv`mM3i<7t!Sz7G#{?9vl=l41!I^!1rH#G{Gx$ZS>X^ak zm(PoxB5bWu_dUyr7Fj%T63m)s{U?EhjL@Mk?;V6cbh>Lz$aK6>TU5(R{z8C{TghKK za9z>M6GQwNV41>}!%F@URS&9_qzl0bhw+16E@qQsa7k8_VE-?`<_vq_#>`ff7%86> zrKTQ5tsGWVij!2X$>SrPBw~zG5&0`+vZDQWODnpSo|qM7PltdNJ$t4xHCD|qbMwa- zS?wY$=VAdVW;3q>%7o1nWwe&PhQ1Xug}Xw5lGbvQDZtTX_}-?qv}25XoXK`l3{qOi zI@*m}$W37W%SDf~SjZk@B8NSZtPh#c{lB0~JfijH_RSq4mjj}?wfgwjWW71Wv58Hv_}?V5%ps)-K4XMQxHbw5{CH@rHQl!?JaMDJp}A9lA>f-5wAllDf@Cyg4yUO%8ECK$!xQ z!{WUbRSk=mEjfg5(aaoVe0JCi626%A68PAdi!Pdz2!N?^@^cb($?Ixd6Fn%h}Hjc;Mzzs#VS2@z_$S_!~%iU=%1ph zAy*kw2lxalVKthrTP7UFJxLd{`Nf1_e;Kg3vOVYdnHK!=ITuNO`>-Y=lb1`1!`3jWuDz}=#91Y-mn_lH{CUQH~Xp4rLo9T)$D+GsX{oYq5z}JPIyqmb<1rv+u8>oYr0;o!@0s;uyD2}@fZG9 zrD`XspL)DIY?y|d6+^V;DOa89wqq70iJvm6fqd_wGLdHlk)i}uLLYpt>y6j z--4RZEqY=;3VS*Pe3UL^?3fvxs5hIHz4dJCMrV3m6$efc9?R+& z%$VcyYvKUBg*eAbYhC?Y!6%Z2u4w02LwZbslK#sMQ_!QI;d`6@%PE%s;*LGpjfo9h zdNZq^1)+-V#@hkG`Gpuo7H?*poCE5Ox@!gNNXT$XW>fGDyLv^1Z)DcP(&ea9Inc2I zhxazXZGk$XGH^mzIEt>R$K^S9RK~GdDFEph+Y{&8s-fAB1s+WI)wmsIG3%UM?plbR z8ude+1L=nHnu4zbk7s)lBO4GQakHA}D*5=(Ct5{*r~{3J-d0&y1OvL$Q^r z#vFRx}POb*4%2_wv*cm+K%hk`vF0uIII=6GWtlBm=N z5%9ze85fcVF!CthfrPkSTQG=o@leN-pvp(G{?HijJRk_VQ3A9BUSh8wNcgUpVo^rBtL#5#Z zQW&DIY!iFqLAZwGcRx-p*lNMzt?G)oiYIe4XecfC<`D zTTJWsrpCM zRsfW#RdcvbC!*>>Ba0e!3R#YdYZYybTpA^NAlebPqmaY`pAbU8y{t`-9h^zSxj~wm zDn|EJL?H*LsxxWu?y6Hulr$UQ+-L2j+eLuL?wcwmQg5xz0`hI#v)>&YiK#Twmou*c ztTx&6R#Y|Eb3V(N{!rl+;EgL&`lo4S^A**-9CbNQ<=8$>w9eMb|a;&Qr2d(Xb@jdzQ$`j zbcrQa;TDxD(}-g#JY2Q=(i=9GaL;rT8`h>v+b8NXquYnZnuElaLs&j-&eSV4jv9Mo z+83yQU{KnoeQohQF`T0>Iry}US!=b^XO9o|AEK-1>2fhNTxzBT>RV0&S^&s-GVL3A zUxXq%kpS_kSZe(`K$#Mh!~6O#R5i@oBGyjYjl{mqI!nbEJ&R#`z*vM%Hj7!V$*XbU zB0JeqBw0dg<59H18TYVXk#}Wd)bxD_clHjp8w}=$oEIL7H2`utJmy%;&bCs=>PR z@XYuCi7D)(XQpPEBcn1m5!U?j~O0US3LFt)ZVK_)9X3ty^;?_qt1glJ4J)rUr-( z;Cq|y-v%on8^%krUzmav=`g+&{UqtI^RV0qVf-^O!YmHsQz&RDdRnT?(%LQOyprNP zgkvYhCXq>~DQ>-+hIfSMEdFnX?>UQKga@^K5Fl%Qc$FezyYA*wfvA@YC|pVYHM82$ zc_-;~)ve<$tkw7!??5z}wt4n+c6mI*V8P!a%au%k9V!T$eRK`} zSP6!RPkuue!mNqj0RSey$DFm5Gt-sH<~VK?KtO#?-z>T&daG(%O3tkzNKpmdXsr~8 zs}LgRqAI;x2qZE`je5&fx`cR(Aj`pUg1)HwpPgxh6Z9xm&Ef>51*g78fMPz7dTaSW z@-6tn*~j*y;7IbhKtBYm5E%n5(63On7#AoZx53lE4c|}cUy=tzb-#nUT)1-tr-;`1 zJRoZ7GpLor1Cpvo8Z_IPN$`NAV)s|d8r{9 zQ<?3eQ5gvGr@sp@CBv-z~rnPzQDL@Tk>c<1gR}wpeD$2FnocRs{UtZ z8sQ7fQPnKIz;QAlvXkH9cPXhiUtr`-1Tp3msJE6=Am73%SZTsF0wnJYjxC>e@GxM7 z2pjMYK7gvlcn9`CNd?(~k`XY0n;^B4-{QMH6M+(`js2A}xe5PG7-4~uAJG$Y6WG%s;3jOY+))`Dr`gHiOg4YP zzx&JvQ-tGigbOm}K`eS6mvl(4TUZ;kB~+*wSK@F5N~-Bmlf9!qfVyqE687#hXXME~ zg*$BNT%3%a#+{2%h|C|A$V6{O3UxV?mRCucYyYi23THHN(=&M$#2jpoSd|~4!;Ub1 zM2_MZo;%OltE}l(QpnD3Q*1{h!f;O&P?$n$m4>?pdh7j_0c?`)?HleM*hVS#Mtb^s zhmqBFYws31hL!53^kxlN$bzXM3sEp3WPz_5En965+5^DsMvUAh38M4@{+Lru3 z5rPzSQ+g9Z7UP0w2g6Nys_K7smJ)8t4OBIYn{xaWIIeoL^i^00b5CWjcb|PkFrn0F z{c|y^X3%-u>8rhDc~qM9(*&##D+C;ydr-9)$3_n_ z?$k_ztq7&@E%z>>lVb--P7lEz1#Is0+5*2# zUn!H*^M1kzb9z2NPt56IPltfh(<@gKnvLn1!NxRgTu2X;tP3s)X;4KtKS#%V=-J}) zSz-lf5Jou3Z9YlbY(rqhM!L>P|^rYnUWvTNNqVuGlFOb!$~?jh&$6>XnQD}q_tEvi<5Lp zES2YO2-MXiPhL-{p8yL_$(zt~!0EK@EgdbrCEbe0UAj;-0uf!V3L5^>PNxl5hw2^n z={sdE0IU#K1pK8dQMDL<$rxqaVY&k>Mp%tIOfIhTJ4^(-53q&4>F)2XRt5&PbyaHv zeZ2!UJPvdtIY!sko^4zEx2ESW6EP%WzkKc#b)^ zPCb|K#oVdq(Gzp0*wZ24PN~f{Go!SdVNjmt%6y^>&pPgxhBlZ)jn#B>zo)qHn7o@mgi>QDRXSZE2&rTj|A#Rlb59iC-owM43 z>*~)uZr2LH3h_X|?K%-vi*dUWcIVs$Rw5k69WEEM$u5WX$n8lU!CnB^Tyx~eGDVD( z&!wWK{#$Tv2-T$j#l4MEuSpA;JU+vvl9s|>DU(Ze4Pk`2R8OHN=2EezL%^llDx)88 zs95g7!TLla8p{x+Iwu&VvcVPMM6L1n)Dx{51(t>PlvGKZ%!mpb>ckcM9B$Ky0woQ> z-6m&76?|{gZCdNyqwF9#**4Ky2uLgR1`fCGS!`=PE)!~8q zK&IH!maGeOvS8{0ohS(FuNp0{45B52%kxqIF!?iw%k!72ZOQ4+4M7UJJXi~b zijMCoevTm8!Eky0UiCjaO9_|fLsT`3%d=C8Th@;iykjTcL2& zXPt2*_(BO;!M`fNlP_dv1^=1@*Hwyne4#G`R){$QzR>qjwIE-J#z%Z+Z$WweuRDEw(ccs6+Wng5Wx3{mazdo>Scxzwxa98)X{@QS@ z7aIfu0eI@U2>X%b=krmiBkvcaO>0E>sM1XN-A$8@)H4zGlSbNKDU*+SAxO`C)Qjke z`Kauv5FfRjld&DwRHiF9S&S1raz)F0r48W~=y0;|m?+Z>Bb52&RCQgnkPg|DcZq4s zt*6KC1mnAwq9-kmZ)CbM_Rczd-Z~zs!)NNH^3KNOWSx1~yXnPxHl}iPy-~fjn3a{I z6~FXA_hud_@y2z44F0R45>s!7m&%5e(Q6ZFk>#3nE!aMFU;$Tg3$`y9T5y-tT&#zk z&R`aZ?XhO+mevMCdG8ajm)9Y0VhLJt(R|W$uk(DYzQXv1oY;M zP_-C4r7j!r;@PlZ;K=f>!$98yo^D6?f%X-%^TZJ1D4Al2!_342E{12>ow7k zr){^@D>xh8%8Ev5(z1$Yf+$}`2_gJ4!b&I^;lH$ud=TxJe4R{BLq^`qItMq%mJxbw z!m?%L>_i!1ed=UG@JdF>CmBX1pFBKDec|#DyQcjMPCxB2=aYiZGE~?QOp*qq;2Wq~ zj1(LrwT*!kAMbz4)7c>JD?(em@6tIF??2*c+e8$xS3cf9riRm-rLsBG_e#JbDklYi z|Iqxu>V-DXCR5Vj|K+IUu@Uq-ng6#W@;~iVX?Dt^LFRb8;;`8#4#_Zl(s35`luO4- zvpvI9taAoqBPO4atY!GJA(*re2uU}p79%82kV2A-Dxb`p?&*6_W)yQ+GUM__CYf2{ zY1_nGOlHDRFXN`=sTm|uxbWofWpd%yM3-iODtz|)?{wtk>BdES+;tp1=NZ_3y9qn! zkfz5Ra%*XQa%Ot0-khWKJ-Cf_L2CoFp16`PAq+b;-I%IR&m34k*E(Htfywrr8bT=Y z+8W$E+L)+so}PtkI=z`vOKqMyP{rOd`F{fVW+}_?=xU8B=F%)h{D}XaYP0b&l5|Bc zilL(%-DkXO9iP~F$aFb+&@8*<=JVFh)c4P9FRhbkShr(i>AYIKSsiSS?Hz1RRjT#v zB~_}lZpRLueVq0`FO!uF)$n|aC@Mjpw4*<0MM71mYS!gr{V_AR`di0gQx=k`329b*x4hHFo?5OtO=q{}$RkO~gRV?@ebcCYCW4?h!Imnrlv zYO{+^lj<8B{87<488xtjhpViXmcS&s-7!Fa$^mT)hiPn6lf-@;phB^e zfUW%!sv5R7Tkc*Wdh}8R1UR3(3{Nd_&n?kd#1EfI1LPAhLL*;GHKX$`a+58Y4oZkc z3j_9tsTuH(T(qFQvD<1R)!tfP-@vx5+q!!PdPe%XD+9gT>fKwAog*cZCE`VrEfM9TYJmtu3v@B+-&Zz|ZdqQ*2rD5A?)BM(k;RAtT+TXnuBd<8=M@*)beervr!S zmh=p-B{gA$Y$?}u>89>P%hcJ>9~Wb{=0%*Pl+8oQ%a zd#%br@lkBVGrMA&yOnkcF}JW@YLnNix;t-^r$-+35LDOXt-{Osn7jc0aiez`8gPxC zjSOk_o{W-)*^}Lc*;`FLPcnOD+wR?P!zi*;;(SAej(*au00PPEoCB^+qJYuC28GZJp6Q2d4{hMFUc@YJ%Y8 ziSQCCQ&Zz05j)y#xFu`+l?+c|(7~PUgdFPw@9{;(2#SzVvnxhJw>b^jM9Sro>;Kg6w(0o!4x`pDKE_#|7a z)nRO>s0|PF;8N^rwRh{*ZNt^xZM3!i5I^ty3c_1p2{!d8&w~uxHd~q444ilV3)Qwn z@!}AF1-Dbg&N~aDEfzW;WQ&Q7go`LuxYTJjmt=7dKZ-$d_wZx%#N0#nG(Y!HI9l^_ z4cG0h&ycPvuTSs`DWh=%3lObSyk4QGUW7wvCuETQ8mnzAZI;nrYaYH-waxXN`mOEJ z|5WTWZ+GNN3RJ6Blp`jCNtP$9M#X)xZy@L)Q%1BFGi)%mUyif;b27fr7-U)? zboq3B1h;I15$0Ma4C0=$+3|XFvlD@wYb{1G5Vduzmwjy0OZx0yjt|{GPI^7a=yT}r zJY4E%Gf>Ta=dE~heP<<~!fkFXmomPdh37@kNFoiS`#j+b+xgK zVFsSpP-$ekF@aBTsx9Z3->-!#9ea_jc(Qc)#T!ewZo4vhKu45Tnve~iyujf}+hNO; zFXD0n!L^r8rJ%Wfm(zl6QcX`S{rux)fE5x0n_pVQgSEy)Wo&XTx(-zhS1n_vaAE=1 zSJQ*ke%j-xPQg+{H0BBRw!;#dG%oSA6uIjfv8dKwbU{SS&Z9>osEQ!6?j`dE4MuKH+$D-Hf?8Dw_a;&q| zj;?xF(pMWR>H3;2YhTqTsUfa=o%2us=5)d4#(Zk`U)d;a2qyIcYWK^iT8!Ft&OfOg zQ~%`YTyOM!ppO zGFB&DAXjkX&T@({cN7e1z0)GO?9Xk^OeShfBo|XvS0vwdTGH-HOC(oICkC6cuWC%z zxzlWIQmk%oPK}OD?q^poU|D*QHbUUV3`ko?(l4J_p9NTLdQ-iqT8vnqAZO$*x_!G{&R{(TcRQQ=>Aj_It*xs^ z5G_El?TlVNr0=5o9O;V~duoBX(gAG?jEV3ixS|QIB;L?;IqSS#-&7U>EqVj08t7g~ z&7@t>-%f8Ft1zNAL9jq)yCw-k|@JvnwWD(Ww z-qzc-rK{3i?He9OhL4`%;o*_){*l^9Ww_SW$I>n)qtj5+Yf><8sA*DiX)!fRJKH!j z2ToAMmLlmQOOG;KNyO~r#L-_##O#*v(3Z_~d_nhRgh;la`*M0>5j*yD2t@48tk=e7 z(!+KB8xW~(5wW_BR?LC*Xv0RVS5=yg$@57KY%Fcq(3qORjU!FzOPZUPqWh169p`Fe zNrhdfZOp9S4WyeoDVbAs9EMm%Y!G^fs$SfxlBHsI@_g8x9Gjjs(?$G?P>bw`R*N51 z-SfHjxwZxAkwzaOsGgAFiHUS!j)W6NJZyt6CdXgGcHpxf$CrZR2*%_dMb(h`w8<)B zh@WPa>=@z-gXP3{tN`c|{+)e7|K(3Th#!Xs5ekI<+gW;tJkkTgb{%DHd+_ ztAK+TZnp1;WxCCFzep2{ShMb2EY|!Mh{Swi%{PEVJk~sjCpXs26|f96FQH!I_E74X zh%!rc39spGLO8)Esrk8=+=)%WjXOE}LZKY9hlP}9C)s&6+OttHx5n;u_-OP55gj7S zaGLRq1b75^c4iC{Jk5vGPW{U0;?eb^8%9qJOo7W+k=L^(YKXd|XBUs2j9SMh)*3y3 zbjR$dtf_i^0qrs+wQug{Q(w^vZE6m1?Lph)5w^w{d`%3VdBf2|?_x7;Yg&EuCEy9Z zS|FiGh2Z<7X>wnTCP_QmwYx6%GrokX@*N3w2PeP5u4}P6c-2jf+0w*pbEY&}xuedP zH7YYR)7yvcx~4uoG1jE(+?t&emC4H9`k)v?bEt&<@ZuwKa&;h0DqHr@%Na+<;TjzG z8fSF&)cj1b3nkbChDLjb?3)QH_l8zG9X8s2tJAja_L=j=)V;EA1gMaMVQVaFwc~G5 z)tE45+bc^t$X)C>IY1_3h8_v7plu0+eI{`yB$81xqD!jmf@n5rGvZ6W%oy?D#o9MGeRHgmG0DSS9#V=8!=%l(>N?!u|e)6PVSO{2c z%HL6_YRF&4)kdEHvhfi<#a4A8Xv-mJ3bj@s+r=zQ-{R7@@BT~Eq`PJ8^@-z>*#*E7 zzG^l(CrAP_LgK80`9niuz!VyyZgXRJ>=GhPva%qAi5UG483WpC*z5!q6(>8t&x)p= zYF@|AM5G-y% zj0rnus&mmx=)jb@kLF)dwIH#h@ew|4%eD&Kr%-E&or_tY*tunFu{+t3su=SC> zCV7&H%sJ$Df&{V9nM3$iis5tNTlP(IWi#2i*Qd}lzwq@;Hb?fA%EOJuIQJqOB?Q-Q zW3xChRV(2b<5jyay#Y5^lqMT9UI|=8V5Ic%A6oJj-)BopGEW+kcNi+M8HR1}=ykH> zt&-VmXgofr@%0xYVwPmtI}25dkv%@ZxbUq8_bKdJ z!sjB_Cwy)hTlm)Q$;dwdovEzmq6>obv9Oy%6ps+d;G(!;X=a!6{}e8YPj4QWtPbj^ z2rg(=Vku8tQSx$>GA7+kwKG)C{Gjk?9tdfjnyzoE@5iNMIDFMnMGC9Ejp+lOrHkt$ zmDzEMDK$!$R>qtDY2uM?ccgg7KWHLVG84%V^;?;=fFo>Cr`Pik^;xR!7xjG(WLr@4 ziF%WD-iBZ?W3s5TVfZ)T;-LCx?a@R}LAc(r(Vv7_;Wt zMZmBDuXGs03J$iGtBy%gSj;+V0C>m&kjxjv|98Og0)^aGK?^I8?S4;o74l5Bj}*MY zHQ&DMPRLVJIG#q9Z?ZipbyKOVGO+Fx>S`xn!oJmxafy$#N1kt%m!a{}PJRU`E$x$j zn?@F69+cJ!kWtUc`98JC72;~AxWU0caQbC)a6aAmJvMY3LPp*A3sfyeH^#;q_lS;zC@3;nnN3~n zlW3Yb_&ncZfjGB}twx`$rXs04J;e964Tbp{UEGizra}3m?zcJ8R({K5>rz16O>`$Z z)sx9?s6Mw%bpC|I;b}p1s}-XWj}dIZHR6x6Ys8PI@OgfX_y+f$B+R3k2HY)<*7F5H zS*kP*<|&PjO^nSjm59Z(X?4h6s79O@n#9dF)y8D4+1YVn>5j_yY`uj1G+mSvif;LC zs;hE3*=oW>W&hX&u5acgF+FaMp%kqh_jLDnb$KU(N60Sm3!WsixUV%SFUiF=LZ@Dc zN}kCfy*72Ktt-`nLqb^QCaUcX%iQe1wOKo#PP~D2-G-1+C)QE57@g?svzNhKydg0PW5%6}XfGSjvdn>i9T;P11u?(!zlrY!G@M~9k!lB6d?nYHwhK{W6?R@!xxl+e8~d82 z*{Kpj>N8jsuFRrXX}q!5tFh%)L!tWQPpzTvhW| zX!3-m;U`8;ATYv%cFHM z3kq18-t#@C>D@B6roVu^&-pSbx;1Y&nuVACh0S&WqUDGko+OaWRmSdbWe(&2eG2E~ zR~fItBzJn>^cZ%;mdY28RcCI#ZW1eMH(%Qr#}4-^>l4HE>5Zk`lZ|~N|4^3Ikn+rf^Hz8b~cP5Q2S^?F*?P5q+dG2IQSiA8cmK zr-LqF!?Yn})InFGYB4%!5gTA!37rc0&~(^nZcYhfceRXaaK`oFx32NKgqJcfythCM zSKG(%?S)}j4ly&11?HQ>Hrt*q5vz_XR)(vcN-g*heXmCJa#hg4^@|F`_4C`u^#g_B z`Z#%5(L#;K##-#X5GvKcN|?V-k!0{FVIK|Nu4!PC0u{U^F8M8xMggAXAk*1+L%%JsvwJrz8)Ol+PHo>$S{^E$>ABDBJ>aUjL!Ua zX3yveDLhA%&$qVl*YXa^%Ir*Iurgg8MgE+@+AJbw-YrL>I3`U*M_#<7iX((JF*Z3% zZWdp9fS+4ysyn3d*_w)VTuIyFkr9(tBM@rq@7h@E?(4(fzTO`E#T2f)t82g?N>evx zdwVW@rj$~e(!a?}X+pAaqkhTg0Y0>+arD}Bqiida7HC`bm&!MC5?ZXLF9q%FT>)63 zd3j*l;fbhPjBAt-Xe&WJ6l$&Mmy21TKBkV`GPXK;u?+qnR8Afm>hBsF+E^MIB7Wvi z#MATyuEuNPYjX*={&6s;W-WPoqX!9JsbF$`>wpC+oTm!SeBvH!FP@RS&97JQG5oP;1#l7qdQ_=$5f zKbzfXJ(z;0{Byi#OQY4K>=3vN3%eimPO{y2c{RP$@oi#ltUIgAY^{!t_e%<}?~@k7@|)4Sy6mb2~G(K2ME zu;~j_J(1etR&2Q{X!v9oIeoFmmCu&#V8gW`nCdAozqin-7>btyNT@1{MbB)mAh#Etx3Ts0+be{$sog-?2=^7&H@o50fni$ zR;jYJuXki*q^B}Gf{PQjZN;@tTdKqLk*?wXfm(O>pTNxt&kdp_gRQ#<074eZF(js~ zdxmOT+PZZiNNw4=b%JO`**anZk~hHs)$aaE@4!I4tAAUqZ%a@Aa8Li%zHNO2eSO_^ zT%s|8^vB5)L(&uC*zy@ESj=w;e<3Xn;*u=W%OLhYM`MOHl&c$;u=jVuxXmD6r?tUE zstpOF#9(xGh^^I?((L3|wNb0{_Z04_l&T1HB5^ryjTy{3&HN^s+dEiG8%s^O_{?&b zqe0rZGF`_Rl_u`f6w%oF-pwLA7J#PxQ~@7m|kbGz-~F)0<5qZ;RoJk^Uv~Or z+tGZM`15SoHUtwx0ZaTXR4v95J0p!-<4(x1B9N0?G>rMQc=m5JzMXjX?+V27uiD4* z;s=VtazZ>i3AX~}?lQDOD71i&floz$WiW*HH)*jvoxT*bKyWf(g)C2iZPyovP#Rwf zvs$jB%c`#H==mOV9o;gv>-hJkGgpuekh+W60xS^}VGR8K=@zErohZzk{zQhv`wo)s zJ_sE)#AufzMz*Cn!loAMl(kk7T}Sn~g;~r*gC8)1@7x}ThbslR>q%MyGX99>**<{xkgmF!j~&0naKmkE*x_Z80S@bI=R-NPgO zBYpkdTZU`3ZAi6@`AmOb-$+k2)9oF?@3LT^1cL2j-xtwW$Rqswk7%Y*v4oiuU0E* zSF+ZYjF5Z?<0G~VHkQ%O?#yauw7avOnbkoIaRS&TY_NgFU?7Qz@)SI^7}{r~UJl6t!9e0RNi^-73-9IaGpQHz8$-#Wrt zVtErQArYX^R|L>AylKN`SgH1H9qQd!*bKC=wJiE;*xCVKn+6XQ zm?L0fNL;%Nm*zqDJN+wmBL%v?`bf{{E7mAD<7AWRUltSPEil$g-h+Assq*AN z`bJ=u2pi1yvH=aqU~W6d_n7Tvm*H}80QG*W#619E7~O8`$hk+gyKS9D_RFqzG-;6d z?0YyH@N-DBamI=-k7Mx(i>!*tbccjM$EdJ3q14&lzdeRz5t*cm*8^pB(11u3_YC%x zHf`(!cT(@B-of6@gBSD;4sYGkQ@CJof1O7`Z!b%ZQ!DrV<$AV z%W%zERT*O1O_v!I=?ybA21VvG*Ma7lH+ZShq@^S^w+YaEAGJbKu6HxYx#7}=3pSQE z_YQ3xEcC*vqo=racysUOp5eX=j(s)vAum`0)ZF`_0iSZRbcm_u-W~O=)LfshCGV0m zNzL^U(%PlwkO+`ti2$}huF1aM&6|e$hK75GH*bOaLbqJ7am&_?8_?^}GZ?Doo|yv0 zn3_wr(y-`d@)EvB1M&yc9eRp@j=-yt%<+=D@weHq~2!UWLIpG{l?yD zs6I6qeK8*0ja6+P4ZL=9Wt1{axXE@>zBD0BIB%UDl~fM?ZnMh3&7GnWvW7E4tYA%$ zTfou&G;dUngI#EQ0NatK@FH^n1}BYKU2#guW)hd7Egu1S_W2G$)s{`-H48gB?yS55 zlPvS;A{Xrj@-+QYqix?+gHZkao^3Wc8^2St#WZkZU5vLM8{xGbWpWQ zv7&s}zU&^1z}XKQwG9ko1@;#zd3+LcKA@AFlyzO4uqh9B=HNe6+B(y$KD`RzK%n8r zWHb)+0{NaX{B@#Mh0-FRM}^y%x39`+@mofgT2oM{h`rZ1`D8Foka*}c#wP^vB%{wv zY(90|#1ZG6su=t`U0Dr`DvCD>wf&{Wbmh~~c15!9TKHBGcXynRPjhbtl2z;rsaC`w zT#Hux!n_8|^>*hmg;W^-u`?h|7T>l&=)pDLwewml7lGJA`L9LkB8UXrM+B~u z2Z3Zkn_hn>il*K*vJI5rU>VMlj3b}ptyjgW;5>1kmS$6tuvwVe$iB)3mpYs2Vi!Ly zh&oZ6XuQ$D?tBHOSN}YT2j@X0pIR_^u<~^PitAqE1Rh)jZ3pq-@nR4z9>g!nJlN9| zz@eY)6*ZWjXbmYD%vmh(Z9vmFSxM7>@@Vj}`wjuS8{K7?78NW!$T!;wJy^2 zB~h-jh<0+LAXd6 zza*3LX=yNqCcR}e@b+6BCDTS00^JS-ic^pT`mt~V-60^7Jct;9CfmkXl-xca3=rjH zqoUE5$wu`LfbI-eciJf{)L)723|H5Hx+~?Sfc4xNjsjTT8U6-Dg}5_ZJRJjfhOZMT z#9(V@1nk*j`sLy0sQ6}c9ofwqX~QkzH_V5{TXGM1j8pH*L1x_s*y`$5@h%94A1oE= zr+BW@k71B{#-n--_cRP0fCJF<2~JX%8l`<>5VV39XBLLRzNb&))$t+KLSb~YdZ<){ za^vC_b1HJMTslOLn2n|kB`{h>y>cZ(+1B0N4N+{++!#dn%LKmi9Uw#9m!AES^bZG% z5`I53U6TI6sQOf8{YZ7Jw7xbuK3=M=KUA$9SU+(DuA?oge~22^E8A$|NI%?gL}v|P zDWs@HeNV>eG+j~t+2cBNvev~GVM!l`^;XN!Pe&tn?LKC@KV1W%@+oZ9aew;v|9_%F zGI}31v7_&`)J%87e??T{cf&6-B?rxnUj$AC zl*uzs{noVhtLEqNGdU!7#W`FGPp%VoJ^b8zx%t5ra>aMSIrYMpzuxQNPxANG#P#rU z2+2A&7-6&I{qGeHvglHH_^c7L&OZ$w$kssBwh&mS)A~@Uh4a zF#`)uZqmBW--{1U)Jr&N75sfQL0WPMZ6K|MhN0lX)m-^qAxr(#*m{+%ur*(mPzcj6G|o=(&(Mdn6;O3@Fi2^w_V?n$8TAs5vp#=cP2fxp zp$#}YC2^_h!rw`*(h8UEj~cI6`Jv#$>r=wQBN^^b;j>~`a_u|7P^%9QDFZ=sy0+(_KZNTM%$am+$-)#J>3%r)Fne7%W=sBF ze3+$P7-o-GumI1gc-Hf&`+I5vuW|rw!0QR|Eesbz?K=s{;c36tQ=alq*@wbA!%_H3 ze=j~1QZJz>e5=2wCQv8`&;}I3d9G;3$%Q*OBaGh__o<&6S0D4w&4;T8!g2L^e=j~< zQ7;TvUVr%4{e3loEjfgyuoY6Na>wx<9pV_v*I}CmcK+R)Sbq+s*8J)8v#0YTb7a)V z$ocqV-ObY@>*3D^__GQA^xZsd2IozkybpFMC&8_=-rDt>o|;oD4VR14Q>S|N_juGV z1_itT2Es-uckT34EAN4wk^&AYUwIW2uDlxlDwzYUycXU}&7%QLS6+{$Fjlbg27H?R zYIu4hJ}rVLD;jvp+DE)&y7FdhZ7JJy%&!qCBkn?ou8#HsVc74Z4InT9-U`(?M6Gl< zb8m%B)9S5~u|Tw+xMu`nJ%=a9ManpgE-jds*_;G}HG@t@PNvpz|MN`a8REvV;YqlY z(7f>KEUSJ25WQw(?Z_F4h@KqDUxncfD=Vi{UEBwmGjbZ#T9sI9WZTGgT{9Z>#aGOV zALfp}LNEENe32bG{#OJ5u0HC!&;W(y1O*v4^M-ecSmQGwC_$llYV}T#hKPpB+0@(9TO8ax zR2m%Y-2jJ0dNyn-id>p(qJO)mO4qHxR3|0}N6SMrT70*`gm;bm^f&ZG8F#m6rj}2;p0KIX(%|EKX*u zQK2EJRAOdpBf6dgbdC5CV&>!|Dl&lQN9LvwWLos*z~-|MLlT=S6*hS-V??)N;h@BN zspvc`Ai?RuRFWQa-VRmUg3h%*bXq__N~B{rE_|NoVr4BAZB%M=!M0wKq#{xe7w|t= zDwgsWL0+gxz`L?^(7jRo?1--*vo<{iK}aQh)f0bv3dN-6;Cgc!o$zRW^FZ|LqrR1D zS>O{O-UHD+b`CBgg876NFsSme<2w0D>Z#t&YYH`p3xuG(=opguN(1trqRF_z#7xf7 z6hvoxKaExGqewTm^(fML7*>|cLk!&-jN%qYX7LSX--1&JQbj6<$k*3c|B?yCIkKZ>l$@AfT-+@JN{>Lx(sJ041-TGQ%VC${XHHl72nL!< z{I2=q9GJg}UJnqt#BiVgA@*KKla?m+vzH-dCChFE8lC@nI0chfl+OSBrzo0w{->A1 z`8b!Um&9lk28>r!K)&qg%mm}OC@zrbIr^=Exhoi$2H!miDmnNLUz>=@#&~i@_Fn&MMdbRStsG$r4IW?3t=%YSKjUSVndQ8A?Ynl-dG^K-|B?3R5qr3 zx0nZSfzb{4bB7^tf4XuPtkT$m??I^A9;P%B#^X#8%zPDa0#IZGamJoDz+LQVm*MPr z7P4m=MM1Nv*EMw^D zgH{(@%VyKlH8Bg`0;7^-J$)NgZ4WyyQm#BP(YTsE8OSdJH{(_t+9+b}q>^?S&aJR9 z2GI&JDH!ew7Yy%9A(iZcVO*Wh$mOqtOwA=Ys(#b;<8Z6@O_xoUM~m0VQ|?_k zdf444jooa^j;M(=@!?Jptxtpyv*{Na5xM&~-zT$+Awy1wN)A^TzP4n@Qfu;t^s-BH zX>w+4!EVCMWe!|`y-TUG$SiAg*>4SyPd1x$*(_kdTVQmXEM0a%)%Hl2layJ&CXATk ztN1g4F*MS;%(xam8qSEJ!5~-{7WQf^EHsK5NO)!&k?@S>kucIWB%G*_V9qxU2REBJ z4Q(9QqTca6ChF}nT-5hzQJ+<+z+jrJt)3RMWZEHqYN8{AjuCEAWbk_lv}Og-NcaH1g`*X_;(TA2f|3&xj$;)zcm>6 zhKPTo01@Dxds*?dDdM@%j&>Pg-Y((rVXQ4hv~@@1N33?aT+Jq#KO~0ETVN!XESWzE zRof$(?K>iA!wv6?k3h@JIUBM7`WTPfWjK#_;W{l7l|dibDrus6#EUQn?hG8ABk%~0 zhPb%FEn7El8R{(!7y5c3IBx64t$n?P0$dTZWoysY-r#FNUY9}<+4=oGaq2IZmnI$T zn0MhF!uo11`5EoDy0`*ZY*$J~hnP6p#_U#^!_~GXCJ(Pq4h=!Fqv6R>NFt7x0(Z&$ z;V2=Za^=xc8Qxcb6p3J3<_?t`BOpYeZAh6qS#od2_)jX%c`aw{WCk+C#4M=fumth7 zDJFo>=1Nc*hJaltL6!h;U9#j1?1E$ok61X%>YPs`n=Cm^%#XLgh&x%9tbwX+k|j7l z1UfhB@IG!0e`eGLf;K@+?=V0MMGTbfY$IqdZXUE(why#8zZB52Rk;mWpll|_9p7VO z+%Ch#`14SV9~1He=5}lhMys6zUIJvCnL+KGOPnMP$&-H?Y)JmD-HPRgdtk5EKAW7& z?~v*3uB7aC!lv8_nf7YcQM}6$HG|B12ZkkT8Aw%)O2oJZlB*oh6Xkm61jK5Uie1=% zOqX39tdxcz*EMP=Nd8=uYQ-K-cPCOPmcXtcKA~{1T%Ck0+j#9o^ zr^QJn#Xo2o{)=E5HWcj(gtP>X?*a2x91$!4(mW%MEGFR-$n=ED<=KzGEDm4@Im1J zqsG~Gi2Y8;kU8Gy23BFoG~r0dvBL4;BW_v}gm#f6Apqy)qlQ6)BOkIjl8b_T=(HSX zD87I#ONroIVzO$^Ds*JW&0@Qr_EE!tk)ewlyYHrXVVhvsG#-~fL4GII1P&h1yZF7fmP5{ zlS1IUV+pk;UCo*SdP=*x^N+L8gdEDm zG@UGWKMh`pCCrZ8u5ukySLd$Zox`{2A1@S(_z$iJ)S|^1uH?%AbiJ1fO`sYk_8$p) zi<#K?+N5Z%S5HMvQ1riUW#7gORbn6vkUB2Ge8Lyxu) z_`lSiYuuvl0dkGN&n#*i`YwywF2gM9seC3XgZ9HKXfD3Xi!=uE3|x%2WaH!{7k~4Y z!CZV*3f{AG@pWbbCyG8+cohjI_7wKp@e7!0UvM;}-an#v8ZOcV-iCAf?$bLwClqlD zf2pDVu3)GeZ2nFGn;4tpYm?29(Ch#xy9^fvr`V!E!NnyDK84+pO>M)`5C)&IM#Wj# zw5ijD!9!x=yah&?$;<42fvW8h2FqfTjY|W(H8;W%^S;^$03(Tul}H=sI>84x8sQobysU2s{1)KI zs|}5SQ%_vd3qHaEWOF%KZX6-=x`D3IgW#W(ZclZ8*y=iL#S539XiYVe(<7)0XP|Rm zEg|a}ad*O3O$aMr&jn91gBn8Y1gPZLcf;4F5aR+WZF_z#)|N8K+Me&S+T~-+CWi82 z=)46+?#W_kGgNJl7)scl-vaCtftE=Y8?vY#>@aG(43{h~M<1FdsAG$yVLJC7-SItg z+r7a|rOEiyDV;qXo}M;~ovIqw1ZoXM*c0!v@RkkP!oTBCH35Al!ATHf&(; z1$IzCUl#`Pe!9*lS7F1XFkVDSSgXsup|Qd^UdyCzSA|PhJL#3`6E;_H6DGP*DM1iJ zIF!Cp-4MqL7C02#j&Vw0J6j{#zNK5>@L`*S=1SvY}URI_@FYVWnG zC6hQZ@<*Xfpf3S3eVYcu15yv9pfj`GICYK81fj??1b^z%{pk;QI4Oy36 zWtU-g)zp*FGH98)px@RT(h^|Ei&%!13~R$D5g6s#aLb9oYr}I=Xd}ks$r1~T(rwNE z5s-L`ZfnN8cxmg{F342}6MRVK=t@oJH}Bd~W3o0L!E$fD&Dw^sL?*JgY3)Wha3CjnJ~B zt!E3`N){$a1(bg6bx_G?sbNu~0t9NCsbHa`f?VUsM0B$sd#B;{*Ol{K05(Ax*N^XILVw7ccsa3{d0DcDtC)JDUOHcYS@1(P7m~TT{K1_Rd zaDNI_+oNIB6p^gBk+%yd_+grE(lB4v(E-qf|3vos45Aks|2i}-+2eVCJlhKigFU{Q z0yKj?kjmQ39&@iPKrZ^L;+Dvg=TXUUW1lyK_8$(+0hDkYI(bbmq-c8tp7(^JPy9GP|{5f!4XvU(vUUTYK}9KJDK*#T`=*1+34 zD{J9znMC`1e8ME!5qqqxTp$MFGOX~6iF|HYt#1b2&`sug8pwOC0VOM-EUN8N;9Z=m z8U%iioYZ8peMb3}b_kpOXR!mJ)Ce6wW}%&xPVag#0Wq2p1vamt;adEe*!d zq_>O)-d|cBCDTS00=*0f6sI5wv=L6AhXh2D2N5ICAiI8jK&xcYp$^ETvit*BEtdc) z`FeUBB2Mrv$BT7?x^Kl@DPIv(IT!MOk5r31D|BV=Axy)qA<{vDs@M^6jj=>?Te z@%KXU_agE4V)6G9@%K{v8wc~}cn=Kf)0LGMgBVtWsXPnbE2A#$Qk{8l@S#=)t&R8E z+zu6|dQ>EVx-25UMn^G%{+b-yIZ_xOFO9>| zd%^yu!jAgBZ%^rPBN1zU5Vs?QkWF#nc>`7BYX!p6Ipu7i;jL^Jwtb4K&1g!l$ih<@vdob8{8?>@3K z^A>+UO(02j-v%Ttlp%;hWxDV*SAJLX zQa|H%`9~#;t958#&1Pb(*PUldt^g}+=@6r9)1Y) z$|*N!l!)ECSZu06Rb{cgZ0nAfhm1O>3f1p zpe>)t{m2o7`3?TbIum4QuJZ{X`$1L zNo0DGoFdjD$SVAP#k$P$TMsbNXiexrRjaAwKO*P47S3^~U%fe!nTuhcrqX9Eu ziD(X;6o?GL1bt1>hyhSPTF-T%l_JR$H8~KvAF(76x`dZDdM;xj!)4I|DoX+!ya96) z#3L~4P_-?nJk>;{HEAt0D=s9S;9y8CrECmkmr_VETuR+2rPQ%~Gvdor2qg7p#FwU# z1>Z?DZ$`W;>RVxKo=;X}yBU#aU@oBr)Wyu+jQF8wGMR5i`~X(9cMIElGvZ%~RcS7N zwb)!KjNUX@t&SRb5GTda1aQ8Qz(I*uE1|3PU`ZSWK+j`W^s1hN_ch}bm#n5tNaeZ9 zT?NM!x^fV_hQ%>MB3Pm#{o$eNUirv0SPQT&hb5V)XOfzcX40A1Lu=S ze_#NKe_-HflRr%OiD4r&2xrw>IO(!Q*3^787v=Vl{sOHB&$6l~Qw^e$?!>nHgn?I% zBCz!6?SUj~@t`e8QXvb7MCID!_*Ez}l3PZ&&>s2cQWy`5(jNI|MA6hea_D#%6H;qA zF4MIZ28X(@8?PQ39tDZol`F!9@R(t^TRqU71>iIg5?vjfEvkdHb(QJ50pWQv*&bGf zApP9#T~2AN{ADD+)K86zD>6|M$>YnQl0zQjYfBz4jpT7GVXa-7OXcX|A_g;;cpk!D z$s@rE8|+rHM#lLio189)$@3Nh<#ZLQwnt7c<}-~8Y`h3mqlu-n^#lG?r4AKQM%3v7 z{v8_l%VQM`1iYY)2zY+;2zY7R5a5_?8WPwg1vV0FwdwdCQ=4`ft~R%{B1T|1P1o1L zFFa7zW@#?!!nPY zQ?@VHDYB!TUJ`22Zw=Qk1;Z7mL_+)XV)lSoe&7~gn?jq5;Z)=JJ6PRq96x5Y%tdB4 zq5Ewyc-{h|pX4LAKZUC85xPmnG2ZGLL6;f7HgEy@F)p^ta4ue#ot~hRjI}gnEq*Jf z1`otDa4g>Viqn)F`&c-~el`W|**W(4a+5yS9K%XC`;qG8>VqW;0_yHWH}Md}ETgOfdBW@CQGm%Q;hf@-ih!BC*P}h0cEODG=av=`e57`Tz@`Pa+qrPx&^M^iPha) ze~HyHr=Vdkkg^A8atsOixSfxuas)5bMpGNiPwrN;%1fGnB?V)p!Ei^EyhUPFLUe>13 zWdquRfdQf~HMCd^*jw5(uvy(6kR^KtviKbEo?_%=sn}k0a4$6^xP3Z+2Ncjd7c;%-s2V%=m=CQiXgAMI<$!Z;kK-()+MFxL zXHe*GywJ&}IDZLk`N+$&2{`9%?NXd-ib$Yz&W%=Zc)#*b#SlU0o|=2)wwJnbWIzXt zn+8iVKWN$!{=JB3u+twwE0S0LNARj&Q4p&j?FF$4>k7FB2Mjw}>70{x#;pgCV$ME! z+OOYVR4h9T1Kce8vqp4k#1!GbV^v!b24+B5xr6fHN~=u;?FzNUCGp<=`ou_i{O~@^qYLMy_TkxQ zc+sefr~ZMx{S!y_N;`9J|K5SUQ8=&+Xsp)i-R{oz4$uY+izL6W1KR75?RE5b40Hsy z*Fnv(*u_3*O&P(#Em1>hWYx@w~UU%k+)z zXGlY;5z`0;j|`&yxnl;EyTO_(n7%LM-p2vrAV_}f1)o_di-^Mepnm`@OA+-eA)=Dm z4TnPt_`egE0W>Jx>bQhzQg zm0P`i`^|Ex0yf2bRmm_G3V?c3Jyl+7b~r01Dnng(($cSNRpLxmxgVN{asGYq68IDQ z^YITq-1stC>E@`vnMav8^vjMw&)2jh)q{SaLGqkvh^{EjOh=yeY%9;kR_(J$PluPS zoJC5YH+cr>CD6Ei21(DC&K^}>2BlCa-i7#C9Ssxk`wSehbRxXfIIAny#(93S;yko* z6>w$vCIxsx)X->kT-+Wao%%q5fu%J{UP(hy@{v=iDc`l_MGlx7v8vQ|E-8-+uLn9@Xw2J3!px`P`txDD5;V|cQ# zT#GKaIanA4FQ7V6p^k_t*>RaTq$`?*&31K#w^mx$&A=E86?dLRAAG~=bl+&DYlAK6 z*JEqaW}73XWc0Mb>dB@=edIUwEaEyu?jUc#O_f5O*e|J5;ERPrsn@ zGFU%XknZdQzb85nXe`w$k0O~#iw0pVRQf^_!J0>H9B|EQPAsO}jb6@yUeFMfcGI*_ z?#UoBl)GXGQ0}t1rj+{t!boJ6D&Uh)?&7IMGMdg0p5E!_n^psMkD!g)yh?RZH zTrNV=*PiR*&0_MX@xoY1B)GuS7MSvzC5SS0Z{@|yVF@64Y;Hl^K4UQ1vxo=+OmLTe zI~Y}OpMIkiMmJ0TB#<#JRS3_21t*gPs7Z>*Uz%6$j7HegsML2$5-@}V(K1IiKm!a5K$e?hNYL9jbFtFurK5fjfVI8 zhyM$(onj7&$E0uJ-Et%$iKYI*--|D$3iZMq;og)gU-b9YL`oGo1dlLh9O%K*LPI3D zFa_>v|1AOE^UuwPt?z_m>v4ZCK5S7h;nFnoM}A6L0)Wl64J_=0hJe7^$R0& zM%Ik19XVs<{AW++N7g|r>*3D^__GQA^xX_o%wL6M1Zg6uE(+H9n@vrxuw2ps8zkR61#UJ#xTZ{9EfN32Qm z^;}n$fe6GfmuIDhtxL;nY4QzO4QmX16=LqyrmplRpediN<5}rF2dZXX>7i`2S9<5F z6@dq9=E{$V1@l!PHiSG_m4sDIo;K#frGz3+?2(ga$Cm_orX()e(7i#D7x#Xw*a11| zi|Dt2lnRSP^ z(?@Qe#3cY5K?FEjIUCg?o;pXgfVQ03#3i4ICgWNgnGn$ejzT~`j#cf*m-Z$uDdKv< zIPVT=f{nB#_)R1&k(Z@L+6A_3@YED|-RTl(x;9!|hJb>xlZuKZG)c({yZgYqkojgX z%+O;(fuLU#*aX_<=Opp9Nyt#ZnQX)^$7OVMX>`IxTff3yqzo1pQE5i{wbei82vhE+ zC)N9fm?Ce%q#%#ro&8QGcmq?7xFoNA(H2QoJlz|ifMpu7A&ZvS8bdoezQ+z*+GTj~ z)>HR@Iv14OE^37_wzpAD5a$3UOoH^FGvufyfgcmSAdsY?_zIz7l9d&*4MqL@dkRfq zQOct6ucByb*zJvS<(ni`=<6_E#|Ne>W&-54YnyN5+Z7CNLzp}XDhV5b3ln^8;x0*; z*yXYblfBrBQYvk2HevD%F-6`&pfDMMs)iNUeqn+Kk0TT?VPZqp7AB7GF=1kt z;lku%6eg__DGaOScC^U2-HUdHv}jNgWfjBP2D6B8MJK}504UkVUJ6n=S#s~es1lr^c-odp?@k6n`szd=zK5V?NqpT97w0qa5uv27{sAhb6(ur3 zsJEF+Sa>^;3VWyF_M>39#mMFRSk)$%z>xQ4m|;llU+mN zB-+Q*$Fphr-eG4D=GbNjv`O~gm(j(LtlJHK`fWHrAz8MWpVYO0#7gR?CX-zRC-uZOT#QJgLfoLa6Nb`i*?%`<0WrRh3ad6O6uD6E(nhhIzy!p*qt_R-2F zumQcc+Ki^;+pOUxb7vMkirGvM5R&g77kuwGw@8oPAmExj2qX(y_gycFrmp+e#g1F< z#0?0!z|$toj9xMLreGi&WdHgUP?%(2IRu51&sN6BKDvT{0Vj;~Un9olB7OXlO!}v% z!X4W57t&<=ajUCjipfH@tAK2A5|V5$`j_;eXCm8I378}gB1X1;W}vmlwE?Y?QHfe5 zlM?g~fQ~+?9Rj81{FNvGTj{0+2N<8KNR6QgA~c>()E z`^rV}P2FdB4+Q$CJLCM}YODU53zuYO<3UXnj(uWOeQLN}vGn#brJGTQGh}VCRYdyJ zthZXsofnPTwM~;LBwGWZ@&s(v5yE!Qu}Ldrf;JsLccB-E-uSsKP}OI8a#EwXtWBa4 zkDqHfF6%n~Bz$pMSIhB)M9~%ez4+p?s28@P_eRlG{e3kNmnDagtfYdmwIC9bM0+gS zaUOjY-@s;xervwH(?2&Kww@P`t$X~v_^?I2Fl^0=?)!r$J(oB7duaksvhz0JsZ(n( z7oz5?&k9reg`VC6{^|Kp^|#@u`i#F9AF8OA5LErUzn3OZB|C2es+L*?h6`T{qB06$ z#v6^XpZI6#!`KhQG1l=nK6}HfHK-Scv6P!?m-u^Y0&{W@ZNS_@!xD61ZLa*TP^Nxr ze69A+&4;gZp(@0}gs84Qe=j}`qh1)kWcE#R0NSZIcl!Hk0$XwjZNS#@n5pi<*&?%) z!W@68@weAMTOa;z2*+Q=--{1_)C)6u1OArT>na!e78-@r z9N9aKycheY>OUk9t@ zp=c{i2Je7hqv`ru%2i@04n9Xy#;Woh4WH_>ei%PTb5s1Fi|_bK#5w{fXC&$GtE{pDs*X6nhB+n_0*7t|BT@*=2e1hRzX zP(UeYpR8Ga!BQUb!kK~&PQf0@iPu_o z<%Wc?8!X|6Vh)a|d-(2{OzCL~i( zULRC)97Vy`%}cr~v9?pvU2V0?2{D_byFv_|w-6}lZiK2cD(Uc|)d;jq(%F!8Njkd> zmvsA4?#w6=T7qsUbBC6o3!r;L%GE6zVYahR%KfobF_|{d!*cAq7NzM z?hTi68&ilryOg^#+O0FLKipM9y$Obt}xuddr$GLF#X5JOGAw{T<9fVe`stRl0Y%uXwmnUOqeIp z_XYtVL$ORroV|I6n+|-as2mZ$^V%0sca$Q_*Kt7$(Q3(2MOxDJslZjgC zV7WS3A3dVl?35ikSH^1lo{y70> z6QlQvDe@Kq#pqk0YJ0?}ohF71PrN`aLIKO{U_%x#z@)6>d+bP{U4~29SVo3sh!lp^ zaywdNe8P)%hP05wzyxHxgAqX?MaI{{MaHcul#^X#Od0`HMn;(3Vh3W6IP9VmPT>(3 zk#I`9M;{%EW4>uhn-^Wet{Xqn9m|KdvD>{9!NRtP3E4Z1mG1;&1pz{W~ek*3pTVQ0Hd~Mr87)Hyo z#yEP(e^w_YsMUUfqO!U}gxahfh572QlylvXYW8G2;8Q zgo(N!3%QD?M2rdoJtTb96W{5bc)pUFF!5q&z_%*4wrI?Ri5EtFDdf&yrq1j#T%ElsqS&T5V!&XD z0d%en#F%0r3s+=Nk}o>8MlSU@AZUAQ<1!fFL5l$@4?b~Lbn<&@F@wD=8Bj(UO?}d8 zDwz|IJUAEuAJ~Zw8c@Sq9wQH<*{`-V$gV7OX7p-LCRueQ**WI` ztUgR*mrC%r|2Nn1!jvG2@0g1b@7xEYKfW#}T{`p+8 znK_qxaO@M`d+F;FYpX7n_>NFs!yxuRA*D>ygd6yT40rtr|1wka!j>kTEThzC* zPtI?gs(?)~F6vAaV`;GNa}31Nd(P1i1Lt-3fb-wZ_n-_$>Y6-4N2TFKR=k+{&-Hu2jnT zz6--=tO@~>#3ism8%Pc|YI zOqa}s0}?qMRoM(p`E;R&6?Z{ZgB53seq1S7&D)`^GfxI5o|-&)$APGB;7UY?Pu(VY zc(CqT0-;o|2YxDcve>rWRqf@Bh#F^Oy9P4%(nwUc(6$iOFg7X|sG&qPVvVB(qAEgD zO%hcNs{X-1ZRtJha4=S@8_c#Jhny-Q$ zM*JGf(<#aS0XaNy& z!%KR3FcJNQw37dy;5lcZye&X^--nhZOC&$Z9{=5?=h&9R+MN2LEdH>VRyNZ zVq@<#+)ny{Z=qt&E=DWMv8qigf%m)2mF9~y@K^xLDQYS99F@UA7Iog~60O_p!Vb%E zJq}kYdDXiH!v-%HOdB!%Wc)g4%ZGc9k$53gHS~E4C*zlJ=s9e{3xKxQ(6qh7<;uh> zsjc)RY5-d1r(FmMoy6nXPJfyHDvnzvPCy`&}JwhFPZa$VGN zn-~`;o|x|eznCr^?t54zrIZ`w&|KnoErZ@IO`2A1pxmc*e;mi(k(NxzvxD(u+; z63K%wjHhRbqN#Zfo_bZaacOmOyoe-<#zO2qxQRj?(;7g;1>E)y=ic^LYez8QRAC$q zi^3>u)~FaVxk6;iKi5S=^HrasJRm~9(2)OhFysviekcV#CIwes4TW8ceG#fsiQTud zOiAx(^yV!?iNyQ&Vn{CH#V^Uk`=quY1Nv>fA&r#pSVK;x#4Hxwg}@F749N})e;ypj z@SuQg@*raD;Ab*gOB@PlmGmAel1zHfKLEP2MJ1h5n$2H{u53|B0^ODJlG;62wjeji zD_hR}AUugHTg1~baAk|Sl;cooaHLv2kbY;&xr$d^m#R=J?YOjMyQh7;wFPgE?#dMo z7GT$f?o)vP-+Fbt$qQ620@RoyBboI1JqdJy$^}vNsRQl0Kt;*^eS07g;ZAumq=hf% zEhV%;xaptb`@R=mE6<44b1GwTx0!Jl(#OH&f%|B7bu(vjU1vI45H(`>+@5UB zfGzc>&I{^Jnj2>J%F0u*S!w?*wMJ)jewEcZH-1fjaB4Q>r$AFa1IptLz5%Kl?%=R& z$SA0cY{*8;z-b=Lm=0nh0L+4nND%wGi_OcQyA4R$Xwp(SHTSX64=1#>pAm${c5$DC z_Wpi!4vnjm#JLUK8~StdFku7SNpiW9J5V}us9GzotBykoqlrQd%uYxRC#j8}s%=l3 zdF}~3IccDZlamW*_PrJ0Zi;W4{=^pXM{n-vh()SA4)?bM;tod*R0zxqK+7TzvqH1QIv2|i_WCkkCH6p(}c z3i>=bao`%L_8^lg?`AG^2vgqPBXQngnI`uz-Cv13-|4pC*c#0?S!Ph45bHx`Owt?Zh!c%{Q zwWWR&$!j$E|JZ7mlb5N}()T!jAcoFcFwyE!YQKT1hEfaM>am0GS7qY=a)5T=xIA|$@F8*Aw zNBheuI5a%kUl2u8H+XK7o)9DGeeejFw=&j!M{eRszxcgww0rPmo%xC_1w98#k)u6iBq951Js|d5c zvmz9UdvbAlTLSc^AS{@FcOsgF0>~i13{a{b)b1L`;mJuP;aKawMdNR-l#oU@ZwtZL zaT7-_$(5-ech_C@kJ(3@o)+#Ic}_p^u$4w80*1$Gan;xP@?EMtLvEHtyDmFDac*VG=|U+{d$D zxpFE`o716_bf_hsQoOMh-?w0jrn2NR!&Ebd;{Aqz3&?Y>c=5H_R+8ei%W>vPGp>Jw zy*Q2Q-&+0ixnxtikBcet7EEY(#NWKXW8$y<#xrliBF69FwRz4&b810CDzdjfpG2g?rSk?AD1V+D~gv2TLeTvGRKt4y) zrkYAF2XyKFs7b97Jhv1NmN=TKTuqppc^F!jr1o+_YRN>52&NFhA*kfD(+pZb(6*Tt zSVTKXW%f?P?M1Y~a<#;xBF^ykWp*KljrTSjpHxXv zcY5OQ@J>9NT6zn#<-@i|Exiw_8diA=YAKo{(iUG0t^_iE1I^bv&J0o*+q@6jl&tZC zaMpNr3a|{;KniO!YorFWe~aLx))>j`9%G1aVpW?V+8fZmE*8)(HcBlI(ac7*&-yS- zGw}q!X^tT(DXRTWZ}S1$x#{(@R*SSC@Jt{e{oGNXXSBFGiO{%bJ^&?YhS z3cr|h;^x)qsX&G{{e`sPIWri1Su_>iUV)R4?0Drr2OCAdOhF9dkkYOGOcYJ^b#8-D zkijw}6dT8AcDzrxSk1v@R=JVF!IHUIitb5i7wBz%<*2*`Y^XJVI{obFJOoP2MKR8o zPz$0?gyaYK8*enQcLoF7pw%ZqC9jx7;wx6i3gz+X%1S8g@}kK2^%$*Q0>y)9^&&9{ z7p>x#WLoWM3gFOB_KF(J`>Y`)3(YJveG1StPFB+NUEwsnRlqKJ5HXq#GW35Oz$s+k zqbA6txcmd4h;$VSpj4B;5=Eq|NGf-wyrf@GL^{&9j7WbKK8c8Q@pKGCq_3q_#Xh(q zFYgLAhbxrxAAUj zRbqXRkon3zX4$@*E;<+QrSH$JR$y4Yy(@Q7u~Z-0S1<41SDz>hmHKm0sod)A+iw=) z6vG+jt4fAv^nE}AO!U0g>~L02$zpiY!r=j{66edx{m?|gwi@n(m%#nlpO24t>?_6B zzboqRXrS$iS%A0CnqcVERH@)$zS4mCVl+@!EI_7MdOhdL7qC?kORwcaPXse?jwh2&g${3jeG;2IWxr-i7F09Ss#Q{Z}|@Fe(9DoPVvj zkPYs@M8ASO>j2>i0_u3Avr&c^25`h)zh|ekCV-gNIqHaw2zM=wqaV_^l=$StYm%*A z4hSE>>dHH@Dj))8_dRMwYO+UmAMdp<5JDuq6<7dRvN@0v8m;JI%1dimb1RE`s?41Y z=$Z3?lHqglNyu>V)S3*}L#jN>U;t^ZjU+`?PR)b;x>^}d5u?Pq9V$*eu~-^~NVN15 zMW;DsxUB7y-xPY4DqhcJ;*~}PXHcYTwaMc`X93Jjq3I!^_X9L4AArA*1W25n7FBPb zI4cYebze4F9xY---gs%WTY*rX!C~TTuKFfjDe9+Yk#*4kTNYz_u9Yrq)o~80sHE}RQ4uQ)~CcYW(F>HlYiXF^wlCo~8 zvJz(4ibg)sA*$#=#w(y{TN^93RR=NVlW_LMU=Ruh;Yh=i<3qTcD$lGNbo4q4w^&3*u* zZA%NEPzQ{@hNdoU5Z9rLlXeL;%nYl@f^vVRy)r4uIPRn3>gEomUu}e;vZFSxD!_|;mz58Yi!>u z6C$9)7Fy7Z{*X0D4{$RuIv(7?=}SgG6wc`P31}t{0*QfkcV8`vrtj{m#9MZ%vO@(p zA_lv>!y=Cv#LD7}!YD}M;*p%B|6(Z7>r`ZhA}G+93JIQUGGcAyhsBg_HMo zVPY^&!9z=|8lh>_S zl!B4(4d4bc?9ftbvth?#Oi6OHcUp@4aWFPwCf;GJYMXe0ai`kp%&mvs{`$m7dHnFc z!epabtPbtN@Ev&3sEeomfxZ0`NA~u^$;`d|dk3znj+gch(CI_w)IPBT%5`A5j{Xi& zu7ir1cHYzyD20XkMG@CA##iDbB?Q;U|_28%}~`?LLQIZxKyQiXNPM6DJO>%EJIdd^H6S?PCLd{xf@Q=#9{^L zXx!aiu$W7hEc}fJDW{-i$=}=GbDS4oI1h>de}QBC<{+>raUv3QCQkH=0*V$=9xJtT z?XN`p%_oCr%@oMIQeJ8ePqYwPOfp*NzYu6*r&&C;w$n`ex2^3mua`#XzOhoh4ykwQ z>D$duFxD`WV>{ViY1B+R_MJC7Hglp5@@l|cIllL~M(((17 zYPvS)tGj4}z5w@-)*E<#yHXq7IT3ULaTk>R1-C;fA;Oi?;GrO|fzHz5q0&Sn2d2T` zNuzY|^+Vd>qS+wH5hK~}0m4Nc6QQpjSfQ4{3`gbm|Wzfb}0(P$j1 zQhx?pUI{|pHz=p3JR!BA*3p?z*lYVC8N{TaA3GX!y_ zusL8tRu6eYPfsLt@KO^c)DSO?&H^B)I$8ws5NO)an=2NMK)S0@jg*<}LIdo$kF^Rg z+!yD3GVTD_RXhv{V<=RBkt0?{0n5xF3&OuM9^Q09yj??3FSBOH1@#j`M&J^FH4&(IbUFF_J@IRRHLrOq7* z4vgBHLOX~@ikG-i6ipQ>O@&h$YcQQ#tUckB4+R6BLiTdvJPnlkC-CBoH(rvvC> zO^2faY&3EXV8j|*l`4bH+`M;XBcT+VQEy@)1T-IeuSxjn!QeCG@E)k-UECNEJ}Cj4 zvCJelLfdA9rm$*U5t`SCLBQ-{k_5k)`hZK4O&G7%4E&+1rs`^7H>`oRM_#M~d4W@w z^5SRV^5RMX!Q??0^5Q9?XsVTQSrldK%(;^m3ab`Aq4aL#+9AzsywPC4HyG>&jo*_3 z92SN$3WZ%O^n~m?uY%%1H2xAX2p5gxmt-36&m4u!K@UB)(u4;6`>bIm6I)O;3>hMr zWeNcxDgM!q2HVwl33w(CB0I(Jyvn#T8T`TI?v;|9{J7{jBlymEH1b!20dCOxzomes z61fCuCJ;57uEoi2`mehW8Nv8x}@^M z3M87DY*kiS|lqvRDg*Uk?<)xDF#2%v(k+H{LM4*Y-WASth z#2!C!xH>voJ(M1D?9Ol{YqulPxQ9ir(WoG-7?J|Q-cU#iuQ?n+k86NpZ zF~;ACs!t8gXpFIfsVn7``X+_oT>7as$m7u&WO0NY zHl5VVUoLKb5*JG7h6EK~>F>oCR7|~u2NmDs@2iQRVmX9lUF4y?kV>(jVkejCmMV_` z>$Vb9%(Hosypg#zZw27lvBXLusSx7%vIdVFR^kM#h(}3Yg+vaYbE!~O7^lq^M@j=XdvnXk!)u6N53NYr`;|akvi*c+d>*h03sQ;vE4LhH5HOG} zyC-~wyq}ug628fWBws-$^gRUu{0Uz*ygu%QSH2>y^1cRcZe}TMan^L?^CQrJ&jPWW zDdx4(ABy@`jI+?!lDt-W5nU@?fXfYxOQko7uxuQyw0l*H810Fy2#A>3u)1$YlX01& zZplhpv5#O?+o93ku)50(^DdX)0~yKbBxQ8Rw9+$2AW-;Fb#k-_#~ThnRCbl*X>Pby z9aDQ#EO?IDfy(P+^k)R2bbP{R>6$=73L`J({|fX0G4sF|d~L3ActFcZDm2cRt1B?> zBpi`kVk|U@8e?AR9kc0fNe^&20owABxF;+w2UQJ+OJGw!Q8ab4`MJRv0;M^mb}I<@#&ww#(q=GhZa=1_hI1J@ zYoJ4I^*V(?>dIQRjGQP@d~UzLWka`Jp8_W=%5KM=NnA z@LEq8LA?Z8mK2uZBG-jb$;Us4V4?*CZJTL=&u)p09!0( z(c>3$UB+e78R<}lMpH^@+4GN9XCA0z;7E+J#c4>6JmbQ2-l3)beF7@UgFq~jIrM5# zGUEu0VwIj-dfew8&S6PF5-a~w7$)uIV+{gG@oV29xec|-| zuz+FmAY$|#WbWS^&?=dDs2DQoG5-K4S_=0FOaky%qD+lyOIN8kUI{Wa!ceC?(Ng$b zMoaAkB+FscI?qmw*^1Me#r zyK?JQsz!FR-ieNCYSribrWtdumoYPCGQ1&bYHDIe1FoF2b%Z-DW{@Ml7)zGesY{5@ z6&7G)e+4;czS2OfM>BUVqrE8;t5DTvfIH()4v0!T_G#97IRhTDBVWS6;j_qQS$*Mc0Eol>C#&3lDy43!I9j6Ac;awZ4X`}CES%V>&SrE<;2`o(V3;)yJ(*S zNm$o6NaDRT0;L6*oi(*8p(jalEWO%Cupzm|Uc$#^^!A|D8`s3ymf9bNwtO7qS!#b8 zs%BqmBPrP1k@i&4fRHQhKaea0qC%94Oh7B#1fk`DjeN~t_I99N;Zg#xuR$lsl+fS1 z@DYeuT4M`e7|+`_rcw(+N~z(=QOwyUcIpe`4cwzYRIMF=(4oc%kTwbCTw%Nj32-1v zN?g)cZq#$TcZo99$wp_fD#FRebCYoQ>=06a?MQCNHM=2*YIIamJP`a*?p1^JI|LBL zQ=H0~0F06paj+gA1M8_0tf}!ho8|P=w=Gn`)NKnY2mp0$TfkR6@!xtU9u*<~Ic?+g|@aVAXp=x_{*zq_& zt+*8XVDMQ4TDC84Ll#6s%!_81;a;@$xOJSBsGyt7^)zW!y=Y@V=R(H4EkqJw0Rc(s zzBdXXovcL>$mD73PQg4DC7%IubfC}RR8cfNH%qi7NF*Np*6@01Fub&FKqBaFtZIv( zEL((@Tp^XlG}TE+LC$hOChm`VZf^~qTaZ_ZXaVn7dn2?gY2iNwEhMwHK?|>gN z&;o+C&9snVi}16-aEsBzr?9F`6Mt)n57V^0!_6QwvCXeTo03m9P2qYW zh)=$n0yBe8klZryiC<`wpH;1Nlv(DlM1EGa#&=iB%N;I{pS9~#0IGSjApyrad=jTp z#nUn1XI+cVj>ZT$CW`6q)w7(J;pi5oN9JDDm@Xg|kKmz%m6aFY3cPA0n6A9gID(>* zvfgdHn>sJ%)}hhKe>}d_PIDmA@H1a&DR3!Z!5kDP-Ata-Cr3?9?VoYasf2*K3Fkje zs4X&~R_fnb^Krl07Y zQQwvO@iBkJY+p+rKM}yj_7hQy=)Oa=%($QEE74?JGSy9{v`G6GtZEzNfqtTVqz<^7 zNV^6=av; zOScuckarUfiW2u%O(v_oC}02#S)$N{(b0>;mNK=YfR}bAYi1-sa_jt83Koqe3Nm0? zs}%YDMNzaZZk;QF;iVNDNsP;}sx2`B-8yR!kI^x4($;WM3toha+d+8nTip9jYKdu^ zbqSRRB3mVKRFg0IwAdFsU(N1PHVpUJ(Uc@`ynQQk6?Jluq zpvl`VoJ@q4%5!@yiM-KkxfjMR$@{b0{mRrJ?;D|#Pg@$~jnvX+^3LF?x+fSjF*1KC zR<+4I&{MT6N?yN57^FAL>Cs2?{r6fniU5jzy9z9`GT zJsgL9z6ItcId1L6egGL9_r?@h8XSj&n~CF+r-rSP&r2;Y(&2%X$mgY2aqdd#KCj;+ zsD#g}<1_Fid|u+|81Q+mE{`9C>w5xje?Hym@S^JN@OG_a>+)z^g7@ib= zymorJl_z4WazMyL35Xy%XO*j#o7(0E|rBatQ;nJIta%7c)fvfUPL-7 zBn{B3vN=djSw7WrJDS@M#gLuIh;{_lL98mXVDYIx{kS=xUU^{Eb$GU7Y!YtL6=7=X zibEy$9hWWAr0WA1NCW;*@LU2Y%H!ZI857AfBOoHYMjl4esmqN30bLV5IC5BUL@V4!&r z4ViofAHu5kVk*#Q(2eVNB~g_4zzbb-c%kdiWUW>jZ$N~o6f`c!K{G7?<7KU;A@#*z zNChp|iOA6X_Bm)-is1JNWOH^iO$*e_ij?iJ zUXyHh4OX?;uDvJRo4JxoT2yFt+6EQlz!nY=-x3TnL@w=1ji=Cod4M?O$ouPIT_uV) z3N@JR^we_2GO)TEEJI?+@oDosvEVY-3HXW_6AG`~Be%WOTx#JLlPtJU47^?{5fjj3 zD@|x+dzUrLWRA?j>*%RN07zbM2wqQ?B8IZvFW{Lx2rNox=Zm6f>e=}x$L{WdYj;bv z8tj`?hlKqD8Fxp@qmVVY)EF93nID><{l%;&wIH+JYRJDg81e=WyekDhCJ$6@hr-E+ z=wm#vLh%5fM-U&pQ;f^S2lyqK4>mN14Cttdni}?Bum+V(a9OB+Ay7R|S5o~4!m0l4 z0(!}Vh*7sh|wfrDzSAid5a;D@-L&)hju8ae=Ow_$NwnqZ7B=c}%}^y$)*0CGC5m?omDsB^{n zoQTZDf!=PWaKWQTDFCD^Xq-~af8m4TsBYYC)Yi5AP!q5r@6iBOwHFzIYx~)Q)#|8Y zO~1LnJ^`lE;eCb4MzvTS+J|ZI;6wyD;MZ{`}YoDGkXW(S6 zsy4C6hg!C;RZb8Ur`(u_)fmVdAkSMJqw`*yb{Hxo3vZL}f{dZP*c=3e!cZDG?o(&M zsf&l-gwbEg9F6lJf7>mN@tcFdqGYxpX$P7uHwUz;%oZqW!ozRtklCUnrxISgQu=27 z=b%$*wtOC+gxMmVjsdeJUzr@6*f&`l%{i0%;AJC_f2?t2&Ggh6Y7N15Nmc!J7%nRk zS_Zb~yY*9jH(hjY1MWHK&#hJ?T)n+3cM;?{AKF(h@84ISC=8YQb5W_>>h0U52NT_q z^Hn9oRrpjPRwd2_mHVNIf=%G}$<1u+&qv^V2b>}a9*z2& zy188zR07bY>BOwX`5M_$66+TlBy&E;S&V}ulf9^CTbYfm+D6wm02-|rT?zCit*%p` zN89Ss^Ch#ZaypbksYP4;YM3A(A0||V*jpFr9pdY+eJa>oxQB!H96`oE*y9-*EyGR@ zZk{0m@L%zEqyX7HbUKgL8qo+m+lxSxnq#)wQJ_hH?3pw`seUel z;Uq?Ur^8bai$HV<_4M15D*<0I_d`&!C&phLAtXz>X& zWE0Y;iZ{F(RSRi$J5gmW9`$@C%tY$cefT7Fs(3mEbZXaVq25qg_0sj~*-pJ`w$TpV zdI}Tsy!E4^Uk^uQC z#mdW~;kF#Kr)OT7##U`zTZNac=voi`Nqze^=)l&ueBMgu-VY@WovVfmBIp(zdEnv5 z-b-;$0Mf;wE=8b6`Bv~QEO@IUuwb_gGG{^I$n()$WsSIZ(Lj{|RI0UAdv^cpdJ5tmWkGpQSQTVlCH?b^8Z^{2JBTk%3O=hF*zH zETvZl^jTgCXEOx{oZ}zp#8|KL;ADfyHecz4<$5%M<=3jg3Pu35s1=Umi-zwPn}F{E z=oj2n1YZo#`W&<($?ALwTV|F0UkF<;0&kcpiZIrj-?X65HtnaDTC^j*d(4gY-`Idu zDhr6jz+A;zpAI7N)iY-BS741PGTa5AI=+DkqkL3=6VUIz1J zSSsk0Y%0tbK~qh_{8Xsg7ML$)Gfjhhr z1KTYO1jXvQsD7zEQ{+lI|vcP5n?)UT=DN58Mk7-f=W+Cc%D^v4EN~05y z^K?4qCtC%@Bdu}eEAZl7rIx{`65o``r|-%{vAZM!qu+Yc`@N*#o;2;o6tSwk8xt7I zyBRGh(>y?%li8pkpn?tq_lLBk4(?j#Y7s2xAALed8wUT}Y5|SK%cma`ex6mGD;*Q& zhI+C4gkdKi6SfO;A~buj94YQ&!o)iUNZjz(Sk>l+z`e=k(GlP)W$JEM@bRfpA+>i% zh0_iSKV(gc8&S*b)*M>p3)q6RqUKSj1~+`kYM+yYX+x#oDg1e8%SS05BkJo=)llex zLB}qA63sELNANyj1PYqk8 z?MJ1*(&2%X$XTkK8tzK8{pfX;p7zfGEOA=+bbJ!dQt@;QI7?TLmBt23wR*ar)EzfP z)qO6~sl7Ae%8Po=Uj_C^YUVwDxHPJa8ke0!o{7E9&46}Oj0gE%w_BCC81wpGu|FU8 zIDM}hqyA}?K#Gq7GNF#|Vp z24=0MF;u0oDM`sG)@`lGD6>j8Rs}S`3`eOIsa`(4%ddb9L9IXoR*!5BDq8z4EC6 zBS`{VRR4nrZ0fl=flZZ{mq!b zRtR$nY>f~pu;p(p4n7i%uVsO)r&@UcTeSuD%i(1^1-6`u6xd&cwjBan7EuEGU!ag7 zu+<_*W(*46MFT-6it!szN`+mE#SwtNnW`F7U!^fBa_5xG z2r)W9O@jMgtSSZfzfmhva39=#ym#ef2yO);5Zto4rUdtop?fK~e}Yd!aEqrF1$Q*0 z76tbc#;ONP=~<{xafTycU7yINJ^fTG_%s%VAV#!y?E!G(@2{&H{O&Q-Q{~0WVe3e) zwC5HM70M0MOTX|7lC%TJ#wEYzMb+CEOczVbBLOGm1-Ce7%P(?n@`q-KQ=*}@EV}e8 zD<@;Cawset&wPaf>FQuN0rGG83cE({xV3AQ0Ki8*{`KDRSA4ml&xfjDowExE=Sm7u zeW{5muF99vlR} zniEf8bouUK2wQ;+DiFw0FN<{#&K*r5JPuVW-7;COmEZ!}fq_!7+!z?h)kmt6qs1J= zz`$jGMSxws0k=O$IN;t&KD0$coc^UX+t~h!>|4pl+4$3_{wAw>vfM(Wh_>&sPvOx$ zIdMuF9rggVJWEa5L+HS$5RQ&h=El)+Jx}?BmS~n_PR3p8K&o&}qVPay+?)_^-T>nR z78v=yL91D%9>Uh8HQ>oA^(ku%9F^wYLTXm2PY49_22920*;@D#R5i91!m>);43+Ho zjI3Fuh*&V;4`M^m=c**EYVx!(mz_MZM^2s{UlKuKYYc03>gi9bmO)CYY+w-DfO+0V z4;7BoQ6SW-wFZcU!4gFF=kWMSRIgNnuE49seuVTTPNY3kNRH&@P|D@ekXv1m1a;*D z7+s+73kFWgX@U*iTcpt7IEfzv&;|L)$Q_V|1a(91AZ&f0Gc76zpigK<18(UTeSix% zO|TFe@a`(|RPg3$f_YKj1iLGi`C9UvCV(jmOY_200TUwpNwv6?kO7EjD$Ju3?pH2A z%oxB{sYLUY2IR(QGOlHoDGW6Q()RXxtZHv>CtnY7`5Ya3sj_`u8GFac>5YS>{pIm- z^v2}zSgg2h^ywoIa|Z?%`eV=tGn_H_4u9%u5Pu3UI@S4Ykt;3_fh0q4PxgL@F2(Q< zaTClMEr7-*8n4J-tMsIjobS3Xg-Ruj)&P9mG81DCzG0C z>DxU5dXMWe{cLstKBP_!Sv9J;64b`PUe~69&6UVATJ{faL4;;CwmAarMg#9@)6iy_ zH+|cqO13zI0?x?pT}~`2&78IKaDkNEGNPCQ&Mt*H`qVTQrQBOPMbXsUTdx7a%chpF zLOT^wq+~+XlHe7R@)qBGBNGjfD*6urDdd)1-k>LZ-GVCmDOPu@qMutWbMDTjihe8x z&szvoMZbrtGpmYD20D+R%T$pKT$d`c%VbwY?Iu-}kYvgQs-k*;Dr)yA4H`b>OBM~A zhe)Otv-v2&>a_9Bwi-$%I71=Xy~h-iU7!htw5d%4iz_7m-~trVC2blSQ%LrxlGR2Q zg|vbgRVt(h!WGh2Qp8Vog>;9sIdb{y#;b>hM+*l^V!gCSZ&t%v2x5=4f0im#Ct*P( zlVvM^O!{gl;^(d$uwmMQNZCUq*VRwG6uKo7%1Qr>K_$mh2wx}bpR?3bD9YB1n*+;I2#Y(c4mpo!Q%lbkbK)%os-+i0)%K{RC|f22jd_xZ?6K2;{39$d zJ!K=orKkQ6b?*Tu*Hzt*Tb8tvR+1%IR13oS z8+-PIvauVO%gZ>BeX^h>CDn|7SpjP1D+MjhP&4+bicvF13qIp&X7}9Sb5Ddl7JKe_ z7CS!X&@#MzVM>N8EvMT}oNR@tPMmXRe$mtme(n%D=KmM~i6@LR4t-syj#)vA^XQnP zy^GJMW0qkoA5nO`a3`YcLDn(HgZ5)A7&^vAf=kEPZNha-2XyOKF`R;RzuR>l9n--w zG!?VMA|F$R=TI@{TLbx-NL;1cvnN!H-N0O4hKjkqpd}?$jDJ}{e!p5li!+pry{=-E z%&~&exRUv9xRUu}(MslqC*fMNJ~Y%o`KvO5Z{mZ@*d)D`A}?Be#Y_=5yk!$79d;$u zf1tNSxhN2~GCDp|?disA3(*EWH}UJ7_yDuxnu$qV@vxv3>fVhQ%S|QDb~I$%u(x!s z2!g?tkXQ+Iz_oP~t#GH^&6Dj{N@LZ1JRZnyR_RBFUOZ%O(#;i4WAwziTeM>FG$N3Q ztkHq`=s2>M47wK6)6I@uT$X6ZuhMvY_2<-)T^tb7XCePoC$al-5vIBt~DS zYsm%jBnAw-j$Ln}-drWJvg2xvZ?VQTg-||a_(ryLbA-SH*L%>l7-eXeRTsyrlfjWO zXbsh8L)NAG>^6q#yWz=TF;Y84uvA~)CIo)5TT)H+F~*|r|1wxhTRD7`5bj_wud_1A zYQVxpMZr{4-k-C`-PDe=8T2JX&)B4O{EF2voyxWIpgkKl)x~kEjchkEmvp2COF;#4 zeMiLNl>ML$`NM)1``}*+!D)Nc5d}v;*zcc&;afDAf z&XN(kZui9YWZX(c6Tt|R;X;#RNKV(=jd*3Ac&5Q)g(#$GjBLKx_^VGg$tERhQI04) z=&?0Mp^deDV+bBX*xL|wrLZPMkjqFUF{#sNn=4yMDXP9uINg(rW`yB(BRV+@H~LyP z+@J&I#cn!K1maM+#vg{g_*)6pXJwJdpAc2wEX@WU5l~&f?e%vz+5r5 zX6*4G0mw3JMH@-@JrTWRw=rzR)+@=Vku<19-Z^<-of*Jbcy zel2iAXBCi#Ox z!54B-j}Y3QV}Jt9m_BLxS{K@;FwP7C{Q-67qSr1k^FwQ7lg9H&-S4x-n6h(Opzid*A2P0-MygMVD@K~%B z0OZX7v~cGCOa@uxXa4d;wbGz89eB_m8+_tB1aUKlCkxJLadq*Al7;1;3ViE>!AC0> zjC(3NIjk-EI-PN2HyQTfa+B?%-oj0WCYowG-x}9MaXz*^mo42KA&_maK-Xf}b|&qQ z;3;x>3Zh#FqKiRmaIFnl7uVWtOs-u?Rz)h+V7&AOidbr1L>OSq!D~HY+nm=P4d=CT z1}+o4mTnkO(+ly814}t4Afid+bfmW~}>hcomYCm-; zwv_dCsN7B&mReJ>RTy9en^}>*aje z%MVvs>$kH-xFiAnV#s0R&DyS_@PVld8A~DKi`K$DVmgO>Sr4WrkZ}2O@%&&z{;dqc z>5I_h%bQu#%wYQ+xX$CH%S&JkdZdh}%VYIsX}E&BINfYlj-2=zYA6@XizkuvuYIF{ z{kvdbYn1=%43OxQAAJUmUCG|55am>qp!`3ec@X74&KBXKeEKDw@;9^vaLkjxqXP4? zub4|pC#O8|x*I^#v{_Em&kLvNpE1~_FCsrppK6pMC%V3jI|bRHlh-yY4OLLRJy?!g z_1J|~Xnm_dygeAi8YOQ-C!epj6G}b{V+T?4X0`|yCDSkIlzdD&h`S}zuS##D+1A%t z^Q2Qo9`f7>@}wPb^89Q#d2V0;Nnb>QJcCTSHwF;BFzLufD%hmUk*51u!PrO`ch8`% zws9Ajrknc$iOtMI!zhiCQ!ojcff~DOf+h*|hOEEI%@15@oE*w1NSiimq+Opt8BIsP4 z=obYdbGOV5Av09@JBiHQGGmszQ<)n&T~yqrK4_8^FLFqR5YH(1KLj+EQILJ=ETf>v z)z?`X*tKvSP3)hjH4*=nnF;m;XHG#iLJ^q-SHOIo9Ni^~qUvLV@uxq|B%lIJY3x=~Wl=Vw9~kZaRBeCKH|H@hhG>=H|og3Y8`T`((qgJ)kmICKZ7ogGu8`tb%V%-pwCzwk30!5-f_d$>Jh5a33wGErZknT8XdGdqQ5$WF zr&v>%Fgs46Yeg{$volhrQPB87Ff@W3P6DZv*73U- znOg}JhR}2&MFb}j>U;~Gd}@T6iUTPj!)K{eQ*qn(8P+uWwl9ZkX#Q7yLflJ5bE&IM zMS-rN-t%Ba-F)pBEUBAG$@P@D%-z#da|kvk19P{_B3=YM$2XyH&hf@CIR@F;FDltZ`*vCP-w_7Uz!EtWW0Tx z++7$>a+)s*1Q~J8He;llFnKf}&3P;~%r)SgBgmvNMUbu|G!1xk27omUNQxwv229@? zjVfHS(ioG1!rw`_WTi93-6^C#*M|vMteE0Q=o53wvQLMAQ?^%mc=jU3FT2=FoPRsT zc}k-c;hd%S$S&tBTP1EgWbGHDCf^a}ZsY}}{k5_YzYK)<4y=zL=X3N`{KqI+Z+c2U zO?jc0N1u;}YV9k^Q<|v8VDHaSnuT2jk>wB>Raw;6MxB)SYna&Vvx3b};tjbD^O3JY z$`8@iClpKoiV7*;5AKwxkfLB8eUDacdu%_8FFWzrnl*?lByg|o!v9QqZEd=fRZ|w5 zBb3+Z^;6^qKvJKhy#)Gk&z5dkEf`{5W4t<08>$Ux2eA_P6HdiZ=0oIuq6t{rv3s}U zaTEb92T0PHOIH%=I4XR;2bF^W>7`<+T&Mjl(`nP3N&M6{pd$|JW$J1lv(ht(9|y17 zn!ld93x(Qew=RY3ES2?R*0qi5gnHmd#6V<$QX~_l!74(=@azt08tM&vEj`Bcq6yAy z87Fp~mX@4L5pi;{B+5C#TPCF~Lcq^LCr1c4eXSE0!j9tgJYL1|@iRUmjh_3k$V1#}0z?nlcY)oo@@=St6O534 z$M1>PjCLE-QMZwNZ}|lS7Scvfr9a-_#k0W}AwjwVkh28+a#4TcqTnFiGcrg;JHC*B z4m`e`%$jC9@M3qbV2b!}1+RyL;idGg&?ujxuC_)AbpNg;>Tr5vnXN(jdP-0_)d8U| zOxnuZ8$^|-i-OKKgP{|27#7q-hvBbbWKK!7of=L1TR?f z>HT9dmX8)ZN@xwb7NdkhJx_x0=YjB73K)3ToB(xOaS(3*)cPHUl@&x-05U7}6X^=iKzY_a&2>6xOD}~Sqb1a=C zjUdDEV+~V;XXzy01Z8Ndp3-`!cWF^#G2A{)e6OU$T|kV_RL$XEIuH-l8Y#-ZBvYvD zy#}S_WFTZ>mkuXW7Y7q_u$4P?G)=`j%k5}-5xV-MkJHiAVx7!Y&sfjHD2!so;!859 z*K6mGhy3gHl`4L){q?5HA+^bbV@wfE^gLR%?HFs~%T63)$NG3lR1y9R=CI=#6D%WL zV@oXRGks%n56~00({=)VV>e!eJ640^g>s`lGRexbl1GfZW{LBuxEt=q?}^{o zeX?+XfIv2LZb^4wZ}lSbmAD0yr7ZEG6SIL&9LJc_Y=+~%=U9z)ms zb_$V>?Vm`$wfr;4MGzw4k@=@)5uF4hINbR(>+3OkXA#wDQ*_Z!1$jaa$5?G5cQLva zgWS|efIk7sB)xQi8{t|uJ9)(A(eQ_=0+p*HZS2p}Gyo{KK(8NU1zQdO>6t7-c4%^p z#r&3XfRzc9q524N+)~=Ifl8y=*e>s*IvPV67d>9=>qe(K znQ{NR+%ow>%q_oVF^f>kDn8kof8k^eHLL6U$KaY{=O`UY(b=>#E|QFvYVqfGym)d% z?!YJH~n0;OY(3`Dp8(OiHaV&`>1eOETJLzP zwNw6V)xc+KvE4{=YVrrQ?`L(qZ#wTjJ>K`cCE1Y_CIwS}wQrBa+x!TwvA5tq#04z- zh`|L?1laE#?nWX<$NK|j`p|m=o-?C|WF1TII51otxRt+lP?lDsyHOvl;w2_eiOX_$ z6Ss(@vy_jZhrf!TA*;y3G1jb6Iaw|)%P_8Hvvp{C@6{IQP1`A4wZ56g;bO{Gtq)mK zn35%*-Si;FYE!ko7hMmIYMl>aBDgYJX5e6;SFw_fPY)@lC~sQ5Bx9}+E@JEyWooix z$$dRo9jZ)@H2EcmM!OEx_7x%wPBZ?lYI|R$E~#dkuBFlx^%2rMYXob^00D`Qez1B+Kqabi{nOn$0hl6y1-rk{5VCMpB|;}}enxxqyJ)4;?6 z&{OC{-Hf{w>Fh^iiU}P=0c8$#?ud34V^cFR3a6dt=LQP(PXo$!lXf&XWKoez4WH5W zXi{HyFoFX4@g0Mls_w3eLH>r^AgBHc8Kf7U832;>5?|MpR0<*^cC zIw;d;X;bfp?Il70zpE34tx+$dSwDRnN+_MN8zTH&D1e z$BWx?bSA(QeRPi%@JD9T?{I1aTF#0GkcX&cfUc4Es<#a&!ph0pO>OG(cug(`s;*x$ zt~O(j*)U1Dr~yq5=ALCMc8z zMi7p;NR(sJa!LCG6K%b%>fRmKfRV(cf2ANj5pO38(n^zW7?i|)A{gu$=;R0nqpx)(32sUTgV~MDLqi^i>-{uc zn#1)q)>=$r&v$Tm72B>kg3c};hwEF=wU~oLy2Dkn-zu=5!i*6T<_CKCN$ukbcuJ`p2x`ns0US2`v%`Z@ufeC{ocz6f0f(^rmAwkHR}EkS1& zQdgVK0z=v6?~Y%@3-^F=TsSUqx2&}nq0vU@T7}jE^TP~Xliz~2j0qLl40*So&oUXn zSU#M4ER%6`EyglgDno`efa#&rg0PPRVeb`t_pUjIFs3nY#+aO0W-rZl-3wuSLk8e9 zW+9r(#VmepAVSromsG|b_&bSEH5qN;?vx#>_GSVV3srjyePW?%?9(9-sS#V6`Kz!e z;+gySE6k6@^A-0BGZXwgK+brHdSsHQq-VkPlM>S3jyK@)FyzW(r(h9%i$=ABzdnR7 zI|=^Eq)YxX@>iI~j{kDOK<2gkE!q=CMP56(bO_v!&@SK$hnwfYnaZ8X6ZBho?XHQ7 z$H2(bkfGirkauaUI)XX?)skR)S;7eU*_zdTbtH5Xg^I`a;aaoK4L~T^=^0!R!JouN zrMNY@Mn6C(Lxo3n99*ggPJSrm?AVU*Vn_J1RoNh4FA&@;$$Rj@#PqP!MFHd zU*83lkw#T7@_uqqN9|g8!8a`lrN{QSP(@NqAvtk2`&%2}C~JUpxD$bjTJ1C|^GO-; zNcLLN)vS%eXg;l?d>C(7(?M^YX>@OMPdv8-Vwcb0g+uM84Mv_o1s-UK*4l(sta-I+?F2=EYngc4OomnazHU5zGHl8+eC* z1HQZ?Z{=$-!L&opG-HPbrjPn(@qtOqVkpg-kN|QX_F3)cv;LWGhb3Fl`LVUMF*!b7 zpJ?uFj8-O^w@ucOF@1`uIiVr>0!&S!k6@mRe0YjQmJ?6xSGlX%{4cey|MKt4ho|p^ zd`+LYFxAC>mm8CRs=XcK z-c8u8E72CDcH3P9ETin7OCxa#7+OJvDE6}Fz~-&T?R>_XZCy_rOv`K3bO2mRaiA@IH72>e(7 zEItH^SquaU$AvKd6K;$z`)6wdg?teOpm1J%zHwo07X2zQ#{W>5`k8-MK1@9pj;TNS zXYpZ5%wk|_)-@B8IO6hC8vjG>X#Tg0wmA3_3c%BRUcr|gK3$mV$}0DKl7DYLY?aV8 z(BjzSpT&nQF^h>URt-yH%c}czj(@H;xQZ{KEo_B!O1uVlo^#bm(XFtxJGl@zGU*}_ zZ@?>noqY!&&iC@=_Z;C$Vs1C#`HF`xbD%y^zmwA~Y{#YMn@xC| zE4r&BvJgAGQaFN$Yme7HFKNxAf$?g5On-$tY4xuR&mLYgymt7w;ZrH+-a3r39{+B{ zznk&z);-u_`EqgyE{`TeUpjWr9zF)WR;2bC-Z8vW^^8}2Hn~p73!oon;$JZf`L`67 z?X@J_&!Yrs{?vA#SRHrnzwRAWea&?4zi~G?!U&)vwMLVI{zvhIt3qF~mtLb))VzVC zzcfIFzb0yx(!Sd5aQpWkVBd~UR8c(#7XsaVee8S*|3Af_R&XC6{^qv^&C>V;ihYu+ zn_U~=ftZ?!Zg2*xBh_Ygu$!)MfFTs+X<*9H+8BF|%g=oDmh7UU7Ob5d|JEV^BQS&R z9mH0o9!MOeUttYk9z9LUiSHd~R)+XF0%S$5=%J2QbU{H#Q>xMiaejK932rm#`6DCA z=iOhV%DtnLAZ1o4nJ9OArP-X=-gmbaWYRlY83T>)m9*Zc-7w;wu$vR3BG4+4e2ra$ z9bos32kMg(^mw|r`F_)8_sUYi^SR^w^|1D5^;qG0Pun z_i>-WP(ClFCp76l(Nzmgn#JbHDyvDl%}!ErjE7kC2qhtF>8&XSN4ffFtN0}~O?||s8nW&ct3L-bzLnXDqq5$ zz)X@|TJ8pZd6)U_S2Q!O$e+)yB1+{e##ueTk(-g%Lp`w>n;h*&PGrNxsh1kn%EZ7h zj1t&|`-a6U8y4um?H=B%+vqi1K^?#vEEv4Q5q1kbqNf2U;Di?k6jD1fk}GFiotzmA zUZPR)re+&DF~M_qsjRUreXX-CY^QlKU_9+it+7A`w*r)|G{0BVEL=OxL=$b?YpwZB zuGhszb}hLp*%r+abYkl>*LQt*Py09&*Vyo-sL4QgFHe4gN3MHDA37|O!tfiztY%}L8C-DEd9swXd`QC zWUO(DGj{AKm3QH=ROuh7-hA_A{A`9IKK=Fjh!SmaIwSVnpK=*dC<9rn^gfWC=SmI8 zCuIClBCEIi;wCqhDG3rV?-q#ldz55|xt&R)rY1Nt(> z8GUVuvu*_#P43tYO?kFh$}_Q9mrQ#fO~qx}9MMc0{{z-SOsSMluDyrt)f~YfT)62{ z3dnyPU5k-x@g9@1jo#(P_^@h6`Qf}!!kGxw1>~OduUA4vAFf7zjiC{!(Vo&EyrIq7Xth^<*u(Yo)s;~w*@g%$ zq`Vx$y;EM})U7fIL{OysQvv)EFG1=6*R<<}jPerNmA!SFukSNPyw>DWVeiUv1 z#-#%WXjaZ}3ysDaTUV`>b;5QPws~^|9ZsHOL>*m=VLNN5Nv*IPB(Kn9yvFwfJ}%HA zDK92L7x3>??IYmDg(1MP+bksP*`oo(MuM%I9ls}Zv)#tj&8J9N z(bvaiPG29%i|wP;=J57D=}cB`;kmNCw#s){XfvF;EnL^gk)`#X6fhsKhDc`|f}eOz zq2?8?9$a1lLbGTCzUApJWLt}@tvVc-pQXid*)cB`q}l|Z^DbUj*W{2U$fi1^KaHW< z)Ye}`S50ipV)L})ke(y<=x{zSgS?PXXRtOd66G(&s%4s!Xqcr^ZAK{AzcM(p3b@0n`U&oRP(HyfQC{yX|QTqWDB+f~U=pjk6i@`={U%w6iN zmF?L(foR z3;~YaCRMVD1Vbg;NU&A1%qt5!!ux+UmxGZL#{hk$Skls;Fz2h;r%J>P}ie=t`R!< z;|wf`V={fMkA()FW3t`a7_PZ$Iu3aF8*sqR|#EAU+V%F z4V>{Ub~{rGXWmo3il*TVWZzTXZ>_*&e4Tf)MgA+0SG7P?GPzt|pM3j8!${+u;jI_@;F zuh!rd`>I)+V*k6eIFH!>zIX9D>1K-kZ)2!7#s1IGRioT#5&Or3b|pBIVqgAJtk|bH ziK@BSUvOKn*uOgimifj0_vuAmsZ3ISO=;aadYeHn+ImWe6k@qbL;z!N>FR0|?_%~L zjuFw12q9wmOz0f|S`JN)u)JHNl}2M7i+Ds!9UF)V(F- z_8JrGpg79zA$ktdUqQ$cCT?JCL>`G4e8ez~$`>j0PK1O2m3u@@gXaEvX@9kPYr}be z>V1oN!he~{!_T}z5gmh04o5A0tt+CO3T88PcPp5!*2v~6buP_TFdNz8%@G0>%-QIw zvFS7@n3KRTF?5YU7aO=xFbM@>w=osSk3jN$eMIzqeF0=2CmCy>^hI30hXe3Pim`xN zSAlE*5Y5D%wY#tzEjlta-(0y0sqyS*t`)0$IuU7_PR(g(x)TFX5WMn$jBt$t*M3$u zNwCD@PI>6tlyUcYVgUItOc_{=?xBrxG2(r^qKxt9ctN8}7qS7oPj;S(q1v3H88npN_PGhKdm5;Wq~3!xniDE$TKtMcZ`{`4#!vkEt^t#1xV|6u&v*%g zG!ZUYnHvcsiN+c~v*tH-f-XF=O_Rsi7R?cK?(m#_e}}G`^yt7eVf!N*GhcqK206zl zFpj=9WPt(0a&i2guw3jmrsZ-D#mRO|rC3+z11YJo;s++-dC-<4%<~ihW-c|JJsf;u z`u7alNl1dhV=b31lM`-%NRvtudyaDDIuTUdlkm= z5r{|cy#-x6)_ZH_A9mQYqnDvBVk_P$(XXii*Mj~fSh)jD4~CV$6l+A%ocCgjoaa6r z&T}uw04Z%x@EnnD!93S>Ri)Mtwb&uTtux)n-zUZu2BK?LVoj&1r`h`h5Bl zr2px!A&d4Hc?v1j#30gBphO@`rGfk{65AGB{2-2M;@H$t$moPWy@oDSmFJodP5v{Ds7+ljAK`0P$#6M+CGhf@T zyXcy0cAtO8K$RsAAP%5RL-wJtG*qdLgwyvzV^B%s*0&1CJA#3%(fM|C@~RPy&ZEU> zoP*BKM)M##KaDNIMd$QOI-MWq12R|i81z_QD^301Xw8*QA9*ambs$pOg|Gm_iF7jq zO8O!aL>hEBc`ShRg^nYokxR$<7a%H7$-E=6I->mhXKYvb_giz%zoRlbKB82i`a%(V zD;QZy8J><=fQ`foF4@45bL7jCDb7}%N2$e#k@uGAaD~t2on!Ds3T)DAkHLqm=t~~S?%83n7e-OB9c#dsm#`PPB%3@n}4_9Iq16SUH7I*pQ zY6Dw*2?bzlp`pSAhZzMy4qqD=BchLrr(WXUl@Ee{%kgAz@_bE|N?ta;Q!_u{pV>zt zeCDbRIspn z|DVuj(~!0Mvlf2yX6=5&>YpcT_m@Op(qH+qcE_uBX6=rD&7HOTARBi;?ZW~F{2=Pe z4Swm>RiuF<_pU6p+8D16)P`yUnip7^&J7kKS}AesiC*rZYqva#N^UQ9P$e#Yogjy_ z<>rF~?n_j0KXqjMH5K$Fn3eq@?( zMpzgn`jAVN7)V;J3#=hbD^S0dAdi(u^g;8o`=I0fFz_u^zaD63H1MDKR;-O(M-c9{+k&mCP4y5_&5BROtoqdvkUA3X<%pj|3z8Y85Ola~gO z1dSMgk6)t3WXcH90rvA0*k@52ZHfyD1p1TO2m0>9fWANioo$o|U)+njK)xc4Yn6bq zaiHvj%!&@$jHZBkASs}3I2C>oE~Da8lP;!uN{FauH5__)@=qnN`ueD13L4iZlCo)c zeD8OK^pzlr8HPz|pgxB5`0z#!;8_6@>OPkg}>B2;lt~5K7t|u$$>Oq~xi2ijWXq6*bF4?Zj z_pFXqJBw(?w-`h4oa`Y1MP&{-^a@%e7ynBY)x=%21^k_NJNb0M%NS15(dW?xZ$Q^# zbipxFEV=fblv4Ac7-Cx5*%`xXU`-I2f!E_acx|}iO#e~gbH3VFL!0np1>*6;?c?#` z!tl5>iN}URu^afivT&)WK{$a@BiKEMy!)0HRVmhFOr!I4*{rmuy}JC`lOSno&y8!7 z=Kb|}IRoutstYB8=>>?Cpp^0-YKU5o$I7ug)-tH6WJg3&$l4q+fd={CS^#TX(;W7g zc@#(&Rhp)u*_oy}!rW%?0y9<0ksU2-T|PJ~lCi;>pJXVtzezHK4wAV#S(HasW^wSi zEIl*<^BHE2q8xhqNRKkf(ot54zv9nY3$kXoV_YC6a~Td5yM>14Dt3V=`@@#3k;Q4& z>?XPCx;66w(IyP#yG-z?)^pHRQ>|eSh+L;ER&orsYOkh&3~V{X^O2wsLIPu;m8sZN zL}_CzKT*<@CQ-hW6XhE1I=8ixmCWO}%cZpw)$x(aK((=!Nh>^|)x9>ci44=a!H))< z{tU-Q^c2E22!e#z0)2FiBKoL}mINoRzBjwotrj6o&$)70+6eos5lou0lm{yGEstnU z2L5vJ<`g>Y1?NWxW$V2KOW44D7af&>CjP#nC)77-Y)xCE{o# z9mUJJCs(?ic~;<9ax9qg$*i@>2MoP7UKJdG>>*Vw^c)5noBhvwoq zTL8MR0giG<%Lpe0WrUJsW&2K-$6;2Qm87U=spDsja{i%X%Aq_aa&4T>|KOmUt#(|L z8Rjy|T)2A32pyhW$r6fIYpvl>4(`-+L|PRq#1o;^T9lJg>8?h$&JNmHxV^>*{DG9MQN| z6PD4QLZ7Pa7MF}=UYmkn0rix~Rj(d+b4g8?A#`$~^Hoeenx)RJEyaP$EY>G4%7j#s ze=6&-91J5mZ;NLsC!rIwSIr0A^tE9+ljt48qnevF(Q7v{MQ@%9v~y@WE^U(+Xiu`% zV&XoZfZfTqYmT5(kLP4}DY_OTV6!jK=pl;2jFC;$5A^WMvq1%N`|@n4K!EqR5AgBA z0G@SuW`NsxR&PTaCW!H@-tl|lX_ei^d|I{P8hGq-%Lc3?e@7)MUf{*B!4M(Or-ZS6 zs-Rk~$sc8!JpBkuLWo%d%cCb`5D7IE&!>)OO*5ZQ-K}J+%D16BDY40*#ItgJv6qDA zsgk5Mc~-fchqXOXA~PFb%i`ShYdoh@ervaJLey#BDAc??7&V#{e~3W^L}5yC`r4A> z&a@nMJ5!LiZA1SnO&?@KKWr`36wvuZ{J$_*m?IbzonFQ8i|AU6h|g(5Zvf}SI5Y&1 zjT&13Iet$FAiIqzfUYG0l$ZMDtwRO}V6|J?8D29o9=AxtypG89_W$1Mo=z9UP9m7d zo)gLv6AM0C%lT&_T%0NE> z2&?#s=)|nz1TWDqx=1y7sed}aVZ?T*yO?XHV=j&HPPcd3?hWiY)l>2<%k>gWSWViY1qNAN=X+zFA!w3gdwjw zNH+7wV9*ie2-*9)3?j>sZ05By&15sJCDH>QLv2dW$?*w_7Ir)Q)|FvBv*3T7eml1?O_8v6x3rA_6@;{y3;oRDZ^IP^Nb&6?)-)a7c#^I-a`%d%6))Xcqc3E0z_6o8C52!+uunfN|X5|+?~q&aNtRjMu!KUByAAn#*?J6 zPn{)66N$z;OOUp@IZPpMjZ#@^DxBXZM|bg@TP2=Pw|QXARO?t*gI>`+Fd>>Z586@s z%xYi=?sD`J{n^0Qo6kD2S-qpVy|h}cZ}rZe(piJm#=zc2ZQtI;INlL#FU74&t9S0) z!^{T?7M&|QX{zQfOB_Y7)+d}%lC}pvDQn}IRwq-2MGs+!itb1xMz|kef+uM{A9b5K zj_%`~4#e}dZYe6unj7XkahZ`>ZBC47u1Vv+6+B)Mudm}wYHF*|%V|`$AjPav6JK_c ztj0}i(F5>mMQ_8{c9NQSw<0-B^bRy4e7=xSvpQZRPxj?TpDquuyVRR=Fo%T17a7< KE`k1S`? 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%0AbZkc$KTJVnMp~4;by4 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

    v(5b* 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/api/webhooks.doctree b/docs/build/locales/.doctrees/api/webhooks.doctree new file mode 100644 index 0000000000000000000000000000000000000000..cd7358c7c82c925599cc80c24d36a693fac8e3e2 GIT binary patch literal 490206 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

    G-*bYsv_On3eV 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/changelog.doctree b/docs/build/locales/.doctrees/changelog.doctree new file mode 100644 index 0000000000000000000000000000000000000000..f10821b254bc6ead725957c482a3b2ab180dc82d GIT binary patch literal 347427 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 z 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 z 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

    &ig&lMU`nb{iPtYF=1CaS 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

    8-{J_%R6%e!GLjmQG)x15Ni7rq`KE*OBKOnMs&? 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�<}iI;QCOfT4NBwddn}%amx3q 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

    I^!~yb4+>NH2lXpP+WlP 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Ƚ$rm7^RNI5 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

    0&7f2zv>twCnq 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 z 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 z z)ExAu^S-%s;VvwZ9dYPc(3nmwH!_Icec@8Lqrj#vX2vpELp#TSsIMqBUo$^>y(NU~ z8X69eiH~X;!nlz~IcyX#*qerf2ivD+(pMxW_O3{7GY>22+Uo6?T<)78ej8H098Ebdf1sxYb0a?(Kbsz@6s`h)D#8 z;*MM*w%^~s)P0{0#@PDXfxXhfiHQzbt7Dg57RBU+Cyi$8b;DLu*SEFNK|-B5fl|U zLdkbZ%Eu*3;&>(ReDQ`f2O41q?IDq1c->k;^OAVNP1w#aaiGL~zf+iZNG2u{MX`Ls z*z9b4{SYqpLZ?TaLlv{6cDX8HFqCmEB&8AzseiRKw`koFq?#!6ITHlY#KbMNS)odL zTKbSwVH5rlmQ!w}DhXG0_*QM$w4Gq)q^ zRWmk``3UQc?X6U>N+P;cjIym>+?QLTx&UZ7B&H3IO3|Aniin92SzA@#^LxHlrOA6p z)K0B5%mD1PfGuxeVwPaoxh0N7wp}tmxh*srOU5{)w~G>EWx~vY5=R=kLfq#>X~K<; zAOp_NfD?~PnV=!Yk6{op(z6~vrL7)iR=&K|ETN_=mTtAMh3fd_u`0Y34Ge&dE>wE) zI2^MOTieqcIbYnUeZCSo8^J0l<5Zu3vvai*?!-tcplZr&yUqYKenw(6&En2P_Ot|%RBrL`?wGeHb zf~kDtMO%}IxD&iKgS4 zvuH!1L%n^bs=;Kqf*WA!T?t83Gw>;S6_=<|X(J9veYm87h(6Ru(T@YHv1)s+d_by2 zO`9q?Qx`Ze_9RLKp*LLu3sF}rBw(Dfy}jGNgV?b;o!ezaRo@=(kO1P!;w)#6LM4G5 zw-YX&_1O0~J={uY{ba*}?S)+h$DaD9+OXEg&2~JB$9;3LMC3E|x=}pMm6`y7`)pT~uPB`do;!fIZOw%qwH0R zU6@XQ2y^DGSW5&AAUTsH(0N5jNz*Zoi&V=i^D1jznuz?Z5}&+}9MnQ-yYd9j?=pDV zW-{Fcb9tA%h~r@owWl&`7`8DTkkI`SH-zC4)WP@zIWbBGiL(5_dC@^cXSuSl3x^+qcg}@XWa=Q$u4I)%w<|=N1T~ow=q6`h zau7(R>zFC3rWz%Cjy{n^y9)N$iOQ1Z#9ASJ-q5}dI8RSE z5|ah=OWBTThu{d2f))Bw5tVe>L)h**63Ymg33Cw6U+fm^IOlCazB0l-@1i?CI|*I3lCBELk7zsOg)10OiyvWt0WOA-E5rmIWY9h` zB>80_1U6Uqp6d;Ekd_pwDdvELO6ziWljX?5L>~16BZh12jjYY$ExRaAG_>&$(IW1u z-Q5k4RBM3Ny@hVU;*VoobVt-Y3Z_dSU!t5Y2O0(dbsKw726yD(C}nm%Qt8X#>sP8f z`|yr_7*1u!7s`~PMn7Ga)vm>ak1d$ zJ%F-RNtOl#sYrOIMxy#bpo+7|xNKZ)j{z|RHvyZBaT1@*Ko}-|2n~yl;8Iy+%OEm` zO%B%78k}0pu_bM^jX8zsYupOZ!TIrqC4eEz=GgjpA@@JY!#?t3c(^ORDwz$(+Pg#K z%+i-@(~mS8u^?YkaH2rR@tfoFoWA0)Q%GQfZAzLEjC|OmrkkD6FD>0P-vXTZBc_d) zFTxImdnAIXn4AnV29mw;*rUTN{1HS*9uFJQ02IZY^rmsfu~-*#_nu@EL=@H<=i4JGrqt6^)aGfyVYc&gq8h1Jg+r*$eZn^sa8g={Z_% zT!@oJX6HonZ3FR5`DW0}?!jZ9bm@S6r{!()vv`8NDKw&q9B(2zdssLSMRxUq!EOL>CNQwZK!59!ZUO7u7i6*rzp zIA54p=hbonW!%epIn}sWI;t*XHjdDNL>noIAycMu)G0EtRYxM}T_iu{;wpzGuUWIh zeDR^6z?z!hKqOAZ-0DYX@|xx)ScK2T8yn5!JDv0J=+w6`Ut+x%j{rT|RZ|HP7f`0V z78eah+5^9pnfowDz8-hEZdh*FV;;c(Fbo0V0f_f1QkyUM(al&*7rEh)JeF!_saP7c zy8eIMj<*gpm~o8hg7Dx}5&31?Ha6rH_QdvlaPf`RkETg5~!Kzu9Mbf*6TOpZe1c_c)mLEsntf2Wc2&GQMsTQA-*iezf22b+O zsd`$RGM%)4nj zkI1^ORlS5$SBK<;z_y7dha?IVmpb`*r0!s=(0F4XZVh1wm&QA@zHDbR*L>_pSM1bH ztr~jMU+`<^mWi%lzVOlgJyCFE%SE+R?@&`4mbmT*Ws%#w?)%-1L*%sVjhf=HgVf?o zz7zfQU=?0pf0^s_=!h3%;^GHAQSY*|Qp zC~1S=C>omB*}@Swr>(k2=2jUX4B;aUzjvi>+#v-y^yHX)n3#P&-K)sp!7y@!3?*^A z=(**Lz+-_i3=sOEY~?%D%j@noa`dG4!5-5~S#`-Y`^y7dA z9E-)PNdHVN)w(C6(ClrFn~Hx|m&DfeqKccA!(+jY7P3*l%`p8) zxIAb-(ol_yH;%m=8F%ZR7|bNS3G|RT7O{cyOplT6U^q{6%ScUCH}F3aSZI2KH1E}P zW|0!XU?OG!9+=b1D#7pA;vluuZkK7?bTVR9k?X$2E(NO>Gu^p7GM-qKTNfbKMTOV9 zj5nFlUaY!M$juuV0}dN6ig^)cEXG5lIjktmAxQI_Zv!N&Da_=^_2-KOoKq}K8t&2T zZsH<+EK?EyVSQO(o^ap0X;pLTFe5?mFYR zof41;>q)Q=fikwtNFmiBX?c|rdV{&CG zN4T(HqZ^A9jNh-cvY8aH{<_w+q`&6nfgn z2BonwWH}8qzbza|yYmV498orSFfBZkoH|44_h5zmN9w0L*p=C@2k|Sri3UFk&G;at5Fs$Zb~KMyrfF!sz_pqRK!HXKhstmCFS|B>6SqX zVYl3*wcGn$+l7-Zg+ZW}jlY_c3~$W1`h$ER|ONE#r5NNNO502xm@6=&6wWvSvCLzRHL zopFb9RGs+IO{W*u6j<8r@Rky{ET!Tu8WQ?;q$Qm5au;Q>gXOhjHlNVxXq$~m4cV;u zuSJ9s(UdoeTm3=~#D*k`$??D(Wk&v{oLM93j-(Tze(1 zI3xl_gcSF}WN?lUcN?JtEJqVh(YV2DVgoABr~3Dxz;8xNP?}mtD05h~W?o&OAhrlY%sj6E8k`24<(2x*OG`^2eKDeA9 z`4JlM&sbDxk)Bj|34tPVxQ;b{m4{vDJ_D6_xaw#ltV=?CH?>_q zKh%cn$byZ=z<_zS(}-CK7&@3sskH_%1+#nNjmB-&MRvEEm03j#n{>%185fE1jf3Q4?tx$a8&lOiwG3r1OJ#m`^{1RU=bY`y&;FklDaz0=NDPzJ$Hax z7sAR#eAA#6Hp7Q}IDrt#3dtA}s zB*01Uq>|`W3>zZ@#MfHg<)C)R~9MQmQFxpA2GI0X@~~TW=w^!I z3KQ$RKPyRk7C%qp#2&7F?!mlnhF#jT0vz20Z1o1Pr?_cV)a8s;1f|Wvb$=giPb0(l zo@n#(B>_mfCfUjO+V34nvLO;6KRyCFWn&XwWxA%$`Qk0{yAO8i3aUV%JQNDLvpXFK zUNaaGqo!uqHr+qf=a(dJ^(uy~$%xK22ZP1xBnFGQQSSlFsPp` zlwPVj<@}A+KYf=X!Y8u&;XW*1&baw>BpSz!h@yAwaG=jhcWVJm&xz7*gOD?BQ@uj6 zR4I58UB<#rWU+ODdUV3uinz0CO$YL+pwh@px5w17#`MSjNCypruq zm7=HNWCGVtSEd|a@l&NgpK2vgIzz1juqZg)um3&|}-Uw?dUyFp9>7@|}M$0yes0Qyn`C(n4&Tr87<|0eaC3Q9-rJsz33F zP^xneT|ecy4pbS}dw;p8h+Y87&EW>KuXa=h@J0*+&N$LY=Mw1xiEv%inD&qdJdHiT3ZH&K2v=}+DcYXoPdH6+?X;$?MkwLN@@fvk-HFQ zSR^Y))&|i{F`OBLUsma2*8EWYBldu-P)DPTc>mvI`1G4dW_Bd$yFu7P=!z-K5xyvsP(Z1F0lDY)I=jdz4N}BjM{^u^EPY~Ub0uH0<5XAMq22JM zxE4ixolAn8QnmYE6?(o)x^l|>Fb9{!@9y^xw|8uZrH4coYGB>T=tZ>aH_naKK70@u z`xaB;S}3NSC>lJqaQn^IP6t_sg6a?@LoQn()QK}%nHCW;jhQbsakUplL7s6WD)Oaf zH7r}FEBz#DTaB<+EIv?zKM47R(Om@9qCH&GqjM2w)gSc5EAl}pj|G9{V+uwS;ThMT z>UzS2FKxu2+D;$zNrR*#Ja+y)WB_H~RU+q1Sc0?m9!2TB&|@1JUSCJ=PMyDilUSlk z5ONE|6Mi~q+;#R>x-=7(8E(=FEbsj2)tFmg7Hhfhf-q#DoS0{?qfT8axcp=Q>hcN zR!J@WvhG3}>J^=k+d(XrMRuYBM9Nz|7%Wc4i`!Zybus`#xjDZeRNJWf^uhut4U8XB zZN5S0Lr_@yWx(*HobT4bS)$tnDvt6A0xT_5#MdxRN>+U-XYWy-K$hez;$Tb-3^2$M zT#KZBsvBe_z;&Sjdy>7BrOdEQl#5U%=?q&_tn2LFwil`r8>7oDg!*MG*?C4uy(x+U zn^6KD)0<9gDK>&m6|^~)MWE22Dlm~Q|7Ep{=5D4BX3I}|n^|`JT3^@*9)a#W*2CC- z5U52GsVh5g0e}^nD{FMmm)FT^3XcjYl{_jHHZg^QP=FjET~cIWm+DsNcC7m#U<6(Y zh~#HrPT<-*K&*3Xb?1?k&|_d$noWB4Fs+ZR4nw~oF}6qrmy8kPIC4-zcPYjM_Ba*& z@QyngF$3|TxuFwApfs+jaoTdajcG}4vkAT6uS@_KUyO6so1g(R^uRj1cL)1O9Qw;K z04_k54(1Yu9XO#$>n}_CC$WE+{v$Bdp_AUUu1Cw`N$6j3XAxZ25b&ZRjOqlEAV8T= zkkP$G@BWFpFL4aR>h2v14Ut$0IQ$Cmyxi?L7ABbtls=E~a`1C_sLX6gNW64)3D-AK zl@UJ}+7sa$60QLt{_1f-2@@wYDS)y>nf)Na%teLCt~+|;oQn-P2F@7}CyO|#MK;lC z+m0X}_^8L^;cX{ER7F zn-Be%@_J^;Rc+!XYzd@0YhI_caI;l-9`|?e!Cw(Euwz-r3qkGq;6Xm>gaJxd3CkD# zgM|JSYD!g%$rwWE2#8mzGDE-zhuWcc&9h}B)?_(Sw$*=eM7ye$E%~Bp4G%0@FED2X+tg0R5U`l7l%^k|R zhh#5Ba0LMBrG+!nq}b1>*QWGShPsv=2z6XP%NHO!2K=koF5O`=)al;l6=#$xETva% zK3GcP57B;14p98@%#$Z znkHOy){JkR05SU$t2-*=j%1<9@zr>?MJj}*0xf2AwHRN${>}KqGGYl=7SWy|nk)7J zzW2|2M<|h~qW;|fqPLTBBxPScTRX4>DayIATze{UO^G&fvy@(An9j)nIP{LJV zjKVc0;eYmyfWt~?PBh-wx;5`ow zMZ&hm_J~wCucDdRz7^2WAPqH4z@JK(fCLu=EczQrf(^GZ#NSfqK=9Ok_^R#q_6}?A z9%5Vm!NFJD&IZ3Bq~_H-@QTetbgd6XY?nUWjMECmB^l}w1Ds@WRA+mKTmI|!qKFtf zrUN}Bt-~=S^gAOWf~v4}fHMDl$VaBB^N$hD58uNd9x~Zsf~IyqL}YE48B`5_@G!vqm9nXyjW-#) z~gbQUz zNbATnnG}FL9znJzQ%UT=437DrCwv2U9v=8beE zw`oYCw9+9?I&T&O!+U4lF*XECx#xAta#^x{4#TU}u_IgnlN6R{Hp(u>>^4(q;=Dm_ z(`24Pp)rd%G&saG1hQmchH@VJR?F^lAM6_S)>L zKb;@<@ueTviF7Vc6o5Lw`DYgn9Iz3mV~@Bsj%fXSv`$~Kzm<;LxX{H$f}_bp37HYe zJ&z6KNb;w%fF>D&Ot%@Bq^Vh%@K&x=H;cJ0NPszb+u{7#IbQM^rA@I6Ka4NeZ$dPT zs0i9{bBHZwwyQ=qbOOmFP`vHOto;5VIJ`5Ft3ZO|#UW5Q77Iv>vE@jd;PDXL_ z8$!fpvGV6RI}A@tKnXF3TyES-(dgn`OJByu&U3u-BHmuOvUq%p<@-uQpUM}KmKsD7 z<8sxbKDV(*WI(k@tv6t?gFaT_K*1E*a((Bu(sLshO-kH?xpQxnLKSseiQ!j0I5GTp zz{M16SOhdvT8(m@MM;ePaEUEgU z%p)A*_l{gYP-Zbdx7s_Tg7(WXMJ; zO{WuW#B+a;6U@o#{WR+v4kf;Ov%b*~ohQ{|IO7n;YHRxW}1 zG=&F z8Wy+NSBBcT?1}xkahVzotX(@fB5lANBI>LfG5b4uNUX@}8nfDS1f` zMp;@^kv9%uIoz|f+n#hMqDfS8BMuU;$&r|BQ&Y-G2L&SF@#+E+IAG>|+5jdSV=ODE zC-S+SANY9H`dWfvIYF6q>g4=n4qKqWVxz=hz0}xW>4jJ0{%3-;WnP?rFIGDj_fsrT zA$R5{o5$k{%`YZfOakC%!|zk0Z2!`EVtM-l z8syVR2M)TVZ;OwTH9!-)eN)W~>Xa1AB|90(CIq9yZA@V?MU>0>CZx)=V=8#|Rb(r) zJghBbk7VwoF%?QCjM<{qc^?NIdb#_?{c+X&R7Sg1bHTDqYf_0412KmD8kt7kCImyF z^cPOiPEM>RmM5lpgWJalk`ke!G8fhGm$z3}Hfd0+Bo9iMChq*>gWqFhjb_2iIHwsy z$UGuH9n)G74x;4pW2~qQO_lHttOiiwdnhd6>>LjPvJ$nHzpNbOl`{Kf^G!{LXvqXU zPAaAw`VdD`Oy`#auNXix-#zVXYTE?lY6*=$tUiZL(u#*h&lk(Vi7L8u8Yhm6Q$mDG ztQ03h(!~Iu#6VigagacR49(I|X+Cy(57f5OkZ`Lkl9TO;?}Mgc)A*qh`77@Yi`Y1v zK6t3fL(HU8o>-24zQj6~kG6e=*xq;V z18|C1=TouT3t+sl`9jZR*MQoW-=rhy3=klJ{V9|I$L4X;i!gdP4cLxzFzL$O)@ zs*G@;M`?+jwA-}2m3vxgJ%&^R}FG167c*8O&0+te#BHqH9Rv3h2 zPlduj1&NStN@+WI#Pb>CTH_bFON6v1(io!vRmkfUWRU7;Z84s(&nszHp&chHuNMzM zGM>$OC>cIA%jFX{4p9ImH7azBs96r|5>Ay0B^k<9u525KwtTF+^bkqrbwEcryjnX> z-B2>Jt#lz-Bp<%vu|R6u52)Zu%-&vaw}UJMb<-`B6K}jGb1t}#08g?sEj_~X)Fbb8 zIin)I>1n4gO;>{a%9Nl;bSCz|`6NQ0fPo#w!{Z8$yWwV#J%o*J^ZpWEmrcJ`7_#N` zl$J{>VjXZa`~-PvP6RB%OOc>-@QV3@G?f#oT%rlfd1FbQYV404D;_L+3D;X8N=S`T(vPY#q4cTh zy;lnBLL~N+9L178?Mq#dX%yv2NJStfsZ*+3VMCVTr!+(-rdw&007v5Iq|dpYs|(Q{ zE4oD*Nms54bH&Wd)cBoojvkQCZjzJzl zKPr3dWf(&geQ;dIqZ?OMP*ebA^ME{l9OSr{W=Vd=l!i*s-mD457*qUU(7R_FN(PkV z&6w*R57Ir41$!Yx=aL(_(?ab@pR8L?DzU~!DY1sw$b`blrt@iXjm+8~7Xxs*(8@N# ziMAa_lq?o3kfMXmzo&MjRA#(!V)~G1 zs!q?$P@?RYh!m*JE!MZePVC)I%&{qn#pWIR@ae4LMI0b69a zFQ4L4Nw)X6{eB1&6Z;V_mn0N&v_VSZcA08L(|L#iVWJBr2~92NkIM&$5F^t*`t6T| z_XKZ%BzS6M-Hq;W*gM+{7+1 z1P~-}rXj~AzywWG3d*kV;jUR^TTlExK{k>|{YNHD0_)pwAp*?TMK@j>NKuBkJ_s>X-74X48FEP z*p^G-s3_o%cdoDNVQoo~6@@A4bi|j_j8|oZyWT9NPa7J;7$r0`7xm0>+IIz^SjE)O zN{Oh8;+5za5n)k=L-RoijYo^r7ovS5>D6O#T_`F3vRSAw)9uneKxm$92EZ*C>K#PS zZ@}d}*vujPdELFb3-!K%pd_kZe(#=)I+#)~-)27eugxJ5`ln6u>elDj+l^Cc)!M$d0F~v(X5r6B0tfDR!J@n2q{`NG5f@ z+Z5_BolX*)zRz7-<4H*7s;4|&%lHAj^TQ*^R&G#xFkudO#j0)AD|6ts%+ku^xJ@J? zGA(SoongqA%6rIYDK2RI)vob_OIW4?0Y?l`Xc44;a3Yl7->Gd(aD8Wha5~qxQ@X{~ zxWtA1%;kY}7^UH+Kn=gg)_e-Jt2y1P#7TkWN&)xSC z4L6is8}2jQ=~FA^VKXnaWvYN^qazCEL6{?KB$4?wLB1Y$6p42mb^^e>OI&a?Z9wE& zHpEYoo+IyKDb+wFa8|49|J6gp<3W?bDgXuNI7x-!)W`7Q_^o7QcYFgsW&VpaWSApY zP9vur)>%*Qp!|?lKY<<4q=U(Um#LJ(e7y9}Ade?Mm6M~+?t8ugvrDBZ^xo`3XQ5+E zrZm-^nw0hl@MB>96x7u1!Jx~;e7$>J2m`joO#p;8q#hYv@Za_Fb%y}>zL2u76qXS0%K(LHCj^$^*y>QhxRs0>*btGP zw1DkjJe!aJ@lq-X9kXPRPSVSLG%6}@buh*!pzv0m(CJwUbT3R{ow^~4J#YzYP)8Q! zPtpbD>S3ZMYmwwZUh<`va>oKfhGN;-n^mWctVzBkH%I~V7lEj7G%MLKJfNlm1Y9C8 zM2G>vwE8nZE+vR2{}B(nDp13!q_Qs5NFT;Vd@)F-UlDRwBoFgBsqG}My_MvVr(Ouic~jzkU9)ZoS>Y4ns2_BLit+ZEAbo^3eZ+CTJFXJ~>MmM!z{rtV`VVcuqUh?V$0 zR7)&7$gxdZ7Vo!<&aw}a%;FfM-4n`l;rkh!tq!_dv+Ho|#iepRIIw>?eEmvXUufqG z&s9}{R@i+X>I#>CacZYk&sIq89@v7P=LW+Zwnl zANT3=qn|vJwI0u@GlWLMU#>OH_qR(qTTo6}SX5?b*<&-DfT5Xr3APO#E?bxiVd8mk zIyq%+&D(5d@<}%R>oA`BYjHBT9doEX&V%hIc&N>N;A1<`esYJ|26_I;9Aqbl*dAC= z!*oAams7dvAp#YCv;c|@O+{nGshV~WiXTr#;LsaIZjd~i{jTupP6vlA9Y|yaZer$9 z&fGau#dQ9J&)c8)S$oAl6W)%9wDRdmFY6?%sWe)$-^7HcZ3@(t$&Di}B&nmc=fbBt z3fI68SvFw?1qWBf$8xOB#|W?rS|JhZoD76?ypGh+NhjEza^ddzc^ zY(&xk(IA=hHQSE|9QXvpqN`;l$(&bRDyhxKpq-B)XMGD0YQzu#_PHA zjpGnxG93jPNFx5wl5{TFw1Xp(WSTY(iA5+717ML{Jn~`f0Nj9VLkE?bI#1rFNf zhIkG`jto_ay72CrFm6F6-<;Q0ZKu0&FOjzzvH}EUayXq}h70|44i=n*-Wv()!@$V8 zpaz9#S{LN>Vb&yPd|hiSpU_kAU?{eB62{3@o$-Fu0A1qReb7{$YuFgdB&<^%T(WNLf zqhMe!yAY%Zcj0=^E~UW(=K`)ueyK?V9caW2N%KMm?}X0daA@$d-LdlRqQb@=k7f1l zJ8}^Hb1XCt9E0uFVBTh~o{AfKc_84EA>{|a?ZIh?2@Zn75Rc;!pDQ=d1Rjc$b226( z4@}y(xY&$ilO6JPA2@aP??)CHR-##*^G;^rcyUBE(lNgvT8A`FfMk6a^K)F}YXjQW zAgo2;;~)c?UUK5{Z3%EAQ~LeV{2ndINfLcqt3+Hz<489DKElyNz+N!_u8k1W-dFch z^#fQ{$HbFk43MZ{7~dNsOu0EUk#p0w&?n0F!`MM7%dtSnRwmcSz7xjKrxs86Q6Bbi zZd))2dP?5V{QYrY(blbd11_m%0X#gk_Frxs5r-s`Td!xI^<*B%Af zEEcir!>w=bs~>phsl^ks=&8lC`xql=s0=XGF2iL4pFOpBenc&vRN%4Yd^K)4PPBg} z>RH^vP}ie*$u1HT*q2^ zhyAb-kHJ`*`%$FJy@#EfLUPkkq$P{-b8oHD+Z0V2yS(XMH09{)g8r)m5dB`5W_&S% z$y(f1S%3ZDyQ{UL_o$r`Kjh7rwyr6FciUiwD+vdTrLzYqP)sq{s{;7fOsY~HgmqMnOrS2mKsW)!E@s6KOn$Zrj>k*UL&{4^t zJYpgnC|xz)UGq;}3Wu}nbxw{?4Q%3*H%q4+PzV=dicjB$9O--DSi3tI^pk92PYrBO z4QwNNrhON>6q_ zCo7vj>`mB|VvlK$ns9GJj26vq267D-rU)El6>6mS@N$ECo^DgySn-c=EdpXiM~7Ru zRRfn6Z^NNpk_jT#;(&g43L~`0%JvNSEq4aIY0HM6dQ{a8bgW&b=xtsZk8{>)Vzmhd zLu>d1o1x*0JIjS0$h@ScDcM*gV8f36yU-Y9lzeIrdhEfQoH6_a?s{qudTI{>KRmSu z$+W1gq<~;%@|vj<%~;WMCQN)h$o1tCgAUdG%7JH_8x*9H{t!o6f9iY z`&f|OdY=PT-x@}Rkf`pZ7Sr4Wk|9RqN}9AFjh>jAB8hp@6N;ZiVHOUyg6|xG)1!=d zl=o=#O<|sjyh+6>bxk>&n7~&4BS7PlhVZz^TmpM4O6PT}#IBj#43er$0NhPD7)Bvd z;hWK*1Han-V2=qNX-AM;ne&8X-#d5HZ^QEvdi0j?lg=c^}<$7B$Ke3H%H=0Ijdzxj*WnPl7pf z_z*nhD@3TklHqcyq2f9u9rrtjqpeFnQ*`%H5N zmsq?2b6}UTO&3sU^_WEjn9-D1DcwB=C?;9Y?RpXk6_0F*tYud~rh8=P8VwFH z_@rmE$cGdp!9OQL-4ep(FBn%O0o&+1p?TipUyGVn)iQE>x97Jg;z_@$|l|rtx zi1C#Y2uh|3&0<561m>~znLIOIn#6;n%nyrUpot3NhQBdReK!>2=9Ip zbi?wSR8^rl+#0#tLsSk8L93_0(`Djm@$hyK5;^ka-(-h|D5w|@X} z`Z9|(rX)yGleR3o@bLh|Zcf+^7e>(`z4n~(=U-8F-P++U)&xZFd-CXb=_rl{*XdV5u&U6FRJKO$j z5b!vB&!6o?C_Db_8#|ZgZ}^Y9fj)S=`i?(-kLcaT7@RNO2G_%c20<kk;pF3 z=7NZ1oBK%3BazQ~drh7=+_bLqMT;TUdtLYea;)9ow%?CjtxYzT%RuX}cM?f|t zf|l!|1!+SkvcictQ~xqKsscZ=ciwO5Sqg z`S8Jq)8G1DUai;moymuH_uhT(nQI5ve*TYr_^lsdUgqv*n#AKv}m zv(G$p?QdNB9lZJMT*Y{V>xebYjWzQ(TiKORjXIcj=`C?7U-mndCAct)g24`CT^0*3!l#yhZii}nG z#WSrBS>dN@T3{f9!*64MIk>N>WUT71ooW3QR;?Q+O)h2y|J^gK-)6zO{$fdO4-Sn{ zTYv3L>pvfdK6Xn7)Wg)-$w2?zGp)bR3Ntn6OCUyF))=e%znp3P1J?a?O>H71EXwY-&o?riI`EdOIQZKUaYtoY~7 zw*Cl<*P$eQZ>jesm%G*Z!r4}fbbumgMR01YjYg*twYR2 z&V>C@o07+>Y@KZlS*4D-^ZXrF;qYwh7g(W=NU=h1(~AGmv#o!X#p~G4@_bmyUpd?Q z)o~?px4qC~Tqlo94HK4zCw)H1j^oOeSHre?fX@O6sCt47jk`B#){C8(t z{{w-1s#GQwt*!s*Z0q@FQRv0IP>}W@J*dtF(x9Guw)JsVIG)Y&zZzV&SDmstMAalpla7|~nKJHPyF>sMIe z2eJxq-Zg-~_H66l;QP;H@6mqDJ!~ca+_SAe&yx8lBSCOnpId+7+16jImdSbaFF)J* zPpf4tD%0BfThF#;pF>+0bFB7xW?X;!h*kXZbFFt-@dvYtjAgI_YtOYdS>QreV0yXucG_RJ#kyyc_=UP9NIKn##w!r0g*KPrOEPFpKJXtfn)kO>ZHMh6^n7cB1z)V9s=21a4b4`e`+Vy+SfPemVB&4w&0r;e^ZC}_ z8iPa5f4}>D>+iB)b~K|sJMI=BYv#XrzV%*o8pIN0*(`l-I)g|rk zKi~R?tnp*j8rgLXhSTpo-}=Wa{=?Pc$?W(i&$p&tK&hE(sS~Hj$6siDnsxthP2K7| z`OFKg7g@Sy&`QhC`4?J0$&%TW7HZnG`uXRyz-Q(w`87-P>Z>obzD7`=tu2{Nte<_M zb&o}VvZmC7@zsU-9xaX7Y&%Dt3t1S6LRnSI%Z=Y**2%u6b>*U6{)`+D(QG%89^WM4EzrZ3F zOGQrX>d&8R{R%67wp_8=+dqD;_3JG9eR)yqaMRv??+}MDjw^;S#hl!t% zz59#jTEESA-@m6pd!?#>{aovB^7SV=aj#n{@}Hb*{T_>)%SH1)I@kKY`S{ae29(Yk z41x3C)0+Dpl>4!|a>=gTieLSn*1ITv2*bhM!{0yq%v~4@p1J$Y@a-4Ew_gn3e$~I# ztEGfctB;pAn_~->HqqVq-H1`|0@1|Q!;|F}$=b>p1dfPjrVtV6Z z@#-tDUcLlF$Ph|$v3ws+hMUDzJs+jsJT8XDYn&z26evK3 zF&_$PXQnU&FXK1|Q7pTJ&;#D)x#HN(NMC_EXoL2RMAGijPJfR*newuv^w!~EA5DTN z>~0?m>!z#mAeUNgVnbdiknMstiCh1vQRAEES6W6 z-d?=AaJ6X6-NbJk*S)j2`qt8|)dD3}=5DOMTP(d%%-wjmxVCuX>P)fl)#a6in>VMH zR*J>e^7X|9JX^dmfBn|g#T#!HucO|LC2;j3*cm`qmkKs$pcWTy5?E_tW&SNdo_l@q z`r_)lGgEIYuHFF5;tc?uE0*V0Ru|`QU7uSimT#>rFWp=~^H%}(#^Q}PR?x~qYvIN! z+{bR-g=?1$ozjR}D1wUud z%azqo^_|6=3vj?$S-c5Ur`}ju0(g=WHAu4?taoEUp^(%)|yR-Dv6mgg!L429^z-aKe+D|<%r^HEBlG_+QYr<$;}b-4Om-J zWfdMc`GXxgVyWlF+kH&5@b;o3M6%!zRB39j*~!}Xq#NUOul9zN)sc+NW(Fr+`;>Mm zNL&`gb60J$wRn?^G*jH^40{`y?E=HPRb)e=r%S>RXz~3KR$}oo3eceY(=*+209ipx zZR8C~9w4DtcrOuFj?vs`)Y;gP^@k^^R%pPye+FU&-%|ioG5sC&a`n?%+&?%RvEMj> z6^2pA9>U~P<{G}OLlYkHc9-%qoV%AFZSD3um4_+ol`E_YAC#YJMx^pncA)$$lBE2G zq$od2*gknx&l8aVVd&x`Ayassz>*i_zVfq#G3^yxf!b|3AmTx|j9Np8qe7~`9y)E3?np*~Jy`M0dg79h7$w_RRBd}|ABIaf8u{kZ2PVT%A z7QyXqJ1JU{9(iemkBewgsM_(oglHEVZCn-_L`5oV^1^TxIowlNK|bXr4hFq@Xme%? zDXZbs#ybv73^#GgbR7~Iei|@+!%p39gOZj$B^?r-<&ga=I4l(1kpArEI?UJ@^Uk2- zE;I$E8;2%EA8brG8jaQCXjk3$={PR<${jGuW{_y?P4qq#Jm}}?r>&COi(cd$w^QJf zcq)-p?Y#~!M#yj1^uCmaR#eW6Qz*Ik30*GLP-dvFBBaU7^HHVn1L-3W&~)QvZNS~K=P@^o%%a&15@7Ifcgg<0d$rf{5c4e!0r6tianw0#NSNbq|(92ZAXmF1pc7CWr{jjm^l zylBRO#RBXaG!Y0y#;h<&4t^hSyY}i&>m|9kZ)vszhQ^(Zva$`=u`ShoS1C9KPwDoC zmMB_l+9Ggq9|TeNYZ@Rt%p_c(IqJq%pg-x2n!r-xXv}lm?Fph8HmjQ8Iz~|L%v2(9 z@rXeuoMmAsIO=>IHv1}0i+czm&>I=0N4FLea_+;f(BnPw+-R`B_d0`~hzEfLC6wNw z2ZO%GIilyCBm=ZGo!IPZlKzMs$WTnmmoSZZiKj8P#3j!s@W)mc&WN$~gtq6ULmw950jj!>|0Vp^N`>KJ)0m#Lpl~v(Tm4;bw*VnxrC|Aw`8`yj!_7^?` zP`}+HocFGjG${Nm{_fLa!=lzcY&Y&|~F}D%Z za~eWx6%{?=Cr>+G9o;qF0aEBrcXZT6xX&xHynNvmxMNO>v2KXq%4CX6I6h;BhmtZ5 z#%Vfcqw(+^yZmkHSh_MMV>XXHD%YI!CfH;Rh0eeoB(;umLf1S_!U*3DvWW21WjNt;B+O%LxQJdc_V zzeK-t;lNRcc@Gdh2cCq@#bY(oSv*%m8D$%a2uc+C5y%oQ(%3@gutxM~(W4@e$OKX& zl?fU7BG|cI)ZK^a9`Rc+&QGkm>~-$bvMs6^r2oNg2L^96FROx~X}b+#k4Rjs#|*y< zB9f1<;%-*aLm(p=)ui`B>-wW&v$Kuk4lJC6n+**1(1*Jt3y9rNn}qD55V^~BC@_wz zVTs*h{kFwH1!Url!v;!rV%&qrow@F?uqw!E7gnoC%SV$Ej%U4M?lx8vBqW~bu~dvK z?$=f2I$b9$ZoTb&#KfD5BlZf3nCN{&PH#ZFt2pHev?CKm^+qOGAQ>4_RLKlLb-`sh z8B06Z0LJl_xApagMr`1Qum+*=Du~bou7oI__*D>z-l*}44@rvzjz*z4oJS!^0`%KU z85x6x_dDF%TC15f(i24+93cG$Bdv--6={ZUhF4(?nqt*&Oh&Eb_bWM;V?1!KIO zVF!nN{TTd2?nd@CUeYQi`8)z&)(kb*u^>O>9A9>jj||t{H5RC275Dpx19{6sPA#kd z3*sshvEq;N3U~=KSJ3vZT*ePqqpp1EOE|OCl&n`S|4i%+;hu+XjUzx&J7UUJm1KLm z0$^9|^HtZ9&TfX-dE$)FW+XeHwy4MJw(Q`LFjSWO2{AB5TR*W^7hz+%{4=4!#B4?Y znkJul?;u?dZ~%%JtG75bFETBG5|UCzV-7{N5M*)c`~jMNP~7h_&I}&<;bz$S6bx)k zj=}gPYE8KGgibH>YOK=Hp+!aTg<7tsAh53aSBP=iA=bhJ7wqV!L}*IQ%)l7>PP-e= zvR$K|Ef)Em?V+|X(aRj^;l`jRi~cMh<^i-Z>xqDsFn_ii$3?7r%AQ$mySbT{vZ~yh z5riWk{q+DFnX}4+nrVv5jQL&1p>E^8FOu&dyv#|g+p%{bM0Z<~ojJ3reH1ymL zn8ZGiGsQH`W;h>?2YMGvoDP`D$dbNQ+LFF$A$B>>hmtf3hcp-yX#8ij^iyhzXhWaR z!_2;tN13J7a}1JSYqMYa;_c$6iUx#g9xCS5c~a4YPYB&ba^dPF__v|+toVr`4I+`< zizA*vAh?C6E$|~bgmTs|NLecyY$v=YtSkN?xmBlWhfHZ}{ynf?E|&c@|0W|^Au8YJ zq%O0b_DXFr(_P{8nWEbiS$t8JWcpAOnfC{X>86KH|XjVgnBT2#VI5( z>UI>#4gyzl7pVx(ibHo;gPIe#fw(A5uQY4`=7j2Q7pXrr3O&yM(ycPI$;h2UFu zmdqdi8H0IPadQq~Ef6^(802-<5{n%pzsCSC(S<;Ctb#g_tx9~Kexz(z)G&Zxo(fh~ zV%LvR(>O0}pgIP8Te+>;t4!QfKCdHftE9JEr>Vm%FsC|?k@2iLXNf}%gTVE~lq~oB zfZx;G3oEM&D{VLgEYmrvLNdZ4i-!eRbQOrSO5J)qSl?pv-`}W(UK!;Igvs>Gy9h0cidxN_Auj#_6dZcd zx}4}T*bKqD1X&i^?Zyf92`6tC1dG(e5~*;gWO7xSEz|&kpJL|=1!~9Lu^dlRFHws} z+NJ7T@v25h=|v{S$J0KvmX$}(qcfC4FaIt3*sP7}`8BO4C%T|&iPFcCjP=noIT|LP zq^Il0R*dKfMf`kZw&1x9x|r(~=^E%ovHYzL4!alGKGHnN!_ffJ_`A zY1k^F#k36v=ewm)Tk2#6!n|Vo3J6l$j|~D*s^qC6bFuge4uEqOFcy(RJ2Nt-x(;=M zWXHo1;K+%ZnS#!NvY07Gs1KnM)TGci7OCrB^+-AILKQ%qnP_XWg{?aGCLlxFUFrkX zdC`|8BWgu(#ZGB?Q8^@iG~JH_MvCx5`U28^#v``>G%ZXE>i_Vh@t+uS=|@VDu_S?k z2r01!`M|+EM57R;nxvx~uqw)Hz|q z%6lT~TLNGrS|sIu8vWzC};A)z@69V7@ zQfY~h4kMt}9H{U#IJetraxK=Vj(oy|(V#uP=PquZbkAcu6ZPDSUp%JgwS(>~6Z@X8 zR>n)^EgeTjs|G^oPhHSToIuK})HsG4Sg3|060kXASo2k`5I`5?GNUqgXr1vyV%5kZ z{FP1+tzCQ>t~o(k20B1Dr>{;%QZ*!$JKh_p+WClmz&tEWJW}9v=IWK> zIc}6g)$hzG$L6aYCBe38Mmf}Zs8J5JG0K4kr9q=vDe0lPkR#%A)>&@=_Y?gen$E*K0vohp%x?-Tsi_}^HUyJ1%d(I zOC^s=g}LZ>sff89s05M-4TA~7n)cr%h`vLdE!H-g-bFo?K+vPvS*%bJj3rHEh6J^W zsCt*aNSqBG1PonBR2j*Ig>h4)FIzMkugNiS&Q1-Q90HB=ca>%n0_Ph{V_; z69LmN{g-4Z6)M_(hIupt! zfFZ9$gQ^0K3*FdNBtu!nUIID*sKSm?ast?)Z~{9#i~Dr@&nZ3H$i~LZm?}OZ zX{`KKg;~}rj4`fKg$!b)w#Ea*OzUB;i@D)T+XK_(_)~l`1xrCD^3$|mm#08#i zIy4}`DN|ynaL8S9HiaviK&f|Pkyl}BmODvVD3!Drpki|{E~dj>>5-Iqr+>s_Y4Lcx zwOAbOz&}|LB*JhB>Z=Q?G%pO~o=-3)<T^r8-E_ z5PV&ikRRW%yPO%U`Mb$U3j=holfN;`EO4V-5afO|W9*_~BFYj<2(+O=40&S-xTll9ms8<1Fp-(gMUE8^~k5pnG zPm5@Rv}?EJ&G*+=`;S}e%ys;I_BKzZcjrv&8+;qvvE?5~TfB z$fp&sWAduI|Gq!J`#b*a@a~@JTah4$p=FJ7s7Kv9Ofuh;=#`MT>m7Z1Y<4H@S{o7=$pa%uX1}o}IM#-41FQnO84rv*6FK;Dta?J~+1X>CXsnxwB^Zo7gjj@ZrH9m1{W67NF zJ#aP&j18IDvP@$e$m+#p_XA$OH@c5hfzZ`#hDVrRC>eb|_%bxaS7}PBM#eLub)e10Ts6d%70rxOtuyVDjtOFn zW(;(-Z7VeQ%)oP113uE53_bG=x6dvN@Jui=>yG9}LEsTML3gqmbcM^mJNtSOtNJPf zhHj)RM-%oN(1-liVHrxdW6|-JA*)-x0fJY<{@_vVNeHfs`>H0SKyFXMYqW}pRW@y? zz_ib6g_u@Aw>t?T5?F~S%wZ5Y((2@x8tNDX z8=wmA*;dVW3}Rg*LxVOT3HQrks2S81ew2+JB-a(z3)qOQBB_qo$uE_U#QMBob`Qn#doDxMmHl&D#h>s?r8+a+hEBn9b{NA*(AgmAK_^qB>&l&>*%+ zn$W!nB7*INrxvLkE8I1L6-VOp(j^Gkl?mI_qDs*i2P${om_0w9IVD4AtBAQeMZ1sf zFe}X%ta3Zbym24SdeMw_%-|r>a2vTpm!X9u2SYE%x-Ze+dA3-VOX-rwFX=X)Z}gkK z6Vuje(hqR>H?j8izZsd0Yk?#huqz_NUEOHPE_~ib`2K#$FoJ0W7Qy8;G}JLn^9Xrn z8Nzj!sa%*!K<6&L-05t*r?a{f1~gcQsvNpr>>$LG$=oot_EG=-$&vmdWP^W_W>w%c z*N{%+aFW|w_}6cnnt{c+dr3zs5|XozHv26!Z7+dM|2<*@3(tMX>=9nUYOQ@#G3=O1 zx7pj!O~Tv6eK8v&W?&g!0Sdsi z#{cS~971*>BVfzVTGmU@#nKfU2_P3tM@5zIV>>TL=B0ZRM21td%Aj=Z|d1b>JSV`)Sn^h=849J25&$21v{fkpsr* zvn41ew7J)f&1kArh>&Q(sFNr8GK4)h15A zB!!Z3K_XBrYn?m1hvV2qKkfs#hF4ZA0fvqQG*}9HVtqlkA#g@#HE21}I@obGq4C5( z19RsayBJu%)4|l_?%yo=mzD&F(@Sn5Ic}v7h@QOk8BDMQNC0-E`2!Z2V+mZLlmR(` zeMzIV&tygL>@7TwGo{pJ*3qqubXrtvW0yp;IYoa7@RUMPaHs~nnp#Co8C*+q!9H$< z8BpOCW)Y;|MF{Omwgh<4n!EkzR>mw{D`RDw6;}re3iNKNkHV z)e&|6q)2}G=iIKRLLzQrX-UIok-{8VTC)Z2%o^HI4noDq+ud$lm7cD z!dRB|+HPKZECY~f>E6OA`Pi$C<2w*eQcn8?s*(330bley!m-V5&&-sOftxn7Gl_eK zn5ei{fejPcfJI(P69sNa;)9KborpP-?Z)&#MiWNocfy^{s?DxY^K&bTg;cUZQpNxg? z2m_Ln>~)aOu_JCM4Wo`b#*E{qLrkG#IZ8+EL{5tAllm<_Sr&5cu{5Q~{v2qfyu&F$ z6<+%gGc|J+-M@cP=`1`?q@55|q|<@U*d(sNY;X*ZJnC4x*mZ_*zK5bkv_jm+42i@{6e>55mX?8s5TM<1k?q; zk&mpGXZO+G8Y+1?M^{?( zP1h`AP3TpdZCvKo*;S7(Y9R4hTm$?FlSv|37>00vl=#^6~&Sgy&}X3oFIsS zI1e~NA}Ed_BuL`O4)TEEeBXK8$N#7*_VmoIv{Ps_tN#DqbMHO(+;h)8uNzEiae9!| zZy&qSVq#<~6Kicfoz~JpuS)nD!?ZPl>*}#;f8(tA;#f#XOI7#-UL$jkBiU$z?Ti|I z71ZE5jy+to?@z&0Z zlAp6z6B+LO8~|KS;MOrXvRR*w*se`|+&xRjVXpycTD+EIO9~GYvKY1I5$U|9b}-s) z_aV29_4ot6$*ie^?)h>#Ed`Mwge+o0ASX0jHhEqbcxtp5;=0W~tc+N0f$fBa>?)!} z^cPDb6+guhu4KjGdBD3@we|tClv76))kSAr@s$GNIfRb4hR7vl6*x16o=!E$g;F;7 zJ0gQ5H$+&(O(;ixvr)c#LsKYFP#nRbAGgr5yJD2u?Lo3(QepJdj~%8*NxE2TI}1&| zzP){S9oagiYvCz7A{Z}$Ee^W4F4l5|v(Sy<*=~P-zhuOuAr!Z%ayg6py)wS!K2#Zl z;#bZoq1S}TPfB`EyU}RwViAgTZQ6<_e3LDbA_*-u&OB1If{It<|EFaiE#yTVSBWa} z5x$Shc@6=ity|?hOr^fT>`>?4_AzKE+el_>qZf=)+wv#K+i@=@WT;gUYn9t!6~WC;^gyM+`QMLi>AR}q8SKZ&A$sHUjcC9Kp>ZT=;csvEVGis1h8=3hm@x`C+0+u;4o=3hgxI^-z4 ztnk0H`Ew{-w&A*L8b%RMQO;-5tZ2l$+*J09+09NpS*!-VR@P(SDos+sU(<=PWoBse6K3h|v zs_C{WzuW#Q1_{;?O4NU8+4fgoYJUw2*CEXg!&dTZFSS3#k~yc-MUtt9to)}hwZDC8 zc|QkQ`QlRhD$Caqtq9{*?z=9vTP#=MYAFSS3VIHrmk#k^G{rA|7o`Q zshVOIANo*>NF?a5d7Ni0YMePSIJCBa<4&SS{~L!jdHYv2X7rP;2=1OD4C`QsP|>BA zKMED?iTXigwR^*ZG49mp$=!^@$(X7LWM>p50xWeWdxMGCCFyR#*B^z7eiSPDQK;yL z9V+Ua6e-DT-K6WAoOAT$obj1B zLiR=!p~!h17IvZy{=|XJzTWMg4~E?oese{%JQ#@D66ynkkUX0cl)0QIUCE!!31++3 zJ!UWXw^~Jy)EdKjAF^B)PbkQwz)4)#wL%MdC;X`tO2&xiICRDkLqe$2^Y9?vjp2M? z<-odnK;WWSC^w$#hGHDZ;D@*u6k zqNXo+d;+()&=4`$+!9huAx1`!I>uyp7+IpM<{XtSR!-W5GK%#Qy>nIn^h)dVe%24k z{$l^8jw(qcr=0})JExOf_!>qCa*wnOfeM9qjkHdd-LwpO2$!So(~SaN7EljLCKZYC zf%XQ6nnyidNQ40uN|^`}M6nN+PY_od?)N%}X9%d8w?9@>O&ZXZ;A)OBT!~yugD|Z@ zaR(CM(W^MP??=y3X@rK9$L!wQ2+~oEoSp8OS{W)LRY15mlhYbeoVcOHD^9oWt^p0S zsucIPZo$$GojacaBfS$kb3)}Wh=q4z|KPlXkexWp%ETS@o}d~#yqZ}%}L(Ttb?o7jT##3y|;K>C8u=eq>HC=}6>)jk-3NYeY+yv`4IU3-+Wy zf}nlej_%AMx?4$|gMJUMJxr8@rh5kMJ91k)6yj9NiO1HUe*((Hl+QPS)3g3DywWpg6i$D_{hpaX{dPJgf0nVbz~j%GXG zi-g?*4DoDWxN>FTLVTIpkyl$UE0#ec?{xRhJEudi(etP5h5;!Q$i+K>g>yE<74x8p zj;^{r-QcS}kC6r%RHZMnOAIAGv?KLi`$$feibv?pLZ`H zI^7}B>tixEMnT|7INY3MX5C3yeFv^$r`WQ_b5mPd8@r0uCYinej-3q$xOg!nM;Ud} zO=|8A5(=o#Q>+vzkZ03RC$>{2g=w77Rf@uil$-AKoL#U5dI{7{DA)4c=nBQdUH3h3)0jk^THrO3D2&g2 zlRI}sz($5GxcKdnl@X$cXR(+8bC<}-URnjizn*?Ia* z){uyq=~Ess(%&wmrO$G?Cw;@+JN=E7k7hd9d3d*X#ADs|oW8H_n(156qHjs*cGgs+ zx|yUUoe>KoPhX@=F=MG|p_%M0E$rm3JSKg^m6QIit`B?LY{&&ys!0L@r!d3=h_RI? za6A7e-lD21;jFvrgJ;kvA&Sj*N`{e;?25}r3R4mW?qF%f|BGz?0hdE^1HBZ}<2Kk7 z3Th!)B~j{^QpuUrbEs(H%8zd_poeUoz3~*bMUyI0Z8s^yshRJrEZli`y*1nBM{wP^MKz&3R40hkmuQsl zaG_kO!I|6Ld=1Y8lcF#5CEq?XewDu}Pj~*-Hp4`Uk83TDZdffz`-?dsVRreWgzXW- z{FE@LGCNO!Osnoeb=hE47^u#6RVZk}_CmENa3YALk5Ya?L~-qVnRz}svzrHJjtkrx z(R@inf8VZ%=Dr&UO@zgao?j@r1QLQzlT z%h#%#7A1k`cPr*7qk@PBaY%)c8R}0}AY;jU+Cd!V2!gJ-J?6fXaKg-)ACGjylXB3> zP4}Pm9vkwdN39N}GZE&cua>?IDa9FH*N1*3wt&1{-SN>1*^*Cnb=1i|aN)sAUC4-# z+>+;jzpS6!4l1hA^HQ zy$PJDSWe0{l9k925w$mIk*uSuXR9}rR%xhc(r8arY0+Zj$W0NQI&$j)pe6EC9HS=u zfa<#uA12pDj6}&MTW8M}AJ!@&lBoN4V`5YxQ(Ms=GuB)5_f(xH7}`K4vfy8=NTBtk z=pCOz9fAQsXOa}JSD`yX@pd1V@$_JnLEcE!cKW*%*(#sH!{wwC%jX<;!G+{_jwYm( znI=a_zB*&@6pTc@m4$iiI&i5OPRb!BS=?;}Nl;pVWwcnHy0#j=CdPqVvtv zy@8E$Yzdh_SP?Mfd$oovHdH-~Jw-DHq}EWyM#%D{msxB>=y#2Nb-E%oSuqLkTS%2Q zkz3X<(1l1QY5h8+r|+w{O5dj1*G%fRo2V$XNxbHCm0ivrtC~BN{pw-3Mkrv`Bt|{j zJ`>HHjI!|nBAT|i4@mRLWNAIuu_Z6cTCQX!XC0QKYexC}7Z?_$4{y|W)2C56k(Bw7 zVbu{!BVOtXm%Ce~u10XxqAvW;f6jYfC%a_oYEN>!E|8e2o<)AYpTJVrw?x-aC+3Xn zEQgIYE--OOqX~OAVYE)TG3)Sj;bw%yBRv=rtM+4q4RkIWmvH1&|e-EJ!$=mb>uFb!{`M=`r*LYnnObyJ~{NFZzS3)EVYH|X$0{>|9 zAEUr0ysAusz4|BZe~R%HpY(UeZ!P5G4_s=0hOfWMUR#{UtNQda`QBF=PW!b>?OUu| zEtZa}efv`T4vT%N1T7A*{r#8PZ?MSM=0z+3Eq&rS{Wf{~H#IEeYupQu78S&VeB-A-iV68BCWL{@ynT@@ z7fThvR=m_`8F$c7>feRI9gk1X;c0p_W_k#CznSwVv}BQO_^Z(oeASr^Q-f&W7u7$x z!bbqohvE~-=th%W&@^%Y;UIpBB;9P!{X#r22b<9L>+8k6J2$r9T-{nPHtrR7x9+^L zaee(dE}*%G-(Y)hZfw7P=l*tq5?iacx8Ex6+$dIWzg28*+`hh4tpC8>t@V5NuH4xw zHrjV@ZLH(j#_hFR_pfiRr8`}W7eWzf925Mvd9)Y#jx7J<<tghm3NOO@LoQo1`BOsVkqD)jDS{51^#@-Hyr z0|VqsYkP{sDI{6B$H!fGI6Rj=qw-v&&RPCBL5`Qw&(uMuNeuv>A8bzLSYI;IKpHb_cnXtLq7FSibx~JfZYLkY zDVyd@nZIXrgeJ{@*;+5zIbR^v@d_P8TT-0QIujeEAsegI%Z#&Tmr%Onoz1c^Y?@)t z-CvOhPOdrMZ438V^lhf$Ry?+y5K>n<6OZax9AjiMM)24&642m|Jdvt&rl~Ly!;!e? z_E6$Uv9eO&nnAwt&)QLMj~6f@2;?zBsA6-lRv}gb=jHAoXKt#j*;RnwaZ!NGG&UV5 z;%JT*pP0(iySXK4lLNaolz;+Ry0L%I)HOg-Q+zU9fZ~oKk>SV{O`IJga~-VHlwA)8 z!`<#cZU~Raht@X@K?pH()Ac0kvFJM$dRX15;^@e&;zl<$7%?BqgWNKv8CGU4)Jt5_ROU|Gfpc6O))+OZVxP)fz_=aG`UXSNT6v@TdfzWP2; zmDSyoC>O;B2_nMT#;+PmlTfcH(-0KBMHGT@GKkAA8aUY!nli8;Oy|I3RoJ>IB17Mp zG_%-i9k#GDYJeve7H3@MP|-*#1Ty^Cf-nxSy5?*%bxDoGVD1d80;`AH;y{K(xd#zN%sQDDkeE{ z!^l;nEXzd7dg6*7s>?P=!x%PbFMw^eVm2sY`S)kvPOVkCWCHCC$pICn8~_;CvP zq;Z5Fz~~Mtlr?w9W2b97Jb!12`>E3ar@wS-wzAo?r=9}Set&{%FOa{fp;tHmStw@x zRjMD}ytUcJtFM+?Q7624XLB2mugGH&01eU`n{VOy^L%dF>XtnD6rbplFE{>YH~&1U zr zg1-3kJ0IzbKhhU}q%ZzRUknBMl^a`k+Dir1?@*Le$9}t5yL0>Y`r7u!o!g?C7lnGz z;G+l?>>swiSS|rtDm*7MzVVLuH@as_#myeh%RJcO9%v-(!LxG0A<-Kz6>_ehm3Iiy zw?ka0;aX$nfol)rM*hTJ%4{UScvc7wDb53*;a5pc6d0d%i_bG;nwi* zdjH_SmCLL4Yz;{`4|^VgxZsc1Paxx(+8Hw5_FH$?J8Q46ufbe%QzbxCi32srtAe}w zM5NS^LhmXZGn1#i2eyJcfjkWJd`^Bg4C=&k|tc zBi@}6x~LZmr|&gcmGAQ2H=i+`NXa>sO|9D+D4JTt=X5|a^(h>A&WZAq z#>jRwf=c>0yTugbdWPgcKI<|!ZYF?cNN#(GBZ6%>Ig%vLgF6ZQN3N9HBab^&H7Bp;FtW4cD1pDb*V-c7*xs>$c6SS2Fk@5Ch>g^t~`zGqs-yi z)vNggVinSqgjL-*K;6<{9-KX!VInh9)m;#e$TFS*c}jeb_9`LF>deSS&3<2Gb;;tA zZSPt1RMc8&KvKhkVg3n`kLIPM$REQ7VVwP8vUtW5q>_7}%Qcm}LLI*;B(_g`q#6)O z7q|rg85fi^bfJ+)!|w(u=c+z`Ed5|X-io&$%kqOuVa^+i^JP}L1UmG!C1HlA-Tv94 zG=Z%IRl$9<5#0OtxI@1Nw4@#3k3{o`*T_buUgcUK&-VbeJ6IkH1g1#9;GhBSO7U_; z0$+wIwF^!fjJm7dAcytJR9GpI8=x>yz_FI0zpUymL$4yAE<=d(&6J|ZrL?%HwQy_p zWA3vYo$V2^Y;}oIAvJY*VV}2kBnzt=!g|piDh)Zc1s?hkB2UxlU;t{vs#9Cbm#+V5 z`=!2jbUHw>*89r6l$DLBbb!!wHnVwloFQc#&vuIHJEilZ>gy$>@`9Y$s*KpFO=p>Q z*tloIgdil!XkrOFfY%Xyo&7xi;6X|1jH7&rqq`*e)l>#{%VaLbzCV)S+G!-~WMO4| z#ui%*c{7$-J5-_(L5u`glfEsqni$E~Z^Rlfx()tjT8YJlZ5Xz8k+yDsMKltvb$F@; zX^xL#RUn)XmU)#;@4@!N>DY$Y3p8(E9Jem4Z%5u}h|wMfYZiZob)Dce_SnfM%6aVi z?Dc>yC@pD=YkKnsaRx@F&+I_VXWCE9wi2=37bhll?EPos5mUV{F4(cUvykL8Y983A zm9*fa3Q1oGetoqYc}3d9avZYm05wr*fHOmS7bt8D~NHZ1CrE-?sTiV#SP-SOCQ0)H&@LpCE7bxxrB z!1cyaKGj;t#F5pK1j>RtyZ;Fnc$ENL*>?R3&QB}JCRf&h%FXmT31ELYJ&+?nd#Whi zhGY9Zc$>o${T^HtOn3c&v(AJs@Pm<)1HKv|gPSLPu&whUy%*mNSkW+5%k12dn>81f zi$!j8ONF>WNA7I<$*A=P(@0yLTTJ16^=c9e+k3(oe%K1>hz1thIp_~ShO@!0Y55yc zJOio6li07gKb%I*blL|wpj@DQ0w(F_%w}*HscU59YPhsZqV-~N+^j|&Klbs6THp#g zv9!252ucn4kyi*O{Irsq2*fRz4cX5*Dw@g!qO0~$H_*JIl}X#{9z1e&lUGe1&8)5t zTxAIP)0sdX_xBU6mvA@1@@wX+CEe@}y>B}!n#rvL*$g7ds% zfiH0*62A_P$BUV9iSPJn?0W!zEsi2Gs1z?e3&+ujUwO7H`6Ml`r@vT3f9Erx&(d0S zVeH7gLDaQN5=ET_sAOO#>>)7=E~W((vfZ?z9hP-b%8$G$f1lQo9A8}hVi2nViY<+) zf+1LqMzlsTkjuIGi2W)}f)&q;MRdwcP{xkjENm3F6VSR*#CmC;&&GSWis2B^Uu=KI z<}*at*_IT}NRwB23_Em9MsDE_(K-h#*7<&|0t;;~1LzU(b8d?FXvDj#IoYe5A`LCw zvFN&Hcgs!^H>3_vELp#JBuZe!O^Pp4tWuFVkr|zi(cD^zaiCV#A~td2)Emy}gBJCIeR{m8H;;?&21^5>h|B_$w` zBDp6h`S1i6u4FwU{J3nqwHZ_1fKVlZd2nha=Rm8K{4g+k5t@Aen9XK^jvv_rP6TL^ z5z*!?_9o>SQv}v4RA}$I+Cl{ zSb-m~CiJe_Wxi9U!1p;nOd3M)MKUbaj+6`6Ko3k`nHX+}awe8{SrOo4uJ$s(nSZot z=d;E*VtxY5q@-FQU^9?A;Z1p`#dGfNa@>NXbihfGI8@c5)iGWzE)BFHw$ZM05He#WYY_Epu_% zs3H$!JuqIh{Ac6PP3&=XH>qmYh1oi@Db4koL=yykV1 zEOYB5Rn0gwlpama0%#d16M-wEX^C>$Yb4K-DowqCF#wmDb#{A4-FN!Kvoc3Z`jD4| z4}8|c{B3hr^Kuc2^*VnICw~rA&ze(BSyl6so+TM;j1!y(sOb+zn+d8d6ivQsXkTnE zJud~s6CF`#Kj@#05cQj$9OKJT5AreY!>NBe{b)>nYe(ZP90v0PvDmT5N~6qz$z{Z) zlbiGlY)p>()fp92*{t#1=ZmTlm@oN}w=0QrZGfZi;bHUmSdmzAS1(piIv2NJQbCxD;5H!Dc^`w3S@YTM!za01J?8N*IT5n| z|7mq@19M3A;ZSdgBil?hWp5q zAgOYskNR)~9Xu64ddpTYM%Te@qu3q9E{O%iFDSIyH2w|iK!qK2M84IX21<^%3S@_AS%BU^mk zqOoj4K0_XZE#~bXfzL_ye<@xde#$tXlHFUw37t9Rju2)^81;&G`rTp~+S{Y$9l>l8 zl8Y=6GLcBDLAA-VO#ec5%;XZ!BJ)cMi#y6wCw|9`?z4Q2i}fPaYHAs65&;q*z6>T&Jeqbwcp>Jz_Kf#uEmf1R&{&Ktl=b} zgp;Si(6X3QT&VmQ5kC9aYc;n9Lv?Dhh;S*<4L`{}w(V&?c=;@oGW4OgMwS$2LQ(iF zc<#fn#Vb<69rDT(c770Hj3=;nkBY-o(*h#H#olA!GuDu1wR2Mw&B#oI%rfc+3)$r4 zJRqJu*5^9%LrlL-5wpl3tI!j4Ty%t*7X%~0eHCzX=1ngF3_588gyh9Ml@WUgZyWJ; zzHn=)CnkYMObK;bG(}fwCZHBLV~XBn0PB1NTto7JB@YHK9fzP?hYym`XUJuN1ewU; zf(gY%@QOcD;0*}g$3x^A);YpW?NS{>4cT6b*N2Z`A;LMDPEkY13#z&AYZxJ+*b0Ys zquixdaj(}4(_JD$x?2T2>U}QO4G=q0drDXAVw3&=L5;<5f~%<6V#vKR#Vk|21hN8^ zVp|cHByj5`i5`JhsoG+^KkHn!w%;#ldS#RTq_O1WBF6)DIi|QK37_?67>E>6VbMzD zuf*C;Cp76>>77I;uyYri`FQE|ESdZqcynpfF@{rxKUkQOj|$YC*y5 z1i~=nmulB4H?p}zt3@>qB8&&xb*_C1D)=+*?H!%KL5s_ue0E~2z_y)GOFC+cAz-$<<|uWmWZ%j*8YFq~0uz{Hicp>4&bl&^Jy6fTg&^ z$m(FUOr|-F!VW9@=LOG|Chy7EC9N4y#jH`|BU`2E(#|?TI7tVKI*CQ(EX*}c9QCTp zg}fTX$Hl8l#k-G02wQwd{b6xS^E|6H6nXi7KSp_66`)G5!%O zIM#e1)R{!3%nX0YdL}@AOiGNWw20pa3-KikgBc`N<#~_GIl3_NsehpTz>V%OPV?xO z0hQ+u6XUd3;a_hP6{V7Ln#8SaF?OojB|-q2V&qOzI3Czpil6FC#(pl>5?76|{S>4o zh^wHpmWrf9#=mB)IdQd0M0Fjb{{MpP>$*54eV)qnzJGHec4e>7Whk3nvcFdP`pl>P z;!_b%CLh`ih|-`%IY`42PWvb211-_b4WL)xrOOt&sb2`ek!~@%$_mnR99?jpVp(eC z4`Y218Aw~D>`44s%Ogo%)-i;OP(?U+e#qniHFStmp@*czp=OaPL<2uc7qQIyAP?Ww z>)CcaU4SS>oB@6!o1@xoae;efB4TKFWzUb5;C1p!jY9{^MsN;04ZlqKT4mU>Rc4L6 z+|Y>W_oS`3Dex(xm@x^Eae$3#3+&)b?sh~an$#6hiU4%W{t16M6DWeFTOD8aw z0duiaH2@;5hPoWo7v>c_=BO3-$f<<`>zrDu27{&YI;7G=>Mcr-D%RmI2&sos$r&a; zOz{9^2Pa&E3LObITD=Ve!jZkfN&fs)Ph9c1|3a~$>J)loQLFJT6WFT12sEUK+jj4f z9fR1%dOdv`d2;tH`gnkN@}2lNotRDA*^Nf_e`ykA$k zF9%IIuE2|HSU@!lz0cbdUW3#d?;Sx8B+*$^j8PjVckSXXPAZ5JXxLeYI9+v5&7l%Q9tgAqJW146>;Ufp*j%2lOu@e29!Xt#7LA`j3HN^Sr(-?afdO8HVn!C zq5b8Pk)X}r>CyYCY?z{mVM=nnf16iqD{pthrBKOxqB^lhY&9`uexKrOuS*Y`&gmKR zjgM97#~$rLkpR79r>loCK?mktGJ3WAOSChJYMfM-t9J#8DBO?;jK|~q+iT4^*Mkpu zhk3*F5XdcB=xRoPb&4YcCC>E(CtZ&(ZiW^moP)6FAZ(iyTNECwacKzKR)1iNF|>gF3WTaavdpI!B0^>dFj~rzy}+B2t~pjH>pz`RLY8Br`Mt=K4aRs934Zs@g=fp>6Ta^Tg< zheOzK*s@SSo%(6bO2yuTj<>N#cy-Tntr*cO-SwVh7#r#cSq5tOb0BlkuW{1YUsp4( zDT}Ri(KjZmh`mA1`r4 zbW@45@d9>HrrGCJ8MOR(|FJY-f*TemlYtuSxrPu!GQ@@Vhq#HI79q%YeF%uUN>rN; zUI*!KU_eE(3(MM8lO$=1`zPTF)6iucO7r=gN`D;zLnq-0dm54$%ke>}46+g6 z8oVxYqox4E(^Bb5%XzC7O2wfo^Hwr&A7$DYJe?1P@s$)QW|vbYF8m=R*;`3Qpq!yu z$gao{=txUvj$(a;WY5Ap&LJP1c1O`0vb=lLaS92DZC)fIXw6u&iZ9_^3N0+1r&zV7 zhivZA2gkgy1174P<{o6i<_z2jl?ZA|(BBV^ED29@4`o|3v3EuXlgV?i@26{;P`9~f zDtXW7Q$(79dp|uY#a%>pTenTgQWK#z_rjjL!{yfI==m4_{6G1BKPDgESNn}IVm!@3 zYnLLdZ{ENS2Va+z5jSLeyCIh^d_(d!ocpXqd-FExe|=Jd+y-)tz5o8rH+X|W_5H{S zytVnyl{&zE+TV6J5AZhafS%bQ1z7$5=1Hjmne15Lhc?G3@ad!nK~3+iJl_0q6!~OQ zgc%8}fuGp?b9ng&lb4!$z+V4_&7Z>SnQ_im`lmPl3QB*bA*X^B`ZqWKnzYDcP;9n$ zX0QMH=D&~EX>WP#vzNcP`Kx%D&WE0Ge5n7?=6{O!-x9&%Tb=>R0R3m1e;WnA!A~L- z_;EXiq)M_9e`oW*Mu|_CNmQ`%hj<+ll4UKDYnnOYJ|!a^LDL zg>r!F@wtkE_P=te{co`BVpG|A{I~zgrS`wedY>%SvjP2%zWt^~#j}=c|Jlo-d61wF13G&)xN#1T2wt->0iFo{uP$~OkO(Zo~_ugUuypbi+x94EZhB7MHyxl z{^q6jf5Hmi=r|BnT6xy~(WUnP$5LT-tyFL>vYGhDm)iF)que)@phexH6@2q@`v+LC z(riWqfBbU$0ZWydjmkKK_V99hhvmXj((WlAw=%nz+fQm*bghJy`r*s%_gE?{IfX=q z3&pM#`V*Ji|58nJdIGRAf9i7kM_J}mIVMDow<14wx&5!Q$P0OqvJy&otyTGn%k6)S zRX#ht3cDNjhxVVl-2Ngf<@vf=<#r%)8~bbjh0E=qoTCPJ5$o7bU2gwH*7(lp9aG`h z>iqQO_Fre68RHl6)T;b@m)k$jDl^7!@~Bn%8<*R^z)DNg`-T!Q-MvS8FA>1`jU}tEts%|DE?oF=T43zUa9_*N+z$7Dg9S(Z>|&?k88nr+13A0d z=@w4_-N91PM*ehEuH5ysH|Y1EjW?KU^2=^Y+C#*MKOY{pdEZiab9@ZhIwU#JQ}?PG zco-+JHk1OYyUU)#WdCGr&ygsX5hzq$RaL_knae9vV9IDZw$mX@yZv zTyIp#-NILxNjl;bCOLvV(`;LsTdCR(I7>?2fX zUt$7>boY@yvY*N%t<#vi#I6^v?-i@nOR)MN0_mlf9zEtaQ3d94-<5lR%T+?7Y5<;w zBG9AVQNm7Y`8rgh+`DGD_`Zri30H~FxhP%}mxa`zSvyH)$*lmL*6XQ_Osm+`Sl)YH ze?SU(P^CVoVZla{oLycM2omhoAur5_+t4~VX~4)cIfYeeJc5Hx@1Xw#4mklB=?Rv8 z@#hG&;|!rXg3Bw_7DCZv0$3}+{VoJ!C2k@ucBB?kbPccxbP!D#tQ)sZ(-dqbc(i7S zcB$5?C6<=t?m@Qm#PW=_T31$}z&fTY96^JT&8_LPnx#dqx(}hDdorB`VIv!YXVC2l zJOM0L=p|uiSmsWFC zz#8IXqZlSDN88c$l8ldK_`zaGLegy1OGPS0X&9QlYV}80GQ0LGTFnXTtlNiinL>|v zEa5&5%neuyv(N534R8*+1wdRg7@V&|ie>IPXx&ma$Thm(+npS$@|{ExKP<9y3|Aoo%vuYr6bKVKgr%P7mE&P+Fp@U7^syM zS704CjuLRij`QP_E=f*M828Ck$|xG^nB{|5op%A)uL^)&2px~YQw29|6rQQX;3a(1 z(^h8@Mml+S*7@H<6o z!iKkc;yW8UZ%j7)t^~%{aoC5UI4Lb-v7WHNvV^pX4cuu)KS$%i4Cv#Q69wDcUu9>9 zv$V6r#i+Y*x|^^$eoCA>5^KIpn(4cBIy_yB)hfwcxWKH(zB*xko+8|57@1=sD1N*P zQNZEoav`Tl#-ZWI`dF4gfu4K5JCn)SUM_wYHLKkdgRpIoEvBcpoFnoMTzAjLBKQW?Oz6sN91|52}a zjPL}oFP{K!N=}b-LJc@KgbCV-mYOjt7U}WRP@u$S0&FH>N-_+w_hBEk{8(V|ejyTg zCFwWPG&K%(xmJ}Yk+oKzYUK;Cv70y%e);k+MWCOdnP(&5mdGUckc9klRApgzh4uvq zu?=$;#kK_fw|Fjc(3plKg@?nI(uiMx#55WWk>*-*ps2ju)PhbL1-JlwJ~qgT4c#xU z>m3PDcudzQd`Xx!T#O;GLz@70P4;}i+vApu6D65P!qlZJI4n#T>T1^CC>)jo2oZlG zlXWOL=ZTEi;uu#7p%K+_co3xXQHikXmE<;30>A{a;nu=2a-n7tVJz_-mL`NUb>1HW z<40Le7>hpi$G&%DuQm4qJ3lIxbrhB;?CRAAFM|~XF-u2U8es;D%^AM(Gm7YSv!XS~ zfO9S!k9jGW^yX^uy+!HHQXh^l5ILwjlA#Y`y%nh}8|lk90ehA7FR)HT&pKF1r^Poi zGT{^qzsI?`*zDEzs|F|DUc>HYiMZHg{&k+c{KqP5DwC2=WsCG zT6AlZS88+D(pULscXQL(`*mPlndpO8i2q8?jW0vx% zO+g9g+=eD%?-a#+6lqd|4kxfoxT&G)9hi=s+3+t2jHvDoXbCvi7+oBmlG7JBH%sh6 zSfpb-UmX_`28{98jJ2>Y(!jvc;J^a_+^4~J7`P1O9(=-+Y1o=^oRl$K=k0?orBML1 z>m;+@uZ9)H4p)%cD%KG{s%r#Y!{LBgnXuvp$mpgMv9kj;2No7dac4&@lK9CSPD>h) zk~N6ziZnd;aW&yNR)r))OpzsU*cXMwDM#Qcka659?%?^EK!))M+4Ba7egXb4jm+4H z-rHF*%}U29ir}bh-5X43EkbAe=y#+B%2uJPFBESwN)Rfd3CwdgRIyW{Lz7b&DWNm( z?f3D&hPfbO{0zpT!6SQ{j%gI(YVZT?ui+F4^wnvmmoP>!+hsS2>qU}emBK=Ihr>ZG zBZ11(E&mwoE!CsycAr-va!`#j33XM;zIwHQFvjQ72_9h=7d)kyWDK6VRpI`I(tR*& zi4@&O2x8FR@{CC)j^RTg3o zrNswf^!e)d3jP<^WWA6@7~*9duSl4U?KUL9B4jsy*Vb(m0u5Crxfu*uUx@BYDKPfX zh_2HxyX=eYYn2(UM*6aJcO-Y;Qg{P_jfe89lpc-c@J9NCf_cOjU-GkXGCFvS(5w8M zukZB#1>4v>k8XZ(=#+YtsAoYQ?Va@{qu%s_1O*d6cy|AX#hT9Wvnfr3;X2@pRP&X% zTyt@eqePSVM3sm?_rIFwddmBxZ>8&s90dO^bQAZOY325gcspR-!3fx&a8i zVlka`HPAhHSRfOhOz~AViG5jHQ)_KwBT|TYS7;tv6!4mn-l?Mem&gSD6Ndu283n8f zt`mSa_Q9KY0D!X90sfLRT}}UpH*C?^nN7p=t$UWIon|c8B@5sgFwfvdYqu?nD&~E@dthCS#8&uI%u>NrHrX1*@i8oc>rH^om0B^ zdH*QjRIh#WQTX4P6rs|AF3YKXPY$>ay!=~h=+)Nc{7DRF4#p(?Q}^@+9Nj$yLa5Sqnm(_B>l_tMs-j!=VVWfl7OB&7$aSIDn0Y_vJ7#nK;b%28heqUZ zz`tOW(kANTZ`H>l^4zMxnSc!aaD)I@<(cfuvCYc+x;|to>^MT{b?j{h>S4r6^dR)( zA98YYBY!YcmzGTndKQ%z&gDqGIgV?Z!}P|Qp_?&-ptz;+pqoRQIi19FeRJK%UFgKr zI7@$;qw)AuY@({B35cj?6tNyVRp(BT?}b&Wc$%Iuhtx$oW_cN4ya;G@;!D;=4UYVT z^e$-B501z&kuQpxdQs4Pp}4^diEvGtXW4}3IB2cy*+$HcL zuQ~E$_%^Jh#R}3>rsf_n??T!a%Q>WX^apN_s%FB^1=Z>-yqEV+Rz~T(EH$OqHG4u` zvz5MaT=nN%zA1IGwziauou?{l+UYA~+ijX6GGUpXhjuGd{b?!E96P{I8C|0i4`P`p zHPC^;X)>8SakG{SE}SGQgPtF+CG;h8EGO||As|EM(8gOgve1baAR0WjxFjg_hjAX^@D4YZz;2`y3r81; znP9dkAXkIv)om}!U-C*I@m;3;L&FLT zdSPVA)~D7B=p!6;SdEh3UPkD>QG3hL5ZVoSo;npirI+-N)LD;04@m{vaf7DL#5)*m z5;j3@#o7H+D7>8Wm@H*gyoI08MLh-Usy7QJ$eJ!96FXW1jWq;T;7-E;Jg;RtyBR#gElA}vv>+8 zYuCFhtKR61<1-XELF_Zu=@`-H5CMQQNYIuTKHGzoW5ijQxeIRv=_bV~_j3e8%XNN; zR^Th7WC8!RAC5;HxGe_T!b&k)JciR*5bh#kfB}9GoIJ_pY5FICc;U=L{2cYiWLb!V zLKB1jaUU*I$G89)&5e5}`7SG5FAlK6^?Wy)DsX5mTy>|s(&>V#1oO$_?uwpqw;0wFWjlwEcQqn3?(*$wd?@_CEm7hmyH-Yrb>38RNpWaGd$ z=@Bk~ECr4SDj>i{^_Cq~^4WW!?LVw`jIbi&sK}MGLH-E3-RZrN9!2`CYI;lLnGJ=N zjb1Cy`L279g;l|7!&7CHv7azpbqa9a`C%uT(OI!%s zlcvRxAczI{{v6`GN2#GykkC+A$165wkvQ`$jfMCj7!CEVXJ0IHu<#l-9XNPGok2;< z7kKgRgS`hYQmgvnLp5YlU|{ABM3_8$kB^#d*#`?ML=^8jir%X)oU;k`M{E8A3tZlgyy>w%ViSJmTyKKjqHo;?Af<3ud@JSXjp%_`&wXxzy~wT<0$T z>^fuWT!?mh=vvgds;uM0JQyTa&FF=t1Y>;YIH;N1k)B7wQ=&E6bb}Q1REA~3LM!>s zTqP(JacXtJvRbI2Ul`N-GYJ!J-oZMvFiX`fnL7Iv%hq6UYERP*Dp7?IRQjoObc&gn z_3|zUhx`m@F!)Rh?eXS)hF1K`QZmSun(<~7l@KKXCdU}>RCUHd7T_a(SvIwA;@G32 za|Ye}SfY2g)7F+{o$B$xA@Ofw&9y~OV%D!gr>9{$)g3AYB*2Wl(^MRD?1_zZe>_2^ zt;K~kGbY1h(T!@&yNAQ)KCvQb@&>BMJTJ??Q~bjDT5VVYkN14WZIdt4&wI5<&FRg{ z2h)^4@V{corQQMd7C7#wIwTkb5Z8iZU$F4N*B{{)42gnQg67Eb{9c$A3-CY%ouEqh zn(do8_GC&l2DOCOmIUrq0Hbk*ZD-UfA#=EmIH;xaDcju#M&r_E^MrE{i7i})JfpN& z#-AZAiBKT$%y6nKVXC0=fuYMvZ&86pEPc=B0N_QXB_%FoqW)RE#V{h7S zHCxjgG`nlMrh|q1Cy#KcC0L8dKFcDLK6p`oz4$P_qK=fUhk3-do(wz2O4KL5%7LqT zs$`48T=)?m`=citQSmEhj`^?9zH%?#RU}HW3b)By@8WjRq;)voMxD$BS|Jo*dT`Vkl}_RH=H6+p{o#du~v{NL0J%rOFID6pbRHo%rv&;5mvWZ+yX0l`LiB2 zC{TeUL7};XCp@G^Rj)HREn=9Ju3!o>JO(-xOuk&dsU*kDg?o?sngLT#W_Yr;myx*C zJc=Z{Td<-h7d3Jf_{WbJFl?j_p5ZW1>3vmu=Ae=;R%&^fri1WjMJbUzkdvBd$Wta&PZr*$Okd)D?cGeI??Bao-s(Z32i1+&q~iJ-Y^;QWT1H_2xWf=igNMWL=i)r>;9MyQ?@qnIy?>H0Onm8lnH^LYQN zHG<6h*rZ-#$)-g&b#mwH@SGa9+WyYavgJLmZsCcT85v=!12d^47bzpl2%1BGR1zk9 za>JgLXxq5g_bK^!UF6%z2n`GY@agrPJq~yX5>w2`6Xd`uGZ%GK-}P73_f(;*^fdzn zzb};ZQ8@vCa4Gkoi+P{fxyq5R(tVaXKz>m7W%R>C@owMkEAOeI2T!C+FS1K7UVTrc zEv8Qc=IZSy3oc4J)KRruJ{XJwqz_yJJ=Cpb{naH>mvc=*Df;{LJp_cPy${~qK0JLD zeY@pm1LO3GN|`OidGYtA-oJo%rE;ea$Z^ss+PyyMu-BAG$_d+UG>jvvbwrnNCd>N0Y#=$-n3ohY ze^&G`XT55h;5meMJcK`L@8F=nCwHzqMyj3D;b_#~9pFejIT5F{ogJ{LJ&AsUX8};`{pAIsILjs*3)6&@3<~m|PvhEm4!Fqa`LL zkZvzCYu55kYj^@~huh+C+eFcO2Z@2iX;3mS9S!N<4?Ls^u>u|%0kD1euM&hM+rqVP zL!?SAbqi4ik9#1O(F9(S7E*Tr)4}jDY>LZ~5x}dL7ffHm1m_=>8dxJMT$8Bf6xVaW^K0Q<7N#eU zoZa8UfCT06c~29mW2D#)%6V-!G-Z}1%OT`GTf22!}{vFldhyuLo5JAL*`M_2&W+^E4r^* zNF{e>@qm@?VmYTl7v8P$Fl%&j66st=!3a&$?Z7!s)np*(kn>H}HL_}1nUx0*Lw2pe zWLKh#AX8X{7JpCsi<2o|*jK!~seR-jjnyT5DT(pmGXKa!`u%uFhn1JaBxFGp;ELtU zfH7u5+1r%3BvG5D&h5h4FlEZ}oEN+p7CL9tf(q)wH==7|b7&Gl@ZCzoqWRWmob52q=uOXIK994h z>LZMT$_oVjM6S{(bq3i9#pb!9e{caH&mb%Ezvtl$Zaym| zdJOZQs9L;v^iR>^V_QZF3}jCQQ(qDSnVFu2hkd^s&1k`amqCY)2uZ-~5oRPk-HPKM zOZaE539g%xdU|oNn8DbA7V_Z10xqdIL$7k32wOb=*{vB$yJ$w zs5$85^G0&b@S6;?_IV9fYs*bTteiK}erKzq0xm8O?;Mm!9n|4sn}2P1pnj{VUJ*>)8J7uK+%`}uf?H4KTOf7b-cc~v2n ziy0DFwYr%36m-NfqUrjXVwo3QI)Xf|C`mM|xO}w{Ia4k79PQLa!KN>^Fro$ycMBq+ z?Wj)ITh`tK^Eeu~W7|gjffW9(qBC8!UYG{zS8zZt&JTW2BI(F6NiRsmA?Qu0oS}l%(?C$iBIyviYEjJrkc(0tCSKrTU*2?_ zWyN?OI^G1MF&)S}`rabZ^QJ&lS**I=Fp7C~zKISlp9u0Fx<^2z{-*- z)jK5aQR(u5XQE?Fh8wRH^-DW8;`)eF%ayuaLKKMA2tDE|E~lVb$PS{p_?6_($r1wS zA(}XjiiC72k*5KV#=QlxjgklPP}5YmWV6F#5I8@n*b@U9R6Cwo_(jDVL_j1qrKklLE)c5AYPq5?whTV~P0MFS6oUJ3I{y1oXLQ2bUHSjX|Sxbgr03 zxB)UOFyug$IlDdBUf}o98!>y}Xgq`)CD172#*HXLB(#fYfT@s$dsQ}9T{k-*b5bf9#?QIl~LagC|gW%bI9tpVWp>^$FeOGBim zLtcP$V(nlTnzA{jm?9W8l0W2LP7EW`Q&dEuE4?RsJtXel?466pcit++I_%cOv@}_R z&=IsTGv$&TD#tR{fLYMRB8<8`G!^c=K!Xo18uAj=Ua$dvyo5Fqq`F4Ii4shZN)ysl zg!2u;tjMPp8}Y6U$Nys&^i~G{9XEGPq3{S@*OBm%SLJiHhpqxG-f|S^n z_cmgc^+`FQ%(y#xgxQMgVlW(@w)PmI-|O(@VjOc^Rh4}`nO#Ye!>rpK?5c5I*fKx! z5OW|JtpcP_YrA6l65Qg%Y(La{*yy7K;}yp6uZ3{7^7;H#9D#`gGPV6-Yg^0Lhz2GE zIp8Xv!g8RHR>5iu9>2Xh@0e;yxc=_-2A;s4$umZS?&!#6IWYnuZvQ3CJdtcOIEk;) zE9h*z2T61v{=rC!gZ)xY+I~K>6Q|({CRuEGV$Z`7BJmf=PY-I$lnu0ar{DEsLZf$C zm@+wVgf4+69(Um)C3h0QrwbH`Tk6n5KNYpoTf#2jOtLlO61p|CM8}*5tyXI(w3aoN zpT$K>&1=K1umkN4C~V& zX~?uNUlC-~R*ln#MM$Kx{-^QqBCILQ8ueb1Yc2|P$#s>Qg)TFs#d5BKnI}-id#AN!A*JG;T&Ww^ zQGOIKF;&h1dYGdbXv9;6ADYyzrhy!=-Nb8H)w)v>VMP-FyFx&MEs_hI5JJ@%Tywq) z4|Eb-0Ot+U0Y0aG8=7{}T$+VJCY1h(ij637XERqZ+7NEed@%_h{0$f5{w2%;nA#lZGguF%f5sh#-e{@yn=Tja>ttbK%&rOYz*)RDZb3YaF177{Pg^!Sxd@=8ACXT`#8#(RY8b7=^a^I+ z+%QgWf`4iAh;`iag4<(lacYSh_lUSfcnhVVc0LYbL-3j{`O8I?&*B%^B3Qn(a6ahGICdMGJ!YGwE=wm;9G@M z51`d+3=vKh04?(et6dcFd_vO!N)9JK)ukUBi$+8l?fXhhrW#cBj&hABsD1zV3MaHGLkhWGqmoo4$#ODanmY0s042J zBu(fP7EWf;giTNcNiY?6O-zlCCttZjHOP2y5B{Q{aioNu!2Rkt>y&l`=O&j8VKg2W z$0*1wJR{s-!^rR6i6mD@%w+7zv{ru*5!Qk@j2L&xg*F@Z^*B${fCeaRU8kl@%*^j# z&Si4s1#*~CXz!?da@Z3S9vD;x2T|Sw-g6iN>ms^S#$;Os%9=tfA&ZKwUKl}YU$&Wy z+xta0K>}z^?dCE7Wd+rj^Yen#1p5&;*!lg(4XVWPp|FFRW}g8+sDYX-WG?(VivIFo z3GSH^1-6nQ5#A{!Zye#@vdVLZ-I^VKL;PMe(4a=xDh?q)p1_TI-(sWL8!g4!54!i(^yWKJ0xCyb9Z;;WYjpp)(d`c=XUKa`a(87VU%;UpKGz<60*ed^Y9<(mZ_Yl~ z`y?rJr)3y#A)uMP@?fRVf=R%+hHu~aIAyoN&kV)V| zKR(xA-CgK(AU~;6U!L&{&iRceEm(q}zgq>bxOaqm|9bm)uw20V<;s;SD(m3EYjD6{ z%!Ftmxpx0a|6~bCe-G{3>T7FuV(5$}r>F2Q8g+POL;p!0Of5nBD&t6xI{g#)eRWJw zNKWAzd>F6$8cN=UQF1InJJ2Xx#j)IAgsZ{4Y*?_0T_EpJ?reLHzQ@~d-CbYCO@@e@ z2C`%<@g#2*B))hAWH(o%E^^dr5BDd79`!3_7~+T~ap~e|uC0nXUud+pxGWGHY?92n zMjt&K`g$0zq;pDQu1JSkq>I}V&!&|~aEvA@ijL&d-cMQ&a2w3 zhSFI0o&Dpviz92+J9OvdmUYq_P{Aj$?8l4cW9KMD|hMx?UEXHQDeySm-5G4TXlTma8JDxCJEy8nQTfZI($*;&f5 za*L{yk|3TC9+Z<(-W_bI$!#y)-M!XY_#FnEa7_|pxznK>U-EOX5IgM$Twaqh7$9F6 z_d)jW-Mk~nR0Pg)Gq|)w1F;f9B7m8|ekT6wl22;yK`l>Bf=@qyTVFt{R47Mz<$9}wKCHJC@)$ObyG+QM)$bl|8Bnd$ zCP8zI`mAN6tv^LNv32C|+cAucOdza}$`RzbpcP4nYf=@7VUE26^!k%|cCWTj0_}St z+Trbc3n?1(DCRvX2U%D{0S*od;1RKv!|+C0IFx-Ig)R=+^O0^a)|5Usfhr-2dxvqA zP(Hx-mVqGLq|sZ6#1WYuk9s`@8Nr%>m5G#63|z%FopU$}V2j}$GFOK0$yYG!01npE za-#tc#{XW(&()eWKm|T2>aovTy;mG80dk94t2HHPjU}R)K^TwM9(Fz zIW;gXAlniHmE9d{Mnw|ywr&c4w-JzF;`)r02@C82Z{dK3o!9kxA%(f#JyeZ)k{@$?)V_^wko+Ltd@R6t<%N@TB;LZ;e50}L6t&ZhpqjqZf? z6I=piUNArTc;fz;V8(U0%p0F8Z8zjzuL#|oG-Z)s{St;SA`Bc#uP|~PHcdUcBV}T% zq@XYoZdze}!cz`PC?b(i{qi3UGj1?V>PqEqc^v`IWuob_jnv)`wdmeaMsReY5c$gI zDd&P<%!t7|J_WagL`0S=K5LY7l=XlS1@03N19Xw{!c+r_99lICNvcRrx$-k1DyF=b zoiaEYl$!H##`z39b~aU!jbH_Xl00d*Q-x^b>9>0lu)vmx246~~wXpn^+?cp!Lf#(= z2}SsN^S-9sOi4x#V1t8JLV4ma<=s(DV?vxs#?Ok$!KhFXR|@~IJvv^@lXGhN7Dwh5 zJAYvbWP$S`W(8c2Zf?=epNT}$sORMMtvD?QFWxa-w4rRIG@~aX%aIhH(>JWP(PT#bx zL6YKf)4jCC4*GMTNp5l_{Q>vx_~XvImb#K!BPBvRq!}TCz+{`vYf>-35$e9S)Tq5or zTLv;HTo7i@bbgTZj?X&*L;#-hMd5XUy$Tmggeor>p&2|YMq7ssz zd<&Yv)0kL6&&5=vBxf!flX0#*>s>Q@9lnPrj+|sWk)emV zS6*wZ8Zkap_AtZ;BJ06q5D-QN2z@B;_Tj8B=UN1z_oRpklt)Hrg`DSGm9yRtP0*br zCPrki(zqh;7^VkBgpmgMC2-}LOkNz(2&+iYI+keR(tt)kSb4WX(9GY`Y$8Wv`6 z+Y^YC8@h@XLQfu(B-;U5xhOREaq?oKd594N;U9`u%=9L@Ey;CA#OWqUELwb19W44H zWUw%|DtLxo%lfgojVon7`IE#7XA)TEmv_SHzxbZ;^?UPk$+i%d-(v(iaZ2|4f=bhz zOx+f*M2u)DIZ$uA#Vi|Z-kb;%V4o^}!<_*KXwZDJgyL#Rd8u(2S>(vnBD!A81{`Ib zMJ#f>$(rT7m5pNJHBuU0W)E@INqT{himVwmiX!nW-m>Fc1$q!g&y+sv*$SPNFT_`H zD^??8DZQ)XEYc&9XWk!UkqC-w7i29`iTtRExs(SGB$H>sT@qDT#zeAd-T6Ti*^NAn zap-+x8Bx#4L~sk&9b$zFQNjtX3t@ZpiW&cvBFaYU;T zSEUv;#zOVvW;_T}kyb4BTfLTR+tyV6-w=NjRkZ!!)wt-`Ct>zsZ-MNNI8KR7;C*qN z_t9SOqJS%n;2;+m|SEUio$*@xPGm~FMVY5H#h@XIQ zEQl3n%f)^CUn4eRz~xwrH8q)XuMI-Lk3h1+wC}eFW`_y}SDJ-4?cVV&-|;|#?MZq7 zg=j#nocly66drA$3FNcTgs|?~AP^{uLXZ(xegHh^A;BN?Bea$x-?65j3Sc~(h|OZK z)WT*ABDGWYPY#Bu&M}6ttAjmLExgkDe1NTMDbYH02P4Fu2Nbc*1ip;E*FC<*(O{2^ z!zZB9NJr^V6QZ9_WYB5#X=u^KL?)-wbrzJc4AFdm2_#Kz&B(sx;Hyfkkn&iO4qIq4 z?~xaAL4_WHq+}=dsg9=?V#ju1c2}~kTQWN@9H7Wm+!>s*^N$RQq~PbgymSJoe7`WJ z5(_P{k0*1Bc=^;^fX zphoY7?h*z+B}AbP0A;1Bnqk(<+DF5VS&kT;mY?WK2C1e!r0esVsY~i2G?8>mh07+a zXD4Hm<3IpgJ;-ZR>F{7>j3hC?%T}eHt)L-TttPwri|g1_L(YB_w4Nm7oCd(~`I9a~ zmIsf)rYUMJxv3M}1@?2xMcxFfR8nA-m{rn6S^wTe95QxxR-;3_ZOr0)3$-l-bMrb7 zmgr(G>`mqoi~`5qlP=w$zzdIS55N~EQ{E?0)excDhosr~W zR#ljXp&lwT%!^)A4g-$bXEW`d>rAAs&v|lnonsWWljIs~KzPo^b)5>-RNf%!Rxo|R zF6P>}yd30|eVi0OG=ZfNtP{BkLzj)4J8*Rc=N{WfMc5grjKnZ04mJTY;mn>;) z2c&WzAL1A9_+@g@XYWBa*61Fb43=Yrel;JhP!7hH7`RKjfHlu9G@u59t=nS?Y6SN6 zrUAu881EFE%-kB;5q@rfAwjPVz6275S`_(oM)bHg!#Xr6$8clOR3)%cceEm zHjW^=DYlBY;Mf9{n9o1x;s^`LX8Xz(8T9W7Uyj|M$I52gkc(}6PjYr}onlDIGr41G@Z zAU$KuO)hx&-3Q)=OvMg1%pSbz#HROIB`m0W3%%UxVrY{6A|u5+fjv5~Zaj@BdQi|>7L@z3Om17chgeBd;q=!zkk z;b%90Zdz}vNhM@bt@6)r{x&LKo7NhH+H;5?aFDVc)vErz_K#jd-KIdemTSemo>puB z*roQ*u-@mJ+AP;Yjv0SsApYT{_Wwf=SLX&{6@T_p`!8Ka#m_cX%ywO?^p`KUzx6p( zYNp&NcZeB`Z-1_RNEqMK)bKpn`3+Y8x%L+bt9cMeEETezTcsa)uKi=I)VN@IW+=_n zk3ZM`i>&ivQ>X2OQmXdT&$WM+)xN8#TDQ9Lte5}xbM0Sd)j!-+HKY9YuRhoQFQyJk zr9w@-V@>>*&$a&#*7>%kCdB8#3jd$awZHj!6n>?taAWQs1Muz7x33aFBQL40PVDGU z##a5io^P+S`pZr2HzkU&`Zu3%cUixY8>x}CF42lX*n7VHm=M0TsRs<7wX)~Wx8G&i z&oq?%;@h9N{IQR1-qccGhkb||i_*r@{uiEa{}Q2my}yrwuC?ULymio@5RJTfb>H}|ee&hM}f6qFf@H(Puw3om2eEa|6%RlHZgJ*&j_`jcT zf7QoP;2XSv@%j|VSAV?yEi4m8Cojdn!k~QH$J>95B|hm;%zMFJ|1%$NzsA>}_ScyK z#tL2kczY-7Nvg}XGP@sd|MM&p=E2YR_Wob|c>AyN{a0B-I(zLOd0rp?0X%LclmB-= z-u_J%e-6*B=)Yx;K9vg}X|2Ei@%Hbq*4O4m48Z@WZzqsT-u~L(z5KDaZ$1C9kG=g( z|Iofo-u?t0j#1kssXftseR1&ze({r+K1SJy;%$3lySUYd!3C$vMf`x5{@U>L95)#r zjf+L3R(|#6SHAn&t1rL$O0fk38UJwQ^{cO3GaXuS_neA&T&acxM#ED^l3clRw|92j zA2A}DYFPMc_YmX)F&88W1;N2tPn6=&aGxDQKZo-zPpJ@HaiA}TyM7GmUfDyh#7Ue^ zZ=>PC_%Y9^JlesOKHTdg_;eo{wLM7#swtQl{xB*Qc??>(XEhd(2Mvvg(Fw;!zVlb2 zjH3-6iaY4BBy5qlyzC7o`#cJ{iGBdTcMXxb!s>!5KbbS2==2=vQHKbt;oqJN>vXaU zSD+&#l$r%!h*cr7IZ6=WwQn2o4v5;VE7G%_!%+(_<{U4&0!9Ly@%m_()Ss zUGcKS^ugo|xg%(q;BeutfuyZy@ojj4@Ckc0AjtqG9$7OB#`~*_$U!y<5bC#I zUoY<6xv~A`>ehO(aj&?$b?1$Z>+9Exh1GlbjkuOKH@08DbAP))iLKS!+iw+jZWODx z-zqjYZeL$2)_>sc*807BSMF>T8|}NdHrDZMQ-_0{?^?) z_tw$;b%4FSar?#=T3K(e-`<87$89_-*5AO7;@<14w{EeiE35a>`z^GyRjl2)`_|UR z&DXb!*YDiAzK(~lt)pkFuiaYLrZA|rTdN!GrQ-T(d-W!Jw^iH$l&vc)roAiPe0`md z*xoAst!;1Ixy@m$-MPKJg`Ws%zq7R+s=m2#Z+)p)-P*W^u3ovZbqC;yPShaIZnNI) zb%jDy3xdLopa>CmAA=5kxxT)73$QRfx3j{nD{=-C*W^y;V1mm?dYujf%`p9-CeV&7 zRk+mpGYXmgq5m8V4-cs=wYMW&xQG1E{_A|?Uqb}a6?KD#o&>rrZD!kpov1wt?@9Jv z0C^ocYp<`bfqrfRF(+8KYam_T?ZPY%=C-j^giM3Teg_|>9t3}&7Es^lp2ZRLhezY_ z=@o6M<&D6b1S!j;cP%DEdk2bkf46GC2?~C_-1z+w7>Z^K_c{*Z^prNA0O9m>13#Av z80fgZAY|}&EbNI4JIMKlDE;80l>qP}TPU#>3bcFUE`7WV6kPy@2XK5-+^#=4g#)rI z>DTm)m9snmUe3B@w>BtZJ1~wSGKFU+O&ZX#1a1ZbZtZX5wsUKUKm5hX8fDiV7MaS|?}{u&+<_~oxCpCNZ$=-4_?I@Vy!4SNUjqe9q!T1{@U!bg2X zWa+*AwmtSzn51$4hjm-DlJ_?6gIC6Otmsg;2rG0)e%UK9??a{%Arr@D;BfeK!yd+x zaio!!I6XdOD6jV(!TM`ZWNi2JnatzKKD<+s2U7YjXl$wISltr6j1jgmKm!hP+kRW0 zl-dG@w}trZ-K5`or{8<*HQ&H@e?tqk^-*W@KAtRz&w>}>%JwqtjeEjXb)mmA#IA`X z2Q)f*i8uHxBaFwrU3K13Qh!r_8uZ8geVk*w@|*Gtyyif%(FCrgIxFKYyL(<-uxcv= zyg_qxgx~j0hL5ov9&zFL*KJ%L+U2j|Eq=?#ry@a}2WUu9V<@jEHCIwC* zh4|aM_@2CKMBm-BA@7$PT)EPrPcF8Um11#0k-D%XGVIw9&x|+Y6__{#hg~Gq++T6t zuJ?8Y{{BE1zyJ5}A;4VeU;_di+lCmGd<#1gk_dUWU=|YfDh?vJUrnyF8!hsJyJZNb zvX`}1Ew|D-!WB?|cv^}Z=M{KjZP!Gfm~5tv(z+a-ycd`&1T0B*uyYn;yZ-Gxbz=Zc z$WuZq>oBzhM}z1uxC#JQaJJ$e2!AVe-1{sfMOJMAPlMjcqWrLoI%03aOZH5jNBI27 zXpiJ_Il0~s;jJBHFzt(`Q|^f7^};vBH}l0f2p%)Fy4#vqT>cU^4u;o6LQ@To%PV6nhJ`zIOnv~E|g~hCN6=?4B5y_wQG&#j|A&(LNy8!v87dUq+>nH{lHqn(lcSLlA z$_{a$^>k367EDTVNpwO}YlERh{`3k)6ODBilMGY>d=JHN&tkBS=mh8@pqp*xMzW{u zK9RA+;$gq##CF|W)?~`WZW5eKplXyOo9k@UMTEySt5jfrxHrV!sqs>)cQ?!svRXhc zf}a~tj+Q2imTaEM%rDx`eQsjWQMhHP=I4pFxWSB&S{_*5E z>6BOJ`4hQvaeTKExQrE(gyXVq7J9LKAZWpm8R7(gJ3Ftu{PN2%y+hu`DU_o8NxVt~ zhipoiC<&~UKn9r6Y{Wh8P%biZV?9>^Kj1jLU0uMjkqSIH5NmyT>BhnlZiV0|LqDZi zT^7NE!%^pKv9e8+5IVa&n{+#`Kt(chBo~G*0q1o+Xhrw8>xtQS$8KSvx&tA9{XN{^ zgF{F*rno%F0)<1?#~kH zr$e=eR56_*@QAyCGzJ^!lk=K}=yMdoLY8=PUfkchl~m##w?{QKyRnP?J!s{Q5;&{W zSE+i1zBXskvrPI?@I1hyU4M@m6cOlU^0+n&^~u>ja^lrAnlG&l98e&DU;*)@2ckq< zJ3CklLW|EMut;Z!pehsxxNiokrPbDZoMm zqD&EatCJe=ZBZy(|2TBT>Kr5<qrDMy7tC`EEI+DE7`feG9O5NBkp(5|dnKoiiW$-n= zl2dI&qcAkh&BJ8yxcCARPsjp~U;$b2gZ}PWmpMfU0lDMV*>j$ON(~1398bVP@b`3x zx!~l8qa*ldm;+qAz|dG=1WHdRB}HK5Cw_gr^iX+na!4tem7Zmb|bX^yc90C&>c z1Zf;>H<9lU{r-JYpcwnAGrr);)QXGB}PJg}LNp{9J@gUPT95=mTVmC(sA^aS8Ep zENgO$F$`06)wP)Fz0!7Z8ghl%`)XQMBamWLWm3}xSszh*l5}Ft7K*PC6Y^9<=NeI% zyiC!B0E`|S1nbB}5M>u(1w;wN9cf=_{SkS4)B`c^;(GMXSnmvvWPLCgc1x@^7qo_}!IdcD&(Tewzfuz}7*u0@kL$L}Hi724s7cS0Qvdc9LpL;di)86X9t z#*#_=kV6Zco|-Wh|K1E(SB zI(IGb4dxHA<53c-xE%ybP)z_$a>cMb#cheQ%bvkT5D9v!Oh4S7+Za8e2k^&H0NKXc zh}_!6RjwG@me9i}Ul}(Qp{50MmPtB(=2M=jXHyrR{1jI`k_Iwn9|YT?F#%Q}6(v28 zHB9=MdJYX9n%FZ7_o0kA2Y{+4JE8NYI1c1IOzPvDZdhsOrnPl|00UD)-O?d-!ft4VGGr zhgzzsvi*-}}Aad;f6v59ulm>bsd$Apt~< z2%|=lK9%9}OP)J|-Eefu3TmVQjG~q8i5UI}e(AED7UP7P12ItaT;>}buo4dfaaw#wsuC^V6>-Q7cqeRoncK3KQY z_9`oy8zmWxML&j)6lP|JNe?u`gX&v|{0S3?KcMunMQ>l|UYWM`IApNnYFF|RlA~Ilp7wK?hinxBVyTJj zOLQ7s5Mw;DKaK6lzmw+zEAX@k{=LqkN*4}N{@2o!5h+b+XO}13eeLzd<+jpDsgGQF z?$*hOLl`KXiNYGe3`0+F=)~!Z7ZBm?+GsB&6_Q9owN0>&99e8B{tJ!*scdTU`p(t% zIe1XLn@T8Hy*AqV#AEh0rNs7);zlst&UBPv`4 z(JRdV6?c$r{N~a&fy0y<@ka6%{Jr!U1g&35+W9xqxqjns`M0p%_-8wqf*u7;DP0P8 z)R2nMh&E|LDWb2GtE%RqQFq)}+KJ%5-UpbZo+Gq$FNtAcoBZ%H-#*1wyko4L-kL*b5Nq#8 z1nc#JOVCC74BLroU({RW10W!k7MieXkw2+*p4^hLLipT8NJc^|DfsElLQsYs6?F$h zKt;m1L|;Vyto1wyLE8fRu7;Q3qh!pf%Y4JY7VqD3h!Tl}>%r2u3ytr{*Kq?rxKm{ZVnS=&nBgZ6UV0w z)RLaEw(6#wX`Ts;uZFZF9=qv~U1t!00E`OL;i_+jwXm$zZAJtVQPoSWl&)UcyDacB zUp)`6bw}+cc|48l9&wD}S3sO>7mtL}Dw`Q!fd#Oj@;eWD1u8MZJ;Vyd@LYoPpE>(Q zWU2t?w8KK;s=#6PQrs9W%Qf!x`gbvJKrImhPZzD^evvY{W}uotdBpmgbl5p5qjebi z(>T#G?nSM__R58xqdsBnZF#wdw5M8Aq=8(NpdnbT<*MsE^LP-jG>1xXM^ zH58~KQ=F-pEo0bPllTdQi^MY)CFbnsTbur#H$RLkwAu@W!4lTH*WKSWA0T6K!6=Cz{ zCS*c9K?2$!jU>brID!U!U{_=;@s&cV8GfBhGYW8to{;Fo3>+3}i8>TdN>ojjU}J$5 z3naj>pIw5uV>h+jY_!)qFzn#@)}EK96QmJG(fP8p~t8>H!( zmB~%XzMXEo8)1B}>`l>J0=~*2@%@o1Iift)k=gD{BI3tE6Lt$4`C=ctw)s{0C3%Wl zH>9iKOAnlqo1UmZbJ4;=Eh_GV*f_=aJT(cqLS96txFc(8e1`Ar%C8X`_09oTc#3qR zrAWZ5q5+c>F7;_T-`nsP@j#V^1G@{~BUq$#O zCIH-kh|Z>)xib~UO?;2+&mT;y-7Tl0CQCsZ1~{4|*p20>ZbXH*;C}&x<}?IE_}5yN z!H)>HK;c5HFDyX0S#^RkPohZ$f6MXZ^VzyU{xLy&R2NTaaziA1MTyO>kzf6A-l9&qL=($4!49zJ702 zg<94-bVQ@<1m{^(9tq&gS_#_t?@{EeGHz(mq;Ilx&-{;}!qZ8g#Sq_ue zV-wMv@zmb#F5iDEp8u35LylQzq^}uWG5jjI1MPz1z<5Pq42!Rv6y60mAFvxU9Mf2x zGN8C$b~r*<$F3JVjDz{I6nmwsRPQ03Z1f#uWer7aljmc?KJc8%Hj<@6s#}k5W3f$G z_%S8}AbJ;>s^DCrZt^W4#5XOqA>&bD7;Gmc`#DPtFHjDd3>Gd$+&>5j>@nrT?cUWr zP-sJUQiI@Kth{^*N;WB2%7uwLTA-`%BPvOv6&m0laUuv(Q%aOfQ_z-BP6SaASFh*_ z60aru_)m^2KXV+;%naVJo{lP$okMOPW)JAEnf6$Neu2UC>C>xtZen|puc4mSq8+D_ zq8+DIk~qD&y|#Ax%$L6SrLYGM(lMmQ@V$!FI~Ek9RU?y1qKx*E#AMX12vuQ0HFP4v z6RBu|34+8IjRJ9eF;%Z4r_78Y_n>)5XY>?;UeGtg;^<@(R8SUDBrF(wH7j5wEYqXJ z9uh$EhoCTyZQlaT;`%g8qNh2e)$8?`o-FuJ0Ze}E0u(7N=X6jcbSu=AsrA#C=hnOlsAR4gBl*~d&a(J=cL+rjfp`PvLJHYI@8mZ!QYYF9qBW*;t14JE0gu_ z@|qB?D1Q&q>R#UBb?+I@E1i7h%@x;rt1hUdq%y;I<5@+~JcK)gXx_Ap!*IgvJI zgd|apYfeMn$K5wJeokmx$vM*`6MCg?w{Zwcr(SA4Z?t=iUP{VQ5&))k-kHKu<}}jE#M`aj-43G1U^=T| z5jBK)rN=redME4tt86XwV^&4nz>v8yF-q2?)G^*B8bpq2K$c^gJIF*%j*sLo$eSQ* zECNy5`f|P2m)QJS3k6Ht_-HnU5n_y?CuK6BLCbAhLX0wvsqz?Y*NOav_@X(@ss98LVxxwIo z4T%T^`7>+*`I7SLPj5-W4VI%Fm4j}pHDALCBn^TB-`VG%rvr^Uuj3&ru7@ZLlp;%@ z%H4h}exvcN)qD^%gpvVSchd_UaBfu@!LTKP3eG_W7+|b(Qk3A91U~T4TM$uf zh>TUtI>Y~~TyWOP7y-lwrnbloL4c6R;@YRX%aY?c*#DV`*-ip(A{b&SU6U*^P)i8n zGOa!!8P`*A5=(xr`5v1ps^C1sqlY*rW88==7V0A>NRqTfu*PKup1v*FdO+W4MXcVA5!&1ri@;o=t~y31N94qki^GpRI#xN<0(Wd5Qe`tEAm{DV?|QpyMo{^Jh_k^lw&W& zzizm{7mh``q=6UBpALB8AT%25wA=w)qNo!h^4TK(LxN`BC?ZseKqz5q4M3(2-Zon|FHxHN!6&gfnpxa(nNG^nd5`z>_nfF zSn4X2wZz6)iA6qjnvxv%g+G}v;f3918r7O^i75e5YS`>H>aQV~KA>4fGdTpI?_>t~ zy)fwlmj}lCzhkqQJ)$-zB2~B6q7br<~!4YRfJr)zL6pE*?-4i-6-e*_bktuGe$rS!yZ1txVenv zmYD`i1y$+ZhdhSx7?>IH|431R5F}|1cwt$EMXCn10JFRLKWjfr?|2RQWPpD(OY?>{ zbY*OqPvmZg=fUqHsx=^b`~e2H%?>VgyZKP?5{oarSQ4lm+VM^_Tl*nSj-b_1t$^r*8|R!6u305^Z)Oajdi8h%{&z17fbFYH zfPW2)paSzTNUSb*iCvldBsYK2trgt3rmC8;Ym)8sJE^MLUiXt zTTrf07$K}Qob4KXz_SJuq?9Gn(h~?i1i^+o9rOk1yB#ekTsD7dD713a>rXX$rpN!q z=g+)Y-;mSjF~5!gP58MGw><|*7{=%uxPACUIsMa?>egL8p1GbWI|vu`7S%h6i9Bc{*-t5)Mf!1Zooud&h(RndaFQMpnqk zRoc%bA+;$DX-WqXWNOF{DH|eZO4wEfiNf9THZEQ(A3G(5o?Lnkg1KlArX5hD;1F)? zteHft*_69CAb0$SZPRu_aTEwk|1eB@e9LCINqNo)^zf4upc7wZ6$>2pj)`uFZWgHmq0Mb6@gl(=>>tHy<#T zYRqUx5Xfv}k%g6b>(WCCI)^c=ZIz*M7qLVkDNk*Zv|R>Fm;{V6q~gO6duQ%&m^05E z3nJEg?BcMTg~q2uvGHIH7hTO52h;Jgl=t#o73x}u6c8Ycgy0(=NkK^?Ip;SRH-bC& z0z@phIJl8p21(<9t-|EcBK#0%>lmrF}4-IwE;<34jxW8jxNJBvNYq?Gjf{q4=< zy+5CN*eu2!^I_QuN~DBwOSM3WmW8z#MP*s!D_c~h7I8MEbKlSfzD~>YFJnh!n6Pi| zupj~9eKS}iE&PTTvXGk@df9-lEGYSPW26`1!1dxZN;^8}GYP=a5IIJHL3{`Q7J?GX zYujC9;uQ_Bb3{&!gR40mq6Y=Q1gc>A?cDDy;oWGnox^dYvOpqor94(F`xeD3CnZc; zAsX3AMg-~8As#I@rT=W+oVzr474M@+Gel^YOk2D6p1*Jducy>>H)=zi=+>P3w=Ky3 zWa9>X1nbK1N;-9Z`A5zUqDR5ba>eq>dWrRfsnws0fG)NkN|F#fcDKQD1pXv*R;ZYK zlemQ_d#pqhb3AJEJ>gg z+FlP)JlqxB3T$LPxcET+l!XW#f5zi2iLLd9Rz8EWEl=9;oCXuUNIqi4s;x*~yJ5CW zjS1W9O1XjrHp*@OHh_lym#nyu-b>Zq6NjgfjRB;5u_lVWf?Wckr{1HjsoSivlmI{Z z&v=+-YiN@V)Mte6k6x^McX+>o#la+l;MaDSMNjw~SpyH&OJx*H2a%5@GIwwpXOnU` zgH5!5`FM<>ZYU+Uh3qK3x=83j3>7g!1mj9lRaT9bEIAtK?fxW_1*|GY4o{`h?>hM_ z28}{aP`qktgk;w0s8ZS*Sb>eGIDo~@0~qgSQ7)7MkS_{=aFd(=I=#*1^@eC9wP2fo zzDk*IsqgK8Bo$Uu25-1lDYxYS$vX1oVB_lp0UH7IbN1d0kOP#UMb1~*H?p-9nD zqsoAyr2}`Qs^go$A9UbmfENr)sD;$SA4v*G?AJ1A{@hcE8y-u{+c)VfO$G-r3{JR1 zC54aRh1FbFujolw=#GQDJ(A*lDD{Svwpjk0fQ?*&K-t{twOCOL?_c0tab5(nt!|_h zPpdKfYFi_6MY5lo^xe_&i72{=+K*~eOH2PYJrtr!(YVeK4HD^@I6?K|Kx{_A+H5HO zf|S8-&A^k8ayhcBF)W7^1W`qqO$uwoyZp7&RGOiZB>$#??WVx{UIdufH)7XsH8jrN z+esCrtbG$^X6RzZ0<>wF`1P+cav*)3Z5LwKMorknI7bfkPz200;Ou+{WRB#_7!@;w z_6>}&heo{1l;Aa93S-cnBA`ljw!Y!?CV{GWpv=oVN6MSc-`N_{iHRO5pN>n*rX}A)z+jU9c zr?U6qxbMF8p()YGpOwk-ibE~e5_BT`zN_3X1bltEUmxjJWmRO$a3n;Ep}vVfL{c|q zWeo#qfSHqLh^!K&fn8`t9|hn7$DtLQQb`0s=AAW&F@w{PjBsa~EK^+(BgvBWFuCP6 z1Io%p75JJHgId^tnj#R6)ktMwvj)PtMuiznv^Gtg9R+XsT`%)1SCzMYWN)K_v;qg$ zo%FG0BV}0m{bfUWUjvIj**GmUjF7A3vBYd=ENYDy<fTE(7ix(2>?>7SIwB!g9Dt z0kE>r=2MoJ7&_EVpUjs|MM=9nQy2%@u>@U(KX71J{Sq8_)G*{71Y*+VS)+5X$!;L)@vEQ)8o2Qbotc;>e#vE4FbLaz(6UWHc8$<9_75g-Eve2Y zS^_%9qu-(Lz&Oz`o*tfQI0q2p2O3Rg*o`oQHgRhM*Xiv*r|re1W{Qu6lku1;V$#2` zb&jQlw{nS?M@zR5>^MQvLaEr7M*Rf@jl+D?eI><6XWwuOYOUY!LaQg$$r^D-Z3Ln9 znk^K&A&wH5Da*V=l4Z(=q~5SRm^{A)LKdZ1V`2Q29R$0Bw=qJIrn|6Y>|}e1uRX|& zHbSzaA0nCw)MAKCluswku;-3O9E^R~b18diLrzsTeN(R?FE&LVcZ?^aR0KztAAJO0 ztM+Bbo7$BTM5=D4*PE@D!)8}pq!|Oi_g|dsB|hM1AmaxkiOG8Gm6#ZO;(&mrm|>An zQ&~lu79A}R<315vTr2@lD+HKj9h!uFk$U)}I}>uGp*LK2c?MCIf}t6%uEh6n zF(yw7*RwxpYw@As(M(W=!(EC0vXXI$mi24g zkq8N+iAQ>uX(r=)p!+f8_{Sm#1u~F@)oj16W^cQ0NUkX4a*fG=)k}=pSv|_BBaX&6 z`~H4IcqmQB<<;O_*0eup=keiiRisNf)OxI6U?tX(Xh%sRX;b2kA9_lcmDON;X&X+) zbz9W_VP0`u5!$SVYd!MiFj~dgk$a$Zdto4!=j}(HfnBa9e1^BSTKY3F2;e5zSVrW7 zPlrG>kd+5_G}VA&px9fXWYYWrIxW)2njv*|y}P}R2O|V>Bn6?;e-`eui;1BsC8bEK z*-aKyL)n)_N%(fAB)ZY)po*9&01sjl+Vw7pV{17Ch>Zl~ zq4n%=zi{O>yCSpf-V81qbW=!TfV{+NZf(3HeOoBU1d`kuISVt2wSs;sIs9rJ zL!B~s@OPq>pkhG~eb%CXX{L?%*s{G9fvIk1b&Eup&UZAITS@0uVPDvf zXz`KE3#s0o6L?hOBcaQMULtSpD=#2=NV{9$<6<5WJzLfJK+d+rXpC^o3MmOSYm*4s zn0sui47G^ zItlJ9mr0JfcOWx9E_)7e&>EGz3uv;DnIdBk%afjN$ipagt%TPhG9_{aoXL6|@qnh) zBLrHCI=Cc|W+6GqS!o5~YvBnP?6U}FM1tJ6c9bvx9_>Y7GJXlR@VEp_DlHJilD81& z2_6eYNyFHW2a^?-)>clz5W;8WlS1hTFUzC|6q{Qx3?UT(MmV)DFy4sKI{+6$pgJ0Z zXQvlD2+}tZ&!Z+K)xsVEns95|;7!CMNqQ6np)JP3Ndv}>wOQkUoFsJD+6X?^e3B&$ zM<;MWw*l7ZZ$#S+a1r3?6M*eS;LtP-iR3}Brxh};WchP82-%qKq#j&8vZ^JeLcl*1 zmgs(!w<;NoF4$G~9#WFRY@Q_`X)`(`5NYX#&Bk?vFajJQ<$U3IB4~PHxwj-a1{&}D zWy#*b>uBxG?kNFs@Uo&Iy1Dhwf&eU~8TE=D zXv!!!9p$&jwYps84R^TJ%gF^Jj%-3HH+E6X!GpsY;_9tEB#HbSa(a}8^<#FDY_M`V zu^vCg*`VHwUPI;?beS@zF2n@e#{5*q$@=es64RxRj76y9b=jnn!2}k9kQOiek?}h6 zK3vNnx3sR$h5KzryO$M|Q>UVI`vype3`{RJk?Z6pswTy}V(Oz1U2L2$Ip8Zc%5 zE!ohyt5}46M4beQOlrbB)ZZHLm`)x4!PP!a!tt7p?Cc8aOdLZUR~bZX$sZL*Tn(gu zZ|e9>WIG}3Xs!3@<0f2b+xY(!Q{>=Itq*~MZIy90)_oDI_i$VWJ}#UXAIznO5B6)s zdz`J&SRbrHYB5-)SQZ}Yv|2C64OPcc)1ACzM*cqrd!*yktaj!2Yg}sMUChyBLAqZ5 zy=>k2{-ZMQ`l87AB&L}1MaF4>NLf2RYFthWdTjI|Kt4kHP%p4@hab86?)+=FidSzo zZe4F6W9RC7a?FUClc?jp)!Chf9Ft=4EZ2ogx6cSl&LBv}&xr1tkQ75ueYmC=houtw z@hX(Z>nW`^^TA>8krmM46zT0+NNfRF+Jz%^h{hmNOQNXbcv1d#ko>gHfKyi5AuYOrSdb@brA@5#`)6-HiM0Jg*eBY8TOJD_PONe&4ZpPXKDZq>;$Xvub9 zYs4Y9HxH`#FcQhr(YY2KcgFh1&F{Pe$b@6#A=!Ib-cW@Wf`;jf3H7`Ow>$4dxgn;( zNNjx$WjaXdjS4|fJ|<=g9U{=-PhOckK5IejoQRuj_;6whTvJgWXfr6$E25Q?i_U{I2tK|N9`6Cj#oW!Cb5}2k+E~%8DaURg+&Wb5hRO_e9VPc@>7**9 zIpa-TW$L#WPmorqR0@d+(O(X~zFd{7gRqb389^1LMO~H)w6#Jxo8-bLMp57?HK3xY znkyt?W?_MIh1!%0>GB>V3!B)~G0WO1txE_Zj2YpUb{g0AIx}smiQPIRSA`+*W}Q#^xp z0!`B=m-1%oJ5{+#+lPtS!6dYdlmWlY5D(3;mT{7k4KCXykJvLcRSH?)#hY}y#p*|L z0fVzcqVLYKaYTXH2KmQS^5fe%lO=&m^LXM;PDz^Badtf(l_QO#FYlV?R&c#Gr85dC zu%e{|{A_^7Y%JBz&Nw&ABD&&6xDdG?2yjrIPViv$K}zpMggr_MI3`b&;Cmab zHc(axwqB@R%2D|!QZ^Xp3|t`p#FfRrB*9pgKst(Gi>D;9xSv`UtT5M!Sp%%>vz*HuO?MRe?97GaZ|1ET8Spn28~gH{|nhSmCJB zi8s9Nf{~S?9T#4_&tXPD#9k;-BIQ%$jt|zK+vjlIyv4$Q_)nY;c$`h{dvo^cvp%3f z+*GW08wi9XfdH8MA{DHKHR(xmQh{N$J%AaBhfwUL_>B)2(DoVcU;I|FamYBRVUMDt zFiEfA&2c)1H`m%Y)hMC4+6;x=%&6P+D`FwC=#-*a#+4=l15FIrUiAT17ctBQHrPl7 zk+JO`fyD-FaQjjqYGA-6QxXE=sftul8F68Od;fvm{jMe(HO9-8E6xN1yMISmQuG}V z+|?B|6!oBR7*SuZVZ?`QlV&s756)HsrT)&(!HP1%?qF@*>y@=*cVm%+aVYG~0i}Ev zEzCBn20W2upmXw|O5w2)=ySO$87Sh{BG=qG`46rZ4sD?!ll{m0S<_}K? zpcGICxg#8nKN%w>s|mut@GZEjz%Z1R;Fria*cWeuaafdnqdx6^)$Y_IB4zBe`*KSwqL;75sMTv$mYBclNz{E`8pI1qgx$Q@Y&n?LRhM@kHU ztDOS#h5G8u7Z@Jz&C8%D$5m`KAT3pvDHW5cmcVv)WLn$vqdw z*qK6(qoaH`_Z2O6a7Q$1og&FZWUDsTcx)VwY4PSGu?d&%^g`g)3l#K4L{F{GL!y7g z?L^zMTtujJ5guVNc`~WEL+Z3w!QknJp&tp;kqsRO zHRi*w%6B4e={Z1t3cQMNU*L(6fIwkL;a|^1mC8$9OjCsH%v#-*y1)k_5n40rSXh0C zx>gAX#-^3yBF+hX>OTu{BMxmsjpM0S5%%DFb>q~q;w@YRS(Ns$$onxzD~hP)di zRad2T(g`P4dIW?zUaD~16pWPuQe#~marSC&aw^?F{MKas>;+5WglQ6`@WNzV!!#*y zdZDSqLnvqA3*oR-Boj=IW+Td?=kx`iS#vSxCPBc#8)RX@QC4SLV+$?oBbigl{QJXK zRz+y>!q3f1_~+DQ$Ok~KC(b9);y;;ttb8aG-7^*{;VA6FN`bHqI{-7BF}d(@O+ln$ z=%va)V+&?3$&A<>S}p1}hPa?} zy1S7U{^eg`vouIidkZ5^1-S9lHpE$Hw-}b%Dfe7$pot^M#<6{a>qr)?7(3RuwB3ao zGT7Q)S&2fZ265{8#<&C45IwV%KKKVnQGYjH5*pe8wvR`)R@T~gI}EczBf=Y7N%h20 zjYJ9-fahS&U_^YpqH$T=h_x#=V!Zn--|+MHj0;8>MrVWJe0&;s2_fN>*kI|ftxhd; zLxjs)3<<$VUBqe8L?YE4<%D{SxwBURwuzT;kU9l{)|jsTwTmrZh^yx|l^QIg57ol_ z&s07TQ3NATxU6Kr)cY|6aFL2lf&|Gx&-66+X5%7hU2+K4An-!;rTn1Ph#i1c(#in0 zgqE^Txb%4UtW=D`AEq>#?b`wgN?zYD=DGC;P*6%(&Igadjj&wY^o zvQwJ>Z)yCvB(EY&@FX6VyoWJMPnZayh%xM*XzJ@ATdA6dcN?Miuppkq%;lh*&)icu z1awLfM*jFQsHy1?PDWC`fp5mp-`(_IN=S%Rh3QjW*nnJ}4Ych%^+1 z3Kj;`2!<6xmKX423}BzpqwE;e9?EVDjK5!y6R~Po_DZt- z_b&2fWoYu*E}^=T@<*E$=3%Qp6V@_Dtk^B`pi112sw&yNY<|e>&Js>DbLOSz6Lo@= z&mXnO2?Cm8^NGU4MLhfnlNX@}Phxa5mHP@1(wEn9CMFI6pot5QgO+aOV@{SlCg3MA zzV;F~Ff*UdA`CvrerllT$r~5##JNrtR~Hy;Z8DNyeWq?IX5{}*8bg{?5!v z3QrMsoFPqEfx)4-_D-keJ@M?^GV~`WXkk=--bA>U_W_vZGNcD&0M@0NcY@^z^5~~Z z{MF)A)q?~xWs(qA4M@qt~ zetMMBs>VE#IAn(&TwskG>?f3>YM@F|XSiFDz@+6)gj1Fa(Ir$7{qNNWO~aen^aCxe zZR3OpDdAtZ^Q^|5hKZY&2>@_hSMao`Sj95f@@|5p z&1=>=n_)##QWHghD2cWX*ugt)=?MKm>EqSpQ|b@>GHk~Pi>!>pI1CVq&SDpUZR8tC zj|fVCQH{>E1hK~mB|IQEl)ga*;xhP?-q$18n{=L%{|Bdm$1Y(n$?uU>8sob}DPn4O zuBXCJ2Hs?!GC4>kW%fGXwBQLjZ@!w%m*4&jSY&n07*9_5cwyC2CY&%yYw&no+w z)Pi^^LwS|qdP~ZLadgzd1%++{W(k+OsK{`$CDcLH5?#ABNQinoDML}=Kv9+m=;MBq zQLu@})(D0pMJd)Qs6+IJMS=cB;DG0@%Es*&v2<@Mhy?2b|yH zLDhG43z?uz=JVyCQoI(Q;4(ZFT`(4S0maY^PUDZ%M96hRN3L70dX9>G5|?9Wt(L8f z=Szq?!8_4bWhN{b95A~-%tQgf8!*C5MIzVytpPVoc1jIL$y+i6PWYSH-I)xNKt2v1 z8YN5d@G5#>F|M$VajfoYl5cS58{qj+rSt;P5*^J(q2&=8*RNipEc-*(FU1{ASre>` zI)+*pEzmNaP@;hiT8nW1eE!8C(6xjvTPUZlA6jHZQ*0SoRW-ISABpC{xYd9}NGcF%3mfBXCq5AEl9N=gi~W3tRzTB%?>?j_VwvML#{Y{D;_+ zbeCXG(nE{4RHF*8U%I5iVe-#tWl~p|X^3hksM98E8jqt+W-Cq4jc?~znls5Mb~dAb zO2m6vuME@~wAx!ZM$~!}X^-I6--o`Cc(f}LKJUA#^NSRrpbj8eE^qU7IT?h~CJq6d zDLuq-G9jPjAV){Om%vJ7e%lK~AGN}mnku5#Jth7?V+33x0wF%?yh+Q zs}G}%Eu|}rxi-Sf*(T3ypBc{@N8lcQ72EJkNYQ;pArijp!Fk(jlzV(5_jLU_)HO!X zFrc;p*AJ4jn?m)=6u3;hXGh%9);tWXJILD&gU5S|e@+<4O!9k8qj-F@Vf=UASg-dI zSz+E8C;ZqvF2FXV~qlSDU@4iZ*+RwNTiDqJkgk^GVZS;nRE*5{1yTQ1I;L<{bVol7wxM;OS(i`to@);t(<$ zd;blDs_-)QOk>c)2%}+X50gV<21H5GLabBddSe&>5(MF91M zIhYiS1+48Pjkpm`EVr|^Z$aD<^PUhB{?ACmkSH6Q23zXAKO`yvAo-UViz$f4xfHyNGq@iwdD zZBa(DfHYb!c4DL%gT{d;DU1d<5XVTZd%2gel%YHqY+*>;AJqDwyqk#PkqmSCl3P>t zI|Tkwjn{u5e++twbL$8>w-ct-K^G}&?rfkvi0giEKP-F8uDT>vYb0c=(O%eb&vL%` z6^<^ONThKyI;fPHDud%lK=qo)EEA2w`vBN6TuPy`Vd)vLUGn(oVyQHpii5Y}S0mg18N=~tCfUx;XwDOqs1{SjG=INn@X&AY zbg?N|j8|mpyPhu~E|r*k{PH0irJWeujdKQDdZ}o?A<|#@#)+B|uNFC6DiRu0aam(r z_~h2sFEjNAF1UiMgI<3J;o)~$TYSF>g`o6JJv<<5JzLhutp98V%YPUGl7ls%ktJ8f z$&&h%glOre@rC;ud4zMU$y;?h`z~jCPb||037P1--R1Y1lTAp<2!3g;w>Jf>2oA?g zq*OrXOM^5sbxya3nSaeyCWOER3|ru`kwwPxvo^D)<5t4DtbdZF6?@p?8dqS>-7->Qb=8*LF!Z@|2?QE zGrmG%h#C^jP%jcWi}b$x&mwK)J+nybH)a3L2-k@24Mne7HbqDhzBBy9$_ACKH~x5w z+B5wbnv#kG7plB?bJO0}`Kq1~`{&+?&^qo;gjMk(3j^4VMoZ#FX&H$jQe(Uvtf~|- zu!TR2R6af_`)m(#+k4-Xl*hc5tt$j>eTyg+$d}fTjMm~^>|g!jplpA8(yrj4%-U!c z!;B%%S4OF&TzLAbPbWo_4O1&_-_)gC$E!+tjiYkB3Mff3zhIC@Hbna!n5JmtLNJ~##<;!ZHV^p<`fv5K%cpLR1na7^~&}2#^cj?x01+Y;;F&BeI6iD1iX@^*i4$~R5qwW32xL{ zUU&FRA(0ia3J|}()9u_d0_U&Ojo0!2l44@Dx?JSULxqI;bCn9nykTWZ(uAu(6x-b< z$JQ_aD3b&51D0_kUyy9LWc!8m&6F5V0MM#WR-vF2-vc4QRPE@^?L(J?>6Fo%>zg*8XLl4U>nt=w7lJ?w&c@oZ-TI4%YBDiBZWg4#3fJpW#a)HgwosF>{%zN znZ!=mBzZ6ifEuuTCSRkX2N#F@jy;~#7?>Y9QTOjNv-pWeITpBU< z11~>VeerDFw0cwM!1`hOk5p`VBCM{sxz=6kZs8690^Wh`dl?Do`b;MdX_^8~z7_@t z?;&8x%fJNXq#X2;JwYuZ0XRBPBmRUE!v3bcTq zBl`llW%ro7$~pNnnS@Wojmg_3Mw{~GfLgzZXHq80MWTSdQm$xfvcgwLt)2ds76K&O zjaZP5$s3F}Y3T=sZxh&DQk}&@^dr$9hY+F#zhw>-?^K><%T@L2D%&>A0Jp{&Mp!#eCQ&E1kqEp_$pzJr19?Lu?oN#H{l8iRIs-H+U#L26_!eEGDH zyYRUg{x^6s!eVahk|6Q$CqyX$MG1F3)pciNv%Ry{Yty`ZyWd2y!Q#>;r+L*|9xrVq{4 zU4k5wN@HSQ$n~ul`#`{^MQOSnRP48gHTGISp{10>`l>j?a1^M(#gVNr&RA`&$P!#N zaq6rXm-s-&SPrVMG6B6MWq?A;iWDkW$V5K45b+0bueK-`v%M*$x{}qL9Z`}?Xx!r# zk`0FPl5W*50>bAb>5j*&b&CUpxtYWe8ICz=;tFe?iA*ODL&QtLBPY)O%@SbCNQy>} zU{2yN{7L9$2mnq+4+DXy+6+tLtqxff4%YlEIzO@k9EUceiD>x>Qz>cdMcQm+jZ=Awn7ve7ar5|M{!d|wT-eMSE8F&=UeR0UxxM9d&jGsg~fB|q~ci)qMWN4`TzWb zoLPXQK_mnRv&$ccO`jd>ne1P2XtQKhO;T#cLK0YXoFXYFn&@CqbVk8s9aLk3lE_R_ zHLar%I&@$)KIO+x2FC7dWeB*WHgKo^n3c2)NUGBdJ|DiOUK$g+S0-uI7)+l&?Y49n zOiw3MpIXMd&Jsa(`rR7q#e1g(u*su8Gx5~KQ~Y`Vz4xcS@k|SWOGtNVZM6q?2k*bV z{^p^lF3(@S`}Ozv2~S*aY;U4idT-M{ZCu{Mr;liv6Bt3e8+hWhWgq|B;?M-Xek^=# zqH`HA8cw)-|~$HQiyUY#f|@Y6H)NhsOyTU?qbeklDYkAV8eD-*>vesmn0 z_trmuWukb4pTFG(-t3`5l}-BQMA726@3L=q`sH?xdp=q`@&-)X_pJM}GeaObmTK)Nn;uq6d+{a{t{FRB~|4Ki@ zq}$=s()RgxCW_zV=T95%aC+9(TFMBqV%`iZJ1s`BS%-rMif=uD4xh3PBbt8Of#TC_ z>N~sEL-vOa^O*z1Iev3`H50FWy>OuT^J&keHHaqm?LRqC{Br)S)ArT;R|kr}mwv-3 z>iaSK`v;0&<+q~-IIwLa{@Q`!V+ZlYPcimMCiMOO#KGc|{OT*#%l+QYi#D|z@?v10}-ac6T zJN)LvsHUHUByEO;gT*^+_i+`-~6vGw;Pt$~}QM2$84%Lj|U!-kH3f+p<6zW?2W#XshE$3MR(oaw(iSo~(W zyD%W@{?85;|B~O+l^YMT7QcP4IC!Wu0ojm!K76S7I6wOya(-S7mTp_Js+mJYkxnX)$f8zccP(QgUpZ8~o=)m-%_97PkJ8$t zzj&zlCAM-5dMo?$PBEx}7Bm+5wkE%FsQ4G@Jct3p(@*7A|L39N;9(5p zM?nX%Ar2odzQ~VG#o|V`Z_|g1+x+IZBWjc9MXc3Zhl@YKRt~2kExU<+=5X;3*~A&R zHt||wHqJjfT>P(WE|}#@{!`_*~BlWET`An{KApqzpM_UNtD*)ZyqWB37a^nCVW7W@~qjfA1Qu|&HU<7 zfD-Ea7e|U`o=(8g21f8U$VZ+o{!q1zg}GXrnWu}dRNLgI@8;9R9k!V?>eIPuqs(m7 zx1TQlFnc(|u-#c+x9@-C>Eh4wyOX;I$=K)r=;`8b^RpwV>=?CXzw&hP_t@-I2G?%R z0PFnspDuo#otxHqOdpu_{vVz$ew)4X{h{h&4gT+^i-X^S27VHFo49e>njHR?;tHEM zl7fC<->-g4G0*Qu6vFr4e&)baPhGwzf82&7{q_(3_JOC~zH;cPr^+W*{^m35ZuuFM zPvz6kKfe9Uk%Kmx?@APhq?i9W3MkU=e?I8_oNt&IA)Wlb4B~_Q)mxg_Q2LvQ3)$aH zOpw22;(`3d5txVt@^|Opih<;$y{}kv?m`Y9PLA|Uzl0l>U*3MjasKut|1E4F$FXZs zMsbAk?|O9Q&kipCY}cR+eKic2cGPQ5I{I;7$NYMe&(50tbGX*zt0RM7OV?R8c=Z~S z&kj<&nB>n+Wch_8pB$XZMZ~Xf-wKNzb`eOkAMs{y|BjQ{+e_hZZ~JeW5!`=BcNs#?x$2%+14~xzyQ!!Eg%y zfKlRHZ*vFf-FLPcQ%ffrXP-aw(y6o0pFPvKfyHnASmpECGpE4e;fvmCT;E|Nhd->R z71*wa$|npCWX2ObB8cjPSd6$?M5{>z6HZm1&yT=t!Te|PaU@>%7Ey~-O7pjmE&(cy z3&b#k-pZCdOCfPuu`W{nS|N&BAp&Izj*rIVP3tjv;^a|GvfRN-6fh?7n}3q1SH6Xa z)xaJtK{F`wxIvc~y;Dr+=4Vl~#b|Pr-33)*aKXOw0hLYU$*uSBGA{qyk!5XeFG7I2 zgB&i%Vp{zSDIxr$VE*J$tm8CXBQTDvaRk2nV=<5p9b$~t+Yj8(4W%fOdGFmp>3o24 z)Y}r%D{#SKN{vH868WGfGxB8+Hx8{pFz(&s(!g}}^}@mQQ6URF3i%GBb(|6q<^@m{ z1p0CWhymZWVgwjJA^#n)BQeX0Si?xRag=}ZX#2ce8Q*#_s|FV4+h#h8tY7<9IAefGxu+__sdaP!lKSynVl<6HqOr$vzG|njm9;Ma^onQ zDRhlDUc10QalTpn@7(;{wX0mlxocPFZ{VLNvC13sq3auSH!qxQ%-)#02~dw-ym1Y~ z6P@TmoLyzVs~2<>qFN9Xb_7j`uv=JkfaUy!*((?e+jBK*+&n75kCJcOYOQRe3V5g0 zLUCGdKd1?`BL``4^r+VP+Sw#I+V}Z4uU}}Ld+owG?CYhIjhow>>^7L&*g`d?4N#Bu zYI+BGS3pNMUGe~* z;5ijz>^ykS=5~LRt{&kPIF>p%ejy*_;g&o<{6ppH#_@HqQ`j{6o#QfwrOC)C#M<%9 zCj&>pe1IjURrwq6d=`}K@@-ZShFc$rOpO8w4dKmk4eu8F^OiiC#E5XqiC>cV3xiFn zV#o-{oj{|t0SwjFL%hTSfdGf-T#P}U(cMD1NX!pCwvCF-S5c`_ZQWEn@mp_ul_Aeq zH-l00a<@H#SUx%)zaSH1=H9(;BI<(bLUhS4ehkP=PG=VGcy3meG``I!Qm2~LSB;uWN-C%qU(nv!2hIa z*=eE)d`z9qtwxO5&ij;O$ph{=Ab(aSF>LS)Y8*B$bC3ae#8#JScVHuoFe1j0U7tsp zXX7FAijVnZj`M2WZ*c_aT9%a-6g8}5-)aqUeFcxxm#;|{Igl}Sz)QiQPH^)?<4AxVc>>i}~g8lP=EfB%IG&*SGrqd zXTG4@P=yLX^Gk@NhZkWyu&n*Vz;)(g0Lx03RKbFzN#3=wH8xWBaIuRl>B zpD2(FD}16rK2ab)yb9#(223#LAmvl_!*5h>UT;HR^9Uv=#>hUDKf&J7XHJ6alpTaC zLV8tA^%mT;h|OAso|@=&a)(de+<{uMehzXs9?XzNlN#eQS!niI_BRNY$m!&zmHqj; z*n+||J_1x-v>f<9i_ZFDr+V({ufqVd$n@!%$rYfa^-gyr=iD~_VCKcLDKmcy<@WlJ*h>Mt02kWOuJGr zS#4g?mxFn-A*7;d1%kAE{x|_g$S1JA**vMD5LXd31dgE8+2F6HC-7I(6wDUWUhCR| zwDnZ%XoN=d2TV6y9v@0*Nda}X8caRMHBv>wqjxwKy){soMABMU_E~0vBcCpxLaCKx zqa)Dxd-HXe(9X9mUYUg%ZKm;VKtH!d-x(A1F{X1h`^eyaeUL~R03KK{1|)OXuv@Jr zqQce@k(%`(A>c)GrRyo_2V*=&Rusg>??p9Th{u+i4YuCC-&*YAVb>YNVBhB=)5SDp zbO3OoiAJrp&c^E2of0_ga{j`_*;`lUTfoDu3mEFuna1ZDQ)i!h&WDdcRh7xQ0g|VQ zj404bmt+498-vX~*4St+HU$T$n@T%Z)i6X0JdFIJVuij9v6UMw1y-kfo9rn#nO#4( zxi7cHZb)XPIc?eMleTQ3Fbf)`$gTdn)k38E7P7p7tEox(Di%i4iylM`fRs~;8WPXl zg~wzS^hYW!b5QAyfrMXXu!Nl^nceN+Le;jQG9A$AD^fEd0I{I47z@x+hE0(XMrB+6 zlnoRslkcKG4l4PS81gtT6kQUjkb4t%j`r362h%{o1TP94AvK=yikQg|^?awNHZ;Kz z4Hb6kK^)Fy;!+4W&_eQRwUCDi#)jYH#Ii6)p8Pk!l(JI!qi#y)M+0;0K~)Fi2Zt7J zC_KO1JvpV)90q4eDMnlym{O|+Lneqa1!JZm4fWV5sp!l!Z`s^3A4n@M)Swk(SsZOB zzvZh$px{dXmB}xwIVRK~Al?vc-fF$4gkx-2a24z|Mz0c(8%+!@rQP1zMztJ0F+|c^ zN#bJ-^UD!b;e!!o(oHQREZ+#pX>p39eYCr=oxD{ybhL!6=5w>h4&RkA_N{=2+f`5` z>^|ED>~~H<33T~t>Io)?A)!)W%806|ujmN?ddbVLFc>AI6%PSIkF)E<<{i532bzdl8e-=h}AN}LGm42nLPg4PTX8UT5oG2QCD^3B?g21x1w#-;>j&e~?w3 zcrV)dIB>Qzh?a1QnjlLrp7f~JPP|{-!6w}gDm?XQ z_eS*u+n(gKCj>Wy1%It_Be#(9!FwRpkAv(9vW?h<$}D##q!^ek*hi=t1CU+qu|K@R(M0HM`A4j_FJp(b3G#1IrDx71l^XsWVlT6^x+tlw7R+m^eaqEk8ShV+3{Nm9nDgTILL&nLJ_YM%DH-6{x@{ ztPj`J8~yes3L0+0pMD-M2r))$AXckTBc1f3@|l@1ZX%m#tu2KCJ=g4dh~ye9{0NW& zKa*8cVz?51)hbx@@Y3UZuZ`ywxn7nor>`H#mFpDrF4?}gb(g#717~nU)W>aTq^sp| z5d{GLfyuOF(>=Q5QHgDvz;QoNy=1vec=T}|Q4t70 z+Ujp3A`0O3)S<|*2SO_$56~jugh9Qn{^~Yuc1U9HKpAl`WmH)se50KWS{a$(4tEKE zHB3GNXS%K?aitT@{MoA~Jr0!k(RHZmV4o{{_-B`yXo#)WVQ@;IT_FjzaRKj@Kw<>K z=rmqfxDSrBla@p)!+EMa^v&%>gh(s_;cW4)!@-qfuMs|N!E;RE&X+BkTRF@D2++05 zS>QH>FbBs?J_>9_{YtPz7zL*cvND>`n8l?nEKDVqrxOc!%dXw+myTpN);+aJK@^Ly z$5VIf+;8*oKgLbkS%g?Fkw3JO@HDlhyb5R2u@zTC12j$vl0{#MMVGK8F*SW2jH}Fwx;0`b?%Ra^l za4`Ix1qZs(-bSrKL=`gq(fELv7amqrKvdG>5EWDau!AyMRuHK|knsw4RP9*uZ!VZG zGPihHtymd9s~{D17Eq4g?Yv2mNbZbsVS!QxjIT%CR0DG}w!QB&HoOf$%SGM@=oT*aQ(_r*H-+C}QrX*;ekZGD8V=2A4W8~lh> zW%Y$865Ws30ua#ZxhKy78nA#1RsMOUg*;TJ1_86pRR=IGY+m$r^tg@uI+WFVU?i3R1ZYq`bWn#n5jAGZ-$=p;qJcPun+%DK zZeD}TR;Ggi8?Zhh2R^rgLhU1Lm{)Px+ILl(42mRe<>yGV^M zjG+0><{boT_uE#{>Opu$b)&+d4+Hh*M+mzN2ZR{9pNNNIhMGOugzwuCHrxpi<7OF`> zr=l^?rlNs>_Kt@oy0b5hI6KY-_f0Dk=ICr8zS9eH_9`DT+1$p<8w|%lX4KuS-sVt^ zjB%cPAR5`RP;2o2p3i02*{w?Ri<$No{sF@}lA0PXKL4c=NWl%M<+AMhcu?vF<4dk_ zJpa;T7O>yiqqWbM0?0Mo@QY`@1WrwZnvbjx*?w!?K3CCH;K`HA1wB6$J+;U{lnSnmDctDuZFZ; ziLbJ&fiw)W_`MCg=c;nYnWo**Pi+3%kOqiMvQ7D=&gNeyMnaNUS$R-aZ}JIcD20HWV9FQaBa%8X(VDDY^*zn2>AVk?z#?Hr%OcOY~J0#yMqjo0Wy{!LJQjF z%_Hc04TIg}V2um%^cF5mrgV%3G(fN$sEgaHtvljT*$-sCy1m+XO-8G^r6U^Sq`QIV zCVqqptn?nuEAWncSVVj65v)K5-7EOoYd6?YyKHTzMHK}# zP4Q;yAgJ} zfCyB!lyVM&h$$BTVfSUhf+-`5DR!C(Gt&$8W4U*d@@Ab-K2nM2*;Wy-e(-Fm zHEwm>;|x=5EwT8B5E&|}Y24B7Yjo|W9K{g%kDCO}`S7S_WWzsQi912*lTpH~nS49+O_G+th_CRQhX#Z;3vb03 z91I1EB1;6SwMtxN+teiB6R6{l`7`a>Rnlm~(s+~^^_6_1AvR2(HALu-#3jdc-=v$a zI|lh9M{&5tZVrTu*xAvRx~N*N!sw0QVIft}Cb@$h%HKyp$x3bWk157jBA}sQf;>

    ~;zx$X2(C6Lt%0xf1(F=7^tdtU$c!;Uds+^pemTWiGDTpkFW=Bt=P+BSY*M>s9If{D+SX%TwkA%+ zH_R=`)|68UA)jsDVIQ;kD~+o7C$X1e_Vw|F-8I}d?ntJUJwn&-tU+YPYqaW8pjc-(O_W&? z5usDVmbHm$-w*-yg}7M5O}nE2xT39rV>vA~m=+KkqH*pF|Bi_?)$dxue^iT*7Bi~R z_QqJv>?wwpzQ{3ZKyRtcY@C)FjW$k8RIDBZ5CZN5-BL1mB+hAo=`NzWF{OiL@I7#G z{0SGAT!HLY5A_G*~Z=@QJTphm0_kAE^T+$mbI`jl}T3UiSxztfo&wipI-0* zQGLk}mW^6zgh9RGU?GytoG1r(@PYu0(e34TOcw#Y;mtmz_~5eO3VBMMPKEiq&Oyo~ z-O+6mp-fM)oh7+Wtjft2tOc7xsb(Vr@vsx|yrS%XpM3h7`7;G!3iX(*^X zmTg)%z}95cS)p;^F;j9aO)01#se}<#8WPx=7DDsQC3r#a4*jZ6a15VC$6ysWZIcb8 zXHT2d4WZu)b?fqpp?n?L=Z)@C4rTV$y^_d^UdlIBo81BinoPf}flt1HiQ?6~VP9#Y z>?6y2gUOu9@nyo`Iv?%sZa^esCLOW{S8-YBeKFndtV}QH%Ka4Q&u)Bqqa)Aakt7*N z$b-yYMDD}{oQ8zsD4E|YIrtt+@7x4BY9`IP@Ga*beq=YGE3z#K@L$b(T1JB(1 zW7_hu52YTDjS7xxEsLV8ZWaHY^a1+LwfF(QmN zLbCfZauFr=d@OvmjTc)`YOc510`2v8vLjIDh}e~p-?ulUMc95J)8!s+X_|fF?XFnH zjTf(UoTT(dhmmZpi%`YX(R^SNjj+@J_ZhvL>$= zylTbEa*TtRGsmRwW8scUTgj}EzIdYfld5(}LnK$hgOCdxfuE-BoL+Ubd^`%QXNyLLz&{r*?ZR=+vopp?EIB zvg8sG`hyY?Mx=dc&W9uv?HTEs+97=(3+5A8htTq)y7=^3c%7*%l$}w~y*XUR%bF!H z*C~8A`C9hwLuSqJd=?z9{auICriDk1yv^g7efME`=Z7Vc-M z5+#G}E(QA=H8odou-@)fQuL0Gg}8mP4}`L9<0Og&^>#+tCV1Sp>uAr$;4SWL!p%LF z?Z7eMDtVptz}x%*G9P%R=1`r;a_jcYz9l0OHW8dN&)6H^wh2QF9^tzK6UY*tK7}EH zab(bIVI5<9$Q^gTs7&b~s?pgzGt29qPo624a!Ee8CS_ACG^PX$nO}|Q=ZmC3cPhwQ zmllfyK1e?kRQE8W+Gf=;^l-gL!5ogCp!8AQji&n*T9=_l*)sQm_$!v#s;Ep#=cnJsU_4k)HCJmZ2mIz%lA;ZsMu)7@07-|pxd=@)}O zB#w#}YAfx9rb0in+3$s@e99&GQ~JXu4HzAAD-Us-GOjDVp*=I15nfm+Yjv83l_p9# zbF7UUaw&;B`C{WPG4-UfVUjEGRa7X8#C_}QNN1a34|uUbB~=bpyHD*Xc4d?@+X z=*_5bqw)5zhR5x39^ra5eF8E+P(E1MW9JMh{Z@J4-nu#etMm#uc*CA-C-=(FZ-^6d zDbyk+^yw}_%RVtU0yzk42%3=C3JeO*6Fe%N_06pvzJo#E6b`HYTZ)G!zAY?Sx4W>C zMjoOPz^t^;f<85OtPg|w?{zJ zDTf04L7$Ku3r>rPk+J4@hy;6PL~v?Ki{qb$iVXWO$3cZzr!hMb6=}Bg{qY=%>>kfp zx*NZ$gtmL13WW{tk`iX=ER5G_FYu+4)x-FqIRfKe4@&sW-U)=S&*X4}Q-Sn=1$la~E z^c}4t0vTs7r>klU!o(j%2?oanfgJ`}sAcatMATEah|y%V1Q!EfA% z2(^-(ZTv$=J10nA%h9^Kr)uD<_i~~CGus1kQQJCf-z!u zL(?BYnaTaLOZ4&(U*Ig}UTNIyY~rPOByBX#K7aNs3O;DY1&k49-Zj4<8sl{ySiBL$ z-np-iRd}mB=ewLZK^Lr(6=^N^A_gj={th76LazZ|KT1#}31fifLz@`FCGhrP^`61> z>C;x+?Gy^zG_4>|bE&s}`p(kn&c>f>_XlfoPP1e=U@E77l8IJKL657N|cN*mkJiJR*>l&%3o^IuZR!E8W#?4ZR^zl6h^1QM6v$p-k|@cHry?%SCzM&ixKz!+^er#eNv*v0`2=D6KI0?&NuP zg#4^>D?KuM@Ex%EsZvZHE>{`Le9rQ?Z2CS&jhZ8~s!uZ4a*_}GtK@KCJSTt{_>zr8 zL5~LHl(EK6RU65ue&m0#?;a-1I}V@p@$gTz#9s&IW;X_S&KM#AiY&trUotatsfmpd z7>qq{bOxx>F=!&86eEBKVg%aqM-MUdu#ZqHpbrWl=xR$m>7o@DmpK%F$Xs4VwOH@5(uPRAP#}5lV!)7SEl(B<75OcNvP)c?gc&Ncq z0C{L)cFxSVUb3i?VRZcfZe1g6TEpz*`&mp=bYYp|TPRTBt$764_z3ka%w%@b1!1~N12Dy_GK-DzC8>cKIl#jIDsdLs4<#!sxFgs1_xY$gPWV2_0> zg*pHthgew9sai6NR83_aOFR*Q`Wh(3LtBT}Khwx`KZNHk$h^V26L;ATkC}u@;rDv| zyR4Uq7w7xXGKi7R#$X!-D)2G^>QJLT07_eIZwf44><22gzIF!7i`3GA`J}fF(+^(n z(T#O)P9&z4lk(ulqJ$5!>UgEy3hBKIV$1 zDpPIk2*#vJuw-PE)x89dT3NO+g95eKmu6l%Rfeg{PLo{q@~EImmk<|wy|snuh6k-s zT%u$h#Mw}N9S79%-oqw~h#Wj^B`HrDOWHM3w-dLYZZfY=2+dk$QJRY2yn(`tJyZyT zut_LjMC766PmSg!wx7(-tV6n|t6M7o~FC>MfZB)wL z*n(dhi~*_hXyNEGkWzZWdxNSc4#FU(!cX{9SX6nW(1JLn^kXe4o9pxvK#&l;$;+Xm zO&0#`Gn7#lg)E;6x+YA?bm!|iF;*oCL(VC};AE9{g~?@8y1WRykr7(qCG<|{3E9M! z<_c@vLjojB*f_-St|=F+>93s6x`(L~rmw1p+z;|P(N3UA&R;`(aT0$N#keahWR#G6 zO~V0GA?x+_+O|nqljWUh>X3o+≠SpN-{1?h5O1NDNyv6Q-c(W)33cMDG|-*l-mv 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%0D&ZnB&6D~P_lb$xy% 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

    !Cj_b(7K4_ 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%0DH9KBW)Ji4TlaEsiGj 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 RZ!K#U5EzA6==;D7f#ts{)TCavGl=}6n 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%0DeW5TmC23-f;oeSE51 zCmrS&=l^nD73R!!l>E~CFQdw1SuX~}UzDOx8nT#fGoatF{@>64DjI)!(cY^AR_<0- z=5NmbE!6pJxemajObl@Ro%vrQsO4(#Z3tEV*ZE&ZmG3TBAyb8vfM1wF^>^ogqZTSK z^-$-3pZ|MxeR)#SQ19>0{~xILiF{1)!mz>q!TkSOt+0j%Du!0!AI|?HRCp}w!4Uj6 zqzGe}*RG*qVHb7RERI-WnfkeRd2b-yv7m>-{zR{=H+Z34VW^ zey+(g@>cw>jJ2+^7z4qU!RHLutz==W^#@t<;XV}0TMYBFf`4_a^|LJaNU*)7aQwNk z)-OsaVT;B^Yx_%MtzT#9BMecoZ@)3t`e*$1FqYju{fn{I^C$4>Q4*{_SYc%|Ct7c@ z?AtBJzkR-cqV+X?{#Ye5zg76*6RjU*h0lyiRc`hE$cffFtoNzfbm>;<$4|8WI4gYz zv#B$iwtfGPPPG1Ge*Z2Cg_?xgR_&)xw0@S=9xo+qw&Fi`qV?xl{9(~mnJL){e*Q%3 z7g_LFmWJ30f9XW)uS+W;O%mW*!T)rk^|x5?G0L_qr>#}^wG*xXjTOE#NfB#Bzj>nd zJ1qJ(HCEc!e|njxfgeZHnbq@~8gt4#g-vE@fRb(N;UveFkGZoS6Rk9sLsnk2Te@-IEy+GY9Us%Nx4s@01B=)sO_xQdKMdGY_}^c2-QmjgyxZ|1S@>ew)RQrm=cf_WwTI z`i@6X_Q|?fF{|^PkF>shrb?v`={O6w}zZ=eCb#J&_fT= z*upbqYidc*4Y6os5u%T%W|{9ZrEbCLwGQkt^`` z!wnklBcL=xg5fDRs!HH-MQ5B!1Z&d#g7gp@Lue0rl?Xdd9}gAs1{O+&IP$4C5U3P) zgbf}^Cl;**9;6t@AnRSVIm*+=UT(lW z4mdFKGAyB}v&tho=c1H=+gE@pr&L)00YX#7S<&DYl!EY5x+DkR8RsXT4raH%%4;b} zAIz6wI9_?0Faj*SGFvQOy}b1L%))Fjw^&?TxOyFFMlTf;GmH2ehw<0vmR`B~+ERfU z3o}=izFb_rjCX0jT+Gk$aoX80U0ax4TpYi;P|V?3fw@_Ho4a!H)z>b~U3s~93GJ?2 z1<}ue+R^FK)q(?BS97zA?5s7rfTX5ZmS$c;;;yAHPmW)nTe^Zii_7SArnokW^6*%>4_dl}1fC990pTx2Gfd|!efJ*NT4 z4cVplkvM^tGdwW_I%VR(qOtw@BC^B5I}aqXD|Vu%^^!2YE+^y|1D>1cinNQC=zpz? zYso=z{p#FBBvf3QS(;M$p@o3O7W|$h1|v1f@m&vOtTma_SRq{ z!=4t_*Bvx8_qm_|@9OLgR}q~C8wd`yP|#CQksIvNHS)zZX2}5Sm&B2roKI|u{Yp=^ zs<6E76?50*6MvO*kk6~L2Cv{!5fN)jtv7pkD;<-O>t>tAc>zb?E9f9S5}njRvCJeQ z_XI*oj?$;2zlq`JGLldt=Oybhl#zLt24v9UKU$tfb6jpYgrE>bB#*T)YD5z1VnSf1 zB3WQE_HVpv?DhRmWTD)|;`^Tv81O*}f63kne+~EcV;P=V?{+B1yqFrxxH``q?2?{r zz%0Ky*aYM2{Qhv#orYoV#cJ`rrg80~>COAQ`>>>o4q_!Fnf?a+t#y*KcXxqXkpeGi ziPgg^33xint6darW%e#_W+5m5Lw^Uks`&fGE#&W9w^o}F{B+*6-cQ?S9BU2`4QXFz zAi?|B!U2+I3k z83NVhDrgQU>a6OMO8Qkj@Vq0PwwOG%SRS7A(wFypTk64~g+#WO&F+v(>WlDN3SkRY zV$+J~Tjb|t1O_@FKvTGlRhDtC^NUnwL~-fUwa$U8K25ngT1_{L{sLSJkf{&I$htb3 zaLdEy>jD<7-FlCgz33eCKRFSzExak{2^Z|)rfn(S{USU^xKr_* z&Q_B~`Pb)t-nheRJ3Lc`q;*AV;Y}PY_E%AP`z+2w2OaL?!C9}Tm%G;v^`BK96653z z+kzl22-i^S;BgNo?O?XeRapQ$uc_n$ZXp>-Nh>xR@LFh6`b?bkWy)3@sDy^x8BrF3 zM?0W~Iu&RV2b0w<7s*DD<4M^c5qH>rUt(`K`22KUIAm#`Qy|uC8RV{;&aCmKi_b+g z^Y++c`XS&)D~;%s)wM{MBDyCao?Ye$OB@(hdtdmLflTo~HG*r_fC;rAeJY)cHk0f{ zqjJX~T@HY{_{fqlKBz8=aseky4*W?bu!+acK?zs_$TggCA%>w`gQQnhs#@r}OXSE(yKQ@qHTlD>QbjI|*it`k9=CCD z_pGbo0mg%~IB^Wl(n>}#KR7ErJt6-+BiK2k-n-Frf@6YZj~+5U-9{CT)%l}AhFAJS zhy~?b-F1--qiID?1U1BRT?B3-0!`YzujFD*1W;Iglj~7JCLUdu52cgz`0@=P6u}4* zgNjyg9D+$P{9qI_gzW`{V@jnHjP!R#0XSnslzju;?F`Rs@Xf!(H|YOo?`?x4&9XD0 zF4ceu+2gT2;~9I#_U2^K?yR0tc2!MxyGJ{kX_ZRVC96^rlB#Rk)lDiTrK++^Qfic` zQpq)K*6Up+ScV{Adw~crn2mr~f*;GWEVh9F!eMs*?6Lv;B!GoK1hGHZSb|`~;9Z{Q zeB6)seKV!{n9r?@?o#Ia-j8$7J@?#m&(|e=M3Slk>KSRuX3#iJyzy~bFFvK~g%wdD z=&1>*n%{)ustOoRPwA!+*2x{7uS9AvA)Z@-?JeMBfhwT_Oymvr8ybgLg7XY~--uU! zRLnrSXfv+E=UC3M>`H6eW^IsZI6>iAZKu;iADx(BYCw&Jp5OrsLKE!LHXc!Bliwih zijstB-N7!7Ln!{Ci!xM&P;Y{{%C;(l62b|q4p@SZFEhp{CcwX-Fs0sX*pDNG7-HRv z{N3b6bg!E-#*Mrawh4z;-c^h30oN6%ut{`TLvhneDN<2aDw6DL8#pxMU>sbwQ(gfb z?jc1!b%f=`4YlDhq&7%SMmj(WZU;N)ZuPKAwiC3SZExXW6}s0bc&LALKorNv{l&_O zq)0-FG#SB77KLwCbOgyaE6^+IAI23#SqOu`r4BfRas=#>pQqXlWY-d6ii;N(n=ORS z5|-z^P(clQyek9JY!NGA9Ba_T+x#Q(GBTJRxYWu~o^6_J2&bc!P(&OMx5toDr25mL zRvaG{Y{6(X24z<>S?X10PI@)cGuM&cT+3q)6x_9PNapc5a*(S!_kRs31>HPmeE!F0GFkLI(Tmjbn+1vz2Fj{;1Gp#lQA)o zHxYMo1I$xy{lJ(VTf!!`Iyjh%#$UW`B6p1|61`CoEP6Q=Y^i+1r7pmol^V6q;7cgV zOdhdQ*}W;A6apg>8`0d=Mp3)kmSmiq2Aa5)T2>&auh}+>cUrZfy%f&edIV{_OIgiN z^ycvkPO$1xS3DwL*C-UnS?o<^!}l=lFw8*ZSHnq~(}5YH2}#bv(8-aCU@L=u0x$MN z%_8$6dD@Mb1dcg9p7?Ro*X^tax~S^K1$Oh1kJ{hJRk6iJHnyWb9N9 zC`#ieX+SDy-JswNs)ADgUWD3J*-Z?IBC~2M;VkG}r*I~$9FQW+2bP>dcl&*0r3y`{ z^0hf@I+1zGdACp`Z&buTsBQYlT`!>^5pzO>vcn(kizSn{70E2#(JX)RJv~Y-!0xG= zX`cZLwUxORqrd=TqPT>Ll~f|h-@^T$q75`vjWjC^LQaa9Ih1EEeOw~5Ct?!ScO3YA z#GBl^?*W)>13ufGZ6p{w8i10xYL-ENhsVe|CcPeJfW(w3)J1mpsl3?6H9x#dKm&#y znKy3i9dz$4qnHe2L%l?yjzH@{!z9duO9FC+bJL(w?@)8AAaU0f*qlPzJEM;_`j zCTEe{rt(ZxedGtz=naXF!3)(Ln$`;~Ck45cxJYTcbFM!aqko8c2YSz97_JOIR&Q(rk*>dfs1MChdtVAwe|$jCgoADhC(0OE%qAXZodjL{cYS-$H&QuZgq zmd25ye}^8uChW4bA6SM?~51wkfL- zz_gpYTpqueZ!8+>CMmhJ~o zVTDX`dDbTF5kowdXb&7J54Yc? zG;yc9xu(YNxUljz4=7YIPhSPek;=qcRs9+j55*}~kj`jnODq&8jJM8JjRZB|s{uzt z&dG=p{R5g1vl0TjxcJi2f_f=Cl$YU7lQszs*wBogxz$LMd!l;G8&-cbKu*HW)ywUJ z{_e?@FJFE`kZpDq4ydBU;0X6?KN?%cUP9nw8*l3=V0a?GxGCJD^(~$*{6xlmA zCJIhc7E;SAJOZoG!p#;=IM^8ANCnRyu^VKkM~%>fz{e0}=|~Rz(4HfLMOuXOi{xq; z1tO<8La4IpZ9FT%$ATGPCh9eMO+=nTQ~)1?|HQ>`fiO{GK^O_IZn7N(CWM|L?jhbs z&5>Nvco^iQ>cKFcgvY@!gNaSY3oj>BhuS<(bcp{gb&RDW}(H5o;NA6Ui4YqZGi8z#+6?HEr7i42x(MnN%x7a1>*fSk`ADqPVM!}S6&ybpmgHx!@W*!=!7$w8MA%Jh^2D;NW_&0 zyR>U=4Ua%dqGL!7@)=+tw}?kd?YS)}c5z1*wwkiyc^*T@MWv=a$r@%&4cQc|$12GN z&N5|U)HjDjjrZ6JK3Wf`u_Vwb~}&BI14ezAPZJR#tx44YC= zmDmEq`p~7Ps^yZZ9!abfZ)d9K!$C# z9a3lCgJBH{J9v!ZhMQV6hK1^27AC;e`po)+pmuUoiL7R;Jpb@7C3Y`J>P$uDQhrTu zoqsDQ!SQgZ*2aHW1^%FUct8<`zC(@rbTTPULZP6@Is@wK8ujDB0LJ-Z?%xZwUnQTz zxr{kb;AQ}SUgTUx`W(18d2~5<{d@2M6em4wh7wE;Mip%r9E6aBcMWi}-*?}fPWbo* zMLyOoG-OZ+aW{&MWfgG{Mq7Sv3#6;`=kleV;F|iUVZUZ?v~f!(kQ|z7^0r8qTV@|gXC;)3O z!@2$)%EbD^uRJCq`AI=;_O_!TD!kNDr>`QRJq?l)(U{UGhy?4t8xHN=Q4=DN`ZS9q z=O<@S3cOd7O*$)D*m0`MI!eh6%#%#egMUWN$C{nEOeXghx@5wQL@I^YivX@+?d5G= zd8VMn*8_;n@tU28*@|+!k4H#?XhR?*0tZgVT7+Kx+o0>x<;xR~YA>2NL7OwQUUu~I zzyWo>SA@$OQFK)tbbX%AgnV5Y;Odah15iFsGUB+340G+kKq9%ACjZ^+m>yXf{MV4+ zSu%1|mc&i*{XH{CXrp2MWs?DOhr{M10vj%p2!Ulq^`&p~v40lU?okkD;@!4rq)TLL zBSbeUo_QyBt~)m0g%U~xX1TRDY|yIxf?V!~S<%ys|X0}>xH;>uiJPdIZARUQoX$BlU<3WY%8T#6wVhkXN&P=8(+~r_YdkP;c?E* zM9k@7vRGYxwmIQB#|P;7#V9%MMTVK8lm7labGo)|P1QL!I4iagKKh1#s`(3pk+ ze9MHVSZIRU8q|57kGSDM*4R~jBgd`4+e}vM4f4K<-#OB>fdFv97EzQ&O6%bQ&&;4sMQARsu$N?YBYa9D&>+Dlh6ynL|GxvQ}F)QNnCy+ghUPi<@zlx0s$b#3Io@>1iweKd-fwMzf#aKmX8oJxl zNJiCsJaLtnZP$lo5?O^LoZcagwa%f(KEW?_VytAlt zYGJTH!1gE3J@DtX_R{JFXLJ%&9nhUe1Aaa zv_^kZltsHIk>%(0Xk$PR4hf4m*s$4+|}= z1tbDY+Sn zCRR~zB>n4dpX6KmjN< zSH_pho7PCh!NdVooaDzz8DzQ11bw=xj-9Z|eUQB-%@}y`C@1QJsH%`bRO&0(5O^K} z&nr*r)$h~8#^gt=w-tV5m8gsgFD&K5{wmafDTI}h}Y{?{Bc#Y(He6(Q+{ zhkZ++Pe5KWa!(X)ZA|CF$4q>BmaZBv8WD*CYDn z?cM1sS2?2!OfZUi zM~I+PO(QT$;YzDUC4!qv%S+5dweV~62^pOkHHwr3C%~gTI}>hr3GeqFGdZb*HEy)> zI!Ps2d|2vSv9ekc*Xc-O@N4(pKZMEy5gk&$J2!i$HttpsfqCjRn@=lC<%RS(1j-@uRO=h~EVy zvWJDs%k!9`@>SN4^x%aMd4^qZ~A?*gJu zqZV0*ij>!Z3vP-0@CmBQi|HvRe7<=KBmphi;xa;dn{FAsEe*$&o=I9I#1n=@D1p2r zP*JR)T!Dm%^c<9DlqmS@x<2Dg^HRI^wOT<}1P4L9y@xB#0v9^k7rBE66v`bGJfw2K z2}chnKf2#R{RFmPExcNb+IE&ZhAWB}+QcZ72td`P~2Q-r$#e~2!Gd2K3mTYVYT_N=c4^5ygC|l%-C{~m< zqb9%m=srTIcot$){9x&zPf0x(T$Pj4>H_bUx7YW1BN;N*s&NLk2s>VJ4&W`0{^@4` z1*b$SmSpy?eey$a{vLrN)Yui>% zn4|4J&`c$vxS|&tDjSL)UTwY+X?~T9K(iyT-$Ft&4WA2?m!WEQmz0cjwK``;>KJOG zo#pakv;3?h$)@H7)8G29vNzHrt92@QpRg$50ihV_TA~L-^Ngxr>LWD)WBS8Wc9M6& zp#Bh~Ph83aYgjV^M3|{?3T38Ne!G9_0crm#PufLZ}{jXHp<)M+IrHT2-E8&*qd zUQSoJ?aH~JUuhBe#BQxjDN6=hIgl`KQT*X3`Pr!(XOk=pR5R|UnGpnCkF^Lc8j)QM zS?)ZQ=SR6gs|>8*0*Vr-j<`pu-rt(T1aRVt_{plw$lNyPwFPLA12)ua6T38*Wq1no zr~D>7m!XR6fg1S+UQkU77Y{e>u{6mx_RE&!^eE38-~))T4%|a8BQHz>s{k-3_(tAE zMPXLR3$dSM@GQWOB7u(3FsTlXc83+^q#=x>Ennh51kY^}DW(RuQOBrqgwinKpei!J znTdcI`M03Su-Z*=HBRtod{v>-9*HtLoCt%qQ-T~$qGADybzN_u#cm*KUsF!PZpl>W zX5JR-4DM(kL23B9BnYCmwRW(D%pg*gZAU(^AS!Bl0OEfza2^|A+v)5w^2gniOcjo8 zkyI6vg*oR=I5QL9_?pS|+y<%wkyI$NaX6#K={TF@!ZAgAf*eS5E5bGEAF!HDiRgO zY79(RRS9uP%E}dY3`x6Ss}f@31K89|T1U(T?lplpt_^IqUYeO%zpHT=vM_-u{O zOdggY)-kxlZe23|6BCj4;~0D{(KI|ir#CPk@Pj6nz8b!Mt=LgOxC-A8u-FXcSCQn{ z7blu-Vus&1)3IwIo_w9mf}GM3U>;&_YMD$wC^`tSxs(X~Tt#Bcfd{wOV+C6alO-3m z@B$Z2=Vp6=AW_H~Bm-rdEv?vPpg>>%ltI5HGR)AdVO&xN@O%o|#~-Ms57VRRcrks| zmq?H$0;#h5lH^$++6e3^4Y`;ZfIo9hSq8?Wv1Wt{HUDsIqOdb?(FhYdUDhsxJxbhm zBY7Hg7VGP<*;aIz^$5~bICI8d6waivfG9M_g%XHO-o`bC*YQW85ZMr3<4=5n zA4p7qC@}>nyr8x@=A~K}&Yd4du&qFYtbq=I?qOTlSbhlSHZ+r0Bk~DCUXV|n<(1#) zb{1e`;UuUnqH!1mTPdrG{r*8=yG$qnorrb71d|>iA6;Za#xS8;SI0d6(14JJcQeU7F@)YBE z%Rh~~(ywwym|5=H|Cfs)ea5z>so0~^Os!USkCnp@1;G(D22J4NArdWoX4Df3RH1n$(59UylJ^{pCn>bf~tp+HV{NNKC+FzD=b8(y{{yS^SxVVf6t=z<(a zs2VY}=~aM8(UB#?z!Y0CQy)|BlcQ2+T1yqzziwPe6-R}W@c|-g+Ryyi`kzG(9Xnj$ z^aDErwj5r$CJHH@MyYU7+E2CafRSyA9b5%chWEiXURuah5OA&GG$m9iY=)&WvO{}i z87gq`LZjRw!@CMmkR)_bRTHJ2VbV)=vnmB4V5{9nTQAGG23xM(Y3B{`uP=7s z19PKOoxZQm6p+;NN&yj7>%OUJ3LB5Z{7oB)21KeCP)4#BKT6o3)O2RXA0Xw zAPg>Jfe2f0_n@3>%T}bhAF%Dim(uYr7?geJ_>eB8rJ>tilC+#IjOe$N>;+J7xUrAT zpTS#R{Rkwf-2M=3Dzm_jPFHHynq;q1$&tH(8)Fh+3Lx^Flcav7)+{0ohoa1%Um?uk zf(IOOCtzvWJ8AFPfmN^)SgB0ZGaDVi^Bp-Hu`|drAON6DvLPf6ktC45!SOyjZx-KU z5r}b7XooU?a+<7!%uba&NvaaofP6~uw7Uc`6hih!CIAC!R;7UIAD#yU)}et=j+j?N zVVtX3%0X*lJsg!&Si#bYCh`bX!^Z;?=Lm~-F;V?{7GsEV(AV!mc-qzk|gQcCAG$e{5sca%4^70}GKDDby z_r3rE`k|neXd9*4lUVn6>VC6N+Ltu@SQ@J`;TL@jQXJ5!BVT_UpDH`w<)Gx~p_*Eo zIxwUYM9eXC*vN)e(ngz1X$mbTZOjb;DrzEcCP({csi?i@d{u*TQ z<{NK(Igtsl^bBR81%hiUQX13uqfXiO78{0)L7>g_AZ$(xxqVlcgjHlLky~d?{_ry(gua~i2VHBcHB5MI&n@}QX9lP&3ZEEunBE0EVwj?RE6^0$oOLLE?CN)*k~ zgyu0nAAj_5<2#>yH@%q&T$?tPcKhQG_ul)&ON;x92jBkqI~VdYm08@a!r|g?qQXBt zs)A-}@BO_u$|v}`Hcnl-$AuJxeQa4}<-mEAkn`evzNoBEhy z&%iCl{{iV=OGN3vl(Q4hAXswo^9a$@fc73AtYh`FhS5BaPf18-?HJm32FN+tB9WF`Lc`PT2UM8*(GhbAlh`{!H#GYkKC(xL6Fe?#6JQP{}ezWa%n zUdm@6BLEYqb5vV zR!o#UubLovQ8_X4<}`Fmp`r*Q56>p1NzpS3Xi|2RXeKXp7FG`X!~Rx(w^^FNVr3V{ zSo!EXKPKf5w?7_!{GFe)?@h8E2u+P|{ENMpUgBAcr`6WNI)WIH`49mO4g7#WJl8)s zIqWe!tg&?wj=)#mn7VrT>J`|-4i1LDUV44?$`qs#(C@IeazZE3+I3|8-t8aI4|j5M zg;)L#m=%(m2&7Wz!XkbTISLT{1{3umZu`Xn9tt4%4nfvOoEf6XV2U1~LVt7Ef!K^Q zV`p*;P_ZNw6Yy2+?+lTRh@lQJ3k`6V;q^Q4B)7bM>UpeI_6EVhih>%`?0F1LX561o@0XYs)v*@64{w*A~`lE33=zE?l3#j?>~Ae&aB9XJP&3^6m8+O03Q< zt-n`WzEPW9dat&)uyp-WZT=f8tMhAXlgq2M1suE==J9M{Y3|nT>kCWo)UKi4(lUsC z0o0C0*OzPT(3)D9Ut?pf`Bj=b)@QFR+*(+F@6zOrh4m%0S-XKoXKO37tLqDMw{Oj^ z)>dw>uE2bc?ysZSrG=#%tLSCEHNUiuz{w>%tIfZQAGNicv$t-stI65hfPNMItk&k1 zSKeD)c<1JN?dI~W>+^VsF!Eaqv)69TYgZW5+^yM#)}`9@+1Bhkgl@IAj8;}BSxlj; z-MKl>N9=DF|IMv0EH7~wbIVKXtN3{dqlER!tKL~yn}<$vbzu#lPTp8uM)O1`YM=-j zLA|AUZH1^71cezv5hCn12JH<_UZ0=6g|;v~OIhLOr08_iSEjAOB<*%ho%TUZpdDFA zNciv1XrS)(!%u3XaXqKKjW0d~fAFVBU<()Zd;SwQSX=SI{oU@P@Z)F`I%sA!3{OtN z*WlRb?|AkP-*FjrmqD+S>h+E*k+Ej1kA-Dm_q~<*_T0_+IS}AG5>)iVW4PY!AP`BKX?E%J0bgT@U?@hDSs9EBk)GhqR%-d)J(%MVJL>PLKeTuA9-}o7 zb)WsTf|44>ONL8%pdQO$S3`?}_fXHRc5$!*nFt}1laokY4A)Z~RHHt-j+Kej-22-z z^~8t(74nU&+>NAM;VNFLo2f8Dvo@!^!|E2008N|+tg%cRj0JS$rt+*mRRGnYU==7V zr)XWfs(4ggkUGq)Fp9m~--VpFj=gKZ@Rsf&+U9<_IzPKU-(Fg7-vR$wz9ZLcf}ml; zI>9v_OE0&AZFq+GgQ6E_K`q5>&AkYh8a#G^>QX7G`iuIP>{p~SW z*mXcOrU70D@9%J7!RMck#UumH%`v-*)0{@&w$?w!c8;)eZoPRu(WGIk!79${qM&ZA z+6#vdpSC@V*SPZL)Fw8t*WX&a`RjlH5<#Epa03o8R+eXQ8heo|3KNjkq(etC*aRQ~ z$UT4(12W(>J4^zmt68)vK5H5Ziza>OMDN8AGBwUpv|q z++&ND5n=W1b}8$i+g_?am*ahvsA=JDk*kgV+Dl|7BpFpNzu-Fjd!T_P0-!~~eb%a~zzyomKrplU_XfDYF_qSufja(~4n%~4VxR^ZR ziAb}Z8EZ;ITpe4W9yBgXoW~bgE#zF$;*_oLb{n2e?RLamZut~TfR7QJ+nA{D0F7jc znAe~1gfPp8o#WaFa&?BP>q{9IF5OUBU#Z?m4u1sS%6k#b73_sPuehZ!(95hi3#V2@ zCqA+&niv&{ff$J+0xB$(cr0K@?GS<@oCstCz>d{#UXvN=ZZ9lf!-awsvoF{iSpnOZ zzSFUv%56b_tU|XJtq0d8FlQ2~NiI#Xm07O3KoC1jcZ6iR!;9QetBXgT&T2;Lo9QCd z8;nqcn}i`aki!Ji4ExhVbA@;2W||;xl5&mWP>V)GGA$aS(>aS zmq3r4v1nscrlWVXf2&MIv0##bsr#tAbu?t&2*2CCzO%D;(7l(We`lBwye;-mk``XY zIE+uUA3#RPN+e#o2R)I`L0rZ1dL!y!h~qpimq3cHSfaVIureP83C3!z@Wh+=bLe*y z)Vc5Lm;(HK2ma1!ov?M*t z`fl5--uH41!V3sr)qbKSTU%53rfUn!cg4ek0S;L|U?>~`y-|la zoq)UXhTTGd9HO8>25Bpr_yLWHXOQF0TJ9adm04oma6P>I#l$q%Ye%l$3G=NOoF438&K+9u?AZgpp$}uNW;ubL}FYQ%QQ^T7y_C=9$oE0xiqL@0b4imIL64scLBl#xhdOGf_LR76ymx5N!> z@{s;+@St4bFA%WsO~)jki~ZDGJWP2#7G?6 zOj41sM&A?`h(U`gq1||vX6yWzBw$n!1(o&#9v0LfP(ug-l#oyjbAVLaU=yPTRbC`dIEHY$3dGikcOArccL;(E z**%iY%Fi`&4m;bqCW%^f9+0mOB&a!r#_F(h*ux-q!C;w?f_Y1j-pv#!UPt|CYD_AEs@^NQoSn@tlFJ2t90f zH;?X>IRoFmtk?E}HX&In(Va~(BEF@s08iK{Rq+lc<^gBnJP}j4)^rL9C zV$DGF1y;ZsHc`?73Ds2(Y@uR@(T20VD2^=aHS9ws>AFZL;v`-M1;1%H^5bJef67TQ z>N#eEu2`s7cYiIJ9&_zbyUq#T?I1(teJX7zPr(eVn8QAX2M67)-cAo&;{E|-anWtu zLqH%>0tr5<^}NArTbUxJ!}dXLI}dSgdWZ@0<0BPYCjb_QC#Y(>`wx4E{e7`I`*c0T zlI1~@C1IJSwoqmnumeb*kqw#^KYmrKYK)uQ-pBrU*U#J#xsYEi+FitNOk%{LhIPQv#6n1YPW3C#$()9Z8~~g%oA3hI=^&k*V0vRid)Pn* zUCs?h5?jx6|Hx2X4ej|$1#cT0x`cs)cw81N;;^hE3qS%2F6QD03s6Zm3I_^h!NjJa zQ=(rv)0iBd>1q83guVa7?85o>me;6#8pO#7xI`GHVy=?X|w zutf>Y2@whoOy|f%`njyBI)Z8~ z*YiNH#uF?d?W=s+T0Z$=}oqqm#WN?%Qd{XlDlpqx#^=o4Z|p znd-oXT&qiDx&GebpR4j6Ch%Q)Qt^kGMC&PlISOowpJeP-C2cbsn$YN#EC%cd7PrR5 z;KA=Yp=3XpiCcpyj@V|UqQuUEl#E1F4q}mPeo;1t7*!B>zF)Qi(gndi#X@K29?f;+ zR;GfA{`)M1)oM4@u#ejov28;#Vlcd{W{7dyM_WAIQxMU}Ajo>Oe!8%e%aaIeWAba+ zqiF{;rt9X%VPBf1ae}6A2r6og(0)*nZ@eGS?}OffDDb%rNgD(OegX$-2ZZ||-|Y4_ zaUeS}`E7O=ayaxR5HNYIEca3#(6E*2whEs!3A;h8g;b-3a{%j+pcGa0pGp z0M2!=tDeZ%_1;Eg3Sth}sek|srTd5_feb-dM?5%qij=k~*mjuH6S+em?P8q@2oxwR zGwK#!p&7{L_t7s(!Q~Hb1aiG6M|95#fzoOmfHW_=D8rY<2L&a6txc3K0q$Y`CIlwX5XJuhRm zAxoNlal{yT#1Nc*|IQe;V&V}1L8|!y!`Bo@`N1aB@gZNo__xX8hjoXCO5Uwlkm#>m zeamHKA-+>ZWD>S6T6BSxS?DRQGIX^>M<%XQVI#+uqDyFvJA-5o-PizU>Vu=vi$;y*M1d(J3p2DB7AUmzTxmLPiQmTPU~R3*cR1zZt?me6QS+V& zA69Z*Lo!_G{L}-O=N+VhJ_L72UYDjS;K_J6QCPiX`R00GbV%U3Ofju95Kn|feg_ATq$5G07pH8E4mgG3hhTU66@MmlWu->4e0G^&;%t98Y&s{(>Ta9tp&h58( zTL+Z;gk7{ubY2pCN2Np2H& zdneNIh{w}K-miFQS$A+Nk5cN}a@6-dMN${{#xN zfq)H0^e0|@+P<>MZ-wZWyVPKcP729eH8pKyw>+m0O=XERwVD4_(ucW$CGLR28gHye z4G~nj-(srKZ^g9<<$Q-4_Y?PV7g>0#fd(nFWd~C^ zZ_5!}SqBgQ@z9c-ogWFJ?t%7j`6}SiiBM zDjroa@UXVCqiPuX;dUO%_lu&3fyD`+gB3`&qQG+FuJU1T+0_Ml{k{tYS(b8g095;Jkb?K#0eWvtzx58E0)eP zR3A>lg{07ySFh^({l!!oCo)DG7D;AsW~spf)yMQ9^zNg9PQ`w^J*g#CZtb z#FcFe$;jCereRS_CU()-nNJ3nFFT7Ao(y#U5%MeH2pu|d&J-EyZR$p-y>(*bY%4#- zM2+UB0m+F{w!o)wxJ_ccI60>MgA1fw5a}W8g$YemvJG5<2Z!9_?&e-%sbN!T9HYd* zo6#Z>78XPmDGL%&=XZMh+x=s#5Ktc?PhR2mIPlPNRwLtK5X>c27hz#!%qH1r**%b? zEJ~gI&C+VPc+LZ7ygB2!W+FL7;pmLGxGkz&5D91%VddH&)yA&BAO|dMdF6r7OrmY5 z&b-1@RPdlDfJlRnw9Y_%XZK`4O98##m^2^|CQI>SHWn3aedmqT$|BE1L;;uSAkK(q#}7$1Hwq{)bD7gc#k2YTaK zU8Kvgvg%mDbA_x}^{XX;al9lHsrP#zD*CoiV5!OOqZAe9k0e|niE1hAV?id6E$MW1 zY24=0IdQPKTbGCYRlax zs4CU*cM*TxU3BE9sD=){u+_&Q`_yKDdYhP<(fx5m{FFV|6-p=Ov$S+p%M_Dl)KIlb5md_S?EX`iBkK?%=??x4Dh0PQrWyp&%|K z+y*czkZ!#5IH-U)^2scdm3WqG8;mE!Lrgq5H5Z0n6IV7kp{f*yYpDoP+UX6URQsPaaDY5LLfn z8kOuolh4tpxhXHw&;ead8pXCH2F(Of#uFG#&%8{{e2%S%-f|~00_{MF>#5pB{#1Np#IIHUUyi0h)@HFS#8y_7GE+oRPosq?D5CYlEcq%4@{8tbQ#gcZ(KnDRjBrC>n^a%(B5}p6ZU2r8d*i;N}DK+FMgkS{b;!JRzguueohGK6)qfsk|8om zZQVyhhh5y;(K+0@-#En0tt9E%h0D!Xzb@7s+@kdU@t2S@-j+@TnzdcVA;~y9G)4q6B4SxdAO7?EzPVF664*SUH>44 zp@sBnG*KY)&cj|G-obw8mRVgBQ>3_=ie~nq(o_?V=|>s$%g{v zt~!G0x-*w$X~XmtN&6v5mLLK5ov2MkBa^I;f}X~e=9b~7kKCCQ9is16(tOlz(6r)3 z)BG@EP4Q%Nsx8rx#`fff&%7n~>NTW5{Y=nd%7U|GpxrfOU7hBEb$Ua~A<_rOAh{Hc z;*t$7(K#gghH$V7%`E}JFae~v)xO5X>ZGL^y+*eS&pxNMgDOD8C%Ztw0(>1|unHr+ zrQ=2L0j6*T7s|%fg(XK4Nc{n9W}es0JPu9OIS`o?BGcd|Zhbp_H4;e4-t_cZz#P&m z($=h$uXZF33CE?(Z87ai+y=ZeqKRDB`VKQEg^W~Y42=ry+u-N$P_(RcoB=H+_!l`; zkR7p%*@8;#kY3@KOy;s>j2UR#nird+)Zx+Ypbrj5FLflq9pe7;TBF;%*MubnQwMDx zsS(@%%NMJXmZ?L8HfzA@kKzqZ3B+Pq<_%5)fxw@uTGB>=De_=3u*sdX2`4;D46ma( zxhGXHeiojLzO$LrP?xxInfxQG2j}{|qg^J$x>UQ019ETQIJpiS53vpadzvhAMY2F6 zDKa+)%!K8zF(SM^e{1$VLlPh%am{O5QOm}4Ykuh+WQ0}WtZCO?R;*9uupqlgwm7&+ zGSTT;l13DPK?oC~%Z0eUC2OGwVG?x2@add{H6u-SmsDP$0v=*oc9Ohg1&}DIPxF!j z_H^RwGVl2{+^I!!!6u$9QX_H$r8$J8r8$M>sp~KHRONC(;teQE zj$v|xHv(CT=F86q+O~Vx+7jeHT`P_g&~h;qEA=7kQp;8~I>l$x??vfG-w7QZ?-WYw z-NNq-DSY4_PGpQ42t?^3G4n|YCFeEawy0lP_ z){f>Y33F&~_uJ64MIKqfW2lbfQ8->Dt0R`ANE~9tUEBe)7iy+yMuOb_1EgL=m_5{( zM+ebz&pe5G{TdpRrVZDnD+WTV2EakL^PoZbCfTqwIRd?yvZNn&cL_6A+nEi1Td2iQ<6L$ElMHb7OW0ho;umC?43w!$%O!c?^ z8=w`}0wYw-c_0o0W57p)O4m;|00N@*GC&B9jw8Hpju^=W2=o-@z_g&20n3DJDd{Y# z8!Qu=BS8B*6Tt=Ww6!lmw#s@lm4dXW+|)O$teDL|OXpM*+ON3ClkYaMO+Cn`E)uxh z{0gO+>`*g-NDU4@vlMg=Jn;Cv_bDR2q|+cfAnw1FS2E~qAQ~*E@&Rtml~P*eOSML9 zda7y}7XXokuJ_wYs|g<&!$V5?V;zGrp13U*)w`9MxwLM^-N7_aH5;>(D$Gx%PE-rZ zo|=e0oJRjxhft^L9XQUxMS>ugw#O`2A*9Lv<7_S8l_HIR)}))#c92tE36X>`R%}RL z5ubc}CY-WhQFA_rkx}a94x(TMCn_~>@Q}cY=?A^>JOTDailvH0Kq{3(iU&97{ZIUfuGPD;9vO%Er#;#cI;G)cDlW19qbL5jeQ3eGi#IzVd0P_pwu1< z&ZreEq+}}~0WApxn#iXDy8?YfiZNTv46~=JCMtqS`~>(%jF*XsIAZ>_KgChY5J_`F z)f_+tvB|h__tv(`NdYbT+&3}V2@CJADPt#vxdeH1l`h$r?2C4Mh0v>)^&#^i%7QjB z*>xl|-mBzMPBuHxe6hU%6LF?6SHq=kJ{w@=y~cWErbiG^l~6;t_!)=KCmB~Fxe(o8 z|CTa3ieveG*>;r5`*-0c$d39tm3!ipvX8M>a$6T+YZ7uA(S^^gzmDCcx9t)fR~%=@ zs|uRojWvc|k*CWfp)^?_9gSwn7oA{1H&*iB{M-~~(MV}Td(ypddL={~O11zhMp0ta zZW*Udn_mC8+hX6dvkp2t-CSKBfHN_ex5CT%^pyu*A)~YRB;^cI5fRE+lj9F`8U=5S z#NxPS1C!GS*(S*m(HqL~d6_BH!(b2}|Ap^NoqLHNUgh;u$%$D+DZL16aeZ+I*MNOG zeG5XN(##6nU;MCGz;qQ>V0ZDG#R8Tu-3kmAhrDSl>EdI(!*fAi{IsW^4kvM|_ow7; z(ocrh)GXMm-&*`On*68ym9=*)Pd}s1S<+px$v?mNS5WWsS&1x1u(khJ7yoON`}wR~ znn2Bp{lVhjL9w69iZO1_GTd6J|84RALa9%urE(1Z-;4hb3jBCdzy|c^6s}w82t?Q-$HypFY?6 zYiz`D9LvR+AVo{-ch9x{0Zaa@b{9*E?br(a(Ye+Q-cER-Sg6A6ZB=egwC=OY%VVp! z#m*{yIMMn|Rx;v=z$94wt%=s3VHul`SSCl~KR?m>Hj90#(7)obHGfWD{~{*p-QvwJ z#ku{RiPm3YTVJRwtm-%$!C#(e{S_Adh03BC!L|PCMC(6c*`Kd0n+*9sooM|Y3x1}m zpbhBHc^RRH6=6ojar~DPt-r-~l+Sn>JzN<4e|w_!_gLgpX)|EO_WJKnwEl>%KbO94 zN73Gj{eKg!$@3_t?9Mu(G-mIA;(Y5>xooj&UyzFet9OL*t3X)tD&ffTyU4ux@WX#_ z&Te`f!4susi3!P5W1^r&8HsIV@@gb+lRp1Z=yNP%l9om>BzZZ4LCCw&j6thbFCuw& z%Bqzz<5nvRf-M{?+7f#z%&{e?u2>2enC^G>d-rhV z9-2gcGdMDIJA)px6Cr^wGf(51%^{kH|G^QHmLZ=S)8}t@c}ZHcwrmz}=6OTAjA4|% zju}&S0Y1e@=8X_ogkjKuVY_p{`1)g<>p~cFj~7+Ru+i*hcX-^Dl)F&maj;TVz94%q zZ@Gp0$%U9(PXZ<(Co@wT0EWGu*ZlOhEJT-Y;1*`1MQ9~8R)fAoyqVntt{8&e_L;8F zJkzz9!Lk@GxJ)j)Jcc^zu)Cw3+AP=wli5{~cFpB2W*q43!p{lgr~jc=JUWEJbCY*h z0OMBun@4>n$pdN+cjdcZgxT~Ga!I9KSlPstz_6F>`a8JVkn&ofLAVPrK-&w7q7Mm> z^@>V8{9o@4cop$l_Yh#sizZOc^f&s**}Oj-;^H&ya}_Fx0M4F5=VxqT~LTusYRNl~a zN5us=-`Te{cpW2Zow@OLyGS)6h=P8~1I{b%&0GToTWxc3ttXERbi9EUlZp*!e(*2v zTCKj96WY3rMpWT$2t5^xT?-#o%4(V@fD z?%)9Z1N&=0J3x_orY>qBo#x0pUl{N|IcfRYfnQky&0_xc>s|05|1 zRD7nD=M=GUV(Jzh7t6>j;xbz*#`uvJut32yr`|DnCXPf63GF3TyWg)D%_*VjW@iij z+K1glGo2_|V@qQ1YHyyH(mCzCLID^71n5#Ww$z5X1OCN&r?#KVw=ceTgGB2oDl2YCp0aV$XEuFSK>sAg98j}bGJKp|~mMd1?1Y4CaBxXnBG z`)+6VsC!-S9!GXljCai2)OcnT8C9R`BKqr6NebsDVN~(yK#6tQsW!ezLU9jtDNJMM z+8Sy)7i0=doLcDP5NpCAY1jkP!R2PS@_cwVuQjq7mp5=BRk*xI7KG9RuI?j)cR7)r zqv8Gbu>Sy8LDBI&C+7&Ma7Of*Ls(T>XcB{t^l~36PVDz-W%R_G$R5Yg2pJO|>0fxX zCCRjheJJ(m_@e-hgCQ)`&7-Xck_wrg@(_HCi?w@5MUX#{!JFwxNc%8>oezu;By@OJ zTaUiz#=RE1C$fLWv9o?fMGVwh4f2JsAg5AR!|F3~qQ@t#BDsSM%NT0!*5_#X+#gP@ zV@=nI+B&jvv{|ZQT_*Sd9Fa)Q0Lm;V3Qm2$E?o;O zJ9VUUsXdOZ!1x)ULGwzcXK4BxQ`C?Qr*8G{O|1%TOZzS(!MTt04yh1^jhXsuwbaEE z>Mq%Ku(0i0PQ3vj@w+G!dTDWl3MAR~h+5)VRq*)ISSO%f=`aa>;>=($;T67zULpa9 z*YQzAr1D){rd*Ss8W{d9k?vjtlB>p&I)X@7VeWk==PU|62~n^EduC;NvdA z;}VbimzOF2MbE6JBaY0xSj>M%K+jZGye;5EK{=wHWIyxf(!UiXkV%SZS+m57YzS%+ z>2dT}Ez-4;hS)0B(CE={)y~+|jV?tT4ramxj4o*Gc*g#YE~wk-jQ*)ECQCLjt&zhM z8|s)FryQ|$6T4~)*I`W6)C%~E|L%h|sNjinH={8TTEJ)?vAK@ym+eOWQ#}Ol`?M)y zxv|s40*(r}xe!Fj7cjcpD2lRf`U&lbCmi)ASm=nVntCgb>`d!isLl2FaAQwzvxj>y zP855cUZ3aMkr)ac8BQ5~rCU%sgi^ft$o5F9Wc}Ubt0QZ( z0M$LA&yn)RsR9R^@=wJEG zEv}oCT)s9_yL$QZcycjCfGp0Dt5b-yf}?<5Po+oH<%z-xu9>ZtcYB@sDQlEi)!?g4 zEf^@6_a2X3v(f-Upx}PbfEL%LKxct^ck4iazk-NgOi{tgqdu}aEcxx})PH&j_ET6N zIF6-jp@|a(pe2<<7A2vdPTg+C z1fnaoFNL$stF^+lqG^Bp{`63Bv0eW1DXUqoyASI0(jqBB%)gMyo$gX4dnYTcWLWO+>#Bs`9e=mpd7N7Ap>UYA|B+k`@Qzt7dxc;od;40e3u z^)U?UX{aDjfR8f$D z_n|w16^ZwMitrCyle4RZgc@?!rBIoU4Gs?jb<66N))1o~k1R{zSNMEZ|1vcu4L788lheK)oHG^^R+T#cTd*4WwtaBG!`$s4gP)6{)enGt5;oGcdmopPJ08CS!zwAi|xjjpsjG^_AK6 zxtq_M@UwY4Wfj=?q4^M-A;Ou1{Xu6iG&W)up7-kb{!U03Ew>b(o&4bs+v>UGRtulw zbRs2r@6&G_RV(UD3ueSD=N5pt2%~EHyJMGAqYrFRvN4W=!b(wlJ93jF-SCJVBBCUa zN=K4xfU0Q34)_?iqxOclE*2YdgI_O3oiwDD2v|mhTK#T4ycV-d_!T9i*n~h`XhfEL zXhpTsfGHVgY$@Nevxe#`%WLa}?PA1E{(aqKGN6?&W{+G_$Q~9MWcD)9$ktnL5)qUGs-|F5-v#))=uzc+a$O1C5PbDV0>7Uw#}L$*_55svbv+ z@610XDZXZif#?}g^t`1Y(nM^1CVq|6@MMBgMn?(tq=J&WQ~gko4>9xuv^#vCsoCVi zY?+*qwf=C>b2hTG^JKUM4ob{3Asv@>;w5KWG0?t*h@dA^Q<{H>V{FAd8doqkG``%7nXeL#+}T4zIE1RxBPCZU1nUUDjh77WtE}ic^@dB9y>X$ zKDA&`kc?fX>urDc6)BE=;M$x$-QRjnGjk-V)L>HU>>8z5EWxyU6q|2oelS9tp5OzA zhGN6)Qv7^VIo8@m-ma;y71~y%EzT?6X44AO4J~)HE0vfjv}GQ=rW7m|54b3Mi#J;8 zcy4Hrtbnk&GH`?$JxyH08b^{d@ukL{&4{?L*f%{aN$O5SneY}SUg?a;2?}HM4AAYP z*bpwEXEQ==6;1W_afMJ1{Y!_QOVs1;4B!oQfneCdJqbpU)+{e5yVv{3?191|IY^mW z)DmWvFQZ2WK4~Z9vP70?*qo=sWUuk34x4k$jz)1b>hpoN!ok^m#p5=uj`ZeBD}MC! ztg0@CTyAuYD5lancHqfPcoC;ZS3{xrjN80xr2V}o>Uq~GB`RQ z>A=mFi92Gc3`kiBWjc%&44{4(fH#Rt2WV-}?Gdvery@oMIt54%CdQm&g%4`+7n-zr)ujtY$ zBl|40Jzc)LrmA_4Mj9U7ZXAiv7#EP&LqrrY=pR|!c0D@n^@xeu>pcPu3R+kT_Zmtp zNP4SJY(ojs5kkU@32@m5;bj?ui<^58lGMaAaKJ6Z6P5bI)omy{7~K_!FPj1BFrV)@ z0n!#brf+u~kP*W;I56%EOA1#tSmpKP*eI;495HiXAIy&|GvjL!=%f-`)_f+K@*05DBso3=`+h$)kewxWWsB zedj)U(nvqA=p;_(U6M+GG9YjDjCVtpIYy2xlF@$m7?F--$v{j+S7UF7%$!I9c*G*P z5s{t@z>>m5Oa;q&sU|>)+o)V>Yp(R%0h6^xw|TLIW-Yvj?G%Y`wt71~G_=VpNo~1- z*60_PEIwgTB_oT`p*Zi;Qum_#kgb@jjz}@>h;7+>@XpNPL|fx>N`>;z3F` z{O+8%+gEm-bwyMgNc6h+95_Rkc+DpkOsvn6SR#3@3k-EZE*q08fF&Bbwts|;7B^r8 zH%9JVG@)Qy0E=Z9HM}AUyecv&PP%NZn{+1BaVR#EVXThjlGS{UTxuJ!;@GYwJ3qE3 zqzY%c@V%b6BA~Cnp9K;&8bNa(p|IE$*05s;Q<2e;pYC#1p2XUtdACei0U;&k9fW;$ zstBnzj0NbPoE4!#ur!Us3SETuo|+3K%|;Fsxdq@9f*T#!lsGC$$%K0;uyX#1JVxgr za2YAXfVMCuTb}@o=V7_mv6gJ!jU*O&#F=w|DChf!{e4~}Va`Z##}Jf(3bFZNZ%ImS z;Wiq0aY6@$?CJ>p33pK3(X%RU%9Oe|^O51N>nARocjVQ;gG z5|3(dbvub~NhEXkyIep(FYg(*?F{E-EI|Z|bas>VRBQ~c+GlT!D{6d$*b(nH9woCz z@Jy(}q%gy?#7-mS0*gi@SpEY&KW}54SDLQ}dNiErh!Fh^lp*-wP<*o}b+9RsA{8yO z*pqvkaBR}F)`jyJ&2BF7!sZ+0Hp(3lyoKx1Jwth7c>{#PQC^S5$Ow}m=18~kb&x$k zNB3og)eQJ02ArP@2^#%Ecm&o6Mw4d>T`~uU$luuB{d^d($m%J8$&tp>RY(F24^LNy zcJHXSyDj{u1S7E*&oYEj3NxTafG}iowPQQb=8P?zwLvRBwn+dFZ|M?rJYn3%s{)8D zor6aKQEwuLNPB{WAlWpM)dv(FcDK54{a4`;u5+bHQ4~|A?CtLIaO$(5qgT&`5~$_L zhBBwaEFY{;qARW`%^cPigjWn6Y6<4MFnWE5b6CKGPLJ2n(DJKGo7e+cF&=ber?#PqBqAUw zPZX_n`>=aZku1Vg$~*P18hO>A#@8g$y=~lD`!x%sE?+={csh}_MVJPP zO4SWAJ9UP+4W?gv&6U8|k6!B>^b*fBlSDpxO<@xxc#!woB8DVU&Kxi$1+3Vpz2#-V zVaiIrB5|f-p)rP*cz%t=aeO}|&p}Z+nxSkCQZKexs1pqIu&dh4q-z}f2%HQ8QRJnC zZJA4A6n4CTAw!7o>}09oomW5078)uUamLL*?2Bva&|Gfc>6yAi=87^+ zo>vr=UK6$ysO$-ne~jxglx*{mc{{?rV|$%_-fo1Q8#1J<5NcVn%CgZ=Fx%SgGh5P7 zHZVRA{;VgpjSYukBZnFoA&}a%Y=Y3Z)jYkt3S1Zp6?@3l1!ZXHJE5La_A?HXlZP6m z{gQs)qV-Fr2E947p*OYx)lYx-p`V_PGn)_JpH+9~o!zDv9tHJwtxb?6IQx|0M3SFI*8l3{qMB{Lcok|u{q(qpF95{hF;fYxrVX@kjj z!a- zUW!&n^5QUhZ=pC@ITIptuqx!4FIZJ0 zAHUyxf2#e#<2Nr~dh@N1aKUWWJl0-(5G7`CHQ;Ur$>WU2Lhok#W5i@juD?#Ls~uy^0vhh99M za>VZ{S^(g#fJ}Y3ehns4by}FI$-N}>)=9LMnH+wD?rdf;x4W2p$`iIPigqX^ccJ6x zhV-Ox4Z`BuIfAaj#TjvOi86gz%))UUyE#;mags?IFtICvB%A4r5)i+^FFJ$CFg-L2?En zop7L_!%uKQQ_r$=f$?Q63E4Yohhvpkg-jkVnS@g>np8v|<&p=_yGjqcxI8eI3DwA9 zK-2>ybdv-#pvjWKU9H2WAkVF;YC5KgqtHZ%vxUnctg9wZ#qC4HaCs%f7Fh^UIIhP^ zcTiU1M;Z*!NXylLWCKj0D#q5U$X}S#C~9lBI14@1%*F#3+eyq6b}&d5NH`!wWcn$g zjCoOt$zwHwC#pKNP(>aOt;vWClqr#v*?+$6gD|fL^DmaeoziLeY~0MDIpYyti_3vs z#-)dG^zYk5ZS6kYE^)Oe)CgR+9i}H_-rt0u5cg%JZ))&KmP^#Xe7~9OSWEP1E-3R< z&{~vizLjjSn#7T@c91ywozVn7!uFj^U09)owHKaq+Nwc%Dt;=GAr_Zzi2#HYUd0@r zMCi?cCBV;_Pkiq-0q6e8KLYzN4KQ$E!J{(&xUp0-<3cKitj&}+XH%5#7}elCpS@x{ zcmgdo=JYR$8w2qWk4=dx+*uqn!lR5DYL?3iWKO~)BuHbpjSzhKgi7z=o>M9pY*ism zc`TfpQZgndF3KwH>nO%5f#?HBhnZ*K{AV&na^TcI7<-4+9!`z$Mu^7AD8xI0N?VCw zEV0S4(b?KGi~)Po8wV%T@_uT!hr1h8b4r;X$f1*efo~Q7&@Lkg0rw>sXbcV$Qh=pA zKx@Z5Zh5FhR&prA;p0(tnu!27t(E$xIU<_M9j(cBN@D)UYBzmyN89p|CG)U#5hTjp zPkV0R>M9W4bKJ0>`}T_4GcrIk2@!FL5`gda7s|GCKBxa_CX(RMWGp>)JfNH%3g9& z1Z4^*GAGu&9MMpHx|9eXu6XY&vivH3?}@+IAU}b0tU8>VWLE7bJe|XMSiEr9<{~{^ zyvtf(D}^CP(T6YjF{r8ov01=W1ev~|+>Gu~p0q0iBcUnGK_bpnF^POGeuQv9RPysA z3YK)v&m=QvcxP`i{i<&%z58Czyi6vRXL)Jrayuol-hC$Pkv23`11f14aqsPSx6_4I zp`pnJ&IV@q&!{8MsPj=#cN1DolsIkm56t|GEum|qYw>WxzTttm5}Rp?p9A>f?hkdT zxr&I>$j=4!jl%6^C)CZ;4+wXB!5663INGOJ3}3qrwscDS!X4on7Efu;vdo*?f5Igh z8lb|RR}BF%g#wEB?HOi1BIfSaQwDaiY`0K&Bg6nGLL2Z_o+%6Tl1_Y%6z%-?lC#|z z>%QEvwEcFtB#dzI1jwMVxOL_yKno+$aMy~k(&U6ln}8mNcm%8{tGg_1{s=yW5uu{U zaOiQS6)zcy@{Cci68YlswiR7yWX!2yyTy=}axiU0+v-dYUk1N;s}cbco79eY%;bW& zuV`*AyZG%cO&NAkLh-j^$Q3?7rB75d+Tmh~>a`+{Y{I7up)Ky4+(dEYFPA!o`i$0e0QP$yp0^ z5MfS2aQ94pPs6owb!ld+S9^NcVyy)?Ki^<&Q=TQmS=sPLhsU7yV?t6Sc>NRVOy|Ykx#O2Eoud06;4^Doe)g;U} zK#8Qo_u0M!*9l zDMXo4di8Oa33UM!h_Exz2_~F0{#^=2V&kFBY zW*rT)3=#XInR>&7ct?RUtr89rp6X=a9LHIVGJvX-Bw1@!Of}AjKvPUmqA=yAikP89 zs}w0eY?{qltMjP0ceF>=eC2YMu_OZw`)YO8mUIt{kd{v^j>6eI6;RHr=bkQQNe1b7 zKLtM-IXJ)J0YSOFDQl5ruJr;QSJ6-5hq_CnV zO*{mVOH|uELJKUy&vW*cfl1(D4|x;LlDiE)l#)v)gGsd9sxQUeB*kq2*EUdK4K<=t z6d3U>6U(}+m-d%I*_9#FrjL`MUsbCW`XQ#O5n4}%-yNxS!jr+92iD(eDodm*$QJpf!h2I(f5|7=i8ztVE_%$yAsc;7W=MO2NJxNv_ z5gDq|^QbIQnbM~?(WhkM31n8P7v6ZnvV1JQQ&r~aA(HrcVsoih3p=xg?&e-VftEy| zhK&somSb$jMuw8KMZeRi7#b1dNpu+Qj=EHWkjauN#t@FOCY^2~jJ76bgl^i;9L+K7 zvl4hSJjlzDv^=SFQ-0*{0~TUZm&yWMR$heP^FrM2XZTNioG}i*DlpG9$yLD;MARpS zBK6g_bsHC}m?k8=8MYP)5Da6fNaHW_Izq)2A;T5`zkm37Jfv%qE0tX23X*7r3{>kM z!?+e)>C28Y)$&~+x3lR|P7UUE*^22x`fw5MKZt2UNT~^mN|IfkdW5AZ%Ea(+t&1k8 zwbT4MREY$^Diznx=!rBAqX9JziI1%_cmPa8m`*z!>qs2B86oOHRTL8Nc`qYmzR*;) z@K;QeMf9XOvdjqrn_$1DfkM__6hlG}qurm4MqTOZAQuJO@m^8SkjF1f%@3@U^wb+n zf$gVJD2C?9fk>E7#QMuyghW=4@fHc|)p>8)L}amh170vKuoTVe%1j9=KVfTxKaEJn zNdP$-@tiW3Dh%C)FmjfT*%r}z05$HRX0=99eMWqG)9gZ6u=Sm8=gBs~dGUpg2AWO$`2NLk%HPS z7cWv!lOBIGQ&2l&D=nfR3FVsK^19L%&L)|T6%gTC)0^@Ke zc2`?I!{H-JJW-w|=%?$W0tTuMA#CD%rLc+z9y?i#Iq`@f#{-82d)n~LcQ_(LX7yC{ zQFM=9w~={Z7+QIM zv5g`>k@ocQho78y>7~ULdGk3tJyzhNKhL7SJf>)={ni)GwO(bdUn(aSai>2#@(iM6=tFe5pwapqA3N_LJ_-<@fcFwi_EUUa+sFGu~Q0d#}TK^U+ z{X(HqmYK#n__xos{(Y8xWn9@Zs{Ycs)?Z__pUkTnNp0%OPkCs~9PbEuG}O1P-#gd( zeb)U!~)`J0ZRR^-o4 zwEm+~FP_EH%KXO@t^b8(emZSN=GO}RuM@3Lo=1Unz|9OLpE}=qgC%|{ZGxm|E&R&) z*1yL0Ur654z1g<+e|Wyt`UILvr^)gp8S}M*%b#fdb1e9CX`iw@ z@^ZiViPrzfa-UDj*_y~p{!gE1{UetA@uZ~9_*W+6)e*UL{`$jDy!6tD8Io7o{KuJ* zcU3dO7azX$Pn>`0L;3dg@a^yX@q|75yWv~s$GqJA@a?64XywK%2@#5n}@w^6ol);$Bl3N!(V#oB}x+1Dz+BZYqxq^-F>)DHShzb z)4Be^$zku_{b8-Kb+LB!@|8EHu3o-+rM8OHio;(oy}o*73RZp4!mze-0+*z1Bu9e+ zw|_tr|K#LKNOZ%~4KIK~#;|*b9qrtC@9IEZdg^Odqki$yBs$sdBAQR` zM(fu6m8c6Di;vO3jJw5KKj4eMzqN~$NtQy7uXlTUJ?&wV7CJ$dc(}u_1EF((^HOcE zzunv6->wYn;Aj&b^7j#;2tRqf3IkD*d?=W|Gzs^T*Py?JRI|$#dN>!DW1vHKNyZA$ z#UeN~6iL6w_xpQP2TyugVtVK3a35VldBowumAfxJeh7y#J|X0q`=3LDZW(L=;~gN0 zAjzV$iP%0Fi&6qyn*pkVAYqSjR_zro{Ll*)6k+JMw?D~8J{*khXcO^{;vtW?Nian8 zR~#l(_3Jn1Yir9l*6+-&&es;!YAdVD?=D=Qzh0})uHiS79CsGhZ!X_nuc5^1?9%#s zwdEVN*`@btiwjHFFV*J1v9db9wl=xET3cwX+*+8&vxTL(Teq(-EWJ~^hI&iOAo>MR zI~rYIuCYUFYGHnjjkV@i=We3q*=q~87S`XpGsTdgglmDNcWQ|M}U zZqD-&`cSd8oxHKSjOK|>)F955 zSZ`@wTOq0iL19Kvgb2HhK?hi_&(GdMTbQ1utZ;Ku^l}o+&~EP>4UZ1H?RL$Qlgb5- zez}g6fv(nH&R(0FlxJJGp#nrpV&Nr){(b=xbZ3Y}8(PYl9TLAHM>_(HtdH3P`rAt< zCZpu#A-MMsLut9U=LTFn0Vh!28<3yPKicXZu>ZWK7^pf5nD@3oxn7^;g>B37a>lp~ z_9oNS=1?OG{2Evy?xwlMpn^ed{?TwYd#LS~tH$#9HmZ=J!WzyHQ*KdFWKDrnP|)*% zT$6pJjO0r-eFL!b)`3vu#MeaUs*lowbBX~ypJk8UK`7Tj`dr!+e5Fs9 zhP#fFvi9trwu#NI-3E^WNzT+7bs!APrJm!N?tpep72fl9ss>2Y?Ah(S5BTmg5bACQ zKm5$H-!h&L)a3ZK-h?*Pcp)mB3Jr?JN%Ti&Z8$TH?q}_lw zE8WSZ8sU5m%>tM@cKs7GN~3^TmRVU)5`cvcR*nI#auADBxk<6monM zZT-ic-3LYdMhzxg*XbARI5#*8>N5<@GB8IuiJE}mQ4OmKZqlLmJwTwBk_HnJiQG1; zF&J&g@AbO77zhW(k6x=0e%{^(CkYn-H?Iki8r>q3uA7td7eX@yoA7L566pwS(<FGe8CM)M>X2IT zF9s=p)E|`2%g8MPd3jVD0Yk{SBl)F;Y$S{mxtPTgC_Gi9;pWI@D8<2z@Mu#n$;0|B zgR4>@qEEM?1H=VH3DoX&Aip8x41h~Ksb7D^C_5mkaCe9;zz$t4>Hi_u293gcf@Z}m z`WTTRBA-IrJ8~`hbj>!yI7`U{#r@;SCnnZ?stJkJ%M)RHT7vxwoF~0LCH5U*COw>n zZSEhq&#u5U4c)f7rt{4xS(;!C>zxN;kf>%t8V!LCuzjct{eXL}9tsXSdVpY(6dVV4 zdXJ`v#p_7@Md2rdUm>|n>EZ!19dc&^@qglxR^2a zWY9E;wqf6P+v3G30ajs?%41!ufJ}OD06hqT%w;Pz-c{bpZ5m#E^#Km9_XauQXBlUF zINZYNa=Qx=iGrbRHje4zQPnD0duaIxeg@c}fon>7C6LPghf76}%3`O%Si>Nr#i}{>cZq z-_K(A1d)|6x*gsVeG%stj_K4WZ6mYj7Q?g2I8=MW)dXC^%Xzh%G5JUX<7r4R`~9JyC;%uU^UY}Z2$^%j*)SZD z;-iE=Qv4b|a+Gm1=INvyLng}rdVqrt?!0K!4aGQ}pmszs7ePU4jg7nXDsU)2&r!?T zg?@78S=HU}@TA-dU@&ouw*w$@ynT4I-vFq97fiL?he$Ugca4inSe%gAg@3xDE~$Box(Uov z%|dkp-j?AgkHx34EzKxeP_@ug<)8}FV`M-^dce!i`}MBtx|D%e7y>zp#iKp>e4 zIh8tv+hUE&(S*TcQ^=9JWLI@Gc3zoNG}r2ni_Lsg_Z1@n$gkumEI{nYl719VmpEm4 zrDsD_q00i2$~_Bl75PZvI4DcCcpL;KkWDQf8%<~r%%=QGx{@6_=PqE%--1-u|5n^E z7fdeW-T(>EkEUUB(7SjM@y#n|L>hb8S2biaS+y_M?-u! z(!s)B_00AZNilS4{CU1bt}CSGrZR-4Dn<FvX1o_JqyeZg0r^pu^)Xa#I-R zl&ns^HYKn{l{Y0-PFRTDR2l?icBUgVD!(iL+dn~05?Ja)PGyJ-=#pkV%|jN?N9E=U zg{3*kZ-PM@6DbG9ctR5qM@{{m>%}vS=C2}hJ+x;4lj&{;oUk7um9ZM7s#m)tNb2pw zMl4S6)D8-?)ws(0+=xmosWW~^;iyIyik=o+DgtY zE}`U~@RB3+W>$D*@m&=DbXwS$s}=ah;`=D@c`r~t*IBuLcCm|cpY?J%r?WEm7LQTp zGlep89uu=v|}N3)2aN#9lNyjK3-S^RyJ|1m3Xo4n)pVxygi4CiJ>{ps$V8Edk;T+Xa2<8o!(=bU>k)2Z}tJz}T7r>rikMw8p++9ZD>POAE2?U7ZhZe4@p zT;>c%vRt*{v-ac3$mSX&x(MY8%dCGk?jF)`V-dtd|Ip{`pT5^WTsH^b+$ND-0R=U$ zk!~zEbc?OCu)SpbK@axeO#jR#`@#8ebhx2cz2K9))y`xzs66@vHAk~Yt5tZQ(bbw2io$e{yS9JLC%QPWy6jgMb4m!rs=5PNIoy*!X@7buqx1uy=l zG*>E5#XzY%Q#$sCIvQ+wTb1&8PI~1Vd{Ka*{Yd+U=SrX6!%6=Xc=o@JxwP=ojh^|F z$NgznlJlf40}kUUVsL@(czSe!KeJ2{K~@fCJO3jY&+s=)OBG>mM z)0Ex8ctp30lu8^MFjp+yc{ssT4@=3O4n5(MJ1upycTOj#?G<^3tu%ckX;14>E1V zo-s)_b6+SfeRH7DhG&dmR97_-W!s4J(&eNb>%yyJAAM=dYSI10>qLBBN7mro`)jSI z?{t294ObeUFeP-qe?VG53^?BzE2CfwRwKPwSJI`_erhQvv$2qv9!>3F%Xczu8>%=w ze;~awcaVPANoj*fTNLfKDn2wu1+vyLvUb(7af{F26F$^ViuM&a*v0kMr%*c*d%!jp zTW@Zni;viBwE`Qj6B(Sbl$e4lgaY#^xzC7!L>2gR|i&o>%qTXS4BLF6k#-2Z)?1S!*eRPf_q7mFf z;K+VMw;5aQk>ws`H19S9WO_ble~j}mbYFCv>2^`aHBPWhh`ADv6%Zg)DG%%+z1i?bT%qru88BiIHTi2+$EKG;dj z-DxzJxS}`|Q6$W!?^e3lugE2>ILU`A9L{n}vDzn|LO>Xb4l;MK7!DRFlDsd4~ypfY$ zfRbS4j=MeTpX?v@TL`6o(V;SF-SIK~W=`Jkh7<;FRCJ3xO$bov_Eusv-Yn#Qq#+xY zE~XZ(EK;Ro6iA6ckC=1NBO(#nN>8FzB*J;CwVZ5$EcX@j1RaQ8cIMTR~hmSO6a&V|glVJynT|1R5OUJE+Y(lrFq_@00{72B`l(-fS zqP@t8ip+9RT1bzA$K?^+NzDC~RK7A@YL{l15jNvD%C@)&#tO07Lm0S2?;YwhdJWQzCwg@mbD3qcIF%YtnwI1y}!0|SZ4b~uOj|4thnbU ztA{7rmZojbyUcD+naf;%645=i&A@c_~vvH<4`0Fn&xMvFn4$;o$Z@Ab+y9 z);dM(e=`0~yyrS8x46+Fnz@|l-pXKn`;#rP&>-Qthrr76aJAf(fm)luN;)*cKH1`G zgJ4~s+coTY}vwB$P*zII5@H}^;;ERp^))HS!Wmm;$Hy}dSCn>)mpKyq`(dcBl4 zcNn99x$moVIJe>QQ}aQKoda0mqPg(dl{JD~R>890es_Ih3Xy~uW)45s57GuV?jObZv0z*~sQY)t5zk ztShH83y{^r)JUI9r_efOidp3x8aE{9gIiimzA~HSs?RMKPLPO#d*1WC-2iJ?&cq}B zonfoSQ$~Qv%WST(AOTYQ99Q{*Z1!8NH){?{=`zy|kPG5Bn{rYmp%(6_2D8b4#OGY71g-!R%)u`S290{0iuVBUyDS;Rfp37(_8B$3i!SF_4{cH#^&Vn zct>t`3L?=EQH#lDXJJK9rY?y!69CtTG*1=iNg{j)GXx9~?#swGQCBW)8dy$wg|kU4 zC(Uv$!=6OR9Nu5FtSN=`knFcV0M!gC&iGeiL-=2Ao0IS{t`MqH7oU;2=uiN4#;!yG zDdcdpLLIIC6J){#mcgHJ#2%fGBzVqE?UYISaLYl_(IE4ya-5HfL8F`3#4wc^x0Gd2 zx&bL(iE9=xO@^bN4-Zskkiqk{qW_XuFX4l3(HfhlMEGPGd*x$Qv(a zho&%A9#Y%T$d;LEP+EBK%g|P46sZIK=M&oc|8oTDA^pilof^9f!A3h!&0sToYq24J ze$3)rVwi;ysD@Fp$oU$Iv7&%n^G-S2!Lk+2ozh3g{Wg>a>?WCm0EMjO z)4^dDkc_@_WMy4%9(l1DO?bx1It_cHIxBFf{gtRxWYKt)A!`mbNSnRDP&NLPUSw8m zmZsV zwXrdKl?V4cF@d&kb3RcZ!y2j|n-i{!Bv@y>0+WM#dmvh-n=vp_e>OH?`3aJ&c-i67dSa-HT&O%YkMz4Dbp@s>9?$L$Y=$bd~B$K`wvc z;7f|>Q2ZCTXpmls=<5~l6#4pZY^#OWYtAQ<2@Upo0_h_ zD2w-sW#1}>^GmIt*r~DDd487g^qfUhGo`K3z%1oJ%H*bv{qBT0o09Y@l}1b}yF?Ni zKsW%s+2#Nn5P!+Yn#uhnJ(gNnLY49gS;Q~I6Sr~W!G%WfEe+EwD;rmFnoX%;@53%r zzO?t5ed8IP)vg7OdtdZfOH6(@d7=z6FL5iNf0v;^6MV`)Nz}fp&pWmK>x-txgyOlkm>4Y@T%RhT|+ouK-t;4eY{rb5pusTYAvf2d%~*HxWNWwJ^D^1GOoiXl0); zq1RK)c|*N#Wjb#m(h&qloSHFFD;xV$Xn0@xDeh@UF+XJ~iK#NpuolmkE3|P|h%N;I zm{C835+xMrF|_h41k|LZUcY@X8o~s*J>^-xHd2bL_Q0wUB}&TRUIvYX@xVWeDS2r@ z$P$ElspGBGuua3dkh(8UNu7jE!w7p>>v`Lzb`4?|J{u&2a<46)N8UWPj&;;$jD|gA zcIH&iJTLr!bk1fO+@LrXdJMv@pRtk;a5OK@oXgQA`6#}!>IptyFA4w#LBDD_>aB_jaWRRz)AU$o29xKcEZ#c)_~ws&X&cV?xZ>ujXQn0`aekIb z>#@Ux%|>Q^il)0FCi@z>ZH{iJAS=;5^$oOA<-OCgD+`Jr{>WKYUY7A7t!uOm{q*vh z(wC@yau#Fi;4#Wv-8sJ#kq_2Q^kX`Zh$w8iTq)`izHL}JFbsKg4tBU6o<`*l`z>vy z)~Sv3wK5}X64)bHYOJ$_ZX_R(8?G}suF*O}4oRxtl5BPR&=coa%ESpPvrcNcz&0&C zN?DX3YOlgT6!`Q=c=Q%1u|(dis#0<+kPM2xKgnwu&F|Y!ZX)m3POfh_l4>|yFnOGF z^fUN?dyOZ07GVJyz8DR}!`w%^T%)58xeU|%Fs;pc6SnymlIm5Nv}A^7IBBn}wi#P&UrDH zV)W&}IFT$;*K)qu(hqw$9Xteo@zz|q7?e9vxT4_=;FQ%BAQWU;*h>P*{xYms2uE=u zhhS@}lv7cX3uHtRkSZTqx4+MuArd>+ge5eV1eOjQ4Z_55ZZL|Nz9T>J$D8roy$aa! z>&xUT`>0EVyyr9YJdZ2)WU%4*^nBJu-M~R|Z?OmdhywQ2!+kZTjOxp*&C|c$G)>H( zoXwT&JRU|U?1QMnMjvtr{|Z}4Xu0+&yV1|J6aw={^>2DfbhWkj+NX`nktRmB zX%3gTTIvCw1b~IC^(=vXs%LZVM6b!m=kw2$qCb)@4XJ`)0i&bmAM-~1eZd+j^dQhZ z!;thKEZdBtIz~7GmM`GLFt`cm=({^;4EAM&WDsOVX@8VnKE6(;oANJ?b^~GaIx%*=+TC1gEF__0&Bd zR`gUE=^;oNYeH#C{T7)VII5C5lg-?Vw{Wk(QG!(9O~tVkTxuFmNU3>8Y~Y_4jnGx1 zh3XqZ3YWQ6UE^UAoW28A+Xc*Wq&`WX^jp*Cd&Q>|yz0wVQfbRfOtNu`8DR!+#xd-@ z*sP_<<q3Y*`T_kTv;r}%$$)SlF9{|mKdjblFBdX6#wY^`zB-ZI!;Z2c9q`;*mn2H7Kd zYmf;>B%oM@?BCe>o9N`Xw3ED<9`&%H{vD|pZ$qV4Hq>8}x8DpvWFUL@A8q}|=>MP9 zcN=Q>RblwMTYnF2$|Q(}q5%fW|FrcF(fUT&V-~w9Pwv}C|I60@ijV&J@*}B<2V2^Y zSzFuxZR`I;Tf0f+fd!0>T*VgQB>$`Hm zChFP#=^NYsCc7!uPMa2KZ8q%Rcw_sI>Huo{10@b?`5(No{dd^XSkI=CQP%d4t;IL@ zWsBnpC-(h+_r~_$NoJ_Pnf^h9{>6`w*Lh_{`HDG&0gR5#`Zd2|M{kkpzj&1?FZl3-eTKtHMP}M*}iLS z{#?V3uhQN9Z)|_U?tZhOsrB};HTkXT-n-J(XW!WV%k1h;R@+%WKeG462P)hveN4Ww z{fF%1SC!bbjeY;Qz56v=C)L)5mcQ|h?f(=X^5TdZrScAmdE6)OnpsL-m6YA7u#z-c z$U@Shkuv4Y65P-*MuiKcMT2mc=QUX?PaD-#-cK&M<#}aA8@{V6#-to)JJAQe2$Jglc4hfz0_YXXuV*R}hcoO&F zG3p=8w9tj#(|`>X+}_@-xOBlT>yT;{w^}Hpeg@a=p6hI; zfwBlTS5^3FU*z|&iXt+b4!#R)JaIE>m;2hdT0$_xI(%6lm1lKKvb_O`aEu3`v7kN~Gt>_*UcmAIq?)L>6Cm`#O4$)q# zExA=s#*+)l(dcXNy@$pJz1}LWJrS=u`f(>N!|JK5N)-W3X#;gs^av!5b;*6(JU}K> z6_1F*&FU2=2){_F6kcn|BklRscg#FteF(z}k^%rI-TW+hfqXGIO~@ET6aFx7%tlbo|#AJQ!OisIpTk*#wUv9>K@}GaSy4IfEeIGkSs$X=3}9)dMWZsDr&g|MV1V;rmDR z1mQE(G~jj9$dZ(rqV!%!AX!u4fUN<8l!nz#>wP}a%u^|WMK{!iEel*IrxPSOpw~c^ zrg0E1!<{ZH{X$yI7KjASyc7x3dvA$vi(Wms-XPP&%?X-OnJ_#td4j7A+fMGE6rHh& zT%K!6e=w^9Hx#I$N6W^LhzG>NO17f@uJpS$d$6nB?9RV4-kO%ZT4`bcIzLpj75AH)H(ClLN9MLZsuu$PLC3gRW>!?!s&v&4jI@o@&-BznfG!%OwX@|g=dt1G!?kVEN~ z$WrRBqRLjr)2nkWgx)jhVlt^R%Y@p>RMR5)8Z|D>RaQmD;+#Mo)jNuJR4O1zmzR}< z97uwJP}rsR3J?XE2nhS&{7ghs$RH#emJ(D{wkX4_fU_tMulKx0B3f-yuMB9V)z;SZTdf2$;_NYpNPrm~X8lli&< z_~poP5ibQO4Xd_38bT~nTgD7ajdIn=S^M^7b6bjU7eRiPj9;dN%b^j{9)U1YgF2Mk zO@b`1L}iH>0uZ3jYM=V;Inz8M#1Tsqqc8Uv zLrV$&W|b;0;T5Hm%c$v9fjn77c zWZ%onLRq=y<;BvswfDb8Ruka%{CL+3TGlj?@CK8)Qw zVG0bp|NQWdz}v91?59S~lbR``ITXunFk@@TZB~g5SEo!Z5lZ*hO(Y|`LYlCW>4jfn z2k7yBk?h`uD=4vtT=Fep$qGGL;B}5xO)HQ4=x9~rf0{^1;{lholMr}X-*U~2Dqy%A z%p82&u+^F(52=rO?nnpF^2UdggOr4H`K>vEvSbK^#qe?#T$+_tMfD}609sK|1M<7QcyB~!tOZz3+8U&wRXXxG89DM1on1e`#xr$tIN+%rE)j23^o?81yB>*SNI zAJ<0_r;|1KSGEr74RSaKTc>Ccc^f*D49v5wXLxV9aE7{0QZP2m^Q}KXs|r4JZ(}Wf zy7jN3MWj~AIGXOVbz5Fp`eA)VtC?|sxb<(Lrv=SR6#dPue;ds$&9JHW92@`c*3Zz` zQsSB#XPEh0TYrSMhM9U>o7`WOR(Ud{5lfkZ`JZh4ZFJVqtenh$w)LN***~WwkvOBH z2C<>~zu5XO(Z~omZ%T{%Jl`f?w*QcCnTGWFpZ+J`_?6Ek zPi7vm%F7Bf7@0P`vL%sMjikvppZ|Fu_VerhTLWr*M*QUb^KYRga&vymeP@HrK;~uW z$jsUL!7np&ewmq*#RIuEtzKxX~5 z-4E}z9^QX{_tW*Ad#%lftp_{zf4F(~-d)54AL4K95I)`9{qX)LyDhZXS^s$Vv)29h zTk9Wx*4oJJ;?uf zFgo>@ceQ@Ohj_H%ITG0)_Qlg7YGzq?53$D^AO8?f7AEMpIxzFzzqb9H?ne|HiN3=z zr_d5V@5@PyEL}%-FDtw>7H$GL?}~%addju(6#GGc@!n+Szm`||;3=$ayZs7BTXFxx z9j`CcVKJd;$6i7<;FYaTdu10<_Ko+8NB9%+VSjQyKD>jRAcdXHepEL5QPE6RPEv=U zm+AA*=GBJI%iKq!(-N(ku&DSIF#qID<)1b0d?4NMt04a?c?{3R(|i@=iWhQc=+P`Evy5d ze!KekQS~sX9b+re4#LsB{7r=$XFs`12dOYD;rzR|*Ss*cCb$SWR%EFqk!c3Xsk8KY zO@|?N)?dbI2vRqu8$!G( zE8{fnaD-a+VCza`&^pz|yrN!Ok{#t2)THR2&8Cc5Avx>0Hq)Fdk0(rKs7N|9U~uTIxXP(w8`11X4l6E5>4&%} zxoWL)m=j2dmTdh8VUCDCsl3}Tos#PC^BewLCJ>8`_yGp44u-$OEZT!QwuI+~mXB2F zvmgGXL*T15`bjNwWUsX{>jvYR3)b{~`sU_MJt8#KM;Q^odS1G}Yk08lx7IMzMco}0=Km>+|r(Hd`r#y+VZQ^n+cctC}YW96( z8V^hizw2bKh7)&iUBpJ){&+)5;&l#26Mn+kBta(+Q>4E1e5)u$RZCtv2bt2Eox_rm z*6?3J6zQ93wlwU$R)&KQ1;yuMrp>1>+tEkD3LD!w`Fmd+4CI7+8AxCYrVOk6;a>!l zclK35#IxmrI~$x}0}N(IW!A~@s{v#lX}i=xk-SnC1!p^&xG~IHI3& ztizU;%iuEz#PE=kr$nCYh+h5~|%2!TP9_Na{MZCxHjR?~Pbg$A0hd1gb2xgW<(INlN^wk8~_@ z&qv9w;Nu8-&n5nQ^`2#kp^P_K9)|mtphohc1CJzWA6h8$#TqvWI9+fjQAFak*wuHW zcSs780ErhkNv60$cGx={tcc&UUm>ERyKc8OXkgl;XyQYp&v#Kz(b8F@O0#Y4k%Nsp zPN9gq6C5$nnq0uH3S(|k%1kFxK3q=EX`A$ltcqghUvL=~W0}Wtj*k(6Su6J5* zm2%Kbreu;3HCnXiwif<8i<`Ki3mEP@A5I^G+h!L7@RuhO(mp?gi935dIZPo*>s=+8 zs}j{Pf-0WmX&*8FAJs`9e`$2K6x2%PASL_jq7H*DrnB>-BYjg(Aj`FCQciWVA>qTI zRXpaO+YtGq>Xq;LJ6m*Y$P85Abrdkk>Um`l!@0p;{0BhPu`?fLepYYKkfCTv`i;8K0lGTHK=rS{ z12W;FnLO!qwT?nVSA)?NA+C@6($L0cfLN#>IH`|>8Ok>@!|Orh2+E^^)f9}UWSC@3 zw!vg?vBR9>TY{MkGcb`mHhcB60-2 zQjx7dv)ytj3)V?0{O@98Ter{Y5&-r|o5P1SB|()B%!q+uGngD@N`7a6{6Bb!`8j{Q zcEA4BvY7ox^vHQg9cb&pCsh0y-}Ae5!3MJ`GrNZ`W)*d%O&)! zrGFBsv02$lT-EJ1)I7`RhhrEG z;q&?$FIUxV#gXb_(>TIheJ~%10I;9dWTmT6`Jz7Q3^o7+QNd|9iC&X8rtL#+nVeEH zZv^)<4b43S5?IvAY(RBJ|7bT&m&L#vq%kFxP#g1Ka4`Y*&@SgB>_SSkp)(mL8yV0% z3JT+1ZzM@w+#W%!GpKqFv3zzLzAw%B@goYRWqk8EO=1?}6js{gLdp>%1)Loo4abAq z$5@&%-KM}UYM;u9c7Zi%tO6t+{~ZQAT1 zjrHtJoG6nodO`APyh?|1#CFQ0Z)_Ha*%6mbGBm^0qN*Gk9U3p-t_TpLG$72}AuLn~ zo8sVx<|iGt5I{os!w(`!AVpt!K0N7tp(eZ?Qw@@G#j~_3%v4}PVa$_+lOz|eON$W+ z+%7P3go*-_vuBopCSui3@*&bANIgKl8?lh^m%3y(wcR|((dXf7hVuo;>f`3U=CEfM zdhCEn;kf{61T52wSE;RyG}491i5W878^FM*x=i0*%UqnsMt34=4tjoAVmfImCU z=0IA7TCedbKPR^8DAv>TWPHk4Q9nFS&Emp1nDlgr%)7_QUBP~OJ*)$227)nhUJGC* zY=%>w?IeVIr}a?8Hlw!@AP_1ZXF3$SDo7l3YdYL2IVq*sl!x;qNuyGJ2iY0!1c80Zzht*fLq#WoFI>7@RVHjJ;f{-!bW( zIxO|BcHd-$n5yCYJJTodnyON4wvsq<20j1ePu-Yrv~8}d!I0#OkmrqX_>&)}C|-+7 z4ij#isaHd$6F?!H0+k&7y2e?-0T*YJ@iDBKT?UA!gTV>XW5=3?DixNoTHuUCNc@^V z*^(O3tiVZ$0sbjQf{nl2fIC|N5$4F6llw0zdYeEDZfx!`)+tS;-E_?vC@k zZ1?Y&L{7oSiqG(Dl&|`pzk~Dbi8tnB=nWOCvHHOk+shqJ{g|wA8M8%Hx zlbD>9#sy%wTW*3_EMw$7O4xw0XsJ32l}uY=I6b-gnGl)R%NR9WO~p`JIoc+Kn?Dc) z`J%wyqckg{fovzV>N9EkmK7d-e4SQ_EgRJ;hRKWu_p{^M%&UHf{_HtIUO&ztHOdw* zbWDcB^Jjr>k~=@dGk}m8FVlM;G>=^d63npB$D_$U)=jn{IBW{1LUNUpIR=L;_M(I6 zzoyi@$1Dg(j~d>V+{};ab8)LN~3sPE9gV7Qi->BH{ZCm-v;5mIlW)1Xocoz!sMfiY7Tp0a{cJ z`xF?R;NDE#Lby|o$_X9}^}YlR#hAWTgF0Zj3s72;^|ftTc>0KMdU~KlEsKg^dG;7W zlxCDC&w$7zlqt|CDQey$H-OWz@T+bP8#+*7CWp+DZeyTT6`u*2%ACmq7lY9#n~N*} zpx(z-Ewp54Kr8y_u26@^3}pkL%o&_Q%Q924pHL_A7CT7V;jHKJ9wO7!gXS9OAv#4L z2ylbYH8!hF?Uf7ieZBxF<=jLJNI;oLHB7>hs9P$61`Ew7;BYdS=I%)uY(8W#fr^&~ z2F3Aol3{D1(;+ZnpuL3q9Sd(ffQ^l2{xPOES6A3b9oto6_NC}hHJvCI5(1(m6aCrx z_$D|>iL9L>M8&(zGs%NQ)uklJR7ciPO?ucAAZAkjSR16n9I})+h6mOkwB?RhDBz0Q zu8Ave3ndhzeh;CEJS^ur+rA==_Jpt{-hzAuBwpzJ#?K%x7^I=_A!E_`fGh?v-EbYO z`ALe7D$S%L^deWU)`1hEcHkiMyvt6?oa<2(0A*2##ziGOd$VWSKg-{ZS*yh<#ztyL z3jIXb+fBUq01_41&rH@Zf1pol6TTi~kNCx2%E@D33{YY3JQ#C}?2>Wa%krte$n$4! zs~5KD1q2$E2qB`FuPy2*CJOpuwH@TdU?Uq2 zDj_{zcgOm+1?ecQ`Hh|&j-JYomBZCuRtRmbKqFQOjyhflOfTcg;WOO&Fg!@crX$G+ zB8qGRr!pf_JeL{z6aLsf74JE{g-(P(KtKgVxMt1dq#DX^Pys<(cR2$num5hc@1|z9NdC*5!yigM27yQL|)^vJ~wWSt3$JMdmjJ&rx zc=@hkw@&6tgdzg~H!$50Q38xYg)WBz+b0lHLtZdyI+2cs46$j_;%O$xe5=Gqt0yCL z!G5^I*eqe#7NXPo%;X=`1$qK$*$To78!%O43EG6^ZxH+-?#abRurLsQQKIk}1F48B zV51X#fdXkLWR%n(&A5o4GQz+dM4~9LqC;b`fY}4|O_BgJa4W^OAZ2Y4U~~$>IRJ6Mf%tyL4D2p1FiNaCfmnyYVXwy={#&gZ z-~PdkRk*FC$6k+r_L70fzU&*ZN#ksYf+}$YX49D-B`F&vJRMHpnZj}x)ASiydx#e% zbaQ5+*?PTi|DfkJivXk)n-eK(r;-q3D*BUS8@>V{MWDu=j772m|9)@F)vl5$SinE{8B3c@ULsZpXQHYSCpcb1z=SU2 z?U;@7t07QindZ2HxpdJ+6T8|9Pk<-+6Ih20`?v+S;gg(1H~=DBx*ah4315RZiGO^B zK8RDxjIU5|vi%`Jsq7$r{fe-+JHIU;OK{Ar@A8;k-4HL|C!2iN&Zl`q5pX$Ys*!D; z8IiJJ34lKwgF}I3bvO$o{)wAHqIIO=q3c7>Eb@C+19_t53zIL7Dco9?Zdym^|$Z}7rf}J zYD%)T`uDf~Yqa`xZ)M&$d->mN{aw8LmcJwuIf+|~zrXcAqs4D{3+~{Q-t7H9+WNoo z{x|dYwga~Y|7824H_+mn-a>6;eYySd8{0>G8KogC zjV=C!jbkM%PW9(&T{r3f+a<%R4KX_yNf5cn4kw!n-<~=mutTxuC|LpFg{CUw($pc zts8MpzkRUUdgraTzjyncx88ZXwS%z3>?gI?@4S5*s|EcvYdv^|5e~t(NGh3}^5o;S zYw6x^atQci0AC4`L||^BqR`P9L?1j>lt{aA-Sd^ z1B*Xw-h0UM58L;4Ha^6k>+fxTw7L7)t!wXZ?tY9a5Uux724cPSV0~wIbK{eb)^}PD zKG}J2|KU9pjJS(J5Fc-T{QeHgAl%!&_wg=#pdaH|>)sFXN9*B->mPm8LN$tO>z|Htp@Y&Ah2OsXXKD__Y-FtZW-aXWkSby)MdpZ=#P;7j(zPWv?b$5Mx{R2X` z)4GpdcCN9RLf88A!+U(h@z(Lbjor=rA9EVGo_lu(f8J{C-rw1cPe0v!cn_!Wb~Yb= z{VFzy7j8I-S_xolnqvO9Y}Dzz^#{zx{vqiH%hX?w{N3zWu=^wio5!D^^552`jx}ycnBWY5Oz<@BJ?3EunA(=}k zi{eOP>1*$54eRe+s_G3jq4bGue_Xff!zs2VkIP3egwN8GRVxC~=?qZW4JM2gYCs$j z7oKx+sezmW^A(qf2NnfjqEw~^#@P_hd38%u3LSH3To#( zwPrU_r@|PM(IJv=15!$zVosb>17G5jHFT+J*)LP3XhB>OAt6#k=kP7aNGq zN%8Rm(1&A5LsmYmn+t1XDE*}qi2*Tt23e!xEEJyj-yed6!J~lw1LQp7@*f(5lC$7y z-1owU&~0_7Weq!(LK}=cYCRJD_kC2|KrtIGAr6O3CQsm2M?1W`xCdw%3M||*Bj=Kq3?^P;sEjn@&~SzedZ5}d-nWcemSK-+n?|} zT?vIhOZA4P)#f#5jF7yY?HWOtN?`u{r2hqp)k(%5AD-Y`77B_Q8q&3p{siaQL8gPK zYl6SW)1wQ2%^B!N3t*nxpx}P*GUtDPR*@Ze3_H*c9ACMH%H+7Lj)K1teT^zA$1I?t zf~(R_L|xHVo=AHUAeHv|Ebm*Mp#AmM26SpF?s5Zv!Y`#T+}I#-AFMmQrWs)f^>?Uo9;>$G!v<2HyL3r4k)&x(Od>%JINx*^7Onh@&y&l zCHmzzS%=l^2Fv*Io~^5_J^gMZ->d9IFF5N>8~_Os&QJn))Ph$jj*- z;o|X$XdB(J5u`Dkz~{+VTpOdFgfy>X+|?jQfZ7SjJJ9cgHoHL08jj~bF>X9f9|73P zLS#KA`pJKjbxkAGCZWbtiJxi~<;o}Hz|rt0*eB~plnalDY*-oM)5Du$Z7HaHT310$ zny__XtfqY!qlwgF76VJIp)SJN#3<)oVKNavY%|q&0!WI{o5ZM1;5##*CS!59M4zb)b8G-kiR0^wuyK&IpMz z+>~rW>6ypWaX=c!Huz2SX}HFJbn)zOLzp4|F%%ZWvpwu)%b@!WX5Ark?iXrNm@H;C zX;*XUu-tNl-52VWmTt-JUt)om>{&7kmnH*b+k>~Bm81meVHoOkD;6u|0K@IXID$*QyJ`If` zoHvB{hx2gS?OGDglT0z$NU7RS*7`|@u{8L`km_vWOM66RTxz)GI!uk{_6JL2`TkPl zIsKu5Pn1>arQnL3?U_Gqev~3gwVr06rlm;@%TAvH zN(=EAQ?v`GNK0He!-KsIY(TKl#s>S54ZvfS>voV#!#5tCL#zqjVnhgL6CBW$>JyrR zr+2!l435MnFP=!g(UWf|cF`Z7lkpHK*3b@n)aydMNq*An5JmL$R5A=Lw=R((Ts@RF zHy25hk!T8~$T0$bDR4|LKVMs7Xb1pN7%uqnt;8QG@o`#bJZSx1{QCW}uXv7$Ayx{p zG5BI|fEeO7w~lzQSb_|0D0!S6OUQxIKLOHsFO8>jM}8Z`3bqDX{r{te zN&>sAfmN0lsG!Bp3|U_}P9&KR(RB@d*@;sf*^=54d6bC->(~~3t*4QD@ZKDQAX=pORu9D@uMw_SCxodBYoh2eHmewKTLL`7J zZP;i*Gujh{TK4f>6@V5xrV)UEvXBjIP%K@;Ld#yiLWkPe@)!g?k}G6mBN>N;%0YPd zo~8mA+Rn0l2lIBBwW0vPVcIY{gj8j0I##bZB-W@LijEGDoDkav7?H@|3kr)9u~`)h zp^Zn0?1~x|P_oz}QbvOD;ierPu@-lQPBaY+r08Nn&`vs$bQ~_D9)I!Bc!1%VK2wlm z+SExZIn!|5NRIw!u?(1A-$x<}Cco)yweL3Tu)yp!Eq75A+;bqfioI3 z+7ko2=b1j}m}zGn7)NrrnPSiAT`(-8kU+-)n|H_eb^@fAra)$TIm(s+4hPc%q;xR1 zByn|3=)2EYW9hQDGd3zjlo7KM=VPglmO3p(1(>|oQ)c?HVAKr_6?V=RkxK-@tH)JM zHU@S?7DLgTo+HJX*hc_)#>9oQ{>8$Tl5Mqi1iG_yj;%(R|UDSt)-h?6aBcvRwG}}gcC4vn*nu&b4 zZs2Khwy%Jk6cp8w(hfZ-6=`A&lE6C9yf5&8XQh#eh%#zK9>ZaZCr~G>;wzK^hm1mg z(Tpz1N|S6RQ()4uo+3dSqiMJ34UL!?n-2?{hmg)q*x>@3Hem5qBa=oUD5|C+2-7E+ z1z0b;nH)wI9Y?q!UWrJOzPnHRXI)f(kt+!LqlNUO#BAh*?}mNIIF^pFj{^auDlPRl zr26vw@<0pmOV7H99xn-)7Z!0$&c#x6)s)usJ>APgrXhucF{QKq67vF+>KC-p@X2_< z{7F(ewHDVLG!B^{3kt&(?jN8NhYXRV9pKnhY4B)TD^A0-+Jnw9b>0t-Cj5NAb$|pe zrm8^1(meQrL0N`hd%b>^`pF@Bz5QNqwbQy!vc4E1?_{o4mvtE-IT|M&8M(59kY@=v zrrD~6soKSOZ+9};23a`IO>4enAoz~Pk zUw0}r_N$Q~k}C|OgU13ruY>nEr}3~0Iv|O)T{PI#FiI?wrb1g{wDNoERML?RPnvu` zmkbG+5DV-E#{f6i$;4V0?>4s+LhvDL^(&#L*$h|O@;9=@MzL#R|0(sEfBBCj+)egB z=jEK1{4TeB$muF}G#c)oLDggX6|=7M$~&F6^tB_cQO+nnD}u(q;Dx;?Y}>q_F+o-{ z_$U*}LIIi`*wSNu3zdvx^lXDgI~8>_3>*%C=@t7 z#)AvECs5qO>kBDNyD;$N(q4(>;rE-`nf$3SA#0f2MN+2%$-FnfVHZdbg0%;BzIe4FPvHLYF`GRko3HL!vD6iCtS;~JQxJ#gAW=LY0xa+d=pX8~n< zB`zN`IkV1a+bG9FIU}JAJ_pJ6$nKy!MxX-_8xi`cq^Pr@Duc*IRfO!aSR9Dr1aA>u zp9{T1tYt(Zf z-JYzO0OmPYxHglEB$nMAH##d!0F%K{Al{_|LrjqDD<#VY*4@XJfJ=(whZD6YPB0}f zHUv{%$qWbix$J7(pTZ25i+AwpK1z!)yI0DU(7r}(cHI}?#DVNraaE63GRaoZw}qe{ zm=vu1NDYG+EzY${&?!tu^~oR;ppV=hIS!k3bA;4;KE1$c87wuAvx$uWqD6{fi8BNm zeMy3wfJeI;ljzBc8@P)QxXw9D6K7MMHLgVx>2%;!Yq7_^Ya``-m`@5%=#Zdy3LLrt z-^<=^w)f&PqIkOR+sf}3eu*SUe#{?dDP?_moVnSsZggIG=t7Fxs{_b=Q4)5{zF?oV z_!41c7)Q?tV7o*nH%}4|vkvTwXhlpm1GPut7!arUh@c-|4OSpr>NQ-{h#HGCaF%FA%H&|*l0C9|}5$ONG2 zkzqvgp^>**Y0t+%9I?$GAR!up4VxYH(IQ2U59ruo#dd#}x=e`$I)t6QP*5OyXu0xuVQtiqs^-=g(hcBvlg@FnvkYJXuW)*B*&3)kU-hg#5U{e6h3Ta~cXc!@ zqrOTj7?Z5UlqElnSr{g}%m|!nO>P9A;!{pZTO(RVvu}_o8})6q!pYwdIgXL?IqE|r zj~Gg(r?1vT2k&jr4aHOmeVX{EJ|W*~G)&1}Ws_P4?$lucxjoL=9(3teGVRNHBywM} zJc;fN``ofNks_ehH7?POOi;)diGn4@sU{VruPXgjh(3+$Uj(k}QuJ~T@xd}}3Exf_ zmf#3)Vbh~>BsOXsLZaf2ta#VJWPKvVhJStsRu%JOvjXt7g|CK#>+4@>aWyiie2gW` zsiE>VCkmZfr2%SL7a6)q?pGQnN|%1jmr?T&HOPSGrb#9!;tlnsU#6kAyaD=98=&aI zDXZ#*Xy~lD=^W4`+<@r9Zo&~sDIo?|wZTN_<218}*;wZj=003)Vz?vyUh=VEo_myu z`voM^2F(ULSiq!QU42;9rTTOYxk!`qQ%NjN5L!172$_+g4{x>dDDSG2ViM-4RhtZ; zj5`q1hwn`H?s@S2k?(BvK#$cZhw$eKbS`_^x%m$4>Kn=iSe>@7JV}0N+sTFkSjt*H z6Qdu-rGmIMJsEH24qZqXk5L45)$j6Q1&>WR1cXZkER!IrRAvW}2f8v_bt zkUxE#khvr0R3ZU3PZ9PNOZl5d&?I4AM*@6;mxmc{6f+%OVjYwjcw zHwUdT1K<~~IGk3Z-%FwrTDbx$P|dyO__W4|^Io`dw=kQH3ICVPGa>z}Sd*x15XFTZ z4C0?Z#e&pWE?*&Ci;9=Pxb26$@1|itBN{MP^Zb<6(`_9KmsK-wd?M{rg{ckoU+Z~# zanDM!fp!ae^Eww*#$jm!M8vdcI31y7o{6nd4{>hzv*hv!uHNA6Bx!G$>mnIgo?CpG zVmX1TH0div*+^&}Q3-gn8Y|(VK0pQN+1WXZt-}vJ?OU;bx~7EoT-=ttql@Ny0XyL@ z7)3&(dadaBXDmmbHh4o*Xuwk+Q^qw?D$z}3KLSYlF1gu|Un0Wrpo5SX;7+Ufprf|F zEM<1P0SK&mxxog8P+2C@iy0gayo!;GTXEUj=rFHIl)_3CSp@doe!eD@(Lx*A#P!h*)Gia`S$u|v8qy!V_likJbzXQWGs$L$K$ z`5!61C9OK$!mNgF7qpd61FQB)Zm`A|`NQ}C`g3*!`eDQSX}H{>1-u~hJxrtX4~O&?`4VW;_`ih#YUaN-5=yN(Dai*Q>+6PnC| ze8M@+>IIVvit$T*>RLwGs2*-h#=ap*8_s8GG|O!0t}67z?FpB+%%N2Eh|ghvP_-(h zl31TyU~=Y}s_+33_T-|ISt?EO#56&+XBSIg>&Zp=*^;`*G`?A3vyZrnLb6JhM@N3XujUgE{^oFm@hINE!Y##d$ zTu06`v!U-eZo(v24)j5w=PFOOQO)U{@@ii}p5d(QuMSL84?J`w2)C7Dn;Mdq0Zo&p z=qEq!bP)vWTJ>dIev69DypEILLSi0+mxSAu1WKSeJVw*b7NUYJ?J!vlx$=3vV}7C- zv=6N;Iq5C6Zal_Bf`j|9$wc$agPXz?cw**4N$z6Gj~O6O$%Bs5cwnMAg2Og~m=3sMkLX%(xu)Mv$ix27~ zRvpd$jxQ=hcyp|@jwVNM)3!9sVt_-Mioe^^JS`et@CqB;=&4z~k~j%dzIye!j`9RG zL3wwO{sYdLSQU`Dk&^B$TRl(VLt*C_5Q#e|JC2~c zWG(StCjbU@e)udL>|<=4bh_L$(&T5t4fQaZMMoup1&Fuo^lpW+&^kjWcB#539aJaU zWIdqukGl7Fx`tgjMGtz-UjpBiE|omwvb$`Pz^jjyfx3!4=GrD7CO`5Y;X;8bGG>uG z8#96UF|@~={mZnjd?InXY<58`KV0AGra6?VoFAGZT?oBp3tv8ifc6S-S8EOsD9Nn5 z7%;I8n*kO*V~(dJWc6DG`OB1LUsyxXb&x4*_=>>>qGk3L{1>1j));2?+6`=UnJ|G; zv2<+sqWRhHAEh%M1d2aQIRhnVCpIclk{s#x7LsJ-@px7&{s9X zQ@{^06^_dK>38`RmQ%4iTCh{xOl{ekYFZli+M~(jG=?X%7|CU434*;8VZ*}+ z*pOq^-H9Bu=#Pw{vcv85&)J0$T@g~^bN*oLW;BBnc+_YCL)>n_Ce^4EQj&6h}3xn_4S7#ifDI@h%&>zYrhv(%ts8 zFMHXiI|FD@q%>;WM#xvTH5{0=xp6p`(h6ziv~;Po3ua>DUOJfuDOhI%Zg|KAj0`bmnpgouoe&I)FDX|yO23cl z9X!8sNX$seoBGG(G(hHfm%Izo^FGeW0CD0((?T0A-np^2L-5$%=^X)niAJCpJ9QkR zWE^C6!O$NZ5;#i9j%|Di`(DU>*oc_)de+qI85r|Me*hWW$TXGAu5j?w2ODj#JKU_| z#<_w77=^rzd!ks+1J-GloyTOr6iG*H0vlLR_GI)FOJKkc#@%vSX@oPgdnfYeKVbhqW zch4rMHLJ^-WR1{)C73P{I{el-y%v89JYJ0=dOdPjv1C`GfgC1C1UbUpta0;gsv;mw zHDj(~|7bXM9Sz)0_in%aXdZGy9>0<-cY#7-kWsP-aSA<%TZ(^Q36;4pTI5asF=b-9 zt%h^VP)ieQo-~hnsE%-f9!ng89Ycx^C@~)G6wMItg21Y-i)L7v1q*Vt@?77(Xg!yH zIN=u=-`1{z%~y?$b-A!h!TD6ERZ9yJgR{`G`FDW=SxW68+r$7OT!rM@0hO!e-dwsD z?Gf{&zaO87zQgY*XX!Z?YT&W8=7{gfL}B+ypUD(s4;t|WQmvRO*VTIU0b;~xn?BU3 z@FVUA&<$Vl*Z7ELprnuC&=M^|r+y@qdfC)W>{R9uIy1WCQ0YXq8G@ipq2r3_IyH}O z|L`dj<0^gdivW)MQ`)M~^IQy=+(qk}DM>KG%H{M*=j7!kAv;jB5TQH-VGlbSICwvv z-ScR3v$GUe1Y1U%_(L)hcI`$>#_i-4B72210^I`nog2lh2t$VZ>oTJ_txo*hz;fOo z|zt$mVV`#utObvfM3M0k00uY1JjVs+;=3ll%~l}H;mMl~4^mnwzvqw30=DxCNd;Q9nbbSB80IC> zS^t3lb!m$Q6IVv&9B&*%ge14!$E8uPGn~+)xyPXa^jU_xOAWip9zK# zxRPj#Kw&$*>Upx-3^^a=>nnss_|at!VYcBjW(m!<#aMdw#TI+lwXpNXYALzT|6K(hNMX>J|0-nC(;oiec&eIRO)avO+6 z<~vBLzQ`-4=&M;&4li*~ViU1XOmA{rN@ir2qLeJ(dgUqXe)Vob&2vI5oY4Crj8ec} zM=tjTH~g^N6Y$NjqY0L2h^3JF7T#ejflLWGK{l&|ZNA`7rkctrw*4C+n7Xe*Ki7Yo zW##;?p`Pm<2F!2(C3?Y4uu^J^v_f=96{G_mrAu?c;7Z15`RAAL8RqZZBx-QN%*ikB^Ys#T(eu}qu5&0~Cs|j?G#}>`sZ@6H zs&$w%Vy9X}7+#+#TD zY0UN)=;d%0S8>dK!Yg*~@Z1=0i0km5pJ2D&IiDS@%3n|~CwX=UyV61kuKfaP1|9Vk zrHKQI*=xn)+Co}4b5$dUg6re#nV!tXc>0B2IxY*Jb2+(sh~n{hcHlXSay0~~@zJ5EwJQOP&Cx`@SW-y8H?Ib1Sdx?UF# zpyc71#$?o!ri#WnX~Dr_I0V{n6X$mNb=$6Ra{M#`S4<~sUANB*@N~0M z5}_lmx)AdTp$cJzf{IHrYAeW({YU73ozAtO zBe{;{(m5<>DI1yCDRAQJo=48`3FT!evKw@(t+A9EOKxaWPqxR4wQtsPiKkylQNJc7 zZ4)weNr-2-s%VU>VoVkDsDPDtrQrgfk|OuS{#Kw`4^Og*|m23Qmk<3=H0EwRcx zj7)Sc%<6-;I*7eO9+#5FOA-O8(XcNt`Kd7?o6F(oLJn=%7V~7r5pKYp6+#1?l_d-H zPbSFRmKtz4U_VB^3*8nL>mWW5Xi$C#<#~)-eX^x#3Pyi7al%(1W{3yoKb4EeRGbV< z%=`RoT$6RNxE{P0jFlpV0xltnW^QXVIO2^G1)6e!2Isn__duw*bm4zD?Sv;JP_Oq^ z=Pk`N@oLeU!s2&Ggm_F{e1#PFN}`BUeNEzsU15Q-cFq*!0WP_j_92%N%~^ZkSDz(w zT0Ls>xTO?Qnfc;YxEL+5ps)c^hyt~tWW84lfnU`mi=tq{=OzU6?1ho+xAG8? zoQKG{7H*TVO?V77OJCjBcrtVWdYVwAP84;>0R~%rYC1WE>x_!i!8ifUgQ;3gLVqpv z8j9jai5NL1g)Em0o)k>S zbrbX`fH7y2SZY){h6#%EjBeGS@}0T7X_L{r71SLMv{Fd;Jfv&>L(9O4%GekLM^I7L9ocx_^ zi@_ye(8J*w%4=hD9QJN7C|bp&DaU#5l;o+MpsWy19m9#nSQ;|F!tupKV{B(y=cg^W zL;K7~PF+mKh`qXZ6I=MBN%q;#M|@PKoWb+eiw^QXe_o^Hs7!A;*--|> zmJ%I#Y~ssdI-GXSIV)Qza9!nP6Wa-dwqf&aPhy$nxlZcq-@YQ>$wy??xtv#>!RukY zd|AGBoL8B0wxWMLSg$g_C3!DjvP)U7enbJW`g+=Q%})%CN4r9jo+SsJx`@tFm^r>- zNmpG;ssz+Xr$HlAvk1e(nm=AeeIy3}=^2n?;<94bWhq(Kz$N&eQTH3Q1JVD ziZS5$z}OpV-6OvGR3Tyvwpa#>?qy&s%oo3ZDQvr{!TOc@u1XGW46Qn!-Spm+XA z`Vh%%mGhKKcmoT>5o{x&-t@6F^gj6xzJe9`kf34a@_X_ytYZ1Kiem|u&^CwQ4?5+I zQP@2QX@W)QgaCUqhV&Yk0SR#kR-7$9)kaq%NS>upesp^@L^;YhIvKVjCM>J&9B$Wf zHj$Uyg|ZxZNYiA~pL)$?W&P}cY9JpZ$i0-dY@}N!CgKk+>DsCJhFoRs%~R{kUajU2 zGV!r9))cf_X^$wf6JT<1uLR;w9xfWKjZ=^ncHlUp8S)0R(uyv)TFmN)M7Ci<4?EQ} z{h%*w(>otYlJ#h>)9K(wD0_I{I@oJygjS@w52TLKoCc6W#WVo42j4Qf09WwFF1RdE zsY!2Xu{m&J*|wQLCkh5Gq_?~@6?nkmhvh3bDm3sH1curu~Cr? zMwD20&g>-(a1LXv8Y&p_=m-!yXp3+tI%TW#F}6;^q-d8Q3dXH{5X;Sy=l(5EI4J|^ zn6<9}|7b97r!Q6+=XysL*L$o_fdD3$0ATt)7s_nrKUcucr{|JgC&;4oz}`9 z*qO?r3kT%r#>(@jFIH~QFvvLZsow0RXLfLusQolaSpSs&CDT8hBTQ@Km0e&!C0S@E zsm2Bx2@%v01zw-i_134nPmhI5d9$4OcBwRO+@Rt|1nBsfrMzHANp}1lVVXy9)}l6; ztRiI%6gfBWnl@X5@;a}tv)p=!CRBIQu1J`VIF|nT2!e#Q-e)}3DNY1;2cQW7z@J&z z(2=Htc2AL6%zUg;M|qZQ)RoB$v!OfSBX0rR>SJ zHb33a^h7Iroo#Z=vDqKtjH2{iWD^A%93qHm91~1{MJ$*+;s1e~Ny#Jo@;ORa7u)+K6l+S0xPc{42x&|RZ)RK6oh8!-UM>;Ime>M2 z`LGKEC7!Eb>nbsmGGzgUQe%?p`M1)6Qw?dr0e&tgT>N?yI=bU<1*_vD%>#j~Vi9r8 zuk6zOAOo##9?fDw<}Y%NQkl z22IOu6HV2Ess^vdR{14QAvjCp?}iFiIs+l<_xr;UcY`r@PWIx~u>%moUlB3T6EenF z%{mE3X0MP!%V9Ig#Xsrju?#f)S^$VSSKL5#F)g7yy)g&fY%Ed8m}0CH-~o)Fu8RApFT*CW6jhG$BpY zR2S^s4)8RGnFf43q9GrDOzUasGCcli4EmSs=Dev8iUUeB1dk&Wah&m#Fujs0sr1@4 zxp6$Jd(-}4FvjKQ2XbfgBl{9wl64#~{{mo(WRsG?yo*9Trbx|lDTU(@@CS0T`BmnK z`|&b#Sw*{jhT902tR1Ny0!@j1ERB7j4?%mz^|1z;SKuPb(^l90iW}8c6+MLx;ER<= z2kwUVVOXIn32saX3GCEEa8X)gbqeQ@nY>J&P4;==xh0x$yMwD|rbyTv&W2A>sK>`D zHPol|q+z5RphnmTh6Zd9bc6U#bkk|w)vcO%S$jQU6t93pkCh-&);hoV#%?XqtFN;Q zX`r6OGAe~Y6?QP3CI#^pWRw`MObre|&GZRY6jA~e9}T}ij#5H5(X18N40(3_H^4yA z!tt|5yqUF>;N1<3wwVxc7hRyRE#+nf4BaSabt{q-Qqr!pk2IxfM`;@8xO)%9QT^ii z_D#=|DsrUWtzFWW6PfzzlN`E^OLxwWLCL45Le-8YC$wZ?VUCr+em6T;5ole>csLV5 z&u`w8X*YhuT(9OudJ(fX8Q0uQ>8w6;U+XMFF_>YMh2d(eovK?RqE2aA1sA!N8B#_KH?y7i1xvqtM6G!RQ&1 z8c%Rb07Z3tlIBygiik6v9VK@&vaIx844bCS^};e|ULQjs-L8HcXk~r*jkUr_ip5YT z7T{L`onIHHK;!ZQS(*;5y)5fX?&z~7{EVk~q+#4MQeDgjIl@KNtNUE`AumFD=>b`E z7GZD10&8cy-pW0#Hjs;R0xnq?uvgBfnq@>CuNfgMG^E}n*=K2b#ZOgh$W^MIP1nPo zCP>@TFp74^#CMOP_iT263XPG)25&GFPZ@%Wo>Hn#zUTUGyeIT6iQBf;kne|Bnqgo^ zw3pU8)O|zD1hjvwnl`>EYr*uA&9UUh%-7D>!Iz1jnz+>vT47b)o&pRw0Fw2WZ?#G} zp-kC4tc~Es2CEw{bmT3>KRs7&m2%4VT1rYa@@*0%#96aM+{*!w>)5s1z&qutQA8B# z>zD#4!NP2!Ve?>R`v7X8AY`lj=aR__1n_QCLqTVZk47+4?v$5Xv%6*h_vE`A4T1+% zOQMPlU1qm))z%nU7n!@EsH@83rsRelQEX+Nn#tq1{IZb8u^yQ|&V+)<Y+5d%PK07I1S4~V)9+MP>WND*E1 z(Lx@isJ@RGGfz!;N%H}p4u#zWjXk$ z=1iy?Hm8%*Hb=fCQJKsQ!H5b>CyKAZ7f8nrK$0*Z7^QJTAkCQKi==h%kvHOj2Rq;fdq;V!I{M{qy!lUDVm5T&Tt|K z#d}fmEc!MFBn~FAbN(zZaSl#+4N)^IcenyJMdGY9z<95Sk|_*Xg3xzCUz4W{mDwCl zhR2Vo_Ef3_zyunzXKhAls#;T4m#8*O89`!g@ju}Z49#0nG~^(Bb`;pAkCq?$56KDWu_nX-fWwU(c!oB)xkk>JTs%o0P@~9#5-2J!`lBZe z_PRJNSdwqaT}UeL1`J@Mk(t;s1hEKH@fcW#r`Di=)q+{3^E&rGf8sUWF4i5b@<3_lH1L>a)2e|t+{#0*A{P_vv?orA-X#`Y`9KIAK6|9 zP7SAedVC!0Bfq&WB6|g(0WSVZ*wW8`~sO4%&@AjZ`+<^wVafAwB`~9;Uz22&Z z9nfQ7pCTX;HJYO(^p)var3^zaUZN{_qNo7-(L?sN$%G>ubX8^8tN_LN3Ijs+dfA-5 zY;ytg&PKbkt+1h1Sg+(HE`%c}1%3wba$wV{#sWpD;6!SaNWNOn41f>T6 z+*kRSCB0g>xe^%?&@9x+=^L;OYI*C9Mc;No;y(l!PUv5g~MBP50hj%W^3RT`elb zhYBwK?bLM?`+HPNTI5&$qv!lu?Ql%XX7yHUYw%2dt85zinE_u~UDX-A%d0GLu3S|k zRiKet@}P2Y(}jElRrU?QJ!1Un1#-XEB=xJJBOlyq?TSyfXf0k)btMN)raR8*%azBv zIf0U7oO&->rr$Wx1SObRwfIGpMOO!(4JL zAYM-15z*v>%)GAoH3K`BY+PeyNhRUUGP?@d}s+$8uGM*x70$|hnUDWJl4M#>47YMU`Zc#@l0y~d_Ok-4v9x708eoI>0H zqcD%Ly>be>c|1d8iV`rfHARHx8-b^6Nkq-vp=^Ycdo;a+|690>Q4)*v2*hPSqBye^ z^UH05m~=3yn4n`OMP#Bp5He4Qh>4YCk!@2(a&FS>r%ZIu`TQN z^$^;5icDLkC^1J7xXFUb<*(WLLa3TwQ_Y&Oax-+{K^xB|2NN7`$G*k174$SV?3ynV z8L8MVr;WDzp42%nF)nPqaatWUYUW0~#D6t=e9rLO$PVhLS4o}M*j?7V;u05)*Sx_w z-3cQs85^F)OdK_*x)$Ac56rwgnN2MshYcupnzXEh3?vH7>MJQ_<`|$t`?J;uCl#`R z!&zm#$ry>IvSH282In4g0pXnJv_6ST_u_N-McE^Z4iq&U_|P+)xHPi?@JIM~_CV~$ z=z?4IR3|8gqmvCEG7Bn;a(bWe1J0gB7nmEfRbSK@%_v06jx=@7s3$HiwGYeCz0<^oYBgKjbFtMwK?b?tTA-3Z@24I31l&W+f@r0G;mJNAV za}$=Nv&`oymq8MWHBB_p0w7f>4KcNWumauEJT`oa5|(5>h!YnE^2Js5D&>cPa@xx4 zs7ZbS;X?pr4m9Ho!p2=q{7m5lC^Kv zI!9|foSF_G=t7wn8QGZS`2)Ih(&$XqG)~Jal~qc9u~m{9bLxT(`e#U6($0VoI^q^k zSRfrDF#j@vM%-p4uHf|IeoC@c(;kL*Phc;aAC%D8m_Ks%h$KCq zR-IyU7>0Ukof zU!yBuF}zF59dG5)AAjl77{sU`_vLC967@}W3;8^wlm)d5*;2BpVo~^{@i+rtTtYEy zQkj?)c5fmYLg-xd3nv>xnqU_2R0bQ}NxvqO)WgWMN*+O!j4PhN zhy#hk2xc>UE!e)EaNF&UAdkiQ20D_tq#O869a z$5X!Hh%z)k^O@6gMyDvCgX_=Iq2a7J1@4|r&d*wt3%K)iXwNC6b4Bs#iqF7&PfZ@HAh;Ve{lhVErzSR-~>X!i* zM?;Qho^1?>Vym;W^8?-&*fcVurQ8Lv-lktmd69RIA06c^>hYcQB< z^UBPDu-#tBGcjI z(4q#COocZe1bAEeb4_hyq<|SV`bgfz<;aN3>50KBstAFmrXV<;%RZfPb3|S3?*>P) z?h|Req;eLBcJM*DUq*^1vq)8Qoi!~YOel#j@mmR@aydjJr{l6bz6(oF%?vs~8Og?R zGMYDthnf`?>F)i51KcVIV@@*dXdM^~2J-ncy23as!E9E470E1!IMgT&#k z==MGe^gKZ|u+wKi*!VjshDQ?-i#j;#PR_b0c5yPCPSNeOee)*&npW&AuP8&uyDsIl z!`m^MzGSMra*)i80*5~-Ix_eI$=%p+X=Njc`6TmJ8>{;lPTS-2Ar1!tC1nWJTk*dp z&9rh*{vvxx|F3k_(MjV}CTffFDR#Cv_}{?;$QgAg`((>#RNkATKsdWy&d01qtN`eG zux1OwuOV<^i)c_Q<{yxdSB3K8_eohX*DCL8epOg<*gjA%U)$bRxSV zY>pG8mlLp{zdJnY4ri>eeWHQtl9pW8VX6J@<+S9Wf#3Pwci#Hl@BQv~zVqGh{?6Oq zd;6{I;=FgI44ElOHCnig?*<3x^4Fk9O%u&C^Qa5YPBV~7cO*xMufz6@&DIlYexT#q zH;kTk-8DqC5(3Bo8QC_tOtztv4gqu(NubE9@H|CCu<{%(y*hS@LI3fuOLmGeZRTt} zZz&A$Am9qZ8!4iS?E6d#%TYbo<8oWZ3HY)+_Bd&2&i)=uAGc(r>{IgClgFY9N^V)j zDpMq#YGJEn{0R`{7GHPv8;VD9Hl9u1$F@1&UuTaKhcxZ9yYC^<%=)U31jjKe%4?a% zR1($K%a>vp3M4OTq&xZ*-i@HiS*i(81HM|)h-)u{HnfE<+Iy5V+M=cnzy`?}5popm zj5slmWYZm0X~GGO!E{OY0lH`@V<}c**mpVL3<+P;&c#{(befFmgvdnAY{HUM5D}Fn zG4Nw7X;QQLW7uX$t$Urn^%yPdouw^6w?BS{)D)Vf*rRSNwFxk*Og`$tYQj-#nmpo8 zmA|w*as+x0N1cpewv$XpEI#gxPztCs=$QLSRk(UGc5~P3z>BI32HixCxlY@bOaWiZ?v(&AUpftjQ9Xr)QbHCZ?ni2u;14 zH;2>G5=cGc1P|>t!Jbup739p9VJgIaoE8n(k%M|ykYVevKh4jYsyFEZ$qGtJ>;3>n zicygm=(EQ`hTKS$bP(ibbE|n=74C5LMOW)4K&`3{WQ@p~hS9n1<*3m~b@W#3HOfh#KOFsmt+XiXLi zfGQP{Ch>@OvU7*hUIl|syT#<2WMr6F@)d5&uF1-(=Kl~W+Y{8V zm-Dg8Mi%~nw&6Q6s6S*{w$Odj1+^3$ie`LmpCkmGTNU2^J>V^;m#@hxBS z2eo@`fN!6@h?|uhOzchrtpcy}<>aiae7maBtjsOLwG|~afs|aYnzfd6R-uy0d{~-9 zsmlQ`Mr2UK5G?Znk|_WoW|87&^GKhtNe$6_sJ;|0UdtYY4hno3zBjmVCaZaVp)yJK zrjYq8D>Yr}W)44r))E*>SowxO#xbl96(FHD3~HE2xg16fab%}dS6K~cB?AFGsVv-> zVfeXa0NYYHdvcz+d2vnjH@EL+lhL4!`%X^Qfae)3M8xbCIPt`X=S~%&qf7KR<=x5P zWS_e`?()P}VR2(4NE(GAm6EtciRnqmic zG@|nmpj&91V~aP_1LtCegt)5W^%BT! zt;4lwqlh<2IbLW7dqjpHfq@H_k5K1V`21i=nH{rDchLBF2k`cMYr=CaG8SMJcaiMx z6^&RR`|{(-0|k9sA(ziJQjZQKDZe&5wW;2lprDaiRm&JvX8Ppi7vE0X0kIz(sA4(` zU=5!1+LFLjwIX9CHLM)tTw6=ACG1t!;{hdQi5W~(DEEgM(Pxwso5hB`;L^etvW9+! zFaYX)H5D?|b!=z5@$2<2q{mE&jFqGZIH$>aPW83Y*jdm@6L$h!rw@SUQCQWq%X!QOOjP|`!s8Wn3 zuNy^dRwAZp$4b5q5(r0}5U8qVFU1Ls+aJmd-S@4!=hDc_JXdBI=%m!( z?;9Tt_s{xg&yWxObb8}f>&7<1I+_=azrOps@4WN&JKy`=@BM%5y$f)i$#ot$AUU2H zNV49tWJ&fFXe}=(@QOoOmJAQag8?x^EclZ&0M2-pGkb9fT!0_}T=-sKIM57jmy?uT zjw+Q+##>1$oAT~fD!Y~1#94b)o5Zmal+TEY$J%IFYP14w-1aBGZG`I zxUJ-W@r(A}44V<;l$+OKDX<=Y05J)1id$f%B6lu_oNPqHV8{7qFEmvN8`CNO#$dhj zUMq=a8kt?9dVp!4ALdC3tyA4^o1Y>4NX%i!Ci+80s1B zRy3xEt*hJ|=RDP_mPn%~vOcPmVL={2g^W<*iVbjpp>z+{8Kx@cGxXN9MR2Mtz_6nv z8smK}LkHyXCnJ}lj2bOmu@mBo%Q(F8b-yNRB$COdQHzr<6`R-*>@HGSP9y%{Ox2oU zjlei^)!|gEgDl5nTL7QFWka!Ug&u8>_N5f}HQ)t?%6H%VFAAZr$i2A28%N%bxfR#M z?C6U)BgDa5G99Twa{=0g59-zl4#@q$kUi+QwpCw2*o>Nqatx-XUJorKCJ*Of1c291 z^i2rdM%eCdrU025RUBoqIMmT`mk%-~od&HS`#Q`HM0|j}ATF5WWjUjpU9tIi z`W3mLAwI{81-3nTrp=Pkib?I55A|}L^%KRHHFRvM!Ka$SX<}}cm4YGa%(7&fg2#)R z>)BW@z_ukkwV%+~GR#&*+yoWAGpkyLcLQ3pG=h0sHbHQL(6b1e+Jo6*0C2~NYr z&mFNO*;0oX|K?A`ktapmnH+3V!U(IxJy2ZaDZCc^fhg5nH3p!u|V9*R?5uvlm#sor~Qstx^3zo2(Nq|y= z0J&unkLlm{6}wqtFEYv@E?JaKI75Y4Y zRak+E^Ap~AleMBz8Q213A!roGz;=sd7Hye5WPjn!`m^&<><KdW19 zhV?<^KKpdcv6I~_gm|6ys7?(d^q{1WI94|Ri;kBQUIOKnso>`mCXd@et0A`nN>Mm) zV=(c9y+nQ2FYLv<5oTTo??TvjgfGy1gsq>4&9M9XP-SHpb!$;Cn})6Ee#|&wQwAzg z{10@K2b?ahuBBwEW6bO1kmm?DUN)D}^K_KJ zFD~5ZlH!1UEUD9^UZGR0n-g?lSwQZ==P93~%PnF9wTJ-T~eGCrSov*{?K zI*luf&%FpuMqN+I#Ht~12!TuhGunOu4|i>V74ju$6L+BRHOgb6v))~miyFgX73;bM zE9+a=2Sm{5@eVnKTbbg{XVl?*muFgesgSWwiAgl%M2HMA%C)z0EBC?$8IL6xOao2? z1qWlA@*|og_F)BYnFXij5@KA9=93}vZwb+0oz>H)VU+RCGnrNyCUjbIyQcdLiNPP! z%&K$RTp5-Qx3W9I*QQsW5LvPc?$aCrsOir_lfpX7gr@eoP+&_k9X zT?e=_1{B2N)8Sz@_I$SVL2eKD&%Ld zj%asp6DaNjo2=_1F%<7zNVs#ie^z#1@u8kI*401gfzsdP+#I~LzS+BpTUoqXj5iNB zyBE8VZ7Qm{0YEAxsh}v~mzOyYxXXX{)&_Xj!~9Uv-QL?07_1O3ZMNb>xSWS4A)zX_ z5lwQ;fOB+;cM{+&h}kBtZqL}*aWI`!2Fav54@|6PWgwe#6u7&OQOX?zc*?d{H@kiY z!U@#rB2{I+k`laeHg$WraUl{PpK%; znz7eu0xS|@=^V+z@LptrV{m)cyQ{LyoYU4qtm$4 zMW#Gp&Z*pjt1@0EAZ6<}h0g@avyLN*^$EL!!kbCtdVO*_A+PKWkd_Z7J7tSJ<7dku z)A@pU@W;1|b(oXzEnE|B&L|vE42kWSF$MP!?c3>+K;}K1R$KAZ>}4vO3MC6bnLs5g z%38;rFOogl4ppD70!{7^8<2Jza?~Lnp$D5df>kkT9|HX8{{^ z9a8iU*()C8hG2MRY#i2dq9CnqtgYczsi`$22ZWjr2eOPxA7i+|ak$;Wy@Pc)`%)kr z%rrbZxEmV;62dUCE66=NY#o`T_0w`+gR;$2K&x=l$iytaj?!5&11&F8!LW>x{s-l) zP97EtMYBK>tbH7;(#1G|_p4oQcl#OxZUU16R(nx%|KScvd6duFSJVy}#j(5Z&$rI$ zq8Pn-I-fvUu5K%3*2ea7RkAB}HbZ;_vR@iMC)>_+zNW%TgUTh>#i$}Ehbw0quL_G( z-4ELc1T4548aT{|8{>qGIKjM`dQ7C!&+0iJYI4gFDJ7`k6dE$&SO z=I01TwWjx;Y#pkzFF{(!mDna6eZJiW4bC5~Oal~x#D1_lo^Nisfvnq5+}kedcHpz> z8;}q0E$(Yagnqw!+E(W^>}T5=Wwm0_cB%-fsl!l*Y-_9CsTyY{MT65I18mEhr0F1U zZkRvaY0RJjP8(Z$Tae5FuNvD%yfJt?7%JI7?t!{N13rTSg$)nUTS%LgsI{(3$JK#F zB@twe0X8kMYIJ|5(uJEr%zH%s4ZEkUPo(pJ(hk)Z)le*YIn7^MFrqBu7w(%h(gdpB zjFRP$?YabPOWLaL+23Jt1GsI&tXI+B|1$EIjc1dRd;N)8-b~$ zIxA01jcqYhFd1zGtaTJw2?~MOrl1?{QMcAxkdJYT(?c5CkD}xYGYN4;lz~|!1DjYv z$a9UqmX~#mXrh)fCQ47w6l2a`l%*0D7vQ~k3y<)kdNMOElY>3PGQ1|g2lkY%`6PJu z3Y_Jp3^#%UbhM;zG&q!;lVICxZWQN+z#*M=EEv5u=W9j%X91>P8}7U|6IbU#w*zO} zDhSX6*F)dpJ^x_IHegTdrWEpME-!1uVE`+rrc@xV$WbkrVj-DN!9y99vJcw$@st8Z zHn^rvuNW&AFt;k`E)cC--W?KE~BtDM?}(4 zY~=xR=JnxDF$Sg!w4)Y=d9%fVqHBpM%SG-YAptjlm7XU8sFRGAF|OuHpz4okGdh)B zbmk-9K6041_o(C5+}OkE({_6O8DW}~I0)CI%hg7PkDXonWa?r|)4#8_JK)W*xDLFC zn9psBTjcPF``ueTMHw&UUESN=*@Jj{>N3{^qXFQVd?020l zOg~N)JT8{CG*kPFm^HAOrVWGYybg6S1NKZPJPi5-99vk^-p@|pnM9Z{zb`+#v7tT$bT>~_un!eH@hnx(55lyZFRZ!w>k*(-|D7F zk$g}fq0O#0g?VsqkwbdWyF{I+pHV(dEE@JK21CxAA~ypahsyJ;kqB`%4DIe$hIiKB zm$64AAG8SX4R-HCh6_f}QJ5H1Wd9dkgnt>ZM0Fa%%ns#&G79&ztw& zY<~Wonpvpr{=GMEZ@qNlk@+{~|M2&|`S}kb0=_Nz@ph3Gk52%qgKuE9zIXn=L9KT% zHBp;ZJ6~n6q92_9pHTEQL*B=x&22+e4q))S+U4Dn7PCQa(~3jN zNUQ$$=6@2^8$+tE;#oA@gATQSdj4ld)W*oN+JArk=TQ5DwXjjwF!+V}UmRL%r?+FZ z{*U>8IHG4L?OD(NX#ST_`+apizj^x|#~yiP{_jeScbcdHW$=`)53@KoRy;ih0Pl*$ zNEp2v%AXl4elRP~C#v|1W5tiM{N3JOBq=lC=xB-`8!LW_72f9+`rR#9BAUio=D z@yo39)m~?BXBBRKEB)tV#jj>4U~a)J0mWY*EB+nJC%knVoIr-dF*cGjZXwq>Ld3ui zJNpLl-;WjJ$I#;K-XbY``?2EvEDQLy6`8dC*BmRpj&(lZ?cv4S>FloDYKsA5y)=#$ zpJuH|EEXzh#+%88>0dck{5b0cCekVn=5HP=exAke zbuj%N?i6bsgYb*Tihs%~fn?u-r+YS-i!1HtpB*dy@2sD88<)evO#kMw;_ceGk*1{<-7DkFb7Ng}S?1=@*U{KhDyCxxdqB<$v>d z@pCMHhm$B>3cql?_%#-W3E`~)seqg3a%^o-e&cxYTdeqghmt8YR_V8o7vm>TDR6eW z$61}XpC~@gIssj1cPXcxI#HZqd03n{o9*wm@tT+cm^@K@mK8qim@t1h{MOKZ+dcEp zTh*x(#WOi9=7i;*XBD13QG7Qm1g3yjq78SI6@Sl(;;*te;M&&NT(|PSexmqMmOo~w zm|XuS`t`l?ibt{W+Qv3ydnUYp`b6;yZ1^=v6-v$(vyKe@KR8kR604<%>xiQ<=8 z`th-RT!XJF{s*bMo($%vzN+{?`SBeR0Vi3f;kPnM ze9L3Sg~te83hm>sd{r^ck59-)CMB|hi;orG$AZVX(ixRw-~Z@i#SioQ+xZ>U)3Pr- zR{W}z!6FMOVXWP6JXSpVINH6-%Svq@f4n%w@^=z0kd`YTc&);kpLx7^nZ@t*=G7|g z$BXY`mG={Z1{PNS$w+T@i!hXeukgNwH^KcR`PR? z7r)Gs$0_j{{%PO;#pA`l5kMBxW}koe@#3*3SiQ70j6YGFW|qmIyHU zbBO$wvSAy56qffGe!TthW7f^>N&hWwWv)<4%}<5$k^(5ehi<)jX?e>P$a{}E4!`-^ z$8^xQr$TSOE(MSZ3|sig7ZK!dD!ppOlGLpcM}okgb_7OBQmOibq3Tc>DfKoS|J%Fa zw`*ZatLse~eOIV@!>it2^WTQ7LTUK@q2YIU_1o|H9jE2YfAHUaAk_P-K91Xe%YVz4 zm%x3)p`{BDP~4ph;QyYjrBL1-~O9#d*l(iik5KPQp_zi zE^n;B{^&NE_yex58JHc20=%``XyUPj^XH!Y^x5<0&Og~$z`6VG=PJeLpF9iI61MDa zZw z#G z*ljp=NTJLSN?g|`@r)|w&>i1#Vcb`PCz6oP*oH-0db$<%^4OAZb6k|Fsu>`{URompL{qN-QLZ? zE+(FjQ!(O?{gsD_1CgamvyH{8&n>+;y)fIDTWnlgxcb7}#o3FEiRnfBJu%sMac=3- z)$2T`|hD=#(X=dN6wY|MW9wT0Qm#qp~Pjk)65<+)jWo4Yb|`TE7V zE6+EcMY}6k!Sr+Bb^u+v+F*wUYHoIsz>3+0nM;5?{p{T3xuusT$Df;9x&oMu=KyrN zacz2GX>R8F<>`gSwd)Jlt}f1^`-=d3W$wyz3+QFGn7y)ulglgk)|h<(e>4^^O<%su zuEwXY1N#N^v(T8idhMl!x#uq}H7;Gfd~p^ZpPdC})6ZU>)vhq8nak62NMdqvx|n{R z*ex`!0?NWTt0{Jk7cb576Z@OS|7Movu3q6VX0BdYTEL%pvhM1_QfT_(+~O=w>K5h} zf$I2k3s(W2gT%f(qF>$vhfrsqmlxiu~>X}JN? zhRaR7YVF3x7N;NF1m2OQIv5|9I%=(W`O-_*X4^BDW@j+3&r1+%jB}lAJl}=N(b?_c zl#-HkmnV^^|y89J-TwHVJk$)zn(k+864g6yotVIUZ68yTQk1TiE=)Acm@I* zIeDkIA=S>DxdZ8If9lyND#Z|@la1#XEixG3B>x-Fe-n<85$Ox>5CspSdqE)vgSb2o zks6Tq6i+ds<4HR+LUR?U6kA(_vav0KY?+5X%O=mZ^r)O8IoVhep~tiMtaqF>cKbM3 z?TR!PDTwjuQ_>9fMC26{H$_Nx{(u-|KHA`}NRr16iAc1}oRb3}Axhv-ypAi3X75H4 zL#&Hw27D_E%fT)7onW2{NS^1y)>*%We<5>Mdg}-e_f1}8G2aTbP2WzE3Hzmu?&fNw zV)D2%OG{DYhFX$kwk2$yWbbCHY44a(IbwlnEG_pDAQlP61EjQB zV~PLd2W0`7INH*2nYZJ=3SCI$Nag$#52jfiPX8c0(loCM!L+!mY0iYTqfk4nZMJO-fD*_f6pkhrKyw& z5I3&vomL`^NNnDYunj`OtEg~dqc#akaRA<)Oeo%ot(zxSsbQu6`TTX19!IIU_gefQ_OyPau~G|M3TnXe`v{xnLq5H! zvD3QM-Q0mu^9w)r(5QK6)I2n59vU@YMn;Vp0@QWgHj%gk9F7hA19d=oGtocvy9XLW zWlN{EhcH(+qUvlAm`n7Uo8=?tSh(k!nJKf3WIf2Z(Fc1%L-{kaZ)E?TxYk+UzI%?mlp8!1fze^LvHi5bU^FFTJLxhZ zl25I62P^#zIdOYhK6sBIvP7*9948|VWT15<#vcAF`3rmM6d*MkPg&Ea8&An`pHvu8 za25J^AIGPon_ubSVh`SZ>hqyJ1Ipj^09srZ(i6aQMN1 z=tYg|i@8ZvYn32Y3Aw?&kEw=cYok*t+9s%?vw0KBTw@cVlCPQF=Zcx>sn7%&wZ042 zR=fv5uV!Zj>st_H4MQ>{ehu&AsiN!8ZkU>@gpU#ROgkGC$@|IRDz%Gj+wTDy){hf2*_HY0hg~lYtGP5;*USL;ttmd4{Qb-pF^eq zSFDHLorw3OId?lq)5?pMmXrvSi@<4)NCuBL%;0X`iBKzK33LxHsX2jec6aac2~UAx z1nR&yahD&&3oY{%%~?(}n84oU!ZEOAy3k9_G*|>D8bE%O9kW76NNSicpG}|(^M~dp z{67=R%gZJa*_F@Bs5+6Xpb|iwKX>k&idjMk)FBAKe|g)$C+47-*v32Zq%U|Opecnm z{TB?OywDKgu8U^t-Me#?s))&plsq?~?W#|e_4?F=i@3z94x^0PdI-CDpW%s>+u2usZS3|v|8S?%siJ>gHqhuEoo9=#oA zU3y6vSc#m(yJ0s-Yv3!>90tDDJWXR&us3!)0DeN=g9cz#6CPs(2fs?oNny+j6L6*C zHeYvZXLtXCT;t36Z(6gCuo>Bod}u6V;wa3)+?te1P3G6^GSdU9Pcaqj)Uq!VxGH&3 z3AevO63zeuyeb!vRuf;swGeRl*Qym@$YV_kM|($Yy^ zrfD2dDhWt(t_j(Jur8uhW=FzxJ}Z)hoKDBMK*FcU)A)40ai+S`!vLb64%FgOBGFGb zo)#e)P>G9ZkIO}Rq3e*Z8f>3ckr4tEQ%dk90{o-{cS7NcFx$c0F{BN`=-p5 z_Dg$GJmyf|^24Ik%s{L&(zHR{XH}}>I@_uAJINzAQIo{Hf}ynCxQ+B9vMKqzBEVvg z33v3>5dsOsH3?S3ClC$Ib2Tg?`mAi=PbLc@EUZi-@GF0eRtX*BB5NZ;a|eOceG_M-Jw_- zGqj#|b3hGmI+VvB_a6kki(f6Rjc?hsN`=q~78$J*L~qK20S*AK1{}Z*krh|`^(YvtDQ9hrXNv#v-8XI(W zJEC^dPc{m^Ku(oVsxzm+#x~v!$LU;;&oztOqd#gLQBTZG!Q(a*gu&o-dW|127<$PI zAED$g^L{FW8;~N8!{d+hFbU*T!>^%Sxkbt-2E%vUSIE`9oD!AM3Q4p}2q3PS%@Tm5 zrxd9Q9eomNrqpPVh!YtjH)qMEokh;jY7Ok5l4&9YSw7=_ea6 zb`Z0-y*>pFUb(Zc&9x+OJULL=U7Vlkp}TFTG&~^$Oi%@0JV_t*UB(weT41Tz3c%`M zW&nmgYKRT}r{(C21c+YZX5WZKLBOLX?c+L9fDEFc_r1&Af`7;<`g#&kLwfK6z9!4%YC z6S`*o3{=t}`yN^(@(qoX1tk0wmQF(A(%#4QSz6>0ND>Kq5>pQi4Bh12!-1u|i#p{`(CC~t?W|okaBG--t8JMOMnsSwjwGs|4x2$V zOIVJ~`@<8yWHT4bg)-cQ13$o6WzHq@-P8oG%s~?NWh(;37{7}EIj(AzGKh|Zqh11I zx`d0+Wh{OXZKhBps!3S*=kdbDGQJGRA4RkP>K=;o6|;Bi8IOOi1K z!f~uJr8bpJm?Q+i_jQSog$@Bd4}@h#gg{MFB4Y);dd!%7OX6GBbeCVAq^hd zq@*_wW81gHpc&>&T;ywzxH^j&#{*eX)ww~QoZLfv9lVHy#57JaPuP->ZzU>W7xlcD ze!)ga0HwuXH$>a(1#QHrR?-oc9%#(4v0(-@G-ZxR1#>haBa7HP`Vhxp85x>5_&`c- zcY*;}U$Rws$|r>EZ{F?fGfnj7=D>ZyWpHtXb4=;X)xC^pHA%EKvLOl8vBzsL!Mch$ zA^Z_o;?gFtZLY`z(7?3~$<1v9&fdu+#CQsZNo!9mp11X0Y z#f=FpFqK`b<`i;f08`=IS%%EBVYZ?>M}Fa50tEE85z3D|`d1fViHoP`3P+IMK`7o|cFD=b3T)`OnU7FK72)$@dyfLAk$?9NR$T>Y| zo^}T%wX!5gz3P96yT3$%!`zg8CErzK2MdXOeP3fDbtDm#s0HDvlrK&SciKV|uEmtw zta3_&4gup)E+K_E_r&ZjV#Cy(B)dvS0=tXc?_8#O|EH;0-Q}SJ^dxD3Buh9u%S1Os zePm~V>#jzX4I%WnVWpw?+$clevIWzxIV`Z9Jb1FP$ZI{wF=*#*_4vb01AU42@>v~g3|KM-`x7bcDp+Ox-ZJx&ORPB(7!_kQP$c)+i&Y_3Gw2+erF01C0f7vsydVJ;7wKvbFJnN zvfdjCj@}6Y769=}oO3fmiAAD8+eLdbJpx-0C0ziNK5D0K7#hLpOoQbl>q1Udl8B>Xkn2;Oz@$J<^*$spwa|aOmgB= zttb^xaZzH+M7yGAS*Hn>ma>7qouR0*uROJbj3}p2 zi;Om^`&K*Ju*rmyOp=Pgs6=x;Ayay&Gi{HcFjo zDz1R2ggIt23RrO`(6J+;+jl3~4WRbG>q_jReipPCwy(~K&LNvfTI+-^PH-t>LtGXf zPMQVD<`MdjcazeMGNF&CjbSL*7jT&a(XhK>fkK~`ad8t<7hxK(0TU(=g)@*sVGG$4 zgR;mQTO0x$V4>BQVsd)Wu9)B?Qo_;TMDXXJnaL(VNFSFCeIHmAZF>TwERXgZKe}Ie`BLy1gYB@V2M;|WP%=~5Q$UsO333V9mmnkgo+%1FWw`ft| zGiQa%7{3l$k|h=@W!zy6&OIbI>4=xH|jXHb+(RX@1d>}{GL zH55x9B=dA+`{jY8sbq!k91` z%Q6KQ5zWtwq_%sToj!U*9WH;g*MaAKo7LJC^wyG|-xBXd zn9-pk0xajWKy#dOapMbju*);ia^q#lA)4{W_Q@p=N_Uc>(i2r{gW(ELYhg96q} z{|Qy}Po@q*eEwx5Fuh^Eh}L-;kkTt zR>FSWiBfJ9&}7GJTb${&i5u86l_^NWdvCmMfbP8#<5mpOIJ&&+6r53zBmgXp<8+L@Ic&wB#aP6 zkEuj<5}~)8kyQnYW7~5mkR&2=sC@AlLJlqL;VEoPej|ZS5kK*`iETJp`l6d!7L@@! z!oj~sPcHuCw$5Mm`SREWSw>zH^iC6)Z%v%Y0QJt2!#4FYi6+kUNqXrJx3h_(oF>dd zSe?l2gQPzL9#af1$V60KeTm#A9c|)bJD#}_TuTxVG|%BdwTWjSKfpDsSg++7&w4Sp zV+(h<5Gx>$x< z#Ai*2P&BS>01ZjJYII>$RkSedo5;Gfy)LdvQ8)m#)tHtPJcxwh5e&R>cEYI^4o=~z z&qY%*z_N9qS%)M@0C3>;>+Iov9YQInlI_FAN0eafzhX4X`AcUMRuv z3I36iVp5#;^w$v(`T;I}29l8JAoi`C_{{XyljAcolj>v)o`5?Mw6?HE3}P77^Uabl z_+v~dyycsf1WnN-Fh(Nb0oBjjxESy$=qRbIIN4CsRotBP+B+{q{Di%!Bx6(1+Z@EB z27#)BffY~kEJ*G+IcN?T6Ty=<$)d86oU)-8ph^PO@8@;hmV;XWATi{PlO&{Z4Plb2 zMu$4F`NmdfANlW*0RD}*nx~Ct<@^dqDB=X?nvvbhQ5Dc`e5WiHr%?r~m@~*4Ojff{ zOx_wtzM3aLyPfdd#q2l?S0=qfvqoM&cMr`lp4RemME2UDJS#f(s4&)A5L!tYmYWt+ zgUbRkiRTElpmyOzTWt(E5AH;pg&c6Jvl@2^-NW)D_tFM*&}tiL_c+#A|2PvU%@xm& z$yf5msS+!*;71 zt1=V|HjG^ZdAwnSmxv@#p)Bwo1UKp+0R-Z7U=RjmYQrQ>R^0E;V&p<&lgz^YM7sqwq$cU-Dil}Ry-(i?xtTp}1*y1E0 zOaT#XWHneM26%Z{A>(1qqpnx$FfLdlc1}CpVpJ;0YRq_qoDdO=ToNg#=*3R(ceMkp zG(sxGKECV)14&|}#R*EXo(`r}DlM>QB`;DLK+AYgXGz6$(lzFkiJshH!nLt>Un{K4 z)Y)Q-CT0+L##oIbu3}~A7)XuOmspgppSY!Bq(MqFsN(~q;L}TwlRVzMK-;|}7E2qk z?F&#Q6g(uH-#~H5Vz=s{p(u##L^drXXA47@eOTYwmE&AItSh&!IP2y;%+3mz1*(-K zhmdh`1h-=9Wb$$ERGO-n!UV~mtl_ZWV~MrOBfq{N3t+` z5=bxxvf{vC^%yoi50T3nktsPzwwve*mg^CkCzWCz|JQr>6fi<2%J5L>Fk>fQi%2Ft zWg6V4COP73s8S&xL8x!xZkK^LV7E@=BJ$Ac4IZtZ(dEI6$>xY%%ITO$8%%{ymK>5= z{Bl?dP%rdZPRvZeDekr4BLp@gsJOYZwVLdpoQcZam1KJKmJQmpzzBR?LkwfM5hS`K zvLl<=T^3tLv%Ig9lR1GatQmJ(5RR)qE;w1{TVkE~+RI^y!vSp+!F+gO{Ol0?E_L(f zhKf7tNtB2U7Zf-zZvhlr{MvK|4ZYZ`;~xbt>!zUVT>?cAUD@4C8Xk6zTjfCpu0v?tCY|5Y1)Us*Iggzsv zfwnHtC>ABsKyDVcEso9>Yx%Yz;J;C_G%i7lV(xybe5F`y^(Y~Miaor{1Xa*G_0B-O z-|smn7xuzA>5r8Ca(R%e&VmVyKcm+OT(Y4KZ`1$CGs(n!5qN_1(h=*>jA-tiPbM%- zZj@YjQ^AH(S}m!sqvmoC=hw#qGYrc_X&zz|uykcR5~ahfvr7onv8~9rtF)iP$x9h! zw1#S(9TiGI>fq=m99h7{i2E*A9*Fysq~K4=?g`N$^Mvb5^i6Ia>UNnl!5IL&-7*Ff zXU~)__RCDhB~yRJmfa4ys9UpiDBaU#0J)-6)Hoqz%ZDkIGY<6NsbyTG4c0>b&{;aQ z*9YCQ>l`~e1G6=V8*kP+@Dp1}FotBnq+atTpnEh+D*}$t7)*v=)$-Zk|nx%)!pU9c8^G2CD(WriGUsaA+s?J!UOXhcGFOWb>Aj8R};+ntdj; zNf30)tc{El@FYYN<#5}VAvlF(6gzxk@kad_^kk#n_Y}=Bp#v0hfufdxp5X_Q2&>Cz zZc#LIqu>0G0i9 zIjAbb9TF_aYkVQ}IS+G(f~M5b|8mU-aJpWwQ5`5m>jh^9+4_HQLKFi_HKO&ZBE+GK zL=ZJ7oUGF~l1saz2nh)vOT~nIc&ma!fPC>qg?95$Sa1u&+K^4!d=((<{>yr`{m{ZAgBY~2dO_mC>%j>R8E6zAGL)(SQF1(R5n?n- zg@}E6t73$gTyTJD&_>9UK>dg6fp33bIqCtdu+HjMZ(CmF#P!WZ+)Ac>dI>6in0OA` zba>ef;hKqN3=5$OKq03MwStUC2p~+;R`8@+ZCZ*_DBY~bO_d%VZm^xqRL^>aSp_rq zF3jJRTYfelo)b+X(}=`bcN@;Aks&WOefiI&)H1GpfSUj}a&mdA8O?jyieV7L*c?We1WL1gBiiDR~PChN?Gf#YsAYbDMeGr->`>?@^tB$s4CtfbJl_@fk^78V z@_=PHGe}*WoKGD_05TA-r=*p_3Zq9MxP@RjV2XgT7?@~}esOmf z=U%QWkVz0*z-aBzHD}5^o#lfP_lMC3mb4h+-dQqT%A9d$)bVwuLOJoKNK(|Bz195| zo+oAklYkFb3K7=KAN@T&#E}FZJg9Mh8k`-7V^HCwSqT#i56Q`I*&%E5kwjCuKZIuy zxr2sucEcQ7vZV6Cba1FCUqwTV=7>-wdT6b`kUBTze8l5f@gbOBkdgdFeWfsSS_`U^^{6no^_2hp{oru9@p~-0M|otDHp#*@dLqV zRmoX&%0*`zMS=Sple04(QP}6??2MJowU;26aYfTwCBY;o8#59q0W>z4k5v3ZWv;iNqmxlg&8R*((Y_0)}yD~}OV_?;OkVzpa1xZOZL zoa}d9!6yKvyc3C?2NV*NFutJ_mnWj3 zc?M9v-&sL|5F$$aYY2yA>$<7kjU9n@L`>)uStcbR&>Bw195+I$emN2?3BrG>_lQ}7#jO;p>Bbyffp>>#LP2=H7qX;lP$1Z1OeWL9<<6sfe=G zXeQAPpFOAF89^C@XzVnm@PS;0!F=31!+=EW0kXt+&XApXBcjHwk zx%i!PFX>s?5ph6p{^Wx1lS^`ic=}!4d(O2P^Q3EPls;d$5Dy6+$%T3hhs1(cRZ)IYD1!NmeJX zO;4LILBeUWiAx=zk-bcLx}K>@8FnimYUY~U9jzv^_Yk(`?GSq(wjsGO5qY+^h2%oG z#cK94G&Z?ILt5Ls1}eyLH-vjWIvhazT!u60oM)fJJBd12@E!6p#3hog%S&)9Y|*U+ zcG8N%e_@e`454eR!+?>zi{<6>yj{pO;q|dHq+;w1J5E&1NhYf*VaHJVtbu2W5MM^d z51|1@%!s2qn0NY>s6K**eAd-2$Pf|!T-UHIsvUC6xwMuiX6*QX3eQmr_S<--z(9>a z-1g24LpVEt78O~&2&q|2-5Ft#1f(r|EdgCoq$499gf4Cc&lq-&aNwwj?lot!oZ6u# z<0jNgq!p`fq7VyA8U~9VyG?xSlez$ND(c0mGyq++1dXpQ<Y2cY_G>s;vd(ljK;xQho3^OSE$uVf)TQ{WNP;2FqqG4aF1-@+<@Hep zQ!WRTgiTAp5_T=aNs0&}Wt|d`$QUJ3h5`Vf=uQ-Qh#{G|P-TdLLhB;dxqt+WCIDdr zM;-{dcjPTk)D~WakK-jBDy1vg@$sjj31>$}*tJSJp@Mn`a zG@9uehDWnPUwo<^(t=&=NYw=hPHjsE7v4U0hvpWnQ)Viu2Clj^Z0zjyckrTL{*tWm zpX4zEPsy-M*h;RdKw=|6ZfdSg$kW-QG7hC3+zaB8NaZhLN1~D36JE3R^7c!Jbfd#N zyt18F4KJAa?W{cGQK^65I1Yh;RZXVTn3(*@e5NX~@V<*LVs~}gHY4|sZJR?LBYRb? z#`8HR8#T9+O4yh@XCOOs3}*H{IW8$~uNaX%av?htpKvyn!c~Z{GTja!rP&k%lG~>x zvjZF4ZnAI7ogyDIG_b%Lwz#xt8G+GAhlI=5JCc)?I4m#w;1NKlR)*+s0YcIZ7~J5^ zC>eSA(GI{Q5E^yi@zK?uJWnus#Ya*d((Ue=LgUc4oGMcXjFcptnrx3H-AC(7J~OT) z0T!s~^Qqc)T>PR=3$+792>_yvgsmWkd0p>!!QKoN#=cMMPm(GLpfUZzMKtO5(2SxIuh|Uoqj*p0eIQ zx?dJ4%mex?cjYN}rDj*nLVa?Qp%3QrUkCX}WT8fnB>xNmNCxlF5yKAF42U#Y9ov!Y zit>9LDH}7#A8&WBol>c9EPe(ed*a^fY%ulI>(ax$G|!x`;d`etRE7~*zGpgs^y`@g z<7t!l&M`|}P5zL0c`)UrW^sne#au*%FELB zCTA$Vb&`z9=fw5TnUgLtZKY8Q`uP+Nxn#qdrA^4V0mn2h{_|a^Oc5tVxVnHrYFnYo zc5nNvPAMhyW)BxM;eGNIBLY}_WN9$|kwj`VTxL|pMze+NMVaCZ9x#h0Q+YXCRlH3Q zf**21mPpNQTUK#RLw_M%O^CpzAyOipV{6WojJU43hj%;eOI$3&dJav7^amm3$Wigj zhg0h?AJ$U}Chv@t_8)Vgr;l^zeX=6Cmvl>nj>Na+6_H~f?1_po zdH5d7NnR7|%mJvINtB4S$DKsXF4sAuMjUdiThyQXiR7}AO0(K(!Gl=gWZz~gB9tF* zDkgr&8Ic$aPVk_`NN8y!HaBGv)GIXH#(_eFe>q-+YrGt&@J?I|EnYn*!datoMUf9qi z4qafv-{2G8#1SgvdT;KB26a6K;+(`_aTg8y3yn!?({Znn69)dx9X4(^6nj2Vfx-0v zAs`f4Sm#D>7y-@PRAwP5gEYyJR5%sA5c9TJK7oKRoAAe_PUZ-!)QU+?9DXDpq2zzb zJaRYm%|05j-W>1XsZaMpB!N%S1^*?{W$BQ>umv(FJ@s+K&M_EP%&8`AKzimrz{6l+ zmyXRif?>4?FTtZ6St06`JD^Hp$;K+@Iz#oQKr64E=vwwEB3eSS_CffgV3?dp67(cY zH}HHS5k_IBb&tB7rB!)BOE(z@md0GqOum#OGYKH)F+Vm)rVk9_jdCVA9Dk8fYI$rF z2gRYV7JmfG8jgHRyf)&_9#E#ZPByH3@Wb#aH5#%}IYCE@@l2!;u!wH+gfx+bS|odw z5kk92Myd3mIO1>~SM?&bM9rcesxX;#ew9LK)XX#}D5Ig@eJ~#AJIJ<4+!fOQXQghUaCv05t&r$dA zOH3B-VI*o*jy1!2yQqF!QC^mpC#E+y@Ic{!r<W4!Uv@|DgS|E6NR?wp&jzYz zkkKxP&*Kg`k}sJ}YEqFfi6QczfWw^%G2TSkMnqI{b{|(CNU%_UXm73F!l`|nttIFR zLym0K`Ga$`(&a>i8a0+*hwl!YaL+U6%c1{0yaK2y{wqA2Eg#DVUvyA9s4!*IdZ1iJQHa%q@X8r3`BprWB2&PV`s=QKW6GvdmIu9bqCUW$M;a&9|8zOlV67(b34XhTF>Bz8q~idLEz>!~}wk1GWQR?ZvW?5M=m~ zXRkCCuT9U)Hk#KzasJ%7^GG_aro%SF&10DG1UJblvYs|BCNJEw{B{q- z;z5HRqnx+L1=T4oJJU*X`k1@}&&DEyYut5f6YchyGq2lF@0~f*ZYK)rsFsROB2Bm` zk{dyhHHZ3*sSt4?#Htv8{=t`}Ma)Nt37?SeNh8ETSWdtP#QI#Bstb5TRXOG=e^VzO z(W@naP@R1sxQWZ@aUpCsRyzX(XIprMt(Z~aT*-*Ph#>@^-rbz;$b!e2=TFMH`eNh+ z9=v+}$$O2Lue^@6eQ|p662e%{<5i)^*fAnaGs|0(xJeG<#?URhMt3cpxKZQk)57e8Ue5dh=MBtOv1q2p6ZCBuv9`N6gV8G z8-$uIfO>DdenMtJk_bF)z%ZSfep!J(DWe~bJx@VyN=<|6-cAV7#_Ke6TNIH^D?NSh zRC@Lhn6JccCKZM%6eV^Gfm=1vN?}W;#E~PbhcQW8phcpK8;RoLPh^;LSePkt$uQ0c zF-s9tsLp-SStN=DKjaQC`i6e0S1AwdHRUX0D0ZKW=3%51r-53TA9TBgmPR9z(8&rL z5po04%B;Be4)X3{q*P^ne5FK64O@VW>q$-yE(51P{ID8YL}d8SPKAxn{@J2LeNdx!)WH5J0H4>{9S{kOoG&TllFhB`1uac5Yt zoG<>A7TS>lU*EjD?KTp0_Cwt2Th1Xeu~nk~PtE@DT6e9Zf%4 zX=*pWc?;Bg`PcKmTaVPn_U-PY--wwz1;9top8U zRipb)YVms$(t@np-McpSSkSnvT6?Ux$!Z_Ts#zX5UVcpKu8tLJto#17u53|ELTCVQjTO7B^ue@}!INhl zt=_9+#UEk452y7QMFHGAKcZFr-m&8I6_9Bv0;~7O#)?1BdLJu;bdeUERo37yj1_;k zfo>l$HvEm=G>N``|anAqsSn)e7{%Bq-r(H2coWc6NvEs2~s4TgxXH-RMCCU$k zH+Fj*KU)1Kjuod^KOKn(3?_<@k zONS;mx3V06R{Q&p6+g(@*&Ng+@w5j2-Lc|F*x*AI@MMHr5I#f)5na8$Ys=5HMz_zKGuC(LIo8U#RtZ;=))H)Y2r%KxcJM*iytMFudk_^UYWK|f9!bi z6RbW_Q=Pn!*sIp!Zyhgwnk||&Ehq>oSB9+J&mJ%S4cmRRrk#*G+0KgJIbQreE1#~Z zEYijzOQK8Jdil4YuU`RNF|ddPacX4OE~8v zCyJ+7{~Kz$8OCi-pD3n>4W^!%XHFDXM`Bf4C*O9WXtVx%s#qE8{n6uEur!2WrpXEo+$o4TTc#Yorw7g|Ni`m;$O1u=^<^aXDQa{ zube1;e^f&!PNm0xd!l&vqa&zOT`}){wD?-KI8}q=h!yjZM~kmxvznVQwJWCaXfZvq zeun=+&m#Q_Gq=_vb;F)$RoG^ z!lTC@xh=o_CI2norpW!70>sMsX38o)p$WH3#ca!~C^Awd+v*%nqH##2Y>P`+wp=gk zucDC%s1ce-6=jYs<2k8vpyna94x@2M#Zj8ZkP4C8q(V0A3VTVFjLbFsB$YBU*RLL_ zcYp>Vb!w%!lpL%LNVP+00aEh_yT8;wXxEoYN7?O1;#=jP+U2U4RTr{~BhyEu(&2U~ zsd|LnNykvrKi5FED@n~G??%$K*ZatI-$gboc~ggpcaXq# z9iCD~Um}s{4qm}!5uS_861;k~vJ0FiQE6p!Pu>#t zH`q2ewl=hfaW)rH$<;)}tnk9symD&{?&j!7b)i zM%c0v4E=6wkMolcM_$pvLrB}Z8=(CTQbd5hm0==+Z0XW$WAW;9OD|3@%r@p08`l=D zzA$%j_98AVE#hy4WW6}Ibm{8#r3Pv&OkY`gsd4qW#`Kk!8uN2kE>1RPzx~?6?Be41 z)rH1faqaTlEWXWMnYn!Z;@p+z8_%NMm8)R-IdD6GE?sS~LjyH8yGUTg?83|?K%Rbf z?(*EyOOxZz%`II4%*Jy7I^DQ7y|6SlbN%x4LgU)?g=<$AXVLvdfW0zz<+%m)GF!}E zSweQ|EBMx!eF1+o7B5X-zRa%1r>_J11@yDfn7MlGrG>fYFD*4LUA=s979XFT1!mLF zUY^yiFsPZ!({sfnA~cKX=ZW1y<0_ymjI)|z*Ld;LEI+ZoY5Z?yY3}M34rAu(m8Avz ziFC177nVZP7v~mdCmYiXbBjQA{JDjz08etF1!;DL?XJu!6p~s96lMffNU-Y|bin1} z?DS>8!t`9pD!0ZdXT~M%Si8Np#|%>KHgAPv`oT@$9a*Y_@p1n)*xz2+==q{kS5@rRWo-D&400<*Q?T7TnJ2%H&Y72NJ_Dhe%eAceL?=e3#M z_R3zr-`!r>U+8xDRt|=_*2u8aBQhBwy6}wP)=i&KVRHO>bi{;uU#t5kwzPC2k6yk)ts2Y>bps2-i6SigE&22 zWL1l#ZV4`+S}K7!jwXq1L0hYqr}IMNoD2?vwGS+wlt0$@HgKKcLgT#rWyzuN_ow9V zt?t%Msr-#vY;g=I|FnGQBT+p5_@;OXgc=I+)7atA)&Nh~8r>yXEtn@BV`BDr{6qN~ zF>evQSchjscH0ENEVou`V^z9mVMwo40wV*fh0`P;9XBto1*oSF1J)>13z(p+{4k)D zxV4ZH6uBn{gaH-_H6qG~>BfUkhIiyRdriDzE`8W{(uEf>AQie(4WzEan{5Y@pPZ5R zc#=t!Y%00a8}tT%GYA=13q%T>_3!$KFSQcK7RFe0a{#+{i8Lp>&-cFnJspSYE8e|R9zte%; zZXZep7>05T?6LzrMw#ZaRhbDJ-~x^>MM2g?`YNXxF`rz2RCzQyiwW;z#am3-D+f#9 zh+S-^o5>>$yLd?e3RdUU&W7xKRNDOh3w~XOD5KtI`D*bc!d~0#b#~)z7(&PS?K<8h zFs;t}gx@67 zqi2OSJxT^a5%;`_w)`&An)mzSB9=MQ>Yx_HKK|R}-!Ujgsze~DBfy&YRH|giT5qU$ zuBE#Zhbdri7D36t$9IEF4&#OCB(K?$q{8=7l zrTiv`a4R&sgl&*qna`kI-`;qw(cS6kdmUJnEBcOzq20k_nIyOW%xR)yT`rGIv_+(&<};3wnP&fE#xI8U&6Df&CKsNLfcLEVAr{P+RKg9Yz?h zbUJx`09+^jJH#CH;f9kkd}q0R1lJ|QiXl^mg+((O3&mnUb^w<7-tye)s+_JiENYes>yru;@u8h2!U0>pTp=$DEvto)k%QV+bW*8 z^{0HPO&aJ(cAz9zqJC*wJCpIO4i@#=kgSm*SeEX%;8dpZ_Kwe*+8=pBhk8!CJwY9PsVfvD0pP%sMBBVUKJVLf0ms^gYr6LEve_oZXe zL+=VALC)G^5T(Tr7K!LnmXkO5b6>m}_hJZDqkEK?>3)uK`7_y^tNeQs-bTEQqD-t$ z5pCf`GO`8~eCX5i1UM8vL`EgUfX|T{P#6lvn0IY`bKsHlIB2b=&Fe;R66Olxn7FX0 z&BG!|i8rdl2eA5RIh{h6+|LH|wyxm#jvit@rmgEdV33XXEUkPg;(`^KE{n8Axs$Cz zUVFoa92OsB8(#*b!bmqGsE*fTQU=MoOQ>7Ihe{gAn#m8kb|W@3=5UGAf^KHyy$RLx z6Mwa%mk5M~L+T&iO|FDY3m@_QybjeS(aIAkUcWX>COSkJN{d_p&oI0iEzx-c@jdJ^ zju@`%I9LOg-|1ePc*>y*yG>bqJv+Ily1EA3qpN$y`$!s1e)ga6%#Eoi_l#d0lqom& zo{r6`rkDAo6kE0M%!CMiam4C6W6wRfxsjB2bE*;WS8*S!s58Och&OJSljs%kFTSGn zYS4g_BK^&;jp? zUkDRm#mc1tNn_QvkTGBdX2du+Y5+)RfMYK#*=Wca)8ZdR?wOrFqI3GY`o<3#MIKR( zEYJLr6`r>ae3G#4IKwfuOcg4zjX;O-(2$NIEuWG6tNJLrjGY)uSgX%rb7d3uCtKW@ z0cYys#t5Ns;+wGNOr;yNX*$b^c`Rl%+;-9?PGkF~c%2XJEj4N@xd@A1oz$*}2MecU zI&q9p?ylomSNFsQT}bp=)4njhq;t(W6K9=2p}pGO?836e0>LUFSM=oI%XVY>z32$L z*@d-8voP?{Ng5l>No9tcZm+FIx3%7~om8D>A*Yt^@3-Kp>m*PD00`!9I*05*^mIYv zW&sq!!|8`cHYHD%Z#z2U6(An!^Qm#CnDpGyvW ztVTXB77;h028WE3#Tl#YoDRIBi)F~dFnpstBeS@`OBScmHP!>xtV-4sPhDVu99IS5 z5c3(Uz~tZn*V-gPFo(%%iA25uJh%&KvoP#xvV z4IuTkL@u=2*29;BX2IMO$w(iN$g}}A!xDD3YA<%TIy-p!$81X&Fp_m$)4XFzcN&mH z61yV@UIVXgcFf#bW52gYL+>sQ60n)$2>$M^eViT1A$}`>hoICAmo>QKs=BkRZscTrs6A?^0n{G-(?W6RHAgkC&n+3fXp^b`i3rB+UFWC-OinEdrvRD z)=U~sXAudJQ#4E%<+MiYfSg$!zDB*-UE57&g_WTQkjb@8YZYR@?wK?zhSLT|1w7(z ziZY*dOK7@3DoJE|F{L1=5`PLyy0-}|HN7^E#By>QW~?g^sLAd`Gl~;y2(jPCU2Rtr6nce<`aN3Bm~qp zwPw^Q*mdozd3uLlt7quzgLrYPBn19w)fQflTIp_VJnh+5@Cv;7wUt4Zs36vZi zY|S5O?);e#fyLqvi3CkL6Zasi@W;rX@0opAes~-rt{rk%9Ag6O6CO}RSS5^ngUsWW z6ihBnRnk$6!cyWtWHgbg*jX8qb~vdj{0sovb{cdUM?1@6G&fQb$ z1S!18B>F01eUBzje^Eo-fc0T-uVcCq@H$_ReL;FN5N*-AffKr>AIcz?Y+NOf$7Jn9E zXRF%BDsMBfeN?+xF6@3Ab9l7nT`;4ftcL!`tTA=u*h%+yYcn94e;* zk?5(Et=iKy!s=vWsk?G(+Z0tO_WdqYf20tFiNi>LDzu_QrwK6W^QI*cmg-3?KGCbU zj|;h+f%1h_TLz{?~LH|5SB+fGt{1--Hch z*WFSzyYaL!ut{1P3Y3;?8r8>=0F2JLln=+>{DC)T#vb91Yk_-!=ayQR{0%t%_5{>ixj{UqQXE4)x@S(aL^!{tGC3M<}Dvwxa)a{(nPJI*2SM z$xqDx9TY$AEp6mW@-<*ys6tRCz)#Nq1GIggxAj^{=l^j2mr&#Vf~H!P{b{6C)m zr*%NMH`xgO+5EpijgOXrWTyvK^g{$rWE8qK-G^7shZ4a@xig;YgzXjhSaU0SMiat;-hTyf%-N& zyyERv>%DR7DUa!sW5sy_%B!R-Uwq?O@o83hcLGHXU!9cVGh@YPS>b(2g&>@)&eT}( zEv)mNq>kAIR^!50@oc$#Oq~jQ}resoe0+M7LZwOaz+zT`#4jC`dWkHZu7v9rCJ7mUd-n%#VAw zUpaQ1R~k#^<}+IB8i47Z@iQG~e3}Hz-{u;<};(_fLC>o*rmF z{>e;V@38P2hcGv?&eeiUP;5iQ;<7_}A5%iE7cnaJ21#Y_C%HUneK2&%t_q2PlvURo zPez63dE>8I$FBN?yOMM|RclEEpbrl>GI2`88w!gI46N3MDcKK|aT8*D_d33S#Q1Nu z_NzTyiiW>N&U6fq7x?X3zqi}Njn#w@EgU^L+Dctb{&kMb2X#c;Bw{5v+q zUv%)*bKW(e5%{Y)aSb)2>CD1_Ba7UBYvXPD;J}5gg#9KPwwQ?U(ko^#_i=ERT-o9& zB(@Ez6bzowTW#UpIvzaU?8=heeih;F_Ry9cAttA(1c77*JkG;~C`N1|j;n)!^bP_X zkr!cehi9q!Oc$d%afgz=jSlFlhktq+`f3k%9>KqkQVTKuKp~vi(hZ=d0RVKi_i)UQ z^H@e7F(`Jhi@+V>nH}8k1F{`l*h3*Ou>2Nsipj1toOy>iCJ{=7BSmSJcIHoeOY~C1 z@B4h`5Lz!crk|bhlU2WMsK=vr^@jgQCnl5Pbu^!|7z4Wm46T};)qvsG*Wp#dSY*B= zSE0>J_cb_TkZwYcMQ`?SXyn+oF!4E56f49qVFv+3<_a7}Iz+xvlSA}ZYjEDVJ%FQY zOX$8Xi7Ldi&G>LkwM_|5g?s5BVl3|*JkXqM{I9dZvu*%d-IG&y;%K)?TF6i6$x7r( z`f@`KQ-!p2JE1OP%>YF((^GBu(r^K*$2mp7wA8(W3>)dl7)}~THZ9?$;6xs{(>MNB zN4JO@8Jiu3hx;W(cE9{GQgGCa8!Hjx2xB^6?8%rp3NX7pG*%w7Mcy!#tMYx#RSes? zTOy9QHj;OWmM{;YEqX;jALwjQu@YTW$lgyrz~Td=!C?~klT#$i3=QSBFNlk6NzeQ@ zFmJNZbU=8GT>#j~sHO|`wMch8cbEq{V!4Z5Jcd4p~-$lp*Iu_}m`AJDe z7Zl1P#%MLLXLN%q!MFN>GENT_oqrK90sOWInORN5D65eS&w2FG5Ec z8(zjZGyPu66EcMzuj>dHGurYtmS0>>>e%W zCjYZ?>XqeXlkB8il@Xt8eMYwrCs<6vRx_{loD-WUrO2HIE|ZWrQxG>AlifH!By~B7 zCjGz<$OOW}{vJleLn01?BZy5Q2qm)OWXb_=G06SH>cD63Di3 z`^%^jRupCk4R-M882A_YkZe5t?mD75imWTlZ< z4L-$+17@W1QB8n7DZ-2+BDVYzpd?*p6qE}%W%?Q25m|>A6A;h$Mn-0&I|%>AB`GBt z*C6vbU|K2fgP=hKAfXT)Y*JuD%m-pBdAZ5s$T(-<>5Lsh^ivkj6vx9LlJM7=_-jx; zOizp@qBuZbSc;#hbK~v0pl!zz-8#9!@&*PE;!UNFReXPyYZ{mwy+~45(*-yx<#F&4 zn30@!I8^n?u8PNcz5lFxPx6QxD zhj3y3xzt4O7^E8I2$rlca1N|3-VBaA^J8F=QnqbrHQjRKp}o>3#(uB~1gXl4K+796 z%8^(F{w2hLe-eR7%E#AQ{1<y9b$vMd>=MDHsL-tX&5O&F7AYmX&7RL+bV)0S9WRU56)uiM4Y2& z9|)~jNAiq5;`z44<&}(*XuJe(!xnXhT?C2(GJQ+iq7A4P!>5yZISxJopPjqVowBa? z5Xel82dY#}FW20NiiwZPraln~99WsCtgod+C2+%P9ZC}V7tMg=avPsuUlzu#fQX|( zGq6=u9$!B5vhjAM5rRnWGP7m1aj3e$OPrN~hGM#>Brqs^A&%*o95#oeY(vvga%XO@ zM=Yt=uql5mR!Sp0jf@s(C4-Nv)dESPFzCZ)MWf5BgL6T@w(w#eQ;S=KFb6vQ7;4Li z%bFOUp({RB<~r+ef+d{j3w)4R|GeNhwfvn}ui|xUDW-5^ytdNaG4Bkx{N}!>u94<7 zYmoM}I6<&q+PQRjp}*}b(l5c?tnM7_LGp3jkM zJ~U5x%~ySH9B{-h-U1^4AuI?s5RzHW63(k;iLj+2j2l-;VA(@K7xotL(hu^EK@y73 zovaI23mrGOAI?;?VGP6&q8u_2k`pNw7!?mk*jl5x(ZWTQl<7rW$t@RkA_zyGj@S~^ z5_*EE!V84t7>rr5s=!YcPp!-e2*x%P1M{!?>`_^ogsl zO7aVE019NmaWJk=1hnEgkt3N=AQG$+^s5`I)kaXJVs2YzlwlX*uaOw=%~38#jW~?V z){fFYV9DZ)*h2JbvGXaK`>$E0jKoGfr#Sx{UOBQ7V0)AJad^Wxk>0AzzG3VUT*Ak} zQD@(DMygp9L^KKYMf>1}5y=ZdHAA0Ja32wu{H%;pNMKNC$bpBtok^A~M~vxJLP}$G z6Gjwb;&V%-po>lxD(+FwYLjOzk!3`E$QfB2O^SiF9!3>=3{D*Pu?M(PA~ev3+l$o1 zzP`8P3Z@PYsSUVeF+mR%80Z9a@jgQ@`tmZW%BdmGc$Sx+dS+ww=>xpIe(bOL*{WJ8Gb+*?f)*Q+R%!bC?sa59Jpn|dN;gz8bV2?t2AsATQKFg;zBC9t&v zzi6{R@zgUP`__*So}OrYoPG6~aW@Rk_{duFS+?fHGany>x?see&CY(Ca}5E9-&eZL ziI-o-seGURAPGn^XSN4dSLRA@J+dAg2z9yA7Bu0J$Z6DvJ{!{Zir zmpDslWF&qil0+g{4kC)iyxcEYsJn$UpE*f%Soy%rovB%+k2JK3Ff&Ja63>%Ko^0MN zRq#;9<#+1mvcaZaz(R(hjR zNW$@K#2N$RmPZJPV1wn!a2Nvg8L_ndN^F~wO1nGkDrt_>mP|NkY|;W zLUv{y8Hh6zLa5>((RWTDCqzP;*e)ecHA0{z3kzxUgL44VVXL$6YnYPX=b@DV#ij=B zNwRlW9Q(#2Zic{-r&b;k%c_|^2N8wSUR^o^Y>?P7Z{mopB#3;~o#fslIpWnM-=?)f z^+N<2YN$-!M*wkgw!T)-H4E+)cQ1qB*$%_|hFj94UflTs?cS{yK`%|BC>>uG>n zoZc+Nts>Rv`JHA8qy8?UZm4ScdezBFVOn&Dq{UsK0Lj#_b?kI;R6(#CZPr^UBob#` z(|?OFm)cPc!}P4mtCli~;MB&^oG>i@%@{ORr%trHf8i-m?&-t?ExWd{{O+m?MIyO; z&#_It!Eld_H6&JUC_KSdUER(mRM4ytcVEdL(NPWt zq}70VhZ(r5ab;!Ig55yHBQsqB5sY2YG{uzvr!iZuFT(2b+khP zSmvVXgta$gp7*4`A&&No$g=^KAu4yVj%97QYgznWSdWQDs=QEk%g{Z5mT(Q%xfN}4 z2Cej=OZymKw~fM*GbDIuXM->*G8zVo$?7lzI-G(WHKrxyfn>98eg3kMoe zq@{b#(0EovWbz3CTz&6%cEnA=6P?hnwiEXm>^yyo#Rww)*vQUcZkHbTH2_c-7CE2D zdYoKr1}QS!U8S~36fdNL0>pozB4()u^^>~UREz~A&#rH<B6S~Q!BK+8vB+C1!cu3f> z$zw&^AvX=3yuEqw(sC{nPs8AvS8yYtGESXe8iW$)S#<{pWFcnD# z0j&m;XSbh31Q2QfK-LkH9u|*&Jk3QPKTGt57iElPFd(dnTt4TuSXZd65LygclHEki zw!l_K+-VQ4l@*b9gZzd}2h5C3;NBL;-Mvf-%;szyzDZbz_;vJ7#cF(?sgH~mV`FKZ)CFmEj*k`ZVV$=*9IQAidfyl>DyO}R zJ!6GmH&&cv;X6Y+bs1Rk$H$5@EDmEP4sD2a<*Eep4! zWxt9BvHXckkd+fw1E1cVY75P6aZN#})`MQ7$29=M`qZHc=Mf96VEzS@!sD;E$%uz8gf)??J<1N6#Vh3o~>8M|Sk{tsr6; zuZ_ovhUX7w7=7HNqEDG_z!}kOiY5A{k^5UB5Fq!yz%@GV#|iPLKHmCh(H- zQWY~U_YoVQ153g*RgA*vCk(GcWHH{t1m<{eov#pSspQYz?5%IC*qtw{C&Aa^=bu9G z#?&&S<-tqa-NygV-n++0dS&-voEbW{dYAjsa=EM3%HQ_vE^C;c;>>VKtvYOyJv}{S zW2SmqJxy|%CQ)78UENb;cU7mWnlrP**+hRNl99C@1_dODA{%y`z_RSva2#x$IB=Yo z1H@5e88#3@HUdYmVFd`Fz_IKoa(=&a&V7DgJ$fEXuEYX4UG;tUo_p@O=bn4+Ip?1H zy#M-wIW=iKmEMJYsWt6(rUM-CTu_3CNhKRq*^6>u1GfWQ?!n+thYo~(OJ_Umc%J{<VP^m@yxaC8r_iqQTgTbqY4l{6zEu({}M$?24Bx_|r` zWI9>mPKG{N8y8#K^Cp1H9delCkb*ztXU~Q}jlBpOKf2r-EIC2Z-WH>0ZTgahW!seZ zdEkRcp+~1KsUn(7mzt}KFE4%*k~#^jsjZ(o`(tn2Isfd;g>!e$d?m^&5iPm6gu&Ll zM0mc$=+w@Z&L|>q+4Ijm zcmBBx&;8gpE`0rk4Fo+4G0JCz88s%a*e*Sd@H1i(Q1`hlE_TWmT^?#s1P}#^l)H9H z=X|}msx>xm7fY9v2QS1A_a)W>K~2yH#i75YT989ttK7GgO(`FSRYno)B{n~?sFj(3 zqy+ovfG3j?Azrl?XJ1DCH^f5t+)I&&2%9c)imk^I>OSF#LM{R-QhaJcVk{dif0GRM?e-5$EgA zdJZb&aDiKrm9~ySlAutxP*ll#ffnX^(o+4rZ%cGPllurO=pt}oul21Cmh+u9I1NhL zzRX{U0Bj?42p||3Ai$WgSJu{6iuskL=;%$)uAv49hUmFf%D5O)!o{R$#};@=*yX*} zZomFEj+C{xC90?0<%ZkR##G1#T+@Lpw2GRz;`Gi3>^!(b39~Ztxae(U*s8FEozq0P z4g=iGuZ33RUfsF#=g#p!8HkG5 zc>J3}%%p_hKZT>IY?mKvd!}F)=0YpR`Pz}W%z>xXtH>4hW5j9!U8q8F7tU^b4l z3wy2o&FxmPk84j%1>zpIwqHjgY~03%zcMoWbrmSWLuYhzP3-w`6!6_LX&d$d@klf` zZ#O%R3w4{VtVq(~O~i@VX33fLx-3UG+nb2SeW#5pk#8U`8H&y+i@KkIlK0NSH~Y*^ z%_Uv9qa(F01rDzyneHGUH zXgC;YSTQ6R51zL|>l)|I@$sxg`r#%UO+h9U^+-=L8%>hThzJAa`g7~X#WB{OPXv(?evt5MeVTo)jnI5Ne;E@I$z?VS>f>bHNt|R<=58bR55C)9Q<2?gW zWG}TJr_)qv_YS8(5O2V&MKA$dMvJkP+p^4-B^6?bM-19nLW9I^4GIDVWEzFNqawF| z<(&)rrWOF5a85a`+PxSV-2eg}1;r4U&YY~GT;^xR8e6rxCahlOAHjGWbgBf~HJJpF z1{r8(T_OHTyNXefJ>7V!nEX>Perxt>?BuE3n6bp<+cK6Ow<)s?6~{+K`-gT{B||)9 zM-zrW**lQ{jyWI1&gnVd&iH*3DH`pXoNgqCB(Y}0fMZt_lC9J@53Yk$k)jX((=7r7QJjtRyjRfuFH0uPRFL7UjeJ-2+0l+iluYhO5s~K{Xl|C zS-pBafJltwHU*~} zSsD`|Nak{LFDwjdMv(FLb4luGgty`uL@rbhjHFXQ!t>L`YI`4^64{nK`4TQI!`=xR zFHc5>(HJNUB?ade-D4XX874Zxq%Ceh(DcjBa7BhfJFFd;I=V$E#ZbCk-If`VD zlkAw;CieAmmNGJ-;HlXh&cx=1p_T@Nsgznj`*pO^?oeILDG_1yb%}0$e$h3|HOYRBt;cb^2N!P_(|2f{?BWLdrAv3u z-f`MCeoPlN^#8Dfb9>vg0QYZnb_QpW^?mCd+8odl@~R)u@nDuScpd;SKqzX&%l(FM zhT|D_Jn_U!HZy#)s2zJ=9)YdEU^%s`f(S7CU?9MZUJ)m0o`(WUC4@Yp>INXM&b*3 zj^leT?YGb5rP1c_KFiBtJ%0Md%04^A#?d_Y?9u%b=#sznV}j{SF(lB!KuQly>zA1G z@|x!%NXmKSvkX2QCLoOt2!)XbU$8WFlG=2592tm#PIz9uPmA8GI%N+;VWBc(zmd1V z<5=E1B~YkTg$IGJ!jJ%S79#fR)8X;-TcNPyg`|`2VcJFaw7P@-t#(g-`p(I(v}>SQ zr~;Ec*e_e=!|T-aQYK4OlKpi*LoZEoyBGelMoa=&(NxsnyNdcD(gZ6}Z|_~kJc?ve zaS|W~C=zLs%K9i|v2;>6CPbvkrfeQ z@2O7v?nx#&hz3aOhfB|QySS^tb1$Kkhbn@d>@>+Ii7f z1;t2Tt$;Y0GiNo$S{C{rd$&ahFSy8%N-Ii3uiBYd8M5-Dw4n1k=+rjuCxYU^szM<$ z!$?J|Lya1b`~B2Y3@>@=DIR*SR)%z#6A!qnOqEFZD5!-To^cNCj2U=$BaG`s(cwRgx7C&a7ReyV$`i*m>7=9o!ATV?PWTZt)Sp>Ezz;{kWcyA#$7+4@`dKG!EQlT&rt%KAHSPBr=I;!1-*OoHzjB z1LX5&e0_^$m{9HX)zIXySZ8c=-SKyceMYE&XlVR*ePK<_PNJqRM9Ioi53O&{1yQKJ|b`IC2d#CU(HyW-vjR z0v?fCff~J27R%R~5pkzTaNRZhba2Lqi-DYd3i`{vN{h8vTC7FV;v=!Jhdr+s3!u|I zi3OZs@^{pvQ;X)Nv0|aj$2#y2VM-ZCdH7|fx9NjLfP2v6Oo27wR;S*D1trKK6Jgqf z_tIA#pRCltqJonvUs0vsKYEvv{QkC)kmWvG?)PjP7>!ntvc@(qSE=e{vsSXS<|^F) zaq)g#i}bpvU0*+J5-QKgR{RMBgkY#q`17Xs5xE>0ZzN?op zYhUB-N8EA+pH?2%uH@6WtZ}X1zntnszPl&kfr-MHybpz~cE}%9qA+f`g0FOwGul$DWfERu zj)h@om9_YBm`K(8`}K_tIbA&JoaPXFuD_o9fsMb?p^Z%|K)`5*i}0tOU~|Eyi9iNaz+0GYcit@KJ z9v-q*xg5$H8*)He^9IQ6D?a;#ca0c96h98vS;-EuvC-5D^sP$Bq$LuM4#P5IA+Gp9 z4hP<9)jz;@mk;G?2iHI@T*v7;T=QaRGieHl3BPO`qkA8gSSAs{?Wk!@RdN?jSY-4sN@sUFiQ2Av!TnbYno)lPxaN8FIMH8 z@GTuq1MZvsr{1hF4(-r|+|4|5_p2|S!SfmX&o{e6-)xrNylFvhX1=2F{D8M#}?zlsPl_QCo9~H6mM^mh(~O zuMwyu5(%>On1D*BrOX`T44op9YJ&Zo{976njDPi@z)>PHCF&_jBG1;(p4Y(fuVxWt zN+%_)6`e)dNhphX9yR4iH91j*au!%G*(E4Jo+`BS#nT1hM;6sGrUA+7p$EJS!O4-c zVUb2vo`z{b`Ar9C2%SY@Ufza^h}k(mfup9KV?aubir^gKts9TJpFaqi$7B%~tcq)H-@mO^YvH&He&!)v!X8NHA#GQ5K&*m5~2W2 z8JFB|)QqkWVQPb`9J$=Ni#&^h;Td%_l9|3Tj$1^GoPeFZp!4$Ft!!e#tWQ_3hjAf0 zHgUSR+TLw#;Q~_JgK!f^^W|nN+~-Xo z8VPro6);dwBP+ZoiX}A*p6gf!A87`{8HuwEbridVhQgK8lI-6gnzxAXtAxYSk<|KZV5pnZuW!2$+Q)51-b&|LxQOrX4HMBF8JEttD00G{?JEXxw#gC}Z8hmy-K65V~q zw8CO4@`bogEvO`5660p_F--bZdh*#k`d`={sHSve- zaajND&X8n^_oD3yJ>9r|FzTM5aJ+fT{mRfhqpcTb-@JL}{LC{K?#>=hNAoi@Ioy^; zR=b%a6E{&y?97u{@Wq9Y3DLiPBa|)?8!Jc3_MgR2jI)x##9e zBm+Hm)rzm3R+8F&vsXbFlhgw0#<$pu}JCtTY`&G?)BN zkV;h~E;;!GjBB|G_GTgg93&=gdFI}OYEPEp=V34EeZ7R{d$p`v za}RxCAKH#mwd!b&Rk_#2JtE}T<=x8GLX(m7m}rTQ`R({CeR9K4w8G;KfJ%A7wb&(9 zMxt4F2>~*qA8l@8eMaz*T)fiT5s}z$LF8}g{YBoUjLrFGo5_H2-wV=W@3jt*FC4%u zIk-2OnOVA?;OOO*J8-Bb?d%Sboz5*6Fok@knq@QG^1)RtoFRYRu2lyH(vmx8*LMjpWep2vSZ6tWaz+gNz*2UQzEK~#RAn`668(HrV zf#Vmmw>kT@!s|7ZbN1!`mR9HWs zrY=nl3F{ZKh#5~0iPiGI`s;-GR%s#_WqrA}C1xXeyg?4g_Ky%91&hnDJE0H*!${u{ zxfbS|W9@9w4U1sXR%!~(>L5Ui9{2zo_j=f}kgd@ZLC@-V=$?yCBkF}Wz2W{4*yXx? z*u>~ubNZ|45uvTje4~DS*9X(ZLo3eYA(xugcuDa3n%j9C!ZSPXwNGp#^!i7bpmBF3 zBhZpwaP0ssaaa%whWI!k4(>hy7&u)31o9C9@F)*2Ojok%!rqUI zJLS?o>@0A7=YhoiLiM+e5cVCs1nYpoz*u_N9w8z8NNnuVKk1$InjqZemUOZpg>84c zCs%1|5~jU94_LCE}T_gjK35hcydSf>k5e0bg7J(4|`;dL2!v~RUIqW9YXKJDw@xf`n8xjS9wo~t#e*?afS z*&XLOX79rHCSGC;+Q!EE!COSDIFESiXNs@m+Nb9bN{@T+5OjW1t|(>Jb`&&_d<@H^ zkOj5R&lDGCif3kuug?_E&J@qRh4&;r;?|`zRvf<#=$jGk_mR{P2r166Lo@LQlC2ba zU8x)jH?lVE(p4Hfl}Y;89#fL|kcMWnztfH3?k33 zg~lm&JovkB*}AC6NYD#i>4+`a2Uc5jmSSSG_Q7U@Bk(xH4KiY^$r@zP*4_%z45GE0 zCYR9KaJjN})I-u;-;vfoUg2%!yD5(!9mOAC@U6q?}`yUO6D^428?P7V{%_9$dy zGm^gTTZ|$laYgL_BCXIUW}~7cH4Ah(_2slA+ zA-5;ZL9a=Ji1&7cJCgZWF_UOzQP~`8CjrcyL5ycc36gvIww$w_##QLW^Z+Is`OAOK z^B=uNkl%XU>4+5!Z`yc-Q$%}8;C6Xg_;i>5;Igy6z}?}mbNmNN0E033wYRfV0a;8; z20FgINBIw-Y8TPrdDB&D*0Q4)UA~@(DlE92)EMU#$}QfVEW!%M*OY9&yqolO?0|Z_ z2)EZ2JW@`TmA|zQkN3gAAQ(G~#Hd4XwwMXcrj$O+3bR7oELflOp#(s-_hMrZZcN^X zsjM4o!gQYuw)Da=oD&7$u;$BpUGlsfJDgLNcRHkTAnv}ilrT-fVQ?^8fOK-GB&m<} zKzAI;Qz3O=Q9~liH8eP|R9iCXI><426=2uphmS3KQ0=hMjJ4tUyYVI6KO05&s$jHBNgmTg1PHR9Ix_ z$7~^gh7_@Ju#)kwAr-P*21qif84qrc9vkc^e1e17BK|d`9XnDD-vadIVI!62w{+t= zl1*gjudAoiD%h_G6__lh!v3VGw<(%frguw~8W^LZe3)B)o_W2@QehrYYF7yHDO;3s z=^TU&rJ)HNwQB%2+P~-jH_7U{MNI!=bp%0r)U6~|exR`fNwCva=H#Ze47%(-^ zk-8;fFIDrjP;!pP$sHW!p>9H5%}QbCX6L0m2_uCzTDVCKUj&^i$w%7of-Vy6Vyb9_ zzPM!-yZSwJI8;>}BT?>~jWy9!n@Zr>5h7pB?P0RsMB{5)S;s`KLUxCUj0tP;Q(iUs z)c7TXS35HfqNqX966J9p-sS41Mm1#d>aZu#8jvxa=tnVk4i9TrRcb+~#R;h!rU+#; zbS4UGCt;EqVyOEXUM*FnA+VNf~bJctW} z^MPE{4Djq;*j{iW#wU(g+KAh|K?k)9;n!V9uu<3urhGQ*3bR#10bdo6EuF5i6WE?` zDLwo!+MUU+L)&!?Qb1?+TOArw$klBzxWZV4q!O^F*l?|iiz*oqArdt0gji~Wr*&0Z zp%ii;c-|(4AQfYomq2n@9=a(P=%7TPEss;x_V~lhF#0+&-bf`ZOPOsTEL%bW+I7~$ zh%~ulTho1zY?s88;SoNfb)ktNV>ORC#10>sZXsd?1mj6Y0C3WbD0YB)Y5~5!O z+EN7)Zmr`kvu)Y}_1A0jtId^b*O%6ot}V}BP02-I^nVihIxYW^F`e)Du`bE38x1Sa zXg{wHWG}CN%cMjw-Vs)5?czh1CPLMVOuPd-Rk~vNDlLSqK7mxMu9XMZq^!7M>bPl) z7Je@4$taA}fui&h1ZDj8B&_QgFUMNo5nJjo?#6e{nC_eMi>O%F=AG?E`bIa5n-nwV zHZp}XnS56zx3XEfLf6vir&CIK8~ggZ9)mrtJ>k@|(ws?g#gw7k8?$=IY`14AkwaYEdK?av@}s$sMfe#?3k-5^ z^KBTIE9R_KEK3-^sOE300*knCN=kRMl`%exgB6XExa%|LL>A!3#792p=fB)_MHy(ZD%JnO6{N(%J`Se1*p|#h&EB_8&|A2q}{@ah8eB_ZU zTk`k|LvQ}D+JE%Q&!G0lqGDG6JM!X*%<}1Wq*nWnU->hr{mHD5LHJ|xaym1M){~p) zxkK7EV1NC}{{mp6%WvLBB)OIUU$6W_lz$?JZ*;aoztQ+ZCx~KJ%251eefxM~mreWF z_`@d}O9b&)Qb++bK4veUTuJP*elXJ8R@yeCjc=Z4^a-;zv>KG+_|`t{P2=c9sh})cCzt_lK}YHsyueAgR*O{b6-ULAj?2#jPviGZ2U=r8&W=GI&_i}{dnS@$w=}KPd0vwFdj<^ z8H8W6myaj@n+(ElpKSbdfshn32>;YxK9M<^G8lj0RAcHCu=r$F%%J?vNqzk}ouSpM zWaIOv8eb)lPo$*`#$)#ObE%6bL*yH$8Y==LEoCrj_V!CAY|}y+s5ehF-XW;RD+?RM z>sCnRY3^IeAij61@y7(BbTBV$5W80BbICa%*c>|D&Y;;e4*N5w8vhwVeI+er{Dnki z@ks%z^EXd5ewB5mN7p%oGtg@M+Ns9hW{t0ou3&`~Im%8=rm@b;E0o!7|W4_-NyCzW%(gt>$95OQ4S#rwWzW0rp@{ViX5 z+~O|9pY+I&Te+q9Pk87PEXz`3KXkTo4b4X9r+fp$g|@)0d&GyzWhwVF9^kN*h{eA1 zShjx1!(l6r0DjgZFnpnug1_i77%Kgx+@JR4#z}ZVuB=AL}55)K$7O}xaN+&^I7LshVKJ)G}!q4!TaC&p{f^kCXeX9U;E|{zxK!@w5qRR z$K6<3E3S675ZB%=YWM-u-9qo+Ha5yP1_drSEH0co|LoZd=PsNtR$+x4e5>^O!uhkX zO(Oz%P^{dBw`9Ax1T({4?|>2VQ&TH#ocHY0P(zagEsxmi@8TpV&RfmEN7ZZLW4pJ7P>=jrQKWBSa@6dKuXBTn3m9qyHcF!vDqj@}@G9GQF=e2gIXy`yd7K>G+^ z@8Qs{MVHZLA*7Nl@-WBH0DOSpDmeE$JN(<0ZXFzL!WwczE++-(&7%QIB2sEkDL*rX zemo7I0V0C;2mx1UXkXif!%mI!KpnI}`$i&Z_vVe>KFudnt}H3Ng9{ANB#6T9A_BiB zEz%07?gkisdo=a4YfuxmJM1rFB!w+no3PGEUz8JIb^)qFZt;o<5<05(s(*v_FS$#b z1Vg)>?i3%n?x1%^n|*|~G8U>3w-a3$Fj6gIm0J?UqV1ou~Y4JLNH5OMFUIFC!i%VCR z*4~(zy1cZu44B1b0G%&Z=2zF27GAwNzgn!kx(biQBAUMhu**x!msiosVq@Zusco4Jh!@Z9jH!SUcCnJBqwT+X3MO%yr@t}Y9Wvx5fmZ8UPY%pE|(VPuL2f^XE`Zc zpOQ#?$%WNy?i|76)J80RXJ1m;2R~|mYRaCOkJJ4;Y`bs$+x;nlv)vlBM1jK`u}c0C z1WKp9x2*-uh-qck-dI^|F1)h1048}^LI=SWFcr22J%lZrWp)M^mBSu+hvDeQH9SFxYZEd=k8g-Ec$)R571H!h^qtQa+(r@wu#l0u$*`+cSh$Fkk&prFG^+9^ zD!t^n$dsf6pyQG@aKW8rtibGs&+-s2-LgVQ z*E-;I%z?TQwh#z75c@yYX=zp+D)1LzF|k8fw2gP$xLc#on2dqCgGKZ+0svU^stgu_ zlt%Zl$Q^BQ)kHAT5vY9I9QZ!=CU)X8!GsI|t-m3E0^=FvG5sg(9$!0|PCP9lf&t1* z8zI5Tjz+8;{A8@%(sD5X&9NqJU~1~xIih`E#;xumDzL=h$XqFugUh7H(fq{az!2v^ zRtJ);SF8u+07=|^dP2p~hn|-KNr24WZ7#TN0uz-bNQ1c7O1AyhE%A7U{^CejN^cbD z>>us>OHM*odCh_-yu#a5^nw|M%fXrltL#Eg!ZNQNvvYfpswjQb6)gwM(b~uL32@d# zfE5VcH;3@o1mqaG8L)GCMSPl3jY5*fuw;n_O5)LUE9dah zOiE1xX>eNJ`rZq3cuXkt6rb{YNl%aKkB zl|-KZ+zm*uCK@;)Lzc;BjJTD7Wf@71O4%;63>ys{KiMCU1AMcwJazMDgjAk4iHuEz zXQZn3z%ovF%bDS}9XpQ4%ySM!z2g{9O^Z_7l7OXf_fyNn6V_IoU&b=U(?=@LL_n3IZm8HKg5wX7(Ux!kxuEvK4D)vaM+Ms9w7Vcuv8JL63j^9Df)dNt2td`qHA}y z+l(rLEY=9KXeE-4K6Ei3qvWZ64Ah)3GC{;C7XtCgq;vd7bwyIZ7bIswi8+_Bs?0&BAq75G-e3*;Dv6{sRe;w;1aIsH{Z8`ihw%pk8P#1!J!er=9?nYxlq&Di+qf5k8Gu>*-c}270P%YS6U(tZ4et|l!#qGe zObH7VBLnk2jbC7JHS1x}!>@jwKAe8c#Kb4=O8uaBAd_#VuysGg_kmNRLm#X;QxN@Z zPVhx^sua)z2A;9Pew_Tkk6}W9dLKpJm$?AOFWGafWfRx|sr$voI_4Wi2Lw4nrrFPW z80NYMAtiK#L!@hHAAki=@}z9C2m;mv4mCVa&uBhu>`rCyJ+@J|fOrKgx88=H__}P5 z=3XeMq(&`nHfC11+Sn1WXBcKzH`J*&u_qf^`oY4d13Q0h^@Al~e_djAvV2)Dpu_lm05|bCvbvuaoQwyp@^@R>b0G{Wo7r044 zE@RzM&Ycg$!DU~5|CE$Dn-p4;Y!TSo%oLK6At{=ayu@R=S7wUW-b&j%i@YFiwVdMt z^cV**vvCtgllvg6nSl3)DrCn;G>j;74E(0yE%eb-p%h?iagym!HuY%~$v?q)B#aRD zLXt#A11S+jIq(gW^&A^G%!cv-3(G9@C6Ok>gDMLc0JeT$!UzS^iBEWPuo^apx*9V1 zDE=G^H&z^up92e!fe-!R2)QK^Xp$K%6k!j}0tEyr(k zHU)OqtUA=Yi`%^;>B4MLds4tWiF7*W!dy`>$K)zj8a;9uRcJ98K@^IN5>4)#m(B)e zC&C#@Vjd|q>c=UFor*Gxu$Mq5rXefBQ7)RQE-5{S(I72l z*>{6>aJs-gNOp-bKDM8u`Q)hELCCddV^iHcmUZgl@ZKV!n8eEGdOQ~j9dg$6U@&&7 zChC50Ogb%r9n#wNg?Hx)bQtZQn$CH(w8FsWhLDru+)&pYm&8Q$Q|(dEbYSdhWmSt_Ajt$ZEr z%>=i^Sm7CFntUlsvhQkX7oawnCgM_*y`=;$QhR8MdRvA)x! zk&Q}3HQ)@mpn*zir}7PH7O5KAi_T*ApF*QT@VzJy?%nhZvecU7R!qkP(qRVV%Q@ZBb^FsY;lMNS(GMnbUl z62GuN{KQ6_Vc;q&2eGYyWR$#sx!2Bk0QcF87|!JAtMt29+}$#9U*z{dhG6X<58)ts zBr463$K#%ysp4imZAqx(w&yF`0Q=u@3t=3N3*M8DQ$T+N!IgIkMT9DK*uKpeQk!Hx zI2q$n_MMmrqAv{+Afe-IWHPmmPlA{4DL?>%$Av;wCNh-{gyum+P`(BaiFDZ+jj?c< z*%;r>l+F5_+XSJCr?}L-;_2o+|7N05RcI+b8?X@@jFgl&`JMs}lDHS@s{=*pnea3_ zgESNfnXPH}gGQZn+d|NhbG-yB|P2bOVmEfZWWh~Q{j5e;V zq^Y#wwD(AIzx49*wbjLi`Rj{;1pr*~#Nf3ia<9FEj8E*JAKtJAv2YzxeN5O9Dzvmh zixmvJFt`T4k5oKRJNRpcy`F=)ieaOoj+nvRcjfIKf=ahRu<7@v>--`00?Y$UE(Efo z0Fb~keSl#2usgLhOnU^?3* zFm?_ZFPYPxF|k>$Hn`}Jtyb7mc~AmsDl&$l`^=wX+l{7=yD_Uec7>hYF0wZW^>5w) zyU2>l_UrB5PMG`hr2kImpm`I1S3g*g7v-|#i%rC?z7t4}3}R$kDa)nc-#F@l>zjO> zLX(1(dy))dX{+Rj%XUVm>OoLl8y+V%Wx3Wuhbpq91R@B-GnT>k--<6Lm(f>LD6+`v z8t0lzAQzxv=a5y_fp)ood>?J8a-7Uvyj?Fbl4aTIz49!!T;Ng-Nca#jEhVxe3j*Gw zjCaxM`w{n&b@36~WZ*Z=Q1n4@FN6ng2QXnK*8}jkAI*NWi&mp*flEZwuelil_ZTEeIP@dsA3Ie5~F6*IeQoP_BsdsPBj0N`KT>O`Z*QPLsnB)*8P=SS7<=a`00isjtmN| z{1Zgyzqlm#Z77W2xUiUDtfyoKJs!RR5%@^{QrO(N0R3q@(GbS{@g?q_V z9ENv+OCJvlz&&ffr1*av`tPr`9{PP+T$m(gpxyw*! z#KmMw1)_uJBXvMd06|ah-Nd0ENYobZtU5fqbJ)Q~jX6QIFk67!Kt4{(MQfV|NyE$NI=LB%f$BJ$jWZ&LJO(Xw^tPn*JoNL}mF7X6 zj=(RtGiq|H6{vvD9^z6fo;#7SOZf7f#6uCJY1_hCtTsw8r(Nxqv7sxns(EA~6XZP) zSu##-V?(rEvAL*xX~JTGKrq}0bcvH* zjn=k;wE&1?s);SvfGJ|$>M){lUq;*Sx2coi7Bh636nm1iP|ZPQ4`+?N;ATHiAVLhF zfDHcI*qC)x;Hd+l)=M&Yn(JO3pgWOq6J~_r5!l!??0$pt*ySg-9Z`kRC;o zc`0af=T(i2Om-Lz3?C8x|NI~z%?c3&(LwsB=om} z1g_PvFp+Gxc}!copvE2;BWUQ6BXugALfG{%0!G(lcuC~KfO*-PIpHtkvKlPt{=N)h zjLQKZ_5qe5tb|H9Z-@#i7rRR!z^o=PaRqEBfhfd=TQ;A4+*B(XtEE0(yo267P zZ?Y=eqWgq6ww8rqTmy+J&?%bV`{DhdEa@bBhc*54fRdU9UV}eOgcmwsU zzqly(PHAqC)0@q^1uincYU?l2trTUlY}i>Aa9vQ5WsjW6HZHaj6cf!--Ob02_fQJ7 zjePVIGPhf-D`!D4^?C|1Rc`a3$I~rPwPNRnykV{8%5&J}fQSzs{S2LAmnQcoP{ zS+U5mM+TPJpZe+p@3R0u3JU*5zLr25mH-$QqGDl3NqxWhnjZyXuh;P_x{i_WIR-#j z7(ikvP$aN2OQ4Z-9C--DkDqh=RtK(#>;rg5)AbY*!jnkV;%ssLt@<7WK<6MbL9=mw zfB+XefmNmwOXxnQA{9o>v zA?t#0j)#4(ydr%V$|tjL)vI`8G+!K_Co1_tX+0S)jOBx4@j&$gJbLUAeT#hJJDqTs zu;G8RBblI}+aeD~3)2^p4l8bJH~3F%*-{*pAxg_qP`6AS9-(7ZtyhuC1r0jBIETE= zEsU!3wuRXmNM4j+MZg{cvd(QIj3GsYnI0b{R#-{T^|OKOY(F1iIl=XQFn{$Xb_1gKhRus;nfXz8KR+Cd^3^#3g6rOpt(F7fig8*RHnOjZD6kq` zCc|pheUFVpGwrc|?OMt@jLoaukE;Ra*ox@lAqR2V?%E;NT@4q}@Ta!!p|er3fcqyb zG_T}6Y?DLfk`giZAk#@N+9Stiv8=l7zaYI7LRK^0w>b(rtv=Sb+`F(8k_xV5d5;qW z=pJ)nL`(=Y31g$aBcvndx5?(qIAbHpjdgexrQhz@Ypcc0V6 zb-kHF%wQ>Y4tI|S(idbmloO2LOie+y!Y244Kce;N95(#yR+zsIhtZ=Y)ytKthX}e7 z6jNTlWEXBow~$0LKA0E;J2Ak0BJoRV&xmosdW~pnC&sC3`FR~BJdh6M^h8!k&5FX_ z&LY1jEbKU~$mA}q$i`sF6~C=d#wPyLPhDo?CIilUNy(7s}7OSjHe=NPYP^3 z3+ceCvOt7|a2axIG~U6=uc+wtbvLlbl6(w;6k|_V`w;hqVr^%FBt6GV+aXi|#DS;u z)8WPVua9H^8+{XeewbMLvCFZH*38paHm}@3R_aIjO7mo2c|o6$4Xn&NSALqgt$}S8>S*tO z?#h3N_dnom9QOE6G(OJD8$M0g;?IFePwZj(zVQXShvNr)0n60=Nqg~W;r}=`%WA%R zqVdxN{h72tK)LaACmO%Z5+9Ezw$=VmPc(j&@19`03r<1fo>grmR_vdhX#5KnJDnD* zw6a>2-#O9vT~_&AR>dr%R_c+Hjgw5vF9BqsefAT(6L>(J-OMeKYTV?!tYtA?fbzzqcv+5Om2Ix#!XDxr28%8@75St!m9c*^GFz^lRdm3- zX+za(P0MVlk#Q}(E2h`B=#^5UnlhsbF$Xxr6Z*KoD3E4dkL zyRDIkJ9&n9-u$t~{w((fml=@bN`r66Y}?iY_t<{ox}V-Vnzg~bvCWyoz3-m$YPKbA z4;E=$aZe4-wXUPAd(mj!fsz;1+e|9vkphy}ZX%4q7iJFR-FA+<-g%cl)w@md zr^3AXL*kr2TTlkiA1goSPeWn!V4H+=C}Vi_)+a}(?8RaJocBBB-~mK0T*?c}#YTDQ z__m7t9i}+*^hXyW@d}5GMbO+uOn|&G$H+j?ccM3_cxsQpd+bcPZ1%#6ulO4!JTG1J z;45A(U%&ji(cPJkTvMu|vS$esqF)kcn0E}%Eip>|#{CA_XfRBmz1nTxg4qG~#2@ET zhvXebi`%2c?)J4EdAogGoE=G_MXSEB2Uliyw+zK5%_^K(*a}FvRsw)hD0zU6@R`Hf zk;4dF^(r>8WW^m(Sq-mXbFoN0LrYq&Mf}uQAz@aWn5~e7N8Gm-84o=>9 zbH-(fuj96H>wU9LF=>%lG$YHBV-Yl6-UMcWE6ATh*{6vU-V=v5>=pEn&J<6z5S=Yi z?Bc#pou)8FSl!`H)zffTv|HV?M+e1AJePJGV5OHYN#qvqUI8(~sVuIw`)J+(!_<4Q zhh(9(Xkn-1Xg8DCC1Ng(bsEe%DL*lrq0k($qtA_z|PGcY3PeQC9Q zBSR=wHZPVc3E^VSW+0}Q8?~6zjj=IAUbj*kHUi%mm)C;Q;KDd%)b%aTFL%$zfP5G# zL(nQ1JTB{)+6VVn=I*yGGXgvPJq2!-B-apl1k><7UtQf}dT+Se$22~=wFkg5`Fz(? z2(DO|X$tBlO>cD9Y}bo7kp4^(*6;Ou45vd05a8WT%ku&aiyIqog75<5W)lIAKI}%Z z88tn8CnOk4wLPRIl$(KxzsI~{hDbO~6##I!f9%ne(iMPF*gf^4GF66#@Y5(cDbj%g z2>w-i_x4~i)n|ea?3%4Zxy1-1eqviY9`3ODo0r3Mlt*FS<|_t*`=o?~-`o|Jg)U-IuR{@zjx6L` zpkt0M<((T>N=nlx20dQAjwIC%1x6 zhXE&`3nD)*C*+I`74sgMS=d(C8Ty}!Rk=Qn>kYQ8q<_S*GHjy1c{;Egq!GlN=v+p- z`|VM@cRrT1EL94C3On5DaVYUCbfe#tNOA^wIctmVreFKV+bRG-4^2F6mi4GaQUtQX-U0 z_be|c7wYFGSx_9hK{JKvY=|z(G{f+pY!|q?mfc{u4CpQ*-KkH~N!zuI+JA<2(O%X3 zhDfL6~p3#9ZmYTIzsBgvZD!jH=W`|bTr(8V)= zqmAs*pp6Ofz@|^?IwE&NJcuDbUw`%i4Y~DTk^z@a$$)$i!~LX=R1t>#?zBuc-48z* z#7^SKIPQq<9(53dHNk*lPC!F=FoXG{4`?tI`O2|`t$~)3gh4;Jv6La2U?{o!UN(Q+ zaYqu1{`d9F6#Og4G84of@Vw+0O)!*=)I)jP(R3=o=$VOI)p59c>_%;pRrNuNSkZQ2 zjT^tHe!ydCgEYZ#mi@ZN9Z@WcVb!kM55ZsTG(lZHZ9V-U2U)YRxZQ9au^)AjWk!yT zuv4z9KRi0mvPMNp8FV6EKo&W1m>)w-$GG5#r=l=k=c=qWp%%8#>OMJububz%Dn4F0 ztDEk1H`clW_gtnm`(9Xw9uw-?JVvTI>W6XeA7{Kj;JI&OGQr$WBRw9-;0^#dL{9gqn|4hvrzb93Cm+v@H0j{J^Xwpb5h&>q}kYY0xV)(ZB=5Uvk) z`}(8~L^^1&beQk1E*lyfFCPj8nOqt|?^2E9qmDbST#QQ+^$;;iAFk0QM&Az;l0%V> ztSnXHxs7(J7)!)M;egJ(IRTG5Y+x4Drh&}4d|@s_@Kt95&n6mo%?>p!abD8O`hjft zl{6_Ct9u%eG>Q8=E;%b_L3_XVcIU%24Fsj{hj}2Qk&a;HM1T)_c<|+MM^UNcH;Ude z7_72eJ={RErDj>R(0;#-Z`sl;X~jRd$-2O^i`_S|6@Wv7K}PAQ!@m`ev94|!3?`e8 z>w^wr%?SoS)4XN*k$!lYh4rJx@#ZnT7MIUFvw#1=}2upAB_clsn zB;Er2Aja^)>6mmuCm4^?HqCiuwhM+CSYAzfpg*wr8d=eud#!~{{8n$b%b-L*D7^zl z3q<}B1Q*ArA&wmuV$N;25E;G&t%Z?qL;-P`0(jg|j|l_O*dM44?o`GD!qB4Yz^4fJ zYztM6hp7zp=)f@-B>CZwDMhfgk8>PmUJAYOMHwU^bf8X&Nt4DY?@Zg+y2#0x*t5kQ zURWVZh9o_-#BO|kH{wqN5suS5pz#NXB22>_je6ii?*IqqEW+6Iq*ZXyy6mZP@hF4c zB=H_|bu#ZKqk>@y+t>hE@x9;K@9eeUDv*S{p6at2+2jv-Z6F#4>JanQYD^FhA_OeL z(XW68?U-_00TE}tEhgaA45w;^GprRD4%r{xZnkz1Y8hbe?DblM6kKbc@tE}M_km4! z8*#lotOGcNu!(D55yr$TqPag6fJJK;@v5T&Bz<=^-Xu`h5tX;hM5qZ$$Ri zu3zX6(zX+!fX6UCjp~4t^jF{|247@=Pzq0c5s5pOM-mR~pZAY;a5F0k?@Xh3afjvL zlEN2X`Ze+PhsDXyzi}p-dh-LdvO8sz4ngzZ_x}5%eMkG7Bd3vGHT) zR}v&8bSXy}ov)vtBuc@e*PBFSwn*J&j5i7nGS0~m!pcR(hnQTS3^tAl0|sU*F|+{>fiM^SAyKwpRm=-r=y`eR5iktO;*IRgL9gKS~`2wSxC!+3PdK3&n*rot^3dhzdo* zv?uj`NGrU~i*nA~<(bFAaX+tXit>?{55y|CY1XlX=&os91vxmeGbQcpO}TnhsIUZ-1?O#l5f*OLB!G~vFFCmdI|Fn|wdzEvdBIMxCO z4cy|ryc0?S-DFL3=PB6;&muA}<>{+ikT<;p~fa zin%&s&0H*2I8ilftGD70eD#mTN931kMG0GNS#gkp!fQp+8!LV+hC0svE^0VCqsU!e zrtdgbk1Bz7OpFf2##YQx<~%z!W?Qoeik%ZglQMm;TgrNL1%#dSg=h9+ku}5iN?ALJbjA~SSO;% z_}EGjE9F`d`@qjArAQ4Ufw(nX7*(FiB8Fml5j)ywKs0G=!qHlJ`z_1T;dSwa1j+xM*Rm}1($k`1zGN|UrhIxY~Qq4yr z$LsBy%Dp|2b@UZP4kmg)#-2jvQIwEj?;#}X@EdSlzVvjv`LbPS%w6Dq9%6f}sleCJ zg&Fwg>h=0Yv_j5X`f~L_C_T`1pCbnAfx===h#4*qxVs$&ca&%QND!e*r#qX@ZF_Wt zUreBjl1eMA%Hi0)*3$082?Hca7va-Qulk3}05xi*_REwm*+Q>bhW@A?iu3($$Uzp# zO1;jJohd++(xHAe-wN)E`Y;VJZw5=WJW8;EIoP_$NoZ=LfEO@*zy%YIxue5waf?~MQK{MV&GW5B8x-E%CDbSbfq4W*Zu*34 zx1eb>o9caUHm5Tb2$LUcm8r3Lm#IDs|3*mVF89#cL9YqTiwpvls2TNIEIPNys)4A1 z`OK8#Yfom(@x>E!PI!8JgO0BYi@EE0N#EE(oHn!aGw#VcgMcXEF3pYuPZg7{h-wpu zwIL=dOPzS1GSi?POKKv-{pcRWW_epVVGx{6Mt4SPO!^}!O_Sz$iMq$z;#zWj5U+Gt zhYf7BIMv=`*!Iy1%*Nsjhe^)!{{9FUS$E6AvUh8UE!no-Dl_&-4P#H5H1+KaHD#^~sCNMpCh?mQ~Y;xo` zyvaO*3>V-;$@4PZ%Nrh;goxYxts6X8FN+C$IkNjl4(h!&j|b{S;Jb&d?h!+l*gRJi zg)_D?|6JJV(AgSq**HVVk$0}CZEUFC;Ith}U7hoOp4o+<7~MR>tQ%Prv<1uP-H zb9ffvdmVJ^dpJUp&oTO*hvpyF9!z|*?sl=5A5%sY-5w7C(y;0u5i_)SWnyEXTZ5r_@-LiY%G; zE(A!BcGD)D)3PueRic2zQ8si~MskxxubAu!{87UkC=<09oL=RNjPGoI34)>LHzNKnK@VN;wDmYgQD;($qVMtg`q&PC)L}A3BVs`{Ok7qpX6F3RR zUEF1wVMnaMVwbT2Xb)S3JOmWvci#!I{ttneKK4~;mS_Ubw7i#i#I&TvBwA-jxbb%+ z-}@Z_h>OUHnC4V9_5%6Zw_vp4OmL)wGeBC4lP372_SNTW)-XV$lFIKOTfJAUlG{4R z+STHtqQ>ym+e3MlR_m- z0sipwLZ*_#S!`mMv2UT2J`3gYD0TmaoyMGS0k?#1m66rcsQ`EQxXxJV7BcwXE#gH# z%rym7++k>twtoiehi@sU0^s1w0O(fTd*MYh_ClIDJCNjES2I zvGc~iV(p`%8JMb}4&haEZ*!cF$yh!jOxkhD+2nrFaf$_7`vAEr#oX^U!|_m=grkBz z*yUNd+wu6URWX*NM>od3nS4n^364opSYq9lJD)h#IE5 z9qi21`@E&~@rB40<1ahWYdNoUue^&(IX@m3v0GcW<;~|8#M$HTGs)}!Oy<@{*_s_9{$Fae+(#}DHk+Ae_!5zAy3GhgZZs1|2M#VDlcY0epBB5 zAq<6Fm}XD^pDX_Yb)HBQ0B3+3A3M=_>;#H^A}wYh{y%;Bgyto6L!HC;krRzVV5G$q zM&ncV_Hz>OHVnqO6O9Xm@mNyIK%BOhkCPvVL0CA^SR{mx$At{Qv-a-ujWk1J-ji2P zG+rl+PiEx|%q#Z#iwhb(2UJ$EduHTc4(Y~;#@mGSnQ~DB_ODwB@S!Ah9M-RIooKu# zIA!Gw%)Y&TBF$Kq+@ zla13X`k8W31NOL;_#rD1&bH^Uo;%rip0GY$Drum;W(9tvQFXaw4({s7#%l!kcx7n= z`Jxs2tXrtS+Bu-zla03t=wneCtNw<)dLjhyk?(T|cTP6GO$eVziy4r8d+QcUI~|b& z`Pq|=|3H8k8dl7J{Di&zq0qz-IDhVBEhbscebEN*p$;SUoU_V$< z*1-LjR^*F@cNF26L;HIt8~>QlK2t7gz<$L_{76841iXKCvhnCCz$8g!ZYtpaJ@W_Wp}_e^tHx!$8fSYAh4fXUatl*wa?xvknC04c&^e zX|ggueyZ_JLitkgNd36KvNFeh=Tzec3xBq%umN1RGG80%p~@lOJk_`(XpF37O}t}; zy}M*VJtV^s|0Aaw|1QCQ!5Q95H4OB(t>BkUew6I)IpV)~s_`cY8Tzy+yrl{T_@}Mh z5BOcHz4+6o8h@4m9ybk^@B4WxfAv)3zh$A1$At{QpSO3E=kYc!hw*Et8vh$%P@c!- z49x#vuYcG{sAx~0gZd|@8viFj{a{5|1NZAz#DR-j%)$N6smAZd;Nr3d?*GyvN7(ng z{rMj~^~l?eM<03Q?JxRoU-93b^54$-Z_oH|Kjy!^=)Ya`-+uC6o;1jB_-AkWZ%zO0 z7fw11-uBP-{kH@E?Op%vw*U5?|MpY<+t2xLzx*)=`7ilz3%}*C`YZm~f8)RX4gc+@ zJ@&uipZy*G?brRc|HFU#P5ev0ZpFidB`vw2)Px)`Z7S+WWO{{_d|n z@(8!@bO|(;){3j0t#%jZNNe~3^VLG{;5M#*#C5H;tuw`ia~IB^MP8~t{njhDkqlWY$UzS z0TPhVv(cK`LbK{30+@bpXK<5oAvDZHalYHVEx8U)UA;RU9{jD*_cVRoYD}M*nL;Dm zZ6u9=8=mjntAd$vaHA1?1~5v)sbvwfTYE=x6{LH;huk=7e4Ju+p@js#9QDxy;)y$o zdhq7+Z(F)`aI^_y_l+6msRC%2qfrv~E5da~(#}kwA5X(z2=h4a?>*=MZ}YG_?BLTv zUx7MkgZ7O?((cV0y?yp%%9SOhcMukeCiT2C?v3jAq{X+9xsXtZxn6dnj-&22?sCLA zpxG%I_ts_)H)66cI@H}B(%~t&<=B!S(U*JX>{b5;FG7P?w9_TQ&~B$Y#Ye6?=-ts~ ze}IAKoskDUVg+wbf#&v2t~35zm&E7p}f~ zX=(Z8;v(uTUjtV!ft>+#?OMSG4b;-&bpmTFt}eU+$nzJMt}d;;F*9{}X>A!Wi^~8y zU#!fpt}QLRdUbxaSb24I<=XW{G=B+TmzS0=ucDR3#^Ul?9j)S7vG^K(6xUywzj~ET zP0haw>{rpwYO!!_<&D*)mtR>cUb%Ml(jp#STm)wG7q2dAQ|Q#f)%m5yOmS(xG5<2L zTP>~u%IXx0DR#x{uPpKr+ndLK3u{Z)mf4MkYs+h^_&I}KuCDp2uP!tg97h3ivd2b6H|W^?BV zvC0ThE)cqf;Ri#5cVw#Kl(&?Dmy_&h?-`3eHDy0cXlXew!5EniFS5eBq*qw`gkf3P zTZ8)MVP|_6EUM)%$}gDdcu85g@Rn*N9(-j%$`}XlGQOu^Ed7PGr$(H#1Y`!Hd=wv= zSEi<#P0Sh)X|AZL6?{d7bMNrt(O`gddNbMM=t2AC!`{(B^ng;mci3omkD`aXIzIRz zGVnD=+oKNB6tThJa9uz|!vLZQX&2>QJh=-lA#v=BjdYJOv5r*qgJY#?n6@|qpC z-_>upU*4YW;fOt-LGq#iRzh5QE!R%s=5WjQve(*d^O|Py49#wo5R>;s{|2rWWBx4m zUvX6L7_qw4-f11};Xn!qg)_aa1FRlYC3Yc2jvGiZzEnJqEhy26k~MTepjY*ZYbItY)_RlM(tqtM z+LM#Ifm%aiL3)59HwWW>JyI^B8gGSna1`oZuXoVA=TXo*#5Xns3P-pP+ERf?Z*OI{ zICOq4XsD?%@M!fbOo*G{RGi7avg@~``vC{5#btw-V=KAJa zt0PdRsgSgna`D>8*cq9iWKs#$^uHoroMoV*iX4`+k-#$usAWvF@XA<{uioPzQWvZX z^F_a7rYk|{4{kH>ldF4Cgv@n5MA3?;^R`wWrCP|CSa2Rp#)2co@$6NHj;pDV1!mcS^lQ49I5cueN77lrXTLKfGToAG~fbw?OmIDi0VxeJ(j95MRiz!aSF7v0&sHu5t!!d4qNNCmHFtB0X1zo)0PkMSTeixlwFb z9UI`JS&rw>MxJ`=9oR^B``X7y24c;z-jd#eAVsb5r9Dd56-i+4Rd91OIoDWO#!t`d zD~j#A!34J>lqxYeu#3`q=6h9QY_ z?M%dhzDWgziP1YiRQwK7hD;xBBIeZ<;9r48-C>Ytp^6a!jJ?+W=5}jVTJsPrIfPC| zg0d8!FX7H5xD^Jsr6dQ}=6D#_AesXWK(LqFG_HZEoOsaeYPM#@6iwQ8B1GDI$$r(D zOV9F`=Q!922)FYT8YYNbpBNDnMP8iA@dI6~%5+d+7RYei6U#*8WVF)4hM@k) zDHUPq33XgdBaXzdd2)_JRjFyE>@3MJVnzZ#P}D8s=@MK`HwB<74CHcRnB$zT4`;Y& ztudwxPjYhRczT*vBB*-9HHio z@S7SCe$m6AQwIm$pu4qa;SqMiA9{vc_57;o`xBN-X*Zl^*IS@W4J9a9O0m6QW*jVx zx}pwvdJASIBsaXR)+jOi_|4?8HjhF-=N-99ZQX58xQj%psN@;D;2%D?eI6N%gXx-< zW}IFDXS|&MC&@)u6)%*lVxkNa*1YLd0mumKm=3k73}ST*jtBP6kJcK>t5q^_Pr>$P zJ7m%pNCh8Zv5h5oJ8(--OXl~W2T_frgNBG)Z|^}pQsqxMTnl5nwsqJMUaQy~3iT5N zqw=;PG%wn*(KM^Dj-R7B8+=$Ev14NheS(g_3c84+EGWtGsp&A{qz|VI6i|+UL5o-d zOcJ}*y1}RmAUev7ZGmwF?gps;RAa*sU+ZGxao4-Sy@bjrxRFfdt!`0klf9Z)KPL75 zvAnmdo0Zv8vIr>egbj>6)RQQ%h@8;L*VL}ND_8=tOzJ7#ts}(y95%Ojfyub0d4+H$T*4U7tN*z8B%bV%Lh>9&m_8tWw zYtJxKo5mmJ5QII;&55D3M6HCg90s*c9hS8r-gNdecAL}Jo_pAJ`;a1p`vqV=ayVg^ zlnO4q8Gz?$pwZn};U_o^$UV(V(_KG$#sUXe?d!uxw z8O+5Qb}R3Wpk@DQb{o&JrC~yGj-mJro~AL_@uxhdm{$xUEw4f>pkoj++x4<7ZQgZE zMjruSoY8~!K2$ysq;-JJ8$+<*YBTq`Q7*W3j5j?)miF;_(OM8nYs$L18O3f139Th& zM|u};=lvc&8ZEtt4I{JH!{k7Ef-SiQk+DAA1IM*S3>(^r9{Fmmvh1R`hpWw*D^B2P zA+c$ibVTHZ41zBraeq1-)J~w}Y;06aAa$v4Y^)s~;kG<8ryRK07Rpm>1#sJ(@fKG1 zUG$Wb-uQC@9)m>c;iBOVZ3jqwp&$fXXAdbU$1O4az+gd!MBpW&i6pgsm=u1!Elm!L zhleXkB-Fm|Kq^hR9S{(hzlA%=7fgQCb%PZZL*9m{A%m}D?WJu}zJu6esFWY_kK^q{ zYCmPmX#i;|4xoi+k=79J#-VI;Qy$9Qi>Ek+U_#3x3Wk_-vjvbMB(?PgjPeC;RM~WW z8dVa+vGFr&&>u=nU5R>^M6c@R90lrRn$)p{cI93P}x@6t$mIVECg7 z7(?ylRWo*2H=;eFZ1z;ow&(^w;pEkDUX9+QRqlmtD*_ybO~y&)9|l0Gr-%)i4fZ%K zn@kFTOMX`r4Z53^^$*g*@vH#Y_-9(MJSkAT{4lLlF*8uB;%Qo~JU`f$>iedFQQ=7| z1@!}k!;iGk$jLIof00cX+ybiWcO`Vcw3Kh_th?AvmazC+*MP@$`%aOOVgqtw24GFx1mgHH-@1H~^R&7{KRyR9p0s@uH04bFc zaWR4F#PV)-L-AFvPz^>vd1*2!tb5#4dP+>%4l+TCEd^&qx<}CUc(IAbS`Y*9xZJ{= z8vfJ-B!?%2iM5{u&;$*)+Bb0db9~_}8PpHO8o)-S3P!)v|0)zL*_jkA+3i4GWNT(> zWOl7h7$FUPaKi0&WKOsgMLolkPiqm4P3=NhNpEO{YuK@o_8=DKZ2Wb8sE+_ z`e;Y~{j?*8`3OciSmSI{Zlaj;-$E3z8}#x~Cn2XFHfoW2fT$RAN5N?hLj>h2QeRUZ za0}TFo@y}~ghthtA(BVtH>A67Oy{LnCO)zfaBT4T$Vw2b1hTS>J|w}VX{&}U5#Y@_!C z!oFp&Vbj9G?`&E;z=XSY?5IV)H@dPNH!D{2GRE z9&%Hn^IJ$<%YYI)z09sVvXEf>>pKCc{Nsl%eT18Ly&LgrmT3glr>+Q`Oz1};nL?9Yxx!ctxO>&ok z=p{I}!ApalVsJ0k$Y8AG)D-K7XYPOp-^JESuP;Y0phs6$5SWe#LoAveUUZ^IHVdd{ zo-?sF%@wpThn0V}B28!Fm|3s4WLCrT-#Ax~440|7!_3#&ynire!{Y1)RvibN(pM&aTZKGgTe3qwo|e3aPk*AVn>rz2_y zNVSaqs$!zI)*R4JrnHMJ&lF5TqtHN~-L?}$FpdGZCxT`ir+35mjsRHXXdjK%4PA;| z3K@z;23l%z?jP5YPv-yauG09C|=l32S;R<3aLUj`;t zH(zcUod_K$za~KGLwQ7EdRg!4qQ8J5DLxLjO`JM^C&AQ{$9cZkTPC%Z7x3T9p&f

    dqguYpVwNnq+1q?UV<>SdWY^F*PPpjb)AU99jt;34lSh?-7C&S)hl zrCACpE$Qb&IMH6ynt^fUB%*ITg(iqihLn_IGwJB|5!znry_cmawjKnRk+`12;7~%0 zFkZ2O<)QmhC?Mil-h@*odd49L43-Z%8zlzh4l82tLMf6kTdRDFeD}Rkb*)PQ-9#9S z_Bl&YFAF9pOY)B{7Sn%p$y_5C8D>xxLZg9K%@j>pFeJbr<;|cv4=EmeiKFqbNkens zeXG=I*hD%VAEHK0R>me`FY?#!j99O6yo;OU$){lzgXFw>V74AhK;EY(K0-GJa^aVMuW(732E{u0priuu+@su~C zJ%?jGmWhmNkBW>2Wk~nPdzr}=*I_Z!ByeAMw-TAt%jR$9HY981GH7y`X37wo9^$!> zg-OlqV`5T$qbkfMZ|}jm5s5-7D92-QKh8L|R~EOfO|ok;cx1GP@4h5bm+r-d$%<9$ zf$Pr*ZbZkNB7QGHzihd3WtpI93GNq(WlN36BHB3AGCa%5Bdz*(jXHIL6BX&5g6pXE{N*$vxM$2lmd_u;mRFke#5()E&}t+bSx z+b(vAv2&mZ7CAc!Cm5DH=wW%M2vI*>sJg1=LfHw+S#3-h9Q^94F^Wx`D{3a}!=_sH zq9Eai)Osw5Z^W!AIMP(f5thxbB-#r2XMGYyj#>tGq~SZw8njNyi)vv0y{9%Rm0Rbb z`-f}CrTN7p^N}%k$JwhR<0{A28Na_jjk%n_{Df|ZQyd+e*p{12b6RSnSr67tem@@* zOk0v^6nrqJi}`~CL?6MMz0<)BqjI& zr2=TK{H(HHc`@H|MpdJFS0zt{0v>7M<76j; zVU5o;q7_-a0Y56nE`>!sdXWP5+Y)u}duKR#&fdku(M3~GvbQO?bVpGdo9uPK*lpUY zg;!e5x0unrtn`=KFBkE^j5o?9;_fGLR=ztn@ z_DdT0gD5ASfUt8c5^2wkiUjGBPZ8#i6SCCt*#KfJCvn!Q-mU2ms$63sB|7bD@c-zv`ck)rr&~99Qr@a0bO;4joX zgJHCdZUKk1Sqtp5%yZ_FDJ7>Sy@DT)(OU26feG`}p%D?B)!}7lFg9c`b6=F>jKDwF z2fYK$-hsB%XCXI|Ao`4(OL8HO8*#@Q+kiY5WQVCp$Sh|kALX5Oo8OU^3nO6EZh_g# z5Yi5khlUhJQGC3T%UcrCXh<53XNvpsZuoAqQ?xz^KO6sY`%KNSX#M}~eP3*)Np{z` zdmSU0>VR-FL?S;(I;a z-rkKMiV`96!qOmw5F&|$2p|woyn%uMMG1ct5F&vjqiX>U9f<(z0CZ}hP&N%sk0myV_Kqg-3HYW=N5t6z#7qp%w zX(c;X%DN+>BSc0NK-@KR**OYJ2h|W32pQk*?ZpZEc*=?;!LlJOj&aTS{gJ{#6GCwF z3Zgm2P<({aLy%(jzi^A@6D2&9A0`wYn&ZQyM_7Ac`lHiCjrx!hMquaM{Yj84qLC;I zbU1`r{x2@s{|{sf6zZyztF3b)P&<0X!ebjGIqL8PNlWkEhOnH|0HNzhSQDa~@5T8S zx~A$KGz@Z<0d?Ui^-N(iB{q$LN|}+r5AG&FqQ;n38?h^Tk2a+t7>%MfqD?uTqGXl? zD~Z;bwn{?0#;Kp)v84|su6VjGrY?<|V4MYSL}bd-F;~5uSrjn_CpibngI5HqOk=~E zP_KVYVh2I&3JZm^JML5$3HNXuw3vSTs$^QZCu=77temMIa5jGn2@t+dBngibiWQ*`48+Ec`!=le8RqmBUO9Jav+BF@Q z`3RF)7fE0#@sovIdnJWf#jQN4rzs-ElXv!pExR+l9TA&=F?SZtHknZ&%}UNHeAg%G zy~S_dz$%M>PCiomqid5VI_hkU9Ydfl?jTVgC)C`oei8L{*d*F$xQPz+ah9+P`ut~} zMP$S33Emb&9(eb^33HCq)8)Qg& zIgTE?C-8TLh}A%x;Dwcou)N&O_zce8RBY#8uA7y5|gDM0c^CKqNt_=Ue+ z0QeCOj#`RyN1^M{Q-No+Pn&}=XX;Mv`YkEOpO0=N@&Z^BADgDv&N;N~Wk*Hb!ZQuv z2fy%Z1&|-z@VH0|9fskZZ+y>m6-6^TKO4&zBHs26WaPgtP*vvn{ihc z`hrcoyP~2Y2<~mi{B}V)9Pq<7^N!`b^7AG@TI;t6en( zp)Mo?D}Rh))@EB$%v#EXXIQY1KiKEfI&`wz-+6XMt*!r;gV=I^tYGc+pXTGBMKsth zqLMVNzJvq-`EC>s71=8N5yW<99t)qO)>rlA>gspDqTdCW1`hFS8Cu-u1N_r#4t$sH7~CrIwNxrZnOIGXWn8)q9E$^e1EA` ze$dA;*8u=FIiN;|#!P?s8J3y#)1MI$PMniu^xyUVg&!2T;u^gh*5o}rW2?`XV%geg z!WV~T-@!*JCW6{06(GNm!3rl1JyYmR1=mLQW;o9JatX91EtnlEI4Wuy#%4UH@P0Ef zu#2SQR<*@B>N-|p04r#CeI0tP;z86cxP(|QmA{Bv{g@g*Mu2|olF-gHKuo0WVdTH!T zj995&I}c#VA(Qc$Kn)`j1t>BLd*x4YKa-z$0~?cqi;3VsYR)Jz#v?4ikhU^JKUyl1B4MY$}sT z+aopmj_iw~zTw4Sc&*<@G2R7byd7V^!UdEaJg@^x4ZeE5zKDJiu}EHqU!i|2XGMUC z4?M&`6(EeGHyq5l8Q}c{q9j2A1+tj#oK#Y8ck&@2SnADJPO%40Y0ZoP6<+1*NGt;WWLHBzKF^Yq1iygJX2kII`ojYr zZ{ZXm92abYm14gAzPLEqQFW6NrT%^;Ro6uK~{&0oy7~5No1w$AJMQ))-%f zMA=6RnHC%JHUT&|kZwr{MiZRC!7x~TnK|yntDHm{cPu2zsFE`+;c0rjWL1#OjCd?} zR78v>9IuUYhe6WzHrmdn$G_oiMn-_!QT5$>ai=JQ&&X6pGV4g9w!@*i1V?>{&KSdW z?!IC_B+QuuyMcT4wLUO6wM(y$q7)J4(foyvC^Ohet^FwCXEb5E68YJ9ECNClSus!5 zf1G?7fpZu8FDnV^2--M33V9G0!%?F+4e*F6^5o!TQ6nknCYCseGy`H2a2;rd2XUFX z4MK(R1@EKFZ4b^HdCok%I?7{y?H#`bsn&Gf&KQQQL=5GPQm-G7&JZzi9FNgSv+x?d zO5)^bJG$*x;?4g&;;kI)wxQYZ^kh3Y6{!#$ZujABN|?nPY!4sJSJ+qhSV{Du54*>}IdV~VYrECfs3@jX z&N->xEW}TZP3`9Kh4E^RYxv$J&=QhKThL@}Cre>4yF8p0#m!`5hiYhj2Z7 z*pt`}vIFw`1?Z3{ENMgeWx=SCQaMI>M=v3d&jz=HM_PthtGv=OU)3@u*X|YtG;9cw zqp`W_0Q#kC2+#s#Wol^?naK zk*OVZA})bscxk&ns${?fz5$jc6r#4(d(eHq&u~gftcL^8<6}Iw22KeS=ZK&~pc<0K z@fEJ#Bh1WppB$xVW>mK&5wyTVa?QiOJQ_?L#CRqGXL@c><-?6+g(n=QagsL1@%peC zm!=ZWqEiNDHY4TIq}^ph-+P|B_rFw~|xb1tpyLMm~NE;n8xPc~a~Z1}LBKD=K~R3XS@i>UASY0xj!1Me4V ztlTP%neVZ|&jlr~W+~RKpWPWSJOn7#ob8DM>@h&JIvsh!rqlV-@pq9_KJCzUW-ukY zrcxum%Nib9D_XL({eE)PY7G@dg+2~T7uRX}h7zJaGzt)J6%}26_GdS3`-{V}4{KrL zj3xPAn}mU!G4u={b{=QRdvErNO(O4*bc%dJIQ-e2sUG_nbMj^V<}+TGy5}Nky>X;a zO#(Oq=Os|W$2E}3EOiVf9(OMM&Kh-I8!-=vUq53g3FfS==;m;8WRrOjL)CoY<|7|* ze|3~K>jYHhNS?G=dL=MgGGw_F&%`+`zSz)d+B)e&n@Ti)MWLh$ zSwR@(JpwhA53bVtNQn@C)L8d{4kH%`p`Nd$1^=yFvCe}F^$+D{IWH{a ze>R&$zbX;L@GzS?j7T&g>b}{PNT>g>i<6x)C8#1p>yiuqajNuV-g$DL$t&u&yq@^z za(MD7uQlSTl9PB8vFkKFgUC5G#}YTyF&5H4BH{_(njbx-w9-Gi^zwWwtQjHM^0k-VE{@jTt;?#2fk}jL&pXR%^EW=-Z&cLvBNkQxqeY z1n{D)J6SkyZwKoa$yki3f=k_wg9GJTYPjnuWNy=e(ZpL|zIe!A+CD&WbCYp)FiUwM z*T2d6{$@TlF%`Gu#qAW-R(Jb79#DYL$m2>^P{6WRyFhnG4ygsqQTMnDPXbu+xc4(B z@DU8$_-Nhk9q;#XpbdXt3yv;sd^QP##FlKXoQ7HP1LOGz#xoZXbcvD1b1pv{Ec7fb zQ$;1nVecyUAv(`ePABd`|K5Dyl5lnHBECWsm&*F2yvHx_N7#}JvFD6LIk*p#8jnr7 zq&dr6c6@`Ns>{LL`??`+9=W)!IPe&V;t)as_h{wjJ!B6}Q~1wRe869e2TsIWz1zh( zTp~Wk8`LHqqS?|`-Dz^w-Wmk$UhqDrTJMyk&VBwsgP_#2^&k(c6D1{$qxP;M%~M6+ zI=4XGkDHYsYzbRfM#VoO4>kf2Q}ql4QbpKidqh6G$rWO*n@N>o)}2f-X3euw0*p|e z*);5(3*ncjbF!E}^_}kw6`D;_DK|nlX0>RWScIiJRc;;*uk*%6Tw>P`kGJGjPi>LW z3mRv10yW!owNWRciS8Da1eK7ozU7;MIO$XtbKTDVC*Xw$|m?^xb*utTW1r)MmG%jsJ2mWv; zj~T7=eJLQEP(In6vKgqIO>iej02A}9x}8x4HJ|!AgjwlS3Y#3ci>5}m1|xXp(v?t46ygb$Q9O5lYOY%h!ne#U6wDSkom7N=#NQBrgcha6quTxS@_=BBa{H$OO( zL)@r7-r&s~zDc!^7ss0i&6r@q>kPg-uq)VA54*<)pxOLzAT>pZoES!1w8^PimOAUYcWw2w&+rAte|;namf(2{sA?UhI=E{8CicGWCh9V!j6 zz%|YlC!e)QS7!;b4Jer&ReMKgDRcSSb~>9Dlq_s7$^}(z1~{fLU~dtCaltnVYv7`a zC_@@&F;f%tabo6bXBr7D=i-?_BDLmn$#JQ+eboR_9Lz45>iCvow%R{0QIQ0xKblFbgW#T#M`Rdo2M=dihsDSEyJa`O; zL|!Wyv+ApSgC|_m<^38*7C8Pu>qqv%gd~`bBq}*s3XyA*B~)VzHxHoqCrvd=kW-!P z;Y%i}PyEauH5k(7fq~>uA?%(}_ta+k|6HUaNILM@g8!D`!B$a&4v_W-_uX=_RRtM0 z;ymMg#tXYRj{(E_lN&LtJ;qSUN2)R6Q7ezRCcN$%%GQf#=arE z>d-Ch5xd!g!-LC?W>7MiLvru5i5Qj~g|F9dt~~af&M$t)E@l8R6T5cIS$oSO$zB+}ADPig<1VRH@oIwFYqUV+Hl}U|l4Db>QjUq-`7SKK6b)e2Rv%;1E7nN^J?xRtJxe4?SzZE9n^hEsJt{Rw+y4KTCan@Pz z-(m$5XED+x+$^)aQ;E6|o#QJ}xlgzbtK&PkOMUpAC?UC4`RN2PA#}jv{1Ho2mlR!e z2Xbcy@=mcA_owiYOAOMiCbjsfCOP;i!!$UV0(T}DM@hm~#4u@Dg&PhC&BpS8?4pO+ zWrd;{1quZMq43A5<9dx9w&@Jsy%JgDY<|j>XUNh7YPyJZ{p7WYgl$Q>fuZeg%r0v$ zOf}ag+mWRQ=}M9hkxf`9{7}w!Kv-Tk+ezDG1!LNJ=FdiBFDbWHom5j3r)|^k<(7tS z@}^_jzFAs^g59KJA^aiTZVIMQT!xdwV7Ay4OtZ8MC1z4eTgR{ER!K}}+AR58ZfC|} z+QvSW>l;7|bxoV)CFR!5MAs>VW@#Bpvar)Dna#?Vrl0(!fA;V>`T6dX*W{0s_vb?Dz) z{bjV%q8i9wUH!W#dO=!QFtK=XtjE8%`VUe3X(=`f$x8mw>aU~ZQ&OUSA}jcf)!#zF z=d?+D<;qI`&Fa5H>9mxl9sSX3TbcqEc232i{cx)NkJ*wqS`8h#mH+xwd-(#&KOf8ETZC5UjSKB{)*>yCgXh~X{19qUY-lHhWgY!1Ej*!Yvqii6{BzGWWQ=?)Nf#+d@s|(DVhJl!z9&4E zu0)4kUx9UCVdcs9@@kTz@vBIx6jzUwoV9ACQZkZswMg0MRU*Y>R)>_Iu_~m_1gk;n zja>y&V-)vGVT0@IUzOYCYl+LHpt;Y<=ST+IN+aJ&d7WS7<49JQ(sT>qhm&7=0m59; zIPp&W5mxu$$q)-N{W|Op-Wxob{pPRspL>pKI~D)-%0_jgzukjhr<%ndFou@!t{f6m zJQ!B9+n1_Wu3Y`vSadu^X&chDKV(7Y4$ES5Qfv!F?^Y( z4e!Rou0RTV*iQ(b+CA>cHDdU}ag!F|9>^Gk#9@q#fE97LHSEHIWPr;wU%S(b&Ge}p z?hX;hq1X5j0~7Lp>>O^Nuv?3o^ej5Jgycx-j> zK)ic)c^XMs_)#c7H;urMuju*k9wGFBw?#t)?Cgz}L(&HQ8;PXfhYt?-X`oGqx}@|j z9&gm}*to)($_%8ixz?GQm!4iiCMG3;3#xtT~Hc-^v!c|xqi*f>vH-M^~ZEN(b z2c`4mgGGY}jH$=@vpogN`_#db*%h#%z#dZ8WGgrO6vhn7vI~x^htS#Q$c&EB`y;{8aPPMvn^V(ds z{LR~I%j@gYx7Mna_U#)h%lNi(bLqyNYb!V3s9s0Ao43I9E8unj-MCe;Lj$$4yiQ>4 z<+Y_Z0eSKDl^ZJ?@61hKU)i_`nALRvU94^|u5GL=-MO*2R^7g{cKg=)GP=J8us2t3 zUSC5m%kAZx8@NJn6W^-kx9~@`{^sJ18|-R&@eZ(GLqBWP(yiO?tgXE9=0^4AtsB>t z@$vO#V7B=Bjb-f$gIc<=xYC}ht}V6~-yn8t)h$3-n`Sk|u6p~;Wqx9Ri}-J8W98OO z4rA%o&5bquIfqfMZFtkSSJs#3s>QXHb)Y(ZeeD*&lbmQln%!i(o68D?q!t4CjGzh$ zb_auYT&^uI-T*92&&{lIYg+t;a$MKx?4BUbx!37beLUHThl3=PN|q`@B*VAC>A`mY zF#O5zf+5c2!rzGM;{D(7=iqb@ejOfnw|l&NF)h7qAHruTOL)*iNJr>$9oH+EmPIQK zPmjp`*7f267VIJ~m(i@pm1J4l<6{`W-BzoWjO;E3dhg!!jq7Q<8`rU}wiwg8Ak8mLU(euP->8=_ zXXVSW+`DB*h%Z7mJb#S}$;X_+iU$T@=LPF~z24EAlIT&rI-Sm7?{GM<@hbNK3mbVg zgY#1)g$#GSq4SS&NLM?|7G$i{3ctuhjPw=E>-$gr!`31M6!>VkjEsK68z>UjRv{Uc z_?6feG~_?23v9QgsG`V!VV#yb)@&IhH(!r?dsqcXcaON_VHeE;&j=GR!OaoE2RmE` zQe$>!7@f3&iBiIFk&I6rfP@b=2aWw!mLMVthCI$W*+b3)-ghz=C`pL?B;CF36E-*h zXOVcLXrh<^1$pi`qM0M|RAY47j~l2|I(xKS?J`UmkGO!r2G@m3!k^KzX0V0H46 zXcE%FE(HvuWyiH^X#_}YZq#xB3=4|@WGJKPnvTaHyVO*0{E&d61;#vvjWM5==8@AtPQ%^pH#?QDyh!#*@N zZ2e%qT?k~V8p`&746OwJ4IiM_`wyylN~!rxLbrQtvRBZ>I%X;RLZeT8zPfQeda?#Y zZwEI_<(5+X4xR3}`PE`_8@0L05@EqVaoscQ8+U{7Xt5wU#FE!g^vPX4Ig0%|*);Gz z7I5feWRF%Hwa~)&v6T3$(?uAf)+Orrm%QQ`D40aa+cbtMD4amqclS8G?wxQ&NB9RR zz-z_I(eqUz_5mntbvY<Sv#;KOWPI2?y&0~6IPA32k}s5{y+a(p=AgQ&Ftjv9P@%6Nh&I4v zut;h(Oj@%)neC3|J?&hg2Cm|P20p4GYz>5Pg9bd&Svj!Gq* zlYq=6h!47hj^1w@QDHDVJnHaG24-=$3vmIIk5kWycClH45h-S1mc&dig1Z*s&5c?z zdW~^@i^r})=-C;q8S-^nBrHYaK_y|lq%hNVdhZG!<#4Kr>;s2kTM>DL*YV_E7=wBZ zV8Q;Kt3)y_$p2ybVy+kXzqn~C$@u_B9Qt@#<#iJ|7UULaTwXB^0t*}Y2sNewf?f3Q zmaGLm)1(-uDJR<~=zn~e9Eg%fCx{`3Hmu8)&Gn=-fVIeRsOqYZXb*4@9^l5bB>QQ_ z14wpf(-Mz!!GTbkxj00#bzA`%AS9Rosv!Ii*d#<_efed1p;!Mb$X_A}I>On?#9XE& z?ap)_6CQI95e@!;Xi^vKNNUC{orS7TL>?lA(Z0odPINWQ&IrykHEKe2EA<*yBlP1$ zp)(|uk6b1ut0PBA&rFH3P9}I+#i-E-{}^fF7@NUd2^67f+A1Z@vl*?3lth2+;MOGU z2AC2ZNP<3>Arpa@mDo6ZC6Vq)nA>Dig0{V|13j4xq%U3aw@83gFYG9QmZ+6YMr1?7 z=REutOvi<)X*DKhgwkCHQegR+M93#Rs`YcZF-pb+AuFax5V9stA}PsqFG5;E`GYir z$k^#U3VHl_>j}v);JVwX_>nMv$1^V@90cBKYb5hW^QQ^U6WDOL3L<7uw|D&$43J=Puy5^9N* zYRH#RG5xnRpivwi+S!F)ZCX=Yk~t0 z*6(#sXD{WvLvT%I=U4tDlrBotCSMk@a*0t;;>L_p5+cN{QBl(W^L-I`Nb1g0eD>%hP-&=|X;EmV`0;n`tRU>rU7~!Z&9q5od3_mg!4;8n z#Iow)K{K`TiVfM}7Gieai!)^FC9vO;xPPGYi$a}~Q&B9M2aQ#dv%7V&EDzn&ZetFO zN82UvnNiUIn=*H4r|i-CgC+&w`I=Ex7N4CiyEw?*+pCGIv*1T_EZK-jRi%w75$?`m zN%$E@`@>fmI53qDYs zyc#UWHrzgtYXGdAU8SDbSxuC#-$M{rmsu|eU4@KO8FJznq>oDvb{$*t`j4YCkxm)C=x69Fqt(y zMyYRZa!28H7M^hFahtW09DUDnadHTgQ;M}A`i`KVj}mODeirEldpQ$oJbba5%y(ms zQi~!XRkHWBGU{*7ofH1X2py&dv)5K0+4&E;~q4P5Lri4w0V8?Uy$>T9GZ z8|5?$j8IguZP?=5Bz*qJg*n~!q%DuS;-7X{=h+)N1zjo51L2kW$jF_OQVE{8E7e~a zRH*TeBKRv~=f|K&{rbrgv{OCCbN>o8URs89X!GhC{4{a^c({j0R1_NyqeS|z$KtU! zQZ8TiIr^3i!2cvQ zy)I5680^Nyi^Xq;SP46?X_7^U7W#~w8ZJzw6VbdWB_x-X12afFw+mB|h09#1la<;3 zf-X<08uBL2J%_D!=UPG)MEY>iVyJ-*brKLPLr3_$(@u6;^%1O#08)0}QNmXSDK(J0 zP~*HL!d*C54m-jg$T3Hf1PelV+k$9FOk1t|JX`k!HY|q-PFII6PV>hX4tXd{-(XDH z?g{LBIHM1bbn(eFN{m^P$?hEN^^s=HUIkJEe)C(*VkQ%X$GZ|35Pa|+AVw1#Vq6Q& zEnICe#>@s}kYbvb@)GWbu*Q7%>PgL3c16Cs=nsc#%241Pm@M>l=vDxH!O*@!I0@>C zz>~lFvaaIGm^o}42=l;mcFZ#ksR&QL9JgexQ9d}?-bNPcbYmf0K@2p(e~3Wo4f@9# zY1hNS7c4Nnav``Yeu4-3&A=N{oEnMad%us@M)g6aZF%(@j+&m_3GLADFyO;P82|+A zdIRxTK|gGyjVtYguQ(VkbqVG(qmVx=pa7IX|O0`X%>Z{lgebm53Sp07uptQdgA zkGX3k3Z8;DF4uxa3o0MI?UF>zJXah`VP%12OG53!W+qRffo;GSVRaQL+!%Y~l$35A z&O;1EbILKkd(vGwR~0A}_@ErJ&>Y}(C&V}Dd%IL(3~IjM1cSI8k65PH;DZ1Js$z&N z!M_;3FI8wf?;+Iz3lqL_vXk*tE5YuUN*@^`BCEXS$4eI=-u&V8I*Mc-qhp76qdR<% zDQ8-Q-USs3A@SkR9;<`D&sE9EJ-+E*4!*#QL?LbsNZqoJE+s{isNvL;5kx7pj2Oku z#hWWf)pwydGM5eK;9R-M2D9~in2h3jLdykWP)q$QA|Av+n}_Tcs3z-R2k$+4Q)!3= zjeJWz-!*nlm>yqP*BzM9P!Twou;uHgjQ8tGEGn724l-;(yzYVf84%gwOY+8?iTw~b zYj3Y%p)y>NJFsR7vAYS__<)8a2hpt&i9)1lh;DR_k=-ZVyf(76$?a=E4S}*BagZ+o zM}f$PTrqOSaiFiS!e+sl_wW=8bnCdwQ*W4F-ic^;*bAZECuvKZ4r%w3ui@An9(a1) zgL<1yZY^`=BFq$;t_r@i|jOsa$@JRXjR)^ z*g%zXAK2{f%wtr<>to3)%z`|X@6ZGP4ZRF-Ax0{&gIb{c`TH}{=))k{BxlOM3cK2o zHbmv@%f%8{tw2t-s6o2LmlUk1f#lmJWc->4R$422k@`Vs&=0}oZ3{bLs}UQftiqTc z|8R@XCJvycL%MPTA%mb+LUew~37@JF#gUQ*$pCF9@WG1;c^-*bQ^FD&I7}PA7!#VT zCy2I*BVJCI$nw$aI2|)JEwH!mA&O_{9Z{ zo&_f|Z%i8a8<*uMju@W6e$Ew;N8)>yx8=*Nu)H6c7>TSN4ZPT?Ig>`CSK%-|8OdcC ziE~f79C_$U?J%yuU|?_Hs|8DIV0x5zAlP;09;8Ue#_Lw1sF@I!n~Bq$b3(87!AsaS zk;tZ`o!fYnDypkW_7>B`snm0EnqyXiPvoFiwIu3(O*7lqWLunmt7ZSZGQ4gx@99dj}z!xsn`yQfd3Bc4-T2MZH0n8&F z(zYh7a_awgFJFzRhK`_o4)e9UJ9FnCh*$?hg}`T#3V(Vn=CO=0JDSE0-?HZn!miG| zAPcyR*cuFXFpkneyx&i330_eZ&oQL_O?5zb+)EOJqQ57<;*{LMbvn4!m3QwmmuzRr zfxgk0W16q7ZwQ62Z)9R&5mSQl?l8E9j(hi+ss5OnGaFhqE7A6Oo&bf+yfIvj;^PyG zD4Ow++hp^uYtAry;k|}tDUbV6RT~`Q7;Ovk0)X(=bQyf4G#pJ(wefD2I)G}H0HJC; zFz&sQ2YQNo37tP;G4xxC*gkg+Q7R zj@LJ_EZ^iK_o^86@-z!7C8=4@ww?sOY|OHp)b)xXHpO?&7te-)$0^>Vg9-qwV#Ag` z{K~Xe+kWL{x4fgL4n24CI$cS8u<;Okb=9ST%!GJDI)J(O;Rd4#4c7Dh+{{1(2gw$P zwu4^ounquB3^ccSxOfLx#q_0O6+_N|uM>mgk9gshC;10!7ni=zvv%WJoM`E$ss@=E ziiB>1%TK=zLI8q;RqcX@nAg!{+dP0p+E6_b#v8SWB}|PPci4*rylV*Rh1fao{**i2 zup&e$5!cQbcH{Q2bWsIts#LCTdN=(e~begEL_ zIPy<%Z|#)siEx`1WwjA<6m?e+OLud*08z6zV>Qw>v$gX3Pt}*>1p~$*Xx0Ubp|pTr z=^#-eyk|DhOGy6Czt_|rMKx(qkIr_WX@nNN0<|lw9M6m7l!raKpe?M2gMwwl z>sJVtr&QYQAM;a)4ue}9YOXyJtQ3<&T&(2%LpW=jml}*{jTt}$+x`|3+~&p%(c(|D zIL3<*3er_K-cJD)Kk#Q)iAv1EmagGYV zShzki%%u0yTlmY?>#TQcEEZj!@i(xzSF2vt-`RunST3z2j#w-K6RB${adgqg#W;SE zojI%CA8v^=^#I3~xKlcXTUqRpx78nxy>?%4XuZfrdRCp>lkLV~hVf!up>I8 zIsV3B)XPn4$ zNj-RAC1)vBJ{Gd8+MF5_6L4ACW)-85C8&nincl7F+{%bbWr%O0 zXv#WXOUjGM=i#E!ToeFAoIkrWz(4rK#IH;&FY$mnM7iaS;tH|>vVNQc!qlO>mE=lc z9R@cjBkIw&91k#CB;I2?LexVTLUs@h+S;Qa*{GP)=WZmmtYxaOSk3uTmciuM73PJR zA8OMP$KjsOxPDj|eiEl+J`Im|hNNOff2Va$(+I12taHF;F_`*7a+gq5SDE}+{uwnj z1QVx+e}Q~0BxL2=c>n?FHJZ~)Y@R5(#^eK}WbExgD<2}@X?W=pEsCAqDbUOxT4E?f5Z~ zJdI$5B^g$7DvEPszj35?5_>(voAFBAVkh%vIBh~$i(FuAo&hwjDZ(G4k0a4ba~kct z=%aViP7FHSlRFc%&CJAr^(NVwV0Bvamw7WmfoFMxy!F_oyaJM3a;1bHdf2k-VmLrK zpj&PHNzUHClV8T z7>xtO#}Mc6qo4wbw4(e~sut)HAll!hsw$`o+H2fv9FL}|4~ljVPG{=L)f7zorLuk6qkoMDBP(l zGK2v)MLDJRD0dmu!U65+#Wz4*#12Df?yvp zXzMO%ZVusmG#KzSHBEM`ykN?tv0GFLGri83Z$zmq`w?ZjoU>hgw8re^|4#1l7AM6rv`A=9Rhy+MRK>X-Q*RgWLpw{5M+obd2UvbBDlY!p&|&nhsO??sTt#B zF3;-D#*(y8G|p$NKaWt1pGqknqmP@kxFuHoRDMs9lYnUnFQ#9 zaCm%B59hIay41y~8Xw_Q(XA@AFXs5jY#xX0k+tEXhu#v!+)5U3+3aK+WZ13ubOLu6 zUTWd(3V+)`(u`l`y9eF9`*=xs_+Y;p;Qf@nE|hS&@#f9xnZsooF@VZJd?r0DTewQh zupmRYb3<}Q^O=NXBX-Q2pTb-k*64$g`-j{Ug*hEJ>_EJrr124qiksgI9dehIumQQi z97JAX3aPjgPz4j{Ec2&n`fwQI0`q92)l90%3?m;cc7bPY5Vf%MzNCrzWN8=i*Sj3|6lFr_#opCOE+W&{ocMX)t+X- z3sR7VZCHg*PqjbG3O_0pa%I=5yfD@NDOL&e6Drvt+FzV%e}#oQa1q7U?CMneHcJ#I zULm)FwW)TG1wXDd!4ziq#;w-_L$ZDTT|`7A8Qt`VOh<8FxCDitf_Po!xj6H75>wy_CJq! zHRC|7+HXv?f0Na8)OvNpivGn^`?p#2SwT5kr&j!Lr`o?0TXrPa$%_8NRQm%KeNI{? z=Bkx{f2#ezBjjkYTJaxZ{x6`pPH_tOix=8|nk9ci0GBL01M!Uu?QK@Hb=I^ntzPd! zdzjQ~8vj=B{R{2Cz-$;nph{{YZd B**^dP literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/ext/bridge/api.doctree b/docs/build/locales/.doctrees/ext/bridge/api.doctree new file mode 100644 index 0000000000000000000000000000000000000000..296f9be5d5d376be7b9cc4815b6b0b86e954aa32 GIT binary patch literal 248711 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�EA_R+=FZ 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

    U ziB5wXZsMh<4~m;hM6u!#^93}9M^N>%0sF%d82S$nQDJ_zamzY#4&j37ZMWV)1**U6 zwi~34VG=!`VGSoKI`>>5XudLnG@8D50-*Fr?2(6$i>#C-1qlcEyb?{nkWHe9rs+*N zP5YZh0LI!}V+HP)T2m`0wmST99{7P4E%*V+QhL28^*q#3@FN_h{Z`ZtoBgouHN!Y< zRpp20F$kAWF~<*XE)&P8y%l;D+av8alX%xSPPr!_;^1Xag4_VzjYJ&0jQJ{VG{dRf z5eH9Pz~kWGN55DcJp1)1h=WJ9jm2awIW%0lf4G)Z3xt1KX;N6DvuQ-apGT4KMz1q` zruC!V{{*ntB||xFn?b6g%Gn=g%{LZLaMZi8-omi=z1AoEpkO^!lIJh8xfdA;Y6ZS4 zFpR!Ly%q$%@8B3>8;}_?ZoDzVuJtz%wenB3gnxG~!I@|E8))j%!c26F%4h#nxlu0M zwGc!~(2PEYuBR66dRC4>M0&<^Zo}5gtDjkPAp>5|Fo?)Z&?s?>&E?|)@+TnT^~so{ z&XRQ_UN5!U*NJ%DC)yHa)Qfn{W?dNZn!T+b@%r$~6`=P50SBQ!pjcJ28N${VCT+j( z#bF0E7Mkh6>-KRiFlPDv3|n7tdvgEyz69}#ODg6SY8G~r`2&r+Zh!UxQe8WxL~)YU`Nneg5;V7m+95B`I2yvq8%w+M7=_f(P*uJq|*U6a^L&5*Qsny)Kd!aodQjPuw&Ui?~}T zaRjqrjM{a$F3?Rv*qPzRf~A=frFNL?Jh36pzwRUv9m6^M-mg*9oPCchdHvK&`+bCR zctN+{Zubz#(TBCXjqprXkZ+Qy+~+dCF>}`vSoLl$j1M%7e175+>=7$$Kaf@rqi&ki z3Z+=*jWiDVc;)45291wMax$YU=&{b~q?PgoXam|Gnew2@HuYCDOxZT|Rcj6=!`9oT zzRZ?s_Mj7lgXRAjO*NLU7>QBN^X1zV<)TygIG~3BxqOU2Y&Enz`8ktr1dcLl%^7M8g!k&qc%7-k>19Wmsv=?wa5(?eR> zK|kpvWN<8s7ubvk=o#0KR|Z4G;VqFZofI{wZxm0!R70iku^eH19}!e16+A;e7kPzt zXG2K)x%Na+tUN25#f8bO3yD;(6LD=gx+x;%$0jgTd?_*Fc zpCVC#@E$F&PbYehF28lWc0KL~#zg9x_(TK^1ZlW9jOkd7yCK7s>ORk1vQtUi>VX3M zdn*H8qwQax006@)^bkHSIx&=Zh2D?PE7A6^vPl%tHoYmQ?Tf0x7adplQUUTa)}ZC& zQOVyUwk^6ELdy{p+(+uRj@KM`l+O)G9R~=Y^pbvp0^?~PW&5g9@Vgo8%BNVLf)5xD zb|PbD>dCG{F%!{=b=v<&WejMf{H+O)*a|8CPeL3Id3pY6_*p8ZzsV+1M9TE0oRlwc zz?erOq0jRjA8Ci1b8a_BDkqLQ^h-rtX$^vYn@MZXi(9=kMlw=AhD8Vo#|8*DOydr& z5Ok{2@7Ec?%BPs4-|`bbeJcEwNrhg8GDq6cl$E&}F>*Il##K(OyOx^f)H*12h{sOj zw3~XU;XDXKlpsc&ZYT7ce!%KC7pZlIX;_t+Gj$1nZgqKKxb(oGaD8nYkE25*`0-$E zmHnEVzh`dw*gbQ&NO{lPJuI{EJ@ewOpb@xz_DT5eB>L{8xs%v;CyCGWV2O>>@fCeE z$CDHn*xwEl2>2n~&igxb0#-jB?tsw^qm2RucE1TI6Q@hDcV3CCO398 zn&VZM7*T&yQJbkDK8|Y|rxwR;N#q03x`Un4uOIyTyozI*@k4 z;s64BDkADY`rV2f&5W29<%l|<_dM$0Jp@t~b-;c-3Zf1!O^%F5P-SPzA_*GHD`On! z){gBzzVYO;k7ju8+}+n9qZaAdJ%h1+6-XAYPUk#c6!Ku8>Bd7 zd3Z7yge_(nC?AI)C#1Lp7l6nIgOE@dCQquUDXuuzxUf7*aUp2*WK53B@&^54vYh?e znk-jS8of)C30!V1Tt=DAE{ANvBy}im>_qm8m0_}aoTS(L&~T$kc`nu#6PBUBS`b-z zWpTYPr))pb8N$qoR1@#_G4ZZLV;y-uMCJ0;`_^UA@Y-$XnQQ{3klzZZu`hHF>i z()0oDr52Bq2cpIGI60Iop;pb6*N2O%i41`=#Mf!&q`6XSK2)4D=j5DPabcaTs}r6S z)?8sh0NM*r7|8iPYX-IL&PEe&jli~T^j7Y${0{~H=Vm}F+De>3ZMUE)L~xaSqKDk0 zxblgLQH)cUI@Mu&w2wDKd3wWNH&4dhaFi z{h{#mYWJ#KDMeq&XHo@E$K9j2@FYg5j;FV}$Jzv*_!Opqr&Bf2ScIt^{Jq4L{8M4; zH{EM#4%w>)k7M;qbN9 zarkEUC@vg|Q4AbzXNMBGHu0BQ(>vUwZ32sY5}U$el}5RH9qNcPx{-Di+gj7a!>L(o z&a}^w;#$Wi07jX{+&BoyTOFtCPt8jma@MeRw8fTKXvMM84ZYy@WNm$A$&BznxO!|U zx(UbDaBaLY&&@l@QaD(|O@K66i{Q@TX)nX&<;7tXQaQhUNM@;>jEzeG*$A2q@=q<2 zF`{=io{%M4Fz3Q3(9DhfCF+PDh4&gCYlD5+8qBor=#HLUaP&l|Jh)ow>iGit+N7)J z@6l9q^;C?tB&sOB5@4-Y`F=*8pkYu00h&cr_o^ZCE3f!*8ZTg_+?g20ge zAIV`5f>7k@-b@5zNYmyv8`N_ugOg;3NNjO48Zm)k#>~@W-4b6Wu#NQ>WdV+; zBO$Pjk2QgvSc7dvV25lyW)C_gIfCQIXgXDaZLT*juy=ydGWhQl)T6=0MgoMB5zbxk zJ{JpWe`CgPJZnm1ikVHLD=oGM62wjBcCax3an5JKo-FN*vg+(Er~ z&~GJ!Zr5w}{FuZ=`IblM6j2E`PM|sZRK$#4$3C4HGrCA-%f`&&aCPl&gNp9mf{bB~ zJE}zie+5aV)ueI9&39!1)y4&#Z7w6~uT(~kCTQNtRt`cj1r0sc1r0vf&X%q5f&I;< zh0#Z8unEHG53C89qNJYo_+hqYvj>BA%L9czgQgFwFrr%}8IE>II&)ybmPR&~2$PMk zyy8dnSOohUQySe+QyMu58pBVmKP8vG;iL`&w>9JvU0@;5NRM^Y^^9D)gE_uP~siF4Kqlp(~y+&_e?6csaB6@`@~LY;W#JtZ{?x)K`P zb>}sghX|TO-32)l>WRV>M17d_U6;-&@Oe(Gp~z`M*E%$#^VfwzyX$LzsiigJM$ zpy|UZ@F;t22LDq)ubQlLBjAbBULi>0^CqsOS)3i`YYC8<_1`A3w*C)c(fYLfJK1EjXay;fVy%_Z*l;I`-ag%<4Aan4v4EL-a5PITBMLzUqr1}bcdLf zLMuHCSTO!){&W79Lf(^~Z*EQHvR>Qf&PStylOjFVw>eOCVKG1ZJM%=D0XwgQpLi`pq*C)Z>JtG#53OFDVhF{^UPTzHN1 zjX!h}Joxwzb2hW9p)8Y<^fFVC1)@^1H6TAhFCBC#A=<$A;tnc6_j`R*&5n^TX3(U% z8|4!qWC_p7x#-g6zot*?c}^l`V$7ecrsJ4pofpe|9=#`|WGk0Vxv-OxgR21+ZMbj+{c&$RoUIRD< z0{;RKd$T=6p7Jvj>AX z%N5G~Xu4&2!!tFo1rkV2jj{o1&!B6Bb=bfK|K>!8{f#L)UVI`5aekhWqOKO+c_PNq zh~XNG7)+>Qh6ZVhcU3e~L=E$c!-6G8%} zT{uby?KnVrGbGID^^;!MYIYGg+3u$(=~q<(K4tMpqmF8qFKnhP$3{iD~6Tb|ePI(`=k z5ZIEPhP(neYs8pj@Z3-py`(7wWc2$tIZ4Vi@~Tr&SneY z{4^HjLMLPmr_R7?YN~Ia<@}~-Q{*`iZd01T8_|o96rjX@s~v`I2n@gNM}xpaX7)ac zOLn^Ls7(cLz5|)0AO`=Gfp*K1|nA*%!gm+;gtkHF)Z`CHT_l4%b z4hYpa$UGH1K}!(AEqFL~RE?|8=DkQY_UXvc01QBJ#iUM_Q5p-c+9Lba-I_i`kpy%W2-F06vGczeO}D)B zvy)nu$Hs|C%~q5p-FtSy^qoofZp>h(ju_>PUFQgK31rW;=v^uX{U8d%uov~irjH8X zVJk_H2fgX_n+PRkx2?*@C4nLgwFe7Us2`;@*+VQ`OZJp&KhyeDswWx|0{wB2xq zD!ab1>$(TRBg?q8C{Kgxfg;*BWq_}K<>-2h0;uL@aPy1+a=Y!})r77xA z$Ngx~^%1xmG+V56uA$8Dx@(mRhR)5&scvTvG`0HYHZf0AL)@=TS%?K&ZAM8PdO@p4Czu!LAiXuDyP@p9fTrLyhD##j*R1w*b!PwEo(BH2yaE^6 zjP_=ht}`7P#yrarHtA`1%h8MVz6VfSb!fU~hMDIRUbDUCG7VmUgMqK}u3toPoMeeK z5G)SmuVCLpAtQyrbBe#vF#5Y&#^|gzLxIsAl>Js0NJI%H^Cs#X?R&}T-iX(G@`26eKY;d%>G&2Xrm?L-m%yYHq$i2%%`@1nWnaG8#5OiTwH7{ zhb!R`l)hZS#b!i+k6BsiaFH8LL2vGllyLacmQmzsQxzyebsfLcM9rW<)Pc>W6$Y(- z;&*%PRwwq50CJ-C_aIUqp<8*+JEPcq`nl0|EMUWtNR;05 z=u9i0GpdqY^gOGPsZ2PNi_&;5J;4;#BDv_^Y`hatyVZ@le1g$Eid?0T)E_CqGMml1 zNb9JTolgN^bUF2Er>@wEhf_;kVG|-xHu@|KAre>U%asX7ufuCn+(g1rIZKGJJv3o% zCz_OSw0#ia8ex3-cxmw%0NM282HG69mH*%Wn)x)m}sCAyMP2C zb^$(Eeiz{O8)p*I0Vc=yfrx&weSrPi;y#c~X^Z| zhd4IL88b=f>E>7LlaY}qwCD?Hq4s07%%62G)0sTSR->;CqJF9 z#7u9=A7b)&t>*h)_k3OHrrxvp`Iegr)FN}4o(j>fdK#@_K2zH+A73aBM7pQXVkEI^ z7SO!R`E+)UQOv|ol6JAftP3na>(1|{R^q2?UK)*8#xLC?Ea|w38>$k|w}mTf!*KE7 z^72hf>3F`8u8faRfoF}-QT17bpnw+6zLRp4r0Yu&rGlbswV{4@^2=ggQg+oX1^y3K z`#Pn-zm~zIZYl6=)`g|Ov$vuYIH0iC0H($r_P3_%^;~J9owdNu+0Q6^z5DKLi#Xl< zS{v?E`bbmTO?9Q78FnZ7a!C`18TRpLTHg#yOi`Te%3d(-ZajeI5!%wgafDeG40UcP zk0>E&lYtUCb{6)W8o7^9%GJm(3WAmvysn3gS%U;6-6Ox*^TN<;wtM|fH)_YNuuH~- z6P&ZD?HJJd8+o+#+1gH|V?N>N?Ei99T6(xf_QuvI5V*z=VQ(hFWmx1808hM^HF&{gaw!&X9S7y z0v)Ee;R2hkG%>{`lu3t^zsKU;A1R3ZUS)_>@=6N&+6DUh9rP^dD-MFF-S+!Ucpwqj znDl~97<7|X0{UvgQZmsRBIxS_=+dRHX!J$snlgRWh=}-FWvJ%p?60Y5j?TJ%H|a;s zC{8_OI_wXSx2zxabuS{7Lu?$9WzB-!i_It98$)1HG z#hvuglr-B@(3gu+9DCGRXu9P+N((Kt7feJdLc;~OP&%mp5)|W{bPWkleSRB#3Jy%V z@I!$MA>%tf(qs1fX%P02DI-pil{KPbvu?31IPia<%SoRK2~UJPWe%JeOn9}Egq-sI zN@|+pyJn1-?9dAb2%kU{VH~#Ow9`d|7Zma+PRiu_W-^R+Wr=5s7(Qqo$Bz!z7I^xs zo32Iabe!ke?U4uIl$JWI&YNPFF%nv-g3&@lR1Xvj9;ysKqGF-S-h)Oin%GLPVTiu< zU_*9*EDAP!0h>gTQb%uev0{q6%j!ZJL)2=cfcsKwBIOKMXRAFGj801wj80djdV!B} zuLu?BW2a!gXCDC{9{$&_oa6E?2G8;-68^7n*5us7} z&rAS_PUWLDd|XuKwWLn^+wplND*s6~i6SbeH|11*u@zEV25R(NsaKgOU}KE)hOm)mgYQ*kfm zITd;pTO#c-wYEg}1VpHuv>8bQthdnw#JvXcno+=YA8 z7u>>cxC-sJkhl6HwXB|VSxy(BkESkl%p?KfB5blon|Bf3=AN(1MfmK^&$nFCsYT{o zgoS8UJ&jJqe5U3iJS)fR!acZ*QG|QYqHXCKJi}lF(=90J6Z_;|0r@I!!5!Q!$mtfe zH^H-aOmr>xh`OG=AF$fj@$7wHwye6Iy=>Nnp1tg?@a!qXPjb^d0p<43|aVSNmtmPycrbDDw*4@UZ=_6}~__tY9VY)c7M1ixpIdXYw zcue0#eQ}4!nfCYEkiTpVY3`5pe5UU}UoP?Luq?d~P3v2hNKzF0O!G^oO1h zxtWT)5X8B!>45IIcO&A04BrI=QGkk1(RdsckIlExknw5ya7t#rKVmC0(WzT`9LV?r znobiLMT?$*j_n61hpPq}H%89PFd{gx01N-7u&{%FrFH+UDMJ36n}__#FP<*slTHZI&7bZ@a01boGm~jq5=%hm$2-JzT^!4%{j_(1^wep^uS< zW{%p-%^yzI4hb!EzA;={U4yh1ekA>t%cuc75Xa6y6XHU<0H1+yz4 z;LF6MFsHrRLZJRAG+k~DWb(f*&Ud2V8v&)X-rIh3wMl8-MN>_HY-8gT8GTTuVCndS zqdO>Y(-P*)m3^wVPVKg#Bq^#IM4)97e78cVf`<+G`eaLET!=A*meCr(QrHU-mw{Vu zNt1pB{~vj80&mGx*NG>j(@8pOXX)(8%>w<>G%t1Q*1c8LkU&gGNT36f#IPjOuhzVG z^ZLE!E$K8n5s>AfqKzmnC}ChwHc|Nqe*|UIunZzHii6644u8R6#sxYO^~ z)N-oozS~VRe?J;u->P%!oZohS=eIi1FhLBnXCZ#0(OYl@_6lQq#uR(!AEhWVp!SA# zZ~a-jf?O;5w8B-?UBxBNv=Rn1cg%@A-<$+$>e4{rsWei#2q)RTsU4=ba$WBeZ& zvh-o6E<$dBUzRmN#_vtK}Nb}kpQ zc&;`4AT(CpD`0*XR8;?hgu*YjhC+cNs(V`T6Nc>lZ^X=;RS~NJ%P2Jek>@$#2(@Xb z+(il>z-SaiZfnQhVN7WvHKK2B#UvE9v|_%5z1keQ(ZRL;`Ha&UXyhEw}sEu6G<03rtW#P5l+XxJ%D8P5E~OG&S)5fBNU3or8vfgFbdl@ z4*dv&TKy8c)A8kMFe4YVy&Jjw7I*Gu87*TJ`Q<|XAVGcVoQ_%ZKDcx~8H3tN=W$1B zJsoqmqSh^J5mnSmPwJ`loH~eNs>){)SUU?7*8{5yU7iKHq$P8@O#7&ZWkIy!zm7u* zUr1YX?ZLovajW)P7cxGc!KZ$S-Rbgr*w4d-I8K&Gw|MsQI-+S=EG;X^ejr)dzpzU6 zXsFTz^S@_Nw_F^wjkP@`|B6s7lwTw+_O`}_B4%%EfXQaW?9&N_*}eAe)9`1lT5&U5 zL>1xElX}9nJ3~A(VBkyr&O;Sb$3kIM^(57W>ZyMg?N>-+r;mEkRv1y?*~Ef%(nWbL z>PAU+xjvcVT4@zGVoH-}Dp9?8RvxDKKnoeq4SaM5Xj&`J&1!4l+lG8*Ub9QEg!+@@ zi8r;zRLOMwMjBeWy7=f<;|;9=va=k=>-%03jQYVS#HDXwA>*y)>Y|zV&f@%^=bExT z%#5`Fdo_@YpH}Kma*OY6y+wuX-^qvqe4zJ+p`Yv7?c74SQKZRMmJ&TvDJ6<`=GgZ1 z%HV%QAIc1Th1Akd6_%j$RyUj8C)qCb88n@LE4wpAhsS&2VbVn1pJM2yO-NO#rFqrQ zk5(+sSoJf;72j3?LzKd~m)M{a_nH^LgN%h!Ti7SfgLsg!h)t^= zG?VF7h9G0oyRsnT?E(H`LB{N_V<5=*+AKVe_1$R~VtjQ&h%uXL8UeqbEZPNpsB)*CWo0BL(I}5NeoQ`mV|-K!7ID~C z#2cTg;87e++HX>Dd-#N zzPyII)UxZ(j&Zhx`cu=u9Bl@bqTDM5jGSqF1$H>KDEBi92M&*M{{p_jW85`~Dk9u@ z;CpsPUBkjvco9h<6LG=1ilYJ^hQ_j29pl@-T)=YI`1Y?C#&?Nt|C@YUUE|yHRaeHh z=TE!Gw;%137|8t+hXTJrCxemIN9yXRk6;!Lg_C{MP>zNa;}b_opM^?pKVCWRcB(Pv zdGNz66xlB8n&sw3NU*w~^sS+;&*<*=GYeBQv7z6O&Y}sj`_YN)`-{a9UnFi|`;tY!Tv8HZ>(; zjFrz62q;e6euxSO5$cRM@Ky$Xh(au3GU}(PYbPvDOpCSsmAh86HZu#WyL*RV4m`Mk z0^_@OA-#UrF5zG7?Lleul|6G=%ET-;2CPyvj`m=GLXF7r`!@0WUiQmufXaCfEUX=x zLz%reAH*L%u)Gi@b3ND|Wr{`ih&N=`6FPnvR!s3m=T$;hA%N?MSd`F{adN7{*(Y%v zh!gq*U_=@Gm@>QyJgWpfyOx+ z9;KzDnBl)ehreL83h=*3g8%dk{QPAF`Y)Lt^j|PJ^j|$)=ofa|2>fjdK+M3uKmebM ztX!T|fdAJd_|Gi7u6*y|=^^0FlOy0=(?vjOzYQojksSvLRLod7uYiT@;HW^sCnO3^ z<0xS7Dqs4;>B0YFlf(b>(}lmj*+$^giK~Fb415{xmqE13M*epa?pw3Bl!K*rA*Pj^ zbqUR$9?oAn#7)^on5T z4rCTeP4HoP?k{8n^Ddi`dJ0IZqaC}B>Wm0UFq)KD9o!PQf2by zbL>@Y>G}*RDHyo?=P*>^^2yGzDtE82E>K8Q4qDBDTZAkGVkx?|_>LZ3dnu)&naKx} zUY@_jnoFbdUmlc{k(nf%_ZpF+fwWBxNiO3k+K@KF^%qJWz_zdyEw0DN z|0Aa-{w3>xqq!mF0WxgNA~%a#9l!>(O22Nqg%0XjR7+b~esBSW!;^jcnMEgao-*~l z{K|oqWHnielI*2zD2#!|^|Lo1=nU!HOT7nRBBBU0d)BIy6q=KT^Pu*dMEe(7qg{~~ zpJOlued&=T^mDzuI9*sk3Ak0d@7HN~CNQ?pJBlRwyTZ&mzju=uf6ErH&!CZaeSpY6 zVd!)uMz%o$sc!c?AN-O-R}&dU;8ux@;yb#?c>m^!SzI5>6sr=oZlf%}t5f%!An$G4 zW@iOy2Sn<7_7H_LJ+jc81#LIbFy$V%3AA0uwyjUlQj|UwL#K$gW&kuG?qnf_6i5|u*ZulM zv~fCzH&=m>I5ZfJ(lAL;UDx&#YMbDru{Q1@Lw`6J(50iHxu#NLSqk~07Pnw{ z5hAPRsZ<#bG!Rf@b&JI&ve6YxwYtT8{%xUT?=Z;?Lv;%}S%@Z->K0sQ-NBJ&ihyht zlqg-QO)#Qad5rg+?A7KX4tXIEF4yvZOX_=nP61UBbgJ|zSpj~FhL)@V!#)yI zQJn?_f^7$J-Qfsru`RTg7$k#!VAUn2YC!}$@_SZOSrF5kV7|J?a{r%cz5gyWdLd}^ zk1#W*(O{7FNA9qnqB)6!O5ma6`flQ;sOp0r;S47AQlIdC7D6mAQI&-UG}~xS#at#TFxY4=#85>|n9N3_ zl-Z~aIJpSadJ^BWajp83x1mO1kA~q3TBTKwcAiwCkhNfKy>AqRlBYRb%CVr*J5Wi2eFKm00P?G_=G@Fw#aYN-fxyA3EtM3~cnP z@zA}_86}Y)PSZ@=&$I5Ta{B_9g;!zKSys$F{C2APLaHhSD9L-AM$mi^xMrdITR*K@e0Hv!g*^r>q;HS@Ys&<-H7o^-Cm-bA9eP z?A1n_=B`pDfLoHawJcbTn=6lOmyBO;4S$84-`)TRm7K>f#LHE|Mm0qM-ig;+k@LfB z5mn?&PwL6}LNkOhq2UclxSuS1q@F6e5bmWQTv|RSTsL(3v1=otI!0P!GJ*pzwg!=% zgw&uYXq{~Os|;54ODqwtnH~5=z3KO?dCcIc6Tj)73<%dG(-~ zj9v}tYDCXjy4ndT{$lBB?5|@WUCmO`oL1ZAt3A3+z8bnMZoPf&a6okO&g|as+D8c{ z+qnPeC3j&VGq=P1@?j-DJUh&1#vfCD+i(lX3ac~7h+ACPzp!>)-?Dc1VBA?=Nv^wn zc?q?3gLExfVSkGpIjvd6X)08iHUS}_|0w0cr63Ab_~=a6DShn1e5#`j;-?-D7;guL z^OUnkw*ntmwX|e4Bu268k)Hiioj2v=JFc=Ej7`};7KWO%^UBnl-E5Gamv%}{C44tp z!qkcEsUQOWFNyu9nKxicl6p$E79C90Nm9=-f5ikQ{uRyGcmg;=?1=p>_cL$)(gZ0| z*#hb%b!$AGs<3bsrnY9!#m2-x<=$Rq-kS+mFKUmgpE7^Nge(3P4Od%8Vu?Lv|ByTS zW%IWtz*e?|DPU`xl(ALFI*~mV`{MtS8+*TbV(#Pd@x7e1s<->IbsOK0HG`yY==u zV%1Q&cW`Xr)N4#Xe2S8dwj`5zZdg6E6x|9vB3N5qnS=QuSnDNALAZ!Eo>?9W-Rh8h zgv$ODZ?ek6LZC{VuFa@;x4y@hB~(@2e0aWy)|l15&A3R)I{|?79zxAPBAw@mfDDQ1Ma6Nin9NK*=fkiEHQinpY^l0Uc$}FtqrNu)v$!(~! znXHsD+ZNDcLP=}O9M%gl-cu9WvY(ew=cka)mKnM;vew<6$KLuV;`+*Fs446*D6ogl zi|6W50vUWO81XuqC1b=>GeELemG3;U@SWoQ;YqmVWG2GKkd4PU_pX!7T~JoiTjPM>c2BxsH1M;BM)jtrz8G_bgXrG$F2Kf)&BsT}h(3uf;~Vf&>?1 z-%UJ!7{)FXA}2&}NEoJZ8i>ZTz>O~RS1$(Xnb~DZq43Oc;?i?p2+uVfObP?vPA@O_;> zRB_aN${t`_)MrrX)}Xq-7(*3#G}$RznW)B@f~pYbD9~D}6d?-?Xjv&0&r6AH#dq`o zkax6Vg1I?jgE?3Wjy@yI&4Cr>cqJV=Mjzd3$qIe`Qh|;%``O0HVsq@Y#Qa6e`&$dc z>xqb1%E?@)@|#@r!Ly0E*M1NXYz>N&IIIOE3J#<9PZ1EB5-EX|xd!VG+g9-woUKmh zY{eDJVS;-0b_7+@@*Q_%g;wgtK1!7#jxCJ)6!~BOUBWC66uJXYXgaHTpwKhetBrv| zf0KE$dNZ;I-5qF`lP=<**xiefw79mgKbaMOWQUiuD`#pP_j<#|iGzk-rOw35;W&xb z*f|#D6H!N6q(eS{j&_c{0qO=N`A{~~8jek| z7Mg1*KnEW&QLwtYzCW8JOnQsU=y}^?t7kM-D7Y>Bc0wWLUOj1o{aPoA~%*{OEA_Oil^-!H647cAY*x9_k`>oc@G z-%eVX!uh5I`4;v|tfO1yDZ@h|NizwW;h%Rj6y%rlL=_4y$G$iUwwDGdXt;vjYh@s8 zRx>WeTqfaQP%|Do4Ky${qhhxWNYIpyA`ZYwn$l76yrgs#-_ezh_x?}{FTml4Z{bpw z-fARsO;)rCvge2FIh>dIA&XXgL&pu$0cv|VRuTt(-*w!6GO|Xa7`@Wl94a^Fy;y8b69jO6zRoilS2|zmXH|^ih4T4Yd}-qI_2u-n zhV%86g%#3l7|qo1$u7U$~^k>COpe%O{RN&HWY zB(BMc4rl8HoR9h08ijo?84UW!5g0kv&<~P$WTOdE6d*OrwkW5u)de5AsA%GZOIvWnGv+zj@gSa*M#?{84R7~F6Cjm-R%lOZkQY|O%CLl`-uQP>~aLoY>f z!65L0$PfGxY+nArjon7?5@$`K^;WE@Erhs~wgdm_CreJ7nenHU-!>W(Snn*rrUR$` zC=Jb5CScPaSx$`Ty2u@l&_53K7M;G0k`MhPapO^+5`U}e3~K!L*ydb5R2>Tz7QwF- zELN41db&2HkX(gdr2yOC8Z3&cK4$2whoG9w*EKhF8FQ=2d@QV>DmOJ{ivX{bv>1A# zvVpF}TvSTt(?N_GO|MAMy{7OP13WsM&X2tEbYAv7HyFCnpl=WR zgF)IHH^SXkAFkM;dNEPt3bAJ=xl*sb(5yV6R|H|@j8D0qx11?sJT^{#@`J(t14yb6 zhoSsI3iEUB*UyZ4pi8lHGrj_-mR9i8tHjj`so0JUbLC(F^JRa4wng!15Lt*fLv;Rt zsR){!Ir*;D;J&1{XOCFwiR=f3t*)G4ow|y5wX$TsPE@mjY)qYK)JG5zirJu1juZ3; z$SUyBA&0H=St>}M5>V<&5BaeCo`LeE(c(g~v^J|H&+xp+p>@rkZ9V+Yffb0v8Fn?9 zrAX5(cNQn^^d`(uiaquLsZ~Splb$trH{mirJ07FJ2;`*U=)#*95vG?cQEm=)vkZ^s z;=<~hg0vmgZzx!N;-;~9jj}?H#eo&Og9x3alMybER*D`+ku^$C0>BT^c0C}4RKwzP z7$R1C*O5CG5g29+&cbm_`<}UG+f~8R;%`Zs-bI+zxKC3L1quleY2waMoH{W(VJ3!hG zY7hFOLG1Z~J81Tc@B#-SnJwo42vJ@7&Ws;|_}(xSIiTlRk%KjCH7jz!{@PrT19=XP z-=$>hXIG#3$G!+5u#daQ=??SZGuWJSKf^_9iSmb|=4Z}Q-Qg)F|0HR|0>(Su8CC`GT;BzQ!D*!W#uuC;B= z7+#S`uWL`9e}_rO-@t$96y|+N_7VW=(GN~Rkaty8=0QUQ$6{Qk}ZERUwBpd zfKIg+Bn-xHqFJ-0X(bV^+Z0xrQZS>J9ykFrX7>@T=0N^4WH9?%?)W#2J2p1*eHVtB z^l<%1<&Avb!3OE8?o#045%YRYDb}Bu)_SMi827)K_hd>=|H}-VZE8OJPxDtykmFy` z?w-cRxZgK_Yl7tTYzg`)q~0uA6Wh702|z($a$eGy=FGy2LJ2SZE}3b^A{f0k$j8V` zXJaTdjy8zA+WZw0BKcR^Bhog1YXU@OOPB&8PuI@4Dh!@1-VmshKS-QC)x1L!^WD-O zXU{f&#e_5d6&+`$A|Cgdzcm5QvL#G}vo?cDl_4t6PC3)~62ga{N;iB=Y z07kts1bc5h65bgGDPBH$*ypX6W=H!uf|+Sm>f z3-@8*bKP*hIo5s3XazBQ-Od6yi zkoEHz+TD^%JY8MoLu{08F+7m?1GLkuO*O%kd15c+ZK`YVB9E0K7NqnlUQVS2kz3}J z?-s}_g<&=srj~1=wNetG{;2E6c8n6_NC-o$zvrJ^o`>uab*1G^5rgZ#Di6^tlTF6)hrxcoeN z0G-~}7J|i$l$cG3b&uIr{lbm&!O~K)IEOE+9zbFN;{F#8Wd;_Vcm6Ni9AzCvM*&|7 zFaIM^xT3Fi7Zu;58R|sEzZIt6jHviOj05!h9F8RnW$Xz!jfCaN}F7T_9ISo0pWR*9Jh zF000fkWm#lxk=*WTn#6DjDnS$r-+pwnH($6m@-zXx7~o3GYaBfo}@(tbw5do0KNsb zG#);*jC5Y?92xGFmKD0BOtD`jPC$`;Oqn{_qXXo_ZKc^&laZuv`KC(&jhm16% zN<^tw@PLR1XlSYOJ{*0a>kg8LDw?|pg+O>jjQ{VV>V7&(ZPF>!5W`I*$=?a6>5J-R(a}}3T=hd-kJUD@TozkK!RcR&TOU-Un2scv@WU! zd*>Tk!;c7-CnLNbgP2U$ll|ytRjT3uFDD}uU+R9wzKcFncgDV_u!hY@_TOOJ)MrpB z%5cVh07H+CI!+0<5+7RLff>|!i2#sXRT#_XC74gZD~g={!W3crxyfPtm(zf8Rw97* zR~E<`XtivDB4k17TDD%r^HLmM@f|&6%A+XdiTNMvnS26y)O^>7XpI%x#PIQp9QEg> z&5Ps58lel7<{j44Zx|DBhi)+*HOvD%4;yQ(y^;LFL-7U6weFlxH>+{R5$Iwj+cqV*G zZE-o9Pz${rx|(z;0vFs~k}kz}bm{VzE-hMXXjoJ&te{i1d8*zRx8h};sPoRa>?%Pv zfE%Zz6gbxjwzVFIPpR#rT%F5bM$fVl#RRp9QG z5_eZr;7*@F!QQK;hrO3ij=i6mF7{eLpauS_y2}<(Sbwm$3f|?Cl1PW-olqzev~ENv z%edc1l9)U496z-pMEY57Xt^$xIjjFJZHy}v=QkjPUhSq(Y!qDRy&3BH&aQhELXND; z(l5`dzX)UV0=p2_sTFKcvbqli(^JaOo4tWLi}w(PiqdGSD0)UM#w#z1C0{<5XQkhz z*6=YvNj>Rx`K6ww1TTJp{0IXrgu8x$q@UHfblKdfHT)S3uhtsARG3*`r7C5c%Z+@I zEnc5N-KXJN_%#ew#B9r|W(7HG)EX##HHWUIH57qcr8N}a(Y1ybO@&Aca#|8Ae0+>r zw{4r96_iT-BI7-Kh+s2?KzDhhM`uO3F7o85d`~$)j$bxW{6+P!syM?=rMWWl-_Fl4 z30&oyrx(7dQ?kknjT*-(m})|e<9rNNSYfjoN5ziIXVkf14uUw-FHYj*ra-2MjrwCk z8WVLVC4J%hT-Na8D6od98@e7&B&06mPCJOhXb^=+Ty|pnhoSlT6B-DnvH7{zL?*iR zKy7~R8_8wUj&5J6>24mbLQS&jpmbh9htUSC^glqBlGj>>TGj%U6EZvV3lJ=U5 z3}xdYQ2rowm9?Chs=}GoGhESC4lv>^=_>TIs;l6I$~vvZ_jH{mH^L%UrpgGrL0`#a zdZAA1PZqvkFU6ZRn%A%`>NBX&FlaPCkD-bf--JfP_E(nKl$n>KKr_M?Aqxy>3QxuJ zl9{CVj;`>$m5i{H^T4)k#07iyCu{S2=IWUNdQU4}=%5!}zqy4o@(C#LEch>@F!IP%rzNNDohm+Zt#AuX ztEdr=6gI1~{FTiFQK8&@f#%Ev!6o&igs4ji^Dh>bq4Rf9&m$^5oT!)}UgU*!KaZ(Q z$F4y@{56Iu0%8mMPDjfUyYXC9zwHX&4K=JLJTO&nXG;!KfLFv}cU6#9P#{<<@P@9P z4iNh|bkN(~vpv+UK{a|ijRx+J(u&7#-Kr$#o>zZ!*D2fdq82G_co7U=^HkE*mIL~! zSEQ*%Rq!}WV5FpaRq%T`JquOva??x`se)8rf{->XRgk0>oiSWuCC<=_?EVPN2T&Si z=zF%ExJeX1XeHs$Zq7*Lrm6jGi8}C$tgD%(>dBY5oL7^2RSORquYy6b6DAnZth}1k zYUXTftWk3k>Zc)sGS5TL|1GKSHY4?^0Fb8$5B9i)hL(ao0ypsypzNX(xP?rA--{6E zVTFU?$R8$sm!)=B1bb+Q%EffnaDg0K@p^Jtq4rkb&AHRnqO5Y9CZ3JV+F=rh11hm%rbAA$&&HHZuX5rdTuqs{ zI+R#>MQf;*i0mO6S|YN(?+q+eK^ozI9E4fQ#~^4xT8EN^xA#oNvUOoU_1As3(G|bwLt1jyDWJ4T!;u z?8F}i115Z0an|7mc+%!LXAyx;nX?*8i+!0xQMm2u_atG*h4zGdvVxpEm7i;2ZmOa364?z^oaM=0j5m49U@t_SjFs*imibF0nmrhF%|K zLn%vzbpIfvs(@x~j31c)z+hOvM8Y}O@xH}gZH#9!*VE%*Kce;Yu5XP1g`yviK}HdL z%1V;P%lm_crNiU1@N(7dk}8fJ9^Z8up3>`U!ODHf+Trn&@OmqXcG)7TD4L$sQ?ynr zuL8uF(e#R>-RBfOQ%@LOlszitLmS|<>!yJfxL#=6F-jdJsC-4GnP5vn6&1%xTf5F3 z2Ce!fmT1?^5&VAg%@!QN4>~$In)pn+pO_cGt7(a-c5#%M2l47LBH^`q&`d_LhRQKS z(OKn~H_~78sOC3je{HUE46nVixvDWw%<5SoJZAsG`u=^ZYYWl+$;!S1L3ICWyCO1< zh+j`0T$`nKIOvSMIxFkFR8BpOnle{3d;_L5(uQZo?W@GR7x+;nK|THJ)fsq|n0MyG zH=cj({POe+IMl8M)UFj!yEa^2n>}!74+<R%d z==Y<66ND&lXyJboD@mgi8BjLrGSan5Gknd8h6hO4M=7}A0aRiR!o>u24B2sjTqbrL zphz5!gS;eM*I`n0oVn6kzMh8oR2fEqD z?2#7-7IPvU+cx>f7{M|#ZnVi?i3yAfwtg9saNRM!EdRCu@mAAJ-E8t4Y1FHlkOumj zD3>rdBy;Ol{%=WHx8~cZI+Tot<(p|}$wrYn$zX&s1pQ%zhT4&buDgSH6xiUe(Wq~? zviV(21r}Rzm41nCKMt3Vb}vgv?Q0FGR@V@YV#-K;E@tMUD8zMn5ICWQ{=N=C=EpwT zM~+}38^R3T-ZJ(qOlcxVx`yxz1EI0yh2ci_YID*34mRhPW6GAAV=mdajqGJKv_yYa z;@W=XC(a;B9nTtuK^j_N5c&XU-}A``QDr03XSS@5qGsGa$oJNU~&pzJ$G$ z+n|-V=kCpVXiyHviR>-Kz51rYhIJSDd6n~JUmrrUU-PoVRN3;x@mpz{%w~P6@@eHm zZ!3IA*U7sXuHS;WOyp!RT)!7XyBn@a=c_KyqV1N*nAd3G{B$z-Nr0Gnz_q{`@kFR% zQnM}AV(G%e^v$2cHaQQ+&M1NqOx!TG91rKJ+Yd+fV1&GCI~uyJOKAUW1JD&7CRUg- z4>wx3zlLv4$hlvkp(W0Zp@~5C8lucJ8V(^|bdW|?1m?9P1P^94Z7QtW8s`qRE*E6G z=BgT93Ms8X)69-+3ytr!1`uJA8?nE`FsbvZdJ1pGi2ZMvTQ&JHCaW@Hf153$%H&5+ zRHPTq-`2pU^S9N@^8CGURsXaBM!MEk?U~~8VjFmuHpO{&6ec!WYeb0)tr&F>!W2Dj z&=3Hu)z1nZZm@Gdb!)2!TJmz}@n1#p9%(Dj=o9W8|$?8GIw zdeF>xJ5XRM^-Rw*gWYZP7clVaD4nttU;No4}$MwdOY6j>Ii``|{x%uQ)0ey(SPG<~A~| zBJ^Y0(S)$`wS8U6tmoxmsJdNsGWkh}jt|hRQ#1KhPAp~2_&NC6)J%T6+7m6e{{0j_ z&#ixL;V%q0==7tw@3;fh>lj*zA6OQ;yje+DHV+PNPS%h#vdR=r zxF&Y4_DDSSXs=$DlRay6O?ooti3DYYu@R=n64zRO>PGFdZ? z1k0C)q3Bg1B!%yNoe)^ z0|3>0E#WtqQ!!=JtK5P}*ll@(`In4D8$+TySPenA*d%k33Zi z!VXP#Ju4X?t|_+teyhfSJDJ(?Bw7X%F z)X{3gWD6LO=;r21&b(wg6i6zYE5#F`B}%P)B6Fqk&0Dc~E-+GWh~`kp9*fYF4pC2j zY}v6J+Ay43;gF@~=onHZJ?)4KjGG%!L9cRwL44OqVAOA%X5}Uip|dnYiw1F%htTn> z2hC(%Y7H?;Zy`Y5N0CVn(_hTw!Tvf1Odh=F-s=79EzKHNHJCMMrfHZi&XTvlY;jDw zbO|{65P+@PA?qo$(me6I`S6W}qhg-OAXgDzv@N@%X3sNWs{SMu*iYq4u2LR4nG)pg z$B)pgQ!^!0PAqwM{9E|i)JzFy=tRWL1^+KT!OaCK9EC}MxBKE$M{?k!@Tx%v5P*O@ z{v8hKBXI5i2R^lsHeIj%-z$voa_#?4zOAm;{(RMy*Z%xz_iO)A<~`u{TO0`d>p8CWcRckj8RBzc;W@h_WN%1TzIeU0 z@XCGO{EB`d4b86Tg{|~s-$AJrFAn<%!La**AM^v<0s`0ehW3D6rW&v4!?ss+@nYi@ zoxfOfMaNSK7TXAx7FYCHOkh+7>#yj$@^6nhh$p|I!@&!=qFmAWjC4gOq#eO4`d#@p zstyTNaVy=0o=HPXccIvd;j^~E5mtgQ6yHyLxUfAB&5I)&*?n!U=x53+y5tr88eaJd zXlA>5)h@Ep{jE3K>N?G_MAzy2Ff*4Bs9FP;bRQ*bY$T|;eh{M?x*Z}#0KDZhwyM`X zhz_`R9AiooZPKe;J0?uD)Q+FdUY%+{&QD{?mYP*AoVbz!%_k4Z zer|y9CK!56tH&=zYiN4EZ((V5 zEm(?Lwq|}@(-l^ma~hY~oyt8#n|y}1%tG_!-MwqOC)J$yKx;`{)p~h*K73>K=-hF& z-B&u?&#gkNaIaTCl=|US`G%^Ln@%@i37heiG;75T_;d|>+(2hmUc~L^Y)g8^w+)Ceecw1kvIU zK7*s<2v{qg&!-kgOjm2gD+=SgSSudNx7F2Jk*~VaT9H5PZmsx%Nl{?=AP0xATOcIC z8^8hYB4uZ2+hGXHy^|tnHi-Liz{+W9c8gKg9#nQ>yn}@Gt^8=s>hJ{!j>V5XF4lT^ zO$SJTllXW=4!pI1U0snrKld%^U&`c+7Rvr^nkZALPuE^nKK9L%f+?_2i3bpl*~N4^6c8%;+ODjCJPjW*hrc-{5p@DK4~qiu=52=c57|G-lTmcJ%& z8rmK6{|UlFf{@9&xH##^sRulid3St@lny;sO2VVi4nAz2HCn ztP-RyJ)4T-?xxY)3W5D9gg#rCSEtx+R)}3}>G}*Rh7E$!!_Z9&%B({f?XN5tPXWQ_ zpw)`s79k5#F4f{GzN1?s&m*g2HR+J7seUTSbP8m=M31NO;y=%nGWRe~T30m~>vm?yG!;A^#% zqm$SK6M*zOj*>upU27l~&M_lNo(htDHD=}{iTa+=C`!Dj4@+E>_(+;@oMbq(k<=QX za9P{PvsYqDlYXXdPvir0zChoYon;Q&E7MRE0xme&{K-qJGbbevKd#>_E4qp>G%z^o~= zvYH}iM)`w04rW?IkF7*0RY0D4n7VyT0CKxFJ{p7-;47zj&);|NRPuu0Jp9Z!Y z4^UjgM{V^KB<#6K-x)eV6qED5b!qL(7;Nj8NVLGqE?&%DZ7jPuC}m^AjI<_GvB}z$ zqvME{U%bCHA{2_BZvcpzi#@&$FLx-vxF4^#qWG9CqKe|_Nj=41*%H*4xy`GRrhlUF z*?NNMqDxXIL)s9h>46iX7Ex-CU>R^+RE-Z2rZwmzrU{*reUEAr)myd*g*@ycV9={y zVu_~Bv+{C`7qpm_Uz+IDX<94K?#?bv<^^z%v9Qkx%e;9I_ZSOLLG_@SjDiiJ&P3sv z$N1y)7xNgizm5TqabNgMSlz951sEUG=qhHDO~XgrQ+-3(5_uttNu9%g2^6TzUr*xF zKSspP^RvH{58qfkO3q;p%!(N3(>3G?`(xo(DS*D2uYJ>gUKd^=Wz~9H(O{$qr0^AS$9X3ec3LL%c!q~m{AsWXTU)iDo&|_)h_fsriAomw25!fPL(mJAezcEj+(xYK)+}d6EPOye(YhIj)-abzz!;1}4`Hahs&2Gwv_ZUG?c&XMN~bT6p&ZjzGv_XW zmAQw`uS1MHA&MxF60Fg;t9-FQUa6BJRUmZHOU_1H4%{An=+^^OK}EZ!sL#mj*!Jzd zouFB36Kat+@G!%HPH(Cysc?@`eY!$S%M zuC$)x`gTATTh!O^!F9u7Lhz}lN9BI|B~01$D!+*mqFUZWKh9pAYFfdG&o?otk-{ED zLrWAkiozsC{?;glx5)#sr7qI9@L%LXrJmg?Gv(^LmXMl{LZ2wTAFRauOxoSMWqn~$ z{HrSCz|Y31judr*x!v;ERi{$xf^N;GP|m-L3lP!|*b8evmTBx-MAf5ds_dXWv#>ek zgF6c!)CsQJfqNC^GSQ*o!0lt`G!NX;j>`ux`O*crv)GK?Y8O-SNEk|VOzg-pq2aay z4Yx`(oTk33;NYoK#KA3-c<&~ofSY+J2ci+zOwsD6nh!ZedR_hr4Y#jO1Nq649ciMTJT?F~W=GUghq`jZqP zZfi`HZm13oEuCZbsGr#O5IvA1M5*C6=Acn+;Cm=R7da@D*5-zKmbC3>amP#vEQS}$ zm)K)aWwirfZ|f~8ta~d4RfHGQ&jyw`ZqI>3$7Oo#aeI!NLx}Bh++e3Q&pi{b32hhe zRN3?r`cQV&I6;p@zOS$Zop8HdFCw-}eFp6~-O3svMu*3HQO-pZSI@)HOyhpQt0FMIKcl6?`0v(tTFD6agH-BZn=muGxzet>gI}X7r)B6m)M{a z_nH^LJ<-CNDDFz;LEIB992nJuX0jv3;EARqDDyX?CQO}yfD6t_x2J#mWZR9_cmX3rS~>} z+TDBm1CT1f?{*FduKlCxt{)H365CBspJe2Fb`;x)X+z6)9}S1g?pwc@s(U9tN|2?y zvb?_+cD}2P@)ec;_RXV%42lolI*UW=UkYyTpuMs~| z0vFLCC0e5^SNU{-)WQJ1qk(5z$P054Wa1>2i;7*g6TzyPIh7{sBdA`Yv~)`wq@$tb24OrH3{WE6CLi@+kit0)v*U>M<7v!@xrdmeHZKsmcm)BegrRRgW&7%D;*^sZf@E1s83 z-^F)y)Aw~0bFevKfJJR`7I{qklM&?_TeLBp^P^)cr(Le0pw{=u_T0#}hOUGE^-)x0 z=sR8zSg9ZN(Q%@k;rx{iG)0)^wg?jTO|x=K;`7+6&9MkAqFgR`kuEOlg-q#mI**2y zPN$ItgCT-95QhL`E}-QliErBoMn~5;bbxGQL%f_QZjGyWGKm=H4%*ubrA{Z(RzpCB zjqgc9n{5r6R)%m+Xq2SC3o~;<3*sn_(3UkE#z^jfZh}Uc!(kBE$i}wdK?Jz!Q9{(i zjb1x3Wz(yi&UK|@OfH*mc;cEOc)FhZgy`V!i{k4h}o&DW!4spNF%Bi&Cv9JN6iZCZqoidL# zhBf>;hoZ0`*YBysS#PJICC(ZRLmP!@(>V51+?Tx2L%rHj47X5{TGoIL!K#bKBw-C# ztL|V;`Y){Z7Bcs+xL2s|n2CMDkF*9BVUYoRB9~2!lH=CZB9== zU7J)G*$cl)6rA>A9n0qZamqafgN)KuNmL*I6@bwpn&Ax0-HLKgWQ(YxTzXPZxtBBo z8FQLnlHi*ue5xLNU9`H>LBX^MPQfu~*G5%%6!o?oSfD)19wjkMPbgu6S_-Yx&mYAg zR=>m&1)KSThc|qn1z&Jokq(9?ZqqI$<^^yEsj$(Blgd1ZJ4l6(pnA|uMzsb9DN%Li zAWaBSELE5NbqqL2c~_$K)nuhzo^DfDBARI$j?s&x_lGTx{xfNM?u%Pb` z!;eybq6~%=xw*WFPWC)g=GC91tl7wyylHo+-2M2qG;4)BbelvDJ46a8xhL_*nG-{E zjB1Y{OY?urt-Qs!6{CCfS1{Cc_UPE=?$I}~L6c|Ve$c#LQzq{FCtq*9Ad{OcxpON~ zD`y(7V?9%I=PDhd82x6h+`qsl^bS$%p>X5!4pH=*?!pzMh|}*N2lx?i;eL%zEhK+e z7w)$Tt7BTt9X_gLXRKA+~v zj*u+`2gS8tI8_!{2jA`f}7>o|>y<{l}aeLjp4XxQ%7h?Rrhd#4s4xF`*xNHsv8DyLWBIQ(L z^ITPdaeuafIB% ziR$#CE1^UE8+VMK#+XT;Kz-G~_0Pdjh3mJl?^M|Y4hAbrhhIIu1793hF@5chX`MW9 zgtG;CMhN(f|F3RCm^nyYdI$%|SOqd~_sm06z zwoQG4mY8`lhN_rh-*Kua9i4*hZ*Q>W6*UJ<-czH0(Pl0B6^j-ZfGDI1<*ltn209=|^cYb3ezHuFs(2*C12>594U@rxL_* z$xC&{sVC2p__>gVmc$S8m_sXaQ7hF)|D2KQ4}&B@`smQ|2DtpSN(4J!5JPjF6633& ztJ>$1pzPKlXl2&t1a%e&Y8Eqdg0e;qIx2dO7lpAC!mOW!aErPgI(B;gXwZB{ae{g* zrffRSI6)D9rc6*Bf;H}L4b>81-AO}Bgauz-NCmh<8|8QrOBGrp&+ZQqW;ODMQP8Th zNp?{tQLl@ryfC|d>#hpcXn#RprEO%VO7VieZUj!ZW9506%R~`|W920nI-O&s>4Lr; z+_0Z-+PK&bBAe!1z?_`JBH!|Y6qRd|0m8L|L5R?U5z>P7JG5wh+eDt=^SK<~Ir-HbAHYL!SeNrY&)XPN6+m zL)eC`;SiccxzdVHebY;O1m4 znirMWN!RTi(IP5my-Y{Ed2^hYPsbpm>{SCfz6wZGnFiJl9Y_w3OC1N!#@wxl`4qN@ zDq^N5^~8Lk8N!&*@P;JZ-Gz_T1Fnm%cP4veO?YF85T0(c0AFs+Ca%shyPa0nk^ z^`MzCqgO)+2R+Y1I2H&|EQEvobqs`X@M`M^lW=}{`TllM98J~M`DD`wm+gfx-@hQZt`jgz&+l<>X#(2C1Lruq$P69l}<5$?A$zwb| zY+kP^#^ZyNueV;($xW7GJSx#FXBr>EdZrfRp;TKJ6rF{6{1v{US6dg)MWhF>w$6Xn zgFOU&;+%W|hx`!;_V_xVTAUGGgFXJSFuqH$$N$W?)iu~7Uv*`$NB*>Xu*cDpc>vv~I`MdA}*9x zeECl4^yMzsGij??$OVCwIb&K>TQ8zOO0dS*2jzvi#8qM$IS+k(NI~pp=JBWWEK< zj78~>RQDSPL>(OjqA(A|9^8@TS_%5ujSwj0r^sl7ugi{oxQq#cjTDxPgt8S~<}nI6T4g|&y)DFB z71H+CX#KU)_F*Gnx=GtNV=fal7^LmHF!U%%Tgoy2MZRm}YTKCGID65YZ^WFOy%Jc} zM!rj>h&^Oq2RN#6VB200d1!>_wN58K+yGGGM9yABrBi0FM*I1fITVGGST8b4V*5)p zw8T{5fD+b`>2D_xO)(laqwTO`4bq`ELZEA%Uuq)zdCBfrC@m}`{}DAlez!FQ3Dw;A z_^%Ar^}ybYCH?!DTQxp1eWuEi{?BX?RmMkpqKaDGJy^h)|ea4(~nB2IMQK-d6ZR{W(^i$L^M;r@k%C#>E$Ad_zgYlSVt#IX@s^EwpFk0pElf`rPaD3^bl#D<98IB40gWS%`jN37~a9@O> zrt6Z9ckaSH#0E|7!uM=9|8aENBPv^KgG&0SS4^Uk5*JtdYQ;vSZaV%3?KE@M5=@z^cDpF6E>R)R zfFk6jjB0e!D&Hy)5z4T|sK;ib)~1KR@==&X@hI{~o}1bOwDF=lmX@IYL`wh3md8qk zXB8aqTPB)Bnt5HxhRhD5HE|zb0bp~2*!1iYTvySo9bLdoW#1`KL&cdd$1K8RI~<|n zEz01I2C);3(2gEyo3?`vyzp?ttpHHz)LPW?c_wRyjJ>}=nXCdEfbt(~kxD@pNIz5S zuzbUD$3gbvfAYEkt#9eqO#qfpVQE1!_XhV7o51U=OOFE zZFNh3jL?ttoK_?qET>dBBqKOs!_#tErMARLNd6#c;f~guCI;nRk*8x&MK&w_tkRV( z0GqN|@1xO`m+^(dygDs)lY9wVx;}$SjRwiLilN>8rUl7Ybr~02MI8fk&}!G~B4n$K zl*M;+U(mTEoNle68q8JwP!h@Oj0n)c*T(O|WiDA7Y0+GWAoJZD^lg-^h3_X$tuR5( zYLLW;A#nzyQR@nVPiw%iVpSlvZE00-*{ii;Czm!YB5>Y^sZ=(pC&rRB@I5rNBxi1}Zu)pMoVri%BFI z{ZZ?Uw=!6BGNKgdk7H(``ymy~N7>`pwGeKDR-19;_NlpZ-$lL{i>;~$IMD_-PW=I< zY&y2Maf+}qWisjzZu37{L$yRs-=Lu-asuzgDOwdJqYkO=3jC>cdAoDBWMiQx+J{Q=6BxQNN}hsh8=qDC!` zbJq75yO^1fa~2WklsT(0(&i>3>8OWYiJxwup(TDo$#pb^h(`m~k{a3cmhHlUgJ_0u zlvrM!8aPR$%^>&Dk|&ttF~57DFkDt6F1w!~Z53u)R`p7#j%sLeRko_)?B!aT@{44= zs5SHyeR2+ij6|!%Ep)9io?vd({mb;RswkU#*dnSlD|(^|6J4M^rURHUd)wC~NMBm` zd_CuMIX0=#18s~mcYow2UTXJ)D5k#YhzNr!F^WCkwct~1AKmb52F3a%64rUt&5yBH z8>4P!8>7eAIdWt(SKrne2MSp~+yDzLs^LMr+#ww2KjHOOWc_Bgh$^zCC-r1~X)#8x z3}sB(@RlUvj}|^wPa$21m})7|HaHQx=`f(OB&Z}fgj+lboDp=t(J%~rR0LpY8}+6k zLL5J#eu=@Xeu*U_HqXj~74B#;D?j(>AnA1OnHRv_ox-Fd4AtgA+}$Y*=hcH|#*A(a z?oN81xjX-z{$d%d?5|_M-RV$4IMk2a7tIGtOUdGDJD2A*wJy)%eA94y?jXlVabo1D z(J4GLegxL8{PKA!9rLrZv%Q6-9(xWB)qa!wc)?HT%wJFJ(m_OI&%K}L=EFCZkFfW% zxb@1u&1aS0%1lY+2NDK5^G$5p6Dr{`ehkf8;R$^d$JzX2Uvzk8{&DCBe=Yt`=?$*~ z`Yd=tA>Aq`mW(?-6JMK}5ANJ5QsaKOC*woh4_Ah%@Wq{7M1!7BDL{jLZRfCWD2|}d3LF`4KD)@xlFicU}GmfKCI0_s$VujP6b*6HJ-AP9nzoahp zGRB={|6bj*t%v`i=lr;)V~#zV73X*M3cYq{Az6&YivkEoX7cPn!QNjF2(B7DUAln3 z8{3AlfKve_4GP#59gFY1E$ciS1t`(O(<7r~0rlY(k9Coq=44f>{Rspg6?@-y2=(Pj z3R0Zb`qDxatR)1*)c`e9ISgk-@$1>*jI%P5e03ktFo)Xo%j=8rwvg4yj2UX^Gu&{j zQRoln9;l-B#Rljr?DKGeeKvD4yo=^)J{jIq_@vIU-A;zzz+4la3?IPIqjfR}b|F_8 zL7WL|e_~Q^jlXMnIqhbqs5t09Pk74Ed1Vt*L1B^#>KABWD=T(m{q4^&VCfX1%5;Mf z`!6w6!S9w<^|$K}{$3LZlrZH=bYEC6cO>YF?AZNWCK7uyw$9JwfgPj3U_YfUnyAwV zUuBv)eWV|w2B9-#bv)~#OQ-%7IR0~azxTJ*!?H5Qq1o5C_1SdDt%}o4{8Iv9>#I!k zqoTiL%07XH=BJYY0<41wsY(+>#lT0KBw+xvVL!5xBuL=9ExCp^o>Z?9lZE;Qaq1M+ zEnQ95l%4VUv^21j-e+*5oAP}bp9BKFtcgkp_KXnhCSotaToa1eT^OpcV9P?<^*mVK zvQ)kW&z%YSzmP2%FnVn7t1tc8dUVxk$249QVBNWpR&gF?;auo@BP$-D$uWox)pR2- zPWx$p;H7C|g(0i@Y34$1U?cKwWnjx$fEIEb-;N231W0ag6Z)LcsOxu6gSfp-T#Ty+ z&1CKmgS{;zVBLqXq;W)lF?$>P>lm=N4TO1s_hM;hZkuT|xAEzwVQo84HG$;IWFmHQ zW7`Wk-3Xl4lc;`0;KsHG^WhsyN6FZhL$o5>;LHLR#raeEU5e4y<~!K5rA-23{2H2d zYL>Rji6zU9SMjx}S=!F2ATw@gdk4P54Q(Ze3On2O0t$39n}7=>);b4#8#CLD@c68+ zEKwY^G`AgGSeq{z+4i#LNhQ z`_VSGvP_bbl_xWmW&h^JG-)Zzeiowq2+W+30e1auz^=2Ej6;pAWCChO>e6(|t26rQ zf?FO2zLkdV9P`CyI_vmc>=$cQOQ3C7`L!q$S995Ah~sJvaXX63BA2Tg9gi=hkCm@M zZRBN-4~1ec#E9h5D~Q-a{CXo8Q7}rqI9IMWLLsRh)O@{(30UlUlh9x6dc*!Y2Cg@cXIj~T1B+x>N4=GO zJRQ2-HODevbIQ|B_0aPCGfTn#WOsIKAjx|5y4#nR@NX)mf87&U&#>N3vF1GS zJ6c{zW^a&_-I!&B@4Q|FEd09~uyB42#KbvN`&{zii#gE>g3|e8W_&9A=;PDyAFXGk ze$V98HE&tp8Eeq_+1C1r0R z%x8MGmXIxfhosE@ArbM09C}rEJYypE>oL?MbaZU-MC{kGL3$$g8BE8?iM3)2Rc~N3 z#h>N2-ZlBQ-Z8ChxfAkS#r`)n6#zBycnQ%@Ob*dMm>i<@r<0_vQU<(~2;&V}H8VEI zna1n*acVY!iw&}v+Xns?-{ZD{TG1$M1Q*uGR^3)0wgvHbkamcR6_nN2C=y3xTx#yz zTW&$qaX6B5J+>^`c=9wUv#33jtSkkKy+yP~+J?l%{J3BgN?umVr=|&&i~G0udW2-x z?E;sWKAjQ1mRtR=G+SmPIJ>-9<+J~%@Y&*l@+2GNt2JM(!9t1``r|~%#P{Z#snT(( z?LOQ#a2pLR2Dzlv^=4Mr zR<04rLC;$c78lY5&?GoY%~iMjF7_XVI!(EKlxlpF=%{iDo?BR0WLksWaXaNCzF)=PPA!b)^6Ca`d`r(IM-9vL%ENy6uzzVY&X;9 zm)Z9888l+752gMFhE9p=X@6y|r_iMw{Kwy`K%fX&Kwpyz70*jjq4bdV5Ko`SZ@B?QU=StHv@EZ0Fz7Zkg(AQtRl>J5f=U=LciR{ux? z-E@}_Az24{Gk4;@&n@31`YPdG4$w@9@TsiaAy+Zcr_ifB zZ^af`ZX+Muv0}#~D~;-d=QnB1s`+>l0r~Y8nJm47!77pspSPZ@Lb0Ch-I}sC@9FaT zQoNh85Lvtw`Ng<-N3+_nl6~E$o13Ev=jNnn8cnt?MM(X50o-HNHo9@L_+);Z(+ZT~ zUnvZ)#}?6`leyE1-=tGOWz*vGdcy9)rc~GBPqAFirk>>vgAlzs95l5ap=TI+vs-Ye zyL}Htku;Ykj2TmBvwo{0B;c zzzx}Ve6$3&QO~edf4@tfet;a}!D5wyni+01&UsA!zUk~n`ZP{T@*bR$zpoJOqYIGO z+`)V;&DQ2%?iW6*^Gdga`Ei)bM0JLP`SBQf^bck#$RXgK9n9+OQ#_gO!A#%00=wlL zj}EOk3;f9Uoq!5eg~PayMvJ33MGL_srE*I;O4P%K*qC$tWeu=bIGz}%6UWz!I+~To z*9bR6Gqh+BPahCYyy`*C@iosUK(hFn7tmiUzJ~pEY{u8XvG`!iMg?8sYuL2Yh_8vN zeY)AQVZ1?6gNP*KZUp?Tnxbmh2t9y={Uifx)Jh=ZcX_$A+8P`T7S>e9>S18ErSA22 zILgQ0z<-FucsjyQ=fi*CVKNK^B21aKkww!E$=#!sBTW`5WFrL`4?*5_w#r?2f8AJ4}UKb|;$F-DzVJ8J&A`RnD# zeAShGBl4%+`$qhrBTzCz;UOUZ!g0fO%8?xn`-8x@$V1mP`l8?)wlZlMR-#Z)@3Gn|=!34lv zSzhcdBYK2+K>2(NOZQ1z%C7dyQtpy=0i^m}^3km}kR3j%;br^;nl@8NE;DUjs|s;_ zVJ-S?M!jG*R)yGusZ2+*;ePoP3{~!z?W#hMsICrAyTr78)y2svlrn(`DeRJY{U&Kc zvQ81t@>pvOAX64rV4Y!_S~mE{54^rJfQc9>UcT$6Bjl(hcEA$5y7ai{9=CMAkz~{h zaLL*_PeThvq49GwLvV#Xb&|-WXDQlgFVFVAm1IOF8S`)l^+kvSM7T0OuMx1E>GjYh zO|Rv=r~M|0;gzkSMhYtrWO_&tr5^S`KdW~xU4Y~cN|8^YY`!Y6=}k0SCO6Kh7@`QS zUn+dJURX3ov;I8Wnm&U{I|ga-HVjpyMau#f1#!UwohtWB@Xt!ejX4{V_dZ937UEFE z1Pn(I(V^1B8WZ zanz%duA4eT)V+ZLt#zowOB(2fu*QR-UdUc;42Jp~ZhpO)8f)U?^&9jw9`^!5lP z*p~Ni%RYn2aa=vHfZ){KJ=j)QyC?j(y0Cv?F<3#Tr{(qg<`GM=tvn~%YcSHm!bQ5g zE}%}p9+|2DYGHp%?0>B__7#Ej*9^3nOczM>vnG%<1N!C(xLqJ~->7pVTDP7WSR0!rTXgm8HY49^XM0vMNEfO@d6(U*L9x@dy0&?TRIu z8}G6Kz@sM3ifF|1k~Ay6qf4_tCuufCHmdg6Fn*fbJVTjgzenS(tgi@phn_y=9V#@t z6V#${k;WDIv0h=gt>TS7&6e?o9)iQ5r+ju$_^eLpDyuY~>ephf3GV>cVd$n$_1d_j zY}4hV{WNfofICzFe`NDyrNCB9EzB}Cnp#Vg-qjYRcTW+ecTA4b;MhRv8OLe7Y(P)_ z4Xstw0M~$srbtY34ah=TPw0D&M=g;0mgRW~`uAC|c{sx)VXbcJze^O$eTZMK5c29d zRMLRVv-04cLoH_Iu?Tc~Yw4Lx*sD_s?)gGXun%&RcQ?-YQphxnYtS5Tu_{$63QexRrrBa-D>R`HA2%&F=QrQ%wAv!2YmFfBR$ ze-jJmOgli99*Vn%p@Z(fsoO^bGo*7MK0A&_=mwXxb^N~@Q<@G$f&gbPqSh(1SBFra zzi*AS5}W-U4K1?SrLfMmh?1*PO-O6e*`h(gini*NHZHWKEP0-+0B*FF>P!K#)LX zXw3z61S52d`WK|UUeC9>>EId(wecFwS`l1x>$FMY2u0Vt)(912bj?p-s7VIv1jnOm zew+=`qibMcX%mU2P)p7*nTJygE!ymCIQTa+g(SF#CkO4DCkJi)=_2t_3b3gpXgSmP zKVUsm3$VGwBuRPMnUCRvJi?})w?&A}MRnpqkFgP~3N>Snqvi<2*nEahEd+Ac7@I#U zjHhUswlOw;ns2LXj7`4k${3scY4;eLW9U=?-XGxrVk+kN%FOZv<#Lh2!vL_GMv#USSCk>=3Xvh0_u3lyOP>t$ui4Dg$^bmYW%nv=I5@U!SwbITg}Fae$sc zZ%)Yt^zRkK*pgpP$1)Utne6mdf?_InP2!9Pyz*m-A{Yedk3dw6m|7T8Hi^|ox5nzu zDPr|1%r)U1t$&PQwLUPWh@txXRx2O7LRKU$xf{^2gJI}Ifj3GL$F-xt4F;ZtxZo&p zoqj;c_4VH+qUE~KI~(|`qzjp6<$*D`wV0JV7wM+fwAN3ciypXY#9p0BV9Ws{F{=Wm zbhX@1LyK3-mVq%(qZ6&ld^V-fm}hKmenW7~^_!bnIUQb60KFDxu+b16^SZ*|dPRx| zmxsp`zX(mFCOoG2W<9ZYVOTROgxba2IWugItapS8P`U6mpD4gZ<90JCbcd!J|oS(&< zoWb0oJ49|DvS(7)iNaB6S$2}dBPX&3ROGuYgMF$2xFljYgAtu}Vz7G2LbLJ^8DVo3 zx}JFu50Md0yy`*CAu^Z#3;@Xr&s;`-u@D*d*D(+xb1k_vBgBg?C5!E%Vy+gp$;zl0 zKGie=VRi`jtytayQj)H%Y_@c&vI`Naq5URhg$opzu2LPEDh=|fHpWwrY00|e&EB}U zkSwjSHcB~YE22P7WUygdpV4C;9<>lx#4dbiH(82( zkmNFcGOe1SQO-1;#g9{qeK@ngJUratmG}k^chLAlL^zzTFp?hBAeIckS+sgsBiaNt z%nCO*@(eR6(_5wr21s0tkK9CsZi3F4>t;)JlSSNx=E z#MHl?N1cfQ$_>6+e$Eb^frTuLG*0?ZV?DIYh@-e4_`a7!junl_eSTy;g#U2@@bTiM zZ=s<@&9dG@s6|6uu@LttkS$Msz4a!l*S(qqE73d^(x^;$ua#mSY`qJT2i#-#ehgyf zCEa*VKdT3ZZXU|}bYSsSd2j!jMspK5UQs019~b7;3ALNj`Wd!#eFjzP8I;z)z|ihW zE6EYXMW6NQp#2d%x%KXsX@fIQB_DhaTFstage>^Jf88vu&X%B`+5pJ7{Q8bhNYpq3TV->lIU>9C^r4q2JzuQr5UC z^=Yfj(mdZ#m zj-{1xhSNXwpV@`AbNcUFFwM9LsxEjQ?5Mtv+Av}0hKLhOos<=rGVhEVXLe%Bmh?~L zG-dklV4O)>aHl!i2edt2p!A|Hs~!z*%xtbx$&rnMuziL$*mUA-p8ObcRXi z?aN3Y8)OgB3=l}-biI1@rr%3!s*9W9huGcMn*0T;Ns}?N+2rS;E*HN#Z1T%cbj>zd z+h-dc@~D}n>$D`rxfirY&*&##Nw?aZ40SWRnE!|=xLZxZX8x5%_}|Kr@NXTT@b~6S zcsbCV$sLA?O+^S-1nEDoNPqHZ32hp_kmEGmKmIg)CFf~~8g!Z|fu2&v(w2aHj3tTP zK@3*{t=&qq>$SZW6m=CBJ>V|RS|unWp<1icK-!|TK3K&u26q6;Mht*0LbAsNtm2K{0{EBkd60IiQ^$jabAI*_&C23ZFO@&H&* z3Na#di>}Fx#8$V6jx)Uiiyi*0M56?1$FHL@rIWrOtZFsLA5$G1n7V9mK;2C56Coqu zRCNiciA-wGjiX@dIS9o6P}I3H98zXT^>P$-`49?iB+(O)>cy!GjX;!&`u)dIuWg8O z5)X5OD7R_sC*a8$)Gy%4kj*4Cd3-293}m>EZerOLc9Yf|)Z>(}WZ{Z{ZiK_i5iC&X z%@3End7qY%@;)5N?a3diiN0NQK&mg(d(`0s<@gKe@d)xdC^auSDvVCM+9?OEa=ln9 z)qqp9y^asuvE6N8zYmKx+CDcA?bLBuP)NI>es7RkHPhunbcYbu?}6Q2s9?nWTh8yaV*%6(%{?{tQ;CFb|$>V1Iu&t z9d0n^2@hEcMXZb#ZhYNwvE|QK!pq+~UBdLi=EGSUu528>63Qdo7 z6Kk%&LKHgYw&*WXX@NqUw?%*1s@D{gY%AVBWL-CF(6ydp#rt&>&A#F#b1{NKTen3E zX``bJA!!X1+NLb@(+CP}e`5kAuOuw+DCJj-=4kDnQl|gzWI}_5(%|r7$~TKC7gnwo z_?=G8_mE4e4ujWjmrA%osZ{kUrMg#4kHfz&fy+sj#nOsYV#=k}o7kth;P7X?!c-OU z0y(0?A4)}S9i9@0Z;%v_H^np6dTY2{P+V4+r7G!oC?}(wy+4}wQL>1b(fepw#pCBd z^FHi0A-l${g7*7(pCc7qFT{jy)V=`S6=LEe;JHx`aI;`7!0nQO*Tj{d9o!NTbQ-w+ zGc^LS8&$fNE}EDS*X1lG8Q}Vv)KfJgE&&y_#U&+Ne?ka+V?`PTzwZn`kVrQ^oKCnH z@R`aA(a+x0zT2i;V!FQlb^G>2|tgzT%6%>6JCy@Ik^cmKH@>KSuKQt zj+#gsGB3=y{8_${3%q;;klI|qz=Qx68}(ML+3g_K61m8ltya+RYTXtt_^TFMkj}Ia z;K2kkYXV4ooJj!V2TrvL2v9C=lBq?71OzA-@zI5nA;2#YAsGbtW%|V+K=$h>fB<={ zm;rswVk?adp_YFe zR<*j4J1l4fvf`erVCss+!SaF*6EdQ#KUBE!l`e`oqc4993c0juBvkmr)P+W%LNz1( z|D?&Wp~An$!`z@k70oCZk6({=9>`@xGm5toGUU;W{Gl1mD7y^R`)%rdO4#tH0UP4R z1Zj`~CNsvEwsQ60HsHc+Z@4ru=)xmrpA3~_x|vs^S=T+*w3}A@q><(#On05C;L^B7 z^h#@>X*FO=VwM!5Rn+BTG>7@V6h*U}Z<=Lom9Onnm?a@f}e#u(W%vNkz2Fdu6sDTQLDEAE;fqwQoUTQ7h4^6 z$F&iPS!AdhE;5_#;8L>TAiQq`D>@Ii#;*{@1}q*gd)_b*jE%KQ_JV5Y)1uST?3)a# zBLHzjr>Hw?=#56Ff&1IA;~mtiLA~ges;y4B)Gk#@txmmI9l^Cf6aqPX__+6^yF5F) zQn-B?gYEVJCQb%Z2c`z)MsyjZ^Xf!@UWu6p-in0o@+AJl~;m^Z1lv*-()VO80SXO96ATJVfV|c9~2& z22DK-Eb5z!-4l$_%8ilZLkegW9kMElpGJ~c0lHJ`OkRE}o|0M{?#|-0Bcr+O=0^Ob z6~1dt9o!i`lUn_Wonvzzb`F1Og++pFT#ciS)4D>V-YM;UqQ%51x9eRo+tpPF_`+lgJ4 z&r(qva!9$$ask7rCjpR$VfH3!%{&#M-i1an^VK-FJN_#5s7Uz5cE{IIC}O*V9_vd7 z(<4gS?)U+f7C45v-SO{My{3Z7hGYCI>$+KkZmArO&@r#d!4cv?_ttiYa0Ccb2uW*f zci5DT+U~HwF}FJ&9$FY-*QB}QegS73RGavnlJhe`4}H2FL`|~+Ac#Q7CJjY;Lahq6 zw{ce7tG24mpxbUWN_D@COHgq439i6}I}op5h-F0}@>dh)ojw&C03@wRwTe^>pJJcp zvH@^$YHE(Cmy4*VtzJ@Y00`7xC=qsD-C8yQ9!G2zvR3Nqq}@^;QGL9MG+Xy1i=d`| zlxQk%wTj1cx8@buZQ7dw_WO9&O|=;yMCL?@%+H{^Ol121mt9Wd?yeAu>ru$HD%6C6 zcr0h3$N=}hB=uyB2*-=4s4W~R;r^3CG+(UFqagpE3O|xde(`Yvj2{A!^n89{90NRk1Z9W{E3U3E;h1ZPV-z)O! zZ#lbUMhtM=T0oI;imEC1$0y{Y(T2I< z#ot;RUhJW{;U(1oOv6?|^EBx@Hs6W;(7~OIW$3u(DQt6~yFBkNQOqpxXiq;SxGJia zraSAMB(Ji{XStK)a5${2cans?j=Ym3e4G7Fk_XWaVV>_21mSDBs5?lCGC9iDqs6_s~BXgYk-jRE$D36>s2De(EIAmV*o3(B|=$31h zrq?Rf>g|!Op6ANgaj!6k9sk1Y;LruL!NFh_ki#l|Q4SL#I9m@sc8&9{=xNWPvL<%^ z1%*Y34PUKemMHl3nulZyzVEl_uGnh3)~b}706EK8Kh~?GSMYq7@Uif$3$ZLbd*Vmh zg*>o~i-Yk5%nWYFhNxG-Neg7_QR-qs6hRgMZ)s@}k|GuXQ|!y>!W`{XqNqO;__y(j z=Dgczrxb$Mqo$@N!V^J8>%1ul4opqhCD{YqblmA7HGIH(HbFh2>alGKX%hnQEOuWb ze>JUS?yB6ztcl0JgF}opm!9Nub!RknBINOy*M#zTf)`{+KbgS%LnkLljRyFLY64?W}HF47$M`3$s1Hw{-X}_WqE!IDh!A{*71~_2Wg+ z8ZGrvgl7tNr_<6zWhRFQ9~{QgCc!=7r$(`0#B@JWP4`yLsD{$rm1(BQR>jWrd8lek zrCYLQnzb|jOivKlzy}+lZjEU+Lf~zRXV;iix1}*_M%Rhgg6_phbO}s0~t6h_r^-T)qv3A~u)l zv93E!*Xaz2y<3Bg3YdRB)xclHb^XwyBR*<;ZzE`x|ou`a&|^Sy>LvWG<&XwYNE^(3pTU z8`Q#_(QX?JRlxquHo{QqCBK3EAJulb;T8Q>x!4ZMe%o&$dN1t;^-Kbf&}@m@m;&}` z;%!V{VYe|Ytt#YL*&O!fdb8eQA($U5A3&DTf$Zh3Av{Ga@X*B|QX6f= zV40Z)%dp>y4L+Zm4KywE8AfANX6BWo$A%U%E@cWf>|I#dz*W(Py&I;9_8X=*+)~(Z z%Z8h+cN?CCx3r`bb0fc-#E)sr6a8m{n5+%qY;8DygE&lN>c5AeVW|SC)hNC9E$Tbh zdzxQa_i$yBM*!+ecM!O^KKT_Lp3C4PRa&zz zTpqf)MUs`d=9jMd=0$x2LRKv|AjX)nJDfB2^c-jG;P^B4f(LQN=$t#-9o@mkGhvs>|euUacXrKP^7>yylUn-ZsYk$Bhe zlH*51pNf0B+9_%k!J)KrPZ@G^J^NG!hrVLt2HK3uH zBmLO$Z{^E=!pX@xB}OoZ-=m^7=8!T<^lDPqqu@YJ*L7XLmf9VcbvXPAL38M#uRss(H_Q;@b%QCpBwMwEu`1i2Tcdl%=K=nIkl zBdKjFs{6^|Q?N`dvDvSgh9Cr6O*hY}L|7d!Cg*P)%Tn?=lHYye^Cx9%_9j!E4KE@1C&U9f3I^9odVng#0@)qOW4ol4`iZ<&uWp6{d<~Rzd)00_6~V~ z<}_1w7v?G+xG;3)-_f4ockvH#nuzuM`LOuv^Ky^%Y-4Nck_FnnWZM@aXkKN5h@d@> zuQUQbPm7#;>5s*{Rhsry;Rx3p462CLeG zE{rvEX$p<)UX9UrGH&(sNM&h8uu9zp z{&}95sC9^7okX8?!<03GwPKae62V#&Wy#MxZsyFH-7}}p#KlI=Tr~68<(bLr$!*%% z4|^RM!5Y5J9>IFFSXYekk%BsWAsH3Udfyc?sW&Cxpk69+G7s+)Ns89@{E? zEXu(#JuU4OPqYyx{$<;WhkCOJQ)OQa3;n^=jQK<9vCsRczH8opKEk$W4kJI#+XxS6?&| zK|dEDz*0n4B9NFuE3rL|98$9@xT^^{V1|6-n{gkuyZJX=mJ$1qC`tjwi`WBaLB^e+ z>n+bNAuf}j#a;{!Kpqx(Fb>YRdk1^+LPays=jiGi77j;GhZGwfOf3ltHx)srpD$qKFy4Ufw4Ato^9t)k}3oz$G{zZt#ne*piC zM6U|x_?J+Di$E4u$^2@8Fuo*gThQ*BZLXU7pG7xTw+q5~M99Pa&(X7uAR^nUrrvVz zLDo1SCIb`kaSfoCp#7&Jo*6*?#0`kQMzAGjOR8u6ks{>#!ofr>7>yP6cJK?Mg9ssf z4;8gh$b3Tx2hz3{Cc`uCP;)9^h?`RwOD%*jwAIo)(s2x7M=iriR~#ng>Q`n>tlZQC zMaD0tCL^u2M4aItpio4dAw4#H$&*%(4@a+=X!|>J(=tqU1A0Y8i2NP3!grWA;uEdj zzqi^qwMaI!_B(8dW(_)1Indf4plEiqmKG1%fsM!;W`#bbFuHIGjD)>5WucLbNQ#K} zBasyLHzw46BW(<=2lJw<>r%I3^;6zpvZrHm(}3GzGENYaA&gs4_mFYWE7hwdzgqRm z%}TR`B>WywZn#N4`A6}77>StB)%PdxAAKrzYd_6CO^j)Lg9170 z#0Y_-h#EC_#+8NkblB=I;{AyFv%fLbU;hY81V(Tqn^Yoohm*w&2Fai-A0p;XD9c*0 zSSl8STBSm|vWr8l)nWs2F0G1>8D!12^L^}5N-=#i>0pR zRRHgr_h*;ci=Mc(&6N7@u6@LabeZb_Xrob2PxFTH=g~9r>FFN&C+slP&ZTP~vu3eA zYO$(`%26B;QAe)$HsUX>@TaW8@y3b-UBm&|En-N=G3sj-+uxYIno#p3JGPlmoL0qG za_ZYljv`jjhUccxX3jK{I>+|(S^I8Ilrhdj+Wm=F@~~HVzFAPx9D7wn+1gr|9(`N^rpnpAQ>XM z9{Q`M&l^8FMMYsqc2ZH>kfe<0I+eN8m-qaon*rDEDO@tY0(Xw=ovD5wroNMb_xOHV zFF=9u6Y4XKgQu*qnJ#(=Hc*AUX(K$WNu>qYfKRk~_geLuG|T3L*HM>?Q5;~y9_}Etj@Px+_OSzK@P+8rNB*mUm-#LMpvBvI2ICwI(hMs#fW^GBP|M zfRn3c|)Npxy9bZqVE(uLK*pGgg&vG znnkl*S7=X^l)M3i*O3KVV`R7<=rv(gt24RBgZZ;Pc*|3l@&AN#Bh&qzgqW5v?*2GN z6{a{R&3Gwt2AC>0Vx;6#sB6<(xHlY86rAsji~1cDb!pGYaG`gwLS~nbxsdnRjML!{ z(P6w+llggfe_e4ppBcZu@%lv#awJGbF-!mL)N2+Gr)ugS#>3o#WKJ-IMg+!u4=sqm z7)>%{Fbqo%Da4=cDv7JkWoKaqUP=9i%a$ep<~*6?3y>tMm9IZ($#?*(%K5@om-AH) zrZm;JYSMoox*?UYDZ#p(Q+^WP3O&MN3X=Vc=&P`v%^Dz;cC#D!%~G{q^IJunv@cal z?Vwq!ciU{=etkFWw*8t*{Y4W`IGJ0isO@CNZ`c{v`<#P4wn^+0g-7+Tx}2ctVc;zS zqyTOZ2|dT^sY2>ekntA#WoMyK1k_BAb%PM&n#SydRjIUaP0f9c{qrrBK6GV8io zgFaUd*Ysi(&F-3#u1MMk+eibPyoR!rg`_q1xopZp)JK3``x|r3aoRrUi)dCsWifA+ zrg)lj3Je0KfltMNDbj(u&1Aa2@#V?hsaT0V6op(SQuBF9)>8Vs$FWc4DZTi!MIm%4 z*fsoH(d${LN*9HAhEtkVD2HcIQCm5rgfbsRv&_?L2wQ>thZNsT`|IJQR9r)t{DCBf zqa~-qd#grD(*pI>s4|*Q@p6j@CLEP`?ZWG<;_)=3=@u}V-6pzuqBVFmOZLagiLfKe zQlT$`t0_F_m(X`%sYmT3S!Pu-v_&jDpT@2u~5!D zp8L75X_ zM106M(k0DDB&p4>VSrL3{i5Fv+5v7>tX3;-Pf)2g# zcLwyr9+_v4WM^RpuAqLWgkH`Kp%)P%$aemhqL7y~pDOu%tLTJO!KTgEms83`I)cE9 z5>gQC&7!Zub|SQ;64X0>$E!5iEqwKQt%G}cD?T|{=lls^iRV*!5HA>+f+Idc=?W1ugRv_T+_csT`tw?a83Ui zMYFr6q$!esmwRb|9C#rba(7hEm~T@y3V5--uJOja{*p1OieGPS%q@gLq%=nkP>)dccn75 zSxAexoJZ(MSR?^zIl=f?TRmQGjW;94a;;U|J+lI1vD53$li*gYc^y$#=^%*Tq*BafF^}OBfLWrbQEKeZ=_AhM!>l!u45xhmQOaBDwwT-v@8`vo~yk&Oc>8kzIyi_z%JNX#!pzu22`z7CSF766})ros!_EIHz23b?i+bDzw^dwqZPjcBj>D;+AP_DYgi4F+xQ4%M0mnSh2f2OWU7x>JfP( z==v`~QzU~cw3l&+WH7&LsUY)EbZ{fyeBqKCt}5Ut<1D)<&8JKA*bIo0VYHE#v7HB= z^O~$JsVO`#_7wI5D$28eSfoYf#%`(Xdw!+Wss^~KyHjo<9=C{duC+#^-Cch$>&`KT zCDyAeRMd9l9~?02ms5{|^tb@CUW!5yU=}^rt*yBbNCLCoLZu_YtlzZiHNDSlYk)Vi zuA4RJTEwvico&LhUjvX5P6D$8o0A_NlGcbKvMCz{X4&853TA!IIRyp*(?k)80TUKL z-OdbVy%>dD-Usoj0JBKeQZ6kHvQKjXv;GNH>7o$NaLQ~61u7;t8&B zwq4rbw7Aw3K~+(u6CkcL;>v03_)Tv%36c@*+HMt(rzcIlK)dWVooJW+alF@;3hfdc zPDyAspzp#VsB}HA8Z?kIzf!K^Xji+_45|n%Y8Sm$IVjcBF0KEYajKgLg8zw~a_0XG zXxC4tp0^P>Xi`yI4pO3BCxzic*YW%EqVTRW!;iu+An|n);&p>HD$~%Z9N@CL2+Zqg zR0X$oTf}FYwA^AfV9s@_?6dw(X>mNn~mjMm^$&Hc5r+fHci zn<(m1RSLBt@fXnC*I1$Pp}8Nr`|E<{{(b!Z#;Zd$$Ps8RavD`l{r90ixj}QMMar}Q z=+69&5TJ|TVF}ZnGQ#*~h?L|-ShEj^Sx5ucZNAeVEDr8uLPTc*P8ms$>go3eJOX{y z)k)U$%okeav!rLbNDuUdgcd5Ct`}v5wzfI=BQ-Md#@b~ZW|Vs z7YZI_tX(XKv^DHE5Hl?Dup;Cc)P~jx3*nNkr3$5buN#^2xSZO``RCYe|5_@_fj?uw ztA%m{H}!TJ?NY7QtoqoJtW`_pdb8E8BZ{EbIReKA+hYt%tnK$xQF~4E-~fMzQjdbH zgaH1AC=>zw(PLdVnCqb=;O`|=IuiJMsa3D(erH<--Nm|Y)}TA^j%CoRP&E58h?IL0 z@F&=uaIlcH2JmN7HVXK&zsVK&dzW(x3<9PB{=|Scivec_{uUBuk$6=AA0%rj*H*W% zPjdnO{vEQFKYbFsnkYoC zFoNhkORnIlND{19x5j0fv7HhnH0zAO_AaJ+xIx=Q?P?Npsnvu@x@;Ehv8c<%FAj@# zEsEx2(YEUZ)-DZ~9vlJSlCGn;o_rGxI*n^xsLe7)DCD!=s1@6dZnNnJK@|sgoApks z;Ui~Lz0+-A^Ej=1UYI~{&GrzRXOho&#YD9VTu*w!$<(4k0@ssE!stTDxZX>MkPO#b zrC$u!W50TvkjuW`XaC;D{+(t2&ar>z*}nt&mpbziAWY0d+}VH0v7`bx7}LK;gR^*M z{@8nWR<|G*&|(iablrM*vj0I8T>WWU886`KuAVn5*D!D@xXlOx_exZ5|lk z1riU4sGlKyyZ023k2+x2{YB<@VmCHLl$K~%?0dB^dkbb#_t$MLv<*|#-;RHbs~;4k zLNod!n$ey8H-=TM9y|gtVdS_YaJYvMXsVNv!yG2QB~z>P(yW zs@f#2faLCFh0HD=vzyx+Gcgo@2u}#F)hz$9yT2|-?vL{7@9`loiwQ7Dy@}pRzU6E%j#{Go<>2AeEB+-g-CyVob!mV$0iCuq;Tkd!l;*E!c zuhJA6fligQ_uoT=v!fbckB7NIr)N4;r2tUR2Sr7MW31YfFzQ2NjfEchD2D~r_N#(5 z(txQ=75OMsl#IS0dt~SR@@KsH`CwMh|22LEN@B`R{?ffE<(G?C$p=$+gVYy_o(qo+ zZd%cAQtI`FU-gmJpVS8DB`Zwk$q`0~2NvObOj;#nE{pPBl3EP$=-r}k$+s##C(g+=+Ny9{}Zz8-q!@)#( zG|>t}fK@A0)LzKPBiUDOQQOw?2CnNyo|!`ZI6GgSQkx`|K5l|pqOj;Fg_}8>-m6lR zf}CFghrgUn68x@X3zM4TMUQp&+Qbo(;PAIo=}0*I9;;s4ZNHe-M8__y9A4eJuyTPv zi(7CG8y-A$UBGB>V_i3E&?nph9=sn#vx5g@s*~Vw!T+>=4@qml;WlNX;BfmJ6ArHs zlsOI~p{cRTDsBEn=kyuGPXnb3Vi6cgLl&m9T1EcY^lesk)4A8J99G&aTkS z7;=(WF~~DJ$Pgjxky$gHD~tb=dLlGg|2`Y#h^*6NUDokIeah1zdjJ2RLw3 zu2ib6Cf%1>=^}c$T4_~lL5FraQYn{zV6qf%d`6UuyH;^a(u-5nDh~y)Pu;bOTapg4 zPjlHDJdk>h)cQ=gTOBHDyIU#u22Uscj8L2$NiyII=cnM**!PMN?@T>N%gc_w7e&bT z4lv>!s97*#wc0GUnw_p!tkOv2?>-D1B?0v~d> z$z4e7mr2wwx=`|d*|B$nkZiwfBmH9gW$f2cuwS-^L7;=#*>oFZ=eRe>P){B^VyA>K zFLlfab~oa`x5~~-9A7<9y5TI)+~xgd*x5QGtZMbZk=WT{tnv`yqb!=qUtYyT?4#U|Id`|H}8xnlhO#w!Um$dP>!#Vh^Y)N6ZRw^*0k;++e6@$YSmV`>iM;1yISV|YD^Pwd^~lKA z5TNbrP$(jXnI7ww!vtuOK->3F=}6G_y;i*@=VtR(-^IFa)?h5{H!lX=&cHw1zmA~b zx zl+2&gNMfNggV1TbYe5*w*h#~aOINScXqE!sua>a4Sw!4u)kmhoaR2k|C| z*jRYiuSS(FldO5yB*jU!ilyrd*r&Om9X~=<>8Pnxwop4iq@uRkNr`r_NNA>5GDSkm z5@{l#<+mE@ddl0(!5T~3)x--^&a{fhi#ScI*ut^f1lz}7m|}k%&ts`z8Nu6haA61f zE_l0L!M(JBkJC9w=GkcaxR{|>ZMK??I(F?nkIv?}M<#fCJE~0jRKPOCDmn9Z23Y3m z)blpN<5y5oo5xeaGAa`K23XLjNa!<0BB7_~)1(OK{nmI)BY0xCOTp^mNRV+!ZI8-} z$Y=USlaSl2s!c}7W(Nm_b2RQ*zLD;1 zKGH~S-i+}{&lBmeYGqtWTPY*8ZVP$GN?p&#_0e7AB&)PjUmkr^0<|?uLrk4X8si5} zwF(?Zdeq6(qCx`4kxQEBLdiJJy+lZcj#9xhFJ=Y-ED3Nki?64>F=g4G=kqml1b^N{wGm&ZurfKrjQ5(=j7iC5geT> zB!;tH7kNEkRZc5(|EC4PfhfFKn?@OLWvtFKp8h`*z0>6}>*@bTS>>~w{y$HYC5Fg$ z`akS-T4{6^^+QIYX{Q ztYJolOg)ck;^uaT^|`h@d4bj5T9zlzVM8)&FwmoTnC=%*H2d;|Y=;fgjf|COF4ibQ za%jB}lHY*rZ0bircJ?<8$S#@LY{<@CLb2T4&S^7HK9HK$sQ@{_xfDA64b&_+x7sMx+RbtoNps58b_p5Ci{(-oi+|kv z*6o%l8aRHAHO~DSs!aM+a4s=I&YYV8klXV1u{n4X6}34yB_Ma&ljeJa`J1nWTXpkr zY4O%Q1^Sn-sEh!+UD}7zhT+p`lra8eMJX%SHm!hWuFkT?X`07yw~DIfy)a<9M^S09 zTZK=wdMB-VP438s(meuoxtPX*(v?v(A2Ya-#y4vED6m!1ka-^)F#{SM_mnE`Tg9Iz{Q(~wdI$hA~}9P3^|Dk(b+0Dmjbxm|U6h_$Vu2Bi_U zyu+mt^rf*{%!!b>2TANf=S`y1!iM8opGv)mYX=*+E~#8>H)~jXd${SR)#!Ap9S`f5 zqx`J;!=1B`;;j0asKBLnEDuRPtA2XecKf@-Wy|PP*sGeg-F&C*+vGTx`&$= z5p&!2Y8~Ves+EeVW1l{ODqS{H<9uSIoH;)O@OjKVV@tq~Xv%E~NC|wN9>y8oNbB*d z#Bw|e`aCE6R3e>IMwz78#GTd%O>=j8Or;U%XMrl>mhS|k2bvU}Yc*zyK{g!pY}DoA zA%_jzgQ9D;fm*bpHQrI1Nc#tp(4%3C@=Y|TG_F~qHc!Sth3Gat9P4gj`#xxOtIbNO z*$4vcUie+yquOZH>C#klHuQFBM8at8NFci=x+DRaL^ob%QLO^ElWUn|YEdD9+sTDy zbfIM2?lvMM!|i727sKt?ucH9BW7m%lmwNtfX)j=MUq3FY$^)s>00rK?_;aZ2s`0RC zu1Ab#%8mPZOhLR`k_nW1Zdlb3xqdtx-+H2PuMfu*wWM>Raj!;EmmW|+70H$e5IoEZ zjgQ9N>+Y`$jr*PP`x~!o)F4ODIK?jgms788H11A3%ngkTuOF9O!(q5TMjQI|VXI3wVd5E@Xg2aSOC#g1}J?FUZs zr@++y85Ov+hqds~F|~gP+wT88{md0p6Eza1Mw5n#I9JP?vg+>}(Dl45vXhpb^Br$7 zWb)x2y8olFcP?0(**iVOuR0W*Fg-PaWvTfJK{a!|4$gJd8)I zS&DZ!FU1%&KYizKn-YtoQ&wq)&s{eR?=wVo`FZ0GZ4*m5%Y05QJT-k!+8H9iyE`@1S%7Id^gkV zT*`)PPOrYqa4gwwK+zm$=S;`wljiD}DaSlH+=}gB7^U-eNkvC|a56?G>`0}KOa{2b zy45Jrk4n4J=yvK=+@V_xDy?QWah-M!ngQ;>x$L@4$7!Z&+}(sN!UK?d=HcH;hF6?i zqEE82-2y5+NJVX+BqdaM4hQbIKav(Be56$<0UX?6eXh;^FIuC{hzh>aDjqKxt`+ie9^zg27o#iHM-Au%3eR>?u*fogvhB1^MAO zau*{dD5w{izIB3$GI<7(X;r^!4bZm#ED18)A*0d=d-E--hufR&`nQ@0{f*U>DFeEB zNzT6f0P1ovki))wA4N6$avV?dJihrihfAC*4haYmqD#^xl}8al`9`jU@)28V^G`8O zA-0Wjtyb+KKSrekv8@L!zg_oQ?ZE5S0^ID>Nh`KrPN2Fbw#5B8i|quGBYN=Fg2kaU zPx>Qeq0W2f*g{*NqPEbc-09vbce=U6^`E>&I|(YU%7GlxPu1CG>dq2%#fEkjg(5bz z>9MY@%q`VZH|$+l*}!4`4SP3CV^eoSM0Uy59r#Rc2E^=r-#`sBu$vPGf$g_lZyiqRG>VXpM_kiZQ zZZX9&6BPf>u&N`H7?O`{J#qN^!vST+;Xj3%8Xt#$z};UL4*!ku z`x~!W)F4N2c*QIIk5jL09R9cPFgF}NObp3bhJ*0O{tg)d#G&I-5Q=wYuOtG`5)IH3 z6MmOHh1P$EAT<``i75rnQSdv}=|J66e5oXN8%7W>xw_p@3w8mvABohDjG)4(ZWUb> zek)Fmws8dA@06-FTsul>cY+4e@6<}2pj0o>a&w(iKb|uN?F86yHWeMymCQM4vYvVr znvYpVp$H$79_!p>E*Qgub1{zN)l@ptalF>5*S0TN?&i6Yb=|B%=W~bS_+%8#?l_W? z(7@p+$FcuV8X!;e7?Rd-1#QY=sW6h}(f-Et@MFRv1;Jz9Dn+qCJ&eVF4FaYKniK=3 z^o`VQCevAhCND%GmuVzk6<#jMT1qeXO!jFqNE9NUf_mZKie86NRXTbp#VVA;FH=!l zIiy5FADpY|-)0RqBLMm?t9ZO{(zMDuwyZ)<0Mzbayt|PK02SOznEhMO4bHvWaHC}s zONuqxn@}j}Q^CE&3^{Xe28i>U7Lns;W`v9Xf{NN)oD$+xDHxvwUndIMT;pZ*|Hm4a zX{gd)M*kzKhnp<>GWregaw&jph~|Hx85h4eY}N$2k&n%ay^LN+10_6>bRESq<(udQ z{`5G*dOoPT)r;qhmUSuHMvWOXL@bGLR^ zr}$WqsPKBMLOu$pP-gv;>Eb@2JzJe%Cz(aZp-m?HdM?M++RcwSkFtgBE$osc*!9>w zg~xP)p}&9FJFtI<@RDF}A^fVa>#>jJN|UyBw#q^puE)k_GS3Nn z8iny>!oSp@`_HCYZA{~-c$gcep)(#wG!CPBfoRBK3Ou9#D!iiExsPUNSJ*qu?k&{O zxG+L9+^I^t=t9z$W<<&%F3%2I%LK)aPoMC)ik|c^i!%& zlYw;`q`VmpcJyziq8!|Rji^Q75EUOg-kmo7uUe_r{JK}EwMw}9xmoE3ZNE;}_QkiO z>2^s(kd`+F)nQr^q2HA}8`sbFyPKfW??vahhJP>pVj7A@hb{%Q%12H#=UJDgpF1D)8 zrq`;J+wE!tSqUqY>m3=8I>lDK*zyT#{*BE_Ev}w+Nv8vP_T~!*5s&~f7D`jKsOVqU zhem2M$A>VCF>lp0Jlr`ADT2DsB*t?XG7C0Q0ggNSr-yC#PotkmD(kArkthK~WSi!1 z2CX?$g*A#vb16B^)=FWK`Zv3seLP0O?d%ii7qheM*V^o?uvu%fvAcWo2M4#M%-R&c zlH#@GVPV-37SSnx>5l9P>-UE&6s6r0E!oXs@zsU(wPbBAVZEeZghAUZ--!i<_*2R2 zT-f8N0cToJsKNJVsaD>dle84(s~a&XJZ#TMP_G^v$?3z#P(19n>h|-U-FBWidp3$X z)q>%oh`sJ-q%JhFcN|F;r3d;?M%B4ldA80Hlgy3$n^C=7XNebb-*_wk+uSvlQwKeF z6N<*JwkFNxR>nm1?+{f>y_hu-{rj!*SrXCT8xAXLBKok`k%{QTx7icXKRC()Q~WkT z3l3{WC83|cis^Wsg5Dp@&EdR~xEykMzJq1+5_9nm4t#Hk{12J(8J|te;GbD!0ru#A zK;a24&U>>3W|eCBlM&X6TXl}C-T#=1@>KQ) zVOI;4Vxxvg*J`s{MkE35lB|_G-BzVtY~xa9T!Fs+F$CWoV_0IF@HZy^ZN*OTJ0_yrm4xjN!3Flh#^I!wWjQxA;%G7-A^LllY#E1<{vBEsCQIZ4K& zPKohECFMQkJ*Yyg9>r%GvUwW4josYNwpVi!>T($}$6n3DQ8fEr4Ve-xzCb&CwndJV zNGt-+g)q>@Nl0xY(!eG*to%r%f&GmcX~0h7B=Zs~PVuGE04?Vv=}w@v7>Pc_A_zfy zxHKHG)GK!Dl_oM{bZf;fE|6@sS{1KYuLd4c-F9%Y7aBo1365;^|G_xfglP0G(u{~5 zUXtUaT17VcZ?R94;}bIM@cvwCsw%xI6wu97)K)+#cX&5lKbQ}=&uOf4t9yqFGrjpc z_It}q16;Pce`#eQz=NeB`?Yua76hQ*vUkw#-?I0XX{zLwX(8`MJ*V(^c6>+C?DSn^ zIQxkd&W?}vvQMHE$1`b=TygL|D~5cwlXSY)*o*_KXeIW%>N8N&m^$Mw6xDRbMrtPM zyo#kUSVR&ZoKh5FEc>B|zByyrhfcESLXbsH>9E-VH48cQx-DFQS?{)euU0LUTCGm4 z7<6z2O{IkEUyG@8@6SezPVb^7r^N1=;~^D93qxA0e)Z$+3`+ zZ()AoJrkW%BezihGAzFO!rYM$0y{2Ivve6>g-ro09uJ5__b$z0A z^1p-wUNdl_XxIN|s&zeqldbo0H!B=UvS2BVwC2Q`pf-aA-%4Y#xTB0m5 zP`2Cu!d^#$F5%nkpvzIEr!ezVf<*CH%+s&Zuo%s30dz^iWhQ*S1TPSLvj$w|!R&%k zzE2zB#MBtgQ>iG&Xbgg{7V1H*?KMl?X4@-b^UZJ8{dyVRUfJ(f8*M*We~e}@#<0W^ zX_kuGOQe(-%|#5O88xu$0@u7C^%%(`7I4jTP$&Yfp~t$cR2(4rP#ucq3# z3vlvi2@S+~t<|i#_|}(W$teV0$wp?@pgUU*5a%~gR9ldxOd&ufEE>d#8njxb^@ZRN zo)b=of#=w>5rya2-y9J<=cCT~GN_&AM2R2-;W;!MuCA|y*-l!siJ1InqL9mv(pG{b z)k(Dq#HPnS%@whE09ESZ70;z3h|M>tsI89vw;?viyf;)BHe$1pUZui$lMtI9vw4jt zy+c8qfKF%%A{Am|sRuV=^TUX~IT4$GPt8%O5E~(hgxLHmYUYx7HC5U^3DJiH29~t_VyI)ts8H+*Shi$Eui6%>h$&o!ZehhTI@_xsB<5>~MioBq$? zVQ%aD6WID*&Y)P%{{mVN%Xw|CfGpZeS{Ninq;mlXx5Bd*RNVGUqJvUb#H&SR!g(P25oRe6b5-j1R}gV~5Jt9rUEE0#)( zHm#_d=uNBBtRzhIW#qQiL$oYR^ikBh>Gx@7>9sUkfk{g`3@o@S^pHhYJ>-jaUy@6jN2I=L{N3UQQgS6F;CSeJb$4DnKL7)&X; zafiq_N3vDD<%&@~P|C3tc6H4=NNUvmCe<3@qiy0DZqOYwW0UsW2)f#M_&XV`$2bzs-=F+x*zm>t9+LIpy!0c%DNvE_BwJuD14iJKj;YR z3(V`XAOHs~q9Si^x@;yuGJjevcm;`NKT9rnDPP5Of$jqk$#KIs*RkWQ)3lPHpj)Pl zakzD2X$DW)*h=TCSBUj?y#)>6exo(9Ca#`7X~o;A9^n~Mf3+s=v6?U!CfPj0x1lbV zN^y9G??=(>o*{{}?HR@18TZGI`_T57=1DY13Uo2hqQVqWKX0L@5nosLC<#N0I%f95SJdn>`uI zSlGU%y=K-MHROA>P%7aq8Zw`6Z6uD{I_VNDSe0L!3452&@n|ae3Hvy+<>aa)CMP_sK%I^SUX8Ej#0`$4RMqs>H1cpCsPEEp$Qy!J~jHe zC+KW(eMij9M@-kF)O4L}a|&D)B`lMfCeC@6$|J^~xUw~IsqRv-CQb`yKQ&4~^lLhV zaxtdTxTeFNkL)^x>b7)9vD9o9tHolmT&`4uYPH$!`a!o{Yc^UPuihz=4lzy#_b)@F z#{v6%aAj|Sj%9b3=Y4i!$D17v3V!Hokk6n^Ia8T|H+KO^ElwJDC#3koGYNT@`xK@I zJJPLBnw!aI#0{RYJJekK2a3I)lEB_{K)C;llNMS}LND@d-xyXPjl*`#k`Y1vv^C9! zrF)0Eg;1W}MQdt9llLGT4_~yJmf)n3-bCn@0ad|Wl;cBQ(wey4YQpp}bk{J^7R;fl zF>S#!P&5}?pp9|V7|_-wk(3#O?S?=pCbVfDuS^o4!d;RF>6&HYOaT)HUaRZ{-8%j$ zRh#u9{%kj@?NX~-DFx*&!Gx*X)DPr85lwKbE*l2(o71VgjQl|Ui6WB$9SMZ)I^6#p zWNdX~X$nVTAXnOve4&MDFr+CVS06`a8tDql1X!Pnc=kE%*{XhhgWya3k(!6!4u=y3 z*cc-T?_Lty0dJ?G_I5zZ@T~LUzAY9ey|zC^i>NRvi#^7%Ii|WPrG^l9^W>Zp$N5C+ z5fSM{FxJOVC?Xh(9_ucgsTod|YnUlHj;O7KKchOhYS=2j(=@}MTTPg(q-%!c^~;~I zQJ6L8Q|MT~{56Vdsv+feLcF`7hB~Ssc7VAhEWjJtoOKPf) z@Y7SNsLfAl!}r)0DY3b!ZBCFDK-)*YP(wWWLu!S)@0{UvyPc%b zc`MbD;smOWhu1v{KbZ{m|0zZMnpk|E7tw#c6PjB@tew&=+L5AG;TB2hmx?NtTO^fo zbfILo=s83x<`zAdelfR*{W=QVq8jw$A$S-F$e!)Z^^g-hoqx1jZaI&n;vcCn4@c>A z;V9W%Ww^TKF`X3A1FkqC-Y6UPTFgyOKGZA2s@5U@<;aNylO{6VgOPA@JZDM`qklJz z$abcF84q)FrcR5TVR1s?gJ?;3RS|P2-K$eZCf@Y3rH0-P#; zd2taL{AO1QBtHcqK%sY)y`bX8`$Pw&&dK0W<)1|{4a? zttJb&!D9_42`ED3_9Nb5Z5QB67KfNHQ?5rF{*s!C_PrjkdSUWuHs9+TsB28$>w74g z-S;B3lG^wBYDDjxz86i9%Y(6(Lj6BN0VvsxqoRbRNxNQem;8q3S6ihbBBz>-dIOsQ z?Fw*Q%93Y>JVYfZuL}^{h_7;eXrSGW4#1gwtpQ(kAVXRPUxAn(R`xFeL6$ z?xkPMrDVU30+;g9vrx11{z|%=rQ)v~5!JZd$0Ko7LD-FScT2GgCc-jMn(KeL)V`3v zMKDU5%cX9y3Ym)AdAkX<=i+no?1DIvazohOk)5>B+oiVXvjg1~{;jmt?O|u5LL4&T zscPK)1*+9{qOZoo+?;5G`8Xi?^Qd3A&f!3X!`y!n-jPxgH%!U?L6u!cT}^r1;_~YP zZ;1O$h6O=bxNl2`0{ClQ;mXHf^0WIcef%Z+Si&Xk@BNotb`4-k1n?pwQ%5Dd&Zjap zlP?tmk&4!2a~*paF~`?ZQA`)e@nTVn@NAKpwp#6WS_ob4RuOX8ELN&WVePjmm>IkD zWR49hdpUO$nWGBdb}{G%SUGgayY=`k^X0vvKUnM()cOLq$Sn>0!K|cexU9&hGDV`- zubD*Tu~;OkH@$MhN6bRKTddY=%~reBs@IDMU8t5D?Iz4!5d zwUhJST(GCGdrtwkA>QU42ridqwq5=Rj?h)BU_3(&O z^DJZd99EBiq=@?MkP=ZQ&v};duTa$KP#al0#979#vqI(}%wu-*UeBGR;ulxNLv$Ix zRDb{5-QN{dF>*QPEFMBt{olO$yItpeF%t&Gw}=neJ90JT-)bDE{Vun((FV#%_mfZ* zmd2#kMY649F4CxVp1TznwL~k%Vo+rhCr)Ci#np&P?zUcJ&&=v6!{vpA!Q#^X;heX) zbo=rE$w3aY1)Ny>@h+HaB*S#4Ww0HVa*CR>1q zv-OPhv-MJUE3VlRtz?<4*ST98W43rF#+t1(g+>mgE9=|;3sUFy+US#bnA_TjWo59e zFkd2l7=#o{B-`nbTMG{{3!3{1vhOf0pB7dr&A!4Z*TU(;tw8gI(D4g>{K$8Toj>WE zdP6maA^0NR;>f!>Aj^HCzheE=sQ6yJ9kjaG7{FB@m6l%$aE7ZEAf-{eTV`;kv3|Pd z5{*a{&f*moR+eUP&(hqWvpgFB-N)6&l-t+q&C_+7ED!K-4}KlMzk|hz+1?P&H78T}81{)=vCy25hyM)_cbTyTNde!2-?--!+|O*K?Bz+_?}fkJXk=eNflAM;B9J^odbFLgGWGZ z3~nN95u}zR*a*UFg@3dr0vJa>?S426gr%aS9MI8EOAcC%TF|T(124b{tu}(!gP`dZ ziyfRM4?13%MQa&~<7NAZkwY$B@P^2#$hH`R9@{|#8bgfS>A~w;D$oLnj);4OZVy~~ z2;cPPnJ|d0-ol~5;%&6G$O{Z0AlP5T=Yv^(37oEm=9XuddJCv0?10ifM_Ic4wux)wvcUz#{`G5uK*j8 zvYjeiwNzlr6Bel=2Pn<>Ryk&^n!BuO;<-?BX6&{x^{2;B zQESRBW%hW7MQ_>ZZJH|4Dtlc{{WiQ2yNB`KNUAtkAwqOSlLSF5Ynnl`)oC`0wQ8+} z{1i>E9n=s_-mF$i#Y&|~*Vf0kOOqg?WG_aQE@W3G+y_T6?jl20=7uX z1b!M)G0iW`#M6nXDJc~mNy*;5BpghsT9=W(;iw)6?=hxti_ zj5J`!hqI+sw9~36UcNN5ORX~(_e68nwR+th+$#A)_RZdunOsx13|ngVB;KZtgj5K- zc?zU^LUc&l&YF+o=RvvM?807_E6t!%N2Fu7T4{Jevsog9%Sh@J6>%s`gt@SCeQ3b# zjt{}5F>jTbxyni5NtUst?}~7IJY#}*ez80gJ;L#lux+^lKf~ofI3pYpy#oJ2%P%7) z?F=z#E+@w7V)RAO8WWHrmY8rC7mRfqUIk$^Rlvc`S_^PuJ1G0DMzP|hcAh?-VAZla zPlv+|LCt-lGx*$pLY6=*p(P$fr!kl3ITjQY4#0PsFU;WBu?854fc17T5mt;71Oh!Z zls?<78})_CQ^iPMNZY3r-h=i;G3s+eW{KMA*F6BDmGFn2$(R#zVERM!IE_DKe`oqb zQ8^Ke><6!*W}*YoUuX5el%H%K(W}@X%^GxiIF{>gLD76XBKz>4l;{HFFPsI#C9;WY zyF?N1M_eNN8`CAaa~+v{dYZ90IXn@r4R}4uwF!<$he8+S=5=gNv+?cHrgpv;$4QTm#tJ3IntDPe3I^8o_ z^ROLQ4ge0Pu=1huOS1Cn!vrfIei&)x*;}PNzwe}Q3M>CTM(y~Cu}r9L<^MKpTk3>| zk7?yGs2D5%a4~6lS$Sdt(k+4kDy6264c=0zT*H~LTDgS`p5*{GzXMJ{0;04K$}p(Z`NQBr}XHf(p$XM)R6EJ)wZe5zdIOYddh1k^%d%uVJgiUqY zF5|w-gxaql9ErdpK0Y}nb8VB+xk(7{nf$2fh{Ow+=F~g_g(7wq=y4jS#{Mp&Q*$vj z6YbPoYW2VzO*W_Iv22iL4JnGZ&Q)^~y0+DEL_qUd z=Pgxb`mDgExUfiKe5g>VA0o7RXifn&fEGSu9;TV1SlMi?)BI7soO9r7 zMsSoSW}3UO)6xbR9m}(=;_=Evb1dyP(dSS6FW{d1s9Ma4s#oX7$f*aH!b86_r{T4a zfKVyBX>)D7H((CFT0pWaw(r(k*^=8Zo2#=?mFtnxvX#9+#r94| zwl%#cyla!Cun$|+>$&yTTPH$@;nb*BHL?8#i_#{JniR?XGAbPzEcYu`y(WKVLs5Sb zb-CEqu{Hd96wL=kjfv#0KvE?Q87#6@PGf2!pXHix&Pc|F{Jo0kr$us!*7EyOPs3(h zY6!-Qz0>gB<4?lxnUk=Qnn}9SFe;cnX0+r(nBny!lXC1H{i;(rU-H<$$@7T;5noaC zx3eLCH8r`DZwLC*@d^Gdli(?D2Z|zjTtLJKg^v$ak;Z*)LMJJg|59|ej*0vzM>7BC z_+;Mtdq-NiY=mxi&^I6FgXZ>mpo(xl$`#z}h-0roy;iKYJj7F#{bH$I4uG-Y{-b7E z=i}K4geEZ-&Ij4>oSl!&KTCVWLkWe;Kb0f*)0j+s%O8^YdibGM^~mfAUBHyMkwHduWDU$m@g`tLBB#&=01~0%v5nTlK~8yGlB`+9S}D;$@DT3Kyw!o*@R_!w&+5W+{f9Bz5kg( z$3!9fT`ZH?d!9#ll_rYi5oW*EmPc4*;l1Y=J8jI&qn~+ra^?a+`4{5J&Ab}%%1krMGxb8H8cBIS9FigGXkp)#0P_PViZi}O`rP9fYsi@tf2sMq-`$!k zsV8qOUT2tB7>Ja`_wp_pxt8-t0sO%D5i8@e;8Hj@~Fy6eGkVL-KC5*-%npRSL5z@>Jp*rgjp znw2)f=)Iy>t#-<_ZoNWBMa?6?3v3UGJMV=dwwGr4<=A2;h%z3^!-^DjDk-jxEh6-G z1uOaa&MdvBVzYz60{zDB)AY1C`#7)89V7Tax2|i;+Frq%tT{DfB2OOeqx1yqyw-|M ze#@%Tbb@s@A=h8*98f<-kBr;Bb0`Em%>iw&BccBfhHlpEzT&>?JJHp|T> zb~L-~PPJa~*)5VEAKAjpGjHf;Q&UI@k_b!x6cx30W&8Q&4Sg>^Ynv)@D2qoYHa;pd zhbDOY-%33V8shbrC=_wRmmcdYKVyGpH7O|MKd5wM#MysZ^_s$zE#mCoSl7)Oba8Y< zoNf99jM*02{-xdE)s(R}WCD|NhYC5R{JtS+jr40aWutID`x|p7`L{=KJ}vd_I&-j| zTQer@rIpN58G&a!i2c?~#Mzj8gSCzAu-nGur^p^^mokl7#_XZZ zoce8?7PNa9Z`e}dy+Vk#2q6;wj$iNi$ZTGzQUcMSUT=B0j`>;J{8;FUuB;rZh!xOojo+j#86_#(LUaeN%l}g zVyrDOu#s%jOd2yS)1ZcHucIP+=-Vy9GEG>9?4j?mDvFmc&FoU^Oxwg~4|R7iF?;AI z*VHY;mfAguw`poM#bJrQu$$W<-M=Y1#B68(VwMf+D9;c2Z6^&=oUQ*WHqG%IVfh|< z=CH4aZA&7awS0=_*c8Vzi{=3R zTmqf4J3#;2GJu}-`=%cf&r?Jz;nSRfLJ>XeZp}|JfUaMfUv2f? zws_feBvPDU?pqbavoeXcfODx;CfbIjw)+yVeB&(jsbJWj6CL7e{5z>Eb(oRU1o%f& zaH|iET{Fjrkc^nO3KD;@lZGiQ^)E1b#*^MMgSw@DUf8y@)Z=FIj>v)|^ay40rfJE` zQqwe(_TW=|YKl|a0;)JIfliq%^-r>Rij)dN!@WOGdZj1AJPL8pgfH{jbSy1tIdBcK4nSuh+Eo4B@P z67hb-F|off9Fw19@m$|5y>A@9`-qF8teb~ES_toUu8}7Ggc^eU$U=IC_Vi~(IM`>zMHwP zNm!y{x8eJX^$`?RX?2*Ro5pEr+aWIeC$8Z zX?WiH%ak&j_Ne1s0n58`Zi7AwPQcqh4(7V77W^s_Z&r{}+^>68oS|=ZE6rNqH!CHt zTdB2Er{R1ns&u(+wQ zTIS`7;8s4)SL8_VUml;{zcvoNBgvdr%UJn1ZTjZph0xqS6hq?x$|G4u4^xlpn^7c& zVvBcY0x2~=gUof#euhl3DGZbRQz^wSqD_61Fn&xU-o+QFsO?=`#VFIyDW~SU!@NLx zPR&ciwbJ1l{{Nr6n*Wq~x`?kt;M(^XU&YU?p7kheUd?|--Fns|rZ1!NYW^+j1lF-5 z+ne-8XF(Gve&bOz+gd70JxwGD7oiF-If}ZfxwYFrZPC{_5S22&=BZXC@!Uj=C&H@i zmO-PK{F?Tc`6%rvC~e{{v2^ToyLH^ZT=FaBX0=%Bws84wy;#TLYTQy*tkUJn@$G6V z{o9O{-4qZ9j2>X0CLS<)Y^di(@@tOrR7|4BBambB@=Q!1w9h3dR@3nul?5-k5KK>l5=z!_+Sgv#` z0a6D9txBuhK^C=gy*{l;$EKhIZS-v#h44|PgN-9FX$?8-* zr)3d_B7}j4D}rnOG9i|czJ9qeA8YPp_P817`WjqhT1Vffk50;s&3 zqZ5%m=VP*9jO5r9Vlnbu&DCd8&y^+=pG=_HT7=?$n&LD<@p0CPD50P?@j~&qJmvz; zuDKpH3E#3h9M6qe1f~RmAyNo|@f*mui8SQxO37e+l6z-_5x6@ba&XF2EfUOh7rN_M)@zv@DZ0=k zHwca#oa7_%9GvHT2ESMiPWJ04$iaF3?BGCeK3(R`vmKc?QAr;8HXp+CT~U{o2Db(C z=ks{M{%3*i$q@hog+O#BR50EgDY;;Wtf(_+r{ zkOXz=GX5V%d6^CK$Jzi_j}x!>7{y;okz5(}F)G$2Qx;G)-2N3*YeZ_!MzVBn5qORZvL0*{?9qP?@U7YG!%6$P0T43Nid(By3k0jw@C6RozX9$>fCa@9Ut<( z$nf?o)Gji-2_BGn-L?p+Wd~dDBhK9w&L5b#f`TLiX|lO(zSAEp4(<%&a!+BI!Me-y zKFbPDYgb*oUMQ-Tx^U(UA(q6eXKTNaD1s_RZt?j*!!~}!D(@lW>-?GBGY^YR9K1X; zc|Em;bZg6nTuu~t4fBwe%v+3j2;^c-=dYt>s>}iL8|L_J(x#IpfG zOvfpzWcqhTrZp}Pv`xbPJE0~72ZchZLmE)k(v>dyU0{#!N`#2EhESfbLM+YF4-4Th06!*Vhh~Y z-R<3hS%$dsvNY=x-uwz4Ase8F$CMnf*Ix7%SNJ{PodK=|D0HzxSs5&IHkj-iS4n9K zK1z>&H8pXxMa7?@5R*Xj=o3BGt+u(zoV3UGk5rl)OKXqq`&PZCH;`>7|9hn(Zh+2C+=0F;=F&0;ddlFVyXu<*h?QSFvj?Q~0?@0Dux zO08H4N_dhwP1cta_>ZJaES^aDxa=5xDi%*4W1sdDW3c5;q;$N+&47xQt<+O9R)O|RALRN;h_f_A-DP75_&$EX(HMVe)SyI;*d zP26lM!K>@d6U?~07|83b4lNE~*fmeC;Nj(hHyq-EO0jBA;^6Ii#gd85hiVdDn|cy7 zK7LgKF?2re&*I|@dr7ay=c)Mk<*XA?d`xfR`S={-<77Ic;uK#hLcY&xG@eyb;ef*E zYy&sba0EBE>YYZpQRs+Td^#dk3~H~-3&`}W=N z_&fYyfjP3YgEU`Qp1*B=aA>|j?~scPW|oe8&_(fuf$uLbV!^V9U7NZ*T=r&X;ljch zCjYfJoZq!nC>M(bd`dnpuctSU#phz+FXsL^_(~a@7y2l}e`tyVby*(?I`=?RHRWwi~T(>Yd{+vFVTR z;)u*EM9jYRi9QwB{}m}}749qfgE_me8RGZPzu)BXctVUgvX7#owj-M|eqUWrV=lj{ zdxr~H#NV+WORzy_;O{3N6%Uq%?APAuTlOxj+_HDj?%%Ta7M5)Cmg#9G24+2{Y`}LL z=(`PjH?Z$Eh|hF4Vf93OMIY_uc`JEEdH_=YN*W|zZSy`WHow|QI(@lK5!-0Ryt0hA zMMNS!0W~=t;LYr6Y5#ElI>4WXR@{f8+G2YnH527l9P$?D58u_l5#{?)OKmJtyp z#?e&3;}E$^Bl^}qYl5I)?ZPuEc<4BgYG?nkD4=W2c#g^<{U@U4y{MT7m`Q}oknPZTtIXl55AQ&*-yh7);X04W^9!-p+!gqJA?F`njs0ZGsxFV6xrfp2gjMh4?%lUR ziVh6rHl4AHwZr;an&y$`N`KsgnTZ#aOgmd|3#(eaGxv?WHfV9l0{$e)CSCBWmsgRq4VLLQJuSVBnH69|FWK-fZ967pEh|99?Ecj;TV zs#+~s@IAgn?y0J~o$a1`wrj&kI{3E0mn=P)t0zgoaq(*0&t|@xHgDWIetUF{9sN|0 z`%tu8mru}pkKG5*6pjSLg}0vLRiaG(smA-Xf4obu+7W5EmAljVc=0^%bmF~_O)_3^ zszxJDJVgn;zo1#$7dE{P4=3itV;45rgx`A(R^Iy|#*r5`*^=;c{+&H^|MBM4Fw$_qzkd6jGMW%}gQ(?2UW{0M;?&AP5 z*L2{_6p~pR;6!?_-6v|2r>^dt2z7@*9INk~fUd^WcebFZrthp}<0L6OM2xm?;Y6`U z=2hl8&oLl7LF|M`<}{kgMwl9^{IqaE0tq{4W4oe_b7LqU%&P?Ej!d*d92H9|)8o@h z)uI(P&N#GkcFdYJ+UZ?HOXezbguzQvO9Ksde&n4KCpR2edn`?fbMz)t%4ow~M<1nP z>*PepYtYx2eEnoJ)%ZGHA|%^oG{)xUo+r>5$zHHJ**Gy})UC2H;Mu+Hi_$bI_^}Yk z!d{WD20;L$WVKVMmP=(=DS}p`SgQriMk`;bQ*iGwUe)TE36%23>mg;|gMUK%d?ikX zPfsEb)9t9&-8~SEEz!5$M`+oqS_!1BgYYG!0TE*bT117K1kXi(E4ldEXc;cWRR`OM zwdGaR)V8*yE8Mi&z0y{NT7&-naA}!GN-Qo7_IIi55I<~@@-sjnlqoV$94JzenC%(I zf*qtQ^8&!>;F@^+GYey;T9ri_e~@}glE(kX z8ZKVRN|wg&M_)cB@q}=E0!@#uG^X3OB&?bC^Wc=2R?H=vOAR<)Y^O3j38_F6dndpl z#CWY;Kv-6@-D%*CQ(SS`Y`21Hr`2u*MO=m&mLSGWoas!hnWf&AfE@Z%n5BsGQ<|k- z$v#bvZ^&REUh}s;{Xk#ch{*Z{W-}tPQW}UKxCu}i$*?K<{@y#^utN_JI@4OQ$?|8%^z6{TE})K*IQ~J_XeRaO$EswGe<1qu z(VvIoFGbVC=J=GF*9NeZ1Tqg$y;YOA^37z~n8w_KH3~K^1%*zr(kSE$)oQs8zfqyn z?vzT!W~CYAOLe-v*hGX*=o%YuN`Sb=#>5So*f?H(QLnl^Fh-DL=Hq%gGwPN_^yNzMRHeO+! z(cfxGZ}cw7n~d^0H1)|ulTt)7%Bxu;a|IhB!gZ{{dWltNPt-a-F#bB;H~u=}<*{1) zh&|qkdeu|!>6p*N?D4rI@gZ_;{sn^yFwpnir zHRWkL#zI$f)oMLo%vTDnuvRLE^?aiiws0_P6e_iPtyX4cJ%i8}AAV3mVFwlo|Ip$R z#kauol$&iM;(m5+cyKr~Ty6t4bGiA!fe@A&a!s`cD+}#hGn^XW!BV%4tR`wSAM8iQ zLayEIbiySh&E&fK78k;O_{EZEM0hM9c%EluP5*w71t#>B77742Ctg~wpC{;vlV@qui|KB?{$m~QaWo1yZ?@IECSSzszQTdkl|XdrsNR&G{n^{|YJ1o=)GMQnyEK3k%rQtrnWsfK4tH>P}9KPz^@&7W>Upgp{(Ynjqnksz{*pLk%JehtU`7~e=9^j zJN1f*4@HruJJE;HA(wN)*|C2ZL)po_Zb|`9(3OEh}t)zsU~Vu`uAM2 z_RXZ;K;z3Di|__CM$}`Z8rsAYFL;R%MKI#+jYkM>0I**{=-oj2l3cLs&QGV>18Us#18XTJSaiK5nVY`Lpk?-;6N87Feuk!#;id~D zH^sop#X;Y4Ox(*s5nUJ@WRpcI4*H~HY#nGL9OUm+gzFzj(W~&r(7u_{jN4+LPShJy z|2vbF;;Bcedt$?{P*Z!uPw9>Ml?m5>A}x}$u^q1eBroW6)=di6zY#r+dE#iHsm8de z!u4I7U~IVl;~aDI^5(T(u;{Fn%4;eP6%?+2HG1aefDGaKS2^adPlEVca3T?OCQkH= z0^v}RI=-|l`5Os`inMgO8znnb{+K|;94fD)U(BJxejNi2l`?F9LgUTiM7bo|SZ-T} zqRiq+hcm)JY4kS<$H}y-j7|kqT$YpGVDCpEhx42^>KR zv`x5<00rqeu|UjS4u-enR2#9(kOS>)^o7z3KOU{;u)QJ*G`+u}Uhglj$UWXAdA%b4 zjHbSwKsg48B!pMw3#`%Py&^vue;q#>e;x7iQ7wMNE8;}G>Z$iG%x7X=kuzMfL3l#W z{d?@kC*Xra4yu>lkJD^MF+CoVc(LWZTcF?wcswq|Om#Vw)#GuQ)jo^IW4mZeq@Jx7 zSu|^>$0K^1-Q#h83sWHb0s)m{*yZt<5u~TCRQ70U%3U7jLUa67W7vO>d8fvcEI^Fo z)M!y3KBq=#4PvSa`UxY^sS%(n-^Svx4Ghp!J7T1BYLFaE>C_N}K~4>V>XC42*w|7# zL!whdo1ICvk9Uymr2GtmDkjyP(zadz0P8~Eq$vGdq>lT-yCVQWZVM9-O%8~$LfogW z3zh;ziNk#(l|}uLn)s{6n7FW0ypo#Qc8bY5CbmS5iCsLL#%U>yybl7s(cfyB?@hf- z(*J}v;@xQE@J7&M9oMFnv=(nA)eiyEBO%u1G?f;drczHYE_>;xX|`M#o+t*>%%q>S z)?(7FE(w#(q@QHqGJDV|-y;gYjHa3>OzCuR$-;}Br&$ZyE?eo}I%e;+$3)a&*h+2U zh?j^&Xu{j@PRH0fN|6iib}5q)GSj znAUh`0~$Gah#trD&~K*WAz=yE*XQJ;N+KUQdUEm7Z_uncFKyIE)fj4IRY23pFqFHTg9BhLrnId2-k)f>wtK!V{TsF{2eb?bk<7cfDn2wIUt^io-;cjp5d6k zJ_+J)!HGoBnK;oe3WNhfYU^%af;|=CfRKhKccWwn#1{xu%mML5`o$a&?AI~ifY<@^ z8`~JtWp6ylsj3MZAnRum4u?zi4yO^K*IP`Ke=10|{Nwo`#m5^9QfV5Eczc|Dse0;t8}e#m-ky!R zU>07U-vO+Imq&>p>D`%pT?X!4w4vDtey*kmX zonD>jZFaBDQQfY9+2;um#Jg|`de#cl9*}V1&Q=jSqZDmpv{c;vrz3bx?YMatHRX;Q zV|lB&u-z`ARBknoYlh49u+}U#%gtigt^`e#GGKQzm;v0c^<<2U=7CHgv0-Z0eAwD6 z3$#Ts(vm~xSkAz{0cyXu!)26+7dQG)K7Y#WmJeBg9mf&$chm>hX!OJng}qN&gP4b8 z{iK)Z2>M%e<=gf>#+ompsdm&$=LjNEnbHv?2#p*;1XX5^d-UXpK+{0{NIO^5wi_iE zuC5tz^FPE)CGI3y8KukqlRijQ4=b_E-S-((Oyuk5HxKUaLsK1hsmk2BaCfRa4avo7 z_OzZ0gQq!oOi{Lt3AKwSdgipjEV-0N-Tts%XcqFNM!DH;*2~3CwO+3k8ueONdva+=dOYvy!(<1&=rKm&2XYh8Wy1ZxT=)9Dg7 z+2M3OTcz29P68gbokLTNZBsg&Tzt#cN1(ULaX;2EIj?yw!kJA8;_hnM>R!+f` z9m*5IP?R3GYRq8TPD(zDD4D17-l0Bq5%m9{aRou6H*L%NpVo}b)#(JCs6xD+t=a5A zN1KP9--)IgJs*Y&q2QoxKv7QCYaCPbQgwt!gQ{&brlRV*9AoR?$xhW9c|GZPx|XMT zfqMC;lFs*HPC7ltBTu94FSCV=&^A5R`#M^*{Zks(N!vfSW@N4|6K(&Pt=a5AN1lha z*MH{d(Dr{irs$>Z2#*GB+h|Nh+yCSkTL;ewZTou_&dP_R=vBB#&S#(cdlh%{oyR_% zXtvZYpjapUcsdzT>mEi;ZME*#%~{!`MRFFkv!&Wz(CIvypwNg1N#hGX`j?g!t=giK^$2sP&PlEVca3T?ON@peKL_gCC zXQe#Jx&4mzRD`oq+Ed+)lAV=rB~USE<)6?m=B#ADjsa(7c@eRZxGRACf&07R0cf}K z1a4&Oz)DT!Zt(Robl=tZY$?0HNjNWAM#N~xkOb2`-AlPzx%u*osNCFaZkwF!wkvkz zE^mj!*6v|<&+g%3&I& zhdyaFG6i|>E9hdx1@&n>1Ygm3KDsyELLzJHL(zDvOB45?+H^28iV0V?*63GUa-TZ# zLc#6p(K-%0TT6kY_ciL3O;O2+-uv-zVon@4f%2P0eu9By%Ff8rg;S^Zb9_X?@2`jm zwnZ}rJ$#TRpYkq|5^mrKpSlwETVZa{$*IwB69}<3Dq^E*Hfk`@l_8e-f2_6&bH{y_ zPgBZBlj3#3s#F&q`F+1pEP#8T0503eR&%9VDF{&E8oRfde!{2Y>nU5!d)cEvnomL!ABmk?GLNK6#s6gf6+5?*`o={7 zy$%(OeJEDK_wI+$FSd8HU&p}SeaYfrVIk#)eSX}oKEpbh#4f#oJlUeRqp~$WDIz$& zTcp~W1FMlKsJvSlJ53ID&Unl7xTK41 zrGtJS*BN7P<(n#8?!waxP^WL8u<=qcAt|>^BK7X3lMhMo5E)?iVlh>*g$7j=ByZQM z#YVMJ?$kQiMDx{3xl$=KI<;E9kZKF9rrkp2hlyLL_%LP*#ajjYH+f;7Vheo(I`D0L z)=68xHs-a_*u7WN&%@b5QOXk=A#M2l_!9Lfkmi$Q+7>E#Ly}_lE%cLE3Ex6LMZee< z%6=UKTWA@@O!wnH^W7~($@IgtyQ$~+YxOsYjg_A+Mmjz!d+fI(ip;Rb{?KY51`AQyt?H5Y)ocKA(tcSe`E0FZoQ?K?Wd=Ef2u}#=b zpnN|*52HuNUwi3tYd#+zX$O z=;xxFO%Du~_5w)=f2EkM+#`7LNCegeklF{j%kv|>xU`64VoIQ|`+XjYHfv+kX0Jd^ zryoNhbtU{1bkYigR=(9~;a-|*xz;X%K1z*Fq1eg?txhd$LkBc>1fBj#3_OTi!Fcc2 zK6SlDioU%;(^{n17+-6-k=DbE_D`T+Olx7kjsdOZVX#xTa1F2P;+SE&tfTllV|;y2 zLYvvi%mls#FqRKm%dn^6Qni)k!S3O~erxAr2mMfn-RM^T-dpORLcY7M4-Nz}8dTuKBqrstZZ1uO`@bQ17WWw#yvJYDmQ4s7sgL>st zH*Q=%&x3IhIcVI%ezNvGkC`snfX;aaS_+4?;h@hYWLKY!E!h}#E#hFQdd3&^AsB|1q`&MX*7~dF9i4r)DCOWO8iU^8$Nml=qAm>iobWjI4=B zKeyUvNksZdw5+V<<)T?T6Op2~*%OhDvAqen|91f-rW5uqd?5)-Gh62m*y(^W1!$+I z=mOGda2W?TsqzY}_ya~(c4tg8WOw)Op=gDrustRGnAk+w#q$F+TgvTO8muf1XL3)( zfncyg=2@KbP-Py!yZvwnuJ`CO-zYww5+z6J^sumii)wPqOWi$tsPE_)cudbx3H}Fs zKDCl#Ul(#NHRb772Fg}*wL-mEXjJnJ+@OLqhhn2x4sdl)xe>HGMO-CIrd-3x`QDNA zs|fHp!UAqcg^9e|AL8<6hGdZlLl@_1JNn!d%O9A@UCl3LY0VD?Lv|b#7YTVA=U8L9 zswnJF(VZ?s&;jlt>h|{!_EJlo9&!PYA1*9#d{bIhKIQ4b(`IH$?Th~-V*)kH?09fGVmT66dLn^88B0&1&teZCnXq&tTeXR1U3c+dsfDKZ zAC{_Pa;1`RHg72nDlw5uBO6P?HG@jA7M5`BSqX-UR#18&ZSL`q(DP2ysb(hs#CEu#G8m*vRZ*|I@V!cr>*WlqSAo;J1yT<4a^oKv}a}@rjAK*bedSY^jE9(_pFS1YrypmZCS{-Av=eTT$Pk#D{_RCN zHwOzhHwS}-TN!IVaXy5;vBX?wu$x11fQqqzTQ13f&a{h_zEoD2W+F8T+CgMYt4r0i7I5>%S%_t0l_Pa!JjGyVRsBtNHS?dVoY2K zk25+Q*%t;)Hpu~Q)D4#|+q2SLXz!S6;!5?l>;mbS^4PB013oFU*M=%I|sZSVd1!2 zH4xaq1riLg=XgIN_UvyAv3FA$?0SDOn_sHKfT}I&+d)hY%fm*Yq>c zl~39BXdur=Q;j#*vT>5`nzj@W&8)M9M6$7Fhh^tXaH|A3lbg@F--$IfDO`|1)(&!b zts;lB+&h*w`s*@L1+iExRlIt9s(7nK6>OaGsUmLKqk?>dG>+3_b|ulc!##}MD1%~1 zW0Hs$ieaadueS1GvlW(6e5_IkYNbwC2*V2OMYUp;%KoHM3@=Rp|A=Df?^PtZe>8=< zDN<|cB$_l=k>vg^u9;4RrL>D9^tY+0eT4pXOLE`%kI^P!C%JE; zSE)?NNlETg=xNN2;T$y8HilG5?$*A*4yLh5?&}?M^Cr0;?*)raQC8@^_gMGI_C^^afCLn>w%RPyHv3NQ5 z>llcaLzF*{my;gfbTM+iD1WoRNyNoHkW_$?i3*c__PDpD)J$OpDv6Bpe$@PE-UDhc z-gZR(3pesYo!{?_*5fkVW-8mQK+}6B_38*{J5ivGD}6@nn)%9z@-klGJR1G2 zmhp1$GQ9C>FGW+I$T!JA1U|heb)%8MCnuPc{OWbl^~3_7L_vC93B%X${Nq(FIBJ7|3a8D8h>Sr^?-yN58Jsn!>2Iv|S%R8A z5-lrhP*XH(XHZl0HhWOhQM@zL#y%4~K=%6tRQ_KS6AZV_BNAz)gxfbq$TxKn>2FX| z9>rv$Y?>cnj5wutWR3CBB6oyf&mN;B8;%(X!GsI;gu{tX`Y#KE{XOEcU%&c-Iu$%W}Xm) zM=?nR-Z5j6CW4uZlQHw)$zkR~bTuYs^7k8N4nGdb#*|WM6626GQZZ!IYOY$(qo94W z7Bm~JGHOaA_$X|Kt$eW<6q}W>G7^XMV&;W|Bd!Tw*>Y}W$g&riH*EpAaSMonT!0gB zuz+iQSWM9{hq^$>bY7rrJ4&pZBEKO0GA!78!euxLn758<*Ds(m_~4oc5#!|ip1S}w zll`M7H!;ojd96jZrra=$VvPw0~xo|>(rZx z*Bf$>tLP)vkx-I*QmA+MRZxhWLk85EKieao$g7OpdhM0TOm`{{>4ABDJwS2#5V`%Utpp#G#SpTn^2Qmx6L=jNw2z2OpI%iF@ySg=ZRg zD<-1R^Xn{9I}9=NR_ZE2%)HGS&LqrCV&;FLt1-pQd(m`)l$}D%&{c;7Y9?mZ624R8 zAgxUKG=Vl=rhJxOPe!JEk}bqUT}qkqWi*{2OR-&R zH5U1;JARf_C^g0!Q*6&lYWQ=CX6tipydBnfCR6G1Fgf&cnk~ufLC3b|+*n0Z zjV)7#URsJ5^Kgxe@bZdMwNTD6TrVz^@`ACy{^LK`9YVX0DYR*Gpo?wb>+f$$Vs1J#s%|pH8#@{7P!5j)V+^U*wpZ*EjxrFIdLqQ;Ljv4tnNh@eIE4-*L=epM=JVM9`TyF^p)j?=oi{A4Ai77WuI$Y-$rNAn)B3budpD5aK3zO+r*I$ue zUH+}sc)oXyUcdSS(A2kGm}DaS>SwV=W*r!$bV@Q73p7@-j=g4YNEhUPsTEYmUqO*i zCQa>^NBBqa)qWA9n6+PsXXTRCvOm;{uJ?~MM(r0qg?N#l8daN2DdR%dhUgQyKJAHG zmt`wr&-ITr2HN-(#zI?~MkA3c zPAR2&>iqyRezK7(Bhr^guDlVTl#weVpG1)>_8T*D*rA-rz>y!q|(XV1q44$SYIzhY&6`mv_V zEbpxXF!8}FZ@yksE+9L-*cDmb6)jJXikau;<|1)6H-}3`mUocdR+#+&Vr0!$QGo+FKlG(=IrUTlh$lYU$p3}r`KCq zJ;hjo6l_j;eXrF~yn0B74oU$7B4~7GU^~?Y-I18$e;(EppF}lrj|>9Uu4kh|3D-m~ z`WI+*JkrOY@6}wPTJAI(d0fj}&X+4l+=cZSmgaJyoG-$36p|PH$Xc6E{}SdF>sQdv zxg+MAQ>m$KzKORs|JI44k%!lgJTrq4>w>{?&!?(AvTMNVY(;iy`3>ySl0V(HXz`(B z7KctfGYXBDtz83-!2fPPG(CUWt%q!E6VC{v^mep%7^Ug44r0?N{Xl7yzGG%|jV{ad z!>K!d1UhZBg~pwau*Nm{UNb(}mS*;#6Nkq*{a7^B3`{AF)1*hZqncccCM1aB z0D{?0f((oBVOXhcbhxb4_BW=L`W&)S$5I{oi~m5$lX)+84A`czMvG-rP!~;JSfgw8 zuu^KZ@xP!_&f`j`B2vIQ?NSY8jY~~d{yJWc5l}^8fNcrrr%y#;fQ#9uNreGczsL@Q zxoOJsw(9`!SNi@7)<&&6$=xV+M`ebVDXky>hpnBWg06yhAI22D8QZp54R53M6qEpz z4j6{vK9+hPEG&gV`=B`lFFn9Yf8(C%keBNotUyJe+9XPIj)P9wlW-D#L26>q z#LaUVq(N?`4~!nii<`t0{8v$PVXwAQ@Lyx~Y>IxLu+6`LGAfTrNX$b*c z&DRla(5&X$Mbh~S^;W(VRKpGw!&1ExA z6!sRC;g|rGg4qzhAZ|lUQ<)Za3ezO?w&B#M3Nxcdrd;iAbA^dtUhi}TXEUdS)s8+w zd}&V9XC#TViY(y zrIF8tz*{_FUYuqT?2u%b9C|ybS5B{6eE`rVGGk4|q(YsJDXqd=0b)D4^7$-0Cy+Xt zY6`>JR23ks0|?U>{L3DtZi+9HxL^mvb7E;jNhsOC?YT8LH^aU|Qz3Q{`%XK6rJ-7A z*NP|&Q41Q4V%Vb2bPOcP3br*UT1X>OY%@T^(;b2xN z*IRX@n{?W(dNUssn#C%sTw)3n9q2@L;^g|f=+Y-P=u<&TgqaDG(#f2Za#RaWl9TaF zLG|sap*liRZ>6R-Nu`XVa#>S|?#-<*y)y%{8t9#wWbM z(D#jG)79UgFCPVXHjaNlQ*GloN~S9cu>7z9fOp~<#6R`NU22w!ICgZ}jdHaC@t=yj-k$(ljk}0QGjW%Hrx3AG(w?5YS<+NQY?O2=x*H|O zMxFL$0FuQM}@BFsG$sx;(<^q zFp9-R?GT04c5Z8~EbQI3gWPQhp%P}lcDMis-tO==9Hfw0$RewXp$Nd^f<-SjQivyKh#c{k*!gw}X)nV5mQ2^>Ss8>fY)nkQWeL^(Ac3ms( z>J(!L@r4n%bdvl+ZrbXBg3EPYxOfAwu0d1iduhU#p5hS zKh_v=FnkK}qTFO75oz{Y96Ck~np31vh{*yc&g2&n&Y}kjXTR%Tp)YpnS$tM$aCWzU z6d%sSDCu$b8vj^h;EYdU5;&vO)GjaRiF2dHwMo5G$w$vleJydg|P%j*7y7?^Wp0|>GAao|0q6uiBSxE ztz$ZbM3?wWVe90t_>_X)7}(;Im;koUaH%~mv~9LNl#3mCu9khVf7w1%=Fl|d_Ez+d z;zOkv#Xuzw$d%ih6`lJq|5#%nl22hQM5bvp66WdDpHxr1i@+EY3-dhFsiPm_ah?HS zDdIdG%A*YQJbgstG$TEw5{T33ZwQ_S-AuYhSDW zBR!+H*&{uVg`)`&zDGcYnIxRIEpEMDgnA;qzZvwA!Ugx!DPVLa|aPBaE+H4O;C6t3&a+^~x@`dghhw zHoH(Tw?AAO(jAh;nLJ;MY3lWTXh=NIhk#DZTLqRkdBKw6nx!|O1E00XvH`PuZG~<2 zwb9rT#Or-MWxHlcAdT*MC!|5F9N9q1PehAxosxCyw4yIjBl>TsscpZVY#`-JB;ROv zuv`OE$<3pVyj%IbEXqe2HPr(w^#Cm4+0RY0>(2Q-mN}}`6tx_UpLY82)hS!-;Oc>* z*l(r=G@1NFXy(@#34kHYSSfm}+k5cArs!G|1|Q9tX@7i}ahz-Z1!Hsbi{BW2Jbf4& zqMOYaejkHFyjja*4Bv=pWH*MBo-kG%r{LcW;9rHjTlMQuYPd25QuViuKSir~JdqGzi8KLwOe|wM z^}-cT+ubOY)(*F}wi9WM=(A; z)`h7d#JSIXe$DEs3thT^aA9}2ZxOjf-Ql6T4@uwV>Pd2kh~^wUP;=gIjpOI0W%~N8 z-c#9}<3H8wyR9C-c<_+x8WZMg?mZg`m+bT9U+WI^>tGCd0vJFJ%6_Y1 zUp>ySe~3mt?NWzr?*;fc18iT5&&P)?a!R-wU|ja~o^ci#5xuby+B6R#J+cwn-a;u7evSW6qscT)l)GAlMW-HMnX?&8T!U&FW5 zo44Tx^6vg_dnH(a6JI*>x6!qF+qlLmyrNv5E{!O2kqmU9 z8stKuhljWfRGvuLZJ@~anbPzo)q<|(G^GON7hOnU2ePw-(`^nnk<#aSKcrr-I^N(=S9duM6d~aq3jkizYZ){;7!a%zLtI+d`k(f<_K~iXQ7K zfFY1v`}&E34&4`A)Tqbr$jPzjryAkbNsW-`M%_E9kz&_!a8e_z=kiTL zO#Z2$_S^}L)O)W+Zo0MPW#bP3Ey>U)ZJu}OllC`;K6%rn$E{iO|D=32DL=pErr(?l z*zUdam1?uQ_s&0@&<2TaY0py~9>yk#zG(APeT}_Qs#)o`Z@wutH)PSvHbXBX!WVj3 zxf6tyYCdeW^EF(SPzVZ@5|aH&`AQvih3iz^A>PnMTbuBcY(kel1v#@`w)z)5^HgPD zOHUip`BZK@ODzbN+6yQIEN?;|E>kkJc`Z8Kc>aj)knBR@vUTWeXweUGtpl1~dEM3Q zE`}Y@iKv7*sdB>=Tmk_tX}-Hm@tV0M>UN>Kue&_V?Her75X)iT)OlE#hEwH9h)VfH zYHSlIg~IbO26f0b(`7)9V-=p&#PsTWs5w7s**Bbj)#};QW%MIea?tx%*yPO~bj8VI z=l?F6YG69dZ`q|!M8DMBhind`Js;JsGIz3Sys4VTVT z5%W`MqS{Wq(M&CsE=nN85vk{rN-4r%*;!vsU0(uGUxFelC!SJ7j`^1Ip&$O!^Qb-|F+$99Kl6PyUD$V2g^hD zYj*CI*~Npm@ETsX%-%9bUEeZy%PqNEZn@=V>)kDP$RsQ3WQg08$jR7RMi|)8QTz+t z+$!ou7!hAjS%V?h@FCaCu3>&A0 zSd-I@ee^tjU!2vzn+;(uMEoO-#S!5TEc&7~DRV>2hL+E>g_}JX!q(%&LDR{g<+4ot zrCnn-ia)~_Yh%xp!rsda-sFX`0ig`r(RtX8-hiIPcGPIL%f)6ME}yVcF0_M2h&m2o zsaPp>@|{9R)g0n6LsTpb4S$?~MEX>093+1;Z5$@d^o3KeBAr);*CxBmsL}I|2cfIT zad)F>?#!27kWe4F*FnJr_MWHnUh-A^$Lc;Ump>cH%8 z63M)m@-mk^s#bO|c?n{B0;eDsCV9Ucx`=@Qi> z@JuECuZX%@?N2;yw>8)^vum*D+U{-LKJJ6C7wX7>J<|y}1`{ihbuE3#l@=p?RXxW} z#Q#u$ds4JoSD>;tZS_Vp^@$Q^Hs|A5BlF&X!gMD4PEBPRdO*AwroA+U{5<3nzxPzvXKUBp2 z_hJHaPd25qu?KI&R-m#%w%sox7$EywF=L@pbt=tHSZFuP&33I^?=*vEtI)#bkmY(% z2->AKR4OB3=cWf>8SH-7rEqZ}Xu9#7UvTHxYR7lrT-43_qi zV~076RJh%(M-)byApD9&f#!ks908^gX!3o@s9N+b>PeiZ?C*_xpTA=bX%fADo}!pI z3i~-^sH3FQin#i3pex@_>pA8A2u-!))LJ%1N`+`zu%~4(xAC%lqqZF!ZOR zLAG;ql5lZjkehVbCz5#Q=9FTybo8gI5!_2Gf-`gfHtGwL$HtT7TD5LoVRaKvb(*eX zj}26x9RodWD7%$8+oetm#o^P&h+T&+eQFBfOC%*;%RWs^O8kg0X=pi# z5OOL)U%pn1IUFqPrzFD#oE`8(?iB~R%kwi+;#h;%PhIIQVS5oV{j>?OO+-6#BIcj( zD^XvI!SehL+FNonl5A(D^qV&*=XPeKxI$s3=GTvRQ^zUqmW)CU1qo1Sc5#5fc z%4viG!-Hc(78o$LE64kh?aKbf+^*hD^8bF~3G73XEAZ3c3z_vjGc`3cBa4m%RD@)9 zHV5`#f_2(3WvssH7+(sXGf?>S`*EV$?sNXvP4+govQrG~$c=16gfXq72U{J*bD6gN z(&$XJ-DF~3>(@WQ#L58m!PaVnvGHs;-FlF#jsd|h-ij|ay#Gb6pCqu z!aEtv;-{zyg}1R!6Hiue)d}ya!Ajpj(yhVDLYu{g!!E~9QlRXq9R4RyQn>FB;o-#H zZ8~l*gC*EmOeE(hi(k|iYmWZlYNDfBTb#3~<>Jx+IoWt5RoLiCU3q{?Vy7)5tCHO0 zc%x`x&A*z2=LfW4re7rBL}#Ynr}44N|G^8Tj4;#jm{2Na`U#tai<#(6JTv{F$xIP; z$O3ybF+DdYa1CRZjcu&zxyQ&fH9dB#MJuMFeX_P7NqUZh{l!)%eu5MJID2Hk=VTpd zik|H+<5h$#3J;}B5mhnS*8Bh178~C)i6jxy_g{=i{c999b(x)DmT6B#G87qi+-j9-j%pLZV!U zMrpU_tPGk zIFuR%nhN@o1VA0muK9ApoK{{eRt0?_n}mzT=}kP1S47VGtLYG1(f8HnSjIKmMAokSdC z-;!b{5yx0M7f$#XYh(}!E4T4X@y0!=aW!(F{W3MR540(>id3kid3GwN%ODywdz3#! zevDh@Txmb2^VA-EM@c{Q-5T+ku9>fHqFfSuG|S77G6pd8q~4luV3FKUVAlXWo?fMj zn^}(tCX5mrz;s^%4SKxR8!-vZO>hDY-g;+Od1h}f+pou4}9=1t=GuhbNkh5H`> z?*Acr<{RD{-|1ICXdPn1`<`R|x}AnT6`V)}orx3uqCli+$Z#AP-RW;6(llgDs=LuN zSE@W|8gz`~X&TpnKzN!4`*jSYXG-b);#^%#L_8IdVKs6oBR8*|_P-d}U@C=&hhaMV~5IJ|hBv%bM%W z?zjz2eMcY@;Nq^X<<{&^sfG-X9G5a6ODDDRftdhhO41tj- zVT3jfnwe64YWnT##jK=oHX{$V`bKwX7=J>&iHPaZ;?UZ#Z?}dub=GWw32#APKJxWw z9DjkPn#PebPL7C0i<#z!9~L?7O1o8h$gw4vK$3)f=0UzV6(uQQV^dAM9-uUB5#0L; zj45)aUrRs15#kgSAfOk<`ep?;si5LZzFDi)o6TCM)2uhcN|WxUP4ed6&v&ZaBNil? z$);-ZkM`b!e~kT%2;{&zfa0v)KQn}w&2$CN(lT{#?iZr5djiDkd`#i-<^qVeH&^ty z7E>go0TCZutMWK`wa@8fm*muSh%iQ40&c*Oih}+~(bw8{T6Qiq75FX5Uzj+)vh zx%epSEl?k#eAKFtnz`vw;S~i`%WqgDHSPV<+GF?_qa9j^!{~3d$a7OKk|;!&E6+qD zM?5n<*3WN;C&n+M-qMKihgid!l$%YAU&>Zy_Ml_hBgPwOdi2D&MEDk=ZJS($HJnYeig-_hQC?Ynt){LI9j7mMkQ8SS@xcc}VJZ8<$_zYfV(@ zD&k(O8iH^-`9|t$IHx6`UOU$kd#60t-p3`?haHmYPxIbJDk^RAyHzSnkDTh6pj5&-SkrdG@4|^ODJpAoy_#{P;X9LGWX#id@xdqm*w~YUN5$ zZq|$KX0485@U2Qa2r2Txzd&JUdJeiw`c&ANh`cAvkA`(uY(vH~1=SCwM&Afuevq2l ze3{bXyETg89@P_g86{JiKREi{cb*ajm_SX=81XMyYdyRz{;Skmnl1k8*03f4W!vKK zL0>+)@@({|fU9&Dt&8T!SF_^@BcfOR-8 z%tWpEu(daxJ@_}0?7^(BNmzilYlbmCK?>7gg?p$b#O^`A74Bq}mz_r7jr!W;Y0iA8 z|uso0dI#X_nbI*F=*Hod+1}XbQzZ2 zwb66Peg206+f$;oX13`*8BKkn)@jpy0&6sW#h(5C`TA@n=RrM$S{DuA^JuV zuJ%NM|3&`g_zL$tpF=WD;htCeNAUqojACf<33uAR$v@f{rF-}!;x`BnrKM>!;yq9T zpm!rJ#`Ydufrk_G9-L|mN#QT}I0g~^0#oKm55Xo~e3(7~Icx0m4-?o(;}dw{^-Lh4 zMo(_f!k`ITKNC&La@&NLif3DrOkvSTIQb#A7peOw>4T!vh&N`HTPQ$}#SfE%fftB@ z<8rFY&y#v<`cl-W)(0K(^CLvoF*Ym3yq^`Im3oD_<>&?wbu{26>Z84{fDS$-CM(Wy z^;W)74GQ&Ap&FJ;jY_i;)LV^48wT-esT8o=#gD83_S<7XPZ(goK~3$0RlEUqoZOHq zk*EwljmR}J$SRg_(Cl>2u+w_?-*w;isVzDUkwPmhw8x#yM?e87Mty2 zsnu!c>uHlQ?nCcBeTEPq!kK@@K21!c``eD%Cza}OPsC(P4^Hda_xyi*KBHZX~bAXBZs?y9vhTs zM3N=mW%5{RE&|D#gTaDkkGsz5*(9oL=7MY3}fpYmQy!(jB?W zM9?{z-XiE4)_)tgVA2s$V1HwZf~5p9oSQQVk&2dZQWW*HW(<;?vnW!2q$pD>XL3Qp z*cz^vEnJ(n*V9I4DYflQ=Jd5LpJ8VUM-v0f3(*0iyM7e`XrcWGONWbo|I> zl!g26G)GSTn+-S{mB?P|U5U;Ji8bL~gsyzD&%+0=L{p6q($$2s*g%VKIK^16UXDy~ z1^L7zoSEF&Y|&n7e4Or}QU@~LrI4{v(X)YxcTWxz?-(BwADApArqp87puxz+mk5%o zar`kX%f?TrC$T0req7X(udt$Q?Vwy~wHs9=7 zY5#EwbwYSJNS{qpOM4Kvc&Vp@{#Sn%atZN)N}c zOicUv--(2=9n+qpR}+b8--@2b6u{fjR1?6dV%jbF%heF_h>Cly+&95MfI_y1W1Yeo)L+sG;R%D@2jSN-+$=a;4mAHj2f3q0#OH z`FychrmJ|(%1?7wqN=&Pdl3OsBD#u7C_tLFH5dFuHg`!qQZBZ_bqkY97z_L;%9PZI6k`Zlbzh+9DL*?2qG*z^QC|f(z($e>>(bxFBqx@Fw&r z?DGY1K_h4eVX0NCBkZ_S>9i}@`ur;s5sOblmr0+Bvp*5lgt@@5xcRMc?@5if5pMWX zYHD*sN-NwcQQYvZ!5&v&@!8P_QD8B?oJ)u#{)Dv}b6bqOe{_4D>-K|xpypy<#3vee ze8KA2B!X=F;^)wpk2XB};#bl1u=hpH>v00Dk{D9lfgqUT6flJZB~w0(;9&Vi>M@gH zL>lvBSe{_STG*%{2d9X#r^RxsP^}jmu4bqAPBYrpm*xGhP z^qh$i;}=f73L~7qHFFZ6=%BSvmSM|`izMi z=8UQxt-(?_^Qfi4%A!#kLRb)vys_@_(MmHL>wX(eeX_!7tb0uAMkB^Lg_Pc-Y1X!} zu7rmZGuE9pN~$7^bBJMt!Oo^dX|%&tw8Gpf7*RLe$+<%+S7;e24R=>?!yO_ywQZYq zpRJ_BhNvHH6Mlx6h?I)v?!IMYM2A!TIn)Jb(GzzGmQ}oYmo zzI=4&+2vn~rrCFS!nk(&)pq%4rL@EFo&FdQ7@#adDAO;pR%x&)A$})TS}Ql(_FjiE zi77GsLHenxG}MY=rHaefpz}A%%}TyeE)=TOVg*Nle6`VLRT>O)QHhl;=EZJVbg)I0I1@D1prt%QFOjlZkH-y zIcV3Ll^U*}%cBx~wNozC%17Sr_t#@AOW6JXikjM|k(747e3IRdNic=Y?6$uzrd}BF zsIdKg9*rEfKYFZd5T+PRvi$3gX-@g`Uc)(MNXMzLKF$*1dIpkTm9q06LC1p^X2 zPnZESm>+*PHTp&v@xM`1n-No*AGbu-MR5plnIO-LJ{mb$B$y$8-&&QqL#H~ZypFnv zJ*d3F8o(rqY+Lnf(U*@_JX`hK(DbmkYX3n+>g!~umtY+=Ny;};9i9wx(wHyD5(RTM z8l7rT3)+oZP%M{lPN)~kVHGCILI~qzJ9Q0`yAuGe?T$p_nV2(v;nb@zNlLXp8Cujx zm?WhYz}+a>B>6o8Br{2VpMEiuB>Qy?m?TTW5+cK2(%B@ZlWdZ*yGa-&FVZYMvfpV+ z=Gwtr%{ymiW}E?oo2{kEsKJrvO4Z!(J)f$X$wIj<>T0z=aSLT@p^KQMnO*!pBkN>_ zH#2~6lL;^ei%C>7$VJP{Y@XbTratNGG*6zx8ks?mCz0AnWFS_RJ`%D%{_M+qB58^N zT;(6dR}4UmViW^7L9P_K8~d&3_Xht+V-y156Ns0s9wen{G-5+mY|}fN7Gv9x*WlsA zY{;iOB#SU2uV5TuL>`eB(u%yrVmvecQ%)Z{>G1+BX(|HDTpv{gkit#{fi5C1GlxRJ z@{Ka8Wo@Qt<_I>^-gY-mV*S%e^yj8;IJg)-Ay}H;HCP(# z$TcZYb7yWBiUI}Ah45y`lpQ&Gg&S}B;mud}5AMjxe{Q|?lBiH>ltj&NS@?a$%vnIP4DB zT)}#bn@EI_n7*PJ16Nu{BU4KC`qnkKu92FQkvo1K-9o~kG&^U3$Q4WS5rVrozzIld zR*#QaSTW^IwgcQ>GsK%c=n~6wfcp%ZW6Ei!VmUyi2pd)Av_}4afJ)!55jV!lYzLv6T6rG|L2Q+?O? zAb*?*@{}RvE|{MxNn9!lUf63i4y}z~KWv)zz_S!#%Y6kql?&8e1?m&@rnuK@ukR=05L7nCqNWoA2w`X7z^7MPY$*(7$3H;_!Wlj+hbw-&dI^{PsWGs zUmk7Po`BPY#=W*gHjM_}ocBoUHyqiv(hs$1q)?Cjjp@ine2QMPOZqC4&p8-sthQ>4 zzQ;=whGv__)xAmz*7Rd2-i4Md&dcROvD!kG8_fCba-q|x*DLu>KFGI&PN`ieb<(=J z-E+)6XF`4{P#N>?JU`|`c z?^MJ!H)oL7oK|9s-DsP+LroH1VPVyb2G}w(w4~ruj45dyUS)L{k7OccaXPeT0mvF< zhV1vIyf!E&gM^|?T*8--Q28>Fkb_1YcaG%C#Y!Dn$dsDYL`GhxUTCGhI`fAp*ZdsjLZEL z3G`C*%(%aoq0G>W9rM>GK}!~#NCcgU6aAtN)9LZHv$z4 zC-^S?V&Mer*D(-Iux)9jpDu)8YkUa7N`Dez13Z@r)7c&@?HS?NvxuLS(N+VqVLsN@0x6w>70mnyOtu~KzOaQIN5eKl@f(Bc(6$r47eIwqO4({y| zNXKp0G>r#F>v9GG9Na=a+X5oTO8EcEt<0{mfQR7wbI}xTQPX8lXp#f1Wq&AiTE0@ zHQwX={dE6~qYU7`B9+r(-xmC{>ny_$`n++DFXx1*e8)4@FCbuW-8!SY6PLNd%#rKni<-b>Ndm`e1k(Nt5S(-li5QDD1y*Rd69Hu>INv_NiNBS10> z&?XbxsbRg@q6-JK-$TQ3Xm1eYW5D~p^ggwJ&kOH&v*nlw)0y6575WgGP6Xb#T$iy( z62wmc3#A6LBx%lU4j_L?0r^Dskpbc_PY%Ri93RBroD_)Hu@xo(*s%ZD62r6IZ^Y)R zF0=n`c?}rICJm?)8I}J@X3(bB}!L zN*9SjRKRa}Fq@m5mFm!0?k_Y#S@$14cG0Qb-s0p+$UbSUq+VzT^+vVPtQ9KdD(*e6 zR&YHA$`m#bI$x-gZM}EXX05R2JC>IY&Q9gGOQ!f0Ke@+*2b+UnseN@HH*hblEH3+dYb^|h;q)b!upuvk8iEVq7LcO5kXsIh zdxwZD?C%Me@Xu7I+s9*la-yvS@vq|4xrPJ0odN6*JsCyjS>TC48O&iq;FG;V;vGVN z!|I6?s{oiCy8BR6vGtQILz--}OjFpmGF;9`Q)1Kv*yzy}QsHf3Yh@YP+(d;KUlttY8mFm0{d%quTJ^8r!jx)1eb{pE4AB3@ z=tcSy!)m?MX;nMTa=RSVP(H8PtXIOIic5it0n43_*Cfb9cOlJ4a@Vy(%FI>l)jP7G zySv7KhOm)8j8FR%Y;({8h4pf>p}SLL{K!os7DQUDOi!lIQ1X=2D>%BbH)3$+T>f&>}gD+79B97j!z0COL>7f}X~- zZS6!;jYU&Ah+Vr+tb_Pc$K1TUxy=g}owZVxiVz2`t;oOJASVzzx6gDaNoEq1$4X1yL!47r?Yu?C>$0?olgOTY{6pYPx5*mt$S0Z;ck4*}?oKG_@Vf zQlX61FW=`M&*wVj><*nzl2eQ@6;lG=|$aa(2bcYEhi2!|KDj1DgCMc`^p>~a7)XuSLNCvyllZT3}4)C z*55za8xC``WM-S46XIr$-S>i9ed+of3Kk|~TbB%{Fm=Ll!>dzK8f$KU7j-0D{ zw*Uu<8Kmr*6Zf)5Q=sckf_9i2E{3gc2do3@DT>;|ANs_9h%+x z>jFY@cQAc+o2?b|k&sJS`rcZmr?Cp0ok%S<++)DY#TgbNbL*FhO){3xP~b7QF9 zaEF~m-%rNlcpADIlTvbMs#6N{Y>q=IXUD8rqnzF;v}DLw9fOyomISGhca~dbIB-^{ z32|=TsLK~^s9E|X6`GRs1*+(4OgudTO*K5FOhdF-S}U1lE|*k!QOe(iBg2VlGmdAs zww;(--}i!p39K^uq+MJD%oEP+hGT{NwG2%uUoIV{?5Fz-G)o1 z+s`4`WY`__bH$mw%gy5ZP%mk)>iH06ub8(=JMAXW$sc3(z4zdsP}fZe@CVib6le9q zB;qhr0+e(3tX>d}Em>^6kIZ@>!!%Ym3c!JH!}g)x$LZM#03u^pnk}b#+2cA)k&p&; za4e@nbfb>ox9D#L!qsRQE=5%b+lWQwdDPUlsHCi}x#vn-0YdNufI}%!P;nNQ2K&22 zYa|+R9UD}hK`zMY;$lY*Kon{bYl9=e4$_bM(g7IVIA|J3pE}miZt<335>$t?GS<+V zV0?{*EmM_BFN5Dq{rF|@Tdbktm8xVJ{6Eo`k2yR>-9JOqqbY;QmnWgjw4Dd1#Ia&2 z*<9+o@xnTlNl6HBn%Ex#7(#g0^Tk%!2x_Go3ZT~!HrS}P5w1}}Vf0e7+D=`4^!F1` zqZyot-%}c#p2I$!sOk6H=rUd>@CvGLP*Yn_rOXXFZx>EQs^E|=fn0S+FE&4yQbTX1 z-HWs-`ug5G-(b{z_@%X4lhMy~_Uq8KHvCs2pPx*hOi0%{5q*ux=VzknVe>hwZj+>C z(Or5Hyo|$*3zOuV$ucjE`7@wYFmEAW4~wNvxl=9H%R#f)XqAc-0Ni93nYCMKO9%fL zUHagyF)#5zCgzQoTGXqs7E6sX8CujxSc|2_#N8;_T6_aYg~>;q9gA(P>T^Ip`|>e5j)BMU@0%*U5zfFuKymAhT{dXg1xYYNa&+hvyG{wQfuxB5)Qx1e*3VnC`NAV>BiBXJGANSq~{nPeS zzQ#Y+7!^VJ6yoKXvQ?9i5(e(uIdqIHs#9$?aiQyE?IQ_HZNKo3;zOGl zB|X|s{=Yu)+#3UJd_@JVh98o=1`DGB<_W9&H25_)FNDXCvIvK;~)W)0yt)%ifb?Ez42kgYG!X^WUNp!m9!$UHQXsVG+x~xKrV%YII zjnC;;S~B-JMHn>v88%WpGT-)RXnhw2WW}kvRxOp=l|~ShaV1{6h-9V~?g%VY3awVD zRxkbv_%mK679>x`CZ?x*iT;e2paZW=iT7u`FdDljK)lY^Q#OBw=#lEW5z@x>XG~oe zEa5PO@Q0|{g8oRUXzz&@<2n}UEHmQO_)}_X8w)3!BylI5=yKE1l|@LWzcs2?&fbX< zUrbe?9IMt+7%YdBO@){Zmie?44hIYSqXaCym53~X_k{2C-A;~9`8hOQMBVVP&0TiW zJu@}Kcg*}uYIxGVAyPB`o?#lhz8Stwk9B#74>m-g&;+;row>m$6{GtOjly?yR;*3Y z#&@mpZ6;G$-pP)QZ?PqsJ?PZs5y<}+O*Mg>(z)!C$aXP0!EBW58KJB*V`8l*>+GzE+x{|sV@>6I5~M`FCqlT~XiK$9qY#v9$d*I)bG6wH zk^kIoW3Me&YqfgXdYpfoz&!*3k*M=A_Gx0G&Q+T6B~HNVpTx*nVH_~zqhZ4llErwY zknreCI2O|KDl}rMt|=|)aT;l9f0s>KHfa>6v}{}BoAj#3)+I~JIkrTzhm_K?kETad zTAmCNk5FJpOB=Gbv~;{5k(Ty1rnKBf(lRYsV))eGE0SFGqR~KtsUqH`6eJci!wxc1 zL!`WNTAGjxrA9MfgB++9ahXj}Y&9y#tSuMYrF^?lXa%XOVD3twlk9TgEsJQWEUZW$<>cQQaaMpgVubGHO5mYP<$T~RdkRY&jNX%q3u8< zEi04MT}GS=Zy>@rMXVju+Nect&%&UoMen9l&ooP2rQPi(Q9!Ac4bx8ACOzy_@?fE@2f1d#oW zDS%#dKhnNbm~?%HNP*&|o_;^hOGCg9EE>$H^8LhW9#4Qo7DDB-#{@KDR6hI5$*6p% z2zr#Fy&Z(DPPyK!wW{S-snA3SL#N(u*XxB&r&cSZRr%hSz=9*9J$^OxsmNdba0*3I zWX;j>K4l!lJGjo7Sl~E{suU6|`df+R@=r`r8czahyA^q>1!`*BBT`0LUP6im^U_DT zBH|z>?+DADX4`7)Z;FfE3HNW z^*+KvsZlKEi=B2gZNSaL(WTESMl>l1jqo;MLd%dS-A@hG5rW%GO>Kfp87)_h0@`lA z0k`+vJmO2a_0}Cm6z`+R+r$IurVW*WJG?+tu6wwCC-v&|O?>tE#e;`jX%@J^COp)8 zHr#FObCj>z6D}XpM(%N6$rCq%pqK^bCi-ax6ISH#GbusvuA{O%#}qQIRaebi z*p=@iSb!wd-AB{nu}%|i!gtJ60qfJhV!(=k;or|i1(#=Fbt%OxNvlj^);|Fe*C;(p z(h=itB;p#S>)zdHnls{hp3z_?Aoe_zG# zRpXLFtLMi@G*V^2NyIX;8`k-hmXS8wN3rxBNc#{4ICtK#v=YjY#gE}AC!;8OZ>d8X z^K<5U6feeMU6ZdD0_r+j#>-bTV(g<-PwTAS`BC%L_QV4d&HK}NVOJjH(lgTgMa@^S zM)8*t8~JFCF27i&bbhtm-b1KYM_lANakvroRU^1=9s8KaW*G60+6zch@t0cCRo*3e zBOo7+ram!aqFDq6UcnlfH3Cpuo*-_;QbtwPjneZ^@z2*6*Y)H{&3BW@Dgqq_)M5OP z$0zjOYIm3i4Rn)O2; za~w}p(J#l1-eQ#L$NE$tb;1(`?~mU0g!TWqSU)?7_bz-PiCi;`aaIHc&Qr``1b$wK zg0!XCIbQr)Rh}1;NvlZlfcQQ%JbvB6qoH`OCYIX%9yRCMgQL{;53J5j^+C5(C&qbw z7hU-_CQn$w&(KseRHuvcBA(SE16iEcXsPY5(E_I*a{`b`fMg_T)iU=3I7P|$(|;C$ z*jY0EOnN_=V7e{nYD^$sfTj}xva4jg3(Q9FoDF0p+HEOhbAC_j+u+O9T)S3n7T~tS ze>>$?P;Ime0WRDOE2W^*DzsSe+*mp2>#q;G!!U~1l7FfV_u*cY>Oxg5N7zOmN=~$kd zS-RP)cMJN~O(IMTt{>aV(@}`rP*p!tHpeU?91_7N_Z89kLwsn zvXc$3Jei#& zbGV0KNg4qR#!NU+{#ok9X$<*J24e7n=|ZQ+I-pEOID?m=W>K1JX4lMN!fS+gTo*2@ zo9WVdQIZSaxE$zzPXlq)#0q!(lr;qtSGrn~9KiDlwo0=HgM;E7=>LSK+LoCz+|i|& zSmBNky*$$VV~)vrOMgZiev0Yj7`BH7-;K23~dJ2g6g=cb#3!Ge>L zwIjLjkUsTulM3Szs8RHKG;+kF(c^fEKGULTnz@stPt{18K626Yg)|hW>9zEYCe$ys zW?`-<8&T)jLd_m@+?QS${7_<2}JMAcgzv-47Qgg1k#ZM3DL>JuDe>yR0t zYJac7S^uUKydr$4v{_7ekIUdg-HYYxq#jQqBfH!@HMMuSls;6I9c}Iw<=NpP?nk+8 zcd)WNK$OyMa$DlT@{s+Sox24*b<6Ca*}G--78ZqkiwHwD`#GKSD88dThr*Mc9J+}( z6d%pOU6evspMjpag(bsn#0MSo*C#>zEjW<~Iuj@QMS*a$$up?iV`fi9 zxY?wg(A{XdH-OMs^|;ySJ$JKxo`A;OZ0y%D;AYzn6Y25_E>MYcp;2YDMU+Xy^(w0u z#CjOMzMC|ZzMu$Ilu^Ilp^%B)w4$D6kWH$c71g8m^ zOddbA=-$cHE1Qnu^WMJ#C=>H5=!C}|3ptD_91C)p!n4r32(L(3iFA57JIKXv3Ph!G zDim0>9A`jw2U%_f$#S`sMHIS(1sa!~?#baN((xYA9l}m6qUJ!yW3*Hln)YHy7lKO7 z5QhAtOM3w4Z-}`Hvq!ZQv`Q^x{S@j{K{RNVYNbLE*9X>HjYd1D!R$eo%@Hxfil$#S zw?!|6IZJg!C0{$NaBgvX}Doc$uOhH zC=cm)90ufj&Gqz)?KSMzF|gO{7%q2Pdyz_;Znt@mXSd<~Ok%&;$mN~v5K?XWi0?Ri zi7GUoLaH5SXf-nBs&~hs@q85M+;R3q5hCiP5h6lPv0rX{7CNx9zr=4ewMfcP3QTe0I5Dy4cDbV~V7 zty0d{f@Zl|EtE>NTD9G5)qWLfR=>{+{uDJH-h&RjCt@>!Pp?`1u4wGuJLo6d3O)GG zRI^(4D3IopaM~U#nM6{f(kIE8DT+aQ_t<-}628ZNm42~3mi;;g_SnmYxZoq)y|T2B zZj-&xv&o8%Cb7$&!gtxI$D^{%{yZW+z9XdCX4l?l?#(8#dbe2`&qsvLZT82}Bveb$9{{zsO*iLH^A>V2*!?0qj)fOxF z+C1KBd##)!B+icn-qP%~kD$Hw#_O*^MlbHBUI+t}kr($^Yq#cX8|E1NQ8Q%^F1SXR zz&@Btm%C467feN)@KvcgyZ6plBy^|nS@Gi2yFVXwk_F_8V!C334lC_a*sM3&%|;!G zRu!ZT7R&g%MD>oFr6P`my~Il;s%bBkkRKZ1ovv#m#D_Sm$GlbWzt#)?6dUx_M5Uga z+AZ6zzCk}S8oRfPeojATt*<9<5hes3;3%tIDj|BL_$@*j5HT9ilN=TLxBCaVtro&}^1#&0;xUZU#ZSQ*2biTB%gcBN>&*Nsshd zb<_pgq8Si-&!SZx(>l>8P{V>#8I=Uu1n-$-_sJknHh4-i@Z3ha;s^ zon)*X?PodFB^oHq<#!V1XIrK8w$G%YHUa*txmu@EF4coZr_n5x^I<+{!e-R0wkn-U zt5Xe1z@)jk>(oM&EIbiJC%$c+K4oz)5iQXodT7PZV*Wv7{*UDf`uXKpGW0E#J5Y~p6(E3=63TJQBRaBup`%+4_kZrtKrU@ zk#5p- zzZb2169x^dAp9xDl*AWCdd^Am z3kgj1K*4d{FS*c@0?8yOZ)((WXo{^hO>)lZ{!x6%Ibsw;dsE>L*mmvW@DK8jHAZp{ zpMq(1(B-?yY9a^h7a%1-$H-qh#h@D(&ZJLT#7xLP6~1QutMesORnz0^xBR2{@Fhku z@U@-`R7r>OPqnHi_{SRqXM7qHz}d;#Cg8%@I`&>JP5h-+Ht?^^hp)Zq@pZd@6d%6C zC`7L#=sVz#00Q4xeETT^DokexL2n~+&lcE_z)*XF%ah!j34li zH3r)F6efVStv+SS#dT-LG>|kK`(9D;7yRJxA^3CY5&RARC_V&>QA`B;(o%oqA8QN* z^C?UK!J938*oD)L`Zp4h=0k2%b9I_eomMJt%skdzPkK)6g7{$Qe@i+6hCTK16 zQ>|vZf1EKe$A_N)=FV^(TwLheY<(y(IPzRAdzXLNJ{EjvdL%y1KZ*~DViW_3JQ-XD zwOX0syZvL0fk-}uu@IT2(MV>v^E9M->ir}1+KJisw~U;~#XTu^0*=DQZyf<;rub&# zyoejTHKV^g#=)rbMR869!zbRAk}+fac^0m-W{e-Q+Goiae~D;I2C-}z>1-vo47BmIar>#a&d8?+hYEdUHr=XYrD5~`!fdinLz=_evW_&Gbg(8$ZrZ@XS`k* zZcqSVVL=wXqbqRW>6s5uFTWY$f?!d#bsojX_RQzRwevH0x?6JqNn6*PD7(+kcc`f! z2K^zT0%?RPc?{1D5YWa7$6k5e)j3LJ7d2vOE%baJ%JwhMvo8>`A1?K&0xXKlhE!!% z_A-;Z8s%e`m&1LFbP@6ZIj7tXMeWpBxPTjf!yh$V&V`*$x5Yw34g?2ti-X~?+gyMZ zW2L_k4u`q9Id+7Zo1^lY!*H28otq=UHaE8;hmH=+cTwTC6%27d0PwUks$A z!HgX0zf8c5bfXN5}xI7iA!*)?gte^_&>jK}Com9tq@ zX$*-42Q*SM1o&#Mf=jAH#0{77rDnMl)*4~8Sq*Bnpa_S2yV@Ynp6k6VsahfQ2gDTOcdDwX5wlpU`ixpAJR{xD4V`y zcIy9U?@a(CJF9x}NoMa%lF7c4N&@Mg$xNsArAZ2muOQXb=#dplq_L2m-Q+fGjEsJViyG@K_!wBJvcJ?f*O9a=+!?``x8$Ch-Zr zH>tk&e%m?cJKx#9a|-w$st3@AbSLzXAvg2a^a)RNNM9KrOzdJEEG%lcCjxxY{`h*iwUJL0T28^HIpTWOF+&o>GSwwFCKK{Cw z@qs(>3o$5y5750ziAJF3QZ0;RUlV_bLuA>X$LYcJ4WsVEpwL@hoJS(EB_zF^?X1pu z%iPb*C>F&g+RNVZQPhn%T3A?IfnrkdAi2|F)P*y-14RH@#OhKPg}=t=0Fg>U!RyfF zBb+32NB7X_LUQ}!>RgvAIA}k+(4D<|w!4ZG@hEpzv-mYt%L20AB6onZqe)I>WpQkE zL5cl*wupn1Bg6Aex&S+Si33x)aIV%&Ps?xM4~McrQ=gtzUiJO*CtgOxcKr;T>jfvo ziG3&kx1mWEPAMrao+`CNc?B#&KP(N+ad@glzfulANsa-k);fE-)mi+(sYyRH113>y zX1hb{&ONtt3sRA|piQhlaH{DwI@w zh{H1Gtr9felqOy<*3X;C!L6~xpsAW7z-L}KAApDrDG+> z`EEyFu07^Zvd%$MP030b=Nqs8MlG5!CQ4F?{d*zyuR@+tlFG&hkY}VDig+JN5@>&8 zW~rH0rJs)BCcwOp{XlB})STp`Gb-zjKy(#8fu{=up2V5js+GNZrQ7h^ey0k{npZEC z+r@ejc?cVwS~+zt!hd4>)-BtJoMzu-pC;ur+jkI$weX@$Jbo5V5N~e(xKdUSlq-XC z$4Q?ZS4ELUD{w(*sPI|92q*a&Wo6LSBZEB(OYEg;kV^%RWXh1BEXgASmj|;WDjh1a zO9~^Foh2|_^0UzAdOu@wYP3?>53NHiRhA1RU2u7Rb^%kOFX!PcBPHzUWZ_ZV7RvlY zm$KOi=Zsm`S%w)3ekcD_M7b|DQEE*6Hpa}beN3iKk9B@&@M)1Gb@d-KGsjjz2U3^~ z{#NswxB7HbE4YNU6JYNXh; zd|*@~Y~lP(LQMXt*7E5QjnsdiMsB)N_&50nu+MsX&*OdQthc{0&iZ{<;9R&(vA&;i z`4n6p_MV5225et>=Bw24_?2hAdPD~#x}`%&b-0d05`EF(r~1l$P^ww!wG{q2^=`-_ zmpue*od};tti1Qj$@kVo7U-WxBbTN?=Wr&;YxsvO3Pfa*rF`eN25~aF>_kG9x7=ls zBM3{OSCn6j#i(fCQ5Gzj0;|9(Z$K(Tx#R^Ox2X|yLLo3Dr0jvzvohB4NLU-dZA)^{ z%2xFog@rRMy+x0BdjZuM-=Qg`4bE0>qD$(ubG`b2!1%p#huTe)NrAR!O?I;CdBn#BazYG4NJyA%TON}&*70xiwf>KTGjvni*5Ff;w?Cg&X zRZv~i2V|oxbkCuoINRKaPc((%K5G&t&&$R&pUu{3_F&L)JlFhXG#w4sWa}f~o7T5o z*cS>9hV{(`E%0D))rj{YiQN9id3wNK5JZ)Fm=+VfK-B0Y^>G0(UnVtbQqgI zil!Q6Z(`%*kF~lmY+zT|j)=Y*2i;2qFmdeMSc*_wPBxG?o#P#oSp;~R3hfhNSoNDd zztJnUx}9FLTCA77a;ej7_}zB1+AJ1pJvb}l$E6J}#CtyhH`x!aJLU0X-_KU`m2*3ug{Ine%;)=YisySk<^gn#gTw|dpdUI&>~GA2 zq?VuVFj&skiqfuh;!vlwEPUY#0WiTAnmurVPNi6Hw*6|UR%#V{zTd1=E3InX>$X$# zg?}D3U)Z+-3z2^DGPPKXpfWDkveqnmO!va6D6u_-!R$hZ$6F(SPz0ha6013avTs31 z8t(@-0WRzgCJVPO%*`TlIym@AD27A3y9i4Hd9}ScI6e$3JlGjzHBdG%r@eEh}qiT z7|eFx0NdRXj*s6)*22{2YFYATPA5hmqn$oI9V0SL>o?`H>~^5@=mQ3PO?g?fcABAr z3{N)DBppzZ+Q_S{j^Z~Q@gQ*#${rn1xjdN|pnvH;L%S1`3FX(neuq}%(7%4qxniA3 zCF);qM^`xozW1Z4#-on6{xt~>CK15&uRD*?7EDdE7dSSnq~H`<$7h|`)ejIiJ(skr zv?&>cI@l#-N2{n3&gf_m0%@=2m0QJnz1=C+tGG7OZa0gyQngd8c$HqWSxu{`-k3nd z1gC6%sApMuB%&2m{!u}u(+f0I94ffR?ZH_@0wSDABh*a3q&{s~5b}^c29PJpW zur+Le0J?@$Wdj$`4@p(_H-=O-Jglj($DA@Tz2i2XqUM&9PIT6oMNO^>q;Sv9AiZbj z2U+=!+w3OlPJTT_Jfp}lOHtuT#ynA5`LjIq@#CRt;}iW)YtM!!-RiHbE`w!h*^`ZD z3LCSju@MSq?@?1boc;f`x|8?QBDol6=ZAcO6Lh)+msEH1KJ=86-L0Xi#_m$powQ=L zxxJ1R)ucn#stNn-h`BlIPCmm4mc0ABf&Kkd^vw5nhPsnSBId78f|e|HA`x_^o#( ztyCVuFBCKWHgM$4-Pcm+VE~NJ6ZhLu}!HD8Oyn;sTsA`S1obb@ATFoV-6` zoWjh>d%|u$Ycq{8e~2mLwVLmR?)kbh$(=i@`R>qZSYX0{_*U@&dxsSSf2(y=-Rp4W z-7B(nq)PhyNcSi%Xo*pbo0QJnrnk7q%8_@EPa*!Oa1dCUMxnfWYUlTVNKC-4tMgSn z99iDIGo#p~NWJ$IfKsI13o|{LeeZOeeV7UOnQotAlKsismK=uWk2LSc5 z51$sLr|9xz6l5?VHywRJzvmabtH?RQy4^cFzqGi#BHdR&$^$q9h4>fbMtuK%YRdDR zS;%O4b(9=wl$w=ZuUbbfl2WxCUP7;gVmEZMLm&_gA!6Ta;{Q4Mqgo}%XB~N(BUBuv27AWS~st?x=H1Hps|_B z`iaL3)Y=r?E8QxPA{V(4DAF3gb6x8@*+8|{t$R+$ekX`R&T2FJTkGIs>zdaVPHb9# zp$T0HS$Nm8*6v-KnAtqM&_$MPjt2Sk|AuDAHUFI^5gR$n{?54w-3pMH*zvE?l}i+L z#L;~XO*Jz>y2OrjKu0HbJe`hpbJ2SAoZxj^aPSb!*)}k8ci5P42r@f>BUP1bT=G%s z+v1~Mt<{91p;PJkILsQoreE}H)n?1@w(7N(Um`wwY;!+s+v-v?qU8dS`(ZORwT)$? z&HeBe(wqttgO%l7bnC`suk0OIH9yf2D85pdUqzq_qQ1L0qX#~*d7Q^M+V7%s{4h%) zbqmW{Rp5s;-1|Ms2Zd9EF4f?GSZ(t&eX`(B9-bWQEiO*3_~;bhQQE>I9*PKKOx_%U zJ&RY;>&c~~k->gW4ezqlpeH3*_&_d3BSxI24}>1;YPRVE3F1xw$f#)X2DKJ(C-_9; zKP{_Y^BmDxL2}$ljZNL`K_@T=FSrg(HC~X?17a})W)!pwwTXRyD)wdoTEhWiLl(z; z$N^%1V>&=yfBeao(zJ5IrFe`;(q*4W;+0v&NQhZJ{?pY6?x00*#sM~j{G%2o58-X{ zk=BiGbrVl@w6{d?g*`TaaZU{Mw4v-)=8TaVOJfq#eD|Sal+FoQht}DV5zX5;y6hRo zA6=>3Q)0{P5L-s*XQ)lutD2_m}tLO{SJ zG0>;NX?`C2G%0Py@K1!%M~mJBlT*ntHlOY$;4ivYi~$Q&Eu9V)EK<7ahYx zkF>gEPA-%t8<7W0V89aWJNR2EfUnC$QsS6-4FfIc)I4VBv3|_pgYCghFO7`t@3I|7 z@262BkE0J-T{Pds2l78o#&tBCiZj}?}y@~(?G7`98M7@eo zpcC1r$$2fe-0ILXTV?WHwmFjiUMJ}!zwkm5Je>9OO zjxIb}dT(xCTzSmmDqIP|w7~>WT(em*ZRIRCH6k`yx^b3?lF6q?Zq0;C`dZl1yTQ2~ zSh%IssM`(2)`S(qzj(j}}4=2~mDYbC!{ z>a@DeY897|+of*3=QUb&zuRm!DQj~4xJ1W7Rs98Y>7rx$R4~`4vriLwLq*?(k4Hoi zw7`(v^9XX*Qvf#^v!%Cj!qBjyHu&k`t|gkIUMZA(DHF!U7XP~h(CAyd|3C0?)CGAK z>)8)&@qfVQskZoEvq?m4ae5QK#UDa@&zD>pHeUnYV-jo^IX}}j-hW!7#qXIcM13BJ zn${tRy5kpHm5$f+Th(^8Rc^Q1p6Azke!bGE`jtv*qW(MsTKp74MD5-xLSi_YqE{g? z&=H)p0W(SrMxd~;EEvxewO_H_q>Ok#C~;o+Lnf%HEj#?b7CihoS|qp4*hZVpyEgqm<81Gc9kf`?_KRCJ>WeuT)}yk;nA z57!9TdmcReG6EV49%jED1i`~M@**{dmKW!IS)K?s-$S?-@1c5)cWBwCf;EG5F~yIF zk11xga1w_ZMX2#($l0EDS-ayFE~Ah?sl`0>-_{Hg0B_-ynY5Gk9YC&rt~Sj zVf+dFferPRp!x8=(MK51QJK-n>-c|C0*6&^MG$}yh&`UVF=y1NzgNfL2Leb$sn8Ss z3}M>}sQvd-uMwft=f#o$leNsCEB5x9S1d$|0^=2%qJ%)AZ{4Hx)?X#@*S;}gkF4~e{ zmaVLIFzd*&+QHlGWwjqnOd5#aDj>vVvP)mYtcFHRa^-eL#yrUmA{tQ~jyMORjahwF z^7P76AO2-_>T?4gl-QcpmKE_zZmsxBC4~GdD2#CL!L`IPv}J0_BY}-Y4h!X)4~GPT zuv_&;wOlNEwYJwR^{T#C^s1Fomm=5_JQd~1Dqm!hr$T+0;Hd~c1lYo!3ieik<#A51 zr0`Tc1|2xH6;rI&Jr$1(#_kIcZ*leH@Kj(?wx>e$xLHsp5OHin3Fm{wM9B=gU>{PQ z`_$A{o#R6ZjXgCVD?Ah?wA_ieVxL_XY_pq$Y#oFZF8D`6TaN<$20n%QF9!L#*?~S` zmIz6ZNI-;+FBBm@J2m`BM-zs&XP{9;JRm*R4+_IPINU9>ZYRPgDq8Sm)HjzbFG=h` z6V6|5&B>HJbo)SZEa4hkw%LPDVGawyZ=$JYAxIfZND_q>Sj=JxQ>rHiv_RuAGuNxcgD<6-t`vd3~OPhJqX zEQ7xlG{20l^bH$N+9BroC2DFj&%bzKoX^r=o_mR6xWL;@DTBSN$sTQda$9w^1vX8qE%TMOHBhvik)q)dX#c33vimx~S^hvj3? zblr#Lg&Q|)xWAwO$fQVPi6nk8M~{e^LTatoAvMRukUp-)5_Tn^LOX|OXJuju%Kl>ObJVM_zDxBj8CujxSl^{Z zBf8N9F97GTzCV`$d6?|*_t7tAeP_QO1lIQnREStEOvG8uDYRzEUtT%7Yi)Q@+((nt zhs$n0?2X)<4FB|`yuHkBrSdsU+zdVMgPOryh9&*6_H4L~+2`4$!J8)fpVVL0_Fr|` z3c8;vjLXH3U$duhRo5SM4h?1x9~vNX#h)q!Ulqo$xkmBVZL*QZVqXKa>(WjCbNYZM z6r`CHztma(CaaOT!TSFTU3m63`z#(}=hAqty<^%#h4uec!Fb0JT{oTpd>PjLO&pQ@ z%;0}0n0z3ZW0a1a$u6&!+kZdxYA02A86J+zhN}pU8)*L$oeKjkU!t(S_CJpo#CbkK zh#U`Q2AsZvCW&NxfLGY8YMPE7eyhKPTO4q=a7&vouOXPG!@V!K-pvDq>3R>3r8#_< z-MA3(a*z`)N$fImMUpCP%cD}G*>pNf6l=^Se_!Z}9IORb4Uk&!O zLtl&J+vY<>dlvy6I^Q>GA``nhFX(D`bmWIAO!2x7aUI8$NCu_hPP$`HgOe$^g}+V0 zi;Mr~#J{tAlPB&DoRjoZfvp;>HHynSy^}>W1&1`elUq1CC9>q7YP?6f$8&ie`FQ4* z)%lfq(w+_2kYLRwX%a(pqmbuOkwO0onzemuor#AdJGFM&TSKG)YGV*_dYP0jeTb*% zo5XY!%2@*pXVU`WPBiN((+93C3}%pCrn9)TY;qqbqD-qO0*(A;@N-ip7jbMlLWp$fo7H)(EHn5?V4B{sIi{ zO3epSBk!z8juC;f57K=2UOq`-+Q#Ml8XnoHJs0zuyjnMLv-)Qt2-A1)kFQKTLSFD!Woodx9 z7pvrvNp|=b(>na+hlvh<@gelKD2G4ZDrx6CVnOm$F}Gq0hyOpK11D{m{x03&|BYa5 zxxex|{EN23Um%Sf{)99jBA3HI@J@-{7W}P1c>2k%ou+d$rBjM1`BSN>?J!8`t?FHC z%RbQTks?8;`N1tX;){!vKLL(=ub?pthYPm+%$bHHcV!}SE4WH7Tbb5 zf8E8-TK^{Mm2Lob7w5g%g|+_GXnGvk?^f(K31TMYpk7ZZB2&9bHkS-3o=>N8Y6><$ z6T1wskbJw;t`uACZn5QckT0{-_KJ;qxemu>v)X7BlPxyFsaZ(C3>{FysYzSiHs|QP zfj$+U^d0QeWKVhqr{)s6jF$%Vd4zb>JTR7$7j`PU(@sMntJ_fJkv?$Mb~lppgl z^J~d4G?t}#E>8(Q{>n4outztQKi68TxyR3p>NY~c`X%bcxy66Q8fQIQ{6*+1=NA8U zG+p-=Xa2|p*@}X7By7W;NBL&7`Z51h2E0tok+GsVZ&1%W37u(H_-|F>B zNUPN8BwAXRv4`}o~p zyyJ4MyaH?)(43sTMvo9dqhj#9WFiz4I?`iHErM)}6c2+OxU{et#Upj6lcU(^Z* z#IrY4$eDB^CtBnYuD);6(zvzf3ek%=fSNVG+%C2nonjTCnB`Wp(rT1?O%!ad`Mr9V z68o7%ppT=matS;LR(!BruD-`$a-5-GPrn#LXTR3R(AAXsZ(A2rFWtR3+rc$X=4VdH z+%J!1?nY-$Cck*>nY=Zbbj3h~*NX7JLtwttcJDEO>mzn7w48|Ki z00;~-|C7U*0!y-eW6B?!?299R?9Z$q$8J#VF!Xuof*3 zhnM0D?QoED#o_QIns!QW-nbT9q7DcKeC;mSfLo$~fz;nC+`LjuM@r5nDeF91slVbZ zcp^3BXTh(DUc_18wYwdZ-zfR5POVxeQ*gcH_iB|^t&Nf#ogNu~jrj8NZ8M0&VKqlr z2dg*%k17x09mFa5b!a3hMiqK*0g1R(0M6;*wwhV%x2^S=Dz7qY>7zvGyziuLgwCsd zstxomYakPlx{ol~to6I-%XM5jd_NyT)9gAg5wzwd)V&J&YKfvJNpTqO3*>JEMH7gb z)_anU9z|j{3gXqkI1-~#ED|dr@qMY$tK(iFl-?Fn*>pOsQnBupn)M>m;)BHE$I-+M zxgCQg$u0tQOS-^A^t!~OOa-#Ncm*u&2A1=R(*$=@Iq<_b4ueiBZxc?B(vUav+RPAs52ZGz!HVDsJ6Bg%)G$ zCI1d?J~F*zhkl-kSi|>XRH2fngGt62j>)sjj4_lmg>>~F;gX2-OqepDimy>~)x8?cB; zuW+Z|e!^nsE`O!K4oyloKsAhJanEK2OuZYZff-vV&ho7gsNeV7rPu7w6qgAi8D&00}0fs9wK8MASc33`RED&~3mRf;mSU`eIqqO{G ze+il*i{6;0ihhUvJ!2H^N^iUltH9(TT?2np;BWjcx(S{_W5FK-f3CL|F(NC74Dh?y zEuu^l1e6EIWE6`2W8EmCxE~8ey-Lw#2#U$mNnZAe;f7i!$2S8ysEe%q|8}`1EAqkw+1w)ALs65LyG2bQcku zOm}QVr;~-77gu~9y1X)jUfBn9Y0Nu}a$RI1ADi;;K_s*6`!+tCM=vigE~6eJ&`qVd zfZ&b?+X5xb<{z-|Qko{OEQy+(i_2ra_y(kKXgL(XS+Kbg=UInuw7kq%2M~{S} zQ{(Ug2kkTBGp?5PZ%}AFQ?5+kFWR_|ON~g%&x#!w8|(g<{CK?0#N$R9CMkkB3XRc= z)$CYNsJv=j%tP^Nn_W00OT=LsfwkJSEMDE{p$KHR)~?iBgOLTI3PHtkQ`(X<2;z}>=F`-;TqTKJl%stP+DMlMP1uDf0_)0WPXb}tiW z2G?+&t?b5=Ov7Y&GR1nrti zOIRFtx<1N8V)zoFeWd&pS@<+enbL|)5H5K;s7&HcZCqHWgLQY`za=8<0w0mqghx?uHG!8 zl1-~vZ`Hu;T2&9pG>YAxSM=*Wh^6fIfFY1RhUpAJA#cgxh~@3x-J4xTX;z^$(N(y4 z-xsmqqB45B7Sp(AdKCD z!o7&$M|7M7pZ-XZ=yy^>NU62r8p1zO({ZV^Z{V7Ge8#~%g?nC{6U-sb$-80t4RZl883GW3Rw@|wdLACLFv-iNOv52x1Tx}M#ZKfnlFvgEzkHs@U zoqZ8$iByAI(1?+iSrd{T>wTGrZBpsshfr(Iu32ebh1`PGuSx#d4%!RZ)Xg6BRXUjT zZZy@H^g0e&yY#RS1*teq09qpG?giCq1y3Kr1%pq)g2nKHwj#{!$kN?tx|2G6k{6& zcIwq~r{4B!tqQUOwo53oYFjMuc1K8f($ACvZCj-e&aXnwBH@bZeL=ah0W-b@ zET-*~E=lJS)JE9eqE99^q9mD+)AH4sh(?@DuV6p|nV2UNJ=RYqd~i+}K=xf4yOqg? zPL|3efi%jl_AVNfGn!5GjkY2Fz?x4acS(6c?wxGOW)J$7a-3*?gr*vIS;vXS7f94P z$%BW)wz&{Au5fZt&(>!{7dSD_yomRqGtd6UJoDy`JB4En$9GW0_WqZXqzr;EFC|AO z;T8BhU*J!$y?VRu`|V;6k>90iyVXJB58NMYG`iq>^T-yhW0uP*>C$2?8HYH41Mr~32Jr-q4jpS#6 zA75e)m{?($krl8J0z?>f*lqaQd@SO9h>zLdn0#y>9l?3Y z*WpAERE!Bv<5r8rr&|)Z~wu1Qw>?IUPeuAt5wS68P5?jfiGT3_T(0#^GTh!KEyeg%$vOV#GQ$K-Rroo!xH{uWNG^-eH@RY5V%$!t^BaQ}7- z_a>_hj^$X-)O)DCIF@bC)cdTy%`Kp_!(`9YyU|xphWJr5)fnPB)Qecp)TQ7@5|WGu zUb}8WO^u^<+M&Lv5a_T&eJKqpQ`({aHa{x=kBQ0=+Mz-iG!j=y+>Z7XqcPu%6^T>K zYjr)pRjGLGh7Sh@DvdOe9HrN(*Q?bElBD1iGk1{AnduM_#+)}Mz*jqOh<%UvyvdLd z<$^Q7J7T?_`szaG&bidoK6g?kMA>-l!clIJ)nk=Jx`fk)?6s2Vim4~5C;j1Rg-#+9 z_C1uma&~3y`HBbipMzuw?DG|vw0sl=WP|E8#F=A!-wxzeJQ3d#%9uq1sY)@Ql!UM= z#iv5>Ab5_L5VqV3%@s+9#pxjbRFK`58nPku-%d?!^gs5)sVdAoDoT^4qV{aQNYd3K zVM7G)>A`zU8%MNf5CEH8<33tpNU2RMrG^iYhtSgJ86xBPgifUWYw)q@-`9yWROfyf zpQobHSvCnMbRi9s-soH2l)Uz4LBW`$tUXy;X~*i&nu`Ny8BA5&L zD!7$eZMG}zVyWEgmaAQ_Qt1_0mMgasA((oPfi!-K8dImuk!dfxCm^!r$he7M+tFRY z>rd695Vk$~9&a9jT)~!C57egr{nS8LoBlBv1yBvm;Ktno$fZW9(#93drq?c4+x1op zX&Fvbv12qjFM( ztFJDMvku0YK@>0KJg$~gQvJ>k4r6{|9=x^!`G44r)N!%g@jZO#tJws01#^m+eQ*2* zntI`B=y%dvMeM`!y;z4Jk)OdmfZcI|J7*-=F`vc08#v@)^Pb$D#6f}`w^!S7HfOlX z-1I9mFxL-IkPc*tdmdB|x3|1F&%$2>H5E8n=$xaKyAzGG{KL9AOG{g);4D4A12$4A zc5v4M$#UDRUaM2|{YJ&_mdni|tBz}M7AhVva?Zk_Is(o@rBLU^&5eKgjbC|DfTTT0 z2EXD*^BalCJ&f%~Gaq*C2Yg5JM~-5~eg-Sc6S9j*e}1t)yNhus8h>2zp_S#MoXZkR zqyNb^eAsv%CBHj_oSk4)LJ+;WUYsn(uq{Na`%7>ZiHk3{X_r&XDMawMaZLNgfD@l% zq2SLA{8Wuzq?q8(NCelx#NqHW5)r39+YY+~I|Cp3&N}$@!!q?n` z-bwjA&+bQdtQ5@t*%)nP*VE68A}(=F{YDHVuBnG%DzB@bZll4xwk|<~b)73<4|y?M z>}`G5)^8JCOXG6ZYwL%s_F1m29|)F}_1bzc>&R>C!Q0H&)*qPt2@LHw?TcwkzDEa^ADhG%TRcN^%t4O1J~cN@fKy5nJZ3cjL`rg#ZRb`ltI&Hdk{Me>u8 z&smYgJDs4@eXJC6f>FZv#;QC9_#NoUQ=h(Fs`q50wh zXU8~vGCY69TO#Jxzi=#~-m16+_eL~GCoZH4I}y8Q3wF8JQ}imVw{p+RGe(`rQKgxM5G~KV=tjx8&VNjxV!7&m zLcf>*&3>&$c?Cb zoKgiTW*W~FH#z65wA;oM{)Ci$M$mkC-^kPdwjCugW04ste4pp|oO4;n7YbOH2diDT zIIaNKe;D;TGI2bzW3~DFr(m>^iQ^YJiBrhskHUyTE_Xm#3g{QaqRN!iCDg#6cM7zm zk<@Ryb^-O3e64onvfo)<9?ahDBi#>;P2ptAi>rrcm_(;lqLdXYA?m>jIaqCrQim!> z?y>1y(cevCp^`nvpG3-)#$8Vjs@(~cJx;7d7^(eQj}rPK*F>jX?R86Dt6HwK+O=Y- zhmt{!Cb_@zNTgeyIP1@K1NWr-Q$e(o1EN9>ou;Pa{r&Wxi5rE4aOVA?h=gHJ#tTN& z_noFN1dwC|nJKqJplitM^ATSQA~aGT_XjjLW_B^e&kJ1>iV#MhD!PG6bNaQaGOH-9 zs+nw_P9MgG_voT&a`@jp=*uN*IfT>u&{PvnQ-=Q$o6^KnEl+XOqLs)hDS#BMRW@nB z=|*-*c0`C(v$7_o2(>a5B&B4K28$T7iU?iTC4YvuD{apylT5r^^h5~)kCei z8tP0oi%f`o-4-o;?S|_RR&wscCN|V*8!lRI#j9pJhX2?}`N8Ov7MG{9y z{XtxY=F9k07T`n`>Dp631Z8+M#CroqYxp5Ph%6|L@3i+2ikuPcxzj$K9 z2H&<@35(mMK?nT{>F30ao3S$tduTBiBq2X#Z>Sbl4dxZa8TG{^SOUl8x=2=`)e1tZ zwtBTzuidOyI^AlSRW$9DdR1hVg8Wn}lhCA?oGqAHW9pTe9}-Ml4h(=g_T(o)%)?Uz zOvpJq?m7U*{ipMs_v%~@bEuU(xMnrws~wkifd|69eHv;mG- z1DJ%9P5Bz2FBj=Kl&@!@X?Ep{&gf|6D_E(faS2K$<2-?t-M>1~s7C9C_Nf81nS>T~ z`TP~=S2$ocvyU`L|2n-Jk(&E!Z2l&$3>Fn%W%~7KI!Z{3btb_1s)Jm$&9`e5m$oq! z&oLF75Mk6B`ey(G!Ih~vV5MFvmrGq-45rIes8w4lHyhd_n;W!;SDftTDxewxayA zg6i3|gLJCSd>iKtY$w} zTjYmWqz}VE$~Ww9l5k7 zro2AKpfy}!qBDmi^9A_Mq9(U%E#0I;<&YItxLnjvjHJ8Wgu{doJ`VA0cUNB(q$E8u z$L*IdIZ$&;ufwyPrBE6y>=HdWcniq*)Zb!XX28qdYBBP~JW z!Fa=^V`~WlFR>_0x+uR5nwC3lcvcj#1))SSZxzsQ2-XuNbx-vF17r376aScO^_%qg zTlk0e*gxUF*kcMb{p+dM2wRoCnT4ceKUUMbBVl?cA(pVe1OGUt_Y>Fjj6lZgN4r%h z+&#ck>aMu}Z&b_5))sp!eFFvRIVY%{RnBJ6)Fr@}J4sYI>#{~>m9w2T1Bw7f^fy>^ z_=Q^BbMi0lnWI|V_JEg0tjc1^vV9bZ>@j7d_~g{CE6vY#LOOwPq`|P95~!(xxf)UIzSG% zIgiyB3Y1d_iPHsf*N5f1LAGUlI=e9AFY^SKxR^F3KbPl+DKzl1wp2WU5i1?oXGDyt zX}5narZ44U(@+s4pPZ!G@eNP|W0w4}{{?E!eHRstEyu)mjLHj;e8B&#wv+dZ{ zyvT_L92+%?$JtipKmp|Or{nq)@V3kl=Vf7+vA%1(WmcDcr=X!{JLuAB(U!BQb%$A319FAQTAy#C?5`{wMXf zJGLsOJ3PglG~1Nm^!8(ggX>e{faq3a8o3UQxUID?p;0M4*70e$fcE`94oe;t-}P2J z3X9+H3`Ex>6~iQ3C;mQA*l=LOe*O_tKj|xg7_asetj9rPi3@l8gFz3W(Ixg&2jNL< zc!p$PhI79Sl@2K1FkRU2^zZ~@o0#+wy*k-g-a{5NgpVCdIj(>VFchHTI!VI{leEBGn6nay0=F`l(!%p*&e zgs7e!4H$ce;~?9UW(PV8b)0#3p{XVaZDQjjUE;9hAa>;K(D$=e3MjbD@kBOBFr+z>_pD|?fkI*p$Y5!oLSOwuu>NtZvt~p&z*PaEJR8z zQBqPA7S1?NQ9A@F4FPA-n-Nj_Y3M5_wO@>;qoMW-U9fQdN=*Oc2qFBj{1E=!$RI4m zo8u>@|D%GiMZVu2A#lH$AGqHi8E_L7&SaK*k$&I_l`1e6MV)k~o*&4C+k+3av+gu{ zKO*VyWb~C&I=lc)MI@o3r&Yq^A8xqd$9UXj+=7;a| zMg`yFES&v@f~?$oHEg1n$@J1NVC)18$;lwuL#1^|Gh7{m2X^aOTzu9KS}LRNL=scBnf@$m%Ha zVm%_kDoUSB%Nt%Ex(PSR$g3G0urR%$xXvbo@{V!$+e(BbZIb3P7DM5 zn=U;!h{14xCZ`E(Q+tjCJ56BM>e_^z4*jGwfzxdAX8V+|UqDk0_NmeYMmaxY(*$zB znw-bU%7R^Kurhm7njPwk)mYiZ32+IqGIy_{cH~qF1}Sc;Q8bk6;sZ@UBo4ehMX%y& znhY0{@t^Kli>qle<~6!e;>E5%04Vv*wD-_2b~BCr%6qYkUA75d>^jB66|4cjf`uR+ z?T%OYP2zR0nhyJkAu5rt4A%N92m^0@f@B91PEi{18#p_>88+KTEiv zb_)ew-%}uVj&um}R6NCctj@*HV|<-`#q)?Dl8;?b`^%u6T~aD$ zg1Q!i!%~77<%OXi1UOjtg`xi&bagy}pG_FayHrLhom1>@_z`J8R)oCuLKh)V^fO#f zQo!hMp1>mD6)|SU{UUbvl+N_NadjwoOhN?l4mJ6UoRfE6_&E zIt5uH4X20uE>vHRuC^lgPLOhdUw|$6Pg$M4+ndA7!pdTy?NfQT;1+Cfb#jzlD)OBH zATl0(A~gR2;*mgvFXk-H+G?kX%6Yg3P^!18#Wt$vb*jBysa~tK>L{%4(`9fy!O8IP zx6SwipXETB_dN;qLQrlSNI=2u!j!kNvOG0S5z?sW#x!wpWqGCT`pk20g>GIOeqL?QO+l^W-u@`=ised=Em)8#gv7w|#L@{X zawVQ2yZ|3dplte7cmY1bK27ujoDA)vFd?ENqZwelE^?idChRo`zV~ws`Ji=^@6ltO zzD&NiJC^TR!H$u2V{!+O(wsQEiV7gLW^6K?Y&+tK3@By~I{X|g>oA(Ge@A2q9=$zc zvd$e4pxoF2HpWx!fU6?L)&UjT0q$Of@%Te2_LVRmlZ2uhFr~>-Gf7J0@mu&7{J555 zk*9o^=zm&!Hq21}>2+AXzDwdMCL~(DmYUk4)kVWl-hDnrQ-j$~8T8rhU9Jfj$x5G) zt_T#nkw#^psILRl2M!bt95}F_7l;bp;W8Rt9Tbi;W04^}EosFnBZ@ zB@a0cN?yCws@AS^vq!bK;|aM6u~i*B3DDQDU)c>2ZWLjX#aKe9!?n3soI4kWdY#zK4ViwBly8&{o?C$%;gQk(__7y=+B>~rSv#q zH*12k3%}I-k2vSwKZ-6qn`_MBAvoaxO<^-L+)CRd1T19hGxKB zHNQu{=uhdYIU}@LOmB^(UtsJ;G$Xc=##{4fhqs1CRNffMt-c87z;Zzn9DXd`J&RPh zfum+by(zkVk64O4@f;LonWY~%Hb)YRn6{8w%9VDb-6$hbZ@p6O){Cu9tK4gs{6?|o zSG_JvfB&F#(|p1LzbRyAbkls6I^+C3%5R~N{&{Ou6Y0AAo#>|d3v}fY3C-KIM}kaANtxT26^`1%xnWQSnR;}y}7~S+Dq1C zF2LbAQzTBp6=<>_p{nXc+y4nI1Nb$FL_IZJcJf=CjbR_OqJ%9Mb50h${cTF1nVLc` z@$V{JBG{4}(N#`L*ome(C9rXl9Cp!^V8^e}1ckFs;Ab=Dx*=h%N?{V|^tHA>0v4pQ zRIRsromvTH;i_OWC=ORajqq-%+iEpy#SXC@b8G1*G|lWk38UkZa+oScPx#St{i&L$ zv-Q#Uc;x1nGDz^Z!sV4tTIBs4HNV~Lpa5R0=e3a=9YurM z-D0)aESBozVce%r^pWIpyIO`J49GQQXXq6U?}0_~q>qeWGQNvjra`!)=!$~}OS}fq z8930P2~3Bvp6B;x@b3`(Z)Ik2p|aNR?h5nyIldR66b~cKyBWxy8<1Q&R=8u(7cM{^t#jE_4cAzgIZyuZTbd z5n0Fc^X-~q-_f^-(p>fiK(TkkL$XyVs~o~`6VgC`cy)HJyQ^@SsQyH8DP&s<`rxxw zL}KzjB81(1m|f;981+w>_R9Mn91xZp^T9G5#TRbP!52)ncPjSJ&FDq&gih1%;2>-H zH3Xj4I-ORd)9bX`RF1akb=oXDroj_lla{{LOIz!rD{!0#|3m|R<{cw`cDlfIl11(k zI`xC2>on~UIp#4Z_vRpI5p(iXYHB-1;*+E5;@9vL$?6IdFlR^lPnBgr$l>aN+K<1Q zdio?H2v6#Z(J11k6g}1rSf(fSOv{bJTqTTA86xB`g)#rlG*F~5|E<;(Oo>MqA(Nvy z-o#dE_Mi(c4sGJyXsXGODWf?wA(BON#2NEn7cnuXu|B|;;RdzQ6|Y?o>O~;H3nRwX zfkK}OQ#z4%(#93HU5>C%lOw@0I4r+`E_Gsz$D-kLdqE^S7+GWdBB+`_rP@Fz|#wsht$!;jAp~Q zd*T~QsZ2zEkkd8%Ie|t^ACA)lJg+FN6MTa;iuBd~lrtHEiIKTj!bJIP|EuH<4qVFw z6E%InWCMqZ%Ds#;)Y3Rc`rU5n!l8mk8UJ=UNmQ_FU| zO|X@jJ?Na=0sT6fYS7Plyk!nn3~*sx%5|e+RKbcjE3Cu^E8a3f1U)`Kf}S)I1g$4n zF~F6|(nE0^ZdBzBms?h-i3pcl86i%V^5f(gBf&|QaJc{nTH>!{B&3N`dYJ;a9jEm2 z5kh+{KeT^yB+!nHQ&ONcse zwJM3WccESV8@hB!M4EO*N=hc}%7mGI(o?S@P)YiVqzlH~NCYZL4|H^+G=WMd!GOa9 zm3GiC7O2F2jUrHK=C#rWKD-cy=R={J{r=r_U2%#VO|Q5Y^}zQ+kiHWCAH`&4cx`_G zjf`&Xuk4jBgS|)#u$MO`Tl~yx;MRLQ2t(Z?XSd~bEJ?e~UP=frWOjhZh<#BnHhT3& zz1M8C{A#^ZY{OMkD)wr%idU?4>TPn^7-p^e`Q1Ve)Pjs{Gm5Pt<-yc6U0YoC53f=M zHu3RQBH4?Em1|HzJ}AfLA06|Sec`^K`=`{0KqdJRd^k83Wnuw!+wqdb8ENu)Er0|M z8!?rF$*D|p=e99D6uJL%)W2}5he4oCs#0K!%U9ZwBwHi%age=2NQS18UR?&x#wpHo2*`3JsrN?-9WR9c7 z1)03$kiWbf6I+SO$a`gL`Cn`Vc?WnfY4;M2s+7x>tUtL%aw*kF6P=ZNfK-~gv~7;f!5W!4E;cjziI}(c z0y7tXsky&5|J>h|f9?)`6BK<8g-=GJR`t|h!F-Z~75ldly*~#Lpm7!9skrJeI-OdG zxLHW!1nYCSRqXb);YM(lwc$1?JFN}F#J|ETwGL0WyEJ1TPsU^+Y2Anu;BJ8_?6|~C z6)(GXfislC3{nlwA+nL@s~E5-1;1Nh0g#^j2yqX~-t55dj;Y88k)_a|#o0^EQ3>$y zOks6^KV}z}R#$lcdkUQyzjN1E&zqfFUH11-D5dIlp@4V^#8w_zU?C7eFy(`FdTLvI z)wwMUS=o+86DYe0DEqSLMI4YVWQ%HddX;v!?U97&A)8dG)+n}%9SU0Nge1hNYbi9u zTb)}eu&|Ut5SLn*n40%jW<(+jn}()$DVgp9M<1FH^*w9BrZjhvb2QF%j3~GtQ+J&4 zpAEBa=yU~@D`5ZB8aq;eJ8|hKLv-chrw;jTJ0gfQ`E3&$#}we6 zuLQW~_n$y~gfSC}ii~3>S}oo)qW}>h?)^L{htR>j&OoJtl#M0D{X!~S3|Ug=7Fl*X z?FOREyjHQ}S0TQ&y|!1Zc%@byQ6|+E-8_oOWs&T_)bmydTF@VXOP^qBn(}nQ9t|XN8ID78h2))pr&4?kzw|0uQ`dn-#b+AfJ=q!{ zev2l@8a#=u!R$fjsE$24gQnUZP3epYHfjHSwAZuD1S=&Fi)dBBzi-1v37~Dn64<~d zv8wQuXTC(Qhh=|bIJ}4FxF`tS#lBa2=Gjh!7~o8ECs8c=31ZRWz$!Mom3pUMtkp~9 zYPsHMR(-G6@;jAc$*Utc6`UcS0})7tsqfkZjMJwgqrx@p)5MGlQ%u~YZOKwNJ(`p! zoR!P7cl!u`6nm6^!z7<02%O|1PUJRC5RzY?8ra%aeJxuFuxX}XpvUoB^=xgcs+C3U z*Y{FCe829{p`dNrKeUE2w_G+4>L0Mxm^~O&wgvW%?qX-He-oXC+u2|9-t59!|6^!6 z%1vu7H@tK201*ek-zKR-gNuy<;K`TusJ&_FZ&=DS8!t0x2#@yN`R;!cQQzwdh7^`~-!|q@Umt`o;VN>{nht0kdC? z=0bBV!LSv1y%{FBz{{S{eiX*HhbD|ca^118w@m?CI)gWPW~Qsn^`I+hZ`)_v+s2gc z$J8)z7X6XpBsTMgFKGzOK&z#m?F5q2h)J(cNOcWL)=N7|>_CC?Yjl5E@Dy!v??=NNesfODVdMVzmd zDmlwrtxmT_$s*wo>3Lqot9RSQqSvlgLw27hvzs*>WPn2lVYaZ@!3XFq!_m|P;0(IUA+c!2Tl>F~LgE)j zh(AogG7+`VBWQP~)Fa-QqF13u$WuX{ElM=7jkh!vp-0GbHo8$7J!0=er5-U!znC7u zemw~Eh({zyG33~%LknisIF+I-yO95l^XjXvMxk9?nSQuqrD$9abm~0TWMG*Tjq8H0 zq@vNb6^*l$P^e)=>Krj|6*IU!7-8M&NAzTmjrwtybJ|Yz<1m_LRzEta8->)5NU$g# z)4v8?k4*j8ou2&DY9cWtB$bkLBIz$uKWXELc!WS)8vW!^DfN>X7?GtE4Fv^NACwm; z5UNMhnc6rn6AO_CfVs={Q#4K^=>i-t5xoeF1ks7LTB+A+BXLi)-0|9tUbR{FAWGLN zolcv%{0y0MDN-X@T$nq`lP4%0L?|DAcTZt<(w{6qci}Mt1H>ZS?T?9q45Z>gf6)U9 zkkg>ExV(&tQgcTGa324G73g2TZqWC_p!e(DUa{Azc6|?(0$RxSh-^ufMz_(b^}LeD zf&l(VOI#~5#U|#r)m^JXM$;duRlP6As)W|^2h{XIrnP(~^>Q?=<sp|#Ls{Y1^7 zwft}DB35hpnl*sAnX_pvUuJ7Cd(hc|Lu>gCnm%A!OCNh8fWM)&*x--STI_E|uC=-Z@>TFKldyF>O$<+E zralTx=XDg<`sXA5M=R9GKY#^Le!wng$gpQ#vyop7KxCBrD#c^^e}$I`LdjOyHhW>>y1{oQ?8a!*$R>J-Ey(m>9%TcwK7ZP+u$~r5auACiMyUN z+=|;S%d`Gq?cmx(|GngI-z{h^QcIrHRbqJIqAw#$s-4+#Gir|#UwJEf2I;DGad;%h zyRq2r$)Ph1Ry6Q=8NoBUk7G#rqdSkYQR zdi)QytPeYv<+K63A5Ecwnz@s&mKZ+aYK_MK+&zjbcd{5ozdbeFh+QYgVZYUSzUUt5 zemhI^@QlIg($eDc%Avu$x4iO{)kQdw)}BusLfo3-6Nr}#B0a6|;jl68UThU?A__+v z@h(^q{Z=dbH}{HMIiSDGXORX&8!vZBhR*EPVwAKPI?X*&4h-=Li~>V~e+vv5a655# zkQSVND*Wtrug68(m!m0mkg;1gvlB$pg7`~~)^v~Nq6R)%E-|(cnioG>)Z+TjMZ07(Vw_`( z?%m96>C+V(HUpj#+y}0W>)8X&c_*O1PG%ch z+cS4rR2*-MV5&+~i0CSH5!fQwXW9TqtN~0#H=8YDfWBO|Zj;cA=+I}OX?9x#qnJ=O zYWPa|Dv6YNIQQ|F@<5%0J7!)wBZ77`6u5DGib-XR-}Q}KHm@WU3IsD!G_KXWir%Kq zUgbD0p)xm$P0#Q8)kX<5b#bq})uN%j%Cnx394JeG1x`^YOT)kVx=db)iSGW0Y~4!m1{ zD~Y9^#vz506S#wkb4U^s+jX=L)5vajFhT9~J zq$stCK&CbSj@3M#0T8{2D|j>}V}AYP2YPMJ?j@fYg(SKBoi_foZci9@ZFQX&MuFn& zXgbjPcTanJKrwQzn;8XZ9h|YQ37#KMiP{*UNgBBqcjz=5!AZwyhMbeKlt@Zq-{qWp zHc{kZ=qo25t)S_;_-IrnTgg8+;fxBl#@R7jT7kp{b#|so16oYAQ?K;8jdH8oYd29v zpzHPgQl;BzG)u)+snzpBO!XDlD(|h=1#=SfCXObh6LtZ7x^Ow1x06cHhGdNdG`tNl zv@vQTndu~5p~P#j!iB}c5$`Ak`I3EAwb)07sCB^V-DH$H0n-g;r>M0LUFD?T9-3 zqN)o7OUB`sjyu-X2C)&EeS^?atPO(1`jv96+vrt14{;GquT^c}LUgMIQKaa%SkaBJ zbADokccGu}q$K^EQNon)&fiB((|hOh+=ceZPRg^e%S)E*3AS%%+4oj_ChG|0oe4;j z1tp!(8G|j491^sx{V~Z73ak&5xIwat!!pKy!n{cBw9vjTHPGmA7FVfXBdOTDpGl8( zncid+NoU-9sCDES_dcuNcovbYE4-Uc-Rwap4Tn1RQ8d+fM0Q=lb;j+)jtanPxb|(R zM!ELwZ%o(zoj5W$p&SEZ!*q^W|B7XO$w>kR0@H*R2<7P%0d%1_c}3KYt(4lWO0$f+ z5mmSztGE?W>oltsuhr<`jE`rPv^_+)^s5tSj6M~2wqMCUO}w-H0vPQJ6DvoT{QbA# zpF6x|d42n~Jq29#S?FF}5C)uG2ZKx8EGIb02S~F3WoWgt6317-T14~7u_vNV&+1^6 zDRH9-HIHIzw^*#P};wj8qugBQi$?0+npt{>2+fQrbVA(xo|@(B$NA&~3l(czBi zU>i(x7z1fCR^>LWn?p`;>cF762|GtX2B(L)m)5sEMU(kD)A4DLE|WR?0k>2E1Re5Mv5sdS07YC&=@u3$c;J?6m=2XboU) zgKQh=dFU%A$9gH6u4^M{X{I8aAkqdwC8i`unF4o7G9H!qB3niW_367LRd#71zR;YA zTxFPlcZ!6+ur=gQVg57-MEM@`B$ms;)H( z8QW#ita0>j6_b$Wawgm>R(878IG#GR1K%DI3p4y+_WO7~m4!c^1^!5g6a29WKUk+& zZ`T@4q*ZR0+dLaryVz>g>*WUJ5{MsH&n zt|C{@FS1XQjci+Pr6i_7keK{aq5Y=RXb&0J9!E`W&;*F2d5iGK>1N6mS9q`W#GZ-J|Rc6K~`(p>tbtJ;+EpxIGw8 zlE3yuLBmfC4I&0{g0#`dDdcFGzlJPl=SdW`e$Ud}Y-e_5jc3pVNA%bFx9<>%!d7sE z`nczJ7=4TEe0SnqpK;QC_;oW)fN5c8_n*ur5XIi;P5dc#)jHtLIT^-$_&Pe#c-OP7 znZ~o9ES%z8a0-Hfl%z^^WE!dY&2G0-t@^%KD%KmFZl%=gR=aIKb@IOb4B+uoB;1HS zO`BxIdpbiE#5bmfYG`-Aj+)xLJ6#pTeJ?;rx2&qRfB)?ZkoESfzmZB4X+mK)U(u~z zESIQm_2S7z_Y`jNmc98WAc$b%mO!h#8M%LV9Xz-P)-Ayx_CuD~Q;`3#SFm(>?Kyw{ z{^$V@>w_KMwWmNVf?ME5Hy7FGZI~@hO2C4vjGE0aG?~~{t9hbN^@lWW1t1a+FfMo9 z>GJEor))kJV)ewUW-hk-RI8H66z_MT#$`m6%b@3gh-J_F zc`qSQfxPjFtge~wwLXcirM)Cl3Cbqm&t_jAE}*0O3I8MCZhI)b`Yd zh`ekAiOiQKFN<8Yree27%?>EeiuLvEJh@rYO-_L>TRX{pL*&eaRL%f|wr}v^Tfm27 zObK!;!dG#iuz||e1|@50+ZyF<86wq(tT=4wBS(h}I7W{epSAi8e=D#ozZ1R|&S&w^ z^tG_Z@U`qISZZV|_h4 zPi~fUlT)C})=u(Stkh&HjL&igz)ftXTO?x*?2nV~!;P@pX7CQC9D7QBNG;o7qR& zDF0-QVyfMlp#6W?O3V&)3!lU8{qJbHZfNfi`;{*-u;7ftV#RN41faJ3=x#`7r0!F8 z2f&V^?w#~H)eVkBKf?}mm6N*9N7Hq~J2!R1Y(yX*v`sd0F_ARmaLSLPNlH*jql~$hC9VJR0~bm zgpxSaCNwBw^YrvBiWE+`MT6Vhop4K{f$aeeXkEH7e+pq9ir*Ad`=U_&5twr&}-70+E51jN*@q1c11wU8)10R z0K9|Vj7Ct~hOTlF^Vw*s5%Vz#2nmi1^CGjGpwokRG8V+e(SdkReh^PRFd$wx>E0R( z*V{%1*IV+#^~uK*uA9jHr|n)h@n%%%?pBbFQt9p)9k^HWgZtT|0QZAHrF*3Uc8p5* zs?_jKKKfpsAK-5=0iN^dd%#t?4=Q*^sB|A5A*|n@AJ(5539NIfbc$0OQah3vkhe_< z?wjaOjR*aM6Lv|m`>BEKj&8H)ZW&ej|4Xyv;(P@D|J}I;U7}CkYyXPAa*9D4_84MN z&b>BT{HNCA&&K5ACCMZ@aOm-hFb(N9O4kTf)hJzKH%-u?yzg-?AR7@(ps$=nP)Acu z7S2fo$5DBIyc2Fohz}|6G3ZX#*r#b8(HeW(IYk|{NgDf;(Nj*u&Y`J>*yEwG$G|db z>jX+^)Yf^90&S$4eqU<%CiBl{=ZEkwn-E^-)(IdIb-f_aCP%5Jze$1FQq$j@8o-JE zlsDvu@9&%NJzi>h3>Bx>&HpqOu75r{xPB@>T)*(3f@?;}>R%LaBP6STO%32=&hXFq zA^al~!Z|s^XeBGy!!@z`1YM>+eeZf?sjVVTSQFCShJq|!_RDE%{FDuO*(aRS){ogl zF7;4!mGhh}qp5bz=HpViyzDWIYEpMIB?jt5oxhJ$Ko72=stYHNPYw3uJ$6HWxZh#I zJ?9>~BoRRCJdQK6w*?LKVPEjl2thxWAM{Th3Ft@5-VzN5zwCrvlHL$wIEdMTQ4+6H zS$rK$&Y>*6!8v)I)g|w_-$Y+IdEM`zsmAMa?z!WrEPmVxw<$b|(b)RK13Cc5jDS}4qTPF87Zd_zT`yY8HLHguQKSI%Aa2sC}Lp*wXpojaT` zOhUeHU}b^Mbg56tkhX$gUQ2f-PI$jFwpO24mRq;y<0O9%dKR~CaWB8y^xO4zv5ef2 zyy|FBX1aB2!c1Q{O+eIrlbJD- zv%OFwQLS2*Wr%Jx(SItYI@~6&zMJ7j{T{B-voCnvw_gJp@w#v9SKhjBta{bBs9g0n zt^88yaZA4anLW!;OBeesbzkUP-wl3i_p}d(RD6jQ9&JCNXyw+QT zu7bHSy*c;7aVpm+vG>6zUO#wC_#|@ZG1}mJxy7yYqFKLl2?f)uOC^7tQT4IXx?8+ zQQPO&r~~06VAIkRjaOKmn^Jo=P4K1Y%O%X4t1Ijik#25miSqaOD?Ur$HSqCLmGa?)UqH&ouHW-k=T=k^i*sT|*68t%#NwoC zWfJ>NdyYI0jvgV`|1|X=OvN3(6r+g6pIIZsQ#^UaoJA}?iLP=I{9mJ~M)2v1SVYr% zP_kB0yd;;6AVq>GBgHc!5bA=w4%J~oronGJfokjC;?`I&v$G-z$~89(7nG46o+6np zC%p)oIH4HOM5wyiMtYa(%0;s2^QR2fCPnFscW}UyF%69%Qkp(BiiqZYk(98**qurN zvo~LM{zL?4@uy{`hw*5x2jJoE{2JxrYZPCzq)pfi;1`^B` z?)H}llvTDgS(>71I+R8h*=Hs9>39oBdVi$Q_E}0=SyaR1ckAzO!b~B0ZrlVJ<>69& z{09owfpWWXbz(>PiJdpaI1W61}5nDo3ky-11nx1aN z24TW3kqzf&vQJtJZAlQvv90NIBv?+AElH>1P-4OrYHBAY-2Z~Ow4-@y`i!ZXK0^02 zl8J7j*K+^zKNN-iYU-5{A&V5EFGeFq$Yv61daNHe=8iqn%AkZ&Ad$(ZPt{^rsCHt+ znfGQIh|57%9lEz#Q!q&`o6P?vwo0=H9o3E#@7-v+{u7U_O-VjM+KtymOw8#w3Gihk zoVL*w&s=B@J4xR-yZ^$7v2~!(ry}d{{p{1kqB6U}MP-<`N9`&r3+#YDOr$Mzab!|srT|@nmpew zcD252+7r7yu6 z1e7D((wEWO5sBg#qpzI0+1`-=Iz<$M4sw~TArj<<)P)MXd<&>cU|aYDO>n!;2}+&f zXkQE2E11vD;2Id~c$e;)w&}s-h)xz8@C}2-+HAw@(4Oi}&SJlmu#d8{*psxv7g0_A`eIJ;N^w<@ucma(oL5cYKU=fefsSMc z2YeZtY7#@bP-0s}PAF9IoQUZ;i8{ccLDV)1QxWxD5o7D12@$osS5d9txhb}ah_N6! zJY|fK!D?LMhC*pH$Ug-*dokWWKSo?^c0i0W>p4Hl>;ot&j9>X)XhK3bxyTmBuGS(cD79o;0aD3zssBTI=UO4>(VkD zA*<<%f6t0Db^3obl%|8LO4v=A&Q+5AP-c6^VI@k!s7v6m@eNH5E5FN&^YtJpTgGw) zxNPk>hqdUBJq%?zf9a+T&^z$IUC&y(cWq*3^N<AInvco91QwPi+jLpmdMKU@Jjin^~J9lTrl;eGum;GLVgVYw%e zk09OoAqDK1+<0DUcqfO@9Lx{!yG(%R453Mx8!w8^V_=@qNAimb-Vr{M=Z+B8&&m($ zUm6LlQ}{@9IO{%=5I-?|B&pM+z1|5<+xRN{B*C2YTYM4e&O>uFTxXdt!M~U0%Fp!3 zbmxEQT#J6FCvU?)Kwmk}nUA5VcFyG7hN&*W2Z+F7BZ)(8LW3e4>CXSo3AZE~2wj3F z51t$I$;s2cLsJsoXe-_Mcb&7>$64&*L(BB^@Yb1u6DX}H}Pgv>3&N=I!dK`{pi5`+Wg>t$0)%4AW-T4L;*WS zrTb)RcqboyAIlH$&zS(vdGtNtD&0RSct@yo-yR{XznLG_-yaFAbEUu*5j{p z!Z3*r9D2MWOhfvO(lr7PM3k;^Cr!|yyg$*ofNVr?JNn8=1RXS8KM@>9<^8A=Zb^s_ zDep1pPS)68MDvK&*ni16MIE(C8v6^;Q%=Ob0!=l<9uJK@29{A=7#C zt49dI@QF#q{%td#Lqb=uQR#i9rqdZ zm6OZ;J(_A($!IyG@?J;1MB$9g-xN+ql$sfnA>Q%=O5 zfuaB|3M@2N@aX6$-);jB{^lASdsiUHQS>Fu|O2|BRM#IwZoIoKQ>JJ$9n= zk)qq9sd0uGf$olT;@Q~cA@r4VSIwiTwyPc#=uUNw{1=_@OG5l<;ahwvsftYn=3Q3j zmD_JxQM>UMMXl^R_p6JeEQ=E3wlY!9sW`*GhMq;%pO)W1Qu9)|-7EUlvR`X9N~LPo zul77VYqcnERs6VgQ+Fr7ss0sone?f+eoMDlGhM$mVP>O4q&S!PxMWH_cO#MFT&Bp3 zZZt7Gap~xqJH`1&K{`Ce`N!zj45dA1zebVbT&-a^*7ZA!%ihZ3@?ec679}uPPb;`S zT02P6#mx7C<=Y=7Pul*;grtcZmyxOG2Qt>4r%a!i`LTR345~ayPIDbkEU2kMpHID0 z0veq85$5ujK|48@rwIaV`%T~TaD(~(XYWnmX5lVQw{Q{zeGXK?1Er{N}SbbqSO3>?9?26MvA!ewYiW^xcvAkOukc2AVfa&FX zC=?>o>Q}G6MgX3Fg%4NQQ}wo0by3B$U30Bw5ZH~H?{|I654yEl)$5WyrQqI0G1NuB zV)uO%nFUt+K2n&y%3*tc8JU+ycfb@`T=H#?*5WApOnh?JtW7Ty)3kyGB4N0MVz%}i z8lrY~023fyqE+cDS;=>fyprKNsOjX5ROwekFzV~HtAX3HyB*)^TJ=u1+Uj&r}-$0$h-@|cNMnMy@1I%U7qEC zkWlzP$7sni;Y_khpm7t1{cR3~i;%##tJPY&>p884<+u%}S?^T6R<#qIBtp_f zc83?qii$D{TA}I%k{!RMQ(o$R8oO-_|9@!s+r)$-&qny{pQh^S4z`FA>PazKSrmq6 z(iq6tlMlfqZ{b{z)mZ!%2B21W_Cn)K%6a3?11y=&bu&k`3zW+yE<@Au-Z;h}w_&0Y zgWQg%XnsWS(M1yi(Gx)Z*+a$`djTRpQM^dhb}QO4iVNSt)=J&E$+Sy-bLSDQwQ0{r zpMIRkLh0)NZ~`}>l3H?KlHdm+9228T$3HdVz9hl>*^Rg_X>%;Mv+m2gjWBYMTu8Um z6LTi9r%|0rOv;bvzC1W(=H?vRJye-2te7r0eK{on9!vQw$}6W$2{7VcML`_~F1gT2 zK1)PskA5};q)I5MLoq19BU@yO3j_Qhz8c zHsar%7^x}~iE8;R5bpsjnUi!eY*2$AK~qT$uBC1Ur{Q1!?uEHocXsL6z3gZBIOmVu z8#09_&4&h|s=YHoKkptgo;MyxkXgH4bLv$q2wbPxv1`?Or_l-OEw@W_ zS4b%mJ(N?5G?3Sz6$!p!op7ZncqUuF>FSy*MImFd8x>ND|3Ua-O7TDGi77?)bP_1V zoiqO2LJ5Uv-l-9=aVW!e5ulVJ+|rG>n|zk+lSHg;rJu&51SeupLJ6KNQ&_kjzmKQ{ z=};O-8?8#{P{F9#>M%!#3Q?8asE`hQ1L2G5&^OW()1mC? zB+#K#PJh-9N+{9GjJrw(Z5J%^N1qwl3P$6K&B|0a>=@8k3!)=Fpa5}V2Q#Gr&8 zy-;TN@Ll+QL_K=C*i1%K%v7X&YC@C#IeJTL(hI=?@8;tyqDdc0nsjld*Iz22N{fA* z;QsS5!ba7l7hyV|)>1)m#Vhp=wa?*nW$Iq;f?-30?YM)S*e2{#ct#IbC|{ z?wHv$UAm5bF_^5^lIt=$z=a!5S$HwMzeGM6d63rtmdsowbm>+!J+8X+VvLV)nAW8_ zX3OhRg8iR>&4@jGF6%`VS-MW*Zdf9-a@vx*`YKwL(3XM~g)q&ZA4w*@;}qg3yHO!+ zc|Ddi(w2{=C#Egg)5)MMmly4W{@Ao7gEkgz$swh*<()vG(3a6RiNroYzZqD#gtpul zgA&^EK{7*!x8wJfYRhQ&+1fJtO=!y{^p@6^4+0C^!N*xdTQ>Jp`u@Tk0_b!YB0B!i zKe!y7jKBdw+JExfrxSG=$J$41ovhB$7^S1?(+Vbh7l*?2spsK(n!xP_Ez7r>KK!oT z4zBQSJ8s)**8=Of>`i}Zgqd)C`is;wrBAzEw^a)QT2cMkmw_k=hiQGP zV>VykiiEXS%^^;WCfYPFq~gRla2sW{|ZbZ<&TSWes0K<-7W z653WUYPRCk?EtQAg*eM@R7l%?pYX-@raz!3rfu2NNuX`3_S~$!=r5Mgw+}V$PC2}B zXxxo4td!2(@Q6r;fXU;p61l#KejSh2T^EBATKAzc+lN2HijJst&k%c5G0jZ98&6MY z-b*l|wB~&%*x?jD)d3tyxybuELSsaGO>uux#71o7FaE)bVSrz)5M|DR!^NzQn&ouzt-OP@PQFcpyAqxJM8J}nvxH7QfTqV)CsQdp!XeYi zo9`4$Gd2t#Av|IU(-=NVzZisJ885;zn}NDUvfeaAsh^LgtB2uJ@04BgI`Nh_duaI{ zjTvxB11s2ay6slIUaeUO+1O6qZMJHTTlYGhwo5jCK9Wdyb0-5yfO2LJ4Wx!vCCnZn zC9^FUdHEzKgU}_}jS87PA0&J+v*$zf#LOP{bTXJd{=Dtr?9SNC9u99TW={+&W%hiL zRzBkLjpD0BseXymg;+C{1WO%8{(KBdm_1j>Bpv=aeqX8CBPNh-_K07F+4EiWm^OQ^ z06Tn^kF|)|^MyUguISDAFm9p~Ui03pi)?_!%B*rknVs%h?)Tx9m^)hGW0{(`A@z~4 zkB-dD&cRw@XU1S3GveAo{)_pE-TvL~?&+yV@weRSo2D-M_Us~vaH+>U9lI&B0AKdz z54ch0#{s|J@AaoA{JSuasmi1Lz+RrCq>)}_dU|hv*`J<{Y%+@TE}nq7N&4#tG08+G zooXRmkb?!5Iu$CxR1ahU%YnB8h$7%HCv*0^=Q@(&^sZTnGt8FNk~GFc|9JG zOKce{atWr%SLAG+I48GDeO^i*7P2*{bQjAi^mPTq0~QYis1a9XySge-_TuQva;83I zsk)7jj>@{6o5imZmQpJtlm7s9k0Q<%S%vH9PpSDeMkME;GbWl-rX*1MNXi>VH1U7o ztjLX{s@?7eHAD^(d$Vj0-oj?fX$3XMYt#{JWa&d=4=6shFj5lF7T<>Lqo%2CnAfUx z>Rz)7-)$AK#fD=wUC(w}?RM2i?mo-fR}SZ#F3#kTg2_61+M|9*r7O7?@mrY)Lh%-2 zeI3D**6fIJrscetOMo>ZlRXzr$79b&6HLpx8c6GDLk5^ECacmBuOhWQjJAv)8!9cWd;A{PuJ47Gf=lPq#!=43Z2WRd?qVT4)a@1-YZk+Y|h zz#`wZfc#9vfQsi{JjCdSjKGb<9^W89rOfd^r)7^U74cDGjenNYgjg??{7PBlpN>HZ zebbQ1Is7<&AJH1$Dx8pfl9|T1n4GZ1zlQ$Ows-@K@JT+>BDVOA+RE1@TSc=yI#9{d=Ao{aaANOvpGY?R5BB;tG7_oSjr1` zjOVx9ddG9zX0vNqu4A{IPSb1Kb{iQ7UdG{{3*#fPLTR&#sMA@_(F%15CeJ-edzm&J zMZXWWsy$>_*AM3%fO^;Kg;{rMuvMZer|h=_mMk_(>~q>^Iv!=uXPDOZ9S|pBG99$k z@mrqo3HE~kn-hJ*LtNX#*=x^gSj}p;6Ih;Q2VTRm12SBTdhduB%h?Jvkj-dS!d4Ir zE0`sJ_L8k2#Bg?_LbgJW@WpI}1$tt(0(&|MY=s?e?_dc-A+yeuD0?*pSmUq~)-pIL z6XC_Q+L4LCzDVTxeVh)&8tJTE;%LwdV^G3A*ex@9cn^Lb(LTVnQio9}!((X5G!EFb zgk|tX^pv&?c7yDn$H!R2GI%5@aa!Y&1_AsbDTCl)#b8Nxz?)-ij${YCLu;WEeY$9=H%MG&%DYdCdO zRB>&K9iJWhp8eB>F_p}O+X0`XrYSqXsbaKMlyj&CHgYBGE-aav-LMcw?INuv9Xd@X z)Lhp)m}v$49d&530=}Y6MzsRsx(ozA!v^>!2M-%yEk2Q`@!J|)m7L010AB|zSum8a z0Dg$3ErotB(5IX-3^q1E8*MbqQ zn|?a{i76b zLmx{s{oWA-4to`p{-p9>fjv97-1nn6ANe6Fv-2|;Dbsc_5vV-`b zml6D%syx28B0_m7VHoKA+CjsoSzc6eZdDInU<-g+D`F6pj2 zV@k~m37(Z&n+(NxkU&KCGs7Apm(+9`APV!WT ztkcCNaV+7f)?MP+pOh8-?ymY%+Z@@(u4~ z|EcbzsfVX<^zxl_r*2{ESx4Br+QAOgv+G^Y>jpuy=C<06=J83VJ@p!sn3Tm_G84X& z{uvEFy_0s@Hclbe>Rptku)1Ei?paQ!j`~rK>$lx>`cIu5KfVqHvFPa2zWB^>YK#l{NB>UB}73a`A@Rn?oGc<@27oDd~SKVtDvMV0MdqPLCwoNFbqIICEjdGjr zivepyyW$Eol@!ltRV<3x6*qvA39ZboSc}CfjP9&+4|3!zd?X<=QuF#*hDXs)h1C1- zTYRo%qgPi-rhJ2fe>|G57|*P(R^C|#1-3>6z`vkk^kI@tiENugq># z$ocUi!WRo~yqKPt^MgH|1kMlKPP6FtXW2fqM3}>Pa$-t?ISx0-X$m|N#t1MC_aB3j^zyaEQD<1|=LKH_Fr(z8b%e=ny$agg@lzW_m@GX$sfKd(kt| zty-G$MzG0i`Irm1Mg|QEVH_q`1oGnH83|_ZhJyjM$D?DzN`kbjm5d*$ZL&^61Y z!RL$D#IR6Jq?<6=_i-p(K-H`!EFsUWB2^2uN2>79*IXo1beqk(-L4*=4C&8}FcWSf z{W&#FnMk+%VNoxBKXdA@?O4Md1 zN+_oisjE++6^S|%DkYUDxFuV=<)}mH){W<3w? zT%(Sw#HFWkWq>&z5P=(qBHSQArF7s`z#`Xy;-f^cUPC{QNBun_1|`(r6J<&ZTljrM z^%utj_#`tmpO~CbdVA4dTIoFzjL_jDEu!>pf}n+tuIMUW4^aWS)&p+! zBXF0)Zyyy7nP8>yc|# zKCgtL^r@8JN8E}fx}DER>?QnW+iRlQX0wgFo=q6c$9VC{`Yo})+>h$Fj-91f~2-DL)%DO zmpIE$#86IKQ&&$%s}kB;Fif`M&C%9E5N0ngM(?6FB5tDubfWA8mh9t)cO8@ zi9rbseuvD-;kWSnh#EZJz{=CjRO8Atg)U#eCrg*#0XF##A9Dd+e#gs!S*Fe(ZO<*z z34Rq?BBK0XYKeG!9_>@4- z;2%orMu>klpk&-5c(PGq?BMd8jhoeY7ZdDALG<96s2? zzm3K!w%B*sbIWuHVZLHd2&ji)b^3jz@?x-5F&n1{7I4uUVA1f=IcluHSV19XjKqFFmPu4$&3M-6+=gvC4+kXlqPD~*;a7up(C}DfbL=~sqlJ-@7{Po;a~CyD?PywXlls2b3{X=NDJ&>C ziL1nI-*;P8*Ks`NLM@k_{1WOXwWEpO%H$u4w;4N{R~Tn1i>cuey_W%&YzLLt(Yzi_ zB|$Y>`i55<42fFv76SXFHP9JR~Q~ z!R$tbb~K+OjIbTeU(gfV(XgkJU`O)^Ugzb&;<6(=PsZ(v;)~p6%v4T;9>@OX>@2Xv z-^w=UTSOX>4U*L$+3kFX(~wwS)qE(m+xbQeO6+!Anajhk;`b4EI~QHY!(SPb&)oE6 zOV7_h0(+mq#I7I(d9Fvd1A&i#JGCXYC^+ z4$od4+1$tzNj|2vhC|_+vf6FN*$nH5VY+-uQvJPJ3S zV|o{G5JXD&WE(~0(j6Vk`8q3)0SNXsz>akC7hhdCM~KL-oKB{$&PJ;eI$5x$VDS9; zNjh1Gsq99Dbn+3x2-C@T(-YIl?CB)X$=CEFU(JEL?EZm;-r_93l)boKZW#4)Hu!Pq z=JWGFr}Xp7h)g2=oYyGP0x#z@CDvOP1tpHuyfg+Sbo8t&7{Yt;`-nRFK|)98AR$vv z=S^Pd>bGJ%X;WrM^ACIA<@>8S`WJ5tXuy zHBR%yeG7TjljW6e$b_H5Fa}#V;%q|XvGC96-C7`#)%T;(Ms9Ecah@+47GmrUqRrPu z=0LXSmRU0)DQ@;|pr&cFw_ZgqzuOF|-Ky1USskldtNB6OLD(MmVlm^roP+2h>W37R z?Dr1iw~B*Eyv=YBU1pqVIS0|DfMr@{gC~0jnvTa_%?o)ifLtyfGQeapRRYi-xJ8qKEF#<^~6XB@aKEz7C5u{SGvqMJyioT*9!S&LRBOjRM*1S#iBN6Azb zS~|N?Ayajl@Wo73o1U1d%AQUFQ?-eF;a=ZA;NJ}iRw5$4-Dsf7K*wR0ZczcIjM2M^ z5F%q#{WQ@5Pv^8E)=?GarQAe!#h`=$?#sL$J`KN*Xo8+AOi*RQnTDr2QDJVr41K4~ z%|4iAk&n87xp~LAA}k(RoH*qcjb{G-ZBhK1h}aJ9>tU?BHoMQyi}8id5#br zo?Ti*G@2Qo(al+?q=@t4sHNyn9i+N>*91Lk=2YD2>B=FjM)AWRHv@wCX+LJaIWVf5uTN)=Hd7L;so`N*A$9p>G(W0y0_Q6 z37#$yT3?*j?cWFwkqtu*745LzF^*e7Txw)`Xx-e`Yt2>Kly$6R{!*XJ{JjH*^^VK( zNJg%Cf?L&v6!G_oWOXG_?^@Ah& |3A}lv>lr5}|Z>((nvwN;h-5_VGTBkwAPpSsv#MD8#Nuk7*lk>p#kc{V&v z`Q@B7xgBqL&93dbp5r5Yk1d%)_bb<&E~=F|Zoo1#$G^3_u`p7SneeUUW2tFsYiV^+ zH8W_po2Z{@wcVgwMU)5^;CR04p@!TDTg&~_Piku!zmqPL*y+-7#W}LU zk7Gl5eje!5*75^HCXum|*C^R!evs3YSZ~#kFSW^hUkplYGM^!HefWF$eZ);>9OuYE zLgsceZ}MW}`4<>ZdgJ*FFxv0)nH1P~4n8NvIk4*#1Eh1;RPl^g0rV*>Xbxif5&N5$Ib;Yr1Ji~MA>IOffcHXEQ%1hajFL}=g1KBd4(0t~&z+sH*9 z?@=pFy#Z<1QRXkjt2q_<$hXqbD2F>^W0N|us&Y6apUKUmS^ z4nzxPnBU6QcAPUk<@!hkWs8ep%cxj|I@a^mQ=a;L7FhKQ9QE8P3~HX+wtc(PMD1Nf ze4I|ut<@V=3jv_EPVCB6tJs4qF6R+ z@S=E7`5e0%^^>v+@VtiT&|)XnK6D!smjt8bbz{ET(D| zQrlf<%SqD5jZJ>DQx7~Gm1_7-7xy@!$^i;AxLw;}<)6&Lkl&_5q*Bgiq=8(7RwZmk z!A^p|^O;hz8HKvcZdAx-JVN-2&c@JFbT)>bP6C^87xN&GuYPU>ZX7n@1_3H%1HO!w zJ+cACM~Th%a{AHWHz{+rB?cvIzURw49o~!IN3{9ke0e^}OdC&3PS|vBMSp3V?)hMZ zm++AmvFSQ{aLs|suJdMRPvRUpP6-q^SX#1SwDGbrA_gMdqoV^zR_PrvYDX;>^FmDf zZ5#?0Mz-q&C_C5k{hDnd$)Ve^nts= z?sa<$IHXf?P|Fua=G?5)M_u2H(-Pr_sPl*lOTbA`@ZlAs;9j8M4*`Ww9~A@}wvGAX z20awcaXVe7(QSBc&GkDTd@w_UzYhj(5`8_85DdhP{UpQRj4*$0SbT|^YKBGl?4Qy} zOf^0Kq2kmmQT+78#MG2H1H+DT?A~3ePgNORPpU^@;=F#=F!JKc9{TWKXb2>k6zf8~ zCF_D(O4jMW8K+y$y7)d|$&#pqb@3B49g}szCP?x~_29k)bo1RI1I)87sO>k=mQ%Fj zc3Q2rWz~Gtl(4*Nr`xvMood6YJM|VEi^R}Fjyhp|GnhByj8gL9kfToVhgjtFQ786m z!sHh}+N_O+9(B490E|nWf7I#RxNo7p1|~>`qfVGq&QT{460~5$Y&UM^5#tW~^yBMf zDMS?U1+*$*<_WEkZL#UwIG&ayG-!6CLT27x;5#z&Zlfn==CP-7n0Ygs2WP;to}Fih zmk&_+`(v*>Cd%l|Y+#yb^Wa?Vn*%5@e^~l(@FuYn-(AT_Ux?g?(|1nnWe%3;&x*aU zFh@F(9SDeAFD$u$d_O!nC3Wc@^eFpgg39jDT{|=OT{zDgJ36Lvgz-cqjWOMI@DnLR zzr4`UdHb^l=VW{?$>SjA4({@i#rq&G4SOATsb<~9vOpjr3t*G@PU@kr^`LHq%1Qir zz%ntfA>R5-G#!t`PbQg``o9D|C6qFcmXdLyBRYTAm1qTzP!}tBf<28lTq`t?o#WOJ z2lG&*2Wr6aYtRy%P8X4-w$Dy1f_x?tPLSw7ViZl;JI9~eW2&r|?@J=7Hxgc?&5dGx z48M8uty*)HB6Z2g&vjFuJaCQ#G>QEq)@C

    C9~ya*^d%T@Ek9^1m)w{!UQs_|2~4 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

    esY(0%j`}70)n!JmXAp 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

    g`e$ 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/ext/commands/cogs.doctree b/docs/build/locales/.doctrees/ext/commands/cogs.doctree new file mode 100644 index 0000000000000000000000000000000000000000..1e1555113c742cea2d7a458c3a2de18aebfac712 GIT binary patch literal 34804 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/ext/commands/commands.doctree b/docs/build/locales/.doctrees/ext/commands/commands.doctree new file mode 100644 index 0000000000000000000000000000000000000000..61405cd271e53d9938c41dd058690eb6e22694d2 GIT binary patch literal 175967 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 Nuw+A_yi%l<{~M@gv0(rJ literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/ext/commands/index.doctree b/docs/build/locales/.doctrees/ext/commands/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..9e7ae3573fac5a3840d124b601bd168db97f142f GIT binary patch literal 7113 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 C{8(fF literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/ext/pages/index.doctree b/docs/build/locales/.doctrees/ext/pages/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..a1ee59714ba7f00559c3d0912003281cbc29e013 GIT binary patch literal 438229 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/index.doctree b/docs/build/locales/.doctrees/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..bcad96fa241901946aef8f0880585b40fa47b971 GIT binary patch literal 24859 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/installing.doctree b/docs/build/locales/.doctrees/installing.doctree new file mode 100644 index 0000000000000000000000000000000000000000..f26a49c5e755e0aeef1daf133dbf462458fc601d GIT binary patch literal 22203 zcmeHPeT-aJb+=>h+B>$_UI%PaaCotk?Ar0n&dhuBwT%YWq)HXaN<8R+ZqNwrVR7qM~1_RQ?E*()KSTB>G2N z`aAc%`#$DtXT71c5>a+M^WMGZo_oITx#ygFUzz*(7v8gv{}&whdY0Y2Sx^n5>ln-% z1cwbr?{`?&AAD?Z{uc)?4_1N&SKaiSzN@oAun#SC%WfMk>ki(Jmy6Wix7%JJ0&v>v zYo2fWc<6MS1~cuhOO7j_Z6#a#^pf>TGRIde*W%$?SJ^YAxZr8nywT zE^D^!?#73jg@JVlqgo5W!Drb`!ZEmWOuxaa142ER@2SAkA6Q2{4Sg0|W->g$M8xEP z%o4{WJqjNL?GLj~&r&_xOPXVJYbjVD+hE2930Zys^{S$zRyu({_U{Q z?O)CU00$^-RP{FU%0kiFkFB#lYxg~@`o6f9=tDM9`!Wa#dA*rRE9p};H! zxnzu_-?QEn4$x%JU|v^4T1iPa8tyIeaFc{oAT&iTTSPJvh?P(Rt@C`$Niva$kGYfh zSeLAa1m~|>507CuCNYNL3o*M!xNcnmqYsQ_^m$=4QmUFVA8EBBBa!e56P`dGj1$bl zo$YZ-6fDN_&#lw=xg1Q*Wg(dNRd<~wwiWXGE=;SLg|sH^O&j@i1%Fd$=E;Zx&BzL* z-V9AZF!ndWj6-4q*0Oaa$i*hq7=S7%J-naTv#$DVQ{75yp?DTq@K99}!9G6reO9aw zMPMW4AY=PSLqZ)aT!}Yf(_yP_ zzuRT*>ZapvtoF7@y2L-U2Cv#(&sW>f*!2R|!2!@&2o8CSdq;^sGH1;b1;`_sgVWW{ zdNxnQFr=sX2x6gH8hsOr1azx)WdFW>S@oJY+nn#JU9SzTHwL#r$<_k(J=L0zL9`Cg z*Oe=Wg9Ck{i=;K`HQlT=$|bF?$c=KtWEEX!jiOR5RZ9&coaq8QH+9`rdsb?$!A-t4 z!!`6RCJA3l<^H1SxX~Oh!f}jz7Abs6&Wz+cl4=_{yDRA~L!a)tr1pAkTj%`=r0Ppp zTH3b9IQ&OLS(Gk6{Y2NuR`?)?H}I+445(vn+T4QI9#)`Wd_m zB-5;xN>#mNmNY|A>r7ROb^Kqh<6*f{HNlnE99jw`j>N8&OFavYJ?+B1eyMMJHulSkh(lh;D&vAV&Q%rT+HglyLSOli*vuIx~vFSoi(vK207`MTONbl6R ztI)gC5gTN=RAFXSE-7+NG3rIFTyLmyNo~lbMx|QOL$iJms*zrzULaL`2h^g=HYF2g zxsUCm1RLG&!P6oeEi~++wB_`np6xc;GK0){#1?L>LGHZE+DwJ!w;!8WmY9R#aO1;9ebTV^MR}c2jFR`bOF-S)Ngd1pQ`i zAF3>n{VgAz#A{FP*OIY?{$tb)RW>;6c62cbT z(hAqwuw86M+FO$8IvqGUPd`DHO|brfU35$F_RECVE?vT`Z=0S=q~DqeHP(x@atTUZ zB@ef#z%{I58PT;$wKl@vdv;W4G0hoT#(e!6<~B`J`Qat^~J@a%qHT#ICP*=TZnmQ{s>IzJD zy~GSdlXcC|jYd(UU1U~g-@b#+3XbmBF6QUI?t!1@Q!^UYxQ%BM*9LhRo;*?85{&zX zx(@HigeT(lAiVwFMTv7h;wc;t>H77^Z+RbY^8V}BxlaQY(-tLud;R)Fi51pGI%O$% za4&e52S~$~7=E)e77*D}~#q0!9u=n3Ft8pL`_anmORErS8`n?n!O%oyo zbr|E;J`59^`Xe!-*RKl<4@DTJfZVw!)aD~*grY?um|>(QTk}bK{EI0Gi*$z7OBJ(R zH7Z7_p_m%eWUW-MFzlF$X0fD>u5+z((p9_Lzq#5`^{1Z6O}2_>vphSS%bgQO2)(AR zl@b31ZT~lij5YZpxHru*2XoLlxK_7@^cTcE|YVa^pyVu}aN?L>`gVBpMSb3lBL`+yMH+O!L!G4(`lBpUs%`Aica=oT1WlgE;CC1cpm13J%Z;xpGcANP~bs%k!)Hx)H zf(3fh#BR2edL3N64$s~+ZRtUg^IAtNw6F1$SNMub0np;1>rJlenV>}LlQd(ViineY z@iUm8`LJ)w7`!$!iGqW?L?VV^T?*n1=_Dk1qz)wstxsbZ&?N~0o||EYp(zvL=y>2H zj3=fOr|#lXiq`MbfIO-6xhwl)1a`0gm(ceUfE6*nPGL2sRO|3^m2yR+@TQ_^OsVLw z2%P!T&FO&X9Y+EP`bX&rFA-^d9A9Inr$nOARrU5*N_lGAM`%soAaS5p6gZ zh-Z)oc!j)kN+7--p_9}q2nLK~*&>06fj}be9V50QsK!$9Rg9I9isc#SIwTn}28n2- z9u1e-wEl^PP02=x#_na~A#m?604tJ>QU#%kN~KhhVGhc=hJcpNN@lsHm+NI!rycHY zWP_kjl8pv77?d56^GJgyG!wg%g26Of4NHeo4Iv`AQJWFeZx-#5LD3=y=*j?Q7cs-gk@ygRK2uIc_ZkFyiLX~m=Bk>L9jp1 z-RqAK*E1$qWf5P!so| zJhQM)avv^(rh*v4N+3sr-s7fVW`VK(Gyy;777RVypiTD3glJr?gpirg0t7bVrP z`g6UHj5q(DR<}q6ci%DgCNE>=vw4&8uB>$lVi3%E7HhW$W436cZs#K@;tac;=ibda ztfL`G>pPNeF@1w#EUtulpN{SEZ0|jxaxMikwN1GC%$~XWSPJoot5v0DYE_e*f`+0r zWDR@yq7K(Ut~W|`6M45g*cM4&x z6f1__sLKi*AIPZMsOmB+t94C7mbbzS64H767di;^JcGI#-$sFKm@HJg2w6MQ24lUb zA_QB2Fkan5K$PkT5fJ58KnOW9`7Y)6BvmqOlUEC4PabCZ5kbpA@KFp)U{Eg-##Ws! zenp!SSQRQYLBur#TaYLY-l2ejq_#bWmj+ns4VD(CbS^W29|Fj4qKKftvyVL8*z3DJ z$77+0f{4wcQXuQ9nP{q1(-eUWHW= zni#2HS*01+TS5Yi^<9ZT@zHcTlDYx#IhGuW=3y#u$AFAEFiCVn$ z7Wedo;X^}*>Rh|aEA^92bL%4nKJ+V345OXG;$uTtWWDW`;2=jOINoy&bfE10aG!n7_Z(Lp<^TZ+(P{cW+Y7 zo9!c*Nv}6mw>#M8U8BmogC$y>qtA7%!Z+8sAJM<^|GcH8;w%2hJrjy4pE)stczng zWPyzdk)7-w{udr|Xk7_i7uRVaSG$ar07Y)J=!MB!$K9eb7?ecmIQ*06g$+1}!yT!x zJVv@#(hUwIuQ`4`Jki1nXYeL+{HS(@v{<4R_&40>4VA1c&xnrjInIx^fBltDjhjG9 z3;%Y{?0F9C`D;LltYE!Xf#U%Ss5TmkUQ_C<4yPFfXDDhiDsoh-dV~|M`BFby+Z0@z zLfDCP-GQvxq-J3(n28_+ad+D-Q~;3X-$0t#ob%RGXnHH-nYZ4BM=$ezTec|Wc|iUy z-c2)kWP-kfHi-$MUc{<&+1+rQh!cq7?9chPnRA8FW&&*-k*^Su`Zgo38}W7Y1S z9j7E@VuqH99n2lvs~vn1e3%E6NYMm6JiLzXD6#_m zof{_7li#!SXc4+%uSiD-422oRs-YML%0Kjmj>WTDl{LgQ z4R<))+sq>_q1o6B&7<(uv~Lcqd7QoOBUE`4f#L#pIKD8BQYPp8y&6w(IDo<{k+;b{e`` zlT`z2EH)qz`C3_(4FkLV3Ic5uUrWdzyeaaA$iElfke511D&A*O^_c^);&6kANhd6L zXL_WS)(Z$H(b4x3w#VY2YWf5Q&$wnbzA7DMCqp>#{KRRT=L_z_))%{=CT)WGB>+ZK z+iLR6GRk=V5JYZW!`NPMdTc`+UPCj&E^G$D+3`Ts;?Lps09}GeQQ$2;5jFfcVfB}9 zgVj+e^-toiB9!`)uxTh_SG9T(TvnAzv0krN8!D>XOJ*JQ1XaE~W@0(tj*djR>;@g> z$4v~l?EpJxa*IU}5!Hlipyb;1@VKk=pb;LI%d0&*Is*I9^+N7)SK{mCe^X35@MMi%Byk~4(_ooNFA~PFNRfJ^2;ZzOxGmvA=kM&VIs$otIz|AVvMcqH!WK-MBuf>!O18%J#?U|n4 znJj$l)~}{|wf>G^hH<9(kfNyp|6yprtQ}ryy#`3>*b?|MF}CzKfHiHS6~~rZpCPDp zWrm0;y^gNwm=X;WWMWF&shCph3)KJQs911S&4!aa*e9YY4=4TF|7EF3RCQPi5^E{U zmZ)W$6zHN^3#}ENY`HAg>a46NvZk1*&D7;mv4M&oR#((oola3@16>y{N0F^aS4f{w zFSx1GK`8tiszVqziDO>7>y%9SM^oi6?GH?v^5*E25y69XDzS!4r!O?UjuKT_uc4x) zQDT)kkL{)RQ!h}xzun%2_}3T7Mk=q(SgAjm@wzjITxFUJAT6Yd`KG>AQ4KQ!|W{46X%7#S@;7 zxfUFTcTL$^Tu`-yR0bW>_X;?8M4AH3=ij5Y`#5nf5;ws-R{vh#A6(-X5?l)w)*0?v zP?3=W@C5@gKIBe2J^VQ0Iu6}3#CHzC{#C4KAr|3P5!ZrT^t11_(fpY2=uNt835aa~ zn>nEEZViHyCcx0)*3`@G;27Q4fQ?G?CJM+q$g?bZxZ$aX>s~s%m=yru8a~0%RsN(& zx!R_<@CoBZ9ikhcKp9+^g;VIwHoS!P;L05VyrFjd6SrBhn>GmPV+Z4jMsvX&%Ch?F z7;cdgK9m~+T&8yLWC2$==!~XB_}N{Mt%+h;hcak`V4?4u`Fh^7@%?Stmrdrnj@v{U z+-NfwOdwQse-IoGiJyWp$Ds^@Ged8NK(wBRI0cI#+yn>F`)%15L!E;YGzZ*8;aSn0 zVgsDnj4JX$af8b8acNm_C!9sdJFX^6>ViRsd1#}FX@VlQAp`J9 zDmUmN1unA3n^@B5G&3d=VR=Ys3sIIPNg`TL3rNV@2n`Ve?}l7PQofQSC7B()p3 zmceGe$uBB{Sy-i8$)LdtIQR`kGJI=*dq>VdEIZ9uKcVU2_OBV9m%SC7z{O_1db1gy z?HJ(3Hbemi!BMZHLf3d^#{;46c=VEnr|V+$eP` zc(aaH8%>4;aJz|vW7zD_rE%NAQgmw!#I5Z0JTk;KNr# zJpQ4|H}vlx@GU*s93tRRBkQx)?^-{wzRwpq-lO#Z>{DxnK0ZKkfcMb{4;=8Yz?Y~% z@{9EGFZA&p`nU_5pw=n+_zafF*6+~AIRYTzqaQ5LcofD8Y5Li1>j&F>ylp<#Ek4dI zKE`&7;BRx-+Z^sThk1*`!!0j)Obi(Rw)K7M-$Qii7M>7Y{*9wcw`YV=42s0GK2Heo zZyfPIh!Ou5edCCqAnZBfl$Ga*^KDB%IF?o_nn7?3l?B`aks^mr$b5=+p**FZgzaFR zpoAUGX~%lXo4#r2VcdEl193r&$~&FRz{g7H`nZcQc=Ir<=ndWPVZd18)(Bd~j_9Zi zgCmUD@xwI(Rp%70RJt_aZl*21b&8F)Z2=Ph)??imqwO?%nc_ z_QU&!P&EU4NL3k9sCN>H#hP?B@#D_MfyL5Jy-;41^g~sVxPOtVGyW1Ym@Sk@@icz2 z`c&)BNmQp4kaHnYgSp5h*&iGX1G5L8xb}{x$S(-*4h`3-@Gi_NrwRU_5;jShYT{p> z#&E&OcS@(y-~X+&4e-EdT2boaNog iELm_Q<}Y7+j@Vtj-8X2hTPJrVXONo~xiew9zVJU`n|u`j literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/intents.doctree b/docs/build/locales/.doctrees/intents.doctree new file mode 100644 index 0000000000000000000000000000000000000000..c3889067635019984c4261727c86d24cffc24a13 GIT binary patch literal 66965 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/logging.doctree b/docs/build/locales/.doctrees/logging.doctree new file mode 100644 index 0000000000000000000000000000000000000000..a7f24d26e28bdfbb688d931769f679aec967824e GIT binary patch literal 12489 zcmeHNU5p&rRkl5zpKi~LJzmz%l65E+ywl_L^z{5s4>)MEiDNU~NpKw4m#DkC>Q>+C zsje#O$1@`>0v-&uba^4gVth5q&h(zEe5DAF~Bot{M5Rbe?f|rODfd_uRb8l63 zRnJU&#?A^MVW~Y;x9&aX-1B$Ox##@W_#b?)aZdgdmqVZ1?m=BQP1iG7n20IUGvYpT zqvY$!!fz+Pk<>&b(Dy?x4h)uvbC_Xp+c5*?CSSwHS(+c&PFPO?To2<;7}*g9J-1~t z%XV#g%;E8I(X7|C_YE)b-q!-=JG#NPx3x#y4mB%w4VtatSyyua$Ym|ZcK6sRYbo7{Erd&4HLXNl6ilM1uKKtnYI@ zw8O!4VCQq9LbS^jDW)2~#(zdsS~>Ihn3za;wks}zc$VzO9UbT{-O3l=O2lNOcU`^D z5`IHe^(YGLP8>lF#P>1V48dbDX*hZqVi3>cG+91PnXx~3>FCBDc1K@gUfbpKyP)Vb z{w5zItZxAvUj*q(_$}kNir+fGO<+wN*onBqqsR}pmzJ=DuWr>g$IcMqo}>D6l3~x{1{S3IMVk_+p=+} z72<~LZ<{7FHQUwFNm`@6QE#Xag`y1vA9^>?eSVfz6Sga(g;OJ%6DJa)qzrTEjh{bv zu52-xdmv{}<3AST2m!G_Rtyion%)?#yvG0gI2FiFY%v`Lx*Ixrq<0*aJR_F=Cl>vO zLMa+c-0QQYAa-3AEbV*2-jaVv=9K-RpkoQgeAjlnb)5Qi+K&!gE=Gqw!qMrJ^@?~g znZ6=UlCqFS_+v#y@6)uC^l&NZ<5kkf6niUVQS5IkFID7GkuPE#UeGoZF_W%Zl&d5* zQl;5}DoL!sRuPjSlaXyf8TbTgFGaKC2$;dSg3zyig+&N_yV_TM?SbM<7G)gwX&~z6 zNKu!zQO(2#!IRK>n^M@lwH!pov`H}*(}uO>Wo8&gW2>>c-dx+*(ziA`%-S;7)>qfJ zto7Aqg1!D%X6f(E0MM;3OHtp_z^hPWLEr@l?OjtdStstod@L{M>oVqlZ0lOYnYImc z+is`4ZEGqTtzs~CSY5jxQF0JQf#-IeL%2WqWF#zPixJl&2_appsWq67$jr6uZX7W4 zwx)-g>t&>Pfwr#)E?6CE`?ljygoxPQkAcS0Y>CYEA`K$eV!vK}Ck3QP_AH67om1P+ za2mQRgH4cX_k9OpXSl8Osx}Bs#8k$fOt=$@U4x^px0_2N3*k=EOR_rzlf7TY3dmtj zymbbq7ckQLqPKt}oc6(C@TheF)i3JlY*|=p8_;&gj#!{Og{eK0z^X`WG8Iq(DIY>w zJ}_(IqQopN_=l9&9WFw&N4=FrK(6&V_%qUBQQiZmgWM`3L?(x(*Vk<~>4jJ?CNW2O znK8m8F5#UW_>OJZQSwZFCdI*H#Xlr2Ks%FNF@+bIu;G~!&NSj1U?M|n6P@#!bybQo z`_}&jeJ{vuSXp{q>@D*E;!?pfG8NBxK5$yUNBk(IDI;{emr6NT^Vdh&+z3*SrY6~m z*83s|O3$&9m@?PcyN3xvTis}~m5yO$3o`_W|}X zDh3plgTAvJ`naRP)sK(to&}E?9d*4wA))2m!J(HQ9K}OGeDlk6!DDKvYYt%$k(T;R z-6wmJuC%T$fTRmf{V$yb*fws308(L~l zC-ZAyxx?h1(Wb5zv?jHw<#lUib8ETLSzgiC%*JxZ=rmT=R#|gPUul@uS}DX3fBOhZ z;`tOm=#B<&L&nl>Ysj~u2@o&%jg-G?*#zA z@KOZ5@qAM*;2KTrDJA&sOA(ykxgV#~XY|n5j(X^gj=63yqq)Ak1;@Ox)?~W5w$|J* z*4C}Y>IR~NLJ}zc{#`FX_G3QQQFt*akBWU{fEe?=Ftl-FfV?Z>@<1*p6X`Kj*Y0{j zl^y6Zje_6Y4-iku`7%1dh^|>S;265&07bi<#tL7jtY!pu`RBv)tHS3y0jA<6c1_^&)(J}#XqxqzNe>rc$0 zf+6T-|5NJ)Kz6zu$_1oTCAV zHWCNrk+k)q3NlI@rS#?UkSb*k=2Ahy3c!AUB==7UyYlV4`x8~v0$IZ$qzx#i-5&zD>wmhx<5SBP9t?m6e6teeS z{C6~y{Y*jMODEYM%hE6|9}9PmP#&3K;N&@^6c;zp9S<3(48C#q7aN>1)huGF(#>a{ zBFL*q%3*On(hsUHQ{yx@A>F3L8B1^vxi9P21_tSvs)mtCNei-+L-b~7sFS1C&>!Rx z+b>RR!FBxQkVh+>MdG=E;P;1?mye?p93tVA{(W3>>(taBJbzvs_|Z$z^Oa9RUV~J6 znAc}?)AI$jO;hPjW^6T^E33_o6?4tn+T7Y)Z?cBI+%zrAGK}(Vy?77a42}oAMe7wL$;;rs;s>jD~^3<&1KKgSnkD;Iq|1u=ZvqnRH)ru;q>Ab>Wi_zm>%;fMAKdT(NBD6Stn z5yde~BjVJw;!ZMZGcxkdFjX8x(dIl_G2(z))mnMe*mO3cn#aUc$_@1B&5o;zHO zx)CZfD2e>4?!@Q}%Swo1LZv#%uB_^z7SUy>zUr`7DomJY)WA(_-^a_P!1Jil3N_7x zM4VqjsY6krs^z<)n!d(?gXuGoXSAr_jJioc%{a&oP?Wi90Sqp?SmEPSF+*ifH}1C% zEJRPqQ!$Imo$aIJg^G6Qlh_rXRwK+|a->DsU@Pl+1HN=Y+61>NrqMHqOY@ex-`cq# z5TiNyD;oOPfel7RdK8D*q;WAW>y1D+o0j`9BVc+TBNfy^4Mtlc`fL{&Vk-*?6H$>d z;bLfa6Y+ZaV@sAZTWQn=ArPrXl!(iU`2{HB5=tU&41E~_(R)Z1KdaylXvkK-Uj8t& zSX`k!pbj7Mw5^hCL3g_`LQZhp#1;Mp^lge)D1Zq}bZ1go4`^^b3O-DzA}MjiHZz6b z6Jl0}n{N$<#06RWHsiieCPp?&%V*_)4TTJF7fU0T<%p~@lk^8ee#m0eYoWA&Syy0D z2$@>Nl~PM!j*sooRw{eBg(QIb3$PI?|Y(iqKn%h6!0zVgBOH#u|)xHn5B#@H8?2|7Hdr_N$ZD z?jaYlS!BsxO}K?6YRrTMSI~+9Loy?t>`aLpP|JQRx6jdPUO&Zd?>=Zx|fyE(T<;Ob%R@EX3-)*hi6+ z8ii$-L+S~hi5ZMgq>;M@ID8{Q`|!{-yHD!tcsiwML>P6kL2LRQX2OUMK>=rIs(U70 zMRct1wHT_nP77%js#VlC`&7)O%@g)vj6CBN8+C4~617y} zR_e{%a8I*r(B=2|G=IV$@Ne*^{0IEo{D=Ib7^haT|CtUD)y=EAT=_jw=zio+j`ZO1 zZ-~50i~m5B8<+SGV1X1Ykt#vkx+@*nYk zRwp8b0dlzv2x2i))I@?KW>8a?W=qDkBEj}@^?5g4O|;SZQxdLCQiPSj(;7ydy+ha zX`>qqP9n|!6~f#x7Kc$Uo(&IiVcE|{^D~`~tB#>ThfVrECsyx4Bmr55ru0^OBMq5U zZ_*poGeecA-1f~uUv}?rAh}W5G6E-R=<0o+RA59mvq)=BU|ZUtr78pEh$rob-Xmp?z!ild+zghzUH*kPCt$QH$11mzSLQJc;1hqwQdymH-~3M-EdH-frRF z{q!9)v=%R{bk>ePXJLMGX*a&Qv}d^E!T4e7O9z(@EL}a^voK=b z(wW0uoM-nAccAm}=Diz%kI(JBX+(U}=5Y7GKepzt#+yr54(I&Apw|gD29N{s{mf3( z2akul!xg{Z$3y)4PI{UB+gZ`Zdj21QA0Ef(=$DP9gZD1oa4&jv>C&T@&ZMv2jOLaO zq3eh7kB)y#{L@BryFjzi>ue5hT^bD5`$rBR#t8cJ>!$`w-L?5{@7Q7U@Jc7>`Mpzz z{r;)7u+u#>@cYN-mjGPaN^m9Lm z$2v3ILG5h%S*NJ2xuqM1`ySKl4;I#Y-IeaK$8IhiyypzGaArEBrM;g!m?!kVA1Zc2V zVq8y7dDY6v=yR8hKBrRBtV0!gxlAl0g*cdM;L?rkn<|~i)hDS_pQT%u9-B%2$xDwb z5jX}>BJe#Uag9lR=^hCB%u+$$m>CTLs)G3tVMRtFmlX!AU=O}CY$BaU%0M*SKhl3@ zoyy0uLm11R;jV$-I~M1*75e*B3~NDd=}2ofG_v7l@)f#yh>R$@$*q9!OJM++VBZK~ z?92wRbi>j;!?}?OjW)p*0f&z!@f`C9@k#%bh{Eg{x8NyMa>YKU^mkdUck^aBILO%k zMnS2Edv4+{-L%0`6wQa-)x%MIB3|jP$GtwYmWK!3^-kD7%)fsK zzpf4XBa`?`DKN&3@NhJ&qUmEG*p=~J;_~$Zms5_45Xe~|1K?d80HZIa^CQ0Su_o&O z=cVeukAJP8JKTJ;G3*w`@TQS1yN5JhBo_32Vm8aVp7p7y>Dlu_U!mt8r2dkgpOy8M z^nB@Uq}+Lz&!;Z0c8>LYI3vdv^abrms>m72GE8NY*l;I+(up>QXOE~3>4!9?74)@z z`PYW-;ic|se7LuEAi$CmFo|JZ~kg`V{JfO z%oqj-y4CNtR^fqmPT+;LsI}4sLkCO#pp|rcEq`SNTpf_jW52F%^wzuZR&Qx_2B{aH z@pk3Z+**9H#d$ws@VEZMIqMG*8zuK>Qr7PsXT6z(f$f@Rq`9Hxnxw&Q2-Vj8$O(L%Jk~M#@(eqd4X%R&) zk<=oF2d3|HM_`SPEUsdSx6*GtCQ7aBg1_EbNS{4+5ufW1Vm~6;_u^-6bb16EzjcHy zK8`FtVWk5Rr?2@~LDAPEAZP7Vi!4^QFgtJPZ~I_!H(>cO1^F$VHr%%!uSMwl!owJ| zXeX|%XF_TT;ih%g*pe+@B`!aSzLdI=yHcJB-FR}L8}ej-aJYl@Wq4+P0Asfse;%T~ z#o|(o?Bw0l%z@=Q@mJZ5JDOW))rL7?b9hc+QrKim+^DV=sY6V`$A!_SMh+}@@mC{ZEQi!8F)`!+^XNg&|DEZFWC^@Dm%xjMd)7}Kfo^SJ z!XEDC5@3By8MArsa)+AS#Rps?kV~0BO0k+7z@kLPS8JKpspcM1f^25zbC2OgZltws zOzE2Cz!o}280)?j7=~xW@Cq>Z?8Hbi$#ZvQc}{pXyy!j_glIhkKbrzVPhc~6=Bp@v z%?I{ow58So5qbH*xS#Td5otERp3ev7o4yMV#SL7)Z6%TAJGSMUhHWQ~8QDQnwCvw` z2AaBStp#5$?vcfWDTiTB*AEnABSYT7Pc*IiE0|}=8ChBBo@7%iVs3bu>=|NK9n1t| z@z>!1MXA@qUfk&W$C%$^&O7)}YpHW=Dem1eM{`N$<}AUkgSHp1b}@(dH`dp?m~d$J z=1e}3GP#er{Ur4iyl$EE?RoQ-*2$$#xYUXffLa@L(6>{q)fnzw>HyqyQ%Pgyyfp`R zEb4XF*W>7>oASBglm934LNGvYA8AnP(ZLbl)gScWHwiXuczq-8Wg34?EvJPJ{C1%O z@`NO6KN*qVqPGt$Q?HpRABF75@h^^Latm=GTFEe#d8fMNxUpd-x?x+1ZU?dMIf-V| zzXT3*k@D{hFG}N)hq#s=N_|rykilPQ@fW!BDg|Vgccg>NOjSOMo!`V7U2xQ223(Gk z2gOZMKa))9Z@DGA#7<$YF*m1yufh`>RkbNHk@_3D_1)DT7rwklf%q{sfwI39$(K!Vk zEe|mAZ1NxOO1qY^`wRpGa`s+aAgwlJ+-IZjF+*lfF<#;0WBr!g)qNsoSns8AE#FLC zPhHeANuBaR9jYAEWd7-mY^-Xwuq_^1ER6f74oD~QPnTZ-u`R!n{&*Gs;NB=3+qf&* z0#HYCkS3HOS93#O45H=s@Ctk{x7gHn1|E(W*G_aSu^ruNTbAcqFokv)c%c_)M%0eR z!yV^6b)yp=Z^aM$6!G~b*Z`7$5#;t@rQF0>Rn_xr$9wJ=w&S>gqidmN#g6Sc zZj>ZWU|L?77;OVshx>3gUjr=!E8Xz8=tcb5b$~2^e-3Wit*wx))910tut3w~TD)@b z2G=rm&-2%TKTtQ+{gfOX?4eeP{HU%o6+`II`3RKnY@~QdQ`ExaZ;3l_ULi zY>m?j5SyxT?*zi2@YX`o!qFQ1QG!MlLwa9kTbZf1lrAf2d%bS25C0za zexpy(9-1ef&|N>(y6bklLm{P@ya0OKO%g;5{1vWWExeBy(5dc5Ypu%yf@qN3hdC@W zP9j3ff`4nRXKr+{o6VOu@ITV;ch?7<)lMI=bgb*JNWfxbgOUXBW^gL)D0SzK2k)d+ z3wCS~<|2P&6rj5Mfv4Py|Ar>6(TXIUmJoyZ|IdK)$z)?@qckt55I3iup?Ox|S$@=x ztKX*0`A@X>LX1jcsQTUa)pXskW1A!Epd*+#2m+SUb zjXd)Q2pK&JHN)j;J#hocDVYVipzODtbuXWSbv#Be9Fb&1sF~haj9~a*4~qD@?Y_GZS4~rJQhf`=$*QSeKB1mjNC%x&LI6n zatqn_;a9Q%2JHm&2NZJZBiMjk8x}+chOrfZM&=~n629iicx5F8??IsVcN;U}^Ur@> z%8JiF|Mdbh@R)Uno^osPtz(GbC;a3{Inrg09Om4g`Hd;-N<7D(Bl^^H+{s=N+J0-H zZQ1ji%y;}*v^8aH^Bo|a-FM`p8}}Y9m?YvN^Wq;flXm5BFN!6%U`-uQ>Q;vQY^jDY zpcf>brne((wCS!B`UrIziD5-;&nNdy-e+swhOivACWSpV%5|fek>Yv%ksn(BVm`D# z1Ft5HcFI1rJ3h29vK-IVJi~}BOa`!O2CSHCm@dZWd2Z^N?i~1mw8NZ6b1CFCIEE~_ zb-`K9_oa7--Ie}&9FF}smL8VHpOJUiT{+o_21}dwTumDD6&mw_|O<^pyQ)F2{4uoK=qB z2A1qYE7?RIdzR*yvFSLmm1wc&8rWNp+gj)(nB;B9P_`iADu#G7M?E^Qyc>Uk%X{&c z%w>6iJ8z@qK{h`AU-|HEpvIINGvcRJ3n&`iqtFT;UK|)v7`c|6Xl=xP+ODVB@K3D3 z@(`g9DGWBj@YDu@II)vDe_;6x`~^pU*nV3f8Xkp@-mg6KYwsmZ*72zpH zSaT!Er5V#7&$?5~wTq5W(CWyDb;roV6B<~mU- zxhYPnyRl(N-BIoruChU?d0Y{Xc@{{8Idup7j(WSWJRDOPBS~N0w0$gu*{SJdl_Dgd z<%-~1Ze&96t`}<-;*`FpyRKy=u8mzj-ym04%?QD`q>At@Kp*WPA|f(hfxfq3cp3WS z*9Cp~d3s5yFQOe2(DyS_GW~H7*qd{v$FSj^?YNGs`IhO$ZtU8gAGBTDjDogL*(Hsb z{sz{aTJ&Ac(KpW=(TpQX48ET@Gls$JDKL2ccsl}PKSbn8#!dvp53up6Sy2JRkAZXs zATr33bJIc0Wb=`9)4pun1i5>SiLYytJkX{!=wq~0e zCdIJbP7?Co)XWjUnd-^60-R~&GR0=UbZXqWLjb4rx}Zb5=_REODZqIqh^iQ(V)|`h z`e~r$OgFIJx1vCgb=$M_(Dofui#*ef+ji1+Oj->zV){3k4%C7(n;O%Eka>p6e%aLc zXwEo!YRsO})F?F}aP#I$Zcc>AgEc&^Kx7-FGaxdBU}22o=zBbb`KX#sRw=?Ypyi4X zK-`I?#a7!u&@8Y6-3i>bZ9+4`$krSCNU0)hH~KDG6k%CqQh^$XV~f+W9{0T-&lOEx<+wQi;9DzW1w<&d?B%AY^qaXspl34T9RIPJLLL;ntrO_NILO-pyhD1-7xWeGxCxkwro8PoG6Jf3nose z*_aV0(~0ed(f;#@soJi}!a|;ws2pv2z5uy~4YKo?Jz5 zDD^~vxXVCPg$5P7p9pqe4BE`~^pHPi=z0>u?{C8o)sSNsn2E0kwi$#BH zmHb`Ma`{_roSSlxQR%?r1oC{$b7XyiIZKN|tEt6J<-gr#qXbDU6QK zac4_!3##&LdPk`$3do(DlI3?nT!WnD*cW%KcHo;xIm9G~RPZQ@OgC}eI7B{AW0pUY zb*C0`7jnpPRwzODT4Ko<=(48(-9E7eftPO}LM1OJg5B%bkfws&&x3Sk*vUg22j1O~ zmgyh7~2_Y621D^D@pe%ny?rP|faaJgS_btU!=ezd(y)uXMk9E6qtSzx|ZQ+(2L2mV7q~L<>KOfaSv&4 zbegF@zv{0c_mW3WN`svy#KA#$sghDqqBgy+R3Zf+br4PCd>(};=0Tf@!qlzAcG|k( zIhGB3XduvKv_m_#ailwJ9BjUsb*C1PEj|;Lutf>Z2Z=pn;LM%^oR_Ft6L|b|YDCH7 ziGcbL8|qX*4M95d45=ROIA~E!X!-t{{;EJrn(`FTa!v7*B=T(2vI7l9ThoIuh+?yC z*zGos*2R8P(59NQ-Jm_NxcE@F6UIDRRS_9|1%}Acdj2?xphB;r7nLfcfa%MoWd2jY z{Fmm;M>3}shnnN~9&OWFIA($!+{E+z5LrETW0*d|x>F0&OF2wMekk$zcH+wzKC`F5 z=Xqnz2weSjqE>QsB4GY18{AaDd^bpE24=}P#}RoS1p7-h9aSNcl;Rgb%Mlp`QKD-R za)e?Nd0mMcB3y3hiH=0J015p~5t%B*b|dnV(N;x>+8%?-8T4xyB*)~19KjNipg&)y zSC#ssK;_>}DS)R!0AJ1p;F-D|YN+6*)7h06|ButeQGnCMI3k&ZjW-Ry$huRD%FE>q z3(gTGF8A*)!)5jqxV%VaEo(^Hwzz;=Q1Z5j&B|?ybJ0|lyHXK7y%MA%HmBOQxS(XL zB|8`QL%{oLx~f7aDaRhra&#Jzhurc z0Ky@r|HAPH{&RLdA^W+>`3D1ehP8DPE?{Sp(^IPt(72P0l`H|X^tU`6^ElK@4NTGK z<;u#>KP-(%v-1y6%a#JV?kA3miZ@YWg$88}TV~=IZ6s>qG|BkM`1`XbR?ic%#E3UO|3$t z8M^ntSY+wG%RfgPPsOp5Sq$NGZ>8VrCcB1(fPR(@SC*%U%8J?U9Uv8?QB(Ver>He5 z`Xk9fI@nuObM>^4n-lpE0=1o47H&>L99;D^ByPA#jQKCZxn9%JL&phYEMQo4RZc;_ zB|l#Q^rJpjdj1im-}x@;y#St| zXQKpONXs=0-;WZk*pR~)J3ehIEPrn7xWn?_j6FIy?Wu?x2!8y0#TS?oPTSJG<1L*I z*CB&aR{3X|Z2IiRb~ z4T2x5cnpZDB(H+L5AE`D_Io(}@3mu;F|cs(*0ur^1VHH2w*46COL}AW+pIga%fKu6 zGB7(6A#$WFg>->fGZvr8p2CJ6C~HYt2u9RI-Q39Pve7Y%%7viM2B}6{#niY4QekS` zG1Wrw!m`1ZtONtd_!%{QtbFfhJpyFPLoBTIK257kjM-Nbb08!i$Yn_8b# zKeij57s~KNYE5}c_fKGe9Gh8AAk#!55P)P>pN@usRASE#BYF>gVFO%%`~yoWosyL zX!(8=8isC|R-lKvuQ%TGPjzCu!MJ|}#=u`Iog)7gL*p=<<1sG0Dgf}`=>?^#C;<4+ zQ!+aSv%iruJBbW%H84VoPzQ)nhkA%GSP;QOvE!t1YTG}s?$iSChSAK(@+635R9KNe zeIgw{oTrCuWq43N+<*Q!ZOIYOEBB1JouvezK?#~y(<@4TPXx`&(NvXxQZZNF2-2CM zIme+%3PsjgK986{))%uL!d&ejMhjX;KZsnAnSEZlNaWbbZPY~S{OujdPGa>F3LlY; z*hH*;92Rv!iF%&gus8et`;)%HeZ{s@s5qKDl4q1>Po>20LFIWFqM=pOP+ zQSKmc3?J^Q*?1Q>MWnhrTeDQSY-Ik@Sir&>N`Fx$lTuUoEK-M5VGd;BepY*SL?$Tc zbLeFyOhwTPe#yfissf}+2*)6Vja&$B>}!aC1fGFND>emCW;b>Nl%ojkHnw#eZ`}1* zcWTYz1+r<2qt2krCHV>B$e2r#Jq5;bLYdiBYCyu_8;MfM%ZYIKdN!n~aQIe`&Wyvo z!Wc`CxCBA|cug0pl;B4|%aIuSp5Z3QHf`f%OMnUpsP7-*n1!FJk9t4Byo3;2aHQ_4{Juf&}(RAx_s%1g5aZJ{v)qsVQe zk}v91+DYT3WU46Jjn+%^c{9zmpy?C!6H2E|3sT`=Eo206DgmoDy{ptC1y&6ZO*3mA zhX@XXmW#kbr5GH_22@e6$rSnKF14Ydz?L$1>SM&8F?T9^3Tq)-R7B1O&uSpKAc5N8Ut`{yy*9o;}yWxxTAoBd#!#-sxc-JvRKILXbUATf0i2&Um zy{J?q1$5V@Wd1Y3{Np+EQIWyXG$XN5s{uP#KHX{sAVUhFk7}BYGtZY;cWR+~X_-&V zI9P(#R}x>w(3(93S}%~iMQTO@=#LP+lCKj1^wn&5QvvjiAe|YY=Z%fD1d~08_T@Dl zRbi6UVhCD}NhIs~NOX!c6fw2}R8!K-0H;C_>uANy z9XIi^ndJ{*lpK~>ltQKwkohO{u2O>($o$}xBIrW|@6SbmyX68G8GxZ@B^HXPc(@)U z_EE)1M=@r-dEMSWWZkJnW)@K#n+a0pl)1ovPuv;9XZ95Myj0Pcgwk(ND@qgxhQQ46JTJ!0;_Zr_?V6h7W?M zift;=}t&Xy}=RhSXdV;yt5|ot3GN&|-Dh&XN=jz1l%~Cy>8z`VOgWSQT#X z#0NQUar?X*Sx780P{I>aF5s%$zJdGbJ>2KgJQ|qdR^1(9IXJFXToptpk{{rOf;J5V2&;`^la{q4$d|NG9zgM7lL5?N8XC)L^YJX`ck? z%qDH0ILH$7^)O`l!J0m*KuLP=e$aAIdPu6o;dC6efS;pdiyh~JXctw(Nd;u#HeRZx zda&J~%)@*fSruWvJ!g;Ln1%TyA_0hd=~bobD7=~7AeshDf7hL z)GnSQeO7|6MsF!)Fp)=c3uDDp@I3<3ncbhM#%f0 z+3^y!m?URq`F?6GWqy`*C!s)+!GncQ%PgEo2KTYy$qk4=sxYD73(}coP!4%=4dgW0 zToh{Cr81?2BEV7*`y=E{+E}Q2 zUVyu*UE4uDNnekXcH<4_7qafu8q)*Z1ZFu;+?tj|U4N07GUnH0Phkac<}ZOWTlO z`F0{!a&#hCzKsoRDp>wDNN0xS=;kG*ZF~+S`qr9WssKsa@D|W=K(_TDZsT463-yw5 zaTS&ssQMBjpV#+LE-Ps4+oamC-GI!qskwpX&??X2{4$1FZr3w10g_*#mz4^nfaKpy zDTL=j2wxC{5TQo7X0~yx+(d$y?|QgX2e<2l$U11FGFj6=+GkmJY9Vw`ylw; zHC+I-*>2?KyO&(kl)IOA zV2B*G+3ux4A|UpO^rBLW6o`Gol+1q~nE&lL^BvSh^7Xc3YcURm;TWtRnT{7@Q4%G% z@UU@c;8xb1TEu4OAMVFa<9y1EvdBO}92uKIv!_7l*+K&nB99ZLl9v-9a)}LTs_AnB zq%$Kjt&g8FsRV(~hajVxE~*enO5lT*BM@OB6db~d2Lq`C3GSb>4Gjgea1*PJ%RTJI zCy`Pm*lq-l#RV!VO1>F`A|}|J6cuZ44P$Nzstd0kl2qzF>YiL zxFPCT#D>;5uRhg-?FM3AJ%o;-Ri+I57skkOm{kuEX@tq}^mD2dM*+icPRafkg8l!V zvp+$~oe|=K9S?N^O&xgyA==~% zPHuv`5m3tnS63L39U7X}_{4syL)#7QD+2;-ADZu>6 zDFyLE5aP#kLEwHgGl&ps_i+_LoCKa5;i^^#Nd|smAT-}J*!P#LJGEfWs=}n(<+&>) zO~uRqMGP5(ZT1wf<=gEP&aL9)L;yV>}t1pvJo1yNbT7ejP5Xt^acUCq{_Ac(1cmgR@YcO`dhU>j< z(ovlM`7w;K42GOWfZ=QDO{L-}VE7|bvj3$J-K%rZ2%Geh~D0;@~VJcLU8 z2J0s5+l6JK5R{c(6j>vAFvIK`W>IJ*a`+rIlFDJP@T%~cFBCo_Gq5Ou$_tl2!-gg| zAcCsGqxl+0MF~uI;j%bFT9(RrJreg%zfs^pk=1JBrn0pJ_IF?mSzrMv22PA+Y-su9 z>3CRtAOQt?Xeh3T>)M(+y(!q$-PxMJLS8_YOvHk6tMaPzM#_{GkR1^S+-%WnN=%Ci zA%qUD08y1UtYZ8RgYlPwmNPyMbw_itMHS<4G>(G=y654LtLgi8gnODBGyVYUPOX*A z$|ACTMrL1A3`#MA#}PlqJe}+*EJ3=3N92-iyq)Njd@LffvWD|*Y&cUP^InjO$egN% z^PUldO043`Ai`T~I#?zCBcSEtcYIvfgF1bv7>v~AAo1F51mxQ&UFzb1fit1_w;OkP zk^qBI#RlcGF+^_0vm^n5M8Mv2=|!c^D6n^GO6I>Df;*8jza6%{#A>4+go}z0IB2fB zniu+}>jX%$GPR~gug|(ui@j{6pYFSl(uC}=tSj0g$qxH?2jC_^AgaF`^*U9q^{&cvmM ze&fWhR0Fmfe%IzfxBj5Bin~e{)_WVc8EIjamCY>AvimCxmqYO??r+59MF+PH~fE(zry|A=aH*^j^g8k_V za>4nXY*15SGX|+Ru}-z%ER1n{$+-z(K3LO96&6Vmo(fv72)Nh}8(KbMwzw%4#cu=L zjG?1yUW`1T$Z38Bd#VWAjl~N_b1R_=<><>%_$rK#qmYMB=Ck(&joGBPlp3SJ-z%nM z`)k1VAI{nCwtXiI;>go<1AEarZf;5vOsApIrhN6rId?B%-KoW&?9?*8m8>X#l^8Mx zzU*o4)DpckFa9PGDmhuiUgeVV*Vurj!rps9Dq?S{B_(%iX^170;EzCxZ?Ea03V5Ue zZv!m{9!g|ITIjVg4~CYB(oF{DLfi(Vxt?undgHR+sRnE}@Gg>oS8*2h>lh)29*@v6 z=%o|_`2LaJQ>u&td|#WA^*;*Me0~_%&`y~lHhm|wV>qfL~uMGO;x!Y6|vW= zK{_)WvwTf)tR=YoF$j2nO;=U8B<0u(T8>Lgw;dk{G+d-%+OCbn0&H}~K2kFy!w(u~ zc%;g)-MGwSJv71b9pchm$;?Ae|YlS5}U?1h=n+_>b3gT7_Fuoh8t6+_r;9#_g5Te45>Txj>tw7Nj>lA{yh^pDxVro!pRK{_)| z_shd90p{x<(f8N%QUy%XhCc)?2d3uZf;YoVkRpk54W8zkbn~u(>l$1)NZiI53aK`1 zH!$<_T?8-EB)Doxw{%L~b>Rq;+4(MsNPy#6^r}*M6mZ-DqAKT0C4kpM0H=eN3jp3s z(smOw4spw|hKs*!EcbCmZ46H*G^55z+H!k!1$#mt^U!WYLQdou@QL?sVvTsUX}##w!+6` z{!Ju+x3U4r4T!T|g>n5&kj^ZCv!zj1a$Rl7RECw1{XF!N8&=G!kssJ@Yy<&92uL1r zDL>QJu}_Lih8w%TDYDhw*_te^d?m8n?W`@FkglvMJNWfQ(u!1fvX#g8!38MIHE(#~a9nXe_{f)@LwSJyw1SmIQnkIG}UEF%nG@kG&)}2}- zdn-4x(#guOiyPO%!D8!RKaN{RdU0}OakX=-=MOq-#}@PjE#-N6ZfsVBt+d4wBRhA| zNH_<|Xe4~^qnDMEnF!x!p{Xi)Rp9#oNN2|Pg=K>+f%%)EA3IoIVO)2mA`x_zeiAt% zo7cBz=6EG4!}IkH8LtIeIt`V!<%N7u9ECN2Prkf0Z9xO@uxDxT+SI2?pyxSpm3eq+BX zg}k~uTVs9C8O4E)<3{6BclJ1GN2*6zt~I?Y=+7#>p~SH$eZj(ZKvacT6}x{5>`roa z8(78bR8u*QTnlvwQP7nN{@OSf5r%b$j{U&4A= z;*8P{A{S(9nN?dF6N=33cTgiKx3hbt$JqVrg%8Qxnuy)M!UiKZAR?r~KE4~IGqXFp zSGtzpYRglF%pXD@xgqp$851q-ac01`+Nep0NVwTX#=38N_?O1MPl`-+cech5=IeW0 zg?u7jK%fVg8MH;~{ex2S_!c-KyU>N@nMAI0?p8-_9oU`A=kz@7ojQqy&3F%P|;+Z7Z};{lf+Z zaazR3O-!K|1RAP>nn~O^cRf{t?Z#k!U}vR!tRld6HwMT7m>t*|5eVpeGQFnM7zO&C zG$rHT0>ecxD(Nx{XuGE)GP-xU&V9q6IjxV>->ZpdQbMk&LsD zgKqCs#oEvBpIQqSaD|KFaHM#zQ(4O;Yrrn?J++VQ2B#7-3E9u2_my&*2-&NQT~p1j z&j#tt$YwV9FpWt_0~Pktwoob9LEDP!MIwa`4sEU@DbM^dOg&LDMCEaf8j)}x)l%Q-H3rbCbx;tC#53S<5pUU!fe@dz%`$Hm) zpj02BHW^p9lLtn6qCuA`3^=^~g^&D-O*7)v#>bQ%T!RI8oR5 zO2YTE?$lc3|2^gH{)rfzilVx_-M`R_N=Zy)bHBkDG8MW{zgR-|bPLEPeh_&fo7!wUSqkt8$MU2-rb{uP3<_fe(xi7ey}304xEM`U0i?pbUcVIrXjI-V zmw?)GRU!GS5E3_}v1WxXZsx{S(YB?v0}pj8wGjF2p@V`gq!GbEW& zOwZtzt}E})l_$%P6i5U!`e3E*D9q@6HCm!#{x1MJM?uS(pR@x9RmXH(HQ-xuJ90Hs zN1+uTCu42gRoFP*b~o!ztr^Xhl{|?tiPg$5)XK1`HbgToCr zq^S(y_k&b$bEY$dS!jotRN`>{A_V!&nl4r;!5V0}68OI3A@GWFy{NepM7ZA0(-MFZ zfmjqpYhLsvRf6qCV7{zma8lNR_$3UG8}DpcIU*3y_jY?yFPr~~m)qEqs5 zA{XQ%Y&cUP?=v8s8F`g;Al?QMez>NCD%_FyKL}cmJ6y43z{Gk3w{buQyMt*ulC}i@kj2ODm~?A!Py8L&T9W^kq-e znQzp9H1iomspREE_&dyoG!_0H1JarChna6Q#*&%umm$cTYr0sa1P4LOl|aLh<-o9A zAJx)vv#XB_3~_mckNbV_KV+LXUBstKu-ypEXFh08ML@NK0TyPy5rKfdig+cr3xtk`Ug`A;8!7l_v8XV z-b)RCYlAp^Y;bjT2zr#kx}q(Cl<;x~C>Fqzs>5BF>EAGkXer zUR2VM1kbNh3rgNj1kb-^L!1hp{|wTZ;dw#HSWD3P4hZ;*HCq$r>K+*Zt`0SjE{gTM z?b#v94VrGdu~~eWb*C1a*`|KBY$`CN454o#?u;QcdkTbJs%T8Y>CaLtN*+&y)1P8P zoeHPF4APl#da+`>C20Lk2>T5+-BqEL6ytGRt z0%lFonkve6qcu;e%QOr(UzVRQ{}jf^p_(Pti8KOEKSOUSbx48JPfW@F-vaypDrdiD zCy|q&GL?>7KXeD)49Y^H6fZ7fiE&?K;LEv!~?S zmNX>c^UTYtcsmh3PeW5xUQ5NUx@JVI&##excDD^H0?K<8sB zHAsO@w?XfuBnhSM=<|iX$js%^X_)x>X*OiJ1rdZ5KG0V|Du}01;%nU?$J1XW zxk%}+MUkitp~^0kdH7X~B3rrWxFIOOY3R_@EltM)7m+8^Z%2WR0{ePnyPTQ_b$7NV zYb#&5kg8ezS%T_KTji6dr)0;}*i;5wnzg`ZaDnDAq{@(-pF9B`l8(BDk zg|k0Mca3p{1P)=falte4=5UQfjC<>vTIY*ccmBU+ogYtpZ)%-yr;Qt@Bc$FEVo{v(6D4vfP3Q!V2r$ z1F0aMZL-diTqNsU6p7j#R+$G6qu}PD?c+Wn92T=-CM**Lx*RvQG#sI(^p-eo?7XGs zLEW9LvCesB5wo;|Q`n6^R%)Doiu5H_vMjSmAQ5cy&(MoX*o$f**ycBZXd2u69suqq zbLNM15WzuSiH3`2P$2}j`JxPS62(UB&<am67ErNp&tkO+Sgek&X9NDp93~DiP6Fsl8N0tf-VE zB1R>N=I;ximpMC;XuiS*DK{YEvcg>dD@bP+&Dg>&#Xy}%B)eUdhT2f7>^7N>-@|aY z-9||#!w%uqX&TN$=(tnfNKi7`jB%R@DnCtVI@I0S8oQm>dPrCD?8}wno)| z0Kwh>_k?v$(0yS%I93YD7h$k`0=R;gSS=+MQ27XvC^boe${(0gAb$vfydW0{yeZs~ z7}=4I;; z>?weGuH1$+t^OhrD>*t5Hh-QCY$|O2I!I^6=6-pYCDZBqAkm+x>7@#uqz!KdEr%y0 zjzWkDWtzFzAxb>lRvr4V(J`{n?4)sWXsQj{4bO8&@Z4C#g)pUX`~n8Y;kb{(k-aRy z?~C+`Qdt!6``nZa|DRy^r*nq;x*mB*Yrz>Ml)`r+)Il_HDZ7KrT-=@+H{LM+1nW*M z{BGv{Y?{}Ya&5dmSNfbew}ra0*`zAcmpH*^T{&VpuUEsGlps1s?_bJ0m??#u!zC#ScK7 zKTy-jDphy^Xt^qAu7xYXBG*Sv1IrHs5633r#A&-a(m(^Vv9p@0!ggcv@{xOT((eow zl5VdOj_<`dxedRVdn!db0g-<|Z!0xOfyj4HDTWV1guk1MAu_@Qg?T*NOOQl@y~!}v zV$>Op%ywYM?ZzhYovb^xi2OD_2^N@Ak;IVktvq?*Vnur;j?9;c%jvwDom#ZQZ@ zSDQGM#U-eJ8Uo}N7qL1IYZ07&Kq{{m1L`=TW@@_Y;A#@o?Q81&q)=CPXKTElE5tVWuQqa3P>;}i4t0YrUvo87t?_Xan~P#XmJtP> zA9--JtmZWoQmCuDvo$ui;N@viAAL~x7 z#oc{BJFpiqFBBLb{dW$uuQldI)eygu53y|-SWZE?aNZT!EZCI6$@F%dAmZEh?6|Qb zpAPYVi>6_Ik4}|p+PPO(X&R#wH0^wPds0o?529%_?a!cTdqJB49z_65#4>P$ZX2f? zZB%5?yvVmr2X({RTH~nuS*$y?nzrZOZYx~!*N(-Rt_e?aZ9CkUBPwm9VcwDt6YE7( zctz00!VXgyM$jl{%U{?{vQ)o1+!1zH`kVKh zL6+u=XE2)2G8*-4MX!D~eRT=1ruwyfCe?d6c(3@egSe=r8^tUALw+wl#P<7>jg`&i z1yIFV&6v?kExgnky)?X3UKO#17TC|Yg+{0|vm>oD^GW)PX*%!8Jx?26iYsJr2NIm# zB<{s)VH_<4rxw=y)fkuMEQch+??6}j!;4E_>_qe$bvAu%BUs*vuVh#4EbStTe{gwD zcs4xuzFv1d?hQ`0p1^dmpDE+`54ldRPN9=~(qS);NV8#ol*2D@O&p1FLN7)Ucw9V% zEB+|3h!7){L*Ftf&^ihBw${^;cjA8f-zgX)YK`2~Zq#p~dd>irZ9ZelxAK!YyPq@S z*}Y6*)tas{0UrahGR|{$dv+4IUW9uWlF%|>6HF5;OI$T;SfPp93uElQ=fS18m2_8D zx+lR%ru=K&lSNjwx{1ixgT45f8=W3lybiRi4VL15+`sWi#?LKnGiTUKXJ**P#~Fqy z*s(=-_Tav3%Qf4cgB(=cT!#!uqm5FdVA#^0;oe|lWd&E_u0Z`ZU%gqt9$wf(zfdLn zRpIAh77V)|Cy(bl{RLbF?Qg6Mxa%gW{qj%I-~eQ4ZIM5f+`Q~vI5OuInwA1*zfj4r zi2`Roho-6~^gdcP~LadswLWS^(w*~(TnZ;qOn^;OY zC}D*H3y~k8c9GULEYl4gM2p8fEC0S;r^~$96Z*W?>UUS+%pN<|i;uC(Pep%Gtu7ID)fFtCiNt?#4>g!sCtJTIFp6IT5S#b{w=59q|&} z6;7U*G#?KC=(avq2ec@FH%jZOTUsZVVp6k^U|0#}a|b3zE(nmL%jh=7Rjtf9nw`6hl3#TwzvbR+#^5Twz?lZE6O# zY#aktG%|47-=#te*uFvbisp)ctv5n43logYe zRwOT{A&j}3qo(p`8HNJV#neMfoG z?~9jT0kgIIO8Vnf_~YL6;@`p;DH0`bBL6Lf_sW`1=5vp18j1FYLCeizs5#h^M7e$2 zk1W@=1KfTAhtq+ppnKTMfY8;E1L~RVD^Tk%LF;8}k!xku*gzV2ABiAq@kxYCS~QEL zNA4suy!>8jjfJ2@=W=*qS!1aaDyhyNadN26D2JFnENIRLd4HQNQYtm)f1;@>hE=R% zKMK;BHAf!exZ->T;`syCNAP2Rf%mz2p;tr?NA2^ew2VIVZnTnV8IC5vpGlGsH&x+w zM%N2tx}3_!snF1fy$Q99T32b=b+Te$V`jP2K+XQ0hCHrj1#`w*E77yluSw|z6P3O! zDB79yPU96#rK0^86QUZK6^eE?dNH%2WhRP`aa_~>4kG#w*2zjuqgO&uQ z(NoD_WlxE1a?64y9oaffa?sS2ChPXC(4^uZ$5rX8kbzaxOO+iWS`D;ZJ5T}uhcn>a zV2yo z0#)MGu%&JY`m{!GZjEJHMpIMj)59R0*)o-mbX=*v2GJd3U9GfF^oq!s$?X$;C`2n< z17j<}BHuz10{rU`2Ph4r?O-D%MkPf9snHW^AhoX2z?&p(InnK)4&um473O~CiA(uKcU6XF$Bjh5)(PxEHLEs9M>>u{$s;&A>N=+8BPZYRJ)^;SZrSUn)>T@V zIqIqKB?n5BWTMpIKN)0aRxvogs;99N>R zgZm$=>7#0XB-%d*ZDyU?z7=|?0c^&&1QC^8y>^JDzios#w*jS@&^l4;D!q`sr`4G1 zjP^_S95Np~m2~!IYHP$b;qty~xe7_jl0Aj8@B@v!2|-)VBg(Cr|MsJ)DYfNtkj|_v zg)xq+%RfLUb2Xh*sSDBW0xee;-2LvxNDRU~r3j(oSdU}1QAHYIBy3|k-lV%!)OxNi z6;thP@!@z zuFGvbK&3#688fB7H@Mgm+-B(oxZ2Bxz|1HLa5OS7 z6VwerNe9%#0?MTr%H;jz&zw%DWANguKE zC_+dZL1>nkME}BO{xtasKd*F=5OT6JSZeum+^OIvL)m+aEm{C~f(;6L3ypLJ>BhuC z;Q2s#zXV`^*N6$}R)Vww8(vT{f)XDlqDC+^;fr(mScR`7g|Db5o3oJ4&RC=jJ_cxO zO8c=6Qo(-gOg}Vf^idq*xb^ra;ER}wyp{8Y&XnR7SXV8e%z2O$qeMcFkN{E%Wygz| z5(yuA3B9s4CjLci{IZZmC{_etHbE+gXvb9XVR?u(GPJnQ&O zGSxPIzIAVxZEzydvXjh_C{s7B6?KsaxYixCmPn+&IE$cNd|>psRtTNIZtCLVz1=kw z-O48lbBg{7w&UFerpvQPQzP{OYNgsp{c+(#vW=N&3H*LEHRU|=mmuACBlW+ahQwDk zkvx?T%ywm4}ri#imxv3@A6-=#% zTGKf8p&^WqH?I7_B=Wx-*q0o=sI8=c0Zm= z4a9sD`$_ii%)rmHKeJfZ+}w37KS3tOTqof+C4J#Y>$=QhkhJGo_#baFZH6^G_LPUv zGEMpK(w%gQ0Dmupl=>B$w#$8Rb9sP2NL54pJ<6LodfMrNfTZQq1&k%>@rIH-t@P*A zx1TUo>l;m$P?u39EtVg1ltl_!51v|&TMw+SbOxCqs$R+G&qGt_FkevJG$Q2-s-t^P z=bnxo1)76P%W=dP3GukaH$bit3M6U{&L?;wErg{B^gF*3P856?mb!)MGxb)uqmnI3 zXvkOvAtxw%l8znE;H#`5y9X;MN-SDiihD>kipVWuM-P~@bBeuoZL)&-F1|iKIPYAwTs;Pu{^O=f4$Y+U``cH!pX)OJA>`7v^LgoY+~gU(PtfET||!3(ngw= zgnlu9N+6r#2~ybNUqa?T+DtnJKMoz{4qrNv2gpr6-ftbDZys5MFNV?hNW8+Taw!h+ z3-MxrZ_!66;fZ+yF+*tiNrjfxb9w!u@OHE{e2C*I`vv1SKjAEu`y@pGO}rvV zdy@GlS#aKWaCu|k8i8S3sK17S1deU^CQ85fI23@Zj0!%<4e&{@PDYLORpyD1SHey| zvV)IU;dilA==7Hm)y+K#zjbV-8^AlrY&mlY;8$bHM!qv9YzhUp*1P@Apo8_hkWWpC z(sQ(Ar}#_k_d5tDB=I0bK)BEvJ_o;{(`(&zJAHZsp20DC(xTi!`9#Vw9HWD4(OaBv zJso-2)V#ma@3!z9%~C$}91a^Iqq^`3^reSrW`|rNBI?IT=ceE^4_olGQ);>|1Qw1= z&oBX)pMb846PX-esI{P9B=T}6@xAAU4)`E;^JI(td;^~OYzEj-ZVQ)7{r5< zaeAI{HQy;SChwqNs(ydODjrRfc3JicLtz#QF}mG+6hb2(EHonftfHs{gF{~~k3m)U z>HKkaW?kDa^I7QOr)KKmSv>1SyvnM&llx`KW*wZ%#VvI1>oaxk&}3?p1FSfL$<5|v zWQsDdWhn%0-)N)66b@n9NL8|Z-9s5YAJ@&eIGL!A7o2%AV!osLK0;WXEf+^Rt}I9d!sF}t!*^t*;&_DtpP+$S8S*qy|RR7C_tE49_nh-Nf1d z#|Q!7&UnK&=#WGGInG1bdj3J2T*xd9D*5zU$LL6Bi%t@ZtXFD2q#cgsD`;$3looEG zxUj6<5_jb~P7V{XSLlME=hs&#yB1VzM8~*73(Aza;aJl zxo*+h;`(xOJhG2ohGsYxQ8!#eC1DgQK$b`t;6OC)fHE{cOmy5f)1auLlr(;nHGeVh zB~(&6MtnF^lZWWoLW%yd?Z`?6e2|(RSHO!(TQ1SS@81b<86+8yg*;P;; z=kZ-HA)6K%NoaS6mX(k-uTnxSQ@elqNHQuS8o@>fakcI=lV}BOF)0Ye@NC#<~b*T*Z`6 zErwhHiDWhfWM6&>n&AqF%;~lk=}GM20GAiHaex^|n+-G369m}(2@h}`WzDM;@JOa5 zPwaI!)+HTePg+VAl+|wXrf!X?W?>>9*-@!)B})9qB!V(%JP`9^|+xUrVa|KGsX9@}rn4*GN-f6%o#+(Cqu~MKfHXV>`j|Xx!vzp^j@5 zqe`J;;POCJrw?qL`KiBVRko2Jz)= zlxl`lq;1>?QUUGTu|fPOg8E1hQk1c%9u+tl#iOKz`=hM!3?rF~?j^Wf3&+}V*$1MG zPT=}DjOE3eVYgk+rz;61_hk4u>|dsfU6xiNtcK-SRC@7C)ai#J3d@UDY<(bkl+ z%=ds)(7Q%=9gGiad|r7pDI4*Wq5kwE!pMu9o?O{j;{|04bsOo8fp4MMzSY(pq!!@t zpN8wCY=k~znm8tiGtlMm?1ZP}=A^-fkVi?&;tbzMQXO}&FU_2tv35&blpo}6K#$KY zzAv!xhv>B}+OmBi6O^oiq9v~|T(1PFpg>dZP>m0CT%`_@Nk%IyWK3o%+G#n+e3^z=$YZAFeds5egHGhitvKVo=Q&bo^ z^1H|e&I9ZD((mByN7IzlW8|H~7w_LVU*>n;u_Y~+`QVpVv|OU*@1mincJh2ub9t14 zqQAQ!Nm)(B3A#S6@jGa1N=x|xkj}2?WkVfT^&3gmf0OkUs(w>*i3@Ba^4S2udhrf4 zlK~(=q??Xbn?`K;I`YbKfuiY$sJ4zvq{2x7z?#niPyx^i-<+W+n+l5l#A6=7DLuNP z0{PlF$0cNG(?KmBJLbkiD3lp>#S-Zk;P#r>4fQ~KHg&)lIuA8k7YK_ zYYw{ITUzn_v3cPX*#l#ZL*6qsFKEM|nYFTlvHYLNt_dZ5> z2qyqPrJs@YvkN0AnkpguCLQ+gp7wEUC!YJYhteL`JGp8$qC zk)D<1dSz9Vr3;oWKMD^aURm+i;x3N69i@ux#mX_2@8qkpm!d0^&YL{(>5&m>miY8- zS>h8;7-J#U_HYLfuKq#U7&|r%oZW>}fH{wGu9qcH$RgnPg#8a=&b~ijCXuy z2}2!awQN1{5Gx5$V$HKrRUG%AC%83EH^$5RUkQGpxG zk0XhRj@c|O2HnA}cjB-MRlZ2$5C`R8?`<=Gx-1BBVOgss(T7jv!rjlabJ>8Tt%1)} z%2E`3A!*DAV|IHg^6uKPXQDC#{!_OT7v3=y0c3ZUt#rfV3(wp@*%t9q zvTK^DW=UjN&H%c)iGs`eeN{C{s=VO!xyAPcc3yB$W~aPuceaEw)*#y3GeVxw(B*}O zWS3BkKajQJn|Ac|amT9Ir^!Wp2kF{5Xgpi!pf*8dAdrfSW-K$bJgQp|v@H#Hk|mZu zVd1``toePc@9JSLSHzT9183DVKz!PTck*%-jEpo_^Z|=%Ph|2IHB0RZfghJ2mt6{ZjR(vAq(UU>U^(aAEP%T2zdxErgryT}}P1>%mImnSQ&6t&)*^SpT zXLopgY8{#|u+~CcM=);Gl2~YVcx^q|$WqW5B{5CAUtqSp+RO@-a*=VpD3R}TshL#1 zg+ltd$M(F!r(|FiXTr+EIL}5?RX$L~O!#7uiZdbm&ZMWP3u7ceO81!@y^GX}c*|_x zo)MA+H7|00avR7#(#1!(?&_weVWomYIX3({%|Lh^{w!|lgek=IH{mU5=@?dOIK5n9 z16lu;Y8n`~fsBkGIhhS)NLJavr;Lo%Dyq8q6vGj$AKf5%h=m4a@Ub)B(ZYyiB*s#M zctOcGN}%!w7#WAkIUHBn2L$bSAH6lH5qxhAuT@6y9@5r#ftV{2b^ve+D8d#Evg|z{ zH;ZY8k+gCC2j!Ekfc&Lp$q2fs5uB2bwRX`aqcv^glBsM@)zZj%?w830d3~`UFWHV> zRjpSgTJm*jFEywKxRw;OQTX^j7Ct_MW&IkOn$oiVFObe`Syh7_H?c=aX^HJ>6I&F@ z-+*>7Xbf4YX{%M~V; zHSpIp4UC&uMn-_2%)~M~p)#@09GSn9erK?N-ImO7j*j_pMIQYQNV8I0^a4U@$569Q zhy}>2@Qi4&+6dpdHN8j?FE5oYuV|XRkA>64#UXOjE`Zg&aSF?Bfr#n(SV1cKMVu() zK3_53=bY(Tr!OgXI(tRv_1%TfRBJh3{Ed1&m&;dZv)J{?;rSG@0UEl-;fb)7Zbz<- zFm7x`ZJbT^ZNzkK+@a*Syh4mLaoxbZcdEQLy5dizYPIv!^)x*+Q(JkR|EMN}sZK)4 ziaz{WK{oQ-Q>ZO58XRj*(w60isiAbz$!bevuS+qlXB9puD?`zfC*CUSA)P=|RW`H2 zlm7vbit`Qo&ZM4v=7MG8ED38pm6VKlte$9!5|~_**+-V~5w6L$ZUiRk8byBMSjd6( ztps=H#yT=#UES8`n5fM4>WPLmf2@YrRTB+sAgpO%e4=4w1klMQ8is4tL~|ExTADt| z%cAnbN}@;4{Vnm7+kEy~^#np;jq=t@0P}ko83)WorBs5odk?)ksYn02H5^xY^be5E z{uYS2I^kvn(~e>XK~U^&L>>+x>!_UtAI5efoID=$=x>q28cq0EYaMT5Mvm6o{DOsy zV+z5@Ci2F{)Ji+~*@6UQJDJ@BRXWxZ*?)yvOO54)Wi*25zgqaPjNGEVtc-ko8BJ9| zzrtSrGe|{yIaTDNe5m8z`FD^462sL-vnY8;TmuDxC6lWN6n@T%*EOSb1@L-sl)QUtwtO3~G@F>v|7bbN2Yd27lyF#LJ z`Cj0G@)4FGSHEe5+^odPe9jaBw z@_k$#=+IBmwZ6Zg0g}I*o_Whb!`en8sA7^m6qM=dg{I_5py7+SH9UWGoQ+h?l!}S%6i9`Mtx=NL_^`(3u%{Cu zM-nIv;ukqS`5eYRaxX@Zd1{Ffjir8`idXMtCXNjiR$byIK@M86#?GJFD>W{PSIrnQM}%ZL)1)* zTDRSI7nGro&}pjuGUP5%^?|)Cpt7#rKk0{70@9xZ<^~8OS|Fm2hODnm#gr^mdFZzbset zl1VKQYyRKrRJOtru?GIBrh)P0A0s1epUe_5kfsK>Xr|in^>s|BtnJ?=4Lp$sPuQioE~lr2EiG)8AQw(I1@q? z8l&f;ZI+Du@G`Zyv+f=!*9YMfw-r87J=1dMWz^rXO|0r3%Pael24=k#*YNyDp{EZ_ z-_r{JLy>s8NEYb^d@-A-5)EFF9RyJj;P$dM{!Gl!@Y*Q3gdA&f=H*0+m$Hd!dPr?K zplT<$AHv)-ZGX4Ex6-uuqW>OUOHBsWB&;;al-811C1`cOpw&y4j1m&>+!}+Lp=$@3 zXW`4wE__*y{Nau@lrh>IrY$VpI-JSIv--{#170+ASiS$3y*GiA; zp%yxJR@$BI?&|99TC@Ubbs#`OMiK&JJX7aRk7lNa?w(yOLRk2CT=Vfb7GsP7VS_Q| z8RP522L@w&VXlWSj4{T5Kf}W}&!7Fw<@b-Q%&N?+tm>}nk+9$Q@k7#Xb!Aj$#6Ke= zBO@cy)Y4C$a`A{qDl$)RoZbr>C(}I8aqpAb*~|^GKIolXdL{LP<(z&Gi;Lj>+OeTz z#nA;-UZ;4ZQ~LNA*C~PH`><{rR?rDrK^v(`n%$PwvV$gWl+{^qR=!MV^-%X)jQld= zX@0XJCpROoIEFyh%3;k&RhF}In1;=>a&R(uXB^%)7Y0;6Zhq850LBOvA%(#rog!(k zx}(HdYBnYiOQAK9s51~L3+>WxVsLynbx~eJX=42ry#5UX1=N)t)js8XP#a#Bm1CEYy=4TW?r^W2tZAZ# zbsz7SG{&pPf*13nv=9M}S{2P!e@~{;6P5%u|CBJF4 zx&%A2QX4LDA`9okB9CpP8lHxE9|2*c zO|$b_yN|cWNY^k?TKlsTCFzMYQQGugS*6%SqoOI1rxbgH(m6Ed0J1v1h5Oh@(*&PF zvk8}G7a36+9j8t4ICj>}be&Nt=5ueXR-84cwgPgB^=s0ornb3y@ji|Bs$RS#A0q~N z&l9a!G42!!BkhbNa98{26q@n*AXNl|0?qgUnog}5O#{uU#s>&=#Oi$2s0*UJYGfbz zE_{R|yA`>}5aZzrqy@{-ZF{ccH4!X{a3CAjW!Xa}M*glb>@HG`jKI^z5Xh=V){G`> zIn~JKd7f&rW2GLp#5jr#MWb(9jH-KQ9jJXAD!XK>UTV>m)98b}&u$xmV^!hFcI zkS57b(R*dJ;@iitH%}|B5I`SAV~(9>=yjkI-DVpJh7hBG8quNMw&8cRy{6S>SL78_ zQQVN5fN^6LVthkx5=x3LjBm&lHp^9mzpF7@RfBs(xUYf-gKR%VWMU0?ekxmlM~STc zL+xY5>W>DL8(I5FkgBNuK8L2V`eWZI8(DjgVJ{KKGrq8AM z-yKRy@)BxMR!LrfMn#h*Pf5Oju)GtEIn08#heEZjy3;`FEhPN(+K%fxjkfPKY~+(+ zS=baM*;Gu&{1NJ$9jh_xk_lOYtfD>-mZXuZOC3!nsxE!vcw8BfafE2biuIEG0ZPEQ zRqI5tjxCJFy$Pg>;8I{>J`+u49a||Hw`jmwQ*%flB@yH+TwOrr6)yXTjgRn|(5SJ?Pj9XhB!3W%Ia=y1*pfa{aXAR%?zUYI87nQ%p<*~r*KTI@rtXJi z?96A_SaqrHn#WO7w4~~X%x#*h9N(=mUR92%A5y1mkn%4Psl*SdHIQWeKJAn0Of2Px z`~{FIn#u*L@Iz=iwJL-kQXgkl10E;15ufulpe}{-8jyYDo%jgHbhm|4solVikVm8y zHal($8FzgLmZaj2wa9`~5YKX)C4$9a-rKxa(_8E05lv=2}AXRapz70*MUZ|B3W|!!PXdV(**%EzMV(?Z{<2n!} zj%Ea>g!E0VX}_mXU^%)g8TL6;z)P$t1)VOh<`{eTqjOx%Aw4)!{)b+dMU`}#4su2z zrK@Wrz@&|Q@gKeb5;*jW(f%aZSj z?6?T%Q&br8!&3C@(J(OPhkZT4B%b-KZaChP#Qg^Pb>giU&ky^$G0e-`ioKX7o)`v4 zMc4J;D(Kc{_8)k3AX{~0zWm4K|q3b_AeG@Y9JnNg18{UK!B ztvYAYdl|aG3Y20_6f{G`d%yy*#&Z@^lPDXO=5LOi0s)!eL&hApw%i-Cs|upf)UEVF;#Z?f4C0rd=OZMr z?=6M?$XE&aoP#kUHLY@ixeEqJ@8Se7Z_X1@5pjnlMDL-OauX9R8DsjDHVLU#%aoj#f*xED+BwiHr`CP$gHeC#CeqPGvE%c5=`T3j3 z<>yxC^3hG_sr#Cl83%>@WDr(`kqN$`0szvM?N1Da$_me7q73=F*RZOqR+)-8WE}f8=Szd8^<%`+~xnJ+YG+I=eN}i8XkhHJ#1|$ zz7UZvDDm8|Fu%LFi9#N;;!dl3T}D2g-v#|Ea8R-hv+(Tc4$5uUU3XJ}0-;9td-=J(kvK^pYKaK zEn5buCVELByUQ6r508;Tfgj+NXez0q$He$~DGB?9tdCFxS4|?0luy)7*4PD8CdYln zK7R~kIL?qy(hYD!!l`##$j8@qZKO?Y_@UeBv>IWz?38BYhrE}%`^ph;Jc0{XNBe^l zJoUzc&IF!N5p`?h_e_X9Ls^XLhZ883FX?Sx3Q`E62+wg(tO|4xa4e?*SPOPur)E_If>nkG0i6 z*=`i;u;`8kQcc*1nJc;CF!Fiud?q*QO!;mXSl+5A93fi^sx9-RzLXkb6%N$+G}Eme z>-T)*i{KfSW5me^W=mfo24z88HaqV>a59jOIc04sl7G@fqOMLddZ|Jm7J)(Tor}K% zsfytJ2AWFXt!CqyhnfZO%L%|=Wt|0stSXXA`A2l7gEZ^TUxN&XG%_HD4V2-c`$UKl zwz^b#rr|X0R=Z8*jY>kAkSE1+SX~NaLUA%K{Trn?z^ivY^1odLNwPJMl=gI zmFc4fExeagfvk2Jnn;>>AHBIb`;}`zsv?#xG@TmD#*t>B{0f5d6Ioxuo`Ys6=Zh?b zG0~7&SKe@7U3mh?a2U5y+}S}YYRBuK%BttMhV zMJc`ee2^+)W`WW00GdvXRdtA2kiL>Y`rWLPV934#kZN*C;YqEhgD306vq6T#GeB*L z(22spck3;gz$OB36F_O{d1Haim$uZV+T& z%lZoTTsdAyDO9P|bWmj&HQ= zB3wUz@!W*RU?l$32b={WhMa{BC03)9VRBM-+)^d6|Cbe7k7J65NP}!Zr?2TSC8V1s&6tFy2QDB9c=890oG6EWJm{_+DOp8 zNt4wSI`}Y1RfP7_(R6BPn}?c(_kSgLA7Y&agEFC@^oxvMHA>)eu3gN+H^{;#au6v# zwa3^<5=N+fdJ18o{p#M_$Sar%$SIbdi-;I1CeQ44kiw z-BzR3@mx60eY=I^Y`9-#bv?&H&Oslk2g{mrjC`KLxrHZZi5DR6#C%4VaOE+q9mP5L z8l05g3DPgUL7`*)B%vv*OfJs-oB_RW;xvF>ZjnpH%&SR@{4nb&m~*|r?IfZ~flKXWrj-XS>&9zAh66Y1242)|G%Onk zZrL3eckQqPFk9Gw*ml`tAVxk9xNX(aT3la!fP$1UgX4l9v4aPH!4KqYM~c(Yx-mxi zW5kCnRQDJ^V1Vf#^7fF#x!jJ6dm|~=Kh}7y>c&!zoKJyNMSy-DO=W;GM}6s}Md}!{ zO7%4a&QGvjf+g(er&uH@B&pSOkYpeKeUK5`Vk-(d2q9`?e}Ovf0V=Mz*c~GYm(xII zuChf!8TmX&-mD-dd~j{K=OZ-`j(0{lC7+La%cF3>Aj%x(v6UA8h;SnM(PWlwv5fG% zW}=T7;CeQv2iaU6i!!ID5`534HWTaD!tNMaUUec zWAZrzdXI1d5XE`w+Y(%F)p$RJw!I0YD#G=dXgW1q^+9Iw`8vYqjjWqsN>kVZTtp~$ zl@Su2DPl@NOJt@4E$hu8kP)`5)AF4FH)xRo5vemn2Vo(R-Ey1FHf&k1tS!sP=YjSq z9JIVH6Yd8O;Ev=ry^B&{$53_9LwXAl-9dNc;?Q~*^;wL@!H77L1*|yZQ9fmW>qERb zBy*1Zt_0SHHJ(oa))OFA5v(so)2YF#4lxVWlLXactdn5KZj)#v#?Xs07}dRS61vTV zXkh(YsW~KvFHt)4fkgRj8s&VJkH5O~W;Ps^!i0O>ccZDq^NN9D@!-ZW`)qb|iNidd z@H&snuTo5=1B^r%Tww$E;=?wD8@3#$MZ4A@>NH&63hK!5Q}W1+kIrI%^`!uHjwC&&%U35p;seXpuo7j>n+^POC zNL8HeUqVv}d0Q&&RL|GOY1pT}o+kVsuzrFuGs%RP@6OTBGDk{I^KVdd^ECgKMp>Pt z@}_J2H2*g?2$jNw)BMbq!t70+<|>QNB<~DiJe}e?f6GsC_K8n`0m2aVP@O64U>Ub? zDh^MThft)bWrdx32dCm?V~-g5yeWPMpMs>prQ8SeuC%hR)ogl2Z#+(QHAsNH8za;;ghM8}1BDA7qd#Ox*n_k_V$=?8}ij)7zXgc-e-)9O%mEc|SdO`?s8A{jof1#d{iN7d#qVIvredh36)PZyWLK<93%+E) z?gN|(gv0CaDVGUedT?QS9nr3AmlE zkMMeUsJd{zMy;rgs_P_sRgEVIvP%r6FNp;z@YAXO2lUq(|IsO&ps4+TsE&2CBG zNKpL~)>Sa)8dZ^S88NWRQcA%}EvEx3>%bp?3g4%DdaxSg=s3>_bd zyD03lq&{Wj^T0aKy;A}bJOi^D){*?UMu!LP2xSK1;Lm6E{KeYc?7kf?hYZ4HM0W(R z4`SmMubH&&IkpkbB1kFuSe!ijgz3`VE=~gS+OEGZL3t0oHnC+}2<06hRT0Wppy||5 z&JHsRXueS;3n*pWNlC<9U>NQaMQFDX%k5Zj`rCp^oh;J zrV^NNyL$vprxt>7q~qkUmj#PWFjG>MqD!j$zJftv24m(brH-wz?{*v{!L?fTrtP#s z-wsh95*H++M(H?QMm|rah<$||W`zRetHbEHbP~?;0FI=Xak{vE*FCr0Z&DeHgrV#T zDE1YmFBve~=TtB`_86Kd=GqJB-HBC4;l5%8q$;Y8htO0;Z6%MGavz5a!eFtziL}QO z>nj*^H7$ej0eOL>Qpi$6nP250%f26h42P`cS~yz_tTqnDTP>7*L~Vf}!pay}R-@T1 zTLqGl&x7o3+~VhzkEq`LJSz`IOh8SY(O})D^F?t)6TgQw5HHrAb^FaVR&UIN+((Ho zS>z@@+_?Hw@<9V?-^nRJC_A+NDTsZSCIMAVmf8uw1EeY<_7~7}YQ%~fx~s1zn# z-ad_{65A_!bH(toOPbDZ9r&pt(AiyH5wLH)1p^Xm7oxNpz8^Yms^-~t94uvU^G2xU zS??mRZAo*OkMXC-vaEA^wMZO5Vaj+x}MnX$IaeT@&1Msn!^NZ= z@HX@}2~(1uG>_?RnLp)W%Rc(`6t->Dc5fnF)^a_kg?b?_{0#x}FZ%%w9$RjwBy1V^ z6t)HZD@Z8AQdo#=EJ&^MwtX)-`S8iv#WOapnwzW5uk?-%u)AA5I^USD&m)OSK!09| z-4w$^41J5&Q-cFI!9Iw88u-V;KlbxaE}e?PBpXjiXdGx9s2|`o;CN+OU56yB#YY!s z@BAqek?6_d-lfygSWW@HaVhHA`Qh@iyBhY_hX+>rLAZQ?LP?K?!;`M~xb|9&y~b`9 z#INzbkwV*oFW{ShPXA#OfqfHQdD5xMhj*>GOZ`Fa2jib7_|R7ULr=dLNkh)SQ^EAb zt+8b=BR$*LeoxHy8sCTwW3FS3%lwck-TMn?w<4t^cgi;E-vvweCQSuDe*9Ffc(GOJ zT7FRX8jTL1Y~qpug%ahLksF|}a zRL8<+$3pDtKv#CjBjvwJ#8)-q`6dGapJ&se9C~&~ zZquwVtf_A&g`HsNRQW7l=X}B1lxUyJNc+TUA1as;7n+D`A1sl`zlM6(PQB9#I|wN4 z)*E5nM?MBrm1F5~RPA%_&F&E1$>rq}hiZrTVukRI^r-}vUoRA(Sz)SOekbum>$2eA|2`Eq6ioBkcKMiHk$!u^jQi{OBaBR=U#=|Z*Z1|GwyL0Wv%=;WJp$i zv;6wR{@UKBVma*Z-8VCHRn3hMmn|Cc`*sYa;w3RbAHy%i%MZBlF)(vjkP%~Ph%qmX z@GnwFKK`3Z{#`N~_4VYQdl%sp8m^;5ATioglLX_1CaN}qB|V!6YSg+S_yW)F$H#iPG*gc-QT`&v4aD%{Ty6)C;p za6g5+<7Xs+rIHeeJCwXuw~@(ITN{S!LI1!iDwhV#ZAIIo^|j@`8>FTa(VY`olxE8- z{^JZsg7>x#bcwX9Red{2FfJRoVU6EK&EqwG3%w&z-lI`gC#Sr^kN4~B0IiA}<}1)t zTH-7Eb>hL17P&=Pc7KroOgv;7<@yrPkT|8wpuCD<-O!fOI^E4{TNbVR$R84RVFSST z6E^$+nx{b#`sz~p-h!o+&@8Q^e!sswx3+q8?|wE5X(k-rI|_%i^X1R^?Wn_IIh|z9 zjj0{xNk``hP_uibZz-SHm*}(qd>v1e=M8{P)rJ3kMar|o*5-J(A8#2Ej^_G3Z1Qlz zoTxu0KCZil$>I)e)vD57!t~QHFj=ptvwsrv@Ym(x@nsWPNG+7ju~1DO4xpgnSg0!B zsYh0b`mzzrEuv!jtt%(!eje6|!?owJ(xwxFYk&6TVSgo@kJeyD5+oT}0zSk0zWp=L zpD`}N&+V@dYP}T~JNZL=x(pACUL_Fz58uxOvCo|Xu^*I0syNRs&pOZC;fYm$9$}J$ ziQHxvsctjY`T(^~9A=-Czix1t&2DVxrbX&(TRH;kCKSH1^bL4MxI0er*BO0&NSK** zp=CT&$f#OcjGs^+;wMnqW8GgD+(e8+a{E06gLzFj6t7DD1`u>_94n{6Y77P1shgCK%o%Dc{)|W_T_kg9aW2Y z2|dbU9YruDk1%?;_E0 zJ92^+t`2)(Lk9tySQg+3skbs4l|yWCXF*|n8OE^%JF;30m*?OEz4wSfMx3iwB=Lk~?Cb;UQN+dNGA?y{oG-mhB zP~JXCsG@C=EFZfMB$7TKtgI^OPs>cyCH>Pk)!?!VPQZJG>usz$XKc05s$|ySEp>G%w?171S{0p57MeZ|>(gfmQp8@iK0Rp)L`*C$k>E>( z2VuuxQ9PZb5ld`Wrh#${cqhFnxgYc8Humz_9gH6;0eML(Fe~myQ%P*qf@*eTMrt?% zR3*2C=H0|1xXd_x`3yBkp`S`2-t-CUbuMnB2;v2sCy15mf_P{%1hHEcL_FBBvN-in zfgs9Tc}&onmDjP55f??|=^ho9PGqWbtxls+w{U|Bu}*Z$PxW36T-wUVh7K-28Lb>4 z%w>1Q3*6euq1wuvyN+G$pmzAMI1a@r#$X?5`dRt4UZC1Y_(WnLeJ4JhEVn-b7*t(u z|DtHQeFSGP(gL}L>QwQuka22FvNB?uxQdNuEyT$bR$9N0WQy2Q!r=%348o(d*G%Ft z_!UZ8L@&zgiG;$R)aInRfR@t8?3MS6&KR?qv_+Lk-tEA zAx^WkRM*JGA}Fho|A=@SOJTf5{u6q6bC$+GV8c@-IpNaymuNb*ASTtwsw@tcom;7^ zN*7ys{mr_f>2J%!34J4kd#ZsH8C@K#`AxSKg^1-t0-QF5QLC=1H^ceQ2H`Fb;{aM7 zSI5hX(#iHR?nIEuerQ3QOhA7u524l(TF2~i)2}e>7m)VKHJkM8*L;&6gcXDS+R3^p zX{K*!*i<#sCHVs~m?>vE$)wnwWr1R(Y@=5vo)W~j+;UZCfK)}@vUZZnl@JvYtstK#h;JZr6pzvzloz-RVJWU3buGVS0CX95f4CFPMPmiIeYar?j z3XhWgENy$B`3&G6ri{<5R9e{T`sQ)|1=TtKeVf7gomu9LWxcXV($!D-MV6^IZILC{ zVx!%)>mi)Moo0ZWAAZB_b}TmvkkN-OEvlQOn{b$pGP5HQ>t5hyq;oVFW#jIAU+_R|`$)%i5} zVbU)WoiWb3|6BW(YM9DfjPa3SKMz_J*YV##Q)wNq7#TM9FzJ7gG>N_OVUp}-(3xI- z1~KB=45A8V2>K3MO*rLkukHDEBXUr6pn+tKew&@Nk1Y;;1>X_tvF+Sv&()}WYj5d` zBvy!Cflm5#BwZ#*o&uT|=X^r3I=)J@C${_wSG+GXQK*=ka5MDJXeuG5nxF8(obeiz z@81w~{%TBr^N!kBesEK7hIWAPKgV&}EgRRrBV5*( zl97@B9LSScppzd(tctjnwJ|3DlLDJPhfJ_Zo+_{rPXU|aTv3-3(apijB_LJAngYM_ zUNoH=FO%eo`db3Zg=0FJ2Nc$L7a9woQ2Ox@W#$6h7H)f8+`e>d9M3lEPP>boIwgU^ z$man?+~R*$NNIDB?S>ZQ;ezQ>u(;5xy&Btd@=c|sXJ9N$5h>UaPl287Dh)-`d>1v| z9OT?JMj!>qc^;Zhjhyq;VHy<7-w|$}Hl~|-xM7WNLt~B`%dY!vx9zul3%P-txYOWy zb_;R$p4UO{iL%#q8Tk}91#4r$bzP>V#QKN@IK8f0%SId`atP%d;((&b?&{)-Ex+%} z?&>lE$rW4ZOmKAB=H_7cf6R57}cui*d-_(hCq_AVnW4@9}sK3hmoSgCAK8 zA|uB_Cntp< zoxU>>;#LXO2tG>JZATEx`cd3ELG-V<79Gb3LXnhimyZ0WlJ3W`g86H2I&$^?+&>ep z1Q+-m#5M_`G*$=oBM|QIG#zAp04ETnffO)qJsU`L*PZU_3Az`yitAzQdJSE|8X$xS zVU&m_z^O)!qMYLk$no3=*nJmVj9FM}y!x8+TY4GHZ3|(on@jh+r>NT*LvyO+sT(d6%GPro|x z;PY_K^rwdN7NY;rr>51mI;|G`15}o(WjTO&tL{5&hL7Fj>|9vruOdkUp?!X--&^I^ z#}z03(zj^2;xG^uuzKza%q71^74Z2CG0^qc6cSdMYq2gW_z zCa92PA^Bm)>B5bI+-11^8??&ilx5`qjSEw^_YvBhGGP#|AOz9K%PWW>8D5H~WSQw? zByL_^g_~DaI5m=ZeQKy5VXl1#{$WO%0^|b&& zokngx#mG(ZROMz&M&jnJRk(R`MQ(nRxOrpBO$!!b*Xba$JSJ{Ctb1)-f`y|GH@=%) z%cZ;+#R^^Bi!$V`h{Hyzkn@JP2E9~qEK@|BUFoUa8c;3tfH z6;BO(&FF!js>0WIROIWw6JOt!@)cM4ns(QQUoz^pa9h<2QBKlw1Kj6x>rIcA@iKU2 z%g9;r6r8;<)dUJP39}!m!rR}e$lFs+18;vbp02M- zTs3*elvPf7J9dyM#_P-tu^Fc72dS0B?{nzgTz{CnLzisWv(Tt$>gL(7rxCxmpfR_) za7EBUZ8_JaDxdWKy6>XSoFCvpx6v${!IY6t`CYJSDsU+=Ls)D_UtLihxSj*&O9D%As&hEb3Qd-KiPh>ju{S%za4hr?raUo3Y@Ob zLQ~o4S}CySTxFC7pX*kV-_2usnJ0YK_(nA5g6|^BgJ18ovCHeUx_;0N9nY&0Rse%yk6bRXo@Gd5;VB{g*t;M}2hgm6% zJP1-1G4exbIyFYpnGlcDfRZx_CF^7QnTHbA_yuSz)B|i(+YbpMD2LERf~`)cj;aV2 z{G(8(WtS~Reqxkx8_R%_pF|I{C`q0wC=pK;l*FVJl)Q&%<}O#IQ1b3E+%M21zl^4v zh!SqJ(*moepE-+A@>65_nTHbA`0Z#cP|}4Bg9=2rjUOUgc<43|ep7E@wQXawUfRXM z$mgNtvWzZCH`Aurg3q9vS*RpW6{v`(fXW4_LP_Z>c=-Ym-WR2T0Ho0u(hy#7rP9nS#PvEPT2*BkuL`t z?sYKemvauAK$ARGKqH=JK@-zgK(m_&Zw_d7fK z(`h(l7uPJe@@Q^P5pInrPafI5!=^=D%`n+GV?_)pN71FF$%+a8XNaCNZR z@;#^>m_Mj((QbMcP*v96VdPUlRdZu9SC4Qb>Tb-Z(shA!4LsKG`QiL(DD+qqrJH|3@)!f0+^%V*Liz9{7c%UsrQF1G9zfpyh5;VSXdEvKXkSlP$gvi0+ z1US>VOt!-co-flrt}6dhPJ)X-s%Z5n!1J|eIyIi@JUTmC1E6;hpo!}&0BY}~@=HC} zy2J`#mlJZtx*#AYriR^ZhmD|t+T5`J8*MK_FnSaq>s3$>!ge-bZH9*&iPXxFxFPE3 zNTGz~Q;WPgyo>myb+#Sgx-XLGJ6+dpSva<|{jL=>kf@71?E#sf>fNL{7KvF4!l-7H z(`=l(9?7fe*dR&1P_|htB=q-L7k468e6AreJ$tmVFg4FFl)JzI(h5;L zC2WPL;2yzt^Kj%AHc=0t>7#-HPB$|=Z;#{o3Z=3~!f-S1t2R$$(4RsE7t0LLW$@4) zaU38k`EtCUq=&kbjR$wdy(OfOLIQIZvl$-eQ+(t;K-nk|$|^32sSQ}7#F0er*`)37 zA!VP?O!fHrS|=ox{;(#0Ri!6o;`rAMO8linAXegA+JED#(oI2Dk|;Q zp{b;_D_$BC!^`?vE+qsICz+al;&`D-ESg#X?y;xd4($GBLY%iP$v9gcDuzcEv(MFI{yS9rI6f{{TpA0L z8dx;n=!ULtApb8-?y5G;Y#Y^&8-RA&laskUiPLEdy*|-wAA2Hy3P@Gdw&$U#G}*UQ zI+35;>2x_MUt)Y!8(9}xd3dreXz+ypq0?|WC=r7oS>#6c5GV`F2Qf%?Wcd+`?vMjC zP_Zcv%a_bGgN=NBp@?O5oM$6nA)71QUb9176AYs|B?CpQIRbpGu!%F~4r0z7r=Bf4 zaZs_>3{xq`NG{zjvCs}-;8m^UE9D{U7TP3M@>8eg`c-llIM)%NT8B%s6WSI6fN*&O zsS`S`-2nF^-1*INT{Uw}TxZWFvyvxop2*<-DP(Ys%m7^m&m`3x^#-WllQ<)gF_n^l zlU*!U<=fYL%gC>kRKbe%XMD>kKF!(Ef1sZMDhLT+udFnME+6vpH&3o?Zgr)%%v^tJ@ zb!ie0-9-2i4GSvHq;Njz+XlG(IFX6rMuAD`%ZktJ?b^rkfj8D5c$5iNB_J<11=jz2 z&{V=*HG_ac^wLopd}aFxe#Bh{zk`#Ra;dyhDC!a_4@K4$4T?Ul;zx+%Mp6&E6*b#k zRF$=H;RBhu{Vohva*0&12R>RTVOcxy=1NVGYqWidVfG3lFrvj*88ta&DDc)7sPsx zY8mZzz0qh}4H#H9Jdp@Sx4O*$b>3}@-G5Z-WL}-eRldwCiI66HIpOcWPQl-XJUE@d z@4snSTXP5OVm2+_@u5QO;9^&nS#m|5dX*nTNY(o8!`03>g`$rHQNu$EcgCKwx!S$` z+G4o8CT;=y?hr0AW(&~8@1*7jBM^U1U9>6V_S&F-tVdM^p{J>HvCV<*;Sjz;^huFE)?I^wKcAY%3VsW{BT?R=QC5|5IdkG%(5h%oT#BZWTCZqM z#DmLP6Bc2Nc*xYboIZ}sg<|GT;I_1ghcSDFUoTw&Z2EDcee`&Ht-*$%ibz(=1?%RM z(R6wSi{Xu9@s(p|m;}LM{*MLs{VDf#a6fkwd4FGZ-us)v`^mt)HP%)Wvv>Sv!xGI1TI{ujed(H~Z&lu|Aw@~1uyMZDF}8-mCwevvb@2%a(*I2(mah>>Q4OhJ z>jg{H1E&Ay$_-okZe|d2oXy4)$1^Bio1ZQx!ut&xOT2ib$%L}Jm3r};g`?+7_UXe> zaB|~J{QCgJmd%3vw3sO$U`)y9U%`s;w$#H1Hws6XT~yk%ZYOd( z4e&~*l`f0&(~42ord20uAn+h^{4he*t#;S#))A2qAt6fB@%#=&eyP(cajS9}CVx+R z`acTgC9mIk+p4Z?Bl8VF-S)zcA9NfaH+myDBLd5@xziT@k%!-cRMaeoBaXT$UwzWFlvZ*^5`8yv-9>*;t9^YDp$2V2v@eRb|!zqv9*Kyz}!L+uKwae|e z?Z9r~zFyS!Z2YBcydWc=^0+`%-c*B}Z^pl9BL3(V0O?+lT#W%=s7qZ9ieMnF1;t-e z6%bC$&O996Xi$P4iiXy^D5`^-YINY?HG;Z>jHXD=QSTx$i`4a4C3r;|YZ#wnsCvw# z4o}c%X!^kWBQv14c7QL8gmuZX?9)54qVrXU>(CnA9Pz@BWgAp5st#@Wp9cw z@*|L^eY~#nbJ4@Kf2@LJZ|u^4BT^akBu^Feh^I#M#Gg>m^NYNjn{Y|`=Rm3=dOm=r zj{$o4LYOraZzA-(XH0+d(8C)4G#YdCcu0H;pSsmSUJs-(MPizEfV+&i0?@Q=-zV>S zzQIg=Q*%=>@}<$kS1<#5K98Pe(UUw?&?BB2(G!0{LC=?o_C(IAvAXB4#z><;_xux@ zJ_hLFOMDhRHxqikFs8qG=wXdNhsFXuxQph&4#zcEEKA*{8%B17OdO#HC^^k`N%S!C zdFZ(^UAa)@_83Lyk6*iX-fY58@>Ic(cnbVn3SDmgh=QO?i2CLr=t7Vxnra0Ix*AQV zMi8ym<`Em#uOoz^-D7&3hauK@I~sEgAzweXbZytMaK49H(2mn;IJR#GxEvdFN@vAl z2V*ZDBe4REy%J3y6O84qb+;16UO1-5c^G4j zkD;-^7*fihczX!vSQj`_d z53cS^Qg1j)cn-qhT7Q+LxfbWXRJ7xEiWxf+yU!PJeT3@o#GDRlv%R@+E{QI?H+*m; zUYtRF@8ky-;w^sJ7e|!~$GpDSOwy&h<8@z9j5{@B?$j-JCa=j|x*hq=*TgRcF8udG z@bZ*Ve1RLW14id5vtKbQ)5K0bKYfr~Ex)W0F4jxjolm`C?)(dcJ71NXL_gDUu2EjU z^%UR%|9cn#*k^29oGWUB8|h=zXYAoHw(UAJq)&gMaA@*oe*Ee0@3Rr-Gp9h${3)7B zdZyy>dUl{$Tl#j=FNtjS7$=FupFGjT64@;zB2OoSF#a(W#@W)V(s#bLiE{Y+>T>wz zrpQ4V<2VtV!PJk$iei@U5iC~}m4WBGk0cY|9Qj@8OBc{96Rol1!M_ur%aSqk&A|P}q(?!0*?l{60s1 zSNhV)O=S72tF!zqo5FH+kmI8QMN$TF}fMellxvzHp&55fCuqU1OHg~$Htk^sW2)xb|rB# ztS}U7NNyum5b9nsl0@H(1)nox{hs(tp^}EROfScIx7LUM7k_eG~v#dIaB0ia=2Z;wLx&IRmXlslUaoq|#@X zW~65u=Q4{RQv^zVnjQ}RQ6cOV<|fkSMW8;FG!+B6>$Jp+=38x)jEzuJq7~RSUDk+# z$aljw0;U_;%o0}IzhSr<(9Vuhn#3ki@HnQ#{Pm@yELE zkv_uQSW!WW*bC%ZUc9y`lQ-Y_&iV1{RP>5fTcRur3kye)vDJPvryFkI|p;-2OW5Xrc<=>d|mei+$v^wPp7N%7HS2tiKixaKeQ|CUo0k zr8av)X)zr22UM&tT;VP(bztV zX+7xm@9D1(e58yy)^lr$){0dq$dgPB%KT~;!FGM125UftzOtO^%rC#3GU7`Z z3SUm0mfIk6+-n9-tBd;UDA9tO8c0SPIT31EmOL$E-2mS z(cAO!axDUMXO$IrqgAC#49m1ITwd5(nlxY25S+6@$U`?wm~Rr5LOu0u?K`TLk!|Pk zE5z49tKtfA)~%0&p1Pk_2x2T-Ax=MKDBGPn!^=+;M*it>1T=j zy&8E{LC9u^w6%-7Uw#U)vCra*dXfi&O0x}5N$g1bqVH4%(kPgH{*bv}}*tC}4v;(R@WpL@K zI-M+tYLZbkxK)8ptglJ0m>WwI|MeR4R3)G6QDq<*H2hnMN}&bvHtjp=%q(Ytycx7A zs`q!J>0`cAdOpF47|Se>ZOOzdV0*rv$-^xB$ZPNsVXz}{O{eWSHgh|-+VIAN_$w}E zp=Nd9k{zP*TvzIYzW^^43qUzVFSEh^3Q>w@Yw-sAtJ)`30Lhbf><0U< z84^?iG6D;{8~==^(wu$lHrVqtZ;8!p-tIQRsYo7*+Z{;)6yS-qFm@!xaFmG6+@=aQ zpHY(im2_3{1?V^_uUZ%%{tSHJs>Ny|WmnL!nn4GbW|3wViDm=3Op78BO}m|QaZz0k zZ`rg-r!J32Hi2$3>8_E8eesbu4r^b0`RhR84l%)Kn8arsuPH0~jb{ zU3DI8ONJsAsWaHnB%HieBTy_te)3CSWfQw4ae-yForFcw*Y)m~N2yPW=5^=~M`@$p zY6e|D^y@Z?$RZ(;7x^dy3Y^wyn^*R%l95l*QqaEwuLC=A7BMl{V9K|!kt5q3_I!8% zP9)XZly3mAA17iC3Z@oL@F>W_fjrYU%o|b|XMm61U!U1FPd8P^rPnnrQu< zB&YWuPTkp~hR)&+eNcz%D2iaNgudsX@M5R!;C$Lcs&9+szE!eKe(IQCJ6v;*yGS18 z=Y`PB@=%(6Gx5OzS{(D|OkR`Oy(1h)WBSjntXX?`wVcDt?ur+p~LOA$VM z_X%Qis8%%?&F-7w#OHcL=K28E97ku!g@~Rhyej0=@nZ z99ax?K=g|MPt`oBJsCFoT$?0M>OW46+@ahBKFvBbr$Tr_8%UVjMU~kgaB-EtW!ufV z8+hz2K|$`@W#qB!gQaC(^{w^b$=}cSV2$$CVhZ| z5`Rnpi9egb_@AS*3BLY)3Vf~0!qxHh*86*-MV5q>RLW80WHq{L z14^W#=ws6lkgciV*?xfH@O7(;sMD~S4cC9}ZT&$le9)zk{B%OQ0TOa2>K_3t&+ae7 zsJnOIt`4LAV1+V*Bf<@Kzfk_9%4s8cjJszoI-;K7{0k6--$ZRXJm@x&xU_EPoDs~bhXf1c0y{?6)=*2v z8}|JNLe5h%e%rXS!o^fOzKCE6hFNyE1`!jn z{*pZvOP?cl#QN*8|9mQi&rdCdmy#4d3o={+p@lTDk>#~fjkx8xNGpkuO&@+PR4i^l z3MDEkI!L`(>d(m1hS5h*0XE0`54xQeYT}Z zuTLC>ka2r$#a%r?Ue)1=RlnDtyB9C_*GIRK!_<6z>Hp=DqqXljk5z{xjr^~g$Q0vj z10h)Et_!ud+w`+U{@WUPb#;{IB`q@CJfl9bg+;M>^q!VqJ6=ZM`kx@q!G-GVRn zZM%g8O%Ad%bsF`^LQ3LBw_`QRrWs`9^T5?(2dCon^>~eZ34D%|$19%Jt~9Yp14sS! zRS^+|zxG!B<#lYI;vF*?O|e=TghzY*)nP3h`3MDIqR|4O4pslUkn}VpQVntCQ>WF_ zFDD^h4l+WBz737w;!;$IXnScGgi{;p>`my&-+*~lT zM2nPnovC^EO5&ZB@~(yStZm%!tT(N&<#lYwuQ&Y;l1WFXs0LMAQoAzpb&xNzVV4R{ z3m5^CZMkzT28ndy6)1*+Z?mOA7?#jJZxh$6H!jWILMN~KJoYjZT|~b?y@*b251?&w z7yS(+74c>BU350j)4S-ujXS@|UG&+Fb7M6S`_YCcrJL`piUIo-dtrV%o)m5F9dumX zj*xTu;gd^!g2}JpL&*hn`fB_HE9ck?=sWMnI7vs*2JY5lxUVo2=r{e8!u&WsT-KE1 zSJ6jFQ*jmjHR38d3ZFHCHtKWvsAS)Qj)>Y$l9TO{nKM*sdd?3ObKv z{#awK9+!1las9>KY6t@WBCL@tX^iw|cr#fVfEpI~A*xadlRAFb8x6zd2o1D*&{Xw3 zxgRn^#dSxd%lD@jp9R)XFK;+>kA^s$rQBi34cO#&gxj*lFf3}%M6G#L$MTkOP4hT; zX6f$rkPLWt4bL$M*}@Nc!3;&1#anXn&0@?%mko>!0Ojk|VS%7jfXh3<%+%$cH*g0h zVw03im=}E~St!{d|0O|2e7j#Yb1uy?Ghwy>?S=d@al&r?hV+qFX&;%$*rA>=V<(gJ zq`1$QW&4~0Ky>;dz0=|qsn?HA)$5mh=dqTm4xM8KD?yH1>~*Azg&N@&24baKPN&;x z_|P1-9Xd_B-oi==j~GfY#D#rj)v@s)ayXF2U{eAc2|rw88*GA3sxA81Z^L^=nvo^C zU{UZ#u^k_{%e^7C<}?TUg9qaIOZ$lUU1$&k%ts(+LpfWHpegwvPIi*eC@JBn4sj1QfVmODlZh1(sJ1 zx5kxZ;?l*EaMc8_OYr*JLTSr8$UM)^8x3>XN8yV759ljsWsII!rXnIMd? zZim6_%DzK0HT;hUeXnpDwZn%6PsI~523F=cDfxH)Xr`#gvwL|T5z^r=hW-PG>FY^> z*Z+@=I$lYz0(=9YtLk`tlMFZgnEa7@`?bjR;XNHuCXJQ#LNS9#wrGj-*TPhHb)@<4EiQ}qcs~Oo& zGio^XX4J&x94d%N2QSJ}vA00?3)56yE3Tg8eF>;H6yj!*#p0dv>=jOEl%Z=o$fzAe zZVRQpUC#;|twt-r|GHi?8^QEqF_!%`M7Is{mW$cF;=Oqs#v~dz4yvmS(D+boeXbXf zQg0yG57(f&2pF0KnhnJwKw78s3pD7zhVm^Jz9@qa2&7nj*2TS6%NMdqi z)y7!@;R0D(2=G$#Hxx2{9IVdMCQiD#=|C#Kx-kxEs~a-IbUTQ9LG3A|`obNtj_o!Z zZA7i&9tcue>R|=UW%!sF@HlTgG{d$71)C4EDGyy2Yq`Vi`W)5_z>K^RrWq1%IC#W3 zkGrKzoU?l=CD^Fne}MkQ^1~q-doO4$55wX{Ll>*pLv;$@#bwmd!~5wk@ownhxxI7P zPvPu)7K7R+wjBRI6EmDI!^C9CeJ`fkWJ~VG84!aXo_zVnS<8srU5ASqWsBENU=q=NLQ)Po zxFJ{Mp`cH8P_Mr@8m-lCz#k6vz>NoQM7qHyQ5@6=Dd8a9Vjda$QQSuz^I2*2_{)SJ z+=s823zy_~Ft!$yn%`d~TCufoCLfdZrN7m_q%QE>K#=NtgEd(bf!Fu`3TRc_fBp-a z$|eGRMl}&$#(qW!*6K-K-+Nmk7=thIH)x&`8=0B5JtMdjwmPrVDV<5So#RPo-x3fO zo^;$$vw_wCp?NJ-!19oc#KKXt)x_;4zd?nImHpy#&c`8~WER89cWa*OKM)6yFx3MAhLLPoF)w}hrb026Q>cfT914K2br43RDwlj{kBx2YZ!2zZ z_2kmi(X?2hzC5E)cauWR3@y9I`c2ZU93wk6=E}`?iB-iSD!0n{se}xxT)2rsajOfZ zKUOFuS2YP@f2>jvn2}Bw0y_Jqn12kKaNI4wqG8DK0*w73mS8~ z38h0_Ck)+Y9i=o7+~`HDuzHB>oXyZ{lud)h$iImX2qu>j1-(7x;Tqs+Wa5XYZH9^B zDVTVUU?P!_xcEE#qvqP^GIk^`ei)6aaPjwviyuT|&P6aQ@*}rVZ$!wS@1q8*gRl-{ z^+5H^sL5(^v^cch$zsqZfu8F~8C zO@I_n!N_w3BN+{ek7rR!$<8hAHxE!h1C5G?m^ZIKMtnRKjX5Ht$ZFbM+p@6Ln3@re=_ zn@))GQP7NVepsG|O1<*wy4 zk-E}D+Nh4xLQ)>D(``gutJ`%c)~IwEOGZBBZh;Y75bw^60AYk_ewU5T9r<3AI6Dj+ zF+;>7BUV`)e9Gtctt#y$X>Cj_tvprxDH4Ggo-hEA9w`hg7j?J-go8U>c%iIjyV-V7 z6QE;f&+(VpF$oXAj6I)oam3y|@z`fkWE2)S{=&~e=$=>nK0Ta+6*{|jeXzWjy+<{z znbU_lYWW)06R7w-;X8-25$n(Cp$18Q%Lpy|Dnum9ZNqE`>A5ToQIQf>|Wqc zrg-xVlxY8hLjpwC^BEl9DjzQP*OvpjGlk2iL=PJ)7ffJ9;N;wYWPs<=m4Wt(Q!mVzId}c^Z z;I><#hiq3^nL15uim)uDAKKWn&W~yi1oBZ$>PSmofDcwW%VG5z$ChXOz-d7C*lRCm z-Lr@b(QxMq`J@k0X8rNRqDj>oKNR|dq^UR*`m8t*A3&}q1}i0JnhhH1gZ@6_j0Is8?^%&IjXKS!VyGU1?YHlr}ag=M6b zLv$QcuA|%|Drt1FU9X3Z#cC(Y7URYX?}*^;p(6mdb~9bW@qJwU#D5XfMdudB$u$Ix z#aK&E1~m__F)c{VpaXHI$H#(0Hx5>l``36Yr`LaAjuAH zQzP|;?YmYGH7(RHMD>e|`suT4v$1YqH_wI)xd1u=H_;<>eGO51P%g)4is0vE7omPg zMIi$FIQXHF*y$Slr0mKYD-{dBDxGNGarcq<>HQjbK#-;o8_-bdYh+>ejQIf6X0mJI6K^tRPro;*|8d>quWP*5i>M=lBTv z;4GPI!}Ybb{$RudPGcoCyzaWWT73T*HyhWXaN>j&V%30>;;9s{RhU`sAMN=}ui;=7 z@$YOUfmG8|&5QE7CQW8rfr zHb-yS6h@|C)7eyhnt#avHm89aBDh8y&~3PS!|U210;6rmZid}Py_>Z%uDFkGt%sK8?CMjmj<74}n(2#roxFDxDTrT&%_L zvMcmgNm9hg>(xBS#)#Pt;#wQNy;J%EeULOyc~=WR{Ivf`oJMon8vrlW2Uet;=< z7Q)TfTufY+(uOS&Y(^*MXuPqGQAJ90Vd3CW==kIAiG#3Ku@6Ty&Kf5D2+?MXJ-UgG zh%{QALB^v6zEQ8&Ye!KbF+hS(I0@J{(v{(cX*wgJ>nAmIsT*y$$<=O)DSVFnSR(fx zjhqTrUFY*{HuZr?y;GGdshZcvQywdSE2|8#iGd}73`@4vz%9@g3hn?bPSk0@P3+lG zCz}g!0UL;9v%<23QPA(8k3(xXbl5&5G3n?%%KkcB3;kY136j`P^K9D#q|nAkJnIER zx-xM{x+pQlmn6act|mAY2XOQ&eG)J@TY4%H`=mx}A{0;$7z#31|BL%}uIL-%jp*67 zxMz4K_3H~$^-I|`=zS`Wvwtw)tR8idYR0v(YY1Cb)N&dgJmpb0a@)9Q?@RH{xqlT)V}1goVmpsoil4MtS=C zV`B4=%i-C^{#tW?&E8*YCjsvp|K|)Sv0uIp)K#@#{z(Rjz96mLh8<*Tt zL?+GhUzVofS$C@YKGj~jW}-eCtf-wtHnyV9Q%59yd$;y&RW+5frnZAtMQiE_Xga+$ zb!mYV4FS*pN?;=9Gc|j0zL?YHR2NlwHOD@xnO?1WU^Nl&95g*-z7OhNr-9Wqj1bCW zAsWSjnoB>laTe1**dLuteb@4{NisQob|QE6g-4RKowYkwpyZCl5&vRQ$^AWL*lmUQ zk`17AKgONeN0O$(nf-O)%*LW%J6+rJEx+6HJFrvhI08U&zAkF;)SFo+>g{*LNmtnX zXK6KA5I9ScNvD*t>w!GfEYZqZ|2Rr=2b9K93cwRH9$unNqnC2(zGS#n-Ob-5JPWRI zORbFz7PjZMLb`L^iM+0hbfuxyMah>CH?lJu^5=3TzI?MShpVMVbn~)o@Zens>Jqgkz zR#8LQZ>rkru!j?9@sJ#R1A*ThF%qE-jgYz+%F2rN>wLGCbbDtO?-K3ePU3QGJTru9 z-9mqrn!jbLu6^J?`GiZgq|U~4U7YlEf?-Y5lARDq>^ty&AifSEw4v)b$mKvWjIP%W z5X`2Vnm?*eca#~4_oeD%sGtGNN79*e_y(g>*O=t%JRUAD@2`3AaZrE*i~9CmoZH76 zW?tWQh8!sDn2+y@anicJN}C$waT%;aqtV%Go_5-)_KUh}&`iHh7>hO2Ieg0EO(nb5 z2Mb|XN-O;uNLAEIA3@WpwbD#FM1w{;?R03Q_pvTQTV%H2^oyc$l-q{8Rd&ZPFfjZJ zM1@=Eyf^G!h2>w;KBX$9QY`;G8;?pr)@lW3lYfV%Q?p#4iVbos)BBJ2#7VV`F5dE5 zhT%ukGH!%>xgpY&qoz6{RqFVYZ+VR%ih{7wWr5Ms1u{coS+PN_l2}%>CAKd5@;?gI)M15od=T42dM3VSh;@ZH<5v=3% zY|*84Vg|Xv!@*I6g-}c0L>#;FMJM&1pDlGtGCB?><2K!?u8r${tnrka)ecdNHQvR! z7IF>jwUR`i@erlCb^e16_fltG0ANNy?2^8@4z{Bt7``i+|syb<%Lk+LEFk6jeW1; zZV(Q;aq?m!5l_`KdB>#>JfeNTI5AIKJ8^Pje8|*`K&#@!d{m`dmI(dn{ib|uVk`Cj;7yxvhPs|dYj>uY?!6lH!E7S<4=i32z` z9S?IK4pK@k_puC9de`1?MCmDcC}9e8=4ZztFOEn+0nn}8ibW|st-G|~s}kDYsi95X z;qNi_PZ$R~GJTf_|Exw>g|VzJq#Zx?h5=z00-tmqNW?R}RyGL}O~MaT|8ghcZx{An z-WrUbgdbvq${&Bh-r$pH`Z!F&oiqs(-d_}-;TW)$PAy#k<);?=rZ%4;hJAF5BW#30?j1(GH^8eIAS64ktX>4Pi@ zjz~wf^dbD!l!9tEK}U#D^W{8eE3#FQ8bYR(A&vsb3B!Cf&|O&Jsn~C#*wkafWI3nk z_LVRsA2*{TR#<6xIB)25Q5-HNH~5k5eT3=> z=}G0iFo3Faaox8A12C#JSrN})-q3nFmL#GXSe8k)E>?2!oI9IzT3};N+5>9xYe{zAl z+UO*B6#}OkYkhwAfb6O(#^6Cx^54{SuzD=;1kq_TatvnI)@K%J{IlrS+zZL&H2xOQ zs%UoYMANA>evgu`>;{yDHXI6+8r(uPn!Utlw&-4gMYm|WO)Q&>glzPQX^_fwsZ`F_ zUYEYNe-ouMTU|QsO_5G!oLRG26$}a?l~HIC--_o@QdnD7eFhobmCERB=~d}FcW5&s-@PgFQN}ndw zUY{ivV2KyS{1%7D+EQ)c`46W&-^%Q|ebPsMWMYPoJu*I7o!>vM^1Jkrv9u#Uhg(?8 zav8fYEIwYQjl}YdT;=2glutV`f|xL2TAazBNJM_QP;NP!Q2H`k4{zTj^GfPaW>m_? zwamKtF&bLDf6c5X=|1ffg$yWX)%-qaRkUjU6iuhMYBJ*-r!Tha2JFO=xOx&(H`XGG z7ychpsa&pl;Way1>dDt8kV#n@8wu4+JWJJe4xf;sz z@gObiuI<8j3@dMn@Kv$oG+h2?=ew zp3@3kWL60q$gjeZG^p2#c3gMeUD)m4BLH~ab+HDMuW>HjMRJc(ajx>Vgv7h)o!q^$ zzO3^5md{{pRbeE*njRaecb;cu50jX{Uf6bVFQ$$33N5P>INd08ZDgK`9Fz(SC_ly0 zn~-%}TuxowN<-2L#DDi8cQhItS|CpzVjjVj+6|_CGyf3@x5?+8%wMLv7FcVw-k7<- zc#rdSR-Lx>vYjxPu4}2tX41h(@){J%OPStcCTtlQ^#eK_dNHjdcDrpf!{8I_bA^A4uw_fh_w%uvvu&1|ZodptMcgl#Zoh-3Q%|=`j0!Ox zaMrrJo@U!Gu`Z9FZS-FLY{SW;JfXOl#bn!&`AuT~pKFARvCHRL(raa|>3u9e*BDEF z4m}d5$6)eIv%u56==H4!O?uj0yw(hlsLXZtU zX{AeguFO8YpXFyCW6L+v+2fk@8wUri_}S%N?gpk-SVsx zKT8r=)5sSuB7D(H`mP^h6n7T68mKoZ1Vty$ksnK)`~Imqr|1N|XXSMQliIE55nqx0 zz;zmpC`2x3r`5#m$F>)>QDnY>E09jJZk1e-8TmY&Fq9_Xv3}1F=lwX>lUX~+uS~2b zCnPlfOd%Re zDXVvZR7GX=J~W+LSzT#VR?4`uYHNjb`2rQ(KcACBw+SoU>kZF(fG_L&w-43PoW@TT-I{#cA!zF@aP=l$ef(}u&83@$b5slT01L$+M-t4hXnmQv0lgFC@TaSSejo8y{o|`c zahF+9ysauva|s#r;)TyjB)e01%*1e&3vn0IixY34R>IL@uAguZNEHdZU;}j( zn#!7yeMj{ZN_RrCenRP(d%HedgB8~#i0xqAg*v>nK>X4qp!a1?6-?Zmw9D+X=Yot- zEJ)hfKz3#1Tt*3=uJ6`yH-btk_(&^k#V+kLXQf4aUpXWi{Nbu+ZZCxxO^R#fU}5PF z;zq1GCZ>|^7@w~3GGE{4X^9qz@b;9KxbqjdQ3$tYw*}8i9mziGC{fW4yFrBfiInvt z|0A?us!kS0{uYogYPM9Mpc#Ruj3GeZ-3kGxqSiM#n*!vm;JgpCcRFQlO6xM%1Q(0jd4mKuLSlURl#+yx0 zUuS&jfkJ0t|((7g4v13xH0&jib+&)o3^o zVj03#7dZlb)NP{}hJ0>il?Ef9r!+n;5FzFv1<0|8Z>Bg9(Qur_uTu}W}6F2D#>|>8IW{L^KxS z+0sOiKKm{0v+Deo)#><4Y5&H!p;DMopPqS-BE6|@hF+96|Hn%4ETJGI2I+DsuVooh zJ`Ub+EsGlOjV9IfXoW6v$%S3ml0nz1Bh!TCbZj~>SW>L=yE0b!^tx)S>HZAObl-$e zD%;klZz6q$e9Xd4rI~If4g#F=)XYbC-e#gp%Hn#E;Shjdr_-@K$3Z@dmha>6sM~0D z>)lqP-f1HPd&z~Ck)H+mBHdZEnP3F29z!6znPANb+2uA9Y(k`VLBWhF*#EE{iSXiJ z#+)HJqeW=ejPz_{*FEbVyYWme6|Uh0aE!mD0GO`;0G<}{dy=LiPr;K!o&t7A5W?vP zb$}v=$YJGnn~j#&MVL(8k8h?bQ|3i?NNEw{w5SvpN)e>4*ArI{hkTghqDpyw0=gI| zrH3bCJiK&hrq0@O zE88*9Dw~yjAH9fDHjgr3kHkkb3gD#bt*iViG*+xf*bDS|pxw1;8 z*#Bc=@2yK! z-5!9%h=Sc%JPcmsLjgrm^2sdz9NrUg!iO>=MnF(NedvP^;mK1!p2+*Jwf8w^?^9>2 zx*hR7&{Wqwb@tkOuf3+d_S$O^8CxO&f=s`(YqSxd0{pxsk-Sv1Cr&BcMr#$qPo>-} z;jX%ER2+oORjOtcaRg8f$UaiG&GL8(ZCBLXIe0=!w7qgm;@{Ae7tC)1Gb0iI@C4k= z1>$hTj-zDXaPPoba^*Yp3mzdsU187i3Hbu<{q~(bo}hfZx)XQ?e%=E#pN>1`cc{n@ zpKtu)z2VYZa_giA=+nj>RUy4h8;Ipa)@mE!{6vm7FZ5RCW$Y$0sCI^J+AW%$6~4U8 z4`yPaD#r%cX%fw&mi!uOCNAq#O}C$SjSW^2xxX8tQhitPwJH7Bx-J$(5ZPe)%wRmvr(z;C0ex(3`&j>8vTgPCB8 zsTjW`hTk$TKp~bfBxgn}$L@Rm<=7(L(w5>v`Z@DbB>FAS2dD|z;Yu`Bmm;sYQ*nspeRL7UseQmR#uux(gHZYBGvc&IDKt?3&`(uX!B<#Y4f`dVUr|Pv(Tinazv1_my@}m zR3|6s?ZxX`sM`&K77+V^M8Tkn*f>M-IqK}CpF%qL#9&6L$OxXU_Qnk~-C`?|B_A9nf!(qo+5)mFz5mE83LZ&MH7#jM=dDD@=N zpFIN+KaVGM_53BldGIZCnw#o7Iq!#@Wt5Y!3*?)D9<}-Qz{bYI5c2GSd@=mIi z)SZ4_M=6Urof5f<d=p?i z8^FX_Le*(COq7+enpg`9gD+kPK_#cqJquH)<+p5Io0k@Lf4o1%dWrZu~4S4*fRgzMUtU1>CNeY=dhw)y54 z&-H|ga|9~BDo`;A0U*5$ZIzHFQU)+KS$<6OJ%P$%Gu1C0#fF@+CbH6hwN zv}QjZpxtrG4OC6DOJ=!QMVbn;h8kft%WUEPK(%O5hKhJHRIvSHJf4l?!*>!=#`w^C zn#hO0N=;+&nTrqK&9jO}Kms5BHkv+8eAuNmeS6AKvpA9Hc%$6 z+OldWhh&uut5z9z5Z^~=vHm8&cLSL$P-UuBw5v#Afl%;D-9U<`3Jm)qj_lJf>PUm?OFW)b z2E0Jrgc6BJgcgiK+RSr(q@72;80CEhaog#wyolR^MoB^?j!+qK=b*7?si8b(4OOSb z?V7S_)KNOKTB|pWhJ{$uoQON!gt}c2>hQ!Wu17~uX*EFj7NSymQNeV55=@sT#Pl+e z=uH8pk!!5v8n#tOd=XT04S83pu8ZIj>^-qPqgvnbB2v*2`*=L5Bzkk$Rs$~JG!eP3 z>2TrZ1>cNAVGPtO=+Dbn7_p(-o0r6Zi&%sQ2+P7=_HX0}$l9^X^Xau%vd^Vp?q`(5 zV=qC$IB2>-3dXl-#bhJS!d8eRp2LHM?hRkVrXN&<=qJKgjV(aLqUrYbg9K14#1lMw zTVHBzL4G*YzmCsb3-VH)qYgmT00|3n3Qad?K`xG-bn?Q)i?BG6%8dSO3|orSrdw{c z9AsD`W3b`6MgtWNT2&L?&`P7?vJIZa^cIXBKOT|^({FxJ){`V<-&tLX-v0hNk%ge5 zt^S*eQ2kB%J(iEvRaXq}UqhoLc^8N49&yln16(6K6Wf|f8ToW@ch0Ps%_g0xAa<9E zO4wAMC7ucuq53W!PpVKo?@$kMIIBy@kxzAcg`XL$JoY?ruKZbM^d!#tQ^B0e7BY2J zt2i=pF!Co}@_L>=qsJb7F+D_zOTv61(a=VgvOGV)4=`KUlC z!c0d-^3qL2Ik4qriap&gT-yqdUy3lx2xhLarKp0|u1S5004{6Any4@m?QK z@<2-6evPIm%~T8lPG&Rdprq08QO^F2KvN(M!?TQ+69FOV2}0LM19(IwHEtONBXKtl zDFSfzXqhG22I5es29;nLrOJ5h>e1U*dN_GR=pK{0AQY-xgR@j5?ZxrV!oo^#esx*a z=$b3sgF5Jrf%@qbB;y}iif}?b_K?%{%=cEHPEm}wvoxITtjzGO&46C6PVHZzjC(>0 zs2O=9xX#p(vONxsG!r~jK>c6{R3=)W{+Sjoi9v(X!Pr<;xA4e|zl=p##BRc&Aq(?k zdw^Qaa9vECRoHM%jHR=9uJLF|FkD}ZrmEpOQ7oMvz!l6l!e%{AjNq@$`D3&eFkN_2 z@-rRx6=FKmHH%I7HY--WSVekX1EpJWQ>xL#ohbxy(SBB!-v5AbSjuN6V|JIAuj}SrbpEou~JEYpYZT5+$Fw@{wR@yWsW_k!#G@9gDPu(dXJv z1`cb7LM7Ne6b6S75KVC_o+^c-@Cw;?qD~}p`D))e+Uczg3JM_8L3elv%|pUqVZm5h zLZmV4&H-j6?`#CzzKJHTFv))k(W}nT@NopdJa)#Js(`P6`RNdtc&b$lZ|a+wd8dwj z1@74JG#-9p{5nN&@2}7p1^1qfrBr%(N8;#JrcJ-z_$W^*e*Otu`|D_`aBcqh2#&iv zKTNX`{Q6SjS0DXjmC%#1et9(31^Gwd{bK>%&*7I8%zt77G5?XtG5@&@!TfFw^J1z* z?srna(jL#`)N%jdzpK1ZR$^?;HJcBK_jJkP34`tGV+Gtd5*IdRC+<_^)k^pg*u%(6H63T*hviHMB*4km!}&Kux()kKgbnMurCP0K)!drvR$Dgg*#@d3 zH;TntsczI;6f)7?Iy%o;SzAV7iJ@c9QzX**Pp#|GJE5%i&y)#Rbge0|IXCDm;?m1n zU!=jpbrIHi{!_1LpwvA=p=mn3dllgV@;&4&-jlK02+4Jwga{jUt3MKj$oD2Ey6dm7BeU8)dB{5w_(Cv#P z1gy(BJT8T17vzjKAaT(P0BS;-?V{;4G^@n4AaRkh0uhAzBSfeV@K}M6QvM|hh?byC zN3=Yc`v67~ZNn^9$`!;aS1Rxm;Qx!YR>^Hu?0UW7KntZhjrD|K3_gx%eF5wfZNJwW z&clZUKNjcH@fet%lWz&n3yZX^A@PeH3oeaIWJe`;JupV0lf!4K4oUJW65&Vi!Ru+c zgvGy28H&OUZwM`@Znx)>;I9Ly3Ay1H(R72j0amR+H$q=dJn;yR7(6kj3h(r_ zSMWz5reg>m$*TcIGDNFR-ZPXcKw*$7tPc||STKm`6u};LhHzA!AsBqX5b;`Ow1vzW z9G5!lqs{QDnjH&Yu;+F=$Jg7NN1F$0E`1##yB6W|2{iM-`xn^v50m3t3)y}yg={Bn zn%GK=et~@sq&nOlYK9-9s|M1oAZ$sx+q;S2D~s~U(4y#vw|Td3e?ia$6OC=(z7Xmu zo_*3c&YuOW3Hj$MXsYnfgd68<+qWMh&LIr5=VEN@oQ(T?4vX&+b_M1`4vRA%(AjPp zynknMyl=xWrpJ30hlP&yOW2r-;D|s|hu0yV@#CEP++}F9Xx8ct1Nm1PxE)t5wdx4; zD)Ui#kvxUgI+tU*@&h;Yl~vkrC_g0Yb7^hfVa30{Qporwx*C@8_xLE0|HfeHcxZ z1(;C2iOG!%I33X!h%t(qj$3o!?8yVLt2th+^eG_@GYIS7E zD_6>9*-DRM*0+ib{#7ZsPRftS0A85_fUu}1TjypZxz&g)FGx%c_|k{V0)H=>5t$|N zXVQ=vh-c)g{Zm93I})NJ!uY405n+Q&5n(&_b24~g6Z$CxLQexbf7kPp_)O)Jz|NP^ zU_1S$-qGAoc+p^phczsmdQPbdmXK2sZy?Sp$|=`tUkNn!6qCA)X~yh zabI+B2?yRRykGz$dku1k!g9#oqWm!Jes2Xw`*Q^ZZ^6|@K!9Cj#mCF=C{qGQylM5| ziyPvY$*b`J@pfLQXNBVm{sg1)3S1`BN9o5gVvG^8?gj!TWZk*^k{0%|FVvMTtitLh zG3;e8KqZlLf;Cr1Q$^Zsnkei=cLVTLBXrEGNyiX^*>rx|85^^x0bPgJF2A(o5qdN( zC8k|RwV=9Hv+XkSh`JP<+-jiSSkZ9tm&?_wHM(xxzSM)ui4)Ut)S<>lP z&pRch9zzbm0vD7Q#~Pr{iQ5O5cupc|MRT}*#Q7Rpt1u=?RugwqQQ-vnK$^8mvtBn! zi2pQd1`KA4g0&+|*3gOOvm#k2h?H9J0<B$7w3n=TCAl+y>JsYk1acOzORlCL_0d6c)polpvO6C5S) zA?@cQcwz%$f6@6}Pv55)k%kuY*G@^Mrr)3LWh_L#th2V1;|`3>A7Xtl=7L z*b{}-9tkv?+8T(tb6xxeP#()d$&0INx&ozZDgH?3xNO%0y*1Y2@Dd0)K(j!{oI#AT zyiphU5t@C`bL7nt93J6($M$L|hDt}QJicgRkrI+aS0)c3LJIvBExWKIW;{G;ro?|q zWQ$xf=r;f=i82#Ri4UUb)H3KIEvUkqZG<)PT9QET)FlNFMrGlRR1|q<1AR zjuj$S;tK>&ti+`;&9sI2tIz;+jt?&k=Zth>q}X5ZRCNIAs|gG9_h_mv4EK{aP3R>t z^G#ivJsCwx!n);`#!MaW#=NC8wo0bu!eFT)ycywHb<-(3$k$^TRvAe)S`_G_yY}83 zl!n+?={8%~Fxi%FZQbY9g4obG2*yy2-tKwN7mPt?tL6NiDr>)sASqrT-S>A*x&nz{ z+b7D=k)ZHIipHmxhdR~SEEk_X0iY%npx2@4)O>oWCO}oy8o{aSBt!}0yd~3$V1?Hq zKMykS9RMzQuvV|OkQTNEuYg@`f%i}f3%TkYINEDP{4b|P#NcOm?3y(+x^v?gOr`PB z{tbZ3#7Rstn+ur29|tkxc>cIZ`o?uzD1s&KCon>jaX~oGZc=)BAkw;u zc$stn8I_lXrYci#KRJ|_a>S=kblf-lI^qVx?>IMvv7VnB82CK^F1Z0=(`Ma74nqsv zU=`snbCK`_djq$MoU-M-WiJ`L;D&^;C6s+(cG{e>PUD_fZbph$^@OH-Vp%`OY-dJq zinEYc2JSJ+EXqzkl&l~R0eM$eoF(yH_+RNhU}uFsjl!YlJneq(ozSjD*{l#CPGc&z zC-*{zk~bA_X=5U~rJs6s^dbM@(=}otFLWJvMPg?Wy#5PVRmtmH<#aUd_g4B{QMo#w zhP7X!C-Uc02q?iyeHWUlj6RVk@#v^)LP97$_$s9MH`lDy~R#-t)kiOf!R6@c}G~5x{mz; z&&Hdo7froBbvlr~X1y!{j zC;Ur*n$Xt#8k(xyHqoB&f{3|BFxwl5*$CgPSGOPs087$@#mLV&+{dTThvXd7!pT#k zVq4{6xmqbAl%rZ|)ZBWrVp`==G4IU=2LJICbSIq}GJp@K02o)V+>8W5KK06SBv7vj z=uEH(*yZS*0jT|tcCZSLIOY^Tu)ald<&0@Bej?i;=Uqq1l^8zc)Sm_p-SP``S*&xJ zYI}|ya^B=O^$t1T=pAyprIuN;E2u1Ima0~**eW7Dy3uf&Zq+c|23L{NgxU?a2LXbp zwl#E6$f$=pyEGSh2~Hdj+5Y)Yo+iP3Z}$f+4lc9IS3mN3GjXXmcgaQ2JvF0Lt|2of zrP?kTB^xOa4HOrvyG3NjB)5q+-x-mN`R2mS{=L0(q2~;>aK9U!2*|E%f+za9yd_ z-^-r@0ILWX7N@ZXvGiE7c_1@e=?@Yw7UkjbFV_BoipKC-ZsoMo>QZhNPn4Bho_ZyJ zSsj8TyAo=$!9mbOVnZ8A-OXkdcPm}fHjHAig-kOfV6=*0>k6x&kewedg?7>7H1-k27IEJ)4l&ax~vpOuSt6d0uHiS%n{1z{R}#~M=MV96$w{_e znDK8M3c*W0ne#$;ROtLwAv)L3Ft;ff_gMd2*^>g~wILw!GMYG5o?cSVY&Y%H*HVEy zHaP8=nFc2vLIE9Umg}R50xi2m1ul|oGweog7^8<|%oJxu>=lP}G;^`)6Gj8*ric#|dZq-W^R zdF8pBi(i}5JhrF#5J+&Kh7{*8Nx7zl?x*i z8*Y(iGO&qZR&tCmcIC(q2=@XdVUI-&WFfUcQRfa zjfn`R=nx!XoPkgjv}rcMkx*~Cc@?(L5JsN=;LH#m`g0n2xXo-b*GL zA(<`Ya7ONA>|Z)=7taf7i&%hH6Kcf*>{bjFeqURI*U*cZR0Rnpwq4^Qetv@Ir7xoD zxJs~*-+-p-8cbm$pC6uX>M~rD&aIhQB-S_+d>ye;?+sSUFL)P-$MC~;JiKFup z<W{m8RgmN zIx5nM#1YHz9YBwfW}qhpDUrjz>8!5@X#AT*>Qs4u%xV24zp3Z6{&ml3-9+ko6m4sf z@2pxwz#BQN8>sPSHyh2CGhW*B4@kK!ENHWZD@hb>ZbOxFs!rb*bPr|W^dE9|bz9zR z3w%U#z78d@5@Ql3@^(^oW&xk>?F@z}=!esL_|9Q5cSh7Wv!GhchMV}bX>X+-2qq=8XA|OsiNfa3sJ=rbYT>EMu^hi zB!k0WyyuCdaG#nIL zDi-U=;*OG6BwY2Qov)EpP7>v;%+*Oap)Ext{8y*7gtCE(2Kr9mz>253x|+o9zqKn5X%2f zFTvSt4Dri6ZaQ>^^Yi!>VryYR9p$Z}Ss*^H%QkC;JDMTx&~5%pWAPKgigyqwVRfD# z#;4NbouM9e2^6;b2~V+sdba`8gzR_-O%-;WW-~lK+40@*e@-U) z6cR*X`zkWHm{tpA!(FFYLVmnvkuUC!C!PvjSG7DB&E0|3$^`@GO{9UOHCW*LYWuM= zK>M+_BeWpgQhi*CeDRtCzY@~flOK#0Ox_BH?+9g3aP=2ZB=V6Q821B7Ga=LB z2wxa_XTCFZmX$2RBO}9rXA4sgcQ3}W2~?@|?Oo28i$|7Fa;k~i{Ucg^C^_v&)qe`2 zyet-+=6U&WA{B+TV50ZyLjX0Q7W^|bRka}ZGg-L$rLpslFid}kIN%Rc#vQQF?-R28 zFc5D1J9s2*L$}dFF_xO$bW6>uS;NNLMlMOiX;kV>v(lowt62Y;fEE=BlvU`*IZF>9 zeah4%s9C4of1wEpQ)xQTfmr%BfsEbesJc18t8RCHfEMMS0=yP$C@p8ZNK#uftN1^& z5bNFF z#0Ye!QuqDJqXc;!j3lSLjvB|_?jNYV#!G6y*9b}7nio8#OKR_Fq@?!1X_ES>1SgiU za!Kl204j<46MW=%qv>gr)ZV-!B=zr-P-vu#JCG>4q~^vIH1>A!MhO`;8>qifHc`c= zVwx=rv6-e_Ew_v&=fdv(gR=6cMLI_joGzU^81Y2XISe|G&PNDjED>dq&c8#(d{VO{>C6C(6aeGW znVS)bC%~d+n1r4jvVeSPCCCh)`nfA#OjmF=Llygr^u5LA!)L@muXzN zrFHVCLX!L1EMtg}-M@k*8n?2&r;y!Oj9HrjvNh@bZh{occ)6taJ5uN-L3;ldnr@Kv z9^YRCGmntpzfWT0(Ug(L$!~7_Ry3CK+iAI#mfNT_n*HrS~ks^fntb|IxgoW zm_UBtoy)ooGA2J1oD!&vp@#T(KZns1B~ireO*#8f{578^FbWxk-K1UwSM-QfFI)F- z<%lq#v2^QS33a1OaFtrq&no^Ju#$v%0=a$@O%-yT>a1d?e^$Y36hWeYKqN{CPEr8@ ziRzmcZu}WE_Dl??UM@9CWw(l}%0{)=YBjKRX<2T$h~hCWm3h^XnyeNX{GX*@GD$5m zfKR0W7*~tjj5sd|C*zwIX4to6=uKCP+}oQnG}F~0_ZFuX*J4G#B!~@FjQeFAztAOV zs&SBUY#X5*wULF?<8|4_5uqS&S%^}Q-cyK{tHuV5I;USC-t2I4}t( zvFR)=)M$W`yIE%A|#4R@bSp#^A!5Cp!ocIQDll*N6wj1ItuGY!<& zo2O}*AvGGg%M4>LLWzC^i#Wc^^qxZOXo@5RP*b6wBuI+fix)`>cx$z&Nv6M;`*KXCCjh0o!HSQ|zZ`WO`+$z^v zHOp)vn=efGNxXy)NCkSDXj0dw|BC4lX@Q7NW50oa@!zPwSOQe{IKe9Dy5Yal5`H^a zg?hcxY&6Vfxms;i4VD4T zpKf59{DTa=>AHb?`#^?fx^Cd!;&j9DD3R+Kw2<8MZf|YH7TV!fD7bc)D-Sv6XXQiBp-7RyEvn}xj9Y8iYR;FG90 zN$N8ICk4Q`)aPbIMERsX(_S@0Z@Sdy-ijHT=~AD2i<9~fMv2v+Jn#IZf?vpX5&DJW zO26K(2#-ecb5bT5MgL2)k1>bz&oRP~{J%c)cp_B5yRd%an*r}BRKPWwN6klEuo9XU zcprg_WzAe#;5{jnm7oRQkER=>1^DvNetDZSpqpU&5sKhXNV>cuW%zN5fEz!G#-3lT z*g_?bqHUDxX0_hH2kLm3ZqcmcK0uwF6_acWo|Rb<7SriJh zg*$?Z9JtHUMYK0NsYE=u9PV7<4ivjRATTC8cVh5m^G);v|Q6b zV!CSCHCp8|GGmxE)Qqi{Dtw1S^+^K|9QPo*Y^}U&0GQqtVrEE@n6kP!lqPi>4dI47q&?A0=L(Md6EcV`Mc1G{vI5j3=%GP>rkv3HB;9-JnI&#dn0pkC0*dx@i~I z!fTfQ!WsiVhzUv=*FqIfc&kyi%x+Acd({pwdrxEbl# zd^-wO%@=3rP2W*)Z@V)z({~iyTg;AP^hlJohnswDT>JCxz{~tXY|PW;&YSy=d-H;p zMyl`>+=utxA4p44rqFuo0^9RAX%5}PciG@SW*~tT?0Q_QN1#NS{0M) zTx2q-L)ztWB3IoxRj>rTk=K64HIrqGUV43}~X1VQcxup##@nRRcJ-J|y%nrKmM z^4ZWZbWtry`0T;ZULT!{&soT+@sttIK(C;I>j5iC$t2Kl15FhgKAXDH@5-L!pN|>+ zmGzU|4mun?FtoD0ezA7}a zNkPvD?oErWJ`tt;qDL6vZJT<0Azd7~1B@I^gerao2y9#xdru*;w0&U|R814Viohw- zG*XP6wR!?lEG^FZ$5Ti@L5i)TsUpRu2@=!xg;CRw5OJR*5%;4h!;e$M-1vvl*i*!& zVU(MVDoW*)sx=hOK+Of*PPbZi1)0WhvjxEWDnK5fE8{IU$a>Dq*QJD#DLu1&bNK$|3(0tpD>>;zuInsBDITlPEs zp@DN5Iuu?)_A=x`q?|n+I>uS1G{wuLV!U)e9CAh{Nj+O;C~j`gun!>{9n`eUkRi;~B0|9KIfIow@W>fQkhpD7SYCs$8LUE1?TdnU zQ1qvQO%XH35-KPmk6Uh8Q_4Mmh0E>?ahdMHm>}QmAp$7)J0{=kvqN3RoB8RC{Y=1` zkg=bKrW?iBS@X?)hB%r~&Jws1PiS9$_zlsdmU-!-ByVr+RG|V0LItZWq{y*a$X!upKdpMwcKAWK><|vfnGj*O%8ZDj=$kmTuzG8-u3+T$ zkf;(>;S9~v^74oypOU~8<->%eM&4g987Adcv`?%U%N_E=oG5TTO|rCLyrCI{u}Fn! zc2@YVo(O&#(m@90j12{Vp@p8Q*rinOL&{Gs(halyO|4af5W_^Sa%|X9LhjjsW=d&~4P^%@wMZ}^^F21P*pY)C-p%Ed1uq$o+G2U(0N==4hj zNyw!0La!_Ry)D$AE>2XFksL^gnUjAJpe9r-??qEZ9!--ud2FuZBIt9ZQV7wkQa+(2 zPX3QV>|cKPjgs8I{P3GX1Ru!2Fg4|ufsCt=46GOHX3KC9=v8;BMMO{IvZ^3BTVP1;Oe zp46j4{vQjGzs_zG*m9pCfQh!;=R#e^b6mO!@E8-Z4k4on@Hc3xu-sIew5+z==ZWzM z+6peGq7E;d!Q_%rOYR>2 zC^WmM*m3ZLB4E8D$%DCZd+7R`5&2Mn`gW=cUCtYsoQI=Amib&hZCdTAF+D8un;z$Fb*O0XPp9@W_Yv;GQ`c2dLH(0z5P0 z4SauZF&HrZP)6uwLYHlks96~h4Rmh4hZ7&95?IoXi3+!JQfJc9-VAxxG!M%5tp0#^ zb>v+i`zq-Gh5bKnVTJ5~@Hx{tBV(!X?(f`l z#u=x&AHXM_ox!)fQd#f*9{zlgkD&B2;(tk!%@ZhL-|dS?8L>;Hvm)3LsW-soZO1xN z=;00mnW}wf$vH~#OCkb7bCQNaqErTY>Ox@P&gSYz(So~x6?IptYr$gP5s3}*0f3nL;uy)j~4V^@%vH{Qrnn2<5B= zwJ_H3Lgd$M4BR6`dDwtd7j~movumwlql#c{Ub)2?MN~(?=mi+@02REB(zY}x;^SaT+Xv?_uhQ1{-nN6PJ~-O)m;}3CSV=M} zN{x$z<{NPNo@36^QXm6vnW7hk7hmL0T-FHFjxwGQH=YR2ZxbZJ`MWeOp$RBGc0)Z* z!~HH`P00O2G)?CIQ~a|UkQFhn@lEIdAg(90GS_bu!cRH@#IjS_f8*DN}?b!l3bSsn9Ojo!>8L_|p0pvYl`IvwoOVd6Ck zrh$^PY(Pf(@zGp_>AGuV)50m#>!Ga2BCgx@S9>_hB{HYzhaPV13HR1mkrt#6@k+TA z26zu%estdHt@Q&^-~qBLFGT@tY$r5Op**3RXAmH-LTJ{zwnUA!sOMIYTqLICe$*0KcC|aPZI$I91~v3 z{2ar>4slEgC7oTfRBzxoz6$3C{;ZVTM%lqbx7ws472Wab9-+HzT`y)0=%THQ+@^>a zI;Q_10Emm`@J<+~Z;p-YtUV|ILHNAgTU*_SPzao!L24il!h*;rhB9!pHaH?UBDKy! zJ8nP}(~hxh>~KOcbC<+)F1SinF5OQP?|`ecvwr_6d^_js7}et8K1+==ov)ozi zjpJmLo2^*&dUew1w?n6a!nF99?k3ll#T(sOAZ|8OC$ZF}3grObx`O^^TCB4GM&i3v zbjqk7kE)YascIt`U9s3`wVXz)T1KY2X5Pz74F0=mw2%;$#Q^>_1ppa0`sF2VMr5S! zB*I1uHPh?iF!g;nLvMQ68u#{JGc?n~*0{GnL^E1Kh;XeQ&a+ej1-H>W@6P9YkhO}) z?mLSJhj987C*d`?11>G)WwEW#D3cF*K#0r3y-K;9v(J#=y)2=J2;qB|WFuYpdQTyI zFB~7KCV-!j$RgqMq{PI}PY0+8t@wM02)i7 zPB(AGw&RTrM<3GM>j#6mbHIq6b%4TB`zOh+uc#=t2C z@G*K(k(6N@Tc-U8@lJ$|{jltj^uGSKMs_a`^{1=tTx9nUKut(?BQ)J0vfHUoHiG2- ze<0fxs#CCt%Y!iQmtOL;9G)W ztRr4ki6s7Yfz04nQ_!7sWrqPQrvMn&R@{vEEuXexHhoHl-gIrny)`p5(~-ly#c8W( zy%D3R!0~HKMt@vkq4+$xpfl>K1Cg3!VJ1RNW$Q7dsV*+kf7M1%{4+!e4FINXHv!*r<%C&r_oqS03^&b zN(M?1(Egxh+933QR{6lAx}e^Dd3OG3R&L2?%WRFaHMAi1m2bc0B4t3S^Oa{FIIZiLu4 zwG>8reznA1Y(W>2C=qy4MFQ7G!^PE6t6VZ`Wn}ekArp~Xc1o>sPPN3~&q={_l3HQ_ zXQcobS4-TCcrBk=Vix^m3V%~?x?1AiKANGKu9mpBIJNYAk7GzCS@3zWeu+^_{2Puw zQI6YKU0v$H7Yw%-#|Qc+NAmgzKxI@?55$ZhLP<^1f0D`y<{P21dZ31JmE}G4RF)4y zlOIEBt4OISZ%R-G~i2F$hT_;L#UBuMaoK+_G9;1@;CIYN^E8wrlT zOc`?^b#%WNH~t(NOG#cT!n$kN4YOw3h|(+>NF8ifj251>9NQvi`6QD3FiUbUz-b{s zUBaK=_9gu3>o$=5yQ#Za!pkE0ze@|a6JX>TR7}H$=x@|f+^cGtjaJ>MSK*$-@u*Qp z$?crBHiO>=@RLe@2CyXsz_{e+W<*-~BtKK+pQn)XxUJ2-{b`0~y5#5H;w1m4!jep+ zU77E!9PJ%(^z6zWw;FW2!FvNSw3IAG54{k|K=lz@h_jLzUFiM}gMcQWP73W_@5o%? zAYH{*A{)nUfQx9M<<4RsmqS+;=S%a&c{y4!B7%bq&qDg9C4>3I)D!<+oOVc0-8Stc z8JBx?hsK!l(@934UyE?LkK~6iNPRV@HPY1F{q%OMw8^FBo|D4S32M$j(~VYh+MFZQ z+!>o7C7;D(hD9)zQI>vD5u-2572&nk*fe5QP7pY;Di=qwwzeoQ4fQ?6?(rB;PzRvu zkc35f1)6TqqVNeMq|&^KruDVg?SJqL{vSLYdQJdkakBWDbQ^>lAHe9P{%e+O8`nQ= z6pd?DODHFY6Z{rsy>3++rJ^xux$;+k4+>%}dUf=@G(aKTz-i9oGAhMm{Ah@qbWXl5 zo2C;it;NUxD!~;jeN~F0R7Ue_q0#89DFtrEB!=$+tRy2Wfw_MNO%>*jh?pObnN6J~ zSy4J4pGiWN7Jxm=THJhiS+elC?%`nIZv}A4=T^ya3>Q&3l}fW(EEz4URj zi7CA(a?TNE?b#%8{dL`@l4{^%2ro_o`^Ka+;%+?NmGal6T#HDGhJ0x7Fe67SLZWQD zQK{m_ja@A9ZCs7VKXdz14?KOWGi)=X(=A%>zRe<1$%*t41;gwtb%rPCs7YMK;cEs3 zx;jf$ghZkY-V?i=tW1;#A~qH`W^r{FX^N=>Z;yzK0U2O4XBri(5B4&!q(l;jq$x zuq(MpM^HnQ9V%Ni99-F~wk(6{r`nv&O-n@ZjI)D81n>uF_xblRes0}!m&7rC-=o~| z2g+ma&#$6h^KkDTdHtlYh+J++_|tdxTp!%NH@!G%FTKFRs_%2v_qj@%qSJGg(3;S8uZGebB*ck#2WP4_#o~!%pwBkCj3{ze==i1_e>-N7zIwN+0txrR*1-1 zmRYlOhDBSb_RqKX9xSV4k)@$j56oyA1Z_kn1$qqCBeEJ8Ugu=jZ4wCyt~lgv@`Ho~ z@OGr8OSt+DQIvr!r`tKl**!SIvqZAiyD@Z6?2R(K85ltCo4^2)sTJPiH}z(+ZWPEnA4$sv=;^XtipN*(jD8MHrWs+u$H$ZSVK8{c_hN_H=T)M~M=}5($Hmr%fl9 za@w?FwCAG$L`o{gC8Wg7TcjE{EZ*de0U%!xZ_!|L&h*z-L>LTQDgVBM2-f8HeZ-2? z4f<9`BkGv__#9EMw?3Xfw2IvNwTg?Cs8-<`ZQ6*uD5CBfG740RHNF$At;zE^m4!(C zTOfDa5;6f8eeAPw1|4j8A3{zD&&Hum@5&Gl#OXCQ-Egc?jbCi33GLXNKIS^cr58{2Nj3IYh5!vrKg$tSUrCwbW=DC{l|u zfv7ufv>N3mUu4$kwaT~90+BUj_%9vg87jHqZ8B`n5=Pt zgH2setWV0bl?a|SQJa_cl1NX3>@-cww9970E!vfe<+v3QFQwsN#~qjz=a9X*aI?RQ zo(Y~RG=9Ol-(1CB zLH4HZbCk}+<4k?=t1RR^-4gD~^J)CwGhx9V5GvPz)UsKOWGU&1*_tYmh0ldP0G?MO znxtI-UlN%HFba+tC&;HuOTMpg!wv928GU=n84M`1GL?+?_UVvw9+lj1gG_I;jI8&F znMHYd+kry?8MQ=04{kKW1ucon@R)rpg|$`A*DMR4^qm2c-Jo8U%==NWjUjSNQR1E6 z$_f%C!{01S4^o8t@=Qcw;$n!2yZ>29+BUjA^OQZ}d~zlfDFbMR2B2$7)mWjW{Vibx z)2La=bRS1l2f{jxwEPO|PL(L7fkky2O3kuq*|t@sT6m47RYA_ChE+!qNON3a&C!|* z^(175aF9}r9W-J`Zh(~Jd-vd1@?GABf78?hUdgN;i1qQl z$NoVY9aTwCpNUE$Q;$MPq<83fu)dEh?C#Q5N76Xd%mPS!QZ;jrO59;JbA(vVJI$aS zKK4K;RmCa+1B6Tmw|Y?m`{hLr&4S4g&I|wV+~S-t+DIi_o265Q!B;{I9^N6*m{BPp zdUz2#q~ionp0P(Z($3gl66#&o1L}?`HE+{VfSPc_^kZnMY?!7xV~?D3#J1^vq8vg# zYqYV@(d1>x9Xk3(!n0VF^w7~a)5{wZ&-*hxL48$K?Vb?$@F<#Y(4xeIj>59gBhB<%_wzOCgN9c;}IZpM0Em`5Q8?>_eGQte0-h?w!}-AI?6=XjhK zfRtF9r*BY)ih}*KkTlg5>{Tg4i_oxtMF4$S&W_X2gp}UD6zW|U#bE`TSm)&n05ze4 z{VJNOvYh+T>zym1!l$}F2?5uAgg#!2k3-$RJNt|?WEFI%ugEFWK2ewEE>RX?pEax& zHymD*{BoRuhvc|XEy4F#c5x*D$x-Y^%c$3yaGfLct71EqabNk9$W~Jbx7W9E|5o3^ zNzpaR^lqT3wj4>);i?Lb+qZR8#*~}YX0z6C%5{`)N7?qOQE4Jd+A?q$fchDx-Q?)J zOAiP6-`kssP(v9~uiY;XQbfdsbhjyJ;3G9^s73R3FQ+L9y3Yn8z{ZtRW8(;6CFQ~)u%?(5+SM_APOu{t=F*0FV_*v)TknbP^nxgTjge{ZXsvSn zuHqb^X}54TPz9yHP3G2WIq8ML$06fMx+ID;BqFf$vH&}oAOz@oXliuz2wg7;(A6-k zdaKz2<+yIO*k~eyZv#rF<}~Vt?b>-$^D+21bX^t5p{%G{4^WlbIzZD;PmQKkLepyl zG~wv0Rcl#}Q^H=$Z2)Cv)owavI9Mwvm75n$3_cD`o+OFHk-Y4za@*)~DYhaTc=|v2 zr2u#Dni_X6Cfxl>fV&3vrY&I3DY?yRrCe#6mQy!zAqpwCTF`tsIg-H#xJxj-J_1Xk z`%(J%7(UvYyC0|TpTGwx&?nHdAYMU6+aL(%$R;)9X7A`~p)|Ro38Q#6Pz)TtGg$Aw z4d>U67yRQlNr)d=SAv3~FSf5cnc{d5{o-Cl#f7>bCzQVl0~vJN;t7pPJb_7&8tbzQ zmND|TAj~3MASL3LfMEW70)mmTJfHTPda*o1FP6uE@mq3>IKpjKszujEFi#QbI%>@# zaz`MUK8QxM?naM3yWhc?7~*h_mgb84c(>#sQT%HRa9;VpATTm=5FkV%3Yb+}xIU^Tk6gF*;vtE)ZKl2wXDhJ#WB z!7mgfuwicoP!Q9#y0o^45_PB}E1U$$kv`1msJy_%y5N7J`+c~nW5Yxu8XWK?AG+R$ zQzxbhbFH&9gd8bcV|NCKP(txp@hT+=56)*%ZydY1JQG#6?*B8iSi0jNsGk{w5@EQg zmjS!qC5U1Nwbd6EN{?qQ;rC3A-}Kuu-$7qVd!Pi*?=}oW@fPI2EyM9k7f0hI!WDml zXqvFij)JSb^@^n>1!Ku;ls~@gNwflDg(Bk1p1gtUb2VU1xIQ;+$ogcBFVk1&Ig_(0 zO6N*urP8@7y9NR>yq*cxNlXwW4>u$rk&m?Gn2yzgj{wEPahDNSdT`Oag3MNxR*kGr zO&K1(3|_B$R#+24+(3l*qxFcBRH9ctj6|i7ddSo^q%tuas1hskJedh+Q|Bo3BOfK8 z4ZuL13iUTvprV547U6EVENz_-Wq9Rj?{`I%)D%SGE!`WwtNY#j$A!S*xK3k%jow^+A{U* z`Zyy)Uw+kLn4m0QiKfcpTVdtnuEIsh#79Rkn)@o$eL~o8Dzr}dUVNM*d(kBJ7lx&lMY8Uc=p1m-xaF;#YEy! z*FMfa|05BWxC#HWT|s)ja=lcom5pY@X~F^9q{-D{W*EBlWQ!~F`~R-hZE&KGz0$hycmyLe}Z5jXMPok&US7|P6a)P^hZ?` zhjjF4>+N*0L|yaE;)$}#zdQ9R|F}8?x!J=~6_%_$rXt8hNhy(5V;Yy$l-`ia{IGVcphlhLcy8A>t&`LvM4%qW@_ zyIO7{__RTFhsuTv*L%_CZF_3D!%no7DT>tt8?YU5t%q$`I@dfx+wopO9(o@{NVT!( z$kO)y+sE1+lsp_*{WWs{#R4e{GgNGKTm%R(a=Bgn1P{PV~eU_iQZC8Bi)p~ zB60a67UpuyR$5{gMbeDY^_BE)W~(eQ;Ngh?HR1Z~)z@cJ-hci!B1PuObl8PXawe#@% zqxt(jSR4C27x)4)iXh7lrR_o%^L`KUXmIGkzbGZN?>?he3%L8WbRtT^9F&xoO~U9S zh#=&9B{-5W+RF+7KbPLgM8N5r!XE;x2`P91O_hDchDaEF%HwqWlO$oD#bXAB3TaEI zAdMQSNYe$*4v%1Xu_M;yI5ihry-oCv0{JB&$oeKNpTIxLQ_~@+rhdXU@5j(|`sEOl zOGEr-$qs?M2%|T@yx^rhfJsPsfdlJCtx>60alBt`T8?Q~iWX9Qwdjb^cId8mJf3I* zdi)H7kCPXFzOb+#_pVl)r9eC&$KQaZ!vMa1+|^ovRYEQ&yW_gZc7sDEDJaOFPZ6-Q zzQoX-U-v?XjzQ-Te~;*tH<0W)9@2Ar9m`1urM}`tEovsw=(cI+%G|M6s{=Z^FbXKY z2sS-GJY6HMe!XQ7jK0<=%Z2`3+R;dZ?h8VXN zZWh~RLR6uPmwbZ!F~CX^Pzi$kZ_spl zL4LJnxkt`?T+06xQT3nl(1EXWm{=49(Jw07=sNU5Z=saVqUz%PD?t&eber<3($Bwz z`k7`SzRk1IA*f;{VIj7xY{Wunb4)|I7K0o{cYZ0w>-lkDK7$GLA z5-iC6qR3$?`{V(eo--`3yO=p zwNiVFk`#vtjF1%D)pwP(cwVR{oze5j?C0`)bO;$mg^i}uuZ2FzG^}f~B8>6;vVxcN zM$ALXiW)AN8x^G1Z53NpyIL}gmeWG+-KK#Gd37^ym@R`BvLaz@33<+0*nB8OniI}8 z!^{d|{kRz!YHG-z7ssc@-|5>0w(o-N!em2cABA_0r1n4B-=Ne0E&S3qg)#> z<)P8mMaoN0N#Ox(D=uL=i04>d#UI=HJtSRS?IR8K@%7P}H?5DhiBZg>>mzt!M*g|h zU&3EIhCOTEG^``^E8<&c&V~frjT@9hL_9jmFDFMkaP4!rvbH>b9H~l{*H4ai4iM&NQS*O@LoD+bPmD>*A~%y=P{$d0xaTLJc^))lyQu&S7wHC!K^Cor!-IftRFkFE&)5(3fv zGH7YEle4)*w7y*bA=G$uKFwhOM74pUCCmwAy@a%XYd8i0#%=t4mb0=xx}Z%ObnDh7vu)8v#)ej!64xBZ+H-CJYsOfwJWulM*(kcZlnM$nT{L#*!Bk1+Kd4yL{ z7%nCvM|rNtD$GTr?U>I1{K2V80C$IcbKb>$&cXT%*GCuAH}nG^9G&_A!35C8s&DHX z$NWDJoH^P>EC=FQSp+REb(TBB^@Hc{8SPwkR_DPbVC(@9bpih^{+#D4b^^6mSZ$=? zv#^4K<$z^IA(gOLTSXT;F}fkDS~yY?oB{#$EGqEki-z4KD1g$h@% z)IQn%MEl+Czia>L+Gw}-E>{4cmq(i@)8Kmh?$Op|;{>Ah_^($$>U#+Y#jx6M8lAfc zx7$AJk(QTG^q8`8%k zKnP>1`;+wT)%5XU;Dr%3+QE_NzHxM@+XI#ueccuMc7#6u_#S)^7P}v!Zy%(Oj~~Ft zN9d#W41AR7;)nx7ps^)J@)jvnin5sWd-TK`uGqLIe#N*(ETKRFgf!#Cg&m1G?O!bV{-l&Q8$zGKB8$R=T9BLHzw!(MBPlz zl%ZIVGk;@pHt89Y^9!DXZ%ob)5=}EX^EW2vi;23KoOcp+fBuE|xQVEn3HwX*ClfXm zOklahS!xAg(;a*!Y`&GUHrk;oQKE3fa!}b7(hCsG;t82c-g`oSs87Uu&?->6%VuxM z*US9sg`tQ3+gmk=TfJVn(QXYsEZ_cc9Y)MWVOa8)Ge$Eo<`7pz1{X|ytA|{KtRJzn zz{LRZ{HHLx?l(aG2hJM2V*Q6;oghXUc8-j`qmJ8KVb1eC8}F&V`DmXbZs+UgN5wl4 z%fy#o3LU-%gTpbQXStxn&4p_;33-h;G>4a{n${5E_gYf~;m;|qo)2%Mbr#*{y1DtD7?D1ev(I)QT8_%W=4%2Yp z1OpXndrJD*G)B99li9;7VS8`)0W|aSk4KDaZIV;^=FL z7=LNX+8(kns+Xddq?kqpL&sAvG=`h*04*Xhb6~rN7zAWwo#+pwOmub`o1Udv+6y|# zlYU+HNxyajC;h?+CVhL_q+yEFar7)7J||E6-Px!8j*Xl4!7I<4VBUA8&71NJVaq=2 zNvPzh|8e%I|Ir3c{n1IL{?xRob6o9g2l705(tn+O(qG)bNq>BjNvF~|3w+NjnLO|B zWS{r9H*ntnGReGKX^VZ7LOGJ>d&z2M8Ga#NP115XWca~*&zgX*pOQ9TN+dQ52U7Bs zOWCJ9w}DfB{b`x9=O<5|@`3DAzIy|wywkT~a;WP4X{+3KmV3A_INNrXV7v^HXYOR5 zxw(NewA-GDy&k4^A18Jog{YKKGYx;M~ib0^W8;+k6w1-DcZ5E7sDQO>VkH U@|exY`m@*vp-v)fRS^xk5 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/migrating_to_v2.doctree b/docs/build/locales/.doctrees/migrating_to_v2.doctree new file mode 100644 index 0000000000000000000000000000000000000000..47c8a1c64d4c1011c2e3597317f5a79c7ebf2ff7 GIT binary patch literal 122109 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 literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/quickstart.doctree b/docs/build/locales/.doctrees/quickstart.doctree new file mode 100644 index 0000000000000000000000000000000000000000..ed10e03c888eb95ec148a055cefe464b6edd37a4 GIT binary patch literal 28898 zcmeHQdyE}ddG~8~z1QBg*GZfNVi>z5yEfjt_x)Hfj|4)39rKDHC`#|nQs1PcD^!J@J zk27;0>-9QmQxYlb-I+7rIp;gy>wMpLzVqR!PkgtxkN+1O^Lm!uy_#1Iqw5&V8w7_9 zNAGX4u0Qzr;Os99J~UVgW?gm5bNa5%2EjhG&@H=TxU4&P0x##Oy>EBCdWeO1n@2Y46KwZ}A z*xik%TKR!BgI=xK;LxM&DvdF?ZNztjrw26jV7jMboc_Q%>S_39)@3Hc156~E90s$% zM#o4smulIE2Bo!R5ZD zqPrvK;*ZY_f*D_3@2Z<@V4Vtbs_(nD*7vavg!hBC;Q`0NjNVZ_4-fJC6gB3*9X9&C zdFdc;N^SUzU6fDj=R26Ug_AHtGe4Os<++MZD-k6y^Xx(Z+3nro(TFpXWfY&j|PWb z<~f}!%otqU-`9Yv{rM0_^xD(d&|rc?1ZSW|gCbZtYcV+bde`$?J=f_t>u(rXOBW9S z!a*@5>xiID;PXMErA>8PV+3YAK>_Xkj-hBwQO}Jhtc74cO;5?-FM)<$6?c17h9?MS zA;=|tB;P&iO;`b%>?zFalE9Ucd`8{f6?Zp|NTUHwpvyL)j0j>$P@r{|_c@Lx67n&3 zA|LC5^@eEWFIjIKvEZ1*hy|aGmuqO%t&3RbgCiIEY$P-!R+Yqu%vK~MlC{Ew$DjxO z1UIre*G4f>Fdx%DmrkSSa!8uXY%uMs?mA0kE9m!Km{uzdX;s-9H}dI5>nja&nS>~Y z8A<`^O=beo!hRZyF%wO|TC^?(xmbi617Jns!~1A?)>WTvsoOFaM$bYCE?6ZY>|-O} zr^$LI1RF933EQt^h&q@(7dARKxIyy%^3LQPG~Djus68680w_V?hMdEXUF@}Y35Kk*B`ZyCzM|e+R`CbXj0;4huBq&HTz*j>ChIL^`?kK}frI^3LB$b^MGO^buwV*YVjF`XmwdwMf%=(C z`U%P_mb1xL+kTzaPfaIYO2N>9FFyk?9Cnc82lr>GbAlqmP z=2s_W2rfxLKRkc{rYeqrU%FHmt+-705sq3!Vv!vMtALDwt zr>-+)-M+%eJk(s9nTp-@UB~DPv(a}H-(pH=v*eYBeFe4?3|ddwcKV8?USVuXBSamhxFjM0VQ125j#p8xPCQ=>~{ zV*6Dw;)Sla_60|KtZQJ*t*e-XjLn6iSqZv;in6=hTum(G_BjG9RA?^2gVb|A({ozb zEd_^o_rXEW2NlfV=Q0h4$)+d~(0KxLvb}_VMoFBQy~t_>XQcUyTla>usoLE^y9p4% z44V1dJ?vTzQg^`-{A5>q9b32k!FB$6OLe=0Yy8ttGY9evX;AmkpcW%ihLqrV1`}c% zkWfOxLD^Lpwtu2|wC@IJ&N=rC^${^q`xP`3MO9U^p|L`#R;pLZwWeBTrBc<@%9>fJ z)SFE(PJ0S1BN-dYf_6@N7RRHmx6a-(iG>a3+naBq7wUp=_z04bIWNh0WT!rP#jUSghPT02Q2c z>)_s}=d{gUU3-|n_VQtSnBe>Yq`PZhu{&&?8KhbOLQqYLEZYGggsa6!YhzAi<2d`e8JoHF}&va~`xoSre`0ZZ}2MprBbIjDGaeOK>j*LKWH}F0<(A$PI z?`<#BsD`EaCke*M_9yVq4N3F%TL~!nXd)^8oAe-&;)i%YW5xLOV79ltx(QPNwofo) z2vZXNDm>*Ll)>fpMS?hX{=?$_Bql&>!o~ehMr zYN@JLn$4PK)XKGDscu#ZHMPB+mLf1nY6Tyqi;yW^4N3u z(B337M+woGgIXkB@RSSDqkKe0@bRhrj=yv^YLn$DeDkQ=XStl-u>nH@@c@6Y6vDm` z{(Cl;dy{CI=bNbq7T!u&!dk zrMY-EROc@*9ee35osc15&u@Y6CT+-r*{hqKRj&t!ImtC>H0EBxuT!Q&-udgn;f~r} z@52J(f|;DSTSU&gU5JnEw4O6R+`s$nF6IvrWyYRq`kHl$`Rg>c$2KS#ZE^7gP5?${T%TI*U!=3 zjZ^dz>8r?C%ZxzMSI^UABwMxpYj_ar%@f08jjZ4K^duyZ|DFLkS=5Hgj>f@t#VaQu zL+WJmxaZSoi^iNwa4CWM$)3i$6s-xY;>oL$D7@_8cdzhPB&rLQUbAYNC9`ZcjcTJ( zQeo-pO})+-GJixtfy$( z{NLCnzR2P6&A|kS{Qb@_6J*_SAWfm;$tl@QrMCs8VPuuHdILs*S~KcER;{EpOGX1m zL$gsYY4x%yEa+pb3kQfxjvDyC;6X~Z_KDAEmfo~rH*QL=gUf)XTc5*a1O7Mq=p z*9Jb7c3(UA(8Shivh%DW6Tzv;Je^3+EXsGUW~krSVm6_QDK|>2P}WMNqEW9Ds^z9y zET~4YS~al6Y8D$i?yJty0>v&tf_@)8;lcLyIs6*a?&Ft{rEp%^Vv3G!i%*UzA-0f% zpg1PPq}ZCSu06naLa?E@D_NNOlmtO`K5V3}aQBn^drKH2;hd1N)Y>1VVT4|Z(>r!8 zk@d&I@ke3ewBO-aW{{$1*~DspD(o53Y+6i3g8pmh{F+P@37ZGVM+{2qRU-h*g*!_I;l2!RmEW!!6bvyut1XBT4k z#7?7l2BV0Gz0@eHg(idlSg+`fdV{fQwO&{2<#M^I@sLY;IkHZKG_e!(F~t7Z?*mEL zhjWcC{BulMCFf&A-C{SthK)R8T&fQx0CINOIxG+9eXs`K?T3g9EemYx$xGYa7B9Vg z?mad!5BV{pFb_`_qU;nndb>{F;|ym|BnY;k2ZjTmozW5Ip)8p*F!#2xe*sJc-SWBI zo0aGl!GQxAE(#lsxA9e+j>MhLcuh^=7~CSOCGo6UY7c=H58)=*FvPH`$Ig>3QC11U z>RRNsSQE3Lj$}yGl3d#~SIU?2Ec8LH46BdN`?EzsH}Z`v^SbJU~($OhJg?bqw@>7JJ^mrQY|#jEbT zc%zJl#B|Lv)$WBV5tAfT4ZTn;HHxODBj|0iidL%Dn~kPguQWAy1S$SCz7I0b)21tl z>@lWm@V&^Wlr6T1ibBL7Hyg1f7Zw@}*K;sc-R*Oc@dPVY*i+o}6j??NPg=-vcQ`j6 zu?w`vcAlPMj7FnN zs1Diyb(8AgDn5OIWy%F`8R3*Ggxg24jwH~t$WL;%gPD-SxCqDUO>u^kzI|pQMr9!j zQ9wEN$*{T+1HL$HD-Ak3;WV|K9L?Y(wAg28^5NDaEe@p4K06UZS(=-e#PMmqqG_U) zQ9MD9eG#9^G`B+%$7rX^d}flv&X+XZjgpBHW+pGgZQ(M=(sRTb{CTnlN2I1wH($SX z3-D(*zW{%ID;6L%!yT|6pZKAK;w-AiYwU4xFIw53#T>$|R!!CGlp@w_AVsXss?9<{ z*Xw4fsMR!0H7FHwJe>|(1q6MJRq)u|v`I7Jn?jnXA-qZ=Etm(ppk=uSadj;s&Nzik zWP2z)q`kHlC45kX{9)uPBdNw=9`_G*$u&%Q9!l(oA%734^Dqm9nr}g?Lx)p7S`0Hx z3n7@?V+5(|Brla{be9Jjxkr)Wtt;2o131=6dfMx3zJWpLZ2GxN-8eX@)kDOVA z1_fkpW*{E0x|Uyo>v|>ncE#=*?CKf}7FZdSs6N7+co|TBt3o%nwPgB zX2sSX~BwZ*XvtxEk(QL7u;_U!DX-w#-m_;7;0IEGIpeQ}ds`k{Fa%d9tn z^9je?QkjFV2nRbn!37dlhE_oidjv;i?v6~A!x6(vVD6oWTv?UUK*Lx^Ji3Q&mEe#@ zwDZJb5tB?Td?bOX?`dN1zV*^e8r#qmQ*Pc@u8x;;f{9XL+lw?&VRGF*N;XRUJ~9y} zq2VP3a4G&e6z>WTLp%&vH_1uw!>1A_9i(o?`hKp70Pg6i?Z7-oWVMhu1hVMgz3L|x z{V%X+6w4~>YLS_`S!y(pFs?P4Rijj{l?>G^78^B6ciD~VC+K5TfAG-S)9>|F_1-M@S0p$rpWG67T(7hWFB1^Y&3#9>MI_ z2#R3#xzv(KJ$)q8Q=0UKxtz`*jpOoP0<1~IJ3(I#@Ttt@)Xh#@o|)4ydp`iyAWU-I zI2)6pH2W-`chB6^#|O|y$lO{)4n>ercuSAZ_=++$AIwk8U%d+Iy#>trGaEZJi)cg z&KAT54l8Z3MI1ZaRE_WmQ_4wr4$|dZBwq5$rM|vllic9}Zdmmm((Mqg_L8VK9`Zaq zHTOET+t>2Cth^Fvz^3OmZT9OfpPqpq;>uitdMLKN-mlyK6K7K z;QE8;R{HK6neWovkui9c2`zIP{Fm4X$4N~mU!(N4mF04D_9{#Oj|gGhYcUP< z|DTw}q%8OLKcKhvKhlqX!jJ3if5y*X3P};2&Y=A-_+wNC`z2{+Srjh-#SXT%uHtPY z*JLw6^oTbJx(`gHX@5Kok3;u6r9p-C(WoOEr&v+7hK{3r|?Er&qa=r}t1o2Zs~Aa}>py{A*Bdj)>qgTg_U z@<8bSiO_okEfZwE?k12Ko&s*fpGK#E-yb5gSSxGAO0!wp zg0#2CGr!q0z>k9vBK(C&Gqg%W*K1|ntTif?LJ7{!dZTQX^lBZp5*tR^4ySuV`*w#` z$)w)D=Se*=JgE{h3%XjV>*cCZQ5$u&R%5zZuB&>vVrq;HNyDFr(+ANZ#9WRxWyzVu z`yD!mn0phR-ssuEGYGo!h;91pAVJ^<2hT+CQ0v08a88(eQT;HJ|7v(RO&s{c-}&$$`_dWVTA|LUXBbmUXQa&|on|=`9r6o) zx{)AA60~H2B6qLVkY^_j#*H;4S`wXRB~e(9fbZO4+LOQBu+8v%1+qGwO{zI(P-ZK= z!$#tYjg-_#b>l=54jnCP+spKCeCQ~yM{uj)CTx3k&ur^R=m=#I>{%7b7;w9kuvtTv zMoq12Wus7QnykPoRbtzFu~Uj{#;6`eDmni2qd<^!xX5KxyaS;QB=X`IBWkj6NuAOJ z?SQ5ucIG$meS(H(_Kb!nfrgI&N{E6I6cw`mDvc)WxTcDl90oJYLa9(_Y7L{Y+x;p* z|K)IuKwb(_f3ZUMGpM$9Lf12VBMr=>JRX# z>rP@A9Blx1^636vsi%W zP)H(gzDqA}Q8ev4d}8TUlszaDyo3LWPxrD0?Qa1Xcd11SU1T@Q`0Z{DyEV+vb>V)bhD-J#yLWWKR*KmM9Q;NtC*!i$!s)uJtMVf z=xViCE|x0QVpXTT%y@Dq`b(#F67(_3^RapCs$tD$AoDpgU)I)Qvwv+(q1+~3z?W}TxiNz?X0`?fSF8ri~?TVa4UhmIV$HT)?>L$`q;y5KJF3>fVRzEhD6OjaRE7ZugkXch`C?JD zN;+sYLJhx+q|rzsg+A#V(RuKtEFRJt{1xNLY=kzc5iB8xZX2S@RDOCR(`%YjWc9w| zk)jGfO=7hPn&p0cDruHoA1RU)%firnM-u|BvzQy5l`WBFBNH#*fd$p?OqMgA}#@Kks7EsYUN_3QL8jd zl~NOt6Rm>6hQ)$jE;dSaDr=V}?krN%YJi}RQ3Ju3GFew)Ha~oX!UIE^L2TJmQa*~# zBj+E9`gCC1M_L@d=^?PDytBh_(vynakVIGg9BqSA-{b5mmCWG&B|0xkhX**IsMqsi zZ?%Q086@Yog)%T9(?`hZm+UOSLNCPyNJ#&KH_YqfETAnA=T<`c^-8T?YHFz8SywAK zoZYB3>gB4AVwifftf>?x+zsgy^l_yBdMO_RRdU ziK1{^0EwW6A;NCL@s<)+ab#rAaFR88ZqIA<6tEc0J<=P+YO#qRK?P-^P#KXS#tt7` zgK0&z#8`zw)(N(Q)2U$GGDRMj`Mj4yquP@Kbf;4RIuS-oA&DB_NYL*6@)(xd2PlS( z8$F810gCGH%jLm2&{V;2m2T*u^%rqLarH&A_=i!WJh&V6jFIG#RQNGk+IEZTq@l`N z`s+&_*6?G`?t>@l7T?jE50f`*C$Z-=(WnTJa?(N24dadi3Ss za9FSacgidv^N{MZdU>38qcW1H0zLg+wbREX;y^!h%EbW-^6GE6Rp`V3Sh zVt_vkq^Ki9ce95-j<}9P7lZH=onZe8(w)R8M0NMeK`#8W?{?69&Uf?{Rer$0HZYng z4BJKJ(i0}Ykm{CRUJK@^(iAd+T31O^qc-%s2UDTP!#?=X1He~`C#=Kho*b`51l8h4 z0Wcr*7k&_4+HyHK3Tpul)>a2cm^y=t2Lhz#cj7;B0S&uq1Cc)X){7cV1ycso`s;u< zPerQXV?_(pklDnOSyW!v8BK}CXLo_N7H+k1sM7Z!nC<)Ka%0)E@%ugLmn}wBxLW*V z0CTYjG*sOm1jhvOB`8xI${;wEd6NOr{xN7Qm=|!9F+^YAlYWu;I5%9)5;I3oo|F(2HN)a9}oaOc97Evm1`@Ax@Mzo8$T-z0gC z_G4ZpD9I+#f6u*MWGt>!8Js4bQ>gk>iWOe2?`K;Xw02Mfe^F9>XW@2=0n5 zxWMDoy+4EC4r<8Yq7J^tF}ArZfS|qm)C>isP^KkS6gvq z%K(2Wu}_4p`l3Vx*9pEd@dnoZO<2NR?C3{shJ z3C#824jrvFS`_!{v~UL(HU)Ig)3snBtak@;?U+KWT@Mbj?iIR4itbn#?35x--UlHo3>d`gV}MXv6w`p9X6tP_uXD(1jIuTPDkVi0ga4toFJ0fiA%c^%S1| zNcDml0w*3XSzoX|Z~f5v0oQe0nYF9rW-QTC+TEo$*E(@j~Qw?1S2!1@mXj?!`3UnfZXHx8JxKRIA-nDm1=nN+EVU=DW-aK0w? z5Kl-bMeW2Y$xlQ(T*(E}-qf5)8~<*{E0k(TNm%=oi<=rCh-sSyVZ1VEHY5x|IRag=$Ok`x)TFq>GYx0ohgMOmYRv8L=(KhO)TR zS11OPe1~!{(M4o*EYZdcWY67Xvz`~?JlQt!(WD&!ClfW83KjkS;E>2GKJ@VA2j4;3 z7M@s?=@rsnTncybFj;s8jb>El*I{%QoQM@tgipe9o8hB$d_9F#5poBf3J-zoT@peO zQe|{fDJm+~8_QTk-G%i|n-_F3DZzrq9^&Q~cfidMR@y(0FGk~JF2V`T{zyD~F7J*Y b54zJgNWQKE3qdX{CI7*=brvO((ohs7N?B>;m7IoymAKptIsZS3cVowntp(Tg#!&1vf}mC1UCruY z&-A!|_yeo~=dg(66p(}4ha4RLC5Qt9_Q8jo5+k_;h%W|=Ajma`z(7t0Hn4#JLB3c0 zJHr`ClyV9pfTNl2s#ov5dhdI$UcIj@ef_K3XVgD=IT#CPbhO1RYvfrxh~)*#Gov9N zh4I(o*ZwH}a=alcK06G&$TxW`&tQZp9M|&sDE>pdT%+-!;|5zPfg3?&1fdh+p*PYk zZaX7~zUK7AlI(A7Y44ey@4ct_eC#rl-@B(h5Kf@k(a5CH8osk+3#`~^N7 z3l=y*F&wLlby*?a)r@qd4RKxkx~%BA^29m0oa$^>E`oU;??wj0au+xA$(yk}AF{m> z8}eA(mMbg_eaDDG>;vijoMQ#hu{>|OEC}!r-EeVnfs8A-b7+!SKQqN zM>oYCagJ7f9ppq6tZ(D5j=v`U+90=#Ig#(g@(mG&b)XMq8f0x82-! z9m8k-@iq&NN2cRdLl*3BiE!xtMlJ}}+!Qyk;;Ovh^T2ZtxE1d#L+e}zu7WmzoAQjyCc z^Y?gxt+3zUgIM|`rF+_od7~0H+ustKRRU44nW8}H&6EJy#(oQ%v6KlQ?us3`l0&E! zLn|deyhGcw$3lL{j>}${JxdWhah1ZbFVB2GY1ZdcvZ-?r*#6CwQOn9^I%qR~M)UsB z)6HA<^Nnx3jzU@b&5%;$bJ%4|D zd`xzi{YTMx`y?M*h?FrHuE_HNSNT(su`G#Y(h=oMOGwMyiQMPv=M$N z#BAVygNqAi&P=-CTqUf8&{p6A8Lap*v^}WM-0OqooW$T9ecjkul;7Qu6Gz{A)Y-9 z_z*kim|ChsXSAn{eFu5X*yY+sGjGQ*3{d&cn-6vEP&lU0h8$vm3=0*lAscvpMu*bX zXl#*;8vNfs)(B{>nr$=3caJse z7>Og4Fk)c@{;<$HD&bSK*obl@!F-D-T3Cx` z8)o_Xx_o)wo)n-y_;79!NwQMPe>%^%b(t~We&WWLShzFA!b#Z9oqJK`?eZz4#T)Y4 z4719@gOYgyYOc>V!%3tmR;?D6T+J=H6yu-5ULJb#qrjj86(peegPjHVDeVe4Tz~gX zeEEN0cursVx3ByeyrBTlXzITuX$b)Uk)7uOMIev3*EF$g#8~u_9grhk2LzMCmr5w~56l)pt+$x~&)Bj5vE?LiK z$r4J(It2ISAoKzDrBEoVr`nSYD_?u&eJnBb#VLm7<0fSQU!c*~2P6d{i~RT09^fSZ zr!Asz|LF}pz563yop%3DquJ;fmesM$TB~pN`wh$J8a3W)H0$k7-%Qe`MYzyJ5_pH~ zlOM4mav*pP&NhcyV$Y*0KN2iLIq!fc_B;U}g9F;fz2AOw{Z z{o1_CJB?naYqT1zTGM1!t=4XtwJ!3;PPfy8_)j)VpE%0#^;${6z|AGR%y2VJsRt{i zXY$tXW-0_U{Z5vNeL`hhzm-*X$Z? zsHfGiIjeE2XY@NQX0&ayQA_OOq7k_+4{=n&p`xgh7RQJRz0sYJ4@<9QS4pY@2!S}a zS>!6HM!_;fdV9d!B*6`kttOF%yTMGe`YVzkF{|gMTB!1`bA4nbuz5$7LY0$|b{&@R zm!OhG*)BJk*=yAhV_P_l7sX{Ho9{?`}QF@e}W7dq|&25XHDYxNtvW%L_8-e}eu zCWDUay+)m%QpZHS(DD2jCYKXTiRD6-PCkP_C&4B>AVaOFR4|sevZz$`>}r;OR@1|6 z>5!9;qpUC+mmPv9>av4HTDgdv1rwK_1>?0c#_xKg>O7o(`oLnB7tVsE=fnE{&J85P z`s=ATS>0Zz*D$fctlR2w10@t@;g+b$Et~gieeCq$o0y$JO%~E7;HNRm(0%6sb&gU7 zj50ueaWxBgULyGt;CUW`g`#dehoUBt{AFzYHBd>FWOl3`Gg%!$u-B@$T1Kpf=J^;2#% zQJ=Tbjfp%6XvPj4T%IT5X7QO$rnYlL^|NSi)((G>)Rp?oa}X?4`3FSkl;ASyGarJm zUno@Bsad?U2gTf$`aL)7P~^0ty3XOdZ!fmvGn zQlYh{%qm{uKd+-satK}3C?f?oZM zXF2w9mUIJ9P^)FGcK^YHcTmC|S-9|pLScXM!V0?uk^Z<)SRZ)XHXE(F zg*>{Cw1jkq*i|om^6f&GFHXKt^LJlZ&FCu_e6vt9%7I3UBmHZ4S&R2goLoBHn$a+E zZtlT*PpM|2Ua0vA2>k)FjKP26<7DDT0W(WsCKA8A96^cS2zgeP)Xhl#^05T5<*}zs z0I!!h*chAz$JByTk9l^lw~=4um2PH=+r84oAm*ekHY9YCb0)njMZ&o#Z}OutuIu#T zPF**Sb#<-q<#_NDGJszO^2W?jxF^FHViIG@oM+5t4CH-CDnkT2VgVQbkxz|LdfuY6 znmtKcmE?thhv>W7Lr2&;)ihOymyH5r2!}!6(C6tiU-U)EWgJMyQ5f&4+r3>`+2gpv zWTEHB_(2zAD6tO5_;JzqJZkH~&FB%%1KY8@m~fHY&F;#T^k?L|7=9`AOr5%$sCNO} zEP-wR7)rN6hALU5myhHny8awRL;cA1{9*h^uAwUGjL}~)q?9WF!B>(eX%ZIbRMge8 z4lAsePDop>cI7HM)I1;M5S$0yc;~EK5zNhhqJ4}XIZ$MXyR;x1v?P}-j>wMX)()9J zf+8^jC7~gnRB#_^auSL7b4E~`4hRC0qk1bVQD|3t)xg2`Tazz!?)#pvD_rM3Hi1|* z!&qKUlwYE_%m;#iqMh-JCPqR`WeNAfJ)3170J;aJbD z5{gw1vXDnRds#hEx6QQs#iMb+Bg@l|hGbAz;7(q^_3}(*C2+(8CvXyzy{zNrli{is zf}~uY&%8xBl3ay6D2(C`71tD?dnp~M+YZX8)T?)$zG0n!`!ojILj=(`10P_A`OlpN zxlUdO;~DM27F}oPgz;yt+?8u%J}$t4ID5jyA53_WE~;a>8Vqp}qkk!aV+T;w zHT66Bsk@%ZQq|r@4FLQg-AP;yT2?B=?EPqrC8#Y`bvvX;@E8WY0Mo3=M9(tJf4gI2YJiu+Dj{fI^CMwwbz(>R5vzhr?tPvnxv8{+%od*TD}3l-~BFdO_6B`p6)A0MN< z;SKuuFZ%cuef$Hx_%S{rSs^;%@i-A!eE*U7;E|&9NYQw#=08$%AFFw|LakCC?DxcX z#4p5uB+F3~O0t~#rk3mG%TZBEEvK@SNM0%%H3=p!nGRfoyc>#2o)COxKS{;` z9pD5*!*g>#QA2-i>R~>*GC{GDt*RznouIF-GSPf1Uz(7#^!e9l+m_FrIkU46ydQrKXn_JLa0dn!z(JCQbF3{tMrC0wIL3|cFnd}m zFeGKBiE?W42$hW9ee9-B{-!0~pnW85ZYcFleT1%f=@K}H72LEYSu>K!0T_NtN83Q1 zZm$paF!V`BRk@T#`~|s4W(FvDYxh&1rLddy!Y5%M>FwTGp*)W#B<00iFUrX;rq|8@ Ul|70JD;CAWG;Yw@JTkWa2i$9^asU7T literal 0 HcmV?d00001 diff --git a/docs/build/locales/api/abcs.pot b/docs/build/locales/api/abcs.pot new file mode 100644 index 0000000000..063196b285 --- /dev/null +++ b/docs/build/locales/api/abcs.pot @@ -0,0 +1,1263 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/abcs.rst:4 +#: eba096c79e094bb18465d6e9ff3678cf +msgid "Abstract Base Classes" +msgstr "" + +#: ../../api/abcs.rst:6 +#: ecffa9e27b0648238c9edfe6aa200df6 +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "" + +#: ../../api/abcs.rst:10 +#: bb28999fade743b6a174c2255757b009 +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Snowflake:1 +#: 4741c9654bd94685b8e9999b040bceb8 +msgid "An ABC that details the common operations on a Discord model." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Snowflake:3 +#: 47bea6eba12a4be891c27a511774e540 +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Snowflake:6 +#: 68f54081d0324c8f9a60a03121228419 +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Snowflake:11 +#: b48d28bcb8944448a302ec1728849ca1 +msgid "The model's unique ID." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:0 +#: ../../../discord/abc.py:docstring of discord.abc.PrivateChannel:0 +#: ../../../discord/abc.py:docstring of discord.abc.Snowflake:0 +#: ../../../discord/abc.py:docstring of discord.abc.User:0 +#: 0ee679abcb1c4b25b364befb02132adb +#: 16478c3543f84403bbfebe2cf3bdef50 +#: 066672777afe48e7b6b41fad1a12de64 +#: d8eede98a7ca45ea915927dc318de4d7 +#: f6df80c3f3ae47f7be4d5ada55e8d6dd +#: f85ce9cfcafa43e8b2b80a84c7b8cc6c +#: 0c86631d2d114c45bf1c165d105fb12e +#: d28c40e6890642de932360bf411ac494 +#: 1bafe7fad7964f38b1650c05822ee835 +#: b5cc4d4d66184893b35a75a892c300f0 +msgid "type" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:30 +#: ../../../discord/abc.py:docstring of discord.abc.Snowflake:13 +#: 7d2cfbf10de24809b10f59e074b942c1 +#: 5fae1913d1234d4da3cd77b627a1f629 +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User:1 +#: f476d58c613c4534abc37bc55a8f9d56 +msgid "An ABC that details the common operations on a Discord user." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Connectable:4 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:3 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:3 +#: ../../../discord/abc.py:docstring of discord.abc.PrivateChannel:3 +#: ../../../discord/abc.py:docstring of discord.abc.User:3 +#: 19e8ddb2cda941c3a30ca8850cb2ede7 +#: fb6cfafebb154551983f5af556cf1207 +#: 8befbe76d57647a3852a44b494c4ab44 +#: aba0180fb52b4fa5a21ed6608a3565a3 +#: 7ab357637db845ee9b87d385a8042b16 +msgid "The following implement this ABC:" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:10 +#: ../../../discord/abc.py:docstring of discord.abc.User:5 +#: 1d9d8cc193684ade90b957be4d0ba02b +#: 868d75a8b3c540dfaeff9ef186445cae +msgid ":class:`~discord.User`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.PrivateChannel:14 +#: ../../../discord/abc.py:docstring of discord.abc.User:6 +#: f4d5f92d7c904e11abae69a42643ceb9 +#: 206eb8b27cea4ecb9819a39a3e676154 +msgid ":class:`~discord.ClientUser`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:11 +#: ../../../discord/abc.py:docstring of discord.abc.User:7 +#: 3ac169cb9ed249fa97d87f2dda08a310 +#: c347cd4097e847ffbe940543abd9a768 +msgid ":class:`~discord.Member`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:11 +#: ../../../discord/abc.py:docstring of discord.abc.PrivateChannel:8 +#: ../../../discord/abc.py:docstring of discord.abc.User:9 +#: 55dafc24f36c42108379ba9621534719 +#: 8fc2b8cbc76642b594d6aed520962c34 +#: c3f82876a05b42f6b9f142abd42d440c +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User:13 +#: 320a5745d7ef4dc3bddc68db57041ebc +msgid "The user's username." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:17 +#: ../../../discord/abc.py:docstring of discord.abc.User:15 +#: ../../../discord/abc.py:docstring of discord.abc.User:25 +#: ../../../discord/abc.py:docstring of discord.abc.User:33 +#: 9d83050e55374544aac91208fd9717c2 +#: 3b698b51590948fa87fc4141683b8fb0 +#: e9af1898d3c64b1f96af932c9b217551 +#: b9a9b156f455466c8b320984644c257e +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User:19 +#: e78c45aef3ca431fbf8f309c887fc29f +msgid "The user's discriminator." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User:23 +#: 73dd772201aa4748b316068b05957002 +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User:29 +#: 62a458c9df53441eb015ac21dbe34fa6 +msgid "The user's global name." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User:37 +#: f6f47d554883461dad161445c30916cf +msgid "The avatar asset the user has." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User:39 +#: 9c5bd5888cf448da93b8a0153a44b233 +msgid ":class:`~discord.Asset`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User:43 +#: 881d7e60a8f54fbc984f3e9e4b366b02 +msgid "If the user is a bot account." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.can_send:4 +#: ../../../discord/abc.py:docstring of discord.abc.User:45 +#: 6803ab70e67446aba9dc35de91a33f48 +#: 07229964898b4b1e9cefda4c38d26e2b +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User.display_name:1 +#: bef028b1be27469588e3b8c6d6ff28a9 +msgid "Returns the user's display name." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.User.mention:1 +#: f4d6145bdb3f46f0b5b8abe16d25f8cd +msgid "Returns a string that allows you to mention the given user." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.PrivateChannel:1 +#: 9695a64a7cd84cca8c68f3f8a6e63b4b +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:8 +#: ../../../discord/abc.py:docstring of discord.abc.PrivateChannel:5 +#: f4e761a32f2b4fa293005967bb5b8876 +#: eb3f6696e98746a4b3bb06a7c593f16f +msgid ":class:`~discord.DMChannel`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:9 +#: ../../../discord/abc.py:docstring of discord.abc.PrivateChannel:6 +#: 08b37c00170d4c158d05b2eac6301dc8 +#: 96b1ff47f3f74315b1a978afd462a4ab +msgid ":class:`~discord.GroupChannel`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.PrivateChannel:12 +#: 522ecffdca534152a4deb8b05e5f346d +msgid "The user presenting yourself." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:1 +#: 492a04d7e12c4af4b00be2a3ea5fd3fe +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:5 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:5 +#: 5a75adff819f43ae87cfb42e1805b4a4 +#: c8804dd897f849f48691c36fc620a3ec +msgid ":class:`~discord.TextChannel`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Connectable:6 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:6 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:6 +#: 2ef9d2cfbbc042adaafadf244b6a5b53 +#: c091a21e09614c85820c51243cc2bbd6 +#: a8e12520fc6a4be1bdbb3a81c26f9ee8 +msgid ":class:`~discord.VoiceChannel`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:7 +#: 5da78147f5344fbaad7a4001cc44040d +msgid ":class:`~discord.CategoryChannel`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Connectable:7 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:8 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:7 +#: 5b3700ea3b1849e6a06cf2af4caf90c3 +#: a982e135d8264dd3b151c14dd9a7cba1 +#: 488b0b469a564d86816765265e3b68ee +msgid ":class:`~discord.StageChannel`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:9 +#: 16d6633c0f3542a1a41e7948325fa027 +msgid ":class:`~discord.ForumChannel`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:15 +#: 4448a57c2a004e7d90cb0fdcad86f569 +msgid "The channel name." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:21 +#: 55cf37366ce440999ab4cd6f6581a820 +msgid "The guild the channel belongs to." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:23 +#: e12d19edd0734c218616a4df98ce6504 +msgid ":class:`~discord.Guild`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel:27 +#: ad6bcb47ccfc49a2b921875096d086fc +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.changed_roles:1 +#: 92a7be071e894a5082eb58bd4de4c891 +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.mention:1 +#: 4d559a5b43c34293b208f473e162cd40 +msgid "The string that allows you to mention the channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.jump_url:1 +#: 40aba981504d4f568bee500d593152a9 +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.created_at:1 +#: 3b4fdc22e96e4ac39a90773db776db85 +msgid "Returns the channel's creation time in UTC." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.overwrites_for:1 +#: a709d1fb206e462c96fcfb98f7b1fabb +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../api/abcs.rst:0 +#: 3b20d94d071448afb0cbcba6c02e4d62 +#: a397ed5dee4e403b968a341016bfaff6 +#: 5e160138a0124ebfb2463589a38c520a +#: d939dcebd14648b9b876851182b079a2 +#: 66c20e4761ee48f487e2336799758e70 +#: 697615a7dc374833a2a4dc54e612d578 +#: ce1db15f4b774f6eb4047d5e0dc10eb7 +#: d0147bebe9a04d399c13c8a22b7256aa +#: f599952a5df34d498f5b7113811451b4 +#: 60a67e189f30413bb931557ae0d677e5 +msgid "Parameters" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.overwrites_for:4 +#: 7b5be37d473945f980d080501395944e +msgid "The role or user denoting whose overwrite to get." +msgstr "" + +#: ../../api/abcs.rst:0 +#: c1807c81320a4c4a9eea27db6d535110 +#: 2c633fc68b5748e1adfc9ec3aff4f8ed +#: 1d2679ae9f514304bd3579ef87f81507 +#: 8e507fe851d946d5a39bf30a61c1b560 +#: 8101933b7aca44b491e77ce2b88e718e +#: 65b08451ad3a43d093e03f3f5e7a55c6 +#: ef49855ea26e49d18e9c5f14cd4d5a2b +#: 0becae8c7a3343bfa74ee70d0bcf63fa +#: 66f37f1f6ffc4532b5e7767864a5222b +#: 9a9cab84cf46487ab80637c624490b36 +msgid "Returns" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.overwrites_for:8 +#: cbf2b10aa86a450aae949d4afbb72b83 +msgid "The permission overwrites for this object." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../api/abcs.rst:0 +#: bfd321f562164c8592b70e22b870cb1b +#: 6012b511381143e9ab71be1e7d0e2ec6 +#: 0c2690be6dc44bd99487721b1c473943 +#: ae7e9663432d4aa99ce5152a8849b58b +#: 6623b7471154462a8a89a38165cebaac +#: 11a136a4062b498a8539ad8c06771df5 +#: d748e7f595124a2caf29f95f0c884c4e +#: 7bcc922e527d44179d22772f6c16984f +#: 41f62d98c7404eabaebc4820fa6da3e6 +#: f458fbadecb448e38f1f3085d9edc8a6 +#: 65da9d2f771749c6870d5bc0e175f919 +#: 1da797b8dd684105852b0c651b5b1369 +#: 64aa35176668433594fbf6d7bb7a9b57 +#: 37f01e30f738487bbe95997ed7571b62 +msgid "Return type" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.overwrites_for:9 +#: e5ea510d86c149fcb18fa591625d5d07 +msgid ":class:`~discord.PermissionOverwrite`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.overwrites:1 +#: 90ad1cb5997e40b69c61f7457281e1de +msgid "Returns all of the channel's overwrites." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.overwrites:3 +#: 2bf4c5fafdf6429b84330957fb24ab01 +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.overwrites:7 +#: f15eda417e19494ea604c6f5770c6a45 +msgid "The channel's permission overwrites." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.overwrites:8 +#: 55f132c1266245bcb389221b13679775 +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.category:1 +#: 1db80abbda8a4911a7711ae56f513ab8 +msgid "The category this channel belongs to." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.category:3 +#: 5bbfc6c0820a44b3a0dd8f1df312d334 +msgid "If there is no category then this is ``None``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_synced:1 +#: eeffa71045734b85965aeb971081f6a3 +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_synced:4 +#: 1171e47cfc5a4f0791d740508bc37158 +msgid "If there is no category then this is ``False``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:1 +#: 4fecc3795fa142dbb33ae3ca2d91327f +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:4 +#: cd4470a1d45d429a999e7b9f6ec55f49 +msgid "This function takes into consideration the following cases:" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:6 +#: 1de0c73c6d9143b9956741d16b697ecd +msgid "Guild owner" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:7 +#: c9503941e19b4afa99e57615839294ca +msgid "Guild roles" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:8 +#: 750911e7b8c44983a5c47f0ac5a700a5 +msgid "Channel overrides" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:9 +#: 528c11379a8d438ebb0b2de3e7891832 +msgid "Member overrides" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:11 +#: fc56ba9a38b84c8a875576b8cd474972 +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:14 +#: 38d1440864c84ffe9afa2a0b241b6135 +msgid "The default role permissions" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:15 +#: b5684951350d41eb8b164a4b8ebd41d9 +msgid "The permissions of the role used as a parameter" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:16 +#: b406f8eb396844c091af41fa29263d3d +msgid "The default role permission overwrites" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:17 +#: 6dfa8f8d44de4c9286669355380503ec +msgid "The permission overwrites of the role used as a parameter" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:19 +#: 8f5ce4ed137b4992bbba7cf650c6a546 +msgid "The object passed in can now be a role object." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:23 +#: 538dd64346cf4fcabbbb3e054d8ae27e +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:28 +#: 2743b663c2604ac99153b71658dd7955 +msgid "The resolved permissions for the member or role." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.permissions_for:29 +#: d160215e8fd0483b803e4feb607722fe +msgid ":class:`~discord.Permissions`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.clone:1 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:1 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.delete:1 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.invites:1 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:1 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:1 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.fetch_message:1 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.pins:1 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:1 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.trigger_typing:1 +#: 5516007d80a04f27b710e8e89440c211 +#: 76535a41a98d42889332c5da6b2421a5 +#: c2c158e15aff478c90ebe68ed8119565 +#: 9321611b3f474e18a58779e48164f1d1 +#: 53afb5db720048589629b816ddb03782 +#: 68a664b278c7485c8e45e152218a4c8e +#: fc11191cacf3443f913a5bd69d919a77 +#: db09d175309e4f788bdd7945b1d9f0c6 +#: 0c2bd17b81764ad9b602a4bcf46e7adb +#: 00f7634217064d6295a6924fadd26f6d +msgid "|coro|" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.delete:3 +#: 8d7099b6e32a4784bfd22162bb7f12a4 +msgid "Deletes the channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.delete:5 +#: 9283174a29fe4cd3a999cbe16e91c338 +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.delete:8 +#: c0a16afcdf024c34870bd9610e6ec5a7 +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../api/abcs.rst:0 +#: 72d120a0412a4abc8b158e77726150f2 +#: f18991acfb0a458899f3d2977c2c26ef +#: cb61738138474c3093f076891a253869 +#: 31de3a885a3e42c387e130575ac07bf7 +#: c41fe790e3f04807b5d5eea4918ecbda +#: 0e8239ac7ddc4e048eb60772728e419d +#: c4357f7a3367410786087828206f5204 +#: bc1f6f8dfabf4e2bbd3ad10f31bd169c +#: 5448d7297cf24ec3b2d30012a69f357a +#: c5942183ac1b422d874ef5456324b188 +#: 989d13fe26cf462bafcec9e32b983161 +msgid "Raises" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.delete:12 +#: a49551604bb2441d8e393e9f3af5e9da +msgid "You do not have proper permissions to delete the channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.delete:13 +#: 63d9b0eca3194eed86f22730f97e7150 +msgid "The channel was not found or was already deleted." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.delete:14 +#: 9cd0a14d775240ffb2a793071bf27195 +msgid "Deleting the channel failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.delete:16 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:51 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.trigger_typing:8 +#: 1556d0b7324e43e59611bd803079f548 +#: 9208896e58034a57b97105d1329b9793 +#: 2aadba38a10941c69fa83833c49a1a92 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:3 +#: b8f02982c07e44c5bbb8db8be80671cd +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:6 +#: 7dcca40512ec450194ea16cf8c9a7a4b +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:9 +#: 871aaa962e9b4e968d2de6add1cee24c +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:15 +#: c620b3a1289d4243818bf61b2723c7b6 +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:18 +#: 36fce7cdc7e14f338aade9cbe9b4867a +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:22 +#: 6fc26ef2306144f6959be12618f1cd4b +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:25 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:39 +#: b3123c1220764f4a8b84f628beded5d3 +#: 1c3537f7b30748c58ac9d43193c9f927 +msgid "Examples" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:26 +#: 7c968c31b8d04886bfe002b8e3bdae48 +msgid "Setting allow and deny: ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:31 +#: fb8414d061584b7588c4e86d1e578aca +msgid "Deleting overwrites ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:35 +#: 3defedc1bafe4560bc9af54a32898c5d +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:43 +#: 485de860e7344ec187d3a688a62de855 +msgid "The member or role to overwrite permissions for." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:46 +#: 8c40fdfce8134dc59ff5c6679a00d902 +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:50 +#: e7f7d10378184b0aaa47718a1e093c10 +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:53 +#: 939f5bb4041f4e0b9fcdf458e14897dc +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:56 +#: f63a735d3a4d4034b9438307d367dc88 +msgid "You do not have permissions to edit channel specific permissions." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:57 +#: 6c0304de1eeb4b0e81657a73cb4e95a8 +msgid "Editing channel specific permissions failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:58 +#: 494eb950335d4e05a041da8532184f22 +msgid "The role or member being edited is not part of the guild." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.set_permissions:59 +#: 5778c3b54842442fac40cd6ba0c908d4 +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.clone:3 +#: b4e299b0812040b6839744affa65da33 +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.clone:6 +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:7 +#: 2f18c9d119994ab8a883fcf5443ea905 +#: c779e7a36d1843dcbe3974bd0e3a4bdf +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.clone:12 +#: 360c43d24fa74755bda0102e63a76cff +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.clone:16 +#: b2f146eeab2f4f11807d42190f8a89cc +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.clone:19 +#: d367046630b7470d9c8d06bb32180838 +msgid "The channel that was created." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.clone:20 +#: de39b87932bf438db36166200b73139d +msgid ":class:`.abc.GuildChannel`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.clone:22 +#: cb28f80aab9c490187e2c98c048c7820 +msgid "You do not have the proper permissions to create this channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.clone:23 +#: 250258f74b3c4ed08624a53468130d36 +msgid "Creating the channel failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:3 +#: 4773012fadba4dbcb8942054ed8c5ad9 +msgid "A rich interface to help move a channel relative to other channels." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:5 +#: 9c635d863bd24468856063b882cad9c4 +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:12 +#: e2c4c9ea9a9648518842d72f4c9c8dff +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:17 +#: b882cc51a7ad474681af109780a81703 +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:21 +#: f53f0ae69f4e4c8493fb10007349ad2c +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:25 +#: bb849b4f9a6840e1b6342329b8447c97 +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:28 +#: f166889e839547cfaef7ac191f9ebb72 +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:31 +#: 3cb8ec6f605a4b6d8760ec5acaf9e5fe +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:38 +#: 985bb6762b4846608c9fdee1eb2d3130 +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:42 +#: e4f1bd9df7254ee79c53f425e8660c97 +msgid "Whether to sync the permissions with the category (if given)." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:44 +#: acd13dc38b3a4b30bd06f2d26ef753ff +msgid "The reason for the move." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:47 +#: aa669646fb7f4579ab583200bde6fa6d +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:48 +#: 15f0f73fe34443ed9e6d76844242705f +msgid "You do not have permissions to move the channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.move:49 +#: a0847e6cc4554dd98733b963fc276acf +msgid "Moving the channel failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:3 +#: f02edcc48c864d91a36b513454558dd6 +msgid "Creates an instant invite from a text or voice channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:5 +#: 34adcc82842045da90a6cfd749c610ea +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:9 +#: 4eb6418694f1494283948d66ac960704 +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:13 +#: 07a8460c4fe9448bb3db83bcb6d018d3 +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:17 +#: 11951229c921453caee1f5675104dcba +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:21 +#: a86de9b685ad42ffa90d9ea0270d6cfd +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:26 +#: 171e94fa826649ab8ad94306ea899c77 +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:29 +#: 12fd38ebd4204bf78f629058406087af +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:29 +#: 15724914e5a945fabdaef1bc755d3124 +msgid "The type of target for the voice channel invite, if any." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:34 +#: fa0b61268b8141998a559ae6c1c0c5f9 +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:34 +#: dc382d48216649049091b622ec2e8f87 +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:40 +#: 1b1964c4a03941e3b7bce3f9c4f06ca3 +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:40 +#: 6ba3482efdb746bca8e28039741a9af2 +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:46 +#: 521736117c4242fba055232291762b15 +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:46 +#: b50d9e6892874d2aa4af1bdee1c3770a +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:49 +#: d7f1b2d7092744cb91950605410cae8e +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:55 +#: c1591d1610d248bd8ea0edea53adc715 +msgid "The invite that was created." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:56 +#: fb13c77b9ff04c5e974244df057a8dd4 +msgid ":class:`~discord.Invite`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:58 +#: 281a37e3d83f4183b84745a5b3b39845 +msgid "Invite creation failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.create_invite:59 +#: 0a2a328e0e6442da8b9d78b0bda608f3 +msgid "The channel that was passed is a category or an invalid channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.invites:3 +#: 3cdf4ff1dff745a9ae74cb84b01e3d21 +msgid "Returns a list of all active instant invites from this channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.invites:5 +#: 871cbc7f5c6549e39dc2d06a60160091 +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.invites:7 +#: 16959e08182541d5868181d88d2d5db9 +msgid "The list of invites that are currently active." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.invites:8 +#: a19e94cde12044ef92a1a1fb63ab75e2 +msgid "List[:class:`~discord.Invite`]" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.invites:10 +#: c7dcbacf8a4f4680867ff28e5816f535 +msgid "You do not have proper permissions to get the information." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.GuildChannel.invites:11 +#: 4be34f522adc4c8896cd32447b209027 +msgid "An error occurred while fetching the information." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:1 +#: dc4c7ad0c8ad4feca3d041e12eb7d777 +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:12 +#: f001d854c2194b5f851170ae75cb56c6 +msgid ":class:`~discord.ext.commands.Context`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:13 +#: d4a798d4e25a4aff902d032b4d6d0f37 +msgid ":class:`~discord.Thread`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable:14 +#: b4dda8ab4def475190eb4024614c47fe +msgid ":class:`~discord.ApplicationContext`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:1 +#: 8d2e215bc6854b1e8881b8e7b0be7886 +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:3 +#: db7fe24b56174ba88b9125364a39bcef +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:6 +#: 3be41d26fe6c4db691d0f996edd896cd +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:11 +#: e0043231e9594810ad87d803a3aff895 +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:16 +#: ff0bf9e08202470aa16b177a95f3b0b4 +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:21 +#: 092c37264fd94af1837bac3590cc8eac +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:28 +#: 4165af23ce0140a68f19a493053730ba +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: 330775df4db2489d90277342ad6022c7 +msgid "Yields" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:32 +#: e35f0d17cb834683a8458b8c6e4114fc +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:34 +#: 8349b412e06c40b48b2c0f6e024d4f2d +msgid "You do not have permissions to get channel message history." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:35 +#: af34c7e456e0477fbca5300f91c8e3e2 +msgid "The request to get message history failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:36 +#: 7ca3e15ee8da46e69208f4ceab5d85f5 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:40 +#: cc41fde924a646b2a66d6e1950f15cde +msgid "Usage ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:47 +#: 8fe09bfbadaa4e0d9f16f3d6de860f92 +msgid "Flattening into a list: ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:52 +#: 62bb3065f7c048abb84b05680ea83ed7 +msgid "All parameters are optional." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:1 +#: 9d11f981eddd4528981b271e6724cdbe +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:3 +#: 1ce571c393ad4909a237f0df41acf5ac +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:9 +#: 6d2c4668d8fc4cfda30eccbf8458acbf +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:12 +#: 05520cdec2f14434a84fe4504e8ae4e3 +msgid "Example Usage: ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:3 +#: 2d718f3d7f8a4088acdd3329b88a90e8 +msgid "Sends a message to the destination with the content given." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:5 +#: 873ac6c9a5b544c691bcf227c6664151 +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:9 +#: 4a6a164da91543aabab378380a1a18dd +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:14 +#: 71df7005611241afb3db54461fcbe060 +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:20 +#: b9ee3ce694294708b4db54d1df7bd691 +msgid "The content of the message to send." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:23 +#: a00789ca06e84d5fa7a73478180f1ef2 +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:26 +#: 906186ab0b7e4bd79159b563a30e5968 +msgid "The rich embed for the content." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:29 +#: fe4e6add04cc42c1bb5d44e2fa610082 +msgid "The file to upload." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:32 +#: a3c6608e1d1942a4b1be5b61abda01bd +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:35 +#: 11b9fd65f5ca4474a330776ef3c6de1a +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:39 +#: 0face4ee444e42a3b407aac7ea0318a4 +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:39 +#: ba5de4a08a864d7984364e85ac5c6fa9 +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:44 +#: 7239324fe23047feaa25e23a03b6521b +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:49 +#: 2c8173bcb34847058431ea4859c49300 +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:49 +#: a0a579827fe147f6a86010948fcf7967 +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:59 +#: 9309ccd20be043ffa5aee6e61d6082ff +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:59 +#: b4916e6a8e914fe9b0f1786b0a5b52df +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:68 +#: 26f39c2265e84ac1853fb843b86d9989 +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:68 +#: 401e6af57ea8422c89021bc656d1b595 +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:73 +#: 10915d3a739946e3a99a0a739b1588de +msgid "A Discord UI View to add to the message." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:76 +#: 8c86dff03f9a4a3fb7f2dcc83c7c6ad4 +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:76 +#: 3910a221735f4f569868b11b1d1a8c98 +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:81 +#: 8235aade03164b52932298971f0f5907 +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:81 +#: 963c1db27b8240dd92f403d36e2a18ba +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:86 +#: f555e2676dea4bbc8de31ebb2fc36278 +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:89 +#: a8ffcca916894215a919fa2c72d7c55d +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:89 +#: 4648ba0d48fc42beb889718460aeeb32 +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:94 +#: fd5dcbe211744affb08358b1a28785bb +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:94 +#: dc470e02b06b4622a2c6fd26976e2906 +msgid "The poll to send." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:99 +#: 59ad41ca439e4131bf64421a1ae40eef +msgid "The message that was sent." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.fetch_message:10 +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:100 +#: 999c449e088140378a9aca3429066337 +#: b2c842a4fe6f435fafe3c2b2a1e47515 +msgid ":class:`~discord.Message`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:102 +#: 8b714ce1774145368992ec4a36dbc6b5 +msgid "Sending the message failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:103 +#: 00e3027c97ff4cba80129df3ba41816f +msgid "You do not have the proper permissions to send the message." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.send:104 +#: 5083bf05922c4f949f5e1a47bef0c2f4 +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.trigger_typing:3 +#: d5c9d9a021c946059bda8a05bbe44016 +msgid "Triggers a *typing* indicator to the destination." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.trigger_typing:5 +#: e2b3446f4c904abd9daf0ea1995bbac1 +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.fetch_message:3 +#: 70f06690476641b4908fe5c58523a0ec +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.fetch_message:6 +#: 47f6cd2a5bd6410a98561b8d764e594e +msgid "The message ID to look for." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.fetch_message:9 +#: 335e57a361304f68b36db3f717e341b7 +msgid "The message asked for." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.fetch_message:12 +#: d2feef3e4cfb47b9afc4c248ad2d1891 +msgid "The specified message was not found." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.fetch_message:13 +#: 4da989d152b844d4aff41f6835dda941 +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.fetch_message:14 +#: bd18b40e6eb143dc97a468a9f8ca190a +msgid "Retrieving the message failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.pins:3 +#: 4bbececd17ce4733aa89e7a128cc27cb +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.pins:7 +#: 19f6cad4e0a748608bac294104790fb3 +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.pins:11 +#: 08f13fe21c66434ba1000150fb780040 +msgid "The messages that are currently pinned." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.pins:12 +#: e2d50204039c4ebbb8cb5794d26a930b +msgid "List[:class:`~discord.Message`]" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.pins:14 +#: 4cfb764c52fa4d2da0b34a29ae460acb +msgid "Retrieving the pinned messages failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.can_send:1 +#: 97efca508c8545a0a10cee9651abdf07 +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.can_send:3 +#: 676c249107d744bea35ba99071b98e52 +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.can_send:6 +#: 73bfb2a074b84597bbe6ae500e1f8501 +msgid "An invalid type has been passed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Connectable:1 +#: 207660df821e48deaf1a2c5b1759f812 +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Connectable:11 +#: 53703426ebb74318920660391f075491 +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "" diff --git a/docs/build/locales/api/application_commands.pot b/docs/build/locales/api/application_commands.pot new file mode 100644 index 0000000000..7f4c9e6f9b --- /dev/null +++ b/docs/build/locales/api/application_commands.pot @@ -0,0 +1,1903 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/application_commands.rst:4 +#: b5bef56dc22e4024907f0ad2189496f0 +msgid "Application Commands" +msgstr "" + +#: ../../api/application_commands.rst:8 +#: 963047d00b9c4705b2c508ea059cbc84 +msgid "Command Permission Decorators" +msgstr "" + +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.default_permissions:1 +#: da8262203adc4a9c9195749e22fca186 +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "" + +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.default_permissions:4 +#: 797b65f8f8274cc38a258f0e361b6f7e +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "" + +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.default_permissions:8 +#: 732445569fbe4b5abb9130e40d7fd143 +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "" + +#: ../../api/application_commands.rst:0 +#: aea96c3c11354ac09ca840e760f27c54 +#: 9dfd81ba143848a1a20bebc948d1df16 +#: c14ee1b991e847c999bf9442dbe40e1d +#: eb72f0aca1244dea81410658346315d8 +#: 7226b11745ba4ebd82c9da2a758ffeb5 +#: 54d966885d634d83990edfce5e98bd30 +#: cad84173c056435d98f90e7005c27b55 +#: 0b368aa254aa4b86a89105ba0e327415 +#: 2f82411ffec84c53bcd002c61cacf0de +#: 64675ca2cf37474fb4db23c7d15af9ab +#: 62e059169acd42789ad242cd2083fa36 +#: 36bdb8c4ce3245f58c14273b19fd5d62 +#: 52bf2928121f4472b33d87c293c520da +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: 235625d33ce645a7b043c3677e586ff9 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +#: a0e267ca8cbb4cdc92ee405b3a8b5906 +msgid "Parameters" +msgstr "" + +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.default_permissions:13 +#: fe3a3eb41ae7453c8c76fe996fa9f277 +msgid "An argument list of permissions to check for." +msgstr "" + +#: ../../api/application_commands.rst:0 +#: 8b31e5c89bc94600b0402b4043851360 +#: 34f6fc248eea4c0486bab68b1ebdd1c5 +#: 53ceb21104a641c484d4b8e7645d7b6d +#: c99f60322d564ed586c09436e487f125 +#: 8f97231c3b074c83a4e0b711360aa13a +#: 10183c9a2d6e45fc9ffd212a67c67ee5 +#: 254924570d314fcfad7eec28414aa754 +#: 9381c2802da0445eb460cb72496ecd58 +#: a2184453371145008ab8edb2bebc1828 +#: c55cfd8217574ea6877c770ca4d590e1 +#: b0facd7208864b9190e27e037ea8aa7b +#: 7bfccaa86ce54a64bf7d92ec6a576066 +#: c8daf70be35f4fcfaafc3aca82447190 +#: 466e0a2592dd47b6a53225e7c79ec12b +#: 661e5de699854673aba3514ac463b12e +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +#: 96f7f9fedd3e4084838b9340c26d3781 +msgid "Return type" +msgstr "" + +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.default_permissions:15 +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.guild_only:4 +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.is_nsfw:7 +#: 2621196e617c4416b2ee3425087fb013 +#: d2975d1552964ea69abf9e2d9f2c34a1 +#: bb593fc55f5845e282c0678c4ca7c3a4 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr "" + +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.default_permissions:18 +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.guild_only:7 +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.is_nsfw:10 +#: 170709aea05e4d6596430ecbcdc6b2ff +#: 56ccd2f7a26a431a88df94847e449b3c +#: 27314595e4ad42478ecac584522b5b5c +msgid "Example" +msgstr "" + +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.guild_only:1 +#: df97a064550e4e33b11916afeef4ae71 +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "" + +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.is_nsfw:1 +#: b5580ad100f0493cb5162e2b598e7d5e +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "" + +#: ../../../discord/commands/permissions.py:docstring of discord.commands.permissions.is_nsfw:5 +#: 3b38db1261c540ed9b38b50b257ebf93 +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "" + +#: ../../api/application_commands.rst:21 +#: a725df21cdd34f539047e9536c537892 +msgid "Commands" +msgstr "" + +#: ../../api/application_commands.rst:24 +#: ../../api/application_commands.rst:68 +#: 456c801c48554014be173f2a5a16cbe8 +#: 7f6a87ba8b2c4cb783a577d4adf8ff82 +msgid "Shortcut Decorators" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.application_command:1 +#: 3cb707e319364046ba6f2ef6af0fc306 +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.application_command:13 +#: 82b42afe09934b35b5443bc04a2b2a31 +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.application_command:17 +#: fe1f10e52d624dc9970ec9f9478becb5 +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "" + +#: ../../api/application_commands.rst:0 +#: af727a1e0df74d818b684591442a53cb +#: 1cb924fd415e4ddc9496206f971ced35 +#: be9cd2081e584a819bf1549f7325376d +#: dacfb5c6315c4fd8abe70b44fde4055d +#: e860e3aa9c454db6bed32e3b32b70bf2 +#: 48a171e781d247f4be4cd083cd7b649a +#: 35882ccb7511412fa8a02fe91cb6a83c +#: 1f9a0fed83444d2d8cc1cb8f25d4f832 +#: d2b91ddf551d443299606af43f270971 +#: 3de69d0bb23d41e1bdf1fc7ec71268b0 +#: 51571b876dcd4446b30ec38ef632db2c +#: 51571b876dcd4446b30ec38ef632db2c +#: 51571b876dcd4446b30ec38ef632db2c +#: 51571b876dcd4446b30ec38ef632db2c +#: 51571b876dcd4446b30ec38ef632db2c +#: 51571b876dcd4446b30ec38ef632db2c +#: 51571b876dcd4446b30ec38ef632db2c +#: 51571b876dcd4446b30ec38ef632db2c +#: 51571b876dcd4446b30ec38ef632db2c +msgid "Returns" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.application_command:20 +#: 5de61b114ef1402fa1afc797a823a6b0 +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.application_command:21 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.command:9 +#: 159c15c1b9114f6583215bac45623357 +#: 24179cdfea13469288bbb0caf076a82e +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "" + +#: ../../api/application_commands.rst:0 +#: 85a0b34d9d504b9486cfd759b70a5269 +#: 7c1227bd25ec4399acd53fe97346b37c +#: 31661879ced84eb38fdd4d6a898269f7 +#: 454861253a404ca6bc8c6eaaa62bc4c8 +#: da2632a415b247ba849b48310b8c9939 +#: da2632a415b247ba849b48310b8c9939 +#: da2632a415b247ba849b48310b8c9939 +#: da2632a415b247ba849b48310b8c9939 +#: da2632a415b247ba849b48310b8c9939 +#: da2632a415b247ba849b48310b8c9939 +#: da2632a415b247ba849b48310b8c9939 +msgid "Raises" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.application_command:23 +#: a2b10a34bc48445cb7547b3753e2d22d +msgid "If the function is not a coroutine or is already a command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.command:1 +#: ad5e2ce4a65d4cc0a741ef3faa6ffe30 +msgid "An alias for :meth:`application_command`." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.command:4 +#: 16ef3af73cd247bb82eab2f0d0a86833 +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.command:8 +#: f5c240410616469db3e29b24ac97bb37 +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.slash_command:1 +#: 8cd0e804deae471a957d22fb730f0d62 +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.slash_command:5 +#: cf83ee0ad1984b10b9a2a1665f3baf2a +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.slash_command:6 +#: 3648e7b30ffa4a508caa6eb5fd8dd3c3 +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.user_command:1 +#: 94a75693b49d4729a08c55224a6635e3 +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.user_command:5 +#: a34c5627137a4a6abbee91d8ef916da5 +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.user_command:6 +#: 1a5230d2f97b4c4088a308912ad57d76 +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.message_command:1 +#: 64dea31eec8149c9bc5aa4611ae732d0 +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.message_command:5 +#: b06aa2c156234565b94cc7a9adc52354 +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.message_command:6 +#: 8fe7341163d9401f8749dbb5d7ed7952 +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "" + +#: ../../api/application_commands.rst:42 +#: ../../api/application_commands.rst:73 +#: 90d12871fc60443cab43a4d2a559062f +#: f29d6e2aba484c70ac570333290b6b69 +msgid "Objects" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.is_on_cooldown:1 +#: e5824d49a8ec4fd58c46756aa4ec9a8c +msgid "Checks whether the command is currently on cooldown." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.get_cooldown_retry_after:5 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.is_on_cooldown:5 +#: 43592460bb624523b6b7dddc218d6418 +#: 22f96d6322cd4a01843b0facf9a060c8 +msgid "This uses the current time instead of the interaction time." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.is_on_cooldown:8 +#: 48c966a97d1e4323aaf2c55e947af55b +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.is_on_cooldown:11 +#: 109268d7b8734d31b6f6a78fc32cc37e +msgid "A boolean indicating if the command is on cooldown." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.is_on_cooldown:12 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:31 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:38 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:58 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:65 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:38 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:45 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:31 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:38 +#: 5f86ec376bce414983af08e853bde10c +#: e46ea6aa9eee426bb7dfc66cd3cba65a +#: 469210f5cf914546997454d384d9029d +#: 6c64647e98224b3580a97a6971e0460f +#: 1d938773f96a4ec29acb39fe95a085e1 +#: 1cd0f7372eb94a76a4c4eb766a807d99 +#: 1cd0f7372eb94a76a4c4eb766a807d99 +#: 1cd0f7372eb94a76a4c4eb766a807d99 +#: 1cd0f7372eb94a76a4c4eb766a807d99 +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.reset_cooldown:1 +#: 4865f290a1c34beba2817f93eab500c5 +msgid "Resets the cooldown on this command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.reset_cooldown:4 +#: 53643f7f9ef1492a8092f43b8e5fc523 +msgid "The invocation context to reset the cooldown under." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.delete:14 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.reset_cooldown:7 +#: ea0c376e7639475c96884d6741d8e471 +#: c8c22acd0edf4230bcd59ce97fe0e0bf +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.get_cooldown_retry_after:1 +#: 5786055907dd47e8aa0184ae5d9858cb +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.get_cooldown_retry_after:8 +#: d765407e83ec4b058b4b301fce4072e3 +msgid "The invocation context to retrieve the cooldown from." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.get_cooldown_retry_after:11 +#: 91fcc0e4733b45df860a71abe4390a06 +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.get_cooldown_retry_after:13 +#: e5f76f402c5749b58d8def0d7b027cd7 +msgid ":class:`float`" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.error:1 +#: 85341dba3db7499bbc2e89d1674b185a +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.error:3 +#: 989d30b8f9a848129807a4f4a5055d14 +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.error:8 +#: 5fc1de69a66a4f1782fbbda61bfbd616 +msgid "The coroutine to register as the local error handler." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.after_invoke:13 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.before_invoke:13 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.error:11 +#: ee192f4da1984910bb904352619efac9 +#: 69cdb18feeb7405c8d90991e2504ff43 +#: 195c64eb9cf94087be8baf2674ba96a2 +msgid "The coroutine passed is not actually a coroutine." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.has_error_handler:1 +#: 9ccf990d16f34941828a6515cc6f831d +msgid "Checks whether the command has an error handler registered." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.has_error_handler:4 +#: aa27a8c0af014a0d8c7b4f3d6eb24ed9 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.before_invoke:1 +#: 74e0ecf9b20d47e4ae7716f3cf075065 +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.before_invoke:6 +#: 9433b4a378614120ac4f31f90266b22e +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.before_invoke:10 +#: 6b73c4f26de94db6b23222b72e7033a8 +msgid "The coroutine to register as the pre-invoke hook." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.after_invoke:1 +#: 9ebaa0682ce8427187430baa7a30a62a +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.after_invoke:6 +#: 8a42dbff4d8c4c50bff5f0d280665b55 +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.ApplicationCommand.after_invoke:10 +#: ff065a961e3349d899a4f61dc14101c1 +msgid "The coroutine to register as the post-invoke hook." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.ApplicationCommand.full_parent_name:1 +#: 38de70f34b1f42c7a6b8db99f5580b96 +msgid "Retrieves the fully qualified parent command name." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.ApplicationCommand.full_parent_name:3 +#: ca09f438cfef40768c157b677b5ac3ac +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.ApplicationCommand.qualified_name:1 +#: 3c6db7d1726b459190301e3810022172 +msgid "Retrieves the fully qualified command name." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.ApplicationCommand.qualified_name:3 +#: ffcb16ee006d4bcda5eb72e7313ac7d9 +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.ApplicationCommand.qualified_id:1 +#: ee3fbd20f3e34193b2f31f0c6570c05e +msgid "Retrieves the fully qualified command ID." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.ApplicationCommand.qualified_id:3 +#: c967bb36bdac4affbd4cb3fa91587415 +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:1 +#: 41fd24c1ab6b4016b6615a8b699a0bb9 +msgid "A class that implements the protocol for a slash command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:3 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:3 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:3 +#: 6bf0393672874d60ace4dad3aeff4e49 +#: bb14163d838f4df5be0e9d0ed62b84d9 +#: bb14163d838f4df5be0e9d0ed62b84d9 +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:8 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:10 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:8 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:8 +#: 67aaf53865d34b4eab081611d1af6dda +#: ed6cdb67d88c45f4a8824353790cf8fa +#: 3d0e2ed16525455d96c8cb1edadb5bc9 +#: 3d0e2ed16525455d96c8cb1edadb5bc9 +msgid "The name of the command." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext:0 +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:0 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:0 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:0 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:0 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:0 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:0 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.OptionChoice:0 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.option:0 +#: a1abbc14d2b2467da83e741de3dfdf76 +#: 69ca3d2c2367457d80020171f7956f20 +#: d346586079e040aeaa3ce95efc7de925 +#: 82d9281a794342ca80ecedb36ce845e8 +#: 7e705d84c94d4d27988a51bd99c66d40 +#: b880b344500049db96d5e21f275c6531 +#: 8d8e59d3422e4073b73af34dec59df56 +#: f2e9e70af4b14850a489ad1bc26923a7 +#: f4d4ca31df8b4d2196f56fbf4bb71e61 +#: 1d48447ce4dd4b40b0a9168a6c0a741d +#: a2e513d5b07b4dfaaa4d578776fe3d5b +#: da86647139e241c9b5091ecda8d8a7a3 +#: 105bde31bfd1417f987e4b7508657466 +#: b458a250a6b34994b97107d1e2913f34 +#: fe884d1963e24986a26db506c9fe20dd +#: cc22d99cfe4343559ceb67784268ad07 +#: 65589f4eefce486783298b62563c29e6 +#: cfb0e3fdd30c4752aa18bb3bb3051aa8 +#: 90b11fa54ccf460eb6ef527c265a5be3 +#: 2942f73e141945c5b9e84e3edfe83610 +#: fa5207c6c9a346c4a604a81b19fa4efc +#: b033a7a3b7224e2ca5d25b6b39f19909 +#: 94eb1b4764b941a09dbf0a90e5abab6d +#: 78fbd9eecfff4a74921c5676a3badb3f +#: 596eaab5c9b44f7b966904a10dd285a1 +#: 55edae3110864faaa4f01ec37013384d +#: 126aeaeefbb74756bd0d4c3712f68106 +#: 4f19817a7d6541e3ac62dfb873551675 +#: 32ab576baabd4da4aa50f054bac960fa +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +#: f422915c4028467f9272f041e90ac356 +msgid "type" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:10 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:12 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:49 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:10 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:10 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:16 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.OptionChoice:9 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.option:10 +#: 49221d04f03b4b12a9d0c0a9c637ef9a +#: e1a8d5b422ad43aa838454c7a548d093 +#: e73d6cccfb5e4378b06a018f2cb3a728 +#: b2ced8f32ef84169b7d0feed3cfdffb8 +#: b2ced8f32ef84169b7d0feed3cfdffb8 +#: b2ced8f32ef84169b7d0feed3cfdffb8 +#: b2ced8f32ef84169b7d0feed3cfdffb8 +#: b2ced8f32ef84169b7d0feed3cfdffb8 +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:14 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:16 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:14 +#: d7c8826678824334acd35d914ce6d3da +#: eb1bd96acf84423f9aeaf5c3aef8d405 +#: eb1bd96acf84423f9aeaf5c3aef8d405 +msgid "The coroutine that is executed when the command is called." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:16 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:18 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:16 +#: 94656ea4509f484995757bcea3759b36 +#: 7a48bea72ed14e6ca0b55c39805de1e2 +#: 7a48bea72ed14e6ca0b55c39805de1e2 +msgid ":ref:`coroutine `" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:22 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:14 +#: ca717fd502eb4d4eb6bcad8d95da302c +#: a1a8e38c697444e686ead501a98d1164 +msgid "The description for the command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:24 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:16 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:23 +#: 219ed0b9b95f4158a6f0a49a5ce2decb +#: 4c502354c8d74bf7b7c8f98c11b6a5bd +#: 457e3625a42542f28892b83df6b3d440 +msgid "Optional[:class:`str`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:20 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:28 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:20 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:20 +#: d206fd0ddbb94163a1152cfc1c826c06 +#: 64a250a8f0ac40d4aecc323b2ac9a050 +#: 77e0016800534470945d60987fed7899 +#: 77e0016800534470945d60987fed7899 +msgid "The ids of the guilds where this command will be registered." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:22 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:30 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:22 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:22 +#: c586c88145e24838a7a0f08feae5b3db +#: a8524dff9e6d4ac8a3a4b6229ad12e63 +#: 2b5abad428324601971b5a7d306bdc79 +#: 2b5abad428324601971b5a7d306bdc79 +msgid "Optional[List[:class:`int`]]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:34 +#: c8c15229d16d4fc89b3f7e19cf7180b6 +msgid "The parameters for this command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:36 +#: 75862e9bf0b84d2897d613fc7e3fe683 +msgid "List[:class:`Option`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:40 +#: fa69b266672c4ec99ee70ac16be2a608 +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:43 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:29 +#: b2cb8c97a7a84023a2de84bcf4d91e50 +#: 66350ee1c0624f379d399a081ac541e8 +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:47 +#: b3c411e124ea4def938df41c39d0adac +msgid "Returns a string that allows you to mention the slash command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:26 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:53 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:33 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:13 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:26 +#: aedee1abd900459caa0824d9395135f2 +#: 90c2f3e57f6b4b12a2db96f0229f59a6 +#: 243e82cb8df04a368273abf6f3e337e6 +#: fe40b49ec6f643979b0a4dc4f8f53c79 +#: fe40b49ec6f643979b0a4dc4f8f53c79 +msgid "Whether the command should only be usable inside a guild." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:55 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:35 +#: 3083ae8030e942ea85aab949de3ad70d +#: 04acf48e5dc641f2b7369a4dc4d0eb3c +msgid "Use the :attr:`contexts` parameter instead." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:35 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:62 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:42 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:15 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:35 +#: a1c4ecc9455b4ba4bf4c25be0df33521 +#: 3f98034506304fa5adcbcb706311be39 +#: c1b7134cf52d42c2950bd14e6152aed8 +#: 6d50a38d0a17491a8badbba7e2e94860 +#: 6d50a38d0a17491a8badbba7e2e94860 +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:42 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:69 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:49 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:18 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:42 +#: 6b3bc7e04f3640fbbc49a1f5f1444291 +#: 4093e966648f402ab9e9a3821479bc17 +#: d0cf02f6c33d40f480e6dcdfa59e5bed +#: 59b49969a86549fe97fef27fa01c037d +#: 59b49969a86549fe97fef27fa01c037d +msgid "The default permissions a member needs to be able to run the command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:44 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:71 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:51 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:44 +#: 128da93392f74a34b75d9da47a07e5d3 +#: c8f15213fe404ecc80f0efbad85ce25f +#: 5fd417671e594f12bbdb4eebee581649 +#: 5fd417671e594f12bbdb4eebee581649 +msgid ":class:`~discord.Permissions`" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:48 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:75 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:48 +#: bd5e5e0d5f4b411c8e40eab4878085bc +#: 5f2fbe31f5d74ba7a5419816d2ee36a0 +#: 5f2fbe31f5d74ba7a5419816d2ee36a0 +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:50 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:77 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:50 +#: aa48e1fdf4ed4288b34a01330ba573c1 +#: b34d5a804a5b4cf6afadd914bfc11a59 +#: b34d5a804a5b4cf6afadd914bfc11a59 +msgid "Optional[:class:`Cog`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:54 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:81 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:55 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:20 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:54 +#: 99e057769f604564828ec66970d09051 +#: 0b88f443adf9434cab24c10d11dd4d90 +#: 1d352bc3635141cda4848e4fb7e0973e +#: d9d5c1770b794a5aa348922c71a848cd +#: d9d5c1770b794a5aa348922c71a848cd +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:61 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:88 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:62 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:61 +#: ad45d2349ec14cf6a18c5b8b7dc2a062 +#: ec1f97a3576f474d878bf3caa4bef5f8 +#: 67af798da00f47a391dffbdf1d1b782b +#: 67af798da00f47a391dffbdf1d1b782b +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:65 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:92 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:65 +#: 1abebabad8514274a040cb70960603ce +#: 1942d1f115bd4ac0a990bf73d0a49126 +#: 1942d1f115bd4ac0a990bf73d0a49126 +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:68 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:95 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:68 +#: 4403e107ddec48139ba57ac55414cb0d +#: 58f857b842d14e26b594f8771048b67f +#: 58f857b842d14e26b594f8771048b67f +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:72 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:99 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:66 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:27 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:72 +#: 4c7491a6786349beb7d12103568687d9 +#: 6e99029583a841a9ab1d74653b3b85ac +#: 21ed930c27b2453195f0faa34f14457e +#: 808dd134efa0495ea9b213fcf9b366a3 +#: 8aeea10a4b16406bb4fabc8f5e266f29 +#: 8aeea10a4b16406bb4fabc8f5e266f29 +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:75 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:102 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:109 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:69 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:76 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:75 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:99 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:106 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.OptionChoice:22 +#: 7f013ded205c49e4a449eb1a8356e3b8 +#: 023e1e7e67f84b929dedc87e98bf488f +#: 94ef4db9991241619146371c2d241eec +#: 9fb8440c83b64b5da889a607e563f44c +#: 7897fe9f532240669b41fd64f8d327df +#: 7897fe9f532240669b41fd64f8d327df +#: 7897fe9f532240669b41fd64f8d327df +#: 7897fe9f532240669b41fd64f8d327df +#: 7897fe9f532240669b41fd64f8d327df +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:106 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:73 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:30 +#: 9f23516b8763437599e6707336f93a13 +#: 465be0fc2ca64e46ab11324883be8c39 +#: 232bbcc643034214afd2c8bf7793034c +#: b589efc99cfc492e9e2d1b0070562e2c +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:113 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:80 +#: 709b29ca67a54df18bd7293c19e29cf2 +#: 5d7c88e616bd457884fb476a7d2f4ab0 +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:81 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:117 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:84 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:81 +#: bde9fd66a882485c806403a935a2799b +#: 667c0fef77a5473cb31b94fd02113660 +#: 6eb640cae00c453a89aab91f7b489f5b +#: 6eb640cae00c453a89aab91f7b489f5b +msgid "Set[:class:`IntegrationType`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:121 +#: 69dad4ce1f7b4caab795a3f006adcd96 +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:87 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand:123 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:90 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:87 +#: 5f7622e9d98e4fa78b9fdc2edd148970 +#: e4cf9dee7685447693343bc155de82b8 +#: fca44b50de0b4821acb8f06f88efc30b +#: fca44b50de0b4821acb8f06f88efc30b +msgid "Set[:class:`InteractionContextType`]" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand.copy:1 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand.copy:1 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand.copy:1 +#: e09041a18e2048f885c27f005740a3b7 +#: 31d87139a8b540bc9e1c77b8b1829f09 +#: 31d87139a8b540bc9e1c77b8b1829f09 +msgid "Creates a copy of this command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand.copy:3 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand.copy:3 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand.copy:3 +#: a8105025c5e2494aa3f98b742ce48850 +#: be0630b9503f4c4fa51e83cc51cb43de +#: be0630b9503f4c4fa51e83cc51cb43de +msgid "A new instance of this command." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommand.copy:4 +#: 0be8c140c01d413fa23ff654727f9145 +msgid ":class:`SlashCommand`" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:1 +#: 3926a5a0cdd54defa1b2dcae0f38112e +msgid "A class that implements the protocol for a slash command group." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:3 +#: 86b3efd9357249c382571006517aadb2 +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:26 +#: 1ba00e6c6a9c4381845f27b44a09f0a3 +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup:88 +#: 86feaefaaaf34288af79998e7d3eb3a9 +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:1 +#: 7a10b1d79da74255bdd7a7e59b681aa6 +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:4 +#: f0a5c570cc0640daaab5e1d358b07b15 +msgid "The name of the group to create." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:7 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.subgroup:10 +#: e19cf1315db44335b86b91dc9de63e5b +#: 03f96678c3fe4b73a5300b9b76942114 +msgid "The description of the group to create." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:10 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.subgroup:13 +#: e16839754dd74ff0b55c2565c7a3bbfb +#: 07c545d36d2845a09d3492826661765e +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.create_subgroup:34 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.subgroup:17 +#: 50bd9f43948a48cda18b0348eeacf075 +#: 0097a80d2c364ccea8530212bdc8538a +msgid "The slash command group that was created." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.subgroup:1 +#: 110713e4d85d40cd8deed214a911e308 +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.subgroup:7 +#: ad149ced4c7d487494e7d269414157b3 +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.walk_commands:1 +#: 9c71c512414541089ea38638c3dde77f +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.walk_commands:0 +#: 7d6810cb23814948bfd06437dddc2d2a +msgid "Yields" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.walk_commands:3 +#: 626e588005a54eccbe4bbd0263385625 +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.copy:1 +#: 2030810b53b74013855efa8e43381af4 +msgid "Creates a copy of this command group." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.copy:3 +#: a0a6be77abba47a6afbd4561554df107 +msgid "A new instance of this command group." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.SlashCommandGroup.copy:4 +#: dc5f23a83726415ca441522fcf41075c +msgid ":class:`SlashCommandGroup`" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:1 +#: 86543ac679bf4bb992a6ca78b1197fda +msgid "A class that implements the protocol for user context menu commands." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:28 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:28 +#: f5cc870407294386a12e5e92859cf1ba +#: f5cc870407294386a12e5e92859cf1ba +msgid "Use the ``contexts`` parameter instead." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:79 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:79 +#: e5ac68f43e54493b955c34ffa4045d84 +#: e5ac68f43e54493b955c34ffa4045d84 +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:85 +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand:85 +#: f07350db291c4c9eb79da175bcf9ccd0 +#: f07350db291c4c9eb79da175bcf9ccd0 +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.UserCommand.copy:4 +#: 0d24d6d88aa94aa59018232cc846f80a +msgid ":class:`UserCommand`" +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand:1 +#: 3a43c2f228a14e06a35102516117c170 +msgid "A class that implements the protocol for message context menu commands." +msgstr "" + +#: ../../../discord/commands/core.py:docstring of discord.commands.core.MessageCommand.copy:4 +#: 1e28dc4b29a24786a69df8ff2df47b97 +msgid ":class:`MessageCommand`" +msgstr "" + +#: ../../api/application_commands.rst:65 +#: 0d9d93397a80433d9df6280b37e9cf0b +msgid "Options" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.option:1 +#: 0130075e1ddf4a318c804b668301c131 +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.option:7 +#: c2a9f34a52a64a518c507218e1d9de01 +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:1 +#: 1e9056c43c884b5199898e497949e25d +msgid "Represents a selectable option for a slash command." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:5 +#: 75bfc064c11744c99eac785fa3f2ff23 +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:9 +#: 593026b5a1fc40e4a80311b243cb7877 +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:13 +#: c8d02ef8523442db84373cc1d2e0f28a +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:20 +#: 3259bdeac333496c8faa60dc608eb5bb +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:27 +#: 8e4ceb8ea36443469f1f85747c903c87 +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:31 +#: fe9b03d557c84b05b541b96464195697 +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:35 +#: 2e528dec6b9b4726961a48ce6fe92acc +msgid "Whether this option is required." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:37 +#: 000b0bda94bd42cfb1633ef646d23a12 +msgid "Optional[:class:`bool`]" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:41 +#: a02cb6965835437f949bf2191a6fb459 +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:43 +#: 7d22d3c43d274365972d6535159232dc +msgid "Optional[:class:`Any`]" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:47 +#: a47d1621967a4f648c720a1a3111eccc +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:50 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:57 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:64 +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:71 +#: 08ccceedd6f14b3f8c7d1509b11157a9 +#: 08ccceedd6f14b3f8c7d1509b11157a9 +#: 08ccceedd6f14b3f8c7d1509b11157a9 +#: 08ccceedd6f14b3f8c7d1509b11157a9 +msgid "Optional[:class:`int`]" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:54 +#: 31ea4924990843f8adfbf6e88a51d7fd +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:61 +#: db3a329f3a3f417ba0ae05f79aeade46 +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:68 +#: fe01838097b34805b0b2a859034446dd +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:75 +#: b16be74fd64a4d818577dc51a2d75445 +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:82 +#: 96075db6b84448e8ae59a0aaf54aa561 +msgid "Does not validate the input value against the autocomplete results." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:84 +#: 6b97e34cbdd640fc848c3a62b0ce3ea3 +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:88 +#: efe2d8d761e245b5b1cbca504fe5a3b6 +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:92 +#: 3895aa7de025406b82492d8871b80352 +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:96 +#: dbae42fcf31241ada80858c6674efcfc +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:103 +#: 3d90448f536f49ed990f5e5cb38b5f0a +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:109 +#: 73185a2e6c6e4d739ed5f24132cf9742 +msgid "Examples" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.Option:110 +#: cc7ba7cb42254be2b8f3f28c2631f7b6 +msgid "Basic usage: ::" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.ThreadOption:1 +#: 058fb547f7e048828c72114ef59e3b91 +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.ThreadOption:6 +#: 11b1db26d5f242b89c1358190f5c8a6b +msgid "The thread type to expect for this options input." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.OptionChoice:1 +#: 032809522c5048eb89074eb12f49ebc8 +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.OptionChoice:7 +#: bd518b6ccee34ebe9742c780738d2419 +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.OptionChoice:13 +#: a2f07edb1eef44989abe7094570a69dc +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.OptionChoice:15 +#: 3e81a8bc741042d78ff4dbbe111b99d1 +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "" + +#: ../../../discord/commands/options.py:docstring of discord.commands.options.OptionChoice:19 +#: 2ded24f7f3464286b1bdeb7668a8d8ac +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "" + +#: ../../api/application_commands.rst:89 +#: 1532468326964e3a8f4778fffa6157f9 +msgid "Context Objects" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext:1 +#: 615595b5b70b452096a0d3bf17be3fb3 +msgid "Represents a Discord application command interaction context." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext:3 +#: c7eb010280b1438baa0b3bfa57aada25 +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext:10 +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:9 +#: 735d3b8688e648a5aaf59912c322ab40 +#: 735d3b8688e648a5aaf59912c322ab40 +msgid "The bot that the command belongs to." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext:12 +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:11 +#: 825a171e7cc64dd2a99a0905e70528dc +#: 825a171e7cc64dd2a99a0905e70528dc +msgid ":class:`.Bot`" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext:16 +#: 5f80d2b271b94a57ac853c1925574447 +msgid "The interaction object that invoked the command." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:48 +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext:18 +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:17 +#: 3c66cc9483d34081a22536fa12eccf5c +#: 38ff2d92f89246838e966fd79f106c78 +#: 3c66cc9483d34081a22536fa12eccf5c +msgid ":class:`.Interaction`" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext:22 +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:21 +#: d6f68d1b5a754d4faff41bef78e15ad3 +#: d6f68d1b5a754d4faff41bef78e15ad3 +msgid "The command that this context belongs to." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext:24 +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:23 +#: 731cda54c14a44f4a88a9bc501f056d7 +#: 731cda54c14a44f4a88a9bc501f056d7 +msgid ":class:`.ApplicationCommand`" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:1 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:1 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.respond:1 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:1 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:1 +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.delete:1 +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.invoke:1 +#: 68f22a8232be41a3b2b45d850414330f +#: 68f22a8232be41a3b2b45d850414330f +#: 68f22a8232be41a3b2b45d850414330f +#: 68f22a8232be41a3b2b45d850414330f +#: 68f22a8232be41a3b2b45d850414330f +#: 68f22a8232be41a3b2b45d850414330f +#: 68f22a8232be41a3b2b45d850414330f +msgid "|coro|" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.invoke:3 +#: 140199d2d8ca46f49bcf52390154703f +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.invoke:9 +#: b49a2bc4dd68462fbb58bfb224685326 +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.invoke:16 +#: bfec2e6b68394ab198c335a849c17ba2 +msgid "The command that is going to be called." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.invoke:19 +#: 92ab2efc601041a5b5a340bce07ea766 +msgid "The arguments to use." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.invoke:21 +#: 777b8be609c64373bbf341f9900b74cb +msgid "The keyword arguments to use." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.invoke:23 +#: 438aa440953846879cfbfe87145d195c +msgid "The command argument to invoke is missing." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.invoke:25 +#: 5021455f669a48f38102c39a6acbab6a +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr "" + +#: ../../docstring of discord.ApplicationContext.channel:1 +#: b609dea40cc743b08e49d5c7be8c7bcb +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "" + +#: ../../docstring of discord.ApplicationContext.channel_id:1 +#: e2e42bf39f034fa09a42af3e0df8cb7b +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "" + +#: ../../docstring of discord.ApplicationContext.guild:1 +#: 328542dec1c2423f82d4288770e7acfb +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "" + +#: ../../docstring of discord.ApplicationContext.guild_id:1 +#: 18c9865ad4024501a55ff86619379a13 +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "" + +#: ../../docstring of discord.ApplicationContext.locale:1 +#: 4d0d154dfb024841ae4273ee278d35cb +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "" + +#: ../../docstring of discord.ApplicationContext.guild_locale:1 +#: 0f7171062ad34e40ba2a50d12af92493 +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "" + +#: ../../docstring of discord.ApplicationContext.me:1 +#: fb27d9ced4754e0bba9315eda057f24d +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "" + +#: ../../docstring of discord.ApplicationContext.message:1 +#: 360aae08d5ec4329a775a2b12cb73428 +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "" + +#: ../../docstring of discord.ApplicationContext.author:1 +#: ../../docstring of discord.ApplicationContext.user:1 +#: d233902b55f7474383181ef505b0deb0 +#: d233902b55f7474383181ef505b0deb0 +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.voice_client:1 +#: 5e34a6aec3cd404da736946c09eef422 +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "" + +#: ../../docstring of discord.ApplicationContext.response:1 +#: 57de46aa89ee401b90d87d96729b87d8 +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.selected_options:1 +#: b5efacea0c6d490588ed532029be97f3 +msgid "The options and values that were selected by the user when sending the command." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.selected_options:3 +#: 2009dbc6355d49f988849abe62887432 +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.selected_options:6 +#: 8ac4f572c7f54f3181360191f521eb43 +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.unselected_options:1 +#: 29e31a1123c242e1aa2b472c55404b69 +msgid "The options that were not provided by the user when sending the command." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.unselected_options:3 +#: 5eacd869453c4caa94b8f1973d4bd707 +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.unselected_options:5 +#: 55cf6af7b08a4f7c93e92c2ec39a8632 +msgid "Optional[List[:class:`.Option`]]" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_modal:1 +#: fcd8fc00fc3444d4a347984fd3b9ed1d +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_modal:6 +#: 76458eafc6a84b0aaff8d4cd995a9882 +msgid "The modal dialog to display to the user." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_modal:9 +#: d92a2d6d8ca043e8bb5c226c9c62684a +msgid "Sending the modal failed." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:33 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_modal:10 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:53 +#: 4b936a2efdbe459c87055d540910dc3b +#: 4b936a2efdbe459c87055d540910dc3b +#: 4b936a2efdbe459c87055d540910dc3b +msgid "This interaction has already been responded to before." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.respond:3 +#: f5ed250977d64274ab69f28890c2d5fc +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.respond:6 +#: ab5a3790be0349bab8d2da6a2877c752 +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.respond:7 +#: fadaf0ad570449299f73d46bbc211ff3 +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:3 +#: 088524dc5e4f4da8addf23d2dcc81b09 +msgid "Responds to this interaction by sending a message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:15 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:6 +#: a23bdff51b9347ed9b843ee572eca90a +#: a23bdff51b9347ed9b843ee572eca90a +msgid "The content of the message to send." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:55 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:9 +#: 4afdc5be01c04197bb07738ff36e4ef3 +#: 4afdc5be01c04197bb07738ff36e4ef3 +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:51 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:13 +#: e5c93968e5e54442b2c01ffb864b3784 +#: e5c93968e5e54442b2c01ffb864b3784 +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:33 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:17 +#: 249a00f69dd7404b8a18dd990aedf15e +#: 249a00f69dd7404b8a18dd990aedf15e +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:20 +#: 5ee37397dded4a3faf8aa45347f4d3c9 +msgid "The view to send with the message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:23 +#: 19b8764e6eb742cfbd6c211ce6de49cf +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:33 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:28 +#: 88d5f696c2574d0fbd7638e815a9f7cd +#: 88d5f696c2574d0fbd7638e815a9f7cd +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:87 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:32 +#: 2d273ae38e5f4004b94c01caa64f2f1a +#: 2d273ae38e5f4004b94c01caa64f2f1a +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:36 +#: c26323cc36d2444db93f04f6a16a61f1 +msgid "The file to upload." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:39 +#: 5eb5de67847f4fbe95b625a06067be80 +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:91 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:42 +#: c95324c20b714dce8cea04b4cfa5b6eb +#: c95324c20b714dce8cea04b4cfa5b6eb +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:91 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:42 +#: 4e6235b751b24b81bd560956f1f7cb67 +#: 4e6235b751b24b81bd560956f1f7cb67 +msgid "The poll to send." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:47 +#: 730b8b62d16c46f6aa4792bf63da9bb1 +msgid "The interaction object associated with the sent message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:99 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:50 +#: 551054b03c444d50a2a60ca32e8e9f16 +#: 551054b03c444d50a2a60ca32e8e9f16 +msgid "Sending the message failed." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:51 +#: a0f75187304f404fb792a05b68249126 +msgid "You specified both ``embed`` and ``embeds``." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:55 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:103 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_response:52 +#: 0a737ffed25c468a8fa88b66f105c037 +#: 0a737ffed25c468a8fa88b66f105c037 +#: 0a737ffed25c468a8fa88b66f105c037 +msgid "The length of ``embeds`` was invalid." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:3 +#: fd293a3f95634cac801f0b23e274ba24 +msgid "Sends a message using the webhook." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:5 +#: b9d3f9751ae6461e9faa2907517ba730 +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:7 +#: e10e94fd9c024d6a9ac88264447d65fe +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:10 +#: fc47d5f58198427fbec351375429a249 +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:18 +#: be98261f001f4289b337e61c209204d3 +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:24 +#: 0f617a954d2040c4b314ea44e8f86eca +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:28 +#: 9d64c46ae5eb48c283625b543241afcd +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:36 +#: 9e7158552f3945e9aa3eda56703c50f3 +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:36 +#: 507d76c002f74e14b168047e5741ec68 +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:22 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:44 +#: 9da3c6f904e749d2a70116da7b9f91b4 +#: 9da3c6f904e749d2a70116da7b9f91b4 +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:25 +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:47 +#: baf2da1b3eea467899a28632a9051c98 +#: baf2da1b3eea467899a28632a9051c98 +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:59 +#: 1d48d94dfbdf48bc929205a105a85b6e +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:59 +#: 5f0205ad28b04c84be092358d620971f +msgid "Controls the mentions being processed in this message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:64 +#: 11877168a21647ad9d25a5b521cd8e6b +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:64 +#: a12ec104a407447aa3d2cf73b4909fee +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:72 +#: 786aa546c1184b81b7ad96a239797b3a +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:72 +#: 87d19dcf19354880973a710d703a6d4e +msgid "The thread to send this webhook to." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:77 +#: f9beaed2ddb0425fa4072973b6b228ab +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:77 +#: f84ffbc14b01477fbf984092850d7a62 +msgid "The name of the thread to create. Only works for forum channels." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:82 +#: fdd72a094f5141ab94b0a7157efea41a +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:82 +#: dbad2a8ee2cd46f8ac199fdffe2d1b6d +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:96 +#: 8ed2b127aab547adb416b946c1ff5afb +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:97 +#: eb56c247fe6743d79f1325e5cfbecf33 +msgid "Optional[:class:`WebhookMessage`]" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:100 +#: 376082779e6a496a92c04b5372816a43 +msgid "This webhook was not found." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:101 +#: b1376346972d42b1a3c9e82098f6c2ee +msgid "The authorization token for the webhook is incorrect." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:102 +#: c6b8b47999374b87931c77b60a96a2d4 +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.send_followup:104 +#: f003bf666ab2407abfdd4416f87c1363 +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:3 +#: eafc302ded3343bfa7c60d20da0291cb +msgid "Defers the interaction response." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:5 +#: df92e0185cc94f369a94a9f7c3e4d4f4 +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:8 +#: 820010f987a64387a35e5c0080467f76 +msgid "This can only be used with the following interaction types:" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:10 +#: 2178e13bd96246b2b10c95327192cd9d +msgid ":attr:`InteractionType.application_command`" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:11 +#: 1456b98d7fe04bd6867edc1cdb4abd0c +msgid ":attr:`InteractionType.component`" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:12 +#: 29822a6142e9410ca2d1d9d83a96fd15 +msgid ":attr:`InteractionType.modal_submit`" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:15 +#: 14e0ba720bca419b8e522b34e997f1b0 +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:19 +#: f1f0c011e33343a69a5fe55bee726d78 +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:24 +#: d756d7d3612f4083829475d5026de3f2 +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.defer:32 +#: a14d5150e093472dbe422e4c56667fcf +msgid "Deferring the interaction failed." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.followup:1 +#: 7cf892fc660444d698051a80c722de6b +msgid "Returns the followup webhook for followup interactions." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.delete:3 +#: 4b5c695549c54ef7ab2bb8aa2415c8f5 +msgid "Deletes the original interaction response message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.delete:5 +#: 282a94146db246ec9bceb2e4b6fefed7 +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.delete:8 +#: 394d4b023ed84168a9f8389747a7b41b +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.delete:11 +#: ea3684f1004940f3b8e8de7102aefd59 +msgid "Deleting the message failed." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.ApplicationContext.delete:12 +#: 6891dda8e4994181b173976f49c55d59 +msgid "You do not have proper permissions to delete the message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:3 +#: 6f30e222be6247b4ace76de5ba0c5b27 +msgid "Edits the original interaction response message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:5 +#: 5c47f45c0da14d5d9d7848955f02fb2f +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:8 +#: 71a97a38704a49a2bec5f4c577e4fcf6 +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:12 +#: f9e671739a04499897ad79ca3d4e41b2 +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:15 +#: 0813010dcf904b128b2dc4d7167b3f0e +msgid "A list of embeds to edit the message with." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:18 +#: c346ef612dc144f8aa1653c2ca3e6c3e +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:29 +#: 8cf7f2b7a8294feabbba1e3be5da1c33 +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:37 +#: 6221bcc307ca47fd83865c20efddaf57 +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:41 +#: 828436be57f74170a414271192eb3539 +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:46 +#: cdfc2e90938c457f9ab2737ffab74a5c +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:49 +#: 9a308a4a2c34444995ab4570d2376b10 +msgid "The newly edited message." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:50 +#: 4904bcae5564406d9f48ae6887540994 +msgid ":class:`InteractionMessage`" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:52 +#: 332fa654af644c9aafa1d235b4466dec +msgid "Editing the message failed." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:53 +#: 7cd8271b907b4b21854be77974f8ce05 +msgid "Edited a message that is not yours." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.edit:54 +#: 1e9fa9fbd69e4e4cb54484433e9101cf +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.ApplicationContext.cog:1 +#: ../../../discord/commands/context.py:docstring of discord.AutocompleteContext.cog:1 +#: 6dda90c3ae154814a40ba59bed13deb3 +#: 6dda90c3ae154814a40ba59bed13deb3 +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:1 +#: 48def13f6174498892c7611747545cd9 +msgid "Represents context for a slash command's option autocomplete." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:3 +#: d78982df0e9a4cd99797b03021587f19 +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:15 +#: ee98d3f82d63421bb90c23a0c914479a +msgid "The interaction object that invoked the autocomplete." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:27 +#: 59a530105ac6485197b9bf2cefe8e50a +msgid "The option the user is currently typing." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:29 +#: 326327f43433488a8304984c578d455b +msgid ":class:`.Option`" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:33 +#: 59f72990e3c14649938ce6341ee0005f +msgid "The content of the focused option." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:35 +#: 58801cfd58d44239a96812222e3aa822 +msgid ":class:`.str`" +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:39 +#: 4c4055bc1b5242568ae0246a1a990d13 +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "" + +#: ../../../discord/commands/context.py:docstring of discord.commands.context.AutocompleteContext:41 +#: 808133417bf3421090c005298b52fda3 +msgid "Dict[:class:`str`, Any]" +msgstr "" diff --git a/docs/build/locales/api/application_info.pot b/docs/build/locales/api/application_info.pot new file mode 100644 index 0000000000..79a4ef292d --- /dev/null +++ b/docs/build/locales/api/application_info.pot @@ -0,0 +1,506 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/application_info.rst:4 +#: 74cc9bfd5756481fb562646a5aa70d5d +msgid "Application Info" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:1 +#: 67cc303e9e844f1ca659a36456c444ee +msgid "Represents the application info for the bot provided by Discord." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:5 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:7 +#: 1124ffb2e42b46588081249f2347d068 +#: 1b1d4c131f034b3586d4deae1e0c9601 +msgid "The application ID." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:0 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInstallParams:0 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:0 +#: ../../../discord/team.py:docstring of discord.team.Team:0 +#: ../../../discord/team.py:docstring of discord.team.TeamMember:0 +#: 19576e9482234cf2aa10aee0803837ee +#: eb9e87675d7448bd9c87c88d4a1120fa +#: e5ba1ed92fc74de5a6950d97e6ff1a88 +#: 0beb967a69ef45ceb7763eeb3dc4c123 +#: e8d765c6eae84e9fb157dae64cad6d74 +#: 9f0fc6db0cfd4bc9b00d2518bd3f98a2 +#: 385296ec5bd14426bc90f124bd4e133c +#: 0af3be474a06423e977f2b441f84cd59 +#: 987d58c35c3e4c338a33f6a2fdf5a7ca +#: bf705be8aecf4e6b9dc48e2f7600a388 +#: a92646588c9f4cc0ae6e61772d477ab2 +#: 0674149be2a944ca999ae49f5e601996 +#: cfb243f065514d19b860b62d1ccaa127 +#: e3a96ae485014a2fb9be751474f5fcc2 +#: 92ed3996583c43d59eac823d7dfd43b6 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 3f5abcc229fc4eedbbd75cd841d5ffe6 +#: d393db4b36b34bf8b9ccacec2284d786 +#: 7528d93cc1f84431b0810b651a652439 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 703da5fbb2b64cfabeb8bb91296bf423 +#: 2025f53e11bd4695875937f126fc3d5d +#: 181b416bd32a4c09a0a558bccc6edb1f +#: 8a2bdc95647948cfb921dc46c63ab9c0 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 21b80740c5a44c28902b1147c2097f18 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +#: 8a71354038764ef894e1dcc7d9fecd94 +msgid "type" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:7 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:9 +#: ../../../discord/team.py:docstring of discord.team.Team:7 +#: ../../../discord/team.py:docstring of discord.team.Team:19 +#: ../../../discord/team.py:docstring of discord.team.TeamMember:33 +#: 9e634374a91345b49183cdc6fd9e24f2 +#: 28dcab5434c6413fb97f42588f4f39ea +#: 28dcab5434c6413fb97f42588f4f39ea +#: 28dcab5434c6413fb97f42588f4f39ea +#: 28dcab5434c6413fb97f42588f4f39ea +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:11 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:13 +#: efd203ceea5943b8b4c6604167817498 +#: bba498da8c0d4d148a5d76b2aa544210 +msgid "The application name." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:13 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:33 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:62 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:15 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:21 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:34 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:41 +#: ../../../discord/team.py:docstring of discord.team.Team:13 +#: ../../../discord/team.py:docstring of discord.team.TeamMember:27 +#: ../../../discord/team.py:docstring of discord.team.TeamMember:43 +#: ../../../discord/team.py:docstring of discord.team.TeamMember:51 +#: b643514396354533a6acfa1127ad419f +#: ee1525281bc84b7cbe2b2b314f49dace +#: 5d459ea63fdb4d3cac7c675933be4037 +#: a324d24a8b594416aacdaafb5e674459 +#: 3f30e80dd97841a5b80cbc2f3b87cacd +#: a324d24a8b594416aacdaafb5e674459 +#: a324d24a8b594416aacdaafb5e674459 +#: a324d24a8b594416aacdaafb5e674459 +#: a324d24a8b594416aacdaafb5e674459 +#: a324d24a8b594416aacdaafb5e674459 +#: a324d24a8b594416aacdaafb5e674459 +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:17 +#: d723203de31d4393b5d900748a147753 +msgid "The application owner." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:19 +#: b407039bb0ec4c978c9ddba84f0bc8a2 +msgid ":class:`User`" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:23 +#: 44cdbd2ebe8f4f7db3a5643f5659b2d5 +msgid "The application's team." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:27 +#: ea4867fdec25441a8351aefd9d2f5f73 +msgid "Optional[:class:`Team`]" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:31 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:19 +#: 4e8e2eb7fe7d46a49fc65690284ddc64 +#: 897452b1fc6b4b7c8c58a40ad2300f6f +msgid "The application description." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:37 +#: 08f798d700fc429cacbbbe837dac3ec6 +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:40 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:47 +#: ../../../discord/team.py:docstring of discord.team.TeamMember:63 +#: 331891c1013643e99d25bd56396c6484 +#: 4ffdc171660e444d8572edeebb447f76 +#: 749b73d6cbd44f47a2f04fb424d1778b +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:44 +#: d607c73714124830ab4b1beaa5982315 +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:51 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:25 +#: 6101d10d23e2492bb99926518b019347 +#: 23387591c8984590b91cb7eed48d8bdb +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:53 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:130 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:164 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:27 +#: 7b9060949a424ef68146ea7243a6ae14 +#: fe8d034329534fc9a8b8e5226e7009cf +#: fe8d034329534fc9a8b8e5226e7009cf +#: fe8d034329534fc9a8b8e5226e7009cf +msgid "Optional[List[:class:`str`]]" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:57 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:38 +#: 25824f9683ad4427b8de0c38d4051a04 +#: 25824f9683ad4427b8de0c38d4051a04 +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:66 +#: b4b25b0e55f0433e83562bdd22959cd2 +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:71 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:81 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:114 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:122 +#: d542b7fb344647adabfa084a333ae9c1 +#: ecff4b129f4f45509cc190e1a82c3ce6 +#: d542b7fb344647adabfa084a333ae9c1 +#: d542b7fb344647adabfa084a333ae9c1 +msgid "Optional[:class:`int`]" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:75 +#: a16580ffeec747d596b4e9077fe2b2e3 +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:85 +#: 3ea1bf80312b4ed6b5c59a1c5e7dc3c8 +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:90 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:98 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:106 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:138 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:146 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:172 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:47 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:53 +#: ../../../discord/team.py:docstring of discord.team.TeamMember:57 +#: 5c5f38add34f465c92bc538636bdadd7 +#: d8ea2bd900a0489684084903b6c36dde +#: d284414d044b4587b7bb242d9468f4c1 +#: 5c5f38add34f465c92bc538636bdadd7 +#: 5c5f38add34f465c92bc538636bdadd7 +#: 5c5f38add34f465c92bc538636bdadd7 +#: 5c5f38add34f465c92bc538636bdadd7 +#: 5c5f38add34f465c92bc538636bdadd7 +#: 5c5f38add34f465c92bc538636bdadd7 +msgid "Optional[:class:`str`]" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:94 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:45 +#: 732e1ba0b3de4383a9ef9b83cf245d73 +#: 732e1ba0b3de4383a9ef9b83cf245d73 +msgid "The application's terms of service URL, if set." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:102 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:51 +#: 645cd576ee2c4680b5a56d946d532840 +#: 645cd576ee2c4680b5a56d946d532840 +msgid "The application's privacy policy URL, if set." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:110 +#: adf3fb5776fd41fda256044bd2576a3e +msgid "The approximate count of guilds to which the app has been added, if any." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:118 +#: f8b4071dc3dd4a9fab0619d91537fe11 +msgid "The approximate count of users who have installed the application, if any." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:126 +#: 022bcf33c194457593a47061acf91c6f +msgid "The list of redirect URIs for the application, if set." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:134 +#: 3c57fdc17dbb4950a36effe20e3075fd +msgid "The interactions endpoint URL for the application, if set." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:142 +#: af795468cfe54b3985aa6a584ecd3df5 +msgid "The role connection verification URL for the application, if set." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:150 +#: 15be78fe305447a791fe15f66d24a448 +msgid "The settings for the application's default in-app authorization link, if set." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:154 +#: fe8d034329534fc9a8b8e5226e7009cf +msgid "Optional[List[:class:`AppInstallParams`]]" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:158 +#: 5aa4818e6fc94ae8b07e18b6166583ec +msgid "The list of tags describing the content and functionality of the app, if set." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:160 +#: 6247ad0381374a3d8b72aad9bc74ac79 +msgid "Maximium of 5 tags." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInfo:168 +#: 2e43d10963c04c7882079894d1dd2197 +msgid "The default custom authorization URL for the application, if set." +msgstr "" + +#: ../../api/application_info.rst:0 +#: e7d8765c380a4c9eb0944c511eed77ab +#: e7d8765c380a4c9eb0944c511eed77ab +#: e7d8765c380a4c9eb0944c511eed77ab +#: e7d8765c380a4c9eb0944c511eed77ab +#: e7d8765c380a4c9eb0944c511eed77ab +msgid "Parameters" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.AppInfo.icon:1 +#: ../../../discord/appinfo.py:docstring of discord.PartialAppInfo.icon:1 +#: bff94f7e897b4f60867da6300aa80604 +#: bff94f7e897b4f60867da6300aa80604 +msgid "Retrieves the application's icon asset, if any." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.AppInfo.cover_image:1 +#: 7730be7e119d4951b2cf3f0ca8bcda19 +msgid "Retrieves the cover image on a store embed, if any." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.AppInfo.cover_image:3 +#: 5fd587ca1e8e4b848ec3523fdbaf3d20 +msgid "This is only available if the application is a game sold on Discord." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.AppInfo.guild:1 +#: ae938df96b6443e2822efc053c40bdf7 +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.AppInfo.summary:1 +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:31 +#: 2e7625a1090a480e841f2bbf9c2de937 +#: 2e7625a1090a480e841f2bbf9c2de937 +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.AppInfo.summary:4 +#: 8a24fea123be49278e938d6a56b56fa7 +msgid "It currently returns an empty string." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.PartialAppInfo:1 +#: f36a0f6452e24fdc8ed50b109685437f +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInstallParams:1 +#: e869493a8e3a40ee84113fecf945de45 +msgid "Represents the settings for the custom authorization URL of an application." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInstallParams:7 +#: dfec489acaf44259a32930cf192d8d29 +msgid "The list of OAuth2 scopes for adding the application to a guild." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInstallParams:9 +#: 5c5f38add34f465c92bc538636bdadd7 +msgid "List[:class:`str`]" +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInstallParams:13 +#: 5d0bdf97472648cf98f816e2d62e4726 +msgid "The permissions to request for the bot role in the guild." +msgstr "" + +#: ../../../discord/appinfo.py:docstring of discord.appinfo.AppInstallParams:15 +#: d7cc240edc334834aedd925553167159 +msgid ":class:`Permissions`" +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.Team:1 +#: 11145d31bf024c7bab80025c64b7c96e +msgid "Represents an application team for a bot provided by Discord." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.Team:5 +#: 6fd71d9ed5b14389a1ae4e17d712b453 +msgid "The team ID." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.Team:11 +#: 28ef979653274e248c6ff0c8a55caf7e +msgid "The team name." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.Team:17 +#: fc41a0ab74f048359f01ba1c0968cb76 +msgid "The team's owner ID." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.Team:23 +#: d9c75b2bebe443d89d306c35b9e84253 +msgid "A list of the members in the team." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.Team:27 +#: 3d9afc4316934f55b07913d7e58251d0 +msgid "List[:class:`TeamMember`]" +msgstr "" + +#: ../../../discord/team.py:docstring of discord.Team.icon:1 +#: 463a76fee53f40b9b2a9609a55b59143 +msgid "Retrieves the team's icon asset, if any." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.Team.owner:1 +#: 63b9080cfbc8482893b8eb12edbf7051 +msgid "The team's owner." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:1 +#: 63ff0073e60346fa9a97204437389398 +msgid "Represents a team member in a team." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:7 +#: e3f7fa8116ac45168cab02e5b26f882c +msgid "Checks if two team members are equal." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:11 +#: f0d991c870f546a6b3319505f2cd0730 +msgid "Checks if two team members are not equal." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:15 +#: 5266854fb4bd43669d9b8e72e938dfd6 +msgid "Return the team member's hash." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:19 +#: 83a317ee5a0b408a9f4758fda47626d8 +msgid "Returns the team member's name with discriminator or global_name." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:25 +#: b01570cd3fef418eb1ce60372ab3dcba +msgid "The team member's username." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:31 +#: 2bb030dc84814e048a006790d4ffaa0f +msgid "The team member's unique ID." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:37 +#: 606ede4553ca4c83abeb3ec166dde072 +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:41 +#: 8cbf4ee534434f2a86504f300e21d3d5 +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:47 +#: c3884e88100b42d7b70c00c9b99fa3ad +msgid "The team member's global name." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:55 +#: 49d9f91963544551be434d0d46347ff3 +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:61 +#: 35c4e103f2254c92b80b8d875089dae3 +msgid "Specifies if the user is a bot account." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:67 +#: fcd21ee7de4e4c99916043f99c1e02f0 +msgid "The team that the member is from." +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:69 +#: fb5cd5a9218c4fce92ea9f2d95ab46fb +msgid ":class:`Team`" +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:73 +#: f5d05cc227b3458a8e126c87397c8666 +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "" + +#: ../../../discord/team.py:docstring of discord.team.TeamMember:75 +#: d7cc240edc334834aedd925553167159 +msgid ":class:`TeamMembershipState`" +msgstr "" diff --git a/docs/build/locales/api/async_iter.pot b/docs/build/locales/api/async_iter.pot new file mode 100644 index 0000000000..976b813927 --- /dev/null +++ b/docs/build/locales/api/async_iter.pot @@ -0,0 +1,189 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/async_iter.rst:4 +#: 683210b308c6452eaa81b17e1758cde5 +msgid "Async Iterator" +msgstr "" + +#: ../../api/async_iter.rst:6 +#: 26660b1f875c4116b27b57231b3e326a +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "" + +#: ../../api/async_iter.rst:9 +#: b2a8e2358fff4dee94538dd7db885436 +msgid "These async iterators can be used as follows: ::" +msgstr "" + +#: ../../api/async_iter.rst:14 +#: fedb68a3877f4bf9852c7f4d88ebf653 +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "" + +#: ../../api/async_iter.rst:18 +#: ee607db54b2c48399a3993ad596a5e4e +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "" + +#: ../../api/async_iter.rst:25 +#: ea99bb1f015e4745a085c595d3f45632 +msgid "Iterates over the contents of the async iterator." +msgstr "" + +#: ../../api/async_iter.rst:31 +#: ../../api/async_iter.rst:39 +#: ../../api/async_iter.rst:50 +#: ../../api/async_iter.rst:70 +#: 50240befea20487a938b5c3a1962b897 +#: 88aa64e2c65e49549cc72afb29d11079 +#: 4f95ac8bdd4e4ed5860bb668349643c0 +#: ebb326024af642caa846a9c8d1e5cd22 +msgid "|coro|" +msgstr "" + +#: ../../api/async_iter.rst:33 +#: fc2a0e5b432b46688ed1bfe2e81923ba +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "" + +#: ../../api/async_iter.rst:41 +#: 8e78bfd5f23e4fa78ed058d83f803620 +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "" + +#: ../../api/async_iter.rst:43 +#: cebb25e3e89a40a8a9feb2e09df074b5 +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "" + +#: ../../api/async_iter.rst:52 +#: bba5fc8cdec74acdbdf398084ae65c71 +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "" + +#: ../../api/async_iter.rst:54 +#: d800ba8608e54e989bb3ad7e8402e459 +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst:57 +#: 7b251694963241aaae3bed1c7d8cbc4d +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "" + +#: ../../api/async_iter.rst:0 +#: 5e49651663164532b4c188e7f9394698 +#: 06e87b915f3e4228881a5514b6a00865 +#: 71a78339b59244759117eab739d2bf8d +#: 647540de23184651ae6d19f426de83ae +msgid "Parameters" +msgstr "" + +#: ../../api/async_iter.rst:64 +#: 980baa97820542859943b5e915b7291e +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst:0 +#: 2211459cc06e4959a9d358fbf30fb169 +#: e96973ea3d57420497cbef89229b1b1b +msgid "Returns" +msgstr "" + +#: ../../api/async_iter.rst:65 +#: fd39c8efddfb48dabbe8042c515512b5 +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "" + +#: ../../api/async_iter.rst:72 +#: 9515f54767c5484bba41645724d6e70d +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "" + +#: ../../api/async_iter.rst:74 +#: b8db6657e3ba49f1a150adf43bd3441e +msgid "A list of every element in the async iterator." +msgstr "" + +#: ../../api/async_iter.rst:0 +#: d1d2046aaf5c4fd69ff7ef7375d0b3d2 +#: 8d1fdc4db23d471aa821ca1ace2f2cbe +#: aab818990f18433e93d0cb25aaab6308 +#: ffef918ac0614e37ae24ac20c9915dca +msgid "Return type" +msgstr "" + +#: ../../api/async_iter.rst:79 +#: 5074748f45454936b9d1cfe063527db2 +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "" + +#: ../../api/async_iter.rst:85 +#: 6393efcbcb3f47d38f1d9a3e5cd573e8 +msgid "Collecting groups of users: ::" +msgstr "" + +#: ../../api/async_iter.rst:92 +#: 717925fddfaa4df2bd9630eae0a2648c +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "" + +#: ../../api/async_iter.rst:94 +#: add0fdb0c5ff469aae610f6c9c8325bd +msgid "The size of individual chunks." +msgstr "" + +#: ../../api/async_iter.rst:95 +#: ../../api/async_iter.rst:113 +#: ../../api/async_iter.rst:130 +#: d482560e0a4b46a792f1cbeaa515857c +#: 7774370fc45f4f54b7e247891786b2af +#: c6022e74eeaf41deabfef4ae43c8f694 +msgid ":class:`AsyncIterator`" +msgstr "" + +#: ../../api/async_iter.rst:99 +#: 064e5dad853e44059d92e277ce556721 +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst:104 +#: a29ba78bc12347d6a668a329ef6012da +msgid "Creating a content iterator: ::" +msgstr "" + +#: ../../api/async_iter.rst:112 +#: 5a0baeb5df5d452591bafc3d4262eb82 +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst:117 +#: 8093476ff4f941168ba84770614e0bed +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst:121 +#: ff128eb38e014fb7ab8d315b033fb599 +msgid "Getting messages by non-bot accounts: ::" +msgstr "" + +#: ../../api/async_iter.rst:129 +#: 0218f7cdb3cc48bc8cdc637c9302b0ee +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "" diff --git a/docs/build/locales/api/audit_logs.pot b/docs/build/locales/api/audit_logs.pot new file mode 100644 index 0000000000..70a40d0039 --- /dev/null +++ b/docs/build/locales/api/audit_logs.pot @@ -0,0 +1,996 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/audit_logs.rst:6 +#: c15e7cd810f943f28c384477750f4f15 +msgid "Audit Log Data" +msgstr "" + +#: ../../api/audit_logs.rst:8 +#: b0e7037de5f546648bf72d690c1ded4a +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:1 +#: c16e0a4155244540969a7ad0dbbb4106 +msgid "Represents an Audit Log entry." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:3 +#: 37848f380eba497886afcb59340fa3ff +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:9 +#: 01d8023134d6484b904d45265e979c57 +msgid "Checks if two entries are equal." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:13 +#: cefb6c8408f94b1f9c157fb84ac1bd04 +msgid "Checks if two entries are not equal." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:17 +#: 75e42cbd096245d3ac7fae79dadf793a +msgid "Returns the entry's hash." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:19 +#: b9c1b72d908a4400a3263cf3f638c8b3 +msgid "Audit log entries are now comparable and hashable." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:24 +#: fdc08052c4c940a1b7e0a45a4e86e46f +msgid "The action that was done." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:0 +#: ../../api/audit_logs.rst:0 +#: 77fc83cde9ff4a79b7698efcbf4442c7 +#: c3d2889d125c481ebd191ec6a179c253 +#: d2a278e08dde4150b5dcd92ddb321dcf +#: 3c577c20e66c4e9c8d87d90f55396906 +#: 83c485385fe3478290a0e78dedcf9cb2 +#: d4d94dd92843423db8465de85409e5bf +#: 9edb5cae872e4dd3877591d5a7001b92 +#: 6f39b2f108094f9381a9a3838f656705 +#: ea85bad4af264314aa2c7ec6e16d1e53 +#: 888211cdb8ab46758cfb862cc4a3d5bd +#: 5873a38c4b474eb49674201367bc55e7 +#: 14d7b570aa5440ac91af03d9d8ddc1ce +#: cbac2288ff274b719bdcf57f8b9661fb +#: 0e91bcd374344924b95f83fbe77acdc7 +#: ed7384c9d8d6407eb8b0b145cd1b0a43 +#: 12669c582e7f45689043622ba5bd5b40 +#: 52630aeafd804fa999184290dcdd066e +#: 4d2c80465b854d4d80922e7e5ca5a332 +#: f840f1761b5a4a508ba57b2113a897a9 +#: 1b29fadde7984fd8b4998aaaad2f28e8 +#: 619d10656cab4f38a8f13dd01055559a +#: 72a4088527df4f81954a2771767fc5d7 +#: c60356036ca745f4b40fed50de3b3474 +#: ce2b8b2a277d418c8ffd666502e64697 +#: 93fafdc3767245c1b52628509caf0af2 +#: 74d33a3f44e64e60a33e576170b5aa76 +#: 3b08ecbcedce4e1e8f7d65b0166100fe +#: 20f20240e73442398f90c533449c5b62 +#: 626724f8358847c199a526221635442c +#: f1b22b933ffd4502ae08190e61ab1dd3 +#: a5e79d2bf9b0440abeb92e949a5878a6 +#: 3165fb299696495fbf798eff6314b71b +#: 54c6f9deb1f74456aab58fa1853da21c +#: 83b846ddac2a43d3939bd1f1847b5ef1 +#: 34a455ed93514bab850d4f8a8b31fb79 +#: f93ebef541414ae4a422ba3257083910 +#: c57b847ed99d48408e23d66e88a31c68 +#: 5af4849d13ad467c9c761975b562b685 +#: fb0c7fd0eed34636a9a0c40ae5cc04c5 +#: 6299ba933ef74274a75ee97287374ad5 +#: 018838c92cf443998e3528806f535ef1 +#: 7962ad5ea3f8408995139fc1864a0906 +#: f719b0f52c4349f7a1114e8c16abd49e +#: 287eae04e8bc4c0b8bc2f459950882e6 +#: 88015128497741aaa3336ce4accd8cd3 +#: 25e96b71d7d84bceabf66ebd3ff12b25 +#: f6dc9c09512e4f42875d84f023641208 +#: c49d2a0985e145e7a383f0123dc1ff52 +#: 99df7c68d5f24841a158b287d5cc41df +#: 31de64c8a9ef44bb90b82785f4a755c2 +#: f8c4ba816552415482b1c2d63e8f4a14 +#: dd73304f0e1a477799a52784017c8a51 +#: f7a45a775bde4406bea1e457c7060dea +#: 07ec8ed57b334e898b2027ce9a23f533 +#: 8b1ecea53f54442eb26246fcc07156f7 +#: 0a9a730958434cb6b48de053b91f207f +#: b78a900781d64dfb8728cde0bc78ff60 +#: 7095e060ff754284a061d7debf035204 +#: f4b0051464374dffbab9e489460a9e4a +#: 9e1f7ebe763c4148acace5eaffee8b7d +#: cdbfcba6d6cb422084edcdfc438027f0 +#: ae9ec0bda90b41c1804663b15d03ff46 +#: 9167517e1b4440e488acc02f4d53b6dd +#: 1b2f941479d9453db940b802623e13ed +msgid "type" +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:26 +#: eb1bb86761ed47aa9289333648a2f29c +msgid ":class:`AuditLogAction`" +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:30 +#: 066412f2b2574cd89fc465846f4a13c3 +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:33 +#: b35aa754f9f648fba64070e2a6494f49 +msgid "Optional[:class:`abc.User`]" +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:37 +#: 32ae59d50cad4b0186310a8e7eadd72d +msgid "The entry ID." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:39 +#: ../../api/audit_logs.rst:171 +#: ../../api/audit_logs.rst:177 +#: ../../api/audit_logs.rst:222 +#: ../../api/audit_logs.rst:236 +#: ../../api/audit_logs.rst:258 +#: ../../api/audit_logs.rst:376 +#: ../../api/audit_logs.rst:384 +#: ../../api/audit_logs.rst:392 +#: ../../api/audit_logs.rst:413 +#: ../../api/audit_logs.rst:430 +#: ../../api/audit_logs.rst:499 +#: ../../api/audit_logs.rst:505 +#: ../../api/audit_logs.rst:517 +#: 77f9a261fe6a44be9899d99d86a3eb8d +#: efae14602d334dc6af7f23da6d78cf2e +#: b19f850def9247d191d5a1f6f0ef6c51 +#: 711f82da8b154c25827aca6f3e1bdf44 +#: 3a3211324625490bb19bcb97d023071c +#: c51f09691c8f4659a5cddce1f4e07943 +#: efceb465209a4a239309f1b5d1afe3de +#: 4c3c46c457d945369a3529520a9d230a +#: 6200ce13167d41ccbf154adf09263591 +#: 033ec36b1cc443ce925d8006608c9306 +#: 119dcd786d094e9fa3d9f9355d2acdcc +#: 56703ed09270429582f88902d4dcbfc1 +#: 9cd5338801f9430abae7be7fe8f678fa +#: 4b30306c6a9742db97a87c0642f0b06b +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:43 +#: c524a8a01fb44a2f83e94cb40e722a2e +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:46 +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:61 +#: 63c82e15ae6c4b81b56c84ed06a65f35 +#: d765c3c8a02c4108b5f0d7fa50a155cf +msgid "Any" +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:50 +#: c4f3e86c1f3445358a51a82414495e6b +msgid "The reason this action was done." +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:52 +#: ../../api/audit_logs.rst:294 +#: 8552845caae447a6a93c291d3468bc18 +#: ab1fd845cf7847fdb5f84ece35f22c4a +msgid "Optional[:class:`str`]" +msgstr "" + +#: ../../../discord/audit_logs.py:docstring of discord.audit_logs.AuditLogEntry:56 +#: 1fafdfdb8be5486fb6c469d4a8e9ccdf +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "" + +#: ../../api/audit_logs.rst:0 +#: c08175ab86fd405fb649cf0d0c775b14 +msgid "Parameters" +msgstr "" + +#: ../../docstring of discord.AuditLogEntry.created_at:1 +#: 35c34734a85b4772ab44cafcdb0c1487 +msgid "Returns the entry's creation time in UTC." +msgstr "" + +#: ../../docstring of discord.AuditLogEntry.category:1 +#: 42a54accd66e4774b590c0e2c23cef74 +msgid "The category of the action, if applicable." +msgstr "" + +#: ../../docstring of discord.AuditLogEntry.changes:1 +#: 3f099394b54d4de38f2c30f64db98003 +msgid "The list of changes this entry has." +msgstr "" + +#: ../../docstring of discord.AuditLogEntry.before:1 +#: 413918f132a3422e93b9002da753ffe3 +msgid "The target's prior state." +msgstr "" + +#: ../../docstring of discord.AuditLogEntry.after:1 +#: 3a963ab211594298b7dce384b294f823 +msgid "The target's subsequent state." +msgstr "" + +#: ../../api/audit_logs.rst:21 +#: 9c34e793cb5f4b34a8d6cd512b05b6d4 +msgid "An audit log change set." +msgstr "" + +#: ../../api/audit_logs.rst:25 +#: 648cb0d7d9424adb89c8770d0b186cac +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "" + +#: ../../api/audit_logs.rst:27 +#: ../../api/audit_logs.rst:47 +#: 22738dc254a74ae8affa4e1f1f8070c5 +#: e75457782a604b12aeb144f622cfe39b +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "" + +#: ../../api/audit_logs.rst:32 +#: ../../api/audit_logs.rst:52 +#: 379adfee54274485af0b1e0f7dc23210 +#: fcd3038e483a44f9a03e061bbd948a64 +msgid "Category" +msgstr "" + +#: ../../api/audit_logs.rst:32 +#: ../../api/audit_logs.rst:52 +#: 7bd15b04a76e4179b168c633efa30f9e +#: b05a2b6a3b6f475982250fadc236f33a +msgid "Description" +msgstr "" + +#: ../../api/audit_logs.rst:34 +#: ../../api/audit_logs.rst:54 +#: 902907e14ba441e68b97aef85eb47f72 +#: f2d6dd2b9e4b4d6b88069f0cdb91faa6 +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr "" + +#: ../../api/audit_logs.rst:34 +#: 96aae1a9c95142c7849d54db6879d73f +msgid "All attributes are set to ``None``." +msgstr "" + +#: ../../api/audit_logs.rst:36 +#: ../../api/audit_logs.rst:56 +#: 525ec285c87441b886ce406e12a9d4d6 +#: 4d9f86b779414b2bb942360ba5e35da7 +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr "" + +#: ../../api/audit_logs.rst:36 +#: 5480a9ad1e824c3099b5563be257c2b3 +msgid "All attributes are set the value before deletion." +msgstr "" + +#: ../../api/audit_logs.rst:38 +#: ../../api/audit_logs.rst:58 +#: 739dd30af79f4035b167f2cc35db3041 +#: 0373be925ad74c8691a4b7b06d0a7d89 +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr "" + +#: ../../api/audit_logs.rst:38 +#: df09ff4f27d34aa185e94b1c06d9dfae +msgid "All attributes are set the value before updating." +msgstr "" + +#: ../../api/audit_logs.rst:40 +#: ../../api/audit_logs.rst:60 +#: 52b5f385907040839f5868a9d4477e32 +#: 7a9cdb005dbe4e89a838c79fd69c1a7f +msgid "``None``" +msgstr "" + +#: ../../api/audit_logs.rst:40 +#: ../../api/audit_logs.rst:60 +#: 111233d756ec4cf1bfd5cef5cff6cf04 +#: 6c7e921e96c94a3e854950a8c6b146ba +msgid "No attributes are set." +msgstr "" + +#: ../../api/audit_logs.rst:45 +#: edb4a55e3e5f4caabff853f3be4b798e +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "" + +#: ../../api/audit_logs.rst:54 +#: 89f9d7137cb44ab792b4337fbf783706 +msgid "All attributes are set to the created value" +msgstr "" + +#: ../../api/audit_logs.rst:56 +#: 70697ea9742a4aa89cc8b3753ad0b492 +msgid "All attributes are set to ``None``" +msgstr "" + +#: ../../api/audit_logs.rst:58 +#: 63982e1978f84b79bf1b5f1ea26e542f +msgid "All attributes are set the value after updating." +msgstr "" + +#: ../../api/audit_logs.rst:67 +#: 2bdd655c0b224e57ab49fa7ecdd5f9f9 +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "" + +#: ../../api/audit_logs.rst:71 +#: 64e739ada7d84c9ab9329fdec9e293ef +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "" + +#: ../../api/audit_logs.rst:74 +#: ea2b849865ee43b2b21ed87142d49b37 +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "" + +#: ../../api/audit_logs.rst:83 +#: ef597c9d783f40568dc26ac23521500b +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "" + +#: ../../api/audit_logs.rst:87 +#: bc618385e5f4451383183bf6a929b942 +msgid "A name of something." +msgstr "" + +#: ../../api/audit_logs.rst:89 +#: ../../api/audit_logs.rst:230 +#: ../../api/audit_logs.rst:250 +#: ../../api/audit_logs.rst:351 +#: ../../api/audit_logs.rst:463 +#: ../../api/audit_logs.rst:471 +#: ../../api/audit_logs.rst:525 +#: ../../api/audit_logs.rst:531 +#: c5c4e0ae4e45496eb32c7907364cb483 +#: 446725aaf65d4ddfb3011dd6c382a9bf +#: d40120b690fa458fb3677608ad3130cb +#: d41973787ca043fe878e0c937df69154 +#: 4b2ddc1049304c70bfa9ea00ac6484df +#: a30eef0197584b019e89d220d779e48a +#: e3f884ad7910494394662d3476eaa4d8 +#: 8d014103b85e4d18bbf90074f7f42db2 +msgid ":class:`str`" +msgstr "" + +#: ../../api/audit_logs.rst:93 +#: 0e63465fd6d14b7d8ce61e59c71f8814 +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "" + +#: ../../api/audit_logs.rst:95 +#: ../../api/audit_logs.rst:101 +#: ../../api/audit_logs.rst:107 +#: ../../api/audit_logs.rst:113 +#: ../../api/audit_logs.rst:421 +#: 4c1306f7d9c04f5fb67d12193248a253 +#: 5c48319392134b6aacddc014c3f33a96 +#: 27f36233f3e748669f14d6b5a674e1aa +#: a8c90701ac52439082d83abf62f9e7ac +#: 2bbdc8f9bd49492ebf765dbefaf45f2f +msgid ":class:`Asset`" +msgstr "" + +#: ../../api/audit_logs.rst:99 +#: 5b303b9cf83c46fca0dba405038b2970 +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "" + +#: ../../api/audit_logs.rst:105 +#: 970bba8b6a354068930ec6c5bf999c14 +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "" + +#: ../../api/audit_logs.rst:111 +#: be8abed6d08947a784fabd6da26d7ae5 +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "" + +#: ../../api/audit_logs.rst:117 +#: bec033ce155d429a831d95885153df21 +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "" + +#: ../../api/audit_logs.rst:119 +#: abf04331146546d7bd6db1c76f3bbcf6 +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "" + +#: ../../api/audit_logs.rst:123 +#: aaccca5628a140a6a100e9ae8ff6e610 +msgid "The guild's AFK channel." +msgstr "" + +#: ../../api/audit_logs.rst:125 +#: ../../api/audit_logs.rst:136 +#: 8aa8716742134fe481fb5a6efa9c8e31 +#: 94a41db4bd5b442caf00ed7897f5f95b +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "" + +#: ../../api/audit_logs.rst:128 +#: dc2ab86efd5a482d896f744e0838bb34 +msgid "See :attr:`Guild.afk_channel`." +msgstr "" + +#: ../../api/audit_logs.rst:130 +#: 5e0504eb0bb24ea0a88e0d59634b71bd +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "" + +#: ../../api/audit_logs.rst:134 +#: e6c5b28e91214bd7b7362d4386242487 +msgid "The guild's system channel." +msgstr "" + +#: ../../api/audit_logs.rst:139 +#: f290a0b588aa450aae75a95c1af3b494 +msgid "See :attr:`Guild.system_channel`." +msgstr "" + +#: ../../api/audit_logs.rst:141 +#: ../../api/audit_logs.rst:153 +#: ../../api/audit_logs.rst:165 +#: ../../api/audit_logs.rst:192 +#: ede7bc22df7845f8ae20d1d1831204b4 +#: 752da77502a64b3f80cda3b10ece282d +#: 75f60680df544cd6bd165b17b47dcae0 +#: 4f3c183d07a647a68232bc6f960e39dc +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "" + +#: ../../api/audit_logs.rst:146 +#: 8faef8366bdb43a58ffe62635a483aef +msgid "The guild's rules channel." +msgstr "" + +#: ../../api/audit_logs.rst:148 +#: ../../api/audit_logs.rst:160 +#: ../../api/audit_logs.rst:189 +#: 96ccebfcd99048b8b8f130eddd487b0f +#: d70c738ba4ed464387fe8d9dd4469707 +#: 7668ff4c498d417094db3a518125a694 +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "" + +#: ../../api/audit_logs.rst:151 +#: 2be308fc4ff24d44a416b91c21c36c0b +msgid "See :attr:`Guild.rules_channel`." +msgstr "" + +#: ../../api/audit_logs.rst:158 +#: bfff8d711723497783a47ebed12b641a +msgid "The guild's public updates channel." +msgstr "" + +#: ../../api/audit_logs.rst:163 +#: dff462f591124507b6264cdb9b1e7004 +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "" + +#: ../../api/audit_logs.rst:169 +#: 1568138420834f2391b05c079775376b +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "" + +#: ../../api/audit_logs.rst:175 +#: 5287c0b314ec41518facad6060be03a9 +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "" + +#: ../../api/audit_logs.rst:181 +#: 8d14a1e130c7403d9c1a381cb96983c9 +msgid "The guild's widget has been enabled or disabled." +msgstr "" + +#: ../../api/audit_logs.rst:183 +#: ../../api/audit_logs.rst:302 +#: ../../api/audit_logs.rst:310 +#: ../../api/audit_logs.rst:335 +#: ../../api/audit_logs.rst:343 +#: ../../api/audit_logs.rst:400 +#: ../../api/audit_logs.rst:479 +#: ../../api/audit_logs.rst:485 +#: ../../api/audit_logs.rst:491 +#: ../../api/audit_logs.rst:511 +#: da435cbab68b4c9bb613f0a21f9d3e9b +#: 5ea7f3ebf0e3458aab55647bc2b6b207 +#: d354c177497e4afeb2eda288f2c1ed27 +#: aab3070967ec4ba68ad8d040d459b62a +#: 150d6c683e5e43338ea9c52fcb44296e +#: eb1dc1ce86b84aeb9a7498d83da1ed2b +#: b66e3d7285524390ac5536c97ffcb8fa +#: 6d333e9edc9743f889dfaf5c46e70264 +#: 6b1ec8059db9461eba7c85c1813e9749 +#: 41b6b46f42b542cca84e22064c42649d +msgid ":class:`bool`" +msgstr "" + +#: ../../api/audit_logs.rst:187 +#: c39996a2e84747dc93d10ff89e1d686d +msgid "The widget's channel." +msgstr "" + +#: ../../api/audit_logs.rst:196 +#: 801f1f0e800b4c34b11266b369312838 +msgid "The guild's verification level." +msgstr "" + +#: ../../api/audit_logs.rst:198 +#: 5607dd7e4de149f29dc88cfb79f0a564 +msgid "See also :attr:`Guild.verification_level`." +msgstr "" + +#: ../../api/audit_logs.rst:200 +#: 734c187892f04c4fade41a9d6b7864a3 +msgid ":class:`VerificationLevel`" +msgstr "" + +#: ../../api/audit_logs.rst:204 +#: f55da2b798784c2e98ea700f82e4b595 +msgid "The guild's default notification level." +msgstr "" + +#: ../../api/audit_logs.rst:206 +#: 3ddff88f4798418ba297485780c239d3 +msgid "See also :attr:`Guild.default_notifications`." +msgstr "" + +#: ../../api/audit_logs.rst:208 +#: 7d348b8ad0a144738c16a613b907dcdc +msgid ":class:`NotificationLevel`" +msgstr "" + +#: ../../api/audit_logs.rst:212 +#: 4c1a0f78b396443d9aa4acf1b3c39aed +msgid "The guild's content filter." +msgstr "" + +#: ../../api/audit_logs.rst:214 +#: 8979396960e34ebfa8f70c43bbc4fa99 +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "" + +#: ../../api/audit_logs.rst:216 +#: 4034eefe613e4a599556b650983a1b13 +msgid ":class:`ContentFilter`" +msgstr "" + +#: ../../api/audit_logs.rst:220 +#: a27fb3efca7f47a1b55ef70533a61c15 +msgid "The guild's default message notification setting." +msgstr "" + +#: ../../api/audit_logs.rst:226 +#: dd6f3d7094014fb4b57bd573d461ca19 +msgid "The guild's vanity URL." +msgstr "" + +#: ../../api/audit_logs.rst:228 +#: a4f27efea9584e64bc09d1281de74041 +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "" + +#: ../../api/audit_logs.rst:234 +#: cab946ceefb34cbdbb201b6ee9faa4ff +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "" + +#: ../../api/audit_logs.rst:240 +#: cd2b82d9399b4fc1a53bd1faa7ff0a47 +msgid "The type of channel or sticker." +msgstr "" + +#: ../../api/audit_logs.rst:242 +#: 4c4285a9bab749a4a8528ec7d131df5f +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "" + +#: ../../api/audit_logs.rst:246 +#: 60f321ea7cbb469d8d488dc97e96023f +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "" + +#: ../../api/audit_logs.rst:248 +#: 7b27114b6e11464e9f2e37c9017f987a +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "" + +#: ../../api/audit_logs.rst:254 +#: c2672f5fdf1c4c66864f02f146c1a0d7 +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "" + +#: ../../api/audit_logs.rst:256 +#: f4774c7dd9bb4800a5a94a6c67b562f3 +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "" + +#: ../../api/audit_logs.rst:262 +#: a8e6fa9993e84b819491b9ca68fb802e +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "" + +#: ../../api/audit_logs.rst:265 +#: c583fbbb96a1450bac4273b8b018711d +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "" + +#: ../../api/audit_logs.rst:271 +#: cdaab8d4d2bb4c95960cccc87668788d +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "" + +#: ../../api/audit_logs.rst:275 +#: dd4d023a07754d20869e7c45e3045b06 +msgid "The privacy level of the stage instance or scheduled event." +msgstr "" + +#: ../../api/audit_logs.rst:277 +#: 508657738a654db1b7eb6838f21bd0e6 +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "" + +#: ../../api/audit_logs.rst:281 +#: 46995ba9d85c4080af86b7665885f165 +msgid "A list of roles being added or removed from a member." +msgstr "" + +#: ../../api/audit_logs.rst:283 +#: a0e20a7805af4926a3fa92e47895f7f6 +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "" + +#: ../../api/audit_logs.rst:286 +#: f2df3a2b3b1849bbb3878af005243bac +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "" + +#: ../../api/audit_logs.rst:290 +#: 4d70f85ee1ec4a2381d32f10d335eb69 +msgid "The nickname of a member." +msgstr "" + +#: ../../api/audit_logs.rst:292 +#: 16305a55a7c842b188d1ccbd3742c186 +msgid "See also :attr:`Member.nick`" +msgstr "" + +#: ../../api/audit_logs.rst:298 +#: 35419da87a914a11b46ff7fae236ead8 +msgid "Whether the member is being server deafened." +msgstr "" + +#: ../../api/audit_logs.rst:300 +#: 064049dcc09946d394019bdf067049d4 +msgid "See also :attr:`VoiceState.deaf`." +msgstr "" + +#: ../../api/audit_logs.rst:306 +#: d764d48f607042e285298a7b2995279e +msgid "Whether the member is being server muted." +msgstr "" + +#: ../../api/audit_logs.rst:308 +#: 6f2f962dc5e54ccd9062f510af15c64e +msgid "See also :attr:`VoiceState.mute`." +msgstr "" + +#: ../../api/audit_logs.rst:314 +#: fe8687b2538d4db4b0f4aa82a8d0a8c7 +msgid "The permissions of a role." +msgstr "" + +#: ../../api/audit_logs.rst:316 +#: e89aa3f4fab04e3c8b084cf0ca8b29ee +msgid "See also :attr:`Role.permissions`." +msgstr "" + +#: ../../api/audit_logs.rst:318 +#: ../../api/audit_logs.rst:407 +#: b8ee17b89d06486894ada8257b51077a +#: b28c52db483d462d9a4a19cb548cb0a2 +msgid ":class:`Permissions`" +msgstr "" + +#: ../../api/audit_logs.rst:323 +#: 4da7e939e514443c8a9e16bff5eaf851 +msgid "The colour of a role." +msgstr "" + +#: ../../api/audit_logs.rst:325 +#: e2211420ff06488ca4538d66c441b2b4 +msgid "See also :attr:`Role.colour`" +msgstr "" + +#: ../../api/audit_logs.rst:327 +#: 078b52a5307145a5867e268f7dd9c91b +msgid ":class:`Colour`" +msgstr "" + +#: ../../api/audit_logs.rst:331 +#: 18e2a34ffc1243a38abe7abb91ec9011 +msgid "Whether the role is being hoisted or not." +msgstr "" + +#: ../../api/audit_logs.rst:333 +#: 762b47089d634dabbd143aad28ac6b9a +msgid "See also :attr:`Role.hoist`" +msgstr "" + +#: ../../api/audit_logs.rst:339 +#: 22f67e8949e341e9bc501a8058af5e77 +msgid "Whether the role is mentionable or not." +msgstr "" + +#: ../../api/audit_logs.rst:341 +#: 15c7f2a8346848e195fd3b084516f324 +msgid "See also :attr:`Role.mentionable`" +msgstr "" + +#: ../../api/audit_logs.rst:347 +#: 4ef6f0361cb542e7bcb23bc0dd36648e +msgid "The invite's code." +msgstr "" + +#: ../../api/audit_logs.rst:349 +#: ad1db9cf2cc04650a0c4fa67e0b2605c +msgid "See also :attr:`Invite.code`" +msgstr "" + +#: ../../api/audit_logs.rst:355 +#: 49f35564ce96413196fb574cea5bbeb8 +msgid "A guild channel." +msgstr "" + +#: ../../api/audit_logs.rst:357 +#: dee6f7b2ca214481bf352411a4127029 +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "" + +#: ../../api/audit_logs.rst:360 +#: b5c18089d22443fdb6744b7e54265149 +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "" + +#: ../../api/audit_logs.rst:364 +#: 4f4f4e2df1884936945c72e140cef320 +msgid "The user who created the invite." +msgstr "" + +#: ../../api/audit_logs.rst:366 +#: 41c0b057932f4fdb831f10a123f4f5cd +msgid "See also :attr:`Invite.inviter`." +msgstr "" + +#: ../../api/audit_logs.rst:368 +#: 9c3d05e61e0842d492250cebdc30de68 +msgid "Optional[:class:`User`]" +msgstr "" + +#: ../../api/audit_logs.rst:372 +#: 785fe8eb046342ed8e3d1820b6171fc1 +msgid "The invite's max uses." +msgstr "" + +#: ../../api/audit_logs.rst:374 +#: f23a0ed1b8764469a5363f90e504b0dd +msgid "See also :attr:`Invite.max_uses`." +msgstr "" + +#: ../../api/audit_logs.rst:380 +#: 2f7a9ebe47b24b3289f28a2af2df4064 +msgid "The invite's current uses." +msgstr "" + +#: ../../api/audit_logs.rst:382 +#: 0697b46b1b1a46ff9aa3f95a624a8f53 +msgid "See also :attr:`Invite.uses`." +msgstr "" + +#: ../../api/audit_logs.rst:388 +#: 1ccb1f8f72844dcbb048f17a94ee6a76 +msgid "The invite's max age in seconds." +msgstr "" + +#: ../../api/audit_logs.rst:390 +#: b5d3678b20594a5f815453b4f8518588 +msgid "See also :attr:`Invite.max_age`." +msgstr "" + +#: ../../api/audit_logs.rst:396 +#: ef58ca62545041cca49baa61fb343e9e +msgid "If the invite is a temporary invite." +msgstr "" + +#: ../../api/audit_logs.rst:398 +#: af67554ac8044df4a29aefb2b3401ab4 +msgid "See also :attr:`Invite.temporary`." +msgstr "" + +#: ../../api/audit_logs.rst:405 +#: dc4d674c3f28400e8361fa172b779c7a +msgid "The permissions being allowed or denied." +msgstr "" + +#: ../../api/audit_logs.rst:411 +#: 371791d7ef4e4ecb8d38a07a6070d232 +msgid "The ID of the object being changed." +msgstr "" + +#: ../../api/audit_logs.rst:417 +#: f540f674d6474fb8b63d04b273858111 +msgid "The avatar of a member." +msgstr "" + +#: ../../api/audit_logs.rst:419 +#: b836e98621804b13a085b320db564b6f +msgid "See also :attr:`User.avatar`." +msgstr "" + +#: ../../api/audit_logs.rst:425 +#: 7b62e7346b814745b8c95a4f415c9984 +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "" + +#: ../../api/audit_logs.rst:428 +#: a727ab53b80f41e0a0ff884cbb1769bf +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "" + +#: ../../api/audit_logs.rst:434 +#: 7e8d6adaf21e44bd8b352011f1bbdd86 +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "" + +#: ../../api/audit_logs.rst:437 +#: 5eea22819cb84ace84ff22d4e4eca544 +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "" + +#: ../../api/audit_logs.rst:439 +#: 26a26dcb023b4335a5401b828880afb6 +msgid ":class:`VoiceRegion`" +msgstr "" + +#: ../../api/audit_logs.rst:443 +#: aa13a908998247d5a5c6b4f1105db8d3 +msgid "The camera video quality for the voice channel's participants." +msgstr "" + +#: ../../api/audit_logs.rst:445 +#: 2f820e9c62fd44d7b4f1d67638eb6ca4 +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "" + +#: ../../api/audit_logs.rst:447 +#: 69066d43b5f045e49a33eec9ff6d02b6 +msgid ":class:`VideoQualityMode`" +msgstr "" + +#: ../../api/audit_logs.rst:451 +#: fcf66655ea9f426f9fb75681433021dd +msgid "The format type of a sticker being changed." +msgstr "" + +#: ../../api/audit_logs.rst:453 +#: bac989ca498044eba06367ab7dfa6634 +msgid "See also :attr:`GuildSticker.format`" +msgstr "" + +#: ../../api/audit_logs.rst:455 +#: 4bab0c4f82da46b0a6db49bff1ccf5cd +msgid ":class:`StickerFormatType`" +msgstr "" + +#: ../../api/audit_logs.rst:459 +#: b8ae93cb7b2d4d74af69a82dbdecd356 +msgid "The name of the emoji that represents a sticker being changed." +msgstr "" + +#: ../../api/audit_logs.rst:461 +#: 1781bca470444de9a4d6b7ab31571a47 +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "" + +#: ../../api/audit_logs.rst:467 +#: f4aabbb068064df8af5244ad049889c8 +msgid "The description of a sticker being changed." +msgstr "" + +#: ../../api/audit_logs.rst:469 +#: 13447d39e8f74a369753ce9b67583f77 +msgid "See also :attr:`GuildSticker.description`" +msgstr "" + +#: ../../api/audit_logs.rst:475 +#: 3a82a86af6b84b5f9083e815345ec579 +msgid "The availability of a sticker being changed." +msgstr "" + +#: ../../api/audit_logs.rst:477 +#: 334832529c474126b92c8c76bf7f94cc +msgid "See also :attr:`GuildSticker.available`" +msgstr "" + +#: ../../api/audit_logs.rst:483 +#: e429e343ee4040fb978dd3ace51dfd41 +msgid "The thread is now archived." +msgstr "" + +#: ../../api/audit_logs.rst:489 +#: 3624467b8c544d64929c19e279917797 +msgid "The thread is being locked or unlocked." +msgstr "" + +#: ../../api/audit_logs.rst:495 +#: 40135d8e19024baf9e887b135810e19c +msgid "The thread's auto archive duration being changed." +msgstr "" + +#: ../../api/audit_logs.rst:497 +#: 6e370527751f40e8a0852525260dcb09 +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "" + +#: ../../api/audit_logs.rst:503 +#: 49a68128a1c8419eae71d41acf3ddb55 +msgid "The default auto archive duration for newly created threads being changed." +msgstr "" + +#: ../../api/audit_logs.rst:509 +#: af1fc2690db941d7be6015fbdec83129 +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "" + +#: ../../api/audit_logs.rst:515 +#: 92b70a2eafdd47af9ae03b88a54a908a +msgid "This command's permissions were updated." +msgstr "" + +#: ../../api/audit_logs.rst:521 +#: b8dde8324c9845ac910a7aa80ee6d36b +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "" + +#: ../../api/audit_logs.rst:523 +#: c7e2046260194accae7da7099026c93e +msgid "See also :attr:`VoiceChannel.status`." +msgstr "" + +#: ../../api/audit_logs.rst:529 +#: 1028bd2d6f464ae48a24408209380e30 +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "" diff --git a/docs/build/locales/api/clients.pot b/docs/build/locales/api/clients.pot new file mode 100644 index 0000000000..c06642dcef --- /dev/null +++ b/docs/build/locales/api/clients.pot @@ -0,0 +1,3935 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/clients.rst:4 +#: 723ac37bda644d2181cb3df9c4c833f9 +msgid "Client Objects" +msgstr "" + +#: ../../api/clients.rst:7 +#: f5a4ed36d6a84272acf23c5afab0c592 +msgid "Bots" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:1 +#: 8400a3a76ec1437498368512f2bcd8e6 +msgid "Represents a discord bot." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:3 +#: 5c56ee85934b4790b06f26caec909ed9 +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:7 +#: 241bd5c3a34e4392b8a6581c2767d0a3 +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:14 +#: 76747a81bf1d4154946509eeddff1408 +msgid "The content prefixed into the default help message." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.store_url:0 +#: ../../../discord/bot.py:docstring of discord.bot.Bot:0 +#: ../../../discord/client.py:docstring of discord.Client.store_url:0 +#: ../../../discord/client.py:docstring of discord.client.Client:0 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient:0 +#: 560eb5d041474f8b93073a52bae970da +#: 5b8e12be2e2244f2b1f628987c52633e +#: 82dc8e078ca8440b98e99a943f7ad1ee +#: 5f2243a92d4c43f28cb1a2e4daf1c0c6 +#: 4b9ecfa5eb284deeb0548250176a4191 +#: 306f1e629eb74fb8897156f57deef766 +#: 7d1a0d003e9a4f24bc90817b46fa956b +#: fda9202ed81f4662b3410aefa9fee419 +#: fda9202ed81f4662b3410aefa9fee419 +#: fda9202ed81f4662b3410aefa9fee419 +#: fda9202ed81f4662b3410aefa9fee419 +msgid "type" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.store_url:5 +#: ../../../discord/bot.py:docstring of discord.bot.Bot:16 +#: ../../../discord/client.py:docstring of discord.Client.store_url:5 +#: 4ba364e8ffa94975b363bbe62943da28 +#: ba970c9790144df49b7b45acd8f64d8f +#: ba970c9790144df49b7b45acd8f64d8f +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:20 +#: f0a6d897b9a74825856b3ed0d0bdf075 +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:24 +#: 28670aa78ebf4c3895e10886d6316c0e +msgid "Optional[:class:`int`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:28 +#: dc016a35e8654b73b6546b2366030431 +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:36 +#: 7a7751b24b674cfeb944b5d46e42d6d6 +msgid "Optional[Collection[:class:`int`]]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:40 +#: 45a36a811f6a45e184e6cc9343cf8dc3 +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:45 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient:25 +#: 78e894745191469fb6df43ad5513b831 +#: 8634aab7c85847109ab9f0cddc8753e7 +msgid "Optional[List[:class:`int`]]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:49 +#: c0b305ec45b44c44834fc2584f057881 +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:54 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.is_owner:18 +#: b45762ac677e4ede8a83b12bd8bcedc0 +#: 374d768efc3849968fe9c8d012de6b22 +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:58 +#: c00ff4be197447e3964bbc0d13cb246b +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:64 +#: 1851a493f6f14c01ac9393ca67e53686 +msgid "Collection[:class:`InteractionContextType`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:68 +#: 55913631ea9743b8a11dd7c19978ef24 +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.Bot:73 +#: 0f9f34c953de411c945a851f32bc0ec7 +msgid "Collection[:class:`IntegrationType`]]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.command:1 +#: ede0ee8579c24e949538216bce9a910e +msgid "An alias for :meth:`application_command`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.command:5 +#: abc8f0b084cd401aacc2646108465bdc +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:0 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:0 +#: ../../api/clients.rst:0 +#: ad2dc10d548c40968eb973127142a32b +#: cd605e7e5962488ab3e2441535990042 +#: d26b63e1b0dd4241989d229e204c2df0 +#: 3cb58a3abe1b42c1819b2852310d653a +#: 383b7b70518e4373a487cda57b5af7e9 +#: 894ca1b95aa546fa989ebc8cdeba861f +#: 76dd9328c31b4a4f950ccd0e3951a95b +#: 50b3f627d64d43968598406f8a54b014 +#: 96723fb434f94be5a857bec15ed52438 +#: cd623e270a47436b8f61ff60505e83cf +#: 29c266428c724030856e400f0321170c +#: c846f5d2939f47388cb6d8ca7e75a1a5 +#: c938d82420ef4100a294a971ae9ed880 +#: fd85f38bdfd648178e90d9d7b75e359b +#: 59323c4d26924524b3f0a37f55605994 +#: e9d1b7d02e6341219d94f03c85af5364 +#: 8dcb3fd905cc4640a1d94643105dd392 +#: b147c7c183114833a614aa7b243e3b87 +#: e6969df24be54c1da77efc157913d736 +#: e93403a910dc4626bba9fb32741c8826 +#: 3157343eb8dc43c38f49f7485b6f3d24 +#: 54efaf79f48a481191c6c2ef7a886625 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: ab586c5a25de46ad95f31d7932fa193a +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: aa170a708a2748799b64e1d6e92be480 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: e0f6f617681043f796f22dae5afb1682 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +#: 7a83a9a6026f4952ac18057feeedb044 +msgid "Returns" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.application_command:6 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.command:9 +#: 1dac05e697c7439aacc0f377b675f758 +#: 3ac657fe5790429d993c8722d4db5e8d +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:0 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:0 +#: ../../api/clients.rst:0 +#: b5a22ed2f79040b2a8deb95f91416849 +#: d13af68c11444be193cc57060b9a1dd7 +#: a135a1aad44744079848b59aa8959a9b +#: fef47654c88e403dad85dc4284b5a5ab +#: 554f6802f4174ca49a08c4f404762728 +#: 49511cb9a7ad486a880ef83bf2b1b2e5 +#: 6587a9a35be04d6ebd805391f1cfaeae +#: 679603f71c3842ceb9ab9301877e0a68 +#: 755dcc201bf14875a0f66b9268ab8006 +#: d70f77a306c44a01b87030581102cfb4 +#: 80db389f7eb84893ab0b237312ef5b00 +#: 5572b6fc69b947b6b4a38b5a3a0919fd +#: c08ffb6b169b4e5d9ea796330e158ba4 +#: 94fb92d7017746558cdd49a5591ea65f +#: 065b24140ad64f89bb8aebb7cbaaab81 +#: 1e47d1137dd948f7a4766ae5501226cd +#: ecaa6e582e60430db9758f5ad91318c7 +#: 169835626ad247a4bcc302daabf74f2b +#: 00df3d9a2f42415fb50effb3dcc752e2 +#: 804ec08a0674477f81206af58d000d7a +#: 87d6c1142b8d4e4f84dbc4462fa8af12 +#: d01fd2e5a7ce4d7c8e3c738e2769c0b3 +#: 6a5cda973d654ea292590a860372879c +#: 47506201077a4cf2a2d31c3225e7f066 +#: 5dc7f8a955dc46239ce157d05489e188 +#: 211c294473a74b80966d5142f36889f0 +#: 655d0d4943ab4822aa21d4e4a750d74b +#: 3f756d9875684a0ebe2664b9ca14132a +#: b7ac4b96f8d2402ba0daae8c56c55910 +#: ab9ba099fcf94cbb9bb79464abb21fa8 +#: 30cedd7bc2524dcd8393358dc4220ba0 +#: 8df350c04c424a6ba39097fe0b5f8a9c +#: 802bd62917a4494ba82f62bcf514d251 +#: c813b855074d4004962e777b87bdb92b +#: 026a834fb831418abc59198052da3f3d +#: 9ea4f8399da44aaea81fb23e3636094a +#: ff2fb46d9b514c9db7c97625b6860b5f +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: ec487369222e4fca9c3158f3caec9ae7 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: 27ce0d1faae44f67b52ec5fe02ef48d2 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: 1964b28d4c46484697f52e43a3640e3d +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: 709dc58325c146ad8a210ad694c05c1d +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: aff4a87e8ab24e42a5821a9016ae8c94 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: 661ae464da8e493ebd3265ad9d14cc99 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +#: 606afb97d6624f858e67593ee96461ba +#: c776ad51021d4b88a50e1e87662bf4a5 +#: c776ad51021d4b88a50e1e87662bf4a5 +msgid "Return type" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.application_command:8 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.command:11 +#: 345ed55a66c44c4983a66090789aecc8 +#: 474ab42ae6e948239450d90239bdcbf9 +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:1 +#: 441663afc2e74b37a0ddd0c6805b8773 +#: 35cfe3da5dfe44d2995bf87aeb1a214e +msgid "A decorator that registers an event to listen to." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:3 +#: c6dc5e087bec4eac9b921c9a20528fad +#: 7d5f8e58c1464f75826c12241640cae5 +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:5 +#: b90fa4213ca24bf38c3510fa7c307036 +#: 58aa1c39e6954e56ba22f92148d0d097 +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:9 +#: e29528c36b9b4f09937e3c217970dacc +#: c1c2cb3ef1b0421ab29258750cf15303 +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:0 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:0 +#: ../../api/clients.rst:0 +#: be57f62d640d498db3acc576e8c69090 +#: 853e4bafa2c8478789b84f073f328614 +#: ad56de6ed3ee40d4b537dfd9f8bcc2c4 +#: 6ab72d7126304941a2843cd3f79e15bc +#: 4727e7dbff374a62b8a56c79dc66082d +#: 6dcc2de71d1343bc93b3f0bca6661072 +#: f7d3143efeea400d85cc0fcf45b1e15b +#: 3888f66b0d7d4eb7bfc805f9807a41d7 +#: b4b22e18c1bf40269e3dcfbaec8aae03 +#: efa73facdf57418f9086572e7be0917d +#: d365fec41ab64fd19b3077f49a1088a4 +#: 9dddf4f4551d4eb09d25088e95eed7b5 +#: 00e6bd39c7fa4184844b6f7e7afcc5ef +#: b897a699a6ae41eb83dee4e67d3b0f4a +#: e4def2a95d484a9584fa73e8d26c4d1b +#: 93af98486bf7445e9912df5e0da0b0ea +#: 6c9daf6bb4464e6cbc2c184b3ccea998 +#: 0a5f7aa535f24ca794e3c8734d4caf5f +#: 5333ac2171494bb08f73a1fad01039bf +#: cab1be0a9d7a4ab18612dc4bdf535020 +#: 378fed9230884b5e9680753fe70c3989 +#: 51511a34fb6745aab1ca324ba180e340 +#: 5dedee9ffe954a98b442886bf9d3ad82 +#: 2bb0d55c9f1e4b3489bd47b620ca3883 +#: e83bdfd3d60a4138a597146189b7446c +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 5fe56a006d574708abe19ebbaf839261 +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 923b691c5eda4326a0fe4609ae128330 +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +#: 2666501d112943b8b6641e0ee36d76ed +msgid "Raises" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.after_invoke:19 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.before_invoke:18 +#: ../../../discord/client.py:docstring of discord.client.Client.event:13 +#: a11c6d8215d44d1b970f9f4eec435480 +#: dac8224ddbd144bc80991d9f8509ae1b +#: abc0b29447334a61ab35f241b27c1a3b +#: baba393bb0ae49f19ceb10505a6118f6 +msgid "The coroutine passed is not actually a coroutine." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check:12 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check_once:18 +#: ../../../discord/bot.py:docstring of discord.client.Client.add_listener:15 +#: ../../../discord/bot.py:docstring of discord.client.Client.change_presence:16 +#: ../../../discord/client.py:docstring of discord.client.Client.add_listener:15 +#: ../../../discord/client.py:docstring of discord.client.Client.change_presence:16 +#: ../../../discord/client.py:docstring of discord.client.Client.event:16 +#: ../../../discord/client.py:docstring of discord.client.Client.listen:11 +#: 40c782af18fa4b6d95ff04ed328711de +#: 4b54c577282844ab83de80cfe4c6af2e +#: 24b2a7241cb049de8a09e3130bf59982 +#: 8afe70b1dc3e415bbcb3587ae113f646 +#: ba886c1958ae47468695dc36cd20fa30 +#: 833994483f0d48bcb79e761846317133 +#: 2d6af0e10e374eb2848aaf6af07794ca +#: 2d6af0e10e374eb2848aaf6af07794ca +#: 2d6af0e10e374eb2848aaf6af07794ca +#: 2d6af0e10e374eb2848aaf6af07794ca +msgid "Example" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:0 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:0 +#: ../../api/clients.rst:0 +#: 197545f9c6ed4c5da3e235134e4fe25a +#: 3200a85e4002416db55ed3790af21f4e +#: ff5108bb0b184c7082382a51ee4ba248 +#: 17352eb8d90a471c86796deec5f40361 +#: 3a0cbb5f03924ae4b02a402fe8156523 +#: 3c6cba4ba69e43249df187fcaeb5f207 +#: 8bf1ef24b9714c1c8e0436865b442e9a +#: a03bb4ec204c4867b740eb2c4bc3d398 +#: f706cf333c1a47f1a2976aa784a20ba9 +#: 0a0a385dda714190bf496404866e2af0 +#: db76e6d208474bfc84b77836563a197a +#: 1c0e015c47964f358c1c5adc8047b7c2 +#: 53782ddd4eb34037ad076fa1e2cdfa2e +#: c0bb632d73734973a0c9803a773856c4 +#: 76ebe78f49d5406b8bcff947b1188cda +#: b9c75f273aa84490bb67b9aacb293eb7 +#: d374bb7d88ff4ad88004319adbe16e45 +#: da55697a42454226914e63e848802002 +#: d569963daf604dc0929b2cc260f6e425 +#: 27e559c2588446bfb64518202432bf28 +#: 340efc183485425687d5238c1b4e8ee3 +#: f95bc5d223ff4f8ead1fe5ba86b4fd3a +#: cc185377777045ed8cae6a6f8d16080f +#: 566abd84b14f427a9dbe20726cd99445 +#: 029cc544048741f8a32c92d8ea711013 +#: 1995e834bfa04ce98aa43f02bd2745a4 +#: 9fd02f2306464787b89f67ed08c49f2a +#: cab4484c55b54eacba7c50e15f403e73 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: b09e7584c7924b8c878f3b38d8698fbe +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 61bdd2138a7145e49fcfbb06c5819cdc +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 944756aa81e34907af880c9ea3ddd943 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 080b97188f5a44679891cfb716d50114 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: a32d372fc9f34a179efb70f960db2fcd +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +#: 99d7d45c973e4cab836405c222bbdf74 +msgid "Parameters" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:25 +#: a4d2aa79666649ca85e4e8832e7231b4 +#: 92a9bc95fa124cc2a6481b3544402054 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.message_command:1 +#: 368652e3c875428c9e7ed908c22e2bbb +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.message_command:7 +#: 230957d3b00d465ba1057bb8dde0375d +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.message_command:9 +#: 446d89e18a984c0899a05c5dae9c9d25 +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.slash_command:1 +#: a72b3011a0c2494e95b73c91ef1bc5d8 +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.slash_command:7 +#: fa51a00b24dc4eb8b85cb16e577cd0cb +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.slash_command:9 +#: 8cb4f64fc9b842e99f656c4edc427b1c +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.user_command:1 +#: d09c64206574417eaa7824f3ba7b7070 +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.user_command:7 +#: 2a5a5484ad2640a090cb56f82cfed16f +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.user_command:9 +#: 47980633a0e74e72af51935d418cd0e5 +msgid "Callable[..., :class:`UserCommand`]" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:1 +#: 9048c5a633c04c42af7a06b523435b08 +#: b990261ea99f4f60a22b8c2f020d9aeb +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:5 +#: 5c8494eb3a3847a28ea86a13f622b0ca +#: 28112742cc894834a4199c50514e92b9 +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:7 +#: 62d1c8d54d9e4c5f8dd4f61219b254f1 +#: 7d847ee8a4554a5da695f22ce3d5313c +msgid "The function being listened to is not a coroutine." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_listener:11 +#: ../../../discord/client.py:docstring of discord.client.Client.add_listener:11 +#: ../../../discord/client.py:docstring of discord.client.Client.listen:8 +#: 05065b5c67e1401295e5b37bd9a647ce +#: eefde4a89ebe4183b4d58c68754a33a3 +#: 0b4f57fc36b548dc991b0b9d9359c3db +#: 176d61be271e4a91a68e8a2183190329 +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:29 +#: f2f041a61e2c4d96ae51fe3d10cfbc89 +#: 467abba7c2824825bf9ac0b065144559 +msgid "Would print one and two in an unspecified order." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:35 +#: 1ad893ae6d404e859a724d1384c3e12a +#: d3c9f02c02b647ffab3f8609f92bef67 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.activity:1 +#: ../../../discord/client.py:docstring of discord.Client.activity:1 +#: 6fab55fc960c41ab9946f4589469eba9 +#: e0fb8761f68647b98e67aaf36915f6df +msgid "The activity being used upon logging in." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.activity:3 +#: ../../../discord/client.py:docstring of discord.Client.activity:3 +#: a411bbe5b00c45c7a62f7f721f3d5fdd +#: 07fab2799a934430abec2938a4bcf215 +msgid "Optional[:class:`.BaseActivity`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.add_application_command:1 +#: 1c8bb7dda2c643708eff19f7c8e760ba +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.add_application_command:3 +#: 96cc010f3bdb49578bdc4e547b0bc6cc +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.add_application_command:9 +#: bafc9036dfbf4fae92be90bb73f90d70 +msgid "The command to add." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.add_application_command:12 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.invoke_application_command:10 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:26 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:55 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.add_check:10 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.on_application_command_error:14 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.remove_check:12 +#: ../../../discord/bot.py:docstring of discord.client.Client.add_listener:12 +#: ../../../discord/bot.py:docstring of discord.client.Client.add_view:20 +#: ../../../discord/bot.py:docstring of discord.client.Client.before_identify_hook:18 +#: ../../../discord/bot.py:docstring of discord.client.Client.clear:8 +#: ../../../discord/bot.py:docstring of discord.client.Client.close:6 +#: ../../../discord/bot.py:docstring of discord.client.Client.connect:18 +#: ../../../discord/bot.py:docstring of discord.client.Client.delete_invite:16 +#: ../../../discord/bot.py:docstring of discord.client.Client.login:14 +#: ../../../discord/bot.py:docstring of discord.client.Client.on_error:15 +#: ../../../discord/bot.py:docstring of discord.client.Client.remove_listener:10 +#: ../../../discord/bot.py:docstring of discord.client.Client.run:28 +#: ../../../discord/bot.py:docstring of discord.client.Client.start:11 +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_until_ready:6 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:24 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:26 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.unload_extension:27 +#: ../../../discord/client.py:docstring of discord.client.Client.add_listener:12 +#: ../../../discord/client.py:docstring of discord.client.Client.add_view:20 +#: ../../../discord/client.py:docstring of discord.client.Client.before_identify_hook:18 +#: ../../../discord/client.py:docstring of discord.client.Client.clear:8 +#: ../../../discord/client.py:docstring of discord.client.Client.close:6 +#: ../../../discord/client.py:docstring of discord.client.Client.connect:18 +#: ../../../discord/client.py:docstring of discord.client.Client.delete_invite:16 +#: ../../../discord/client.py:docstring of discord.client.Client.login:14 +#: ../../../discord/client.py:docstring of discord.client.Client.on_error:15 +#: ../../../discord/client.py:docstring of discord.client.Client.remove_listener:10 +#: ../../../discord/client.py:docstring of discord.client.Client.run:28 +#: ../../../discord/client.py:docstring of discord.client.Client.start:11 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_until_ready:6 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.change_presence:28 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.close:6 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.connect:18 +#: e593feebb1924681b8862ef74835f00c +#: 396fefe4d32b423d959c3f887cbca407 +#: f96cd92a798a4613a4949f67c608e4ba +#: 410ed683533f4e69b309b898a2e56c7d +#: 4e36c2c3e0ae4be2ba520d3da81da7b8 +#: c811a0a6a91d4b8c98daa60d8f8c78b9 +#: af1fa242a1ce4af9a40dba844bc2afb3 +#: 020ff49101bb40e38da9f516406c9bb9 +#: aeaa8913e17b4c6094e865bc4eb2758f +#: f1b8003468d840da8d87720db56a2d49 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 88c3ad85bb944f3da68503ca6321c03e +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +#: 1916ebc54d4d4a9f979821f8449a61a4 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.add_check:1 +#: 4676b197eaa64f3c8557578155cb0212 +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.add_check:5 +#: 1c565c3a3b6e4e609c1d3fef171ba6aa +msgid "The function that was used as a global check." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.add_check:7 +#: 383356d72dc04d609b99e2a0d22194d5 +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:1 +#: 469c368d1b3e4018a39712ff4c210d82 +msgid "Adds a \"cog\" to the bot." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:3 +#: 01d697723a104b94a08803b7def2ef43 +msgid "A cog is a class that has its own event listeners and commands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:7 +#: 058f78a5848240a4a363d75624ed841a +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:11 +#: 694b2692377043a5b06d75034db6aa97 +msgid "The cog to register to the bot." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:14 +#: cdf4075cfc104eb0970e8eb045d4b797 +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:14 +#: a8747915f97546c7a620d5cf9b8de8b4 +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:20 +#: 4cbbee08205341f39663cc6867ed645b +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:21 +#: c646093fb86146849becfbcaad49ea63 +msgid "An error happened during loading." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.add_cog:22 +#: 841c388e38ef4bf5bce9805ddc53a54b +msgid "A cog with the same name is already loaded." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_listener:1 +#: ../../../discord/client.py:docstring of discord.client.Client.add_listener:1 +#: 88e689f9afc241369d6babb194fc1a03 +#: 4b214f203e12429ba249629d5b435fb9 +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_listener:4 +#: ../../../discord/client.py:docstring of discord.client.Client.add_listener:4 +#: a0730900749a47e2bdda31ad8ba3f0dc +#: 9bdb658ed327483d848cf491f8b3bbb8 +msgid "The function to call." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_listener:7 +#: ../../../discord/client.py:docstring of discord.client.Client.add_listener:7 +#: c7ea41591aab47898209118e9d6aada0 +#: a4fcf86c7d864ec6867029102373ac9d +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_listener:10 +#: ../../../discord/client.py:docstring of discord.client.Client.add_listener:10 +#: ba943995cd6f4f42838a634814e22ca1 +#: a2f5ee9251644bfd97d947e158ad4764 +msgid "The ``func`` parameter is not a coroutine function." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_view:1 +#: ../../../discord/client.py:docstring of discord.client.Client.add_view:1 +#: 8fdde2412a434bc889eb2470635efba6 +#: 5bfee65c9551403997926307bfac288b +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_view:3 +#: ../../../discord/client.py:docstring of discord.client.Client.add_view:3 +#: 184b080c1ff64b3c92c2733aa9df8c75 +#: a51b4f92d6494f518fa69f07e378bc51 +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_view:9 +#: ../../../discord/client.py:docstring of discord.client.Client.add_view:9 +#: 00b0dfac3aad46efa3411ccc01fbdf2f +#: a403d4bd52ef4a1a8ab3a5f9c7f787f0 +msgid "The view to register for dispatching." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_view:12 +#: ../../../discord/client.py:docstring of discord.client.Client.add_view:12 +#: 0516f38c619c48ae8fb7173ca478d0ef +#: 46830f4ca2de4aa788ccf77849200801 +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_view:17 +#: ../../../discord/client.py:docstring of discord.client.Client.add_view:17 +#: 4c66a1b617434ebea41a052d24391a33 +#: ab74c62568f741c08aa18e7010c55481 +msgid "A view was not passed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.add_view:18 +#: ../../../discord/client.py:docstring of discord.client.Client.add_view:18 +#: 648db641fb244b8a97a98f317abbd5e4 +#: 375d822827c74905bc6957583aa1a261 +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.after_invoke:1 +#: 65f44d7ffe264126a3533d77b1464e65 +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.after_invoke:9 +#: 4781d1ab818644d08703f1bed8ce105c +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.after_invoke:16 +#: 93110892f84044658ef3957825682406 +msgid "The coroutine to register as the post-invoke hook." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.allowed_mentions:1 +#: ../../../discord/client.py:docstring of discord.Client.allowed_mentions:1 +#: 2b6755c1d276469ab419792ac6020ccf +#: d3a62f27dcc644f29fae06b98d24599f +msgid "The allowed mention configuration." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.application_command:1 +#: 3a6bb0789c0c46faa50beb35215a0bb9 +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.application_flags:1 +#: ../../../discord/client.py:docstring of discord.Client.application_flags:1 +#: 8b07e863b4da42b087185fe66a4e4782 +#: dfae6e3bc62e49a09c2ee43781c23646 +msgid "The client's application flags." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.application_id:1 +#: ../../../discord/client.py:docstring of discord.Client.application_id:1 +#: ../../../discord/client.py:docstring of discord.client.Client:27 +#: 7b81e6817aa3453dadfa039d5908f380 +#: ae7d062cf9c948289a20102ae95031b7 +#: ae7d062cf9c948289a20102ae95031b7 +msgid "The client's application ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.application_id:3 +#: ../../../discord/client.py:docstring of discord.Client.application_id:3 +#: 7d1d35144ab143c89844f2eeda5ca458 +#: 21ef281dd8344c15a68e36bf70c236bd +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:1 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:1 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:1 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.invoke_application_command:1 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:1 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:1 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:1 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:1 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.is_owner:1 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.on_application_command_error:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.application_info:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.before_identify_hook:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.change_presence:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.close:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.connect:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.create_dm:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.delete_invite:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_channel:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_skus:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_stage_instance:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_sticker:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_template:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_user:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_webhook:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_widget:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_or_fetch_user:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.login:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.on_error:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.start:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:1 +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_until_ready:1 +#: ../../../discord/client.py:docstring of discord.client.Client.application_info:1 +#: ../../../discord/client.py:docstring of discord.client.Client.before_identify_hook:1 +#: ../../../discord/client.py:docstring of discord.client.Client.change_presence:1 +#: ../../../discord/client.py:docstring of discord.client.Client.close:1 +#: ../../../discord/client.py:docstring of discord.client.Client.connect:1 +#: ../../../discord/client.py:docstring of discord.client.Client.create_dm:1 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:1 +#: ../../../discord/client.py:docstring of discord.client.Client.delete_invite:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_channel:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_premium_sticker_packs:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_skus:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_stage_instance:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_sticker:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_template:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_user:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_webhook:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_widget:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_or_fetch_user:1 +#: ../../../discord/client.py:docstring of discord.client.Client.login:1 +#: ../../../discord/client.py:docstring of discord.client.Client.on_error:1 +#: ../../../discord/client.py:docstring of discord.client.Client.start:1 +#: ../../../discord/client.py:docstring of discord.client.Client.update_role_connection_metadata_records:1 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:1 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_until_ready:1 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.change_presence:1 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.close:1 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.connect:1 +#: 41081b0ab799472fa6aa72c01266cc77 +#: 75a3908583e246ddaee8b2ab99d5b21e +#: 3796d6049f614d1a81a2102b543cdc5f +#: 8952c3a11462457c9c94503c0a1e46ce +#: e907813498d04ca58b7d80979f4f9b91 +#: cf33128256c04cc8962a75390c1ef183 +#: 9e27094ebf5a426bb1e75e62e5daa1c4 +#: b7be03d2394446469f0739f4abb91781 +#: cd4b7ea72a3442768f7f021733e96924 +#: bfcc3ff6e8824dab8f98475203a002f1 +#: 8686465f1a3d4950be5a71debbfd3d52 +#: 6bc3c19c9696465ca3f9cb5f44d223ad +#: beba0dc76f904c399cbc6333f2245f8a +#: 409b33c5bd944e0f83d05534e795141a +#: d319b5d28ca048509d872555d49cb491 +#: d393bc2fe41b44338c0bcde410e9c1eb +#: a0ccfe1ca31e44379b769024cd71c09d +#: d132c2ca5f21423d8bb2a18353e56149 +#: 5b0142abd63a4172ba647e87dbb900bb +#: 7c618e26033b4d08a8e0f007cb393a95 +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: d9eb2e4a9e234e37b248d23a246f8522 +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: 9023f922e3924c4dae0ada2a128df325 +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +#: a7ce19c3920f40ab91a7d270dfff2d0e +msgid "|coro|" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.application_info:3 +#: ../../../discord/client.py:docstring of discord.client.Client.application_info:3 +#: 5983dcd0486b4523ae227931a10b1302 +#: 47b37eeb523444a7aaecac9c8064ced9 +msgid "Retrieves the bot's application information." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.application_info:5 +#: ../../../discord/client.py:docstring of discord.client.Client.application_info:5 +#: 507ab57eb4464568979b8f115e241575 +#: 4bb7ac9a133a472bb6a3b9126cebda75 +msgid "The bot's application information." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.application_info:6 +#: ../../../discord/client.py:docstring of discord.client.Client.application_info:6 +#: 0101829855214ceca48fda193d62fa4a +#: 0abb1cb53f1d41c38d3ba45f1d0d3a03 +msgid ":class:`.AppInfo`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.application_info:8 +#: ../../../discord/client.py:docstring of discord.client.Client.application_info:8 +#: 3aa370c5983e445f88dd18e9eadbd873 +#: 60dcff8b7cff446797963d62c8f9728b +msgid "Retrieving the information failed somehow." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.before_identify_hook:3 +#: ../../../discord/client.py:docstring of discord.client.Client.before_identify_hook:3 +#: 70cb703484a24211b5f015b6c98489ed +#: 3e6d7812bab8419d863e5278f50532a6 +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.before_identify_hook:7 +#: ../../../discord/client.py:docstring of discord.client.Client.before_identify_hook:7 +#: e8ac04bf158e41c38b39991bab6fb822 +#: 345f1f0857334a8486719a08ce7b4812 +msgid "The default implementation sleeps for 5 seconds." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.before_identify_hook:12 +#: ../../../discord/client.py:docstring of discord.client.Client.before_identify_hook:12 +#: 0b6319a9e67d414e87249e03d6d63397 +#: 8445119bcdba4f689bdc7ce8bc1d16ef +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.before_identify_hook:15 +#: ../../../discord/client.py:docstring of discord.client.Client.before_identify_hook:15 +#: 2301c3d3f9404ea495a8d7650bf54425 +#: b5e6a835da3141a995d994af7efdd383 +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.before_invoke:1 +#: b720eb9a67e44dce8da52c580e698881 +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.before_invoke:9 +#: 6c74a036308e4868b73dcbcf6c9c4f50 +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.before_invoke:15 +#: fad163555b174a4d8feb1bffef917e2a +msgid "The coroutine to register as the pre-invoke hook." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.cached_messages:1 +#: ../../../discord/client.py:docstring of discord.Client.cached_messages:1 +#: cba36eb2890e435fa097ddab61040300 +#: 26517c7b15d54b3f8695eb62fbc85109 +msgid "Read-only list of messages the connected client has cached." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.change_presence:3 +#: ../../../discord/client.py:docstring of discord.client.Client.change_presence:3 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.change_presence:3 +#: d2e7ed1bee18473c8ed6a983e8028076 +#: 6114d56696924f85a50ec7eab18cea6d +#: 6114d56696924f85a50ec7eab18cea6d +msgid "Changes the client's presence." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.change_presence:6 +#: ../../../discord/client.py:docstring of discord.client.Client.change_presence:6 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.change_presence:14 +#: 6c8a13b6a2374d07bde689acfab480b4 +#: a5872f2048ac46379625289291357eca +#: a5872f2048ac46379625289291357eca +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.change_presence:9 +#: ../../../discord/client.py:docstring of discord.client.Client.change_presence:9 +#: 3abff02da97142be826bc2c4e6ca6170 +#: 6b8aeda786a9403b9d499b77b41b85d7 +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.change_presence:13 +#: ../../../discord/client.py:docstring of discord.client.Client.change_presence:13 +#: 135d8da50bfe441ba19fe730e3461b60 +#: 84986619916e40e88957ed778fedf574 +msgid "If the ``activity`` parameter is not the proper type." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.change_presence:22 +#: ../../../discord/client.py:docstring of discord.client.Client.change_presence:22 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.change_presence:10 +#: 39e909d604eb4a8c8eae94680b0f85d5 +#: 54b695951125498384300fe6b62bdf48 +#: 54b695951125498384300fe6b62bdf48 +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check:1 +#: e46f439b7bf0448db055239476cd073e +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check:7 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check_once:13 +#: 142d9d49796c4a5db2c6a4d717820700 +#: d1fddb994e6d4505b2c2a6138a60f1db +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check_once:1 +#: 2a09dda9c7114ea5a974ce9692e8315e +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check_once:8 +#: 0832766348084620af8c98ac13ee77ed +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.clear:1 +#: ../../../discord/client.py:docstring of discord.client.Client.clear:1 +#: 46113f3b59ba48888dae66daa428f6a2 +#: 664b2b67ec6147ed94b53e0140acb9ef +msgid "Clears the internal state of the bot." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.clear:3 +#: ../../../discord/client.py:docstring of discord.client.Client.clear:3 +#: b2e236d83dc34d8bb26a73a49b01369e +#: a37bc673a1b54d709b8017883bfa408f +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.close:3 +#: ../../../discord/client.py:docstring of discord.client.Client.close:3 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.close:3 +#: 78ac357893eb41058d331fbd7e21f8bf +#: 67affa321575466d843d881e79ff9660 +#: 67affa321575466d843d881e79ff9660 +msgid "Closes the connection to Discord." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.cogs:1 +#: 66c2406b4f2349e896b65819340190d4 +msgid "A read-only mapping of cog name to cog." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.connect:3 +#: ../../../discord/client.py:docstring of discord.client.Client.connect:3 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.connect:3 +#: 9b1145547fdc4c8b85b1fdffccd05849 +#: 2e2b4b77bc7549c0a05965d9694ef840 +#: 2e2b4b77bc7549c0a05965d9694ef840 +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.connect:9 +#: ../../../discord/client.py:docstring of discord.client.Client.connect:9 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.connect:9 +#: 6baf64d2338545519040319cd1847544 +#: 01fe01284ae748c8b1eddfddd1d73e21 +#: 01fe01284ae748c8b1eddfddd1d73e21 +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.connect:15 +#: ../../../discord/client.py:docstring of discord.client.Client.connect:15 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.connect:15 +#: 4f24dc57384346d0856e8fdac0a91c7a +#: e065be27c22342a28fae8bfee39dc5f6 +#: e065be27c22342a28fae8bfee39dc5f6 +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.connect:16 +#: ../../../discord/client.py:docstring of discord.client.Client.connect:16 +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.connect:16 +#: 1656a53ca10c491688df2509c3c5ff71 +#: c36b8e522ef8432ab9d32865a6f89cda +#: c36b8e522ef8432ab9d32865a6f89cda +msgid "The WebSocket connection has been terminated." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_dm:3 +#: ../../../discord/client.py:docstring of discord.client.Client.create_dm:3 +#: eaa633504af044fbbae0c5fff1734c12 +#: 4887cc26c4f94834bd314c9ad7887166 +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_dm:5 +#: ../../../discord/client.py:docstring of discord.client.Client.create_dm:5 +#: 0be38552dc6d4508b568215162fbc247 +#: 11ed5a01e6a345a0acea5e61f04b1b7b +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_dm:11 +#: ../../../discord/client.py:docstring of discord.client.Client.create_dm:11 +#: 5a3111fd82194cd2885d84958fca1132 +#: 3b1a1bf113d64c288b8703c0fdc99381 +msgid "The user to create a DM with." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_dm:14 +#: ../../../discord/client.py:docstring of discord.client.Client.create_dm:14 +#: d6fa64d947654bf7becf7fad301f0fb9 +#: 3b137326256c433f88b79dd49a47e72f +msgid "The channel that was created." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_dm:15 +#: ../../../discord/client.py:docstring of discord.client.Client.create_dm:15 +#: 4ee54b2c76694caabfe0fde5d1cd1696 +#: 78267be3de4d4d789cc656e991f10e17 +msgid ":class:`.DMChannel`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:1 +#: a20efe6647144d72911f1a64c5ddacdc +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:7 +#: 5c2158acc4a543b1b66b07320a0f767f +msgid "The name of the group to create." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:10 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:10 +#: 69af3206fe804f5ea844fa3e65c9cb7c +#: a58e962af7324b1b9e2e450d359efb44 +#: a58e962af7324b1b9e2e450d359efb44 +msgid "The description of the group to create." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:13 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:13 +#: 017330dc607446c2a51ad9824d9b6642 +#: 1013a998dd0644bf8b8ed20ec4161d3f +#: 1013a998dd0644bf8b8ed20ec4161d3f +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:17 +#: 84480e59ac654759925cb9bf3400c84a +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:19 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:17 +#: fffbb1f76152417080d7db49ca8e4c85 +#: b8bf3f05b8b94e4fae6fc0fad6b15b09 +#: b8bf3f05b8b94e4fae6fc0fad6b15b09 +msgid "The slash command group that was created." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:3 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:3 +#: 3b97fc8c08714dc0bf7cbe2a88d0fcab +#: 7f4f1601e15941c49368490691cf3ea6 +msgid "Creates a :class:`.Guild`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:5 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:5 +#: 8524eb9f26414048b1952e19fc192260 +#: 1ac9ef86b0a64b3ab8e6552798c01c97 +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:8 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:8 +#: bfd43e9bd0f34e918327fc339e37937b +#: 4b2cb528eb144e2cba9fd35944489929 +msgid "The name of the guild." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:11 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:11 +#: 62b9a65381f34c1bac438c5fd2c7ba6f +#: a9d50329ac804b2697f42d86f92f69d1 +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:15 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:15 +#: 0722a839383b4001aa95fb0d76912f04 +#: ae0f886a88eb4404898545bc4dda335e +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:15 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:15 +#: 352fe566629842ad9d6ff7432397522e +#: ac7b94c2d4aa41c4804843187d78a126 +msgid "The code for a template to create the guild with." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:20 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:20 +#: ef6b2cc2844948a6afac53df0c6c4c71 +#: 13d1e2ac49db416db0205889ed95c259 +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:22 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:26 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:22 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:26 +#: ac312b1700ba40e3ab5989b9c39cdc00 +#: a4b211d860344b6bab78f4760535fb4d +#: d09eadf06e9343dd83a47871e2abc31f +#: d09eadf06e9343dd83a47871e2abc31f +msgid ":class:`.Guild`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:24 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:24 +#: 6fa7e508b0cf4b958775cf91dac4ba35 +#: 7b2526fdc6744cc4856f38309c4dbc4a +msgid "Guild creation failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.create_guild:25 +#: ../../../discord/client.py:docstring of discord.client.Client.create_guild:25 +#: 2d01c286352d4eeba440b3662378cc26 +#: 6a0a9f3ed5d14cd1b00a6fef49d5debe +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.delete_invite:3 +#: ../../../discord/client.py:docstring of discord.client.Client.delete_invite:3 +#: 8689a2f7442c4748b0aeb3620d9cf09c +#: 10f6f332803e43be874d5efeaf273bd7 +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.delete_invite:5 +#: ../../../discord/client.py:docstring of discord.client.Client.delete_invite:5 +#: 7e2f44aeac5741c9a5a08f2da76920ba +#: 2ecfe47925ea4c04b95937a66956301a +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.delete_invite:9 +#: ../../../discord/client.py:docstring of discord.client.Client.delete_invite:9 +#: 98207a40e1a94e19afe49b181675d48a +#: 94aa506a7985410497bded0263cb03f9 +msgid "The invite to revoke." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.delete_invite:12 +#: ../../../discord/client.py:docstring of discord.client.Client.delete_invite:12 +#: d5b48d7d2a60458e8a2839ed8faa7b5d +#: 5e90c550889a4b5d9c88e6d7d7dd19bf +msgid "You do not have permissions to revoke invites." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.delete_invite:13 +#: ../../../discord/client.py:docstring of discord.client.Client.delete_invite:13 +#: 34eee7d0a7914a7a9232644c1582c652 +#: 391ab3e72dfe4609ba4322872c6ccae2 +msgid "The invite is invalid or expired." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.delete_invite:14 +#: ../../../discord/client.py:docstring of discord.client.Client.delete_invite:14 +#: e12571e8018b4226a23231a3d292f435 +#: 770d782d0e98456da7aa346f121d5ae6 +msgid "Revoking the invite failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.emojis:1 +#: ../../../discord/client.py:docstring of discord.Client.emojis:1 +#: da199159cd414e03aa393a6e7fceb015 +#: 00169447c6a94a4b82f049cb27a56946 +msgid "The emojis that the connected client has." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:1 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:1 +#: 7a582bcb64fe4e77b22294e3d86b3458 +#: 78892bf021d04c6fba29337b575b8b71 +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:6 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:6 +#: 523b5670abb24b5e88f9d7f04d5a0a9f +#: 823cffd519a2414baf1d8eb638b8a867 +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:9 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:9 +#: 47234f44f4bd4ceeb41bdc775a227c15 +#: 550d4974d8b243fcaf206b620c8a2a2f +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:12 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:12 +#: 0326acb773754d438a4581ed32136b6d +#: 66467d911b6945b5b419601784c046ee +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:17 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:17 +#: 830e0935ff744a0ea9a2a540a4a27ed3 +#: a3655982943348cc9975a45469537b6c +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:22 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:22 +#: 98a71d0d914f4fe8b2324c24a917aa28 +#: f84cf2f0b1844efc9fd51c33a704cf0e +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:27 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:27 +#: c9ef4370de624686b6d2148b7bb52dbc +#: 2effddfbbd1e45178440ec2b43ef9195 +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:30 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:30 +#: e475177db885429080f0ae2b78b72aea +#: bb876989f633431e86644669cd8d5fa9 +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.walk_application_commands:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_all_channels:0 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_all_members:0 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/client.py:docstring of discord.client.Client.get_all_channels:0 +#: ../../../discord/client.py:docstring of discord.client.Client.get_all_members:0 +#: ee8fbed1e9c64e87a77e9b4d5b4de348 +#: c5985cf01b92479d9b571d3d9dc523a8 +#: bed18856144c4cbe822ac5211c71b28a +#: bed18856144c4cbe822ac5211c71b28a +#: bed18856144c4cbe822ac5211c71b28a +#: bed18856144c4cbe822ac5211c71b28a +#: bed18856144c4cbe822ac5211c71b28a +#: bed18856144c4cbe822ac5211c71b28a +#: bed18856144c4cbe822ac5211c71b28a +msgid "Yields" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:34 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:34 +#: fd477cb2f68542529b5f28246bd2cddc +#: bba8b3a4dfed4c12acdea2989e9b7777 +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:36 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:36 +#: 2d3a2a0f88ba4346a292f010fcfac590 +#: 54a21db6d48b45ffa3147e2a18bcda3e +msgid "Retrieving the entitlements failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:37 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:37 +#: 862c6912d2294e34a06faddbf7ff0269 +#: 9ab70875d2f847f99751826f9b4fd448 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:40 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:35 +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:42 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:40 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:35 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:42 +#: 7c8cb90e915a42688bb8e0ac08a56b44 +#: 11648d97fb784d6b97497cf45bd7180f +#: f784f833af4f43caa6cf59467766ead4 +#: f784f833af4f43caa6cf59467766ead4 +#: f784f833af4f43caa6cf59467766ead4 +#: f784f833af4f43caa6cf59467766ead4 +msgid "Examples" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:41 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:36 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:41 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:36 +#: 4fcb97767a904beb9ef44f190efbd53a +#: df4744ea792246c2a87e26f7a1105f81 +#: 6a66fb7c4171403a94a25a3808826652 +#: 6a66fb7c4171403a94a25a3808826652 +msgid "Usage ::" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:46 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:41 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:46 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:41 +#: 5b7cc08b85db4b84ae5e9195194d36ba +#: 3a17f85d5c5540cf8b980d8e82b60252 +#: 0eae2453da7c4316a4e3c6d00c680cb1 +#: 0eae2453da7c4316a4e3c6d00c680cb1 +msgid "Flattening into a list ::" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.entitlements:50 +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:46 +#: ../../../discord/client.py:docstring of discord.client.Client.entitlements:50 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:46 +#: ce984edfb81a40f88475e5d768a64ec9 +#: 48fa76c559f4449a95854d789559492f +#: af1413448fd64215ad8a510b736adb91 +#: af1413448fd64215ad8a510b736adb91 +msgid "All parameters are optional." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.extensions:1 +#: 73e5dfcf598f4b738ff4cb986328a722 +msgid "A read-only mapping of extension name to extension." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_application:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_application:1 +#: c6993c8ace9a402dbd8a19399cff355a +#: aafc1168e05f45dfacd0f151bfd0bd27 +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_application:5 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_application:5 +#: cdfbd078a7e34b39bc30d2f5d3db7fef +#: d7d033a39dcd4afebf9d0f3925cb0e6c +msgid "The application ID to retrieve information from." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_application:8 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_application:8 +#: 330746db683542c0bf43295ce8a60ecb +#: 3be37066300944489855782f111f4345 +msgid "The application information." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_application:9 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_application:9 +#: 80da38d28f7a4058a9a443c380f15e07 +#: 7529d87e05374082bd884b1d1f4ce463 +msgid ":class:`.PartialAppInfo`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_application:11 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_application:11 +#: fdfab0a8ac644e918e2b868f0b80ea8a +#: 496dda7098054bb98c52eea3c43b204e +msgid "An application with this ID does not exist." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_application:12 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_application:12 +#: 6f5bdf2b2be6487f8cd5cd5d7201e238 +#: 02d838d2b1364397a167d2f5c970bf0a +msgid "Retrieving the application failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_channel:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_channel:3 +#: 709c0c6eedd44918b90f6dffa9b47f23 +#: 6a10ca6084f846de8fe3fc9c5f78d62b +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_channel:7 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_channel:7 +#: ffeb7dc3d9fe4482ab577068571db8bf +#: 16cdcc9d072042e48f37db5e1ed47d87 +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_channel:11 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_channel:11 +#: a9141c92c30443dab13cd3bfdfb3221b +#: 937ee35401e047a9ab66ca84e1baf254 +msgid "The channel from the ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_channel:12 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_channel:12 +#: e0c5c0a3312d4c5bbb8ef19d1e2f15e1 +#: fa37228bc5f741968a08a26bfccb5ca5 +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_channel:14 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_channel:14 +#: 220028234d2c4c72a8866cef69f6cedd +#: a6c6384d2bd8410393e2acd36f1996a9 +msgid "An unknown channel type was received from Discord." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_channel:15 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_channel:15 +#: 7b7c1cd63b90442e9e3e142aff758d8f +#: b2dc27e2311a468fabfd697becfb68c3 +msgid "Retrieving the channel failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_channel:16 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_channel:16 +#: 97eac6521e9a4e9dbc6cc6ecbfb97238 +#: a254f2aa7f5441fca4eb306f79aa1b44 +msgid "Invalid Channel ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_channel:17 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_channel:17 +#: d4920f83bc284b55b50a4c8f62cd4180 +#: 9d2a8c5a46854947a7a140aff9f4179f +msgid "You do not have permission to fetch this channel." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:3 +#: 8e9f4f77bac844f5a9988587c611cb9d +#: 5f3db26c62924650aecbb995c0df0be4 +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:7 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:7 +#: fc48643cd30442b68921bd961d8c4ee2 +#: 38f598930b534b0380391fdb0e89e121 +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:12 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:12 +#: 232c4e056e1641d2b6f4f6aec6a485ec +#: 84388c342305493e8a6f64446e49d160 +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:15 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:15 +#: 0edc6723fbc942dfba36ab15f4771dc3 +#: 685c61028d2d4cf580d2044aaee592a8 +msgid "The guild's ID to fetch from." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:18 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:18 +#: 3c5f0d5b44a34c12b46639235faa7ad0 +#: db45bb2c4d0a42d584ca6b8133983e77 +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:18 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:18 +#: a4245b805fa0424588c0d476c4087214 +#: 05dbc5f91edd4612b6383868c75a7ac2 +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:25 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:25 +#: 13441326e09f4c41a4b70ace65d3685a +#: 8627931b3a534dbe8c62a4be6ea82790 +msgid "The guild from the ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:28 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:28 +#: 18b98d33672748fab571d1592086006c +#: 7d2046b6b57942f7a30996be5edff639 +msgid "You do not have access to the guild." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guild:29 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guild:29 +#: ab6c8c5386cc4638a941c7e10d2114f6 +#: b5721e89196f4a1eb5342451dbaf3acb +msgid "Getting the guild failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:1 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:1 +#: 680b55c43a404490948ccf8c75056fe5 +#: 1747a97606b54d0aa85ee82fec200e5d +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:5 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:5 +#: 6b41ff587fa34dd48f92f8b2adec9ab3 +#: 479b75a91db14e1fbeb7fef18c5a04d7 +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:10 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:10 +#: 7b2ca8d29ccd472dbfe3bb09ee67cd31 +#: deb91710d7c24bc292aab5097f23b501 +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:13 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:13 +#: 656fd5be7efa4693858ddc0bba11b5c9 +#: 105f6a38a2854a7089d696c2c01dc1e1 +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:19 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:19 +#: 2e80267839e44327b92ec76be0aaf427 +#: 88e83fb93ec742deb161d4d5e6ae864b +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:24 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:24 +#: dde1d08cc27a42afa6456baeab1c4824 +#: efa2f8d80de046819cc9326f5bbe892a +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:29 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:29 +#: d8cf0096c4ea46e0ae7da1145a0b557d +#: fc6f82145b034ece99cbf37f683ceff5 +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:31 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:31 +#: 2f4a72e1186a46d9aa54d22b75e640a3 +#: 5803c971ecee4e8385d297fa6b5f134c +msgid "Getting the guilds failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_guilds:32 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_guilds:32 +#: f8744a77885f4d189fc280ec89e87d2c +#: f43bf45acca54549a46eb8b112d02268 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:3 +#: acc5f4a6a0f647dc9f8b5eaf7c539fdb +#: 8a4dcd58e0b2419aa0e9ecf1b6c7363e +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:7 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:7 +#: 163cd0bf1a67459a89e9cdb0c6c757aa +#: 2a76df09c33847cf85e73900aa59ec77 +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:12 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:12 +#: 2c47a87fed924f02ba4dbce127a2d89d +#: 116f686fb5054484a467357d6d0a399a +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:15 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:15 +#: 21da813826c74acbb3eedef11175e8f1 +#: cc56d716f1f6424aa05b7d2400368df0 +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:20 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:20 +#: 6f6b0591a01a439e9c26b6ea317b4e85 +#: 3df86f4db6f04bec94f6b943117534c9 +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:20 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:20 +#: 9a1b3e4805b1414ba7f36b8206cc700b +#: 036021a78eea4be980334bcad40f1daa +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:26 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:26 +#: 2cb15eb196524b68889c66edffb272a2 +#: aa755c7bbfc644c8a99a4e7e80d1fc25 +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:26 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:26 +#: 18b09b5aff7a4f39b50d78b9acb653fc +#: 4ffbf97d7865451fa048a6f78af2662b +msgid "The ID of the scheduled event to be associated with the event." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:28 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:28 +#: 5347b95856644909bb7dc80c9155b154 +#: 367a7984086b493ba86e0b98c9e489ec +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:34 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:34 +#: 1c9f38c89b6f4c17aede743f8c65d8aa +#: 9ee1f4aced284d4282048fb76f04f940 +msgid "The invite from the URL/ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:35 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:35 +#: 05420965d65349869d9a3fcceff2515e +#: 33169fa919a54f519ff847e567556f48 +msgid ":class:`.Invite`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:37 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:37 +#: fe1ada1d25bf4ad7bc00b849f6fa88a9 +#: a22701bb7d2f44fca24ebafd0027a019 +msgid "The invite has expired or is invalid." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_invite:38 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_invite:38 +#: a5f9c6c8318341df9f815544e2b2fc05 +#: 7acc4ef8881841d48a95e7b714968280 +msgid "Getting the invite failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_premium_sticker_packs:3 +#: b369cce5013e4d698043f69c944f8a66 +#: 1c2eae88e474467a8ef8fbe7cf172242 +msgid "Retrieves all available premium sticker packs." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:7 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_premium_sticker_packs:7 +#: c3ebd2de351c47589c35c91351a05cc8 +#: 4f91c0955a5547a393f8bca43c79326f +msgid "All available premium sticker packs." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:8 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_premium_sticker_packs:8 +#: f2c67dc53c534b0aa88697406f41a753 +#: 81d61492868a497f850b5b880d44abe8 +msgid "List[:class:`.StickerPack`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:10 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_premium_sticker_packs:10 +#: baf041eef92145928978a65d22c41d49 +#: ebdff23caff3417faec73021b95e7112 +msgid "Retrieving the sticker packs failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:3 +#: 9424f8645549490aad4b3df67690028b +#: 3f0dc3bdc3194ca39b848651a262fd94 +msgid "Fetches the bot's role connection metadata records." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:7 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:7 +#: a739439997df43e7b7db808923acb79d +#: 99df7df48d45437faa412b04790f7587 +msgid "The bot's role connection metadata records." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:8 +#: ../../../discord/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:12 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:8 +#: ../../../discord/client.py:docstring of discord.client.Client.update_role_connection_metadata_records:12 +#: ee166a08201f4183bfad8ad88c5fb320 +#: 888fcfea7fa34ba888f8c0857b965c37 +#: 888fcfea7fa34ba888f8c0857b965c37 +#: 888fcfea7fa34ba888f8c0857b965c37 +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_skus:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_skus:3 +#: 68218a4bf26b4b38b1c806c7aa61f661 +#: 1a2b6478e8804ba4afc8c56c3c05edb8 +msgid "Fetches the bot's SKUs." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_skus:7 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_skus:7 +#: 06cf0595cc3f498c8e8f41b354e358d8 +#: fb544d3f176e4037a777cec7dac26453 +msgid "The bot's SKUs." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_skus:8 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_skus:8 +#: 043327feba3d4c899a4b9e27f3ae1372 +#: b637e44776da4185981f78109a57a53a +msgid "List[:class:`.SKU`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_stage_instance:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_stage_instance:3 +#: 7a3e45f29a644f32b777d11a18579ede +#: 88b901ccfaa14a67aadcb8840bdee24c +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_stage_instance:8 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_stage_instance:8 +#: 69ca285e4a1b4e8797cec962961cc055 +#: 4e6dc6fe1ef94a269f031a4a1e4b99aa +msgid "The stage channel ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_stage_instance:11 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_stage_instance:11 +#: 7c7c97b654ed4a66a971dda8a270dcbf +#: a15055de9ad647d4b7ef7e393ca47f72 +msgid "The stage instance from the stage channel ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_stage_instance:12 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_stage_instance:12 +#: 8e0d484c75f44292bf2e50c355f77b5b +#: 87fb14043d8046d19381949784b89592 +msgid ":class:`.StageInstance`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_stage_instance:14 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_stage_instance:14 +#: e5a4d1d3aaf040398c8c0a5ac1e6dc2d +#: 3aee2cbf01044b3f8cc7af5dbe63cf79 +msgid "The stage instance or channel could not be found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_stage_instance:15 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_stage_instance:15 +#: 9be3c4f2f0164f2798360c5e220e7f50 +#: fa0d9d4bc9ec41679170d58e5edf545e +msgid "Getting the stage instance failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_sticker:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_sticker:3 +#: 584ac55387214bf0bc7655da6f2792e0 +#: 958332531bf34b229232649aaad19cef +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_sticker:7 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_sticker:7 +#: a84b7eec831d41849ecdc43cee32ae28 +#: 1363c215bc8b48139f395e234a2fdcc7 +msgid "The sticker you requested." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_sticker:8 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_sticker:8 +#: b838a91ed61b4d37be246951b8564208 +#: ee98d910070249a2afbc06c51832ab92 +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_sticker:10 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_sticker:10 +#: 50d8785227d54d73b68c6649c6fc793f +#: a3bd0412032a451d944d5040250df9a4 +msgid "Retrieving the sticker failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_sticker:11 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_sticker:11 +#: a914b8b74dff428b8217376bb44ee280 +#: a5926e5321024d8da72afc86559c5181 +msgid "Invalid sticker ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_template:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_template:3 +#: dbd91692e99f41089c24f3a1b016abe3 +#: daba7a12d12e483dabb22f3082560e2d +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_template:6 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_template:6 +#: 9cf7aeba3cf94ddfade1161921136fcd +#: 6c79dbef597949049308831126caf1cb +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_template:9 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_template:9 +#: 20002ad14d4a4ebeb50f9d4b42e9bb59 +#: 2177ade0a9194b67b6fd15a61ae13825 +msgid "The template from the URL/code." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_template:10 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_template:10 +#: f8e660d6df844ff9b6e8ca42e45a6db4 +#: 25aa61a5f6704f76bd0e63fe07fd5344 +msgid ":class:`.Template`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_template:12 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_template:12 +#: 35c845de13e349a9bd817308bd8210bb +#: bbb4e3d039e24824b2e96290ede33879 +msgid "The template is invalid." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_template:13 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_template:13 +#: 1e8fc158e4c74b9fa63f4cd6822c9190 +#: de39096b310c4930ba085499cc501be9 +msgid "Getting the template failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_user:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_user:3 +#: fc5e27dfd5df4f1083a2ce78905f137f +#: 6afa0c679eaf409a8736e07f05fb7c6d +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_user:9 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_user:9 +#: 88856ef0a1c34816a1b8126d28db55c8 +#: 80beb23cf53c40a194d929ae8c7a2876 +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_user:13 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_user:13 +#: 904c1ae5fcc14436b80548bb1f284c43 +#: 13ba7b35bdd343299351ad1b86086580 +msgid "The user's ID to fetch from." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_user:16 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_user:16 +#: f331d997dda74b7e9506f9f0858875f4 +#: 4b109491b8d94c648cd2b4a856262356 +msgid "The user you requested." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_user:17 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_user:17 +#: 84fbf23886304607b5223e4f3e827432 +#: c58aaed5b9274c23be1a82dd7b9c79c2 +msgid ":class:`~discord.User`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_user:19 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_user:19 +#: 1f026a4e35c84df8b91a677e61429aad +#: af069677ce5a4d60af85cdbbc1d89063 +msgid "A user with this ID does not exist." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_user:20 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_user:20 +#: a7894ada30514c09917ba342ff6307bf +#: da95e6f09ace4020ba25d649433bd8e3 +msgid "Fetching the user failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_webhook:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_webhook:3 +#: 7b5c3de0d5bc490583eed2148fe3adf2 +#: 449315d17af4479895749d1fc700a3f7 +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_webhook:5 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_webhook:5 +#: 79ce9e3cdd1f42a0bbdd9b54d0263d2c +#: 3d3b2a928bae48ff9d0ced39413a96a9 +msgid "The webhook you requested." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_webhook:6 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_webhook:6 +#: 0f9acb4de476421b8b66cafaad9e8d13 +#: c9bfd966d85e4f17a319e5b0e2f717cc +msgid ":class:`.Webhook`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_webhook:8 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_webhook:8 +#: 78c27258634f42bf842727095db62ee5 +#: 9383dddb8c9d4a9c96d2e2bde714702a +msgid "Retrieving the webhook failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_webhook:9 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_webhook:9 +#: 6c4a19c3d6534ae4849f4b219aab45e7 +#: 1d2f993cc43b4a0985c6521221c59f63 +msgid "Invalid webhook ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_webhook:10 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_webhook:10 +#: 38afa3e69538483c9aa15498beaf378e +#: dc3889164ad64b9b8a46fbe38f466076 +msgid "You do not have permission to fetch this webhook." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_widget:3 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_widget:3 +#: 8b4ef3067a554f3dbd79ec87d454e563 +#: c548ce9c4b524c3da67dbf74b4cc39d5 +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_widget:7 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_widget:7 +#: f3c9ea1202d04fe98848e776cc633b43 +#: d5625d54302d4637bb3b2b87d4f31e8e +msgid "The guild must have the widget enabled to get this information." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_widget:10 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_widget:10 +#: 81d3c19143e44cf2b6c178fc3d2fcc77 +#: f7f87b3361a641b49965447a1dce4229 +msgid "The ID of the guild." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_widget:13 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_widget:13 +#: 44fbd4d628244841a9214142b84ff39d +#: e741791aa8f74923af5883745587ff8c +msgid "The guild's widget." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_widget:14 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_widget:14 +#: d8bc6239ad544978978964d975b88cf8 +#: e89b25c5d0d24a838d657f9ba08a43b5 +msgid ":class:`.Widget`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_widget:16 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_widget:16 +#: aca5c6cbb697464b90cc953011ed05bc +#: e8fabc52771b436b8e0a6c27db844e38 +msgid "The widget for this guild is disabled." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.fetch_widget:17 +#: ../../../discord/client.py:docstring of discord.client.Client.fetch_widget:17 +#: 6c887b61d6214bbc89a3071595e17351 +#: 2f27c3a6ee12429694a5b67441deb3bd +msgid "Retrieving the widget failed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_all_channels:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_all_channels:1 +#: b886abcab97a46f3940f4064094180e2 +#: f32d5942653b4aeea1d89478304ac5c4 +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_all_channels:3 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_all_members:3 +#: ../../../discord/client.py:docstring of discord.client.Client.get_all_channels:3 +#: ../../../discord/client.py:docstring of discord.client.Client.get_all_members:3 +#: d5dfb16bdaa1458bb44264187f4ee38c +#: 5004a72d009b4ad48da460e3f0226d5e +#: 5004a72d009b4ad48da460e3f0226d5e +#: 5004a72d009b4ad48da460e3f0226d5e +msgid "This is equivalent to: ::" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_all_channels:11 +#: ../../../discord/client.py:docstring of discord.client.Client.get_all_channels:11 +#: 14df624bee0b4d23b1f9088155d3e882 +#: 14df624bee0b4d23b1f9088155d3e882 +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_all_channels:15 +#: ../../../discord/client.py:docstring of discord.client.Client.get_all_channels:15 +#: 5eab19fe94124dbcab31f439d0973160 +#: 5eab19fe94124dbcab31f439d0973160 +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_all_members:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_all_members:1 +#: 1e23815e30ed4e7fba2bd525936c0e85 +#: 1e23815e30ed4e7fba2bd525936c0e85 +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_all_members:9 +#: ../../../discord/client.py:docstring of discord.client.Client.get_all_members:9 +#: 71e5351f43c7453b898f2b71db1af20e +#: 71e5351f43c7453b898f2b71db1af20e +msgid ":class:`.Member` -- A member the client can see." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:1 +#: c0e500eca4654493bcbde640ebc18e15 +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:7 +#: 297eb50180c641ee936301a619fecf81 +msgid "The qualified name of the command to get." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:10 +#: 4e81f4e8177d4f1fabacd1113a61b684 +msgid "The guild ids associated to the command to get." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:13 +#: 7159cb9856244306be63c209b5f0df30 +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:16 +#: c868f574c5674690bd081cabc69cc745 +msgid "The command that was requested. If not found, returns ``None``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:17 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.remove_application_command:12 +#: c164f779fe0a43e6a2f6abf608af6f93 +#: c164f779fe0a43e6a2f6abf608af6f93 +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:3 +#: 998de8fc4fc54d12bbfd2d6293de1bee +msgid "Returns the invocation context from the interaction." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:5 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:5 +#: 3614dd7b6e5d41d1b0d77e9c10a3f598 +#: 3614dd7b6e5d41d1b0d77e9c10a3f598 +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:9 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:9 +#: 815d098582864c5aa45ebb68a53bc46b +#: 815d098582864c5aa45ebb68a53bc46b +msgid "The interaction to get the invocation context from." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:12 +#: f445ef6ad23b46aa8c7b978919888cc2 +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:17 +#: 01ec116738e84cb99e4b5d5ce4ffbfcf +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:19 +#: c55b1028898244e59c76268416abbb49 +msgid ":class:`.ApplicationContext`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:3 +#: 537bfa329bc545788890928e4531fa73 +msgid "Returns the autocomplete context from the interaction." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:12 +#: 11b0ecc315564b658e1d489d95e4e02a +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:17 +#: 1bccad822ed94d7889a324aa82d0a214 +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:19 +#: 5f3b2f2fda724232a91fda448c11ca58 +msgid ":class:`.AutocompleteContext`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_channel:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_channel:1 +#: cf283a472c614b6a97c06ca4bc4a33f0 +#: cf283a472c614b6a97c06ca4bc4a33f0 +msgid "Returns a channel or thread with the given ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_channel:4 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_emoji:4 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_guild:4 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_message:7 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_or_fetch_user:6 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_stage_instance:6 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_user:4 +#: ../../../discord/client.py:docstring of discord.client.Client.get_channel:4 +#: ../../../discord/client.py:docstring of discord.client.Client.get_emoji:4 +#: ../../../discord/client.py:docstring of discord.client.Client.get_guild:4 +#: ../../../discord/client.py:docstring of discord.client.Client.get_message:7 +#: ../../../discord/client.py:docstring of discord.client.Client.get_or_fetch_user:6 +#: ../../../discord/client.py:docstring of discord.client.Client.get_stage_instance:6 +#: ../../../discord/client.py:docstring of discord.client.Client.get_user:4 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +#: eddc2d6f8feb4541a1e35da5fb5fa865 +msgid "The ID to search for." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_channel:7 +#: ../../../discord/client.py:docstring of discord.client.Client.get_channel:7 +#: d9a90139b5c84016a67669abf356d83b +#: d9a90139b5c84016a67669abf356d83b +msgid "The returned channel or ``None`` if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_channel:8 +#: ../../../discord/client.py:docstring of discord.client.Client.get_channel:8 +#: de8a5b88032c47fa9f2e41bfa71842c3 +#: de8a5b88032c47fa9f2e41bfa71842c3 +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.get_cog:1 +#: bec15e570fa04a15b83b7ca7e3389216 +msgid "Gets the cog instance requested." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.get_cog:3 +#: 4ae249d6843649ce9819e165b69c78ff +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.get_cog:6 +#: b8d6f18d1d2c44babb0a2315fcf7c1b6 +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.get_cog:11 +#: 412532b7fda248be8233ebf2f47a3c87 +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.get_cog:12 +#: 691b6e2bdebc42878e0d4ca7bde4dfcb +msgid "Optional[:class:`Cog`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.get_command:1 +#: 64b888dc0e0641c0b11a8699ef47d0f7 +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.get_command:4 +#: 090694ded9bb48498938dd4891b64207 +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:3 +#: b1df2b0021b249f6ba711704e20aaf2c +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:7 +#: 4988c5769a7f45b093d66279aa435b31 +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:13 +#: a42aa04f99bd45e2adf79377df0fddf9 +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:16 +#: 004d26c269d948c5b29706eae2d3286e +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:19 +#: b52ea92694dc43888920b021b5ea6887 +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:22 +#: 433de8e824a84596ad4b85e75dddfb58 +msgid "List[Dict[:class:`str`, Any]]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_emoji:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_emoji:1 +#: 9525ca2de02e4964817f1a037363a3a2 +#: 9525ca2de02e4964817f1a037363a3a2 +msgid "Returns an emoji with the given ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_emoji:7 +#: ../../../discord/client.py:docstring of discord.client.Client.get_emoji:7 +#: 9c674dcf871343f694a42135680a1736 +#: 9c674dcf871343f694a42135680a1736 +msgid "The custom emoji or ``None`` if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_emoji:8 +#: ../../../discord/client.py:docstring of discord.client.Client.get_emoji:8 +#: 00d7fd8a5ae747b7a60a6c550b8c741d +#: 00d7fd8a5ae747b7a60a6c550b8c741d +msgid "Optional[:class:`.Emoji`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_guild:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_guild:1 +#: c69d0ea814a84230941d413794f573c9 +#: c69d0ea814a84230941d413794f573c9 +msgid "Returns a guild with the given ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_guild:7 +#: ../../../discord/client.py:docstring of discord.client.Client.get_guild:7 +#: e0ee40e0766047a2be7ce2f868ab810b +#: e0ee40e0766047a2be7ce2f868ab810b +msgid "The guild or ``None`` if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_guild:8 +#: ../../../discord/client.py:docstring of discord.client.Client.get_guild:8 +#: 134847e462854ae78b1f4d67f66abf09 +#: 134847e462854ae78b1f4d67f66abf09 +msgid "Optional[:class:`.Guild`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_message:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_message:1 +#: 181ecf7ccc494ba8b6465d66a0ef5483 +#: 181ecf7ccc494ba8b6465d66a0ef5483 +msgid "Returns a message the given ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_message:3 +#: ../../../discord/client.py:docstring of discord.client.Client.get_message:3 +#: 4844d10606e145829c103661a39a42a0 +#: 4844d10606e145829c103661a39a42a0 +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_message:10 +#: ../../../discord/client.py:docstring of discord.client.Client.get_message:10 +#: 876b35b70409440bbe9860921ed2bdde +#: 876b35b70409440bbe9860921ed2bdde +msgid "The returned message or ``None`` if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_message:11 +#: ../../../discord/client.py:docstring of discord.client.Client.get_message:11 +#: 909a4ebed88b418eb3fc8ad783de4fc2 +#: 909a4ebed88b418eb3fc8ad783de4fc2 +msgid "Optional[:class:`.Message`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_or_fetch_user:3 +#: ../../../discord/client.py:docstring of discord.client.Client.get_or_fetch_user:3 +#: ef34cecd55904074aadf36c69ae1a3fe +#: ef34cecd55904074aadf36c69ae1a3fe +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_or_fetch_user:9 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_user:7 +#: ../../../discord/client.py:docstring of discord.client.Client.get_or_fetch_user:9 +#: ../../../discord/client.py:docstring of discord.client.Client.get_user:7 +#: 7a08fd22da7640b392c99f8c05c6c4e6 +#: 7a08fd22da7640b392c99f8c05c6c4e6 +#: 7a08fd22da7640b392c99f8c05c6c4e6 +#: 7a08fd22da7640b392c99f8c05c6c4e6 +msgid "The user or ``None`` if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_or_fetch_user:10 +#: ../../../discord/bot.py:docstring of discord.client.Client.get_user:8 +#: ../../../discord/client.py:docstring of discord.client.Client.get_or_fetch_user:10 +#: ../../../discord/client.py:docstring of discord.client.Client.get_user:8 +#: 759defbb355844809d78aa0b07143820 +#: 759defbb355844809d78aa0b07143820 +#: 759defbb355844809d78aa0b07143820 +#: 759defbb355844809d78aa0b07143820 +msgid "Optional[:class:`~discord.User`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_partial_messageable:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_partial_messageable:1 +#: 044e87bce77b4fec8f6ad808a56bd064 +#: 044e87bce77b4fec8f6ad808a56bd064 +msgid "Returns a partial messageable with the given channel ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_partial_messageable:3 +#: ../../../discord/client.py:docstring of discord.client.Client.get_partial_messageable:3 +#: f2ce805dc0414f5a9e5a8755ea1c9643 +#: f2ce805dc0414f5a9e5a8755ea1c9643 +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_partial_messageable:9 +#: ../../../discord/client.py:docstring of discord.client.Client.get_partial_messageable:9 +#: c8479fc87aa246648dbeeb0dc0bd2523 +#: c8479fc87aa246648dbeeb0dc0bd2523 +msgid "The channel ID to create a partial messageable for." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_partial_messageable:12 +#: ../../../discord/client.py:docstring of discord.client.Client.get_partial_messageable:12 +#: 56b0308cd9eb42b28481f6a554cd5570 +#: 56b0308cd9eb42b28481f6a554cd5570 +msgid "The underlying channel type for the partial messageable." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_partial_messageable:15 +#: ../../../discord/client.py:docstring of discord.client.Client.get_partial_messageable:15 +#: dcf7536cc4744aa9b4c7648d2327410f +#: dcf7536cc4744aa9b4c7648d2327410f +msgid "The partial messageable" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_partial_messageable:16 +#: ../../../discord/client.py:docstring of discord.client.Client.get_partial_messageable:16 +#: daa543ad6df34e43a2d9864afb81d0d8 +#: daa543ad6df34e43a2d9864afb81d0d8 +msgid ":class:`.PartialMessageable`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_poll:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_poll:1 +#: f33a04665ff84187a4db076f2d509d54 +#: f33a04665ff84187a4db076f2d509d54 +msgid "Returns a poll attached to the given message ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_poll:4 +#: ../../../discord/client.py:docstring of discord.client.Client.get_poll:4 +#: fce34a83deb34fb09d2fb065f7e9aabc +#: fce34a83deb34fb09d2fb065f7e9aabc +msgid "The message ID of the poll to search for." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_poll:7 +#: ../../../discord/client.py:docstring of discord.client.Client.get_poll:7 +#: 9e724f2a11ec44c4869443876f200c94 +#: 9e724f2a11ec44c4869443876f200c94 +msgid "The poll or ``None`` if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_poll:8 +#: ../../../discord/client.py:docstring of discord.client.Client.get_poll:8 +#: c742fb9939e244578e66f27785b9e0b3 +#: c742fb9939e244578e66f27785b9e0b3 +msgid "Optional[:class:`.Poll`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_stage_instance:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_stage_instance:1 +#: 3d786cc212a44afea512d29b0e007d4e +#: 3d786cc212a44afea512d29b0e007d4e +msgid "Returns a stage instance with the given stage channel ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_stage_instance:9 +#: ../../../discord/client.py:docstring of discord.client.Client.get_stage_instance:9 +#: d433f0da2b6945b390f4785d5e45686d +#: d433f0da2b6945b390f4785d5e45686d +msgid "The stage instance or ``None`` if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_stage_instance:10 +#: ../../../discord/client.py:docstring of discord.client.Client.get_stage_instance:10 +#: 2c039b3d063d4d5daad23166bc2998bc +#: 2c039b3d063d4d5daad23166bc2998bc +msgid "Optional[:class:`.StageInstance`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_sticker:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_sticker:1 +#: f10646f6188b45e79224058f73d2f2a8 +#: f10646f6188b45e79224058f73d2f2a8 +msgid "Returns a guild sticker with the given ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_sticker:7 +#: ../../../discord/client.py:docstring of discord.client.Client.get_sticker:7 +#: c15a89f27028488cb7b2336b8063f854 +#: c15a89f27028488cb7b2336b8063f854 +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_sticker:10 +#: ../../../discord/client.py:docstring of discord.client.Client.get_sticker:10 +#: a8df3300fa7947d1885ff98542d67aeb +#: a8df3300fa7947d1885ff98542d67aeb +msgid "The sticker or ``None`` if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_sticker:11 +#: ../../../discord/client.py:docstring of discord.client.Client.get_sticker:11 +#: 6340a201b4ee40d08e8349272ea2eb4f +#: 6340a201b4ee40d08e8349272ea2eb4f +msgid "Optional[:class:`.GuildSticker`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.get_user:1 +#: ../../../discord/client.py:docstring of discord.client.Client.get_user:1 +#: ad521edf83024b639b0931097a70fbc6 +#: ad521edf83024b639b0931097a70fbc6 +msgid "Returns a user with the given ID." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:1 +#: 3534240b400047cf99d43a0882749281 +#: 3534240b400047cf99d43a0882749281 +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:7 +#: 12eda575d2994bb9b8ec76bc781e2b9f +#: 12eda575d2994bb9b8ec76bc781e2b9f +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.guilds:1 +#: ../../../discord/client.py:docstring of discord.Client.guilds:1 +#: 2f2a3e8f246c4f30b877af0e3e88001b +#: 2f2a3e8f246c4f30b877af0e3e88001b +msgid "The guilds that the connected client is a member of." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.intents:1 +#: ../../../discord/client.py:docstring of discord.Client.intents:1 +#: 21faa16203234f99a69b91b463601bd2 +#: 21faa16203234f99a69b91b463601bd2 +msgid "The intents configured for this connection." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.invoke_application_command:3 +#: 0fef6661f4904fc584c2c3c675c11684 +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.invoke_application_command:7 +#: 10f77b8bbb3042e09dc3daf5dd79b208 +msgid "The invocation context to invoke." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.is_closed:1 +#: ../../../discord/client.py:docstring of discord.client.Client.is_closed:1 +#: 1195a817f20744f69117a573c7f4c5d1 +#: 1195a817f20744f69117a573c7f4c5d1 +msgid "Indicates if the WebSocket connection is closed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.is_closed:4 +#: ../../../discord/bot.py:docstring of discord.client.Client.is_ready:4 +#: ../../../discord/client.py:docstring of discord.client.Client.is_closed:4 +#: ../../../discord/client.py:docstring of discord.client.Client.is_ready:4 +#: 1044d7a76781488d8e388f935f5d4867 +#: 1044d7a76781488d8e388f935f5d4867 +#: 1044d7a76781488d8e388f935f5d4867 +#: 1044d7a76781488d8e388f935f5d4867 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.is_owner:3 +#: 659c6943644c45f6b44ac33cc1d9896e +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.is_owner:6 +#: 3e69877b74ed48cab87f6fe3ec2f5bbd +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.is_owner:9 +#: 6872f8c9608949fab7ac89cb5072f36d +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.is_owner:14 +#: 784e3a78f66b4c67b2252bda0ab50130 +msgid "The user to check for." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.is_owner:17 +#: af103a9120b341d7ac2dc05f2fc6b7f0 +msgid "Whether the user is the owner." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.is_ready:1 +#: ../../../discord/client.py:docstring of discord.client.Client.is_ready:1 +#: e491ff5681a44d58918b01dea27ff898 +#: e491ff5681a44d58918b01dea27ff898 +msgid "Specifies if the client's internal cache is ready for use." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.is_ws_ratelimited:1 +#: ../../../discord/client.py:docstring of discord.client.Client.is_ws_ratelimited:1 +#: 1d19112534464592be462f4549362eed +#: 1d19112534464592be462f4549362eed +msgid "Whether the WebSocket is currently rate limited." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.is_ws_ratelimited:3 +#: ../../../discord/client.py:docstring of discord.client.Client.is_ws_ratelimited:3 +#: 62af1fa7dcf84492b242000ea4241503 +#: 62af1fa7dcf84492b242000ea4241503 +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.latency:1 +#: ../../../discord/client.py:docstring of discord.Client.latency:1 +#: ../../../discord/shard.py:docstring of discord.AutoShardedClient.latency:1 +#: c5ab6840e90349f19ce335c373c2303d +#: c5ab6840e90349f19ce335c373c2303d +#: c5ab6840e90349f19ce335c373c2303d +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.latency:3 +#: ../../../discord/client.py:docstring of discord.Client.latency:3 +#: 421f8b497847440fbd6dbe4be0a01720 +#: 421f8b497847440fbd6dbe4be0a01720 +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:1 +#: 026aa7d6f31d4990a7b349b52d1e57ac +msgid "Loads an extension." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:3 +#: 443fb754e9e4450d9ba7b4c49645dd5d +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:6 +#: eb4cd6b235244515b0c8d247f851230e +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:10 +#: e954aa1ba2b04355a43ce15be4b3c1a6 +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:14 +#: b4709a5104a8400c9ac23f133549b6c6 +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:19 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:12 +#: 2fd13f9b72724c3a93c62cbf7ce3e595 +#: 2fd13f9b72724c3a93c62cbf7ce3e595 +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:19 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:12 +#: d98754a427e84ae682ce85cdb8557bec +#: d98754a427e84ae682ce85cdb8557bec +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:27 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:20 +#: 4872f607b11d4176b8657dc8de35a45e +#: 4872f607b11d4176b8657dc8de35a45e +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:27 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:20 +#: 235222cbb8c44095937e8b67a59eba52 +#: 235222cbb8c44095937e8b67a59eba52 +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:34 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:27 +#: e1406c82b3ec42d7ba4f1a9a7f0bc9d8 +#: e1406c82b3ec42d7ba4f1a9a7f0bc9d8 +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:34 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:27 +#: 287d8e3cd45341309195aa3dd7ab8c94 +#: 287d8e3cd45341309195aa3dd7ab8c94 +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:45 +#: 099c61d1269b47109fe9e3a1cc10e009 +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:51 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:44 +#: 83832163d58347d7a6e6af84f4c8e4fb +#: 83832163d58347d7a6e6af84f4c8e4fb +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:53 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:22 +#: 85002126743f4f13988ae3b6842068e6 +#: 85002126743f4f13988ae3b6842068e6 +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:54 +#: a5a3724f3d244704959a79b59e34abc0 +msgid "The extension is already loaded." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:55 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:23 +#: 67911d91ed4a43efbe1e31b46fc74e6d +#: 67911d91ed4a43efbe1e31b46fc74e6d +msgid "The extension does not have a setup function." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extension:56 +#: 8f842e56308f4d1c88c47684ea45314f +msgid "The extension or its setup function had an execution error." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:1 +#: a760357f52544ed481412457c04c3803 +msgid "Loads multiple extensions at once." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:3 +#: fdfb6f2448094adf9318c69174beeeea +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:7 +#: f8a0970ba0114e93b9b61f4b6528e11c +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:38 +#: b5fb058740df4f5697c3610201853111 +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:46 +#: bfa57369a86a4cda8d1bd669bb3f567b +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:47 +#: c65a8880c6e24c0ba423274ba3ab9e74 +msgid "A given extension is already loaded." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:48 +#: 066e528badfb4c9081642380ae4c0118 +msgid "A given extension does not have a setup function." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.load_extensions:49 +#: cf251565d0a04577a80b44ef3a0c45ae +msgid "A given extension or its setup function had an execution error." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.login:3 +#: ../../../discord/client.py:docstring of discord.client.Client.login:3 +#: 049a0834b6b047f99314936f2f1163ba +#: 049a0834b6b047f99314936f2f1163ba +msgid "Logs in the client with the specified credentials." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.login:6 +#: ../../../discord/client.py:docstring of discord.client.Client.login:6 +#: 37485eb978c94d0ab2f8e20f3c9d44f0 +#: 37485eb978c94d0ab2f8e20f3c9d44f0 +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.login:10 +#: ../../../discord/client.py:docstring of discord.client.Client.login:10 +#: 441a4bc07886491dbe40a2d51a9d6027 +#: 441a4bc07886491dbe40a2d51a9d6027 +msgid "The token was in invalid type." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.login:11 +#: ../../../discord/client.py:docstring of discord.client.Client.login:11 +#: e47b353c4c374b69a0516a6c01b5f5db +#: e47b353c4c374b69a0516a6c01b5f5db +msgid "The wrong credentials are passed." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.login:12 +#: ../../../discord/client.py:docstring of discord.client.Client.login:12 +#: b7bea11ed3954e4d8bb8ceba44c2c5a3 +#: b7bea11ed3954e4d8bb8ceba44c2c5a3 +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.on_application_command_error:3 +#: 9bd06ccb118d45cfade916f4c2e9e09d +msgid "The default command error handler provided by the bot." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.on_application_command_error:5 +#: c577795c8bcb40caae05540580226588 +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.on_application_command_error:8 +#: 14d54c8c45da4b1ea8ea9a527ef62098 +msgid "This only fires if you do not specify any listeners for command error." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.on_error:3 +#: ../../../discord/client.py:docstring of discord.client.Client.on_error:3 +#: 57179a6f7b13404b8d698521898a6d9c +#: 57179a6f7b13404b8d698521898a6d9c +msgid "The default error handler provided by the client." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.on_error:5 +#: ../../../discord/client.py:docstring of discord.client.Client.on_error:5 +#: 58a09ed6103242578e6f09b9c61c0f17 +#: 58a09ed6103242578e6f09b9c61c0f17 +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.persistent_views:1 +#: ../../../discord/client.py:docstring of discord.Client.persistent_views:1 +#: 0ddbaefb41734b77ad0d3ad0792c3d18 +#: 0ddbaefb41734b77ad0d3ad0792c3d18 +msgid "A sequence of persistent views added to the client." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.polls:1 +#: ../../../discord/client.py:docstring of discord.Client.polls:1 +#: 7052b64d58da473a956cb108172efa05 +#: 7052b64d58da473a956cb108172efa05 +msgid "The polls that the connected client has." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.private_channels:1 +#: ../../../discord/client.py:docstring of discord.Client.private_channels:1 +#: c2acbbccabb944aeb2cfcdebcfaaa94c +#: c2acbbccabb944aeb2cfcdebcfaaa94c +msgid "The private channels that the connected client is participating on." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.private_channels:5 +#: ../../../discord/client.py:docstring of discord.Client.private_channels:5 +#: c9cd8785f1e7403e86e3a939de337f91 +#: c9cd8785f1e7403e86e3a939de337f91 +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:3 +#: 21363eab134d440382c795173dd057c0 +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:7 +#: b02242879b784c65ac623cbda25aee83 +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:11 +#: 5a7f80f98b7445e0bbe1ffbaf4f75a5c +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:18 +#: 5eba8aff592647dbb428a36b08475afc +msgid "The interaction to process" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:21 +#: 098da280f563492c8010c8ad52ae3b46 +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:3 +#: 6fb0bc75b4244e36896183264590e7f1 +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:7 +#: 4ea2920e2db64df6859efe1b1f524b48 +msgid "The command to register." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:10 +#: 8b8d635e6e8d4e7c8a3aed8d2b2113e4 +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:14 +#: 4da5da38c13c4cce84fa4a5f1324b431 +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:18 +#: 84a8824b3dbc412281a70609fb40e4db +msgid "The command that was registered" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:19 +#: a32da6d17c784b489e12a5b06559a374 +msgid ":class:`~.ApplicationCommand`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:3 +#: fbe13cfdf4c344ce8845196b3c9c308c +msgid "Register a list of commands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:8 +#: de60834094264c87b010a83d28ef3a31 +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:11 +#: f7d13a7b72ee45829b22b9d1d4115004 +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:15 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:30 +#: 8033302734aa4ce0a6cb372c445cdb12 +#: 8033302734aa4ce0a6cb372c445cdb12 +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:20 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:35 +#: 8faca78fa87f4d3bb12fb70fd01d35e3 +#: 8faca78fa87f4d3bb12fb70fd01d35e3 +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:24 +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:52 +#: 7a51594d4dce42bc92a656b664696dce +#: 7a51594d4dce42bc92a656b664696dce +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:27 +#: 954c934a3ae542bd8e48d65c6872c37f +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:1 +#: b99435e52b874c98861200f494f1266a +msgid "Atomically reloads an extension." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:3 +#: eb3fc9d30ad248d59bc53b98fd0a8110 +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:9 +#: 11271e1cdfbf422bb9d35cef4a1a2622 +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:14 +#: f0dc77f6bc6744e08e89bd30c7719544 +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:14 +#: c257e5f934bd4c41ab4bd9003112a5d5 +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:21 +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.unload_extension:25 +#: b2947b8e3f1d42259d4d6afe1406758d +#: 4cb97699dc1f4e5b9f7c75d398086528 +msgid "The extension was not loaded." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.reload_extension:24 +#: a2829fe98fe748338b65015d93fc299a +msgid "The extension setup function had an execution error." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.remove_application_command:1 +#: 94d9dca4e09f47bcbb41742185f8a778 +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.remove_application_command:7 +#: a272e12723b0440e8cdd4b64dd581be0 +msgid "The command to remove." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.remove_application_command:10 +#: 5c3fa5ba0e24446ca0c5d451ab0d7ef3 +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.remove_check:1 +#: 318002b550784a58a407ca8a6ea60975 +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.remove_check:6 +#: ac0f014b030846a4886347653f09eae7 +msgid "The function to remove from the global checks." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.remove_check:8 +#: 5ccca55b893a4ce196b56ac7b4bf3fea +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.remove_cog:1 +#: afc46aa053de44acac79848d8a4d48bd +msgid "Removes a cog from the bot and returns it." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.remove_cog:3 +#: 8760d9d2494745fd8c2bbf789078f622 +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.remove_cog:6 +#: a6da2cef0f344cbc97b69314e265bf25 +msgid "If no cog is found then this method has no effect." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.remove_cog:9 +#: 206390d6458e4be89131c95feaa9c242 +msgid "The name of the cog to remove." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.remove_cog:12 +#: 079d5ea3e3c547edb0104884b59c1d1d +msgid "The cog that was removed. ``None`` if not found." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.remove_cog:13 +#: 10349ef7943d47cf9ee8c96d7a3e3f09 +msgid "Optional[:class:`.Cog`]" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.remove_listener:1 +#: ../../../discord/client.py:docstring of discord.client.Client.remove_listener:1 +#: f402b73bece24cc49036238c228a2cf6 +#: f402b73bece24cc49036238c228a2cf6 +msgid "Removes a listener from the pool of listeners." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.remove_listener:4 +#: ../../../discord/client.py:docstring of discord.client.Client.remove_listener:4 +#: 0ae89918698b491f89b9233a129a1897 +#: 0ae89918698b491f89b9233a129a1897 +msgid "The function that was used as a listener to remove." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.remove_listener:6 +#: ../../../discord/client.py:docstring of discord.client.Client.remove_listener:6 +#: 515f9c536b89476fba576f7ce5614414 +#: 515f9c536b89476fba576f7ce5614414 +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.run:1 +#: ../../../discord/client.py:docstring of discord.client.Client.run:1 +#: 571249fef8cd45c2981975498a4e7851 +#: 571249fef8cd45c2981975498a4e7851 +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.run:4 +#: ../../../discord/client.py:docstring of discord.client.Client.run:4 +#: 2106434fbe294fed9159326a73846c02 +#: 2106434fbe294fed9159326a73846c02 +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.run:8 +#: ../../../discord/client.py:docstring of discord.client.Client.run:8 +#: bf32743d60dc4a47b2809974b262f96b +#: bf32743d60dc4a47b2809974b262f96b +msgid "Roughly Equivalent to: ::" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.run:20 +#: ../../../discord/client.py:docstring of discord.client.Client.run:20 +#: 5068dc186f7d4b5c98caaa8752b6b428 +#: 5068dc186f7d4b5c98caaa8752b6b428 +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.start:3 +#: ../../../discord/client.py:docstring of discord.client.Client.start:3 +#: 904fe45f358146e683fec60eee80c2e5 +#: 904fe45f358146e683fec60eee80c2e5 +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.start:5 +#: ../../../discord/client.py:docstring of discord.client.Client.start:5 +#: 02034fb9cb9c44b7810a0d146353bf07 +#: 02034fb9cb9c44b7810a0d146353bf07 +msgid "An unexpected keyword argument was received." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.status:1 +#: ../../../discord/client.py:docstring of discord.Client.status:1 +#: ab9038811b594d4ea2ea96f42440f117 +#: ab9038811b594d4ea2ea96f42440f117 +msgid "The status being used upon logging on to Discord." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.stickers:1 +#: ../../../discord/client.py:docstring of discord.Client.stickers:1 +#: b39bab7b652b4d4f98cf18b2b9db6484 +#: b39bab7b652b4d4f98cf18b2b9db6484 +msgid "The stickers that the connected client has." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.store_url:1 +#: ../../../discord/client.py:docstring of discord.Client.store_url:1 +#: 4a2351568c31486793eb53e153daa658 +#: 4a2351568c31486793eb53e153daa658 +msgid "The URL that leads to the application's store page for monetization." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:3 +#: e41ee7cfb81d4efbb82555468a565e3b +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:8 +#: af342759879c41d2b37da067dc43b3fb +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:20 +#: ee42e6eda6db4919b8cbd51d9980a031 +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:27 +#: d9a16639758842dc8da3fb43f1016194 +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:39 +#: 4e2c5bcbf6fa4e04bb1a21be03790c07 +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:43 +#: c7ee914bd75d468a8a9831931c65076e +msgid "Whether to register guild commands. Defaults to True." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:46 +#: 774275396f9e4845a5555975a19daa76 +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.unload_extension:1 +#: 911175a53ba24fc4a4c0ba2d0cf64aa2 +msgid "Unloads an extension." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.unload_extension:3 +#: be8975adc11947f5a3b07d92c76bc7f5 +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.unload_extension:6 +#: 7d49b0308c7541fb82f6fbecf79a8108 +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.unload_extension:12 +#: 86a50feef9e14adaba9477a06f226bf1 +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.unload_extension:17 +#: c6b000d16a9943f4be19931fa26a7326 +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.unload_extension:17 +#: 323fe63c4de8498e9c77dbd7765d0be5 +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.cog.CogMixin.unload_extension:24 +#: 017dba9563364359a4934fe0a812245f +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:3 +#: ../../../discord/client.py:docstring of discord.client.Client.update_role_connection_metadata_records:3 +#: 6f4ba32dcd474a5bb21ddc0448b64cc8 +#: 6f4ba32dcd474a5bb21ddc0448b64cc8 +msgid "Updates the bot's role connection metadata records." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:8 +#: ../../../discord/client.py:docstring of discord.client.Client.update_role_connection_metadata_records:8 +#: f35e47ae72cb45fbbd43a5849db2f4ed +#: f35e47ae72cb45fbbd43a5849db2f4ed +msgid "The new metadata records to send to Discord." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:11 +#: ../../../discord/client.py:docstring of discord.client.Client.update_role_connection_metadata_records:11 +#: 157edf86c4214bac9cc97778a341cb81 +#: 157edf86c4214bac9cc97778a341cb81 +msgid "The updated role connection metadata records." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.user:1 +#: ../../../discord/client.py:docstring of discord.Client.user:1 +#: a88e758c5a764f1b9008d208a82a5baf +#: a88e758c5a764f1b9008d208a82a5baf +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.users:1 +#: ../../../discord/client.py:docstring of discord.Client.users:1 +#: 6d3be79316ad4aed8e4440853891714e +#: 6d3be79316ad4aed8e4440853891714e +msgid "Returns a list of all the users the bot can see." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.voice_clients:1 +#: ../../../discord/client.py:docstring of discord.Client.voice_clients:1 +#: b67ba7a02b43409aaa2626f955f79fd2 +#: b67ba7a02b43409aaa2626f955f79fd2 +msgid "Represents a list of voice connections." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.Bot.voice_clients:3 +#: ../../../discord/client.py:docstring of discord.Client.voice_clients:3 +#: 9075a14b38ea45a6b0a11e551ef621f2 +#: 9075a14b38ea45a6b0a11e551ef621f2 +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:3 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:3 +#: 6487197b421c48bba8784b3fa1ff4ac9 +#: 6487197b421c48bba8784b3fa1ff4ac9 +msgid "Waits for a WebSocket event to be dispatched." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:5 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:5 +#: 0b048b61ad98439db8940a4d2d8d3701 +#: 0b048b61ad98439db8940a4d2d8d3701 +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:9 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:9 +#: 689487a846eb47e093ba8e1d91517750 +#: 689487a846eb47e093ba8e1d91517750 +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:14 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:14 +#: 0cef96bb40b84218860e67a2b01b3370 +#: 0cef96bb40b84218860e67a2b01b3370 +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:19 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:19 +#: ee2bd0327d864fb28565cad59831a983 +#: ee2bd0327d864fb28565cad59831a983 +msgid "This function returns the **first event that meets the requirements**." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:22 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:22 +#: cd139f56acdc485595a3eb1113c5e0ff +#: cd139f56acdc485595a3eb1113c5e0ff +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:26 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:26 +#: 41e9fd8669df481ba87c83815fb92f01 +#: 41e9fd8669df481ba87c83815fb92f01 +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:30 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:30 +#: b5ccde8f18c74e6e8939f7d64c2241f9 +#: b5ccde8f18c74e6e8939f7d64c2241f9 +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:34 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:34 +#: ea5b0123a5434897907777cc1da3e32b +#: ea5b0123a5434897907777cc1da3e32b +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:39 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:39 +#: fe1e49bf56f0410eb7b43d04fc145ddd +#: fe1e49bf56f0410eb7b43d04fc145ddd +msgid "Raised if a timeout is provided and reached." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:43 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:43 +#: fbf53c322b9b4a2190fb5211f9148bfe +#: fbf53c322b9b4a2190fb5211f9148bfe +msgid "Waiting for a user reply: ::" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_for:57 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_for:57 +#: 3f2b62ede5b54e9cadcfbb3edf7e3f81 +#: 3f2b62ede5b54e9cadcfbb3edf7e3f81 +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.client.Client.wait_until_ready:3 +#: ../../../discord/client.py:docstring of discord.client.Client.wait_until_ready:3 +#: 374ebcd380c14eaebda917973c9c27a6 +#: 374ebcd380c14eaebda917973c9c27a6 +msgid "Waits until the client's internal cache is all ready." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.walk_application_commands:1 +#: 27b08f7dc25947a086a2feceb0523df6 +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.ApplicationCommandMixin.walk_application_commands:3 +#: 5492eec6b734488c9e67946a7180b89a +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.AutoShardedBot:1 +#: 61133e69adc34f46b680972b64aba970 +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "" + +#: ../../api/clients.rst:39 +#: 9483ed2b1c48482885c0ca1eb34130ec +msgid "Clients" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:1 +#: bf69e7a4021a45c8a77931f74ed76550 +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:4 +#: 5c069020781a42fe96c83e24a1f6c3c4 +msgid "A number of options can be passed to the :class:`Client`." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:6 +#: a05ad8a60fa94a36be6482dc51364684 +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:6 +#: c9df9a316415445bbda61e5dc12eea71 +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:9 +#: c3595a83fa414fa58ebb0c3fe72870c4 +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:13 +#: 6c88dd4b014e4fd68019bf91e0e79449 +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:17 +#: 21cc11771cf14b8482b82ed348a0bcc9 +msgid "The connector to use for connection pooling." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:19 +#: 36e77ef20089453bad2c58061b76319e +msgid "Proxy URL." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:21 +#: 2bca727e64604375afc0316e0da77488 +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:23 +#: 22b22764dfe94753af363b0e2e855b53 +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:25 +#: 2994835195fe455b9ba97aa0bf93c946 +msgid "The total number of shards." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:29 +#: 0cbc330e9f874100a24ecdd7f73bf8bb +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:29 +#: f78cb44c1747402fa0d2daa48076c449 +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:35 +#: d1e04968f26046eb83cc40c32fffbce4 +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:35 +#: 1cf5a217e1c448509380cd0675ac2861 +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:41 +#: 839eb639389f4e90bcaf5390534f7254 +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:41 +#: 4ac529aded574578a8be71ceea066b6d +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:48 +#: ff86deee1e964eff876d58a0c1bf9af1 +msgid "A status to start your presence with upon logging on to Discord." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:50 +#: 595862fc879e41dbbdea585be33d1345 +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:52 +#: faae2eb41a6849ea931db8d8e3b6fd1c +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:52 +#: 58dbe8273cff49848baf5100136b8653 +msgid "Control how the client handles mentions by default on every message sent." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:56 +#: 9ed5eed0c42248ab820b06215b9b5a69 +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:61 +#: 69d65080cec044e7b6455edd4a0c6db6 +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:61 +#: 061fbfc2e3974aefa0e85a933b169164 +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:66 +#: b43e4d9978ea452bad0b3f920634f71a +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:66 +#: 8431257445754fb5ba6f8bd670885610 +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:74 +#: a151867e23f44624b83429102b15a98e +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:74 +#: 70630f12d1544afaa766f261e18e28ac +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:76 +#: 0914818f05e04728aa8d77f5b0d51043 +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:85 +#: c72989c35e494798868c418761624dc3 +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:89 +#: bfdaca2ce94b47c491227ce955d6ef14 +msgid "The event loop that the client uses for asynchronous operations." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client:91 +#: 49f2ebafe64e46af80bdc5670f75ec65 +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient:1 +#: 3cb35c3f35cd4b2ca42e62e2da4cb21d +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient:5 +#: b5375ea69da64b3caa024a700394b923 +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient:10 +#: b23af5d33cea44b7a27c7209f321f2b5 +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient:13 +#: d4eaadf814124f55ab556462d4fbb97a +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient:16 +#: b8867ec06a244683a091e3779cb7d564 +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient:23 +#: 154cb8641e7546fb9fa4fbaf26b840aa +msgid "An optional list of shard_ids to launch the shards with." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.AutoShardedClient.latency:3 +#: 45591084a7f244f081d9f18faeb96673 +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.AutoShardedClient.latencies:1 +#: 619ba050e1e849f6b4c984c0fe32b011 +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.AutoShardedClient.latencies:4 +#: 97f9a62dd3ed4c80a81751723a8c7204 +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.get_shard:1 +#: e94acc6e90f1417a98be41ad60b4db51 +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.get_shard:5 +#: dee98d04bb7d49cc82b8b1641fe586b4 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.AutoShardedClient.shards:1 +#: 7d75d87d0698427b8f520c5d1481e427 +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.change_presence:5 +#: fe09ce2894fb435bb45e56115918a23c +msgid "Example: ::" +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.change_presence:17 +#: 3804449bf2294064adf9b2e5b242eb29 +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.change_presence:21 +#: 3d9cee2a830946a296dafe6d7f539aa7 +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.change_presence:26 +#: cec772a3fc134fb7bb636f5854a3cf00 +msgid "If the ``activity`` parameter is not of proper type." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.is_ws_ratelimited:1 +#: c11858bd0a2046e5ac236361b14e3083 +msgid "Whether the websocket is currently rate limited." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.is_ws_ratelimited:3 +#: 771bda0c3a274e548f284047259f561a +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.AutoShardedClient.is_ws_ratelimited:6 +#: af9ce954ce2644af83ba1462c4d8d5a5 +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" diff --git a/docs/build/locales/api/cogs.pot b/docs/build/locales/api/cogs.pot new file mode 100644 index 0000000000..ec8ea4cc10 --- /dev/null +++ b/docs/build/locales/api/cogs.pot @@ -0,0 +1,355 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/cogs.rst:4 +#: 5374666c885c4434b06da0a8790fecdb +msgid "Cogs" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog:1 +#: 458db600a9dc421f888e3b5e7c9f1351 +msgid "The base class that all cogs must inherit from." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog:3 +#: e1e94c83b83740df83784c2fff922069 +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog:7 +#: 8ecea32e63eb4fe29620ed571bb7681b +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "" + +#: ../../api/cogs.rst:0 +#: 1d205dc90db34b6d9d28696d847dee05 +#: 35b5e3289e2e4915a8fe1a7f1955e20c +msgid "Returns" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.get_commands:1 +#: 898f5042c0b34b3bad6c57241c7a13cb +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.get_commands:1 +#: 0397355338a240288c1b0d328ef921af +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.get_commands:6 +#: 8c92dad3ecb14b3098ece5e74258e9f0 +msgid "This does not include subcommands." +msgstr "" + +#: ../../api/cogs.rst:0 +#: c4db6bbac90e467593f54b1cab05f4fb +#: a548999373424e22a1eef592535cb0e9 +#: a548999373424e22a1eef592535cb0e9 +#: a548999373424e22a1eef592535cb0e9 +#: a548999373424e22a1eef592535cb0e9 +#: a548999373424e22a1eef592535cb0e9 +#: a548999373424e22a1eef592535cb0e9 +#: a548999373424e22a1eef592535cb0e9 +#: a548999373424e22a1eef592535cb0e9 +#: a548999373424e22a1eef592535cb0e9 +msgid "Return type" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.get_commands:7 +#: 12ea85ca434545618cfed65e71c9d1b2 +msgid "List[:class:`.ApplicationCommand`]" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.Cog.qualified_name:1 +#: 9b9b93d42d1444fdad773c091b29a12e +msgid "Returns the cog's specified name, not the class name." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.Cog.description:1 +#: 09a4937043ae42de98974edac587af34 +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.walk_commands:1 +#: 79a0311d2c504a2683912a45a590a788 +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.walk_commands:0 +#: 019b68caa9ae4423a195db1a4caac677 +msgid "Yields" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.walk_commands:3 +#: c6b428360ea8462ab87d860eeb14f885 +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.get_listeners:1 +#: 483845d65d544491a23375ed5d92e183 +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.get_listeners:3 +#: 91c25427765a4ea29546f1167cdd4893 +msgid "The listeners defined in this cog." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.get_listeners:4 +#: 2fb7acbba5b24dcdb2dc03d91ffa65da +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.listener:1 +#: c3661694ba0d4447b0f9fd92354b48d8 +msgid "A decorator that marks a function as a listener." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.listener:3 +#: 22b14baebc684734bb4830d6299e5c83 +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "" + +#: ../../api/cogs.rst:0 +#: bd530b05086c4698967d87151c86bf4d +#: bd530b05086c4698967d87151c86bf4d +#: bd530b05086c4698967d87151c86bf4d +#: bd530b05086c4698967d87151c86bf4d +#: bd530b05086c4698967d87151c86bf4d +#: bd530b05086c4698967d87151c86bf4d +#: bd530b05086c4698967d87151c86bf4d +#: bd530b05086c4698967d87151c86bf4d +msgid "Parameters" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.listener:6 +#: 056df5f1bcf2456e9448b7ac18cdf0b2 +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.listener:10 +#: 988ebdf9035e4565aa89650d9bf379e5 +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "" + +#: ../../api/cogs.rst:0 +#: 108c54a3aec540989381cab703ffb9cb +msgid "Raises" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.listener:14 +#: 9dd1deee9f194fffafea26f9ed0c1d66 +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.listener:16 +#: 4f8e7498b5ae43b78c54b7b164dcdd88 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.has_error_handler:1 +#: 8540394b44384ceb81c96c63caa5c2d2 +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_unload:1 +#: d763221471154638916ac3d6956b3ae5 +msgid "A special method that is called when the cog gets removed." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_unload:3 +#: e9d793cd323741df9e72ffde220b07e9 +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_unload:6 +#: 724ad9a454b545179a30c4708ea00cff +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_after_invoke:11 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_before_invoke:11 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_command_error:16 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_unload:9 +#: bae3ff62cd7046098fd26a064a87ab95 +#: bae3ff62cd7046098fd26a064a87ab95 +#: bae3ff62cd7046098fd26a064a87ab95 +#: bae3ff62cd7046098fd26a064a87ab95 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.bot_check_once:1 +#: c2514ac91866455db81eefb67426a70a +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.bot_check:4 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.bot_check_once:4 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_check:4 +#: 74a72b4805f9400f99581374cdd6e25d +#: 74a72b4805f9400f99581374cdd6e25d +#: 74a72b4805f9400f99581374cdd6e25d +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.bot_check:8 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.bot_check_once:8 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_after_invoke:8 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_before_invoke:8 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_check:8 +#: 21d75be906eb43a4839ac7c2ac76eb49 +#: 21d75be906eb43a4839ac7c2ac76eb49 +#: 21d75be906eb43a4839ac7c2ac76eb49 +#: 21d75be906eb43a4839ac7c2ac76eb49 +#: 21d75be906eb43a4839ac7c2ac76eb49 +msgid "The invocation context." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.bot_check:11 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.bot_check_once:11 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_check:11 +#: bc04772b95eb445880b68aa35b50195a +#: bc04772b95eb445880b68aa35b50195a +#: bc04772b95eb445880b68aa35b50195a +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.bot_check:1 +#: bbe43d3b5dd84335bd98b895da5c5d31 +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_check:1 +#: 565b81b5cfdc4cdda8521ef12839733b +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_command_error:1 +#: 2b94ea8c69b14735aa67ff32dc3c485c +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_command_error:4 +#: 6a8806d6c4dc43f297f233cc8b7b6ee0 +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_after_invoke:5 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_before_invoke:5 +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_command_error:7 +#: 2e2fb136a8f54e59a37867e585a665fa +#: 2e2fb136a8f54e59a37867e585a665fa +#: 2e2fb136a8f54e59a37867e585a665fa +msgid "This **must** be a coroutine." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_command_error:10 +#: f45a4e9c378d4734bd2deb4595be8ade +msgid "The invocation context where the error happened." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_command_error:13 +#: efb608efd0f84d848d9751acb811d5c4 +msgid "The error that happened." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_before_invoke:1 +#: e700e204ccb442a29787cdda38815ca5 +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_before_invoke:3 +#: 2d77573f53f44ca6b250e7f6df2489b4 +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_after_invoke:1 +#: d9ccb004627a47bebf30219cd886dd84 +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.Cog.cog_after_invoke:3 +#: dbfd268f9dc34ea49b98669dcbbdf3ec +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:1 +#: 904788c309034bf3afb023d13eecfd71 +msgid "A metaclass for defining a cog." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:3 +#: 161c4beefa534e7b9ab0609af6d8a6f9 +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:7 +#: a6eba5b14cd74e789809db87119d7c77 +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:24 +#: 206e4807ffc441bd8d611a6ea0a96b05 +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:35 +#: e1bd95d427ba4763beddd661b91be7c3 +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:0 +#: 89b6db804e56474fb08d5a060b7ed69d +#: 89b6db804e56474fb08d5a060b7ed69d +#: 89b6db804e56474fb08d5a060b7ed69d +#: 89b6db804e56474fb08d5a060b7ed69d +msgid "type" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:37 +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:45 +#: 459eaf51b3d74a869ea18e53f787fcea +#: 459eaf51b3d74a869ea18e53f787fcea +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:41 +#: a3bb879d22d1404a9ca12a99597eefef +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:49 +#: 5976a1f483c5445ca1697a4a084bca66 +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:65 +#: 2ed6039376f64807b6b5820df01912d7 +msgid ":class:`dict`" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:69 +#: 0194efeae73b4e52b6b48b3cba6e8c8c +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:74 +#: f3c34e2053064a7e9f686c4a5656fbf9 +msgid "Optional[List[:class:`int`]]" +msgstr "" diff --git a/docs/build/locales/api/data_classes.pot b/docs/build/locales/api/data_classes.pot new file mode 100644 index 0000000000..539a26561f --- /dev/null +++ b/docs/build/locales/api/data_classes.pot @@ -0,0 +1,6436 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/data_classes.rst:6 +#: 0a78c32f65ce438ea508fc4e400c8264 +msgid "Data Classes" +msgstr "" + +#: ../../api/data_classes.rst:8 +#: ab0bcd989e4543f489cbd8bcaf602f3a +msgid "Some classes are just there to be data containers, this lists them." +msgstr "" + +#: ../../api/data_classes.rst:10 +#: cc819b78c53d4fc99e0f60ed11d07ead +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "" + +#: ../../api/data_classes.rst:13 +#: 2ec03af182ba456a9c8abb02a62b36f3 +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "" + +#: ../../api/data_classes.rst:16 +#: a42a075d6c6f46f9840c28ce7fe31ac3 +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.object.Object:1 +#: e3d330e0662949cab82a0391b0410305 +msgid "Represents a generic Discord object." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.object.Object:3 +#: 7df007b5e76e4b50975a2244649d0791 +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.object.Object:9 +#: 7154b922b863489f927fe091d906420a +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.object.Object:18 +#: 7658bd6c40fd49399cba371bdcf522ea +msgid "Checks if two objects are equal." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.object.Object:22 +#: ac4fd4f220d34fb99f5d2493dcfd8b5c +msgid "Checks if two objects are not equal." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.object.Object:26 +#: fc9c9870cb154ea3a8d22a72d9afe701 +msgid "Returns the object's hash." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.object.Object:30 +#: 6cb23f98f49a4de2847e0f6cb46912b3 +msgid "The ID of the object." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:0 +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:0 +#: ../../../discord/activity.py:docstring of discord.activity.Game:0 +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:0 +#: ../../../discord/colour.py:docstring of discord.colour.Colour:0 +#: ../../../discord/components.py:docstring of discord.components.SelectOption:0 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:0 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:0 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField:0 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedFooter:0 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:0 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedProvider:0 +#: ../../../discord/file.py:docstring of discord.file.File:0 +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:0 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:0 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:0 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:0 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:0 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:0 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:0 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:0 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:0 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:0 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:0 +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:0 +#: ../../../discord/message.py:docstring of discord.message.MessageReference:0 +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:0 +#: ../../../discord/object.py:docstring of discord.object.Object:0 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:0 +#: ../../../discord/poll.py:docstring of discord.poll.Poll:0 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer:0 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswerCount:0 +#: ../../../discord/poll.py:docstring of discord.poll.PollMedia:0 +#: ../../../discord/poll.py:docstring of discord.poll.PollResults:0 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo:0 +#: ../../docstring of discord.ApplicationFlags.active:0 +#: ../../docstring of discord.ApplicationFlags.app_commands_badge:0 +#: ../../docstring of discord.ApplicationFlags.application_auto_moderation_rule_create_badge:0 +#: ../../docstring of discord.ApplicationFlags.embedded:0 +#: ../../docstring of discord.ApplicationFlags.gateway_guild_members:0 +#: ../../docstring of discord.ApplicationFlags.gateway_guild_members_limited:0 +#: ../../docstring of discord.ApplicationFlags.gateway_message_content:0 +#: ../../docstring of discord.ApplicationFlags.gateway_message_content_limited:0 +#: ../../docstring of discord.ApplicationFlags.gateway_presence:0 +#: ../../docstring of discord.ApplicationFlags.gateway_presence_limited:0 +#: ../../docstring of discord.ApplicationFlags.group_dm_create:0 +#: ../../docstring of discord.ApplicationFlags.managed_emoji:0 +#: ../../docstring of discord.ApplicationFlags.rpc_has_connected:0 +#: ../../docstring of discord.ApplicationFlags.verification_pending_guild_limit:0 +#: ../../docstring of discord.AttachmentFlags.is_clip:0 +#: ../../docstring of discord.AttachmentFlags.is_remix:0 +#: ../../docstring of discord.AttachmentFlags.is_thumbnail:0 +#: ../../docstring of discord.ChannelFlags.pinned:0 +#: ../../docstring of discord.ChannelFlags.require_tag:0 +#: ../../docstring of discord.Intents.auto_moderation_configuration:0 +#: ../../docstring of discord.Intents.auto_moderation_execution:0 +#: ../../docstring of discord.Intents.bans:0 +#: ../../docstring of discord.Intents.dm_messages:0 +#: ../../docstring of discord.Intents.dm_polls:0 +#: ../../docstring of discord.Intents.dm_reactions:0 +#: ../../docstring of discord.Intents.dm_typing:0 +#: ../../docstring of discord.Intents.emojis:0 +#: ../../docstring of discord.Intents.emojis_and_stickers:0 +#: ../../docstring of discord.Intents.guild_messages:0 +#: ../../docstring of discord.Intents.guild_polls:0 +#: ../../docstring of discord.Intents.guild_reactions:0 +#: ../../docstring of discord.Intents.guild_typing:0 +#: ../../docstring of discord.Intents.guilds:0 +#: ../../docstring of discord.Intents.integrations:0 +#: ../../docstring of discord.Intents.invites:0 +#: ../../docstring of discord.Intents.members:0 +#: ../../docstring of discord.Intents.message_content:0 +#: ../../docstring of discord.Intents.messages:0 +#: ../../docstring of discord.Intents.moderation:0 +#: ../../docstring of discord.Intents.polls:0 +#: ../../docstring of discord.Intents.presences:0 +#: ../../docstring of discord.Intents.reactions:0 +#: ../../docstring of discord.Intents.scheduled_events:0 +#: ../../docstring of discord.Intents.typing:0 +#: ../../docstring of discord.Intents.voice_states:0 +#: ../../docstring of discord.Intents.webhooks:0 +#: ../../docstring of discord.MemberCacheFlags.interaction:0 +#: ../../docstring of discord.MemberCacheFlags.joined:0 +#: ../../docstring of discord.MemberCacheFlags.voice:0 +#: ../../docstring of discord.MemberFlags.bypasses_verification:0 +#: ../../docstring of discord.MemberFlags.completed_onboarding:0 +#: ../../docstring of discord.MemberFlags.did_rejoin:0 +#: ../../docstring of discord.MemberFlags.started_onboarding:0 +#: ../../docstring of discord.MessageFlags.crossposted:0 +#: ../../docstring of discord.MessageFlags.ephemeral:0 +#: ../../docstring of discord.MessageFlags.failed_to_mention_some_roles_in_thread:0 +#: ../../docstring of discord.MessageFlags.has_thread:0 +#: ../../docstring of discord.MessageFlags.is_crossposted:0 +#: ../../docstring of discord.MessageFlags.is_voice_message:0 +#: ../../docstring of discord.MessageFlags.loading:0 +#: ../../docstring of discord.MessageFlags.source_message_deleted:0 +#: ../../docstring of discord.MessageFlags.suppress_embeds:0 +#: ../../docstring of discord.MessageFlags.suppress_notifications:0 +#: ../../docstring of discord.MessageFlags.urgent:0 +#: ../../docstring of discord.Permissions.add_reactions:0 +#: ../../docstring of discord.Permissions.administrator:0 +#: ../../docstring of discord.Permissions.attach_files:0 +#: ../../docstring of discord.Permissions.ban_members:0 +#: ../../docstring of discord.Permissions.change_nickname:0 +#: ../../docstring of discord.Permissions.connect:0 +#: ../../docstring of discord.Permissions.create_instant_invite:0 +#: ../../docstring of discord.Permissions.create_private_threads:0 +#: ../../docstring of discord.Permissions.create_public_threads:0 +#: ../../docstring of discord.Permissions.deafen_members:0 +#: ../../docstring of discord.Permissions.embed_links:0 +#: ../../docstring of discord.Permissions.external_emojis:0 +#: ../../docstring of discord.Permissions.external_stickers:0 +#: ../../docstring of discord.Permissions.kick_members:0 +#: ../../docstring of discord.Permissions.manage_channels:0 +#: ../../docstring of discord.Permissions.manage_emojis:0 +#: ../../docstring of discord.Permissions.manage_emojis_and_stickers:0 +#: ../../docstring of discord.Permissions.manage_events:0 +#: ../../docstring of discord.Permissions.manage_guild:0 +#: ../../docstring of discord.Permissions.manage_messages:0 +#: ../../docstring of discord.Permissions.manage_nicknames:0 +#: ../../docstring of discord.Permissions.manage_permissions:0 +#: ../../docstring of discord.Permissions.manage_roles:0 +#: ../../docstring of discord.Permissions.manage_threads:0 +#: ../../docstring of discord.Permissions.manage_webhooks:0 +#: ../../docstring of discord.Permissions.mention_everyone:0 +#: ../../docstring of discord.Permissions.moderate_members:0 +#: ../../docstring of discord.Permissions.move_members:0 +#: ../../docstring of discord.Permissions.mute_members:0 +#: ../../docstring of discord.Permissions.priority_speaker:0 +#: ../../docstring of discord.Permissions.read_message_history:0 +#: ../../docstring of discord.Permissions.read_messages:0 +#: ../../docstring of discord.Permissions.request_to_speak:0 +#: ../../docstring of discord.Permissions.send_messages:0 +#: ../../docstring of discord.Permissions.send_messages_in_threads:0 +#: ../../docstring of discord.Permissions.send_polls:0 +#: ../../docstring of discord.Permissions.send_tts_messages:0 +#: ../../docstring of discord.Permissions.send_voice_messages:0 +#: ../../docstring of discord.Permissions.set_voice_channel_status:0 +#: ../../docstring of discord.Permissions.speak:0 +#: ../../docstring of discord.Permissions.start_embedded_activities:0 +#: ../../docstring of discord.Permissions.stream:0 +#: ../../docstring of discord.Permissions.use_application_commands:0 +#: ../../docstring of discord.Permissions.use_external_apps:0 +#: ../../docstring of discord.Permissions.use_external_emojis:0 +#: ../../docstring of discord.Permissions.use_external_stickers:0 +#: ../../docstring of discord.Permissions.use_slash_commands:0 +#: ../../docstring of discord.Permissions.use_voice_activation:0 +#: ../../docstring of discord.Permissions.view_audit_log:0 +#: ../../docstring of discord.Permissions.view_channel:0 +#: ../../docstring of discord.Permissions.view_guild_insights:0 +#: ../../docstring of discord.PublicUserFlags.active_developer:0 +#: ../../docstring of discord.PublicUserFlags.bot_http_interactions:0 +#: ../../docstring of discord.PublicUserFlags.bug_hunter:0 +#: ../../docstring of discord.PublicUserFlags.bug_hunter_level_2:0 +#: ../../docstring of discord.PublicUserFlags.discord_certified_moderator:0 +#: ../../docstring of discord.PublicUserFlags.early_supporter:0 +#: ../../docstring of discord.PublicUserFlags.early_verified_bot_developer:0 +#: ../../docstring of discord.PublicUserFlags.hypesquad:0 +#: ../../docstring of discord.PublicUserFlags.hypesquad_balance:0 +#: ../../docstring of discord.PublicUserFlags.hypesquad_bravery:0 +#: ../../docstring of discord.PublicUserFlags.hypesquad_brilliance:0 +#: ../../docstring of discord.PublicUserFlags.partner:0 +#: ../../docstring of discord.PublicUserFlags.premium_promo_dismissed:0 +#: ../../docstring of discord.PublicUserFlags.staff:0 +#: ../../docstring of discord.PublicUserFlags.system:0 +#: ../../docstring of discord.PublicUserFlags.team_user:0 +#: ../../docstring of discord.PublicUserFlags.verified_bot:0 +#: ../../docstring of discord.PublicUserFlags.verified_bot_developer:0 +#: ../../docstring of discord.RoleFlags.in_prompt:0 +#: ../../docstring of discord.SKUFlags.available:0 +#: ../../docstring of discord.SKUFlags.guild_subscription:0 +#: ../../docstring of discord.SKUFlags.user_subscription:0 +#: ../../docstring of discord.SystemChannelFlags.guild_reminder_notifications:0 +#: ../../docstring of discord.SystemChannelFlags.join_notification_replies:0 +#: ../../docstring of discord.SystemChannelFlags.join_notifications:0 +#: ../../docstring of discord.SystemChannelFlags.premium_subscriptions:0 +#: 723831052aca4c2d94163331d498fab4 +#: 45420bc3f5e249dd8ef820bdb4863ddc +#: d04be24516744c6cb0d8a75985d21242 +#: d658a315c6b74568a6988f7cbfd0bfd5 +#: 756b428ff3f9484e91ab6d231993be61 +#: 6c4d566dbc03451c823e41e2f0cb5dd1 +#: 07a6ab3ef7b647039bcefeda19b570d7 +#: 0ba8abd38afb4d208cbc471b1d0baa5e +#: df0fb4b2f1aa45beb6b6920a8e335e0c +#: e4011bea52634c7ba64aef6135dffbd2 +#: 859d68d0649d49978f9dc52e463ae367 +#: f15f5916f3c44904946502c7f1bc41b0 +#: 0a9f06d333124df0aae9049074965a81 +#: af2b5a1b3db74038a31df759ea7c8813 +#: 240d3aad39f04f92b476f6ba0e75007f +#: 530e6956dbfa465a8855e5b8b2e6529f +#: c0b5a0d23eb144df849ae21e56e1c8cf +#: 74d5fdba4b784f47b2373e8c543a62b3 +#: 5d20cdf35cf44064b8c208f270ffa578 +#: 2842d4409acc41a2964ac2c83972b347 +#: 5d194e2b41154c9abe702d59bd5d87b8 +#: ffb6921ba007446f9ef96812b7f54ea6 +#: 022ca6f62fc649d3babfa503e9a7527d +#: 80c538be47764e71bee2f99f7603a06c +#: 2d431f876ab54a9ba881a6e21b29e517 +#: f2c8b1fc5b0349b3b47cf0bf7adfa959 +#: 95e6b772d9f5492787b72ae79a2f21ba +#: 10706bbef0c04fe0bc85c95ac3cdaa67 +#: c06aab6000c143bc9084e6898cd79330 +#: ea47348b77604cd6bf327c57b7ff3d6d +#: 6e2e7aa2a7c449a99e8f05fdfee3dc1a +#: 0945efcada3240758eff2c695d616f32 +#: 6db56029d8d0485abf50e5258830aff5 +#: f4b5a29e047f49c391e8f8314e7befd1 +#: 8011db96a73b497495b8da7fd21bc04e +#: 1b41ad05a49849278911c3e2f57c8e5d +#: 83632daae24b47c8b698763bdf3d970f +#: 37389512c06c42c1b0ba531669e662b5 +#: 308a58630c4e48c2acc2d2a709e660fd +#: 674e78410f3641199148d66412633ac2 +#: 54d86a1d1b3d4c87b667471e1a7d424f +#: 3cde02c1afdd471284767db5f3c67801 +#: 0d8cf03e305c441a937b9d418b558488 +#: e6bfdc42ce134a04bfb90118a9947aa3 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +#: 0b6bdc9f79764717a733eb7a5958f520 +msgid "type" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour:32 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:22 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:28 +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:42 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:42 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:42 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:52 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:55 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:42 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:44 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:43 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:43 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:42 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:47 +#: ../../../discord/message.py:docstring of discord.message.MessageReference:18 +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:42 +#: ../../../discord/object.py:docstring of discord.object.Object:32 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:62 +#: ../../../discord/poll.py:docstring of discord.poll.Poll:21 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer:10 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswerCount:10 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswerCount:16 +#: ../../../discord/poll.py:docstring of discord.poll.PollResults.total_votes:4 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo:12 +#: 0a3305279543462d880226cdad446ec5 +#: 787271a8ad0043a4b44cc5a717c8b26b +#: 47963b10a3744670a53e06986a02d383 +#: 83ced52f44bb4a1c95f0962207ce50dc +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +#: 6674934795ef4e7c9fb97e9e9883e91e +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:0 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:0 +#: ../../api/data_classes.rst:0 +#: e10fd84d147f4b71b2d38959065e253c +#: 62c0635de0e14e85b11eb228a093d50b +#: 17d3622dc479450a9951e9f01f4e961e +#: 89e6520d4ff047f18dee15ce511b202d +#: ed60de7fca634eb19790777106f69830 +#: b5ea8629223b4b5b93a1742e5a53077e +#: d463224bd212438b803261a9fa1b966a +#: 41838a50196b4f6281147969c43977d0 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +#: bc227baf3a35408b8f5380ffa74958b7 +msgid "Parameters" +msgstr "" + +#: ../../../discord/object.py:docstring of discord.Object.created_at:1 +#: f057925900a64a8ba20a93fbe5494253 +msgid "Returns the snowflake's creation time in UTC." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.Object.worker_id:1 +#: 53a32582704149b99db505d1034792e7 +msgid "Returns the worker id that made the snowflake." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.Object.process_id:1 +#: 65dff6ade4594d2b8b83e2db2f87e06d +msgid "Returns the process id that made the snowflake." +msgstr "" + +#: ../../../discord/object.py:docstring of discord.Object.increment_id:1 +#: 824e681e53414a8c8cccf61fd3f837e9 +msgid "Returns the increment id that made the snowflake." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectOption:1 +#: 0d8b907771e64532af760f81f51e6054 +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectOption:3 +#: 836aee37573f4fb99a2e2ba8cd2ac24e +msgid "These can be created by users." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectOption:9 +#: b0f1217cfaff4c189043c1907c804416 +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Game:31 +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:55 +#: ../../../discord/components.py:docstring of discord.components.SelectOption:12 +#: ../../../discord/components.py:docstring of discord.components.SelectOption:20 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:25 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:34 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:42 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:49 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:9 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:15 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:21 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:27 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField:9 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField:15 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedFooter:9 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedFooter:15 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedFooter:21 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:10 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:16 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedProvider:9 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedProvider:15 +#: ../../../discord/poll.py:docstring of discord.poll.PollMedia:9 +#: fc861202507f4454976c8563dc3bc383 +#: 05be8ec42ca842988501f59cc34e4060 +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +#: bf029a45ccb14764ab8bb9e4b6849d2a +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectOption:16 +#: 579e6accca914c3998466750119550fe +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectOption:24 +#: df26f5a7b24d4b6d906959574c93288e +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:22 +#: ../../../discord/activity.py:docstring of discord.activity.Activity:28 +#: ../../../discord/activity.py:docstring of discord.activity.Activity:40 +#: ../../../discord/activity.py:docstring of discord.activity.Activity:46 +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:27 +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:39 +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:29 +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:35 +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:41 +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:49 +#: ../../../discord/components.py:docstring of discord.components.SelectOption:27 +#: ../../../discord/file.py:docstring of discord.file.File:30 +#: ../../../discord/file.py:docstring of discord.file.File:36 +#: 3963803bd3104b1f89165daeab20d80a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +#: 1829644e9c8741b9ab3d3326ded2df0a +msgid "Optional[:class:`str`]" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectOption:31 +#: 5c9b407cffa7482394bcebc4fc8cd412 +msgid "Whether this option is selected by default." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectOption:33 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField:21 +#: ../../../discord/file.py:docstring of discord.file.File:42 +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:11 +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:40 +#: ../../../discord/message.py:docstring of discord.message.MessageReference:33 +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.is_empty:7 +#: ../../../discord/poll.py:docstring of discord.poll.Poll:27 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswerCount:22 +#: ../../../discord/poll.py:docstring of discord.poll.PollResults:9 +#: ../../docstring of discord.ApplicationFlags.active:6 +#: ../../docstring of discord.ApplicationFlags.app_commands_badge:6 +#: ../../docstring of discord.ApplicationFlags.application_auto_moderation_rule_create_badge:5 +#: ../../docstring of discord.ApplicationFlags.embedded:3 +#: ../../docstring of discord.ApplicationFlags.gateway_guild_members:4 +#: ../../docstring of discord.ApplicationFlags.gateway_guild_members_limited:4 +#: ../../docstring of discord.ApplicationFlags.gateway_message_content:3 +#: ../../docstring of discord.ApplicationFlags.gateway_message_content_limited:4 +#: ../../docstring of discord.ApplicationFlags.gateway_presence:4 +#: ../../docstring of discord.ApplicationFlags.gateway_presence_limited:4 +#: ../../docstring of discord.ApplicationFlags.group_dm_create:3 +#: ../../docstring of discord.ApplicationFlags.managed_emoji:3 +#: ../../docstring of discord.ApplicationFlags.rpc_has_connected:3 +#: ../../docstring of discord.ApplicationFlags.verification_pending_guild_limit:4 +#: ../../docstring of discord.AttachmentFlags.is_clip:3 +#: ../../docstring of discord.AttachmentFlags.is_remix:3 +#: ../../docstring of discord.AttachmentFlags.is_thumbnail:3 +#: ../../docstring of discord.ChannelFlags.pinned:3 +#: ../../docstring of discord.ChannelFlags.require_tag:6 +#: ../../docstring of discord.Intents.auto_moderation_configuration:9 +#: ../../docstring of discord.Intents.auto_moderation_execution:7 +#: ../../docstring of discord.Intents.bans:6 +#: ../../docstring of discord.Intents.dm_messages:27 +#: ../../docstring of discord.Intents.dm_polls:17 +#: ../../docstring of discord.Intents.dm_reactions:18 +#: ../../docstring of discord.Intents.dm_typing:11 +#: ../../docstring of discord.Intents.emojis:6 +#: ../../docstring of discord.Intents.emojis_and_stickers:21 +#: ../../docstring of discord.Intents.guild_messages:38 +#: ../../docstring of discord.Intents.guild_polls:17 +#: ../../docstring of discord.Intents.guild_reactions:18 +#: ../../docstring of discord.Intents.guild_typing:11 +#: ../../docstring of discord.Intents.guilds:23 +#: ../../docstring of discord.Intents.integrations:12 +#: ../../docstring of discord.Intents.invites:10 +#: ../../docstring of discord.Intents.members:33 +#: ../../docstring of discord.Intents.message_content:23 +#: ../../docstring of discord.Intents.messages:31 +#: ../../docstring of discord.Intents.moderation:11 +#: ../../docstring of discord.Intents.polls:17 +#: ../../docstring of discord.Intents.presences:20 +#: ../../docstring of discord.Intents.reactions:18 +#: ../../docstring of discord.Intents.scheduled_events:18 +#: ../../docstring of discord.Intents.typing:11 +#: ../../docstring of discord.Intents.voice_states:22 +#: ../../docstring of discord.Intents.webhooks:9 +#: ../../docstring of discord.MemberCacheFlags.interaction:6 +#: ../../docstring of discord.MemberCacheFlags.joined:8 +#: ../../docstring of discord.MemberCacheFlags.voice:7 +#: ../../docstring of discord.MemberFlags.bypasses_verification:7 +#: ../../docstring of discord.MemberFlags.completed_onboarding:3 +#: ../../docstring of discord.MemberFlags.did_rejoin:3 +#: ../../docstring of discord.MemberFlags.started_onboarding:3 +#: ../../docstring of discord.MessageFlags.crossposted:3 +#: ../../docstring of discord.MessageFlags.ephemeral:5 +#: ../../docstring of discord.MessageFlags.failed_to_mention_some_roles_in_thread:5 +#: ../../docstring of discord.MessageFlags.has_thread:5 +#: ../../docstring of discord.MessageFlags.is_crossposted:3 +#: ../../docstring of discord.MessageFlags.is_voice_message:5 +#: ../../docstring of discord.MessageFlags.loading:7 +#: ../../docstring of discord.MessageFlags.source_message_deleted:3 +#: ../../docstring of discord.MessageFlags.suppress_embeds:3 +#: ../../docstring of discord.MessageFlags.suppress_notifications:7 +#: ../../docstring of discord.MessageFlags.urgent:5 +#: ../../docstring of discord.Permissions.add_reactions:3 +#: ../../docstring of discord.Permissions.administrator:5 +#: ../../docstring of discord.Permissions.attach_files:3 +#: ../../docstring of discord.Permissions.ban_members:3 +#: ../../docstring of discord.Permissions.change_nickname:3 +#: ../../docstring of discord.Permissions.connect:3 +#: ../../docstring of discord.Permissions.create_instant_invite:3 +#: ../../docstring of discord.Permissions.create_private_threads:5 +#: ../../docstring of discord.Permissions.create_public_threads:5 +#: ../../docstring of discord.Permissions.deafen_members:3 +#: ../../docstring of discord.Permissions.embed_links:3 +#: ../../docstring of discord.Permissions.external_emojis:3 +#: ../../docstring of discord.Permissions.external_stickers:5 +#: ../../docstring of discord.Permissions.kick_members:3 +#: ../../docstring of discord.Permissions.manage_channels:5 +#: ../../docstring of discord.Permissions.manage_emojis:3 +#: ../../docstring of discord.Permissions.manage_emojis_and_stickers:5 +#: ../../docstring of discord.Permissions.manage_events:5 +#: ../../docstring of discord.Permissions.manage_guild:3 +#: ../../docstring of discord.Permissions.manage_messages:7 +#: ../../docstring of discord.Permissions.manage_nicknames:3 +#: ../../docstring of discord.Permissions.manage_permissions:5 +#: ../../docstring of discord.Permissions.manage_roles:5 +#: ../../docstring of discord.Permissions.manage_threads:5 +#: ../../docstring of discord.Permissions.manage_webhooks:3 +#: ../../docstring of discord.Permissions.mention_everyone:3 +#: ../../docstring of discord.Permissions.moderate_members:5 +#: ../../docstring of discord.Permissions.move_members:3 +#: ../../docstring of discord.Permissions.mute_members:3 +#: ../../docstring of discord.Permissions.priority_speaker:3 +#: ../../docstring of discord.Permissions.read_message_history:3 +#: ../../docstring of discord.Permissions.read_messages:5 +#: ../../docstring of discord.Permissions.request_to_speak:5 +#: ../../docstring of discord.Permissions.send_messages:3 +#: ../../docstring of discord.Permissions.send_messages_in_threads:5 +#: ../../docstring of discord.Permissions.send_polls:5 +#: ../../docstring of discord.Permissions.send_tts_messages:3 +#: ../../docstring of discord.Permissions.send_voice_messages:5 +#: ../../docstring of discord.Permissions.set_voice_channel_status:5 +#: ../../docstring of discord.Permissions.speak:3 +#: ../../docstring of discord.Permissions.start_embedded_activities:5 +#: ../../docstring of discord.Permissions.stream:3 +#: ../../docstring of discord.Permissions.use_application_commands:5 +#: ../../docstring of discord.Permissions.use_external_apps:8 +#: ../../docstring of discord.Permissions.use_external_emojis:5 +#: ../../docstring of discord.Permissions.use_external_stickers:5 +#: ../../docstring of discord.Permissions.use_slash_commands:5 +#: ../../docstring of discord.Permissions.use_voice_activation:3 +#: ../../docstring of discord.Permissions.view_audit_log:3 +#: ../../docstring of discord.Permissions.view_channel:3 +#: ../../docstring of discord.Permissions.view_guild_insights:5 +#: ../../docstring of discord.PublicUserFlags.active_developer:5 +#: ../../docstring of discord.PublicUserFlags.bot_http_interactions:5 +#: ../../docstring of discord.PublicUserFlags.bug_hunter:3 +#: ../../docstring of discord.PublicUserFlags.bug_hunter_level_2:3 +#: ../../docstring of discord.PublicUserFlags.discord_certified_moderator:5 +#: ../../docstring of discord.PublicUserFlags.early_supporter:3 +#: ../../docstring of discord.PublicUserFlags.early_verified_bot_developer:5 +#: ../../docstring of discord.PublicUserFlags.hypesquad:3 +#: ../../docstring of discord.PublicUserFlags.hypesquad_balance:3 +#: ../../docstring of discord.PublicUserFlags.hypesquad_bravery:3 +#: ../../docstring of discord.PublicUserFlags.hypesquad_brilliance:3 +#: ../../docstring of discord.PublicUserFlags.partner:3 +#: ../../docstring of discord.PublicUserFlags.premium_promo_dismissed:3 +#: ../../docstring of discord.PublicUserFlags.staff:3 +#: ../../docstring of discord.PublicUserFlags.system:3 +#: ../../docstring of discord.PublicUserFlags.team_user:3 +#: ../../docstring of discord.PublicUserFlags.verified_bot:3 +#: ../../docstring of discord.PublicUserFlags.verified_bot_developer:3 +#: ../../docstring of discord.RoleFlags.in_prompt:3 +#: ../../docstring of discord.SKUFlags.available:3 +#: ../../docstring of discord.SKUFlags.guild_subscription:3 +#: ../../docstring of discord.SKUFlags.user_subscription:3 +#: ../../docstring of discord.SystemChannelFlags.guild_reminder_notifications:5 +#: ../../docstring of discord.SystemChannelFlags.join_notification_replies:5 +#: ../../docstring of discord.SystemChannelFlags.join_notifications:3 +#: ../../docstring of discord.SystemChannelFlags.premium_subscriptions:3 +#: e29fe4fdd9ad421295dee23fa82019b0 +#: 46fa3239adde4e4e8c329454531c38d3 +#: f2a5f2887dcb45bfb3ec1a4a0aeb18d8 +#: a1a7cfe5e59a4d34b6c36e5fde156571 +#: 8131de1784d84c66a45d155df88cf3cd +#: b9f49cf9cee747048835891d1c7f70f5 +#: b65935e7a9214a36aba1ec7fc7c90e2a +#: 8b13ad081fb949e7830bf07869b61edd +#: 7cdf2f906ed044deb6012048150da019 +#: 97e4820420da426a91acebda9917aa78 +#: 1c9bcfbfabcf4447af13173772e0dba3 +#: 7186fd1920ad48c08b8c0b576bf3e70b +#: 161aa3465ff54b8eabe605b3e1effc75 +#: 655b339bafc8433e9aaab4de0ce88be5 +#: d45426a29b06438e91f2dd515ab9a26b +#: ae44222339b04401be8bde84be82516c +#: 034f5658560a46a48f6392d1a929bbd7 +#: 77ec92f62db14901a099b1dd6847dc2c +#: 7423abc3cc524d34a8f85edbe0dc35c9 +#: 1bd2fe7cfa7442648f6b9c5bd3d60b3e +#: ced24460a70040d8b61a4ad0d6c78aed +#: 326278ce171e46fb892074ec17d63e86 +#: 4925fccfa0a940c8a56591683e21bb9b +#: b152bbcee768493eaedb1704b92055be +#: 3461eb669bf74f97b82aada9d35a05ef +#: fd16e79e95744fbbb4d1bb67b2d04fbe +#: c66087222b144b77bfe3590882bb094c +#: 2c1c87d5592e4e8ba6d282a4981aaf31 +#: d50186c464354e00bb33065cbbc894ca +#: 5e77c1cbf15f4edbace963555bada8f4 +#: 7ff8f88daaf64e81ae8e54a9a098fba8 +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +#: e1c1e64874eb4dc4b81588e9d084845b +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.SelectOption.emoji:1 +#: 83b108a10aa446cdb6eebaab379b4174 +msgid "The emoji of the option, if available." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.Intents:1 +#: e2e452e939b041f88f583aded7ed5bad +msgid "Wraps up a Discord gateway intent flag." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.Intents:3 +#: 11f86baabb094c2baabe61a104cd4f51 +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.Intents:7 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:12 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:7 +#: c7ccca30986e43fd8e10beb3bd9d8656 +#: 99d045cffa884713a159060bf7b59130 +#: 99d045cffa884713a159060bf7b59130 +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.Intents:10 +#: 89aa9846e2cf4b0c9c280daecc282a51 +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:7 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:20 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:23 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:9 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:14 +#: 4e9fe61ccd1549e88739285bf3dafd88 +#: 2723da96d9724f13aedb5348870ab7f6 +#: 2723da96d9724f13aedb5348870ab7f6 +#: 2723da96d9724f13aedb5348870ab7f6 +#: 2723da96d9724f13aedb5348870ab7f6 +msgid "Checks if two flags are equal." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:10 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:23 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:26 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:12 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:17 +#: c5b62a3820524bdaa7ffdc764a11c059 +#: b6e33c093a6446c4b0db0d86d7eea46a +#: b6e33c093a6446c4b0db0d86d7eea46a +#: b6e33c093a6446c4b0db0d86d7eea46a +#: b6e33c093a6446c4b0db0d86d7eea46a +msgid "Checks if two flags are not equal." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:13 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:13 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:13 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:26 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:29 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:13 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:15 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:13 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:13 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:13 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:20 +#: 0bd6187917144dd29d57b86f7c0403e5 +#: f96e957c78734f899f6a8cabbcd6e80f +#: f96e957c78734f899f6a8cabbcd6e80f +#: f96e957c78734f899f6a8cabbcd6e80f +#: f96e957c78734f899f6a8cabbcd6e80f +#: f96e957c78734f899f6a8cabbcd6e80f +#: f96e957c78734f899f6a8cabbcd6e80f +#: f96e957c78734f899f6a8cabbcd6e80f +#: f96e957c78734f899f6a8cabbcd6e80f +#: f96e957c78734f899f6a8cabbcd6e80f +#: f96e957c78734f899f6a8cabbcd6e80f +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:16 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:16 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:16 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:29 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:32 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:16 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:18 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:16 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:16 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:16 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:23 +#: 1cc0f99d2ad34188a3d109ca5ea135bd +#: 0c17b2ad55124b1aaae336d3932a00a5 +#: 0c17b2ad55124b1aaae336d3932a00a5 +#: 0c17b2ad55124b1aaae336d3932a00a5 +#: 0c17b2ad55124b1aaae336d3932a00a5 +#: 0c17b2ad55124b1aaae336d3932a00a5 +#: 0c17b2ad55124b1aaae336d3932a00a5 +#: 0c17b2ad55124b1aaae336d3932a00a5 +#: 0c17b2ad55124b1aaae336d3932a00a5 +#: 0c17b2ad55124b1aaae336d3932a00a5 +#: 0c17b2ad55124b1aaae336d3932a00a5 +msgid "Subtracts two flags from each other." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:19 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:19 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:19 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:32 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:35 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:19 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:21 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:19 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:19 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:19 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:26 +#: dc44aea0eb8843ec89427b68ed42e355 +#: 8682d8d121804ca78190744b3a59c4d3 +#: 8682d8d121804ca78190744b3a59c4d3 +#: 8682d8d121804ca78190744b3a59c4d3 +#: 8682d8d121804ca78190744b3a59c4d3 +#: 8682d8d121804ca78190744b3a59c4d3 +#: 8682d8d121804ca78190744b3a59c4d3 +#: 8682d8d121804ca78190744b3a59c4d3 +#: 8682d8d121804ca78190744b3a59c4d3 +#: 8682d8d121804ca78190744b3a59c4d3 +#: 8682d8d121804ca78190744b3a59c4d3 +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:22 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:22 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:22 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:35 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:38 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:22 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:24 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:22 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:22 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:22 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:29 +#: 1aa74630c59244a680d6c45bac4a40d4 +#: 1958adb42308499f8545a94033c83764 +#: 1958adb42308499f8545a94033c83764 +#: 1958adb42308499f8545a94033c83764 +#: 1958adb42308499f8545a94033c83764 +#: 1958adb42308499f8545a94033c83764 +#: 1958adb42308499f8545a94033c83764 +#: 1958adb42308499f8545a94033c83764 +#: 1958adb42308499f8545a94033c83764 +#: 1958adb42308499f8545a94033c83764 +#: 1958adb42308499f8545a94033c83764 +msgid "Returns the intersection of two flags." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:25 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:25 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:25 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:38 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:41 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:25 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:27 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:25 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:25 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:25 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:32 +#: 0c0d4ae9593340cc9d83a5f1bf9ae314 +#: 3f25fb08cab5411e97b911287fb3d991 +#: 3f25fb08cab5411e97b911287fb3d991 +#: 3f25fb08cab5411e97b911287fb3d991 +#: 3f25fb08cab5411e97b911287fb3d991 +#: 3f25fb08cab5411e97b911287fb3d991 +#: 3f25fb08cab5411e97b911287fb3d991 +#: 3f25fb08cab5411e97b911287fb3d991 +#: 3f25fb08cab5411e97b911287fb3d991 +#: 3f25fb08cab5411e97b911287fb3d991 +#: 3f25fb08cab5411e97b911287fb3d991 +msgid "Returns the inverse of a flag." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:28 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:28 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:28 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:41 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:44 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:28 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:30 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:28 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:28 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:28 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:35 +#: cd38184237914f6c802d8fd54c02a106 +#: 115cbdc73ead48389591b9c18de16c6e +#: 115cbdc73ead48389591b9c18de16c6e +#: 115cbdc73ead48389591b9c18de16c6e +#: 115cbdc73ead48389591b9c18de16c6e +#: 115cbdc73ead48389591b9c18de16c6e +#: 115cbdc73ead48389591b9c18de16c6e +#: 115cbdc73ead48389591b9c18de16c6e +#: 115cbdc73ead48389591b9c18de16c6e +#: 115cbdc73ead48389591b9c18de16c6e +#: 115cbdc73ead48389591b9c18de16c6e +msgid "Return the flag's hash." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.Intents:44 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:47 +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:33 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:38 +#: a99a094ce4fa417f968709af699b5323 +#: 7204b8ea3a9241949e0f987e6f8c8665 +#: 7204b8ea3a9241949e0f987e6f8c8665 +#: 7204b8ea3a9241949e0f987e6f8c8665 +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:39 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:39 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:39 +#: ../../../discord/flags.py:docstring of discord.flags.Intents:49 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:52 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:39 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:39 +#: f54fefdc28274d45b023ba51349e495a +#: 82101dd125534b129f6f38b3b3ed2e27 +#: 82101dd125534b129f6f38b3b3ed2e27 +#: 82101dd125534b129f6f38b3b3ed2e27 +#: 82101dd125534b129f6f38b3b3ed2e27 +#: 82101dd125534b129f6f38b3b3ed2e27 +#: 82101dd125534b129f6f38b3b3ed2e27 +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.Intents.all:1 +#: 16c74d2111d245fba292eb18c918eaef +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:0 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:0 +#: ../../api/data_classes.rst:0 +#: 06117d4991d64482ab3bd74ddd051afa +#: 387a935c6db343558a4e1062dc05e80b +#: 2a6fff9cfbc140eea62eb86587d99e12 +#: 2aaf29a75ce048e59ab4aa068f89270e +#: 2c65699780f042bda30498eb6d195ca1 +#: 3a69766c2ab349738d5ae59cbd70517b +#: 7afd0d20cf2940e4a0493121eb555c29 +#: 3d9d7f31e3fd426c91b7da7fe211b099 +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +#: 4cec06d96aa540ca837c06faf1eda4aa +msgid "Return type" +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.Intents.all:4 +#: ../../../discord/flags.py:docstring of discord.flags.Intents.default:5 +#: ../../../discord/flags.py:docstring of discord.flags.Intents.none:4 +#: 93072a21a8ac4f6d9051e897557acc8f +#: 946b7c87c7b64016bc9465fb66cea03d +#: 20a24ced6c2f40ae97a379aac52fc31e +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.Intents.none:1 +#: 22324043e80a40aaa717986eb0f452ac +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.Intents.default:1 +#: 45a682a8a0cf40059fcca00391087c9d +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "" + +#: ../../docstring of discord.Intents.guilds:1 +#: 4317da5e0f17431d9613a34efaf3d04d +msgid "Whether guild related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.auto_moderation_configuration:3 +#: ../../docstring of discord.Intents.auto_moderation_execution:3 +#: ../../docstring of discord.Intents.dm_messages:5 +#: ../../docstring of discord.Intents.dm_polls:5 +#: ../../docstring of discord.Intents.dm_reactions:5 +#: ../../docstring of discord.Intents.dm_typing:5 +#: ../../docstring of discord.Intents.emojis_and_stickers:5 +#: ../../docstring of discord.Intents.guild_messages:5 +#: ../../docstring of discord.Intents.guild_polls:5 +#: ../../docstring of discord.Intents.guild_reactions:5 +#: ../../docstring of discord.Intents.guild_typing:5 +#: ../../docstring of discord.Intents.guilds:3 +#: ../../docstring of discord.Intents.integrations:3 +#: ../../docstring of discord.Intents.invites:3 +#: ../../docstring of discord.Intents.members:3 +#: ../../docstring of discord.Intents.messages:5 +#: ../../docstring of discord.Intents.moderation:3 +#: ../../docstring of discord.Intents.polls:5 +#: ../../docstring of discord.Intents.presences:3 +#: ../../docstring of discord.Intents.reactions:5 +#: ../../docstring of discord.Intents.scheduled_events:3 +#: ../../docstring of discord.Intents.typing:5 +#: ../../docstring of discord.Intents.voice_states:3 +#: ../../docstring of discord.Intents.webhooks:3 +#: f1b1d51dfc7e4692a37d5bca93905b4d +#: 75d1d5d26fee4f4db53f9e29a6dd8e3a +#: 77c6b6236e1347e2b15712d37046f7b6 +#: ebc4a3f5e91648288893a4a8c8f0df3c +#: 9e703e4c3f854459b513a5973115356b +#: f99607be5f7d4810a8759fd4e459a36b +#: d501618e47324c1793bbde3bf9ca861b +#: 80ed196772fb4d43802c8a0c5f60267e +#: 37c77df003a04768b88e759cd73963b1 +#: 6cf9973c14134f4ab3888b55623e7e55 +#: 8795d49ebb62417ebcdf2989b8df1d3d +#: 9a80a6772ccd47a8a9d29b9ff6ee2d7d +#: 127132d3c13c416cab6465e43870b9df +#: be05d4647638496a85bf45edbffe3e8e +#: f2d60034b58848f5b50f72b0fe7480da +#: 3801b1bd516a4c47a073514517ca50d4 +#: 1a8d1483207c4ba4bd66f376500bcfdd +#: 1844e42444c64ebfa6f6a05f49c3c034 +#: 32d6ac82923b4f548a71c551421c87a9 +#: 2393f9340ef242d09a27b53fbae1d540 +#: 5ff0cc64d2464f138b63bd5bce62b0bd +#: 4a9af8630afc4c228384619fc5928a2c +#: 327cb39cf5d942c6ac5c5e9cd44b08ba +#: 8d17e0018cf346369e05f5ed41961c83 +msgid "This corresponds to the following events:" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:5 +#: 5994272e340e4811a58be304b6c96914 +msgid ":func:`on_guild_join`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:6 +#: 4f6f211fa5e34b2baa6b5b3b96117d98 +msgid ":func:`on_guild_remove`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:7 +#: 21aa0e482ecf4ee59530701a0567293b +msgid ":func:`on_guild_available`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:8 +#: 749fda92dd054dceb10ab766b07c8a67 +msgid ":func:`on_guild_unavailable`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:9 +#: 12c9331353c74f5e8a0ec6e7bba5f57e +msgid ":func:`on_guild_channel_update`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:10 +#: 5a72e2a4cb204f05b685878b664e2513 +msgid ":func:`on_guild_channel_create`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:11 +#: 87516bfe56bb4d26bc954380fe7086b5 +msgid ":func:`on_guild_channel_delete`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:12 +#: 822458acade14d058d900c80c5e970f1 +msgid ":func:`on_guild_channel_pins_update`" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:13 +#: ../../docstring of discord.Intents.dm_polls:12 +#: ../../docstring of discord.Intents.dm_reactions:14 +#: ../../docstring of discord.Intents.emojis_and_stickers:10 +#: ../../docstring of discord.Intents.guild_messages:13 +#: ../../docstring of discord.Intents.guild_polls:12 +#: ../../docstring of discord.Intents.guild_reactions:14 +#: ../../docstring of discord.Intents.guilds:14 +#: ../../docstring of discord.Intents.members:11 +#: ../../docstring of discord.Intents.messages:13 +#: ../../docstring of discord.Intents.polls:12 +#: ../../docstring of discord.Intents.presences:7 +#: ../../docstring of discord.Intents.reactions:14 +#: ../../docstring of discord.Intents.scheduled_events:13 +#: ../../docstring of discord.Intents.voice_states:7 +#: cfe6c3251c0f4e13a904e56454fbaa4a +#: 30ce97bdd3094300a532b98ec1cf3943 +#: deaad94c71c94871817abb4286d2bcef +#: 516dddd73b2b476b82835e700c169f71 +#: 7723e1b62423446184c4541de3f89248 +#: d6181ea2e5ab4d45aeabb348df9f2c88 +#: 50006f2a61b848848d0dff60895afc77 +#: 64ea6e41a88c47cba252c5bd01944e1c +#: 529dd704424742a38b07f200180a2068 +#: 31267a3f10444da2957257d6241062ac +#: 3d3cd245adcd4796a84d8cd0f0748f62 +#: b1141125c5b647c18492031a0447fb6d +#: 7945f47d88904d9a834c708ec69ca085 +#: b7a36d6a3daa4dd582d6ae4a5dee5f3a +#: 335c852a9e4240d680003e46d01a9eb7 +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:16 +#: bcc55c3d9b6c4f5588f5942e502740bb +msgid ":attr:`Client.guilds`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:17 +#: 224c1c98fc864d659f37dd53852f655e +msgid ":class:`Guild` and all its attributes." +msgstr "" + +#: ../../docstring of discord.Intents.guilds:18 +#: 6fb8f356c9d54a4b946f3ab6c0e55be7 +msgid ":meth:`Client.get_channel`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:19 +#: 3b802410fa96485eb5c6e69cd900a140 +msgid ":meth:`Client.get_all_channels`" +msgstr "" + +#: ../../docstring of discord.Intents.guilds:21 +#: 62f55e05719246a6ba9751ebde882853 +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "" + +#: ../../docstring of discord.Intents.members:1 +#: 929eb7b755c8449aa42f4809421f88b7 +msgid "Whether guild member related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.members:5 +#: 945d37e662c44c5bafc5590ec51d3b0f +msgid ":func:`on_member_join`" +msgstr "" + +#: ../../docstring of discord.Intents.members:6 +#: 94a083f6dfb8486e86bb602aa7055864 +msgid ":func:`on_member_remove`" +msgstr "" + +#: ../../docstring of discord.Intents.members:7 +#: 66c04c9b42cd4898826123a33e6294ff +msgid ":func:`on_raw_member_remove`" +msgstr "" + +#: ../../docstring of discord.Intents.members:8 +#: e7c5954e807044c6a8ea63f654f621dd +msgid ":func:`on_member_update`" +msgstr "" + +#: ../../docstring of discord.Intents.members:9 +#: d63e13ef0e504d3382313195162d173d +msgid ":func:`on_user_update`" +msgstr "" + +#: ../../docstring of discord.Intents.members:13 +#: 5795f8d2b996423d95f49c54c37d982c +msgid ":meth:`Client.get_all_members`" +msgstr "" + +#: ../../docstring of discord.Intents.members:14 +#: e446aa42f0504d1eb28545466ab582fd +msgid ":meth:`Client.get_user`" +msgstr "" + +#: ../../docstring of discord.Intents.members:15 +#: 7373c06233d14be283be68f6b35676a9 +msgid ":meth:`Guild.chunk`" +msgstr "" + +#: ../../docstring of discord.Intents.members:16 +#: ac42d9b201b9473da4865698cd0d6cab +msgid ":meth:`Guild.fetch_members`" +msgstr "" + +#: ../../docstring of discord.Intents.members:17 +#: 88280431785b4b0f8f9fe84b6f786481 +msgid ":meth:`Guild.get_member`" +msgstr "" + +#: ../../docstring of discord.Intents.members:18 +#: 856253b1096a45069e1dd86c50d28aaa +msgid ":attr:`Guild.members`" +msgstr "" + +#: ../../docstring of discord.Intents.members:19 +#: 96f3dd561afb42c8a00186592acdcdfa +msgid ":attr:`Member.roles`" +msgstr "" + +#: ../../docstring of discord.Intents.members:20 +#: 7262ba98a42b4f4eb2ad956a6e6e3f21 +msgid ":attr:`Member.nick`" +msgstr "" + +#: ../../docstring of discord.Intents.members:21 +#: 4d7d7d40e4b64bf289fcc60255b8964c +msgid ":attr:`Member.premium_since`" +msgstr "" + +#: ../../docstring of discord.Intents.members:22 +#: c6dd03104de443e89f184674cad8d2a5 +msgid ":attr:`User.name`" +msgstr "" + +#: ../../docstring of discord.Intents.members:23 +#: 7704cc926f6946a18c346af78390017a +msgid ":attr:`User.avatar`" +msgstr "" + +#: ../../docstring of discord.Intents.members:24 +#: 28fc4b6096ff4c4cbf2077cdfae3038f +msgid ":attr:`User.discriminator`" +msgstr "" + +#: ../../docstring of discord.Intents.members:26 +#: e63bbf16bf3a47a9a2374fbb8644bdec +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "" + +#: ../../docstring of discord.Intents.members:30 +#: ../../docstring of discord.Intents.presences:17 +#: a144ff86320b4e09b37cff189bb3174c +#: 5f0bed46e9fd446fa11f769c2e18134d +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "" + +#: ../../docstring of discord.Intents.bans:1 +#: d35c3b99080f41138c08fc05e66820af +msgid "Alias of :attr:`.moderation`." +msgstr "" + +#: ../../docstring of discord.Intents.bans:3 +#: ../../docstring of discord.Intents.emojis:3 +#: 27a0c56e0c79468d9c88cabbab69f321 +#: bc8f8e325af24de382cf5ea080f4c8ef +msgid "Changed to an alias." +msgstr "" + +#: ../../docstring of discord.Intents.moderation:1 +#: e7f8be38789347f391726ae88785a429 +msgid "Whether guild moderation related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.moderation:5 +#: f00b53ceb1774c9eae7512ea10e6c594 +msgid ":func:`on_audit_log_entry`" +msgstr "" + +#: ../../docstring of discord.Intents.moderation:6 +#: b0c75f440f3549548ba08708aec21592 +msgid ":func:`on_member_ban`" +msgstr "" + +#: ../../docstring of discord.Intents.moderation:7 +#: beac11c05c944db4a70e68a2f4ccb823 +msgid ":func:`on_member_unban`" +msgstr "" + +#: ../../docstring of discord.Intents.dm_typing:9 +#: ../../docstring of discord.Intents.guild_typing:9 +#: ../../docstring of discord.Intents.integrations:10 +#: ../../docstring of discord.Intents.invites:8 +#: ../../docstring of discord.Intents.moderation:9 +#: ../../docstring of discord.Intents.typing:9 +#: ../../docstring of discord.Intents.webhooks:7 +#: bbcdb3c184584751b4fce179030f686b +#: 49e0cca02c174ab0b3af1016f00bb680 +#: b9863a675003490b89043c31dbf28eff +#: 20164eb2064e41b7b194bcf624744b12 +#: f29f9b186eba40a0910997fe79f8b7a4 +#: a9a3db3038a7485ca7c791f1c7782ae9 +#: c8d84c681fd142bf88e6ff7b096647b2 +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "" + +#: ../../docstring of discord.Intents.emojis:1 +#: bb39e3f3663b46b19a266c33245dda8d +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:1 +#: c5af4974eb774193a9161920c2cdee53 +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:7 +#: c8412c187de54fc88852594c731c4e4d +msgid ":func:`on_guild_emojis_update`" +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:8 +#: c087251564794aa9b94183fdedbbaa6f +msgid ":func:`on_guild_stickers_update`" +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:12 +#: 8d522dd4ec834c5e834a8a3a1d82637a +msgid ":class:`Emoji`" +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:13 +#: 310d885187c7483da2962fd12d7a1274 +msgid ":class:`GuildSticker`" +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:14 +#: 20edfaefd22440da84fddf28d0239074 +msgid ":meth:`Client.get_emoji`" +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:15 +#: cd87fc16dde641848e06cdc3745dd7ec +msgid ":meth:`Client.get_sticker`" +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:16 +#: 376ebab11fed410fa9ee648eadadd06b +msgid ":meth:`Client.emojis`" +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:17 +#: da53d34b3cb74143990b6155914f84c5 +msgid ":meth:`Client.stickers`" +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:18 +#: 9f06e0f5a8254b18b243c717cede85e3 +msgid ":attr:`Guild.emojis`" +msgstr "" + +#: ../../docstring of discord.Intents.emojis_and_stickers:19 +#: e94aedb0a92a4d2eb749430c9b904893 +msgid ":attr:`Guild.stickers`" +msgstr "" + +#: ../../docstring of discord.Intents.integrations:1 +#: 82cc9e2c3bf94471a6afe7055f1931ba +msgid "Whether guild integration related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.integrations:5 +#: 074ea97303b1430abbb66ffdecfa5a06 +msgid ":func:`on_guild_integrations_update`" +msgstr "" + +#: ../../docstring of discord.Intents.integrations:6 +#: db8b10abf30e4f338ba3321c01b0d8d0 +msgid ":func:`on_integration_create`" +msgstr "" + +#: ../../docstring of discord.Intents.integrations:7 +#: 8a4c01932a9047bfb9bdacda59b4d202 +msgid ":func:`on_integration_update`" +msgstr "" + +#: ../../docstring of discord.Intents.integrations:8 +#: 15163e886024445285a54eabe211de99 +msgid ":func:`on_raw_integration_delete`" +msgstr "" + +#: ../../docstring of discord.Intents.webhooks:1 +#: b91eb60353b748fbafd2ab4d468854e7 +msgid "Whether guild webhook related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.webhooks:5 +#: 219b90d43ecd4cdb93842cde0ca7ad8b +msgid ":func:`on_webhooks_update`" +msgstr "" + +#: ../../docstring of discord.Intents.invites:1 +#: a000154afa16498980313a5774ee7da9 +msgid "Whether guild invite related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.invites:5 +#: e21ae498f88e4d79beda0758f132251c +msgid ":func:`on_invite_create`" +msgstr "" + +#: ../../docstring of discord.Intents.invites:6 +#: 16e7fe795f964391a3f3c86dd75b9d96 +msgid ":func:`on_invite_delete`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:1 +#: e40caa1c65ad491e9d112f97b21e9d8e +msgid "Whether guild voice state related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:5 +#: 25fed9eca43349af9467668ab9bd21d4 +msgid ":func:`on_voice_state_update`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:9 +#: d13a218f2ccd4c72853d83e4a9c76975 +msgid ":attr:`VoiceChannel.members`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:10 +#: 010907bf48744b41ba2066fa7971db0c +msgid ":attr:`VoiceChannel.voice_states`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:11 +#: 5847c603abd6407594c201013dd8e965 +msgid ":attr:`StageChannel.members`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:12 +#: 03062dcaae8b4486b35fef28bee77b23 +msgid ":attr:`StageChannel.speakers`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:13 +#: 5eb68043f742471c8924c38f23130e9b +msgid ":attr:`StageChannel.listeners`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:14 +#: 8f5eb7e3b8b9465ead3f169d2049572c +msgid ":attr:`StageChannel.moderators`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:15 +#: 01d00b56e1734ae2bbc6695d1ec8963f +msgid ":attr:`StageChannel.voice_states`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:16 +#: 8623195a820b416d9a6130d1bbe427b7 +msgid ":attr:`Member.voice`" +msgstr "" + +#: ../../docstring of discord.Intents.voice_states:20 +#: 437a20aa62fc4ddfb41a12901a70cd78 +msgid "This intent is required to connect to voice." +msgstr "" + +#: ../../docstring of discord.Intents.presences:1 +#: fbc8359014d746b0a17b72ed18b39f57 +msgid "Whether guild presence related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.presences:5 +#: 44e82bb60e6248308eda2e1b8038ab7c +msgid ":func:`on_presence_update`" +msgstr "" + +#: ../../docstring of discord.Intents.presences:9 +#: 47402cd7574849d5bf6fe573f4bd9555 +msgid ":attr:`Member.activities`" +msgstr "" + +#: ../../docstring of discord.Intents.presences:10 +#: 0331fd7b353f4017ae99fad38700eaa3 +msgid ":attr:`Member.status`" +msgstr "" + +#: ../../docstring of discord.Intents.presences:11 +#: 941c4033f3b146b3b68cd484390ed0ae +msgid ":attr:`Member.raw_status`" +msgstr "" + +#: ../../docstring of discord.Intents.presences:13 +#: c315eb5d04dc45fb80aecee083152af7 +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "" + +#: ../../docstring of discord.Intents.messages:1 +#: d1e7f97822e24e70a925b90529c3efba +msgid "Whether guild and direct message related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.messages:3 +#: 6386e552b53743b79119a4e475d56ce8 +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "" + +#: ../../docstring of discord.Intents.messages:7 +#: a5a4c34d434f48bdac4424fafb6ec8e8 +msgid ":func:`on_message` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.messages:8 +#: 05ddab36bc384b5284e911515e17751d +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.messages:9 +#: 283766bb3cf4476fb2a99046a5e96388 +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.messages:10 +#: e60854278414426b82501fcd8b4824d2 +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.messages:11 +#: 280b2627330241538608b590b0a27fda +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.end_poll:8 +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.fetch:6 +#: ../../../discord/poll.py:docstring of discord.poll.Poll.end:5 +#: ../../docstring of discord.Intents.dm_messages:15 +#: ../../docstring of discord.Intents.guild_messages:15 +#: ../../docstring of discord.Intents.messages:15 +#: 3a20c463f48c465d92f7b983f9414c0f +#: 4cc0d56ddc4341339bbabe226cfff4ea +#: 131678d976fa4452a3c6274c4a114015 +#: 6f70df5e3a324290889232d0395e7f0f +#: 6f70df5e3a324290889232d0395e7f0f +#: 6f70df5e3a324290889232d0395e7f0f +msgid ":class:`Message`" +msgstr "" + +#: ../../docstring of discord.Intents.messages:16 +#: b7094fdc4fba47d2a0e577bae573534a +msgid ":attr:`Client.cached_messages`" +msgstr "" + +#: ../../docstring of discord.Intents.messages:17 +#: dbd4d13864b74d0caf335c06d31ae082 +msgid ":meth:`Client.get_message`" +msgstr "" + +#: ../../docstring of discord.Intents.messages:18 +#: be2c7bbc837145fd9d0669915b819a4f +msgid ":attr:`Client.polls`" +msgstr "" + +#: ../../docstring of discord.Intents.messages:19 +#: 2574800ac9db4d8ea2a5340a9d9e27dc +msgid ":meth:`Client.get_poll`" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:21 +#: ../../docstring of discord.Intents.guild_messages:21 +#: ../../docstring of discord.Intents.messages:21 +#: 3bdf1873d5a74fbea1e77e2f6675beba +#: f674049e077048a98e3783c5fb184729 +#: fc0283f014bc4a5b9324a679e0833a98 +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "" + +#: ../../docstring of discord.Intents.messages:23 +#: ../../docstring of discord.Intents.reactions:7 +#: 4f0824eaddd64a2a81888d5b807b6347 +#: ffd561d996284ac3a46639791d4fc26e +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.messages:24 +#: ../../docstring of discord.Intents.reactions:8 +#: 7ef5737b80aa46ff8b63044455a72240 +#: bc06530511074b05bd24b74d33bc9ff1 +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.messages:25 +#: ../../docstring of discord.Intents.reactions:9 +#: 642521a6775f42d986de623796667074 +#: 394bfa686d5e4cddbfeb4a5eac2ae4ae +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.messages:29 +#: 113a885ba72a479f9816cf312e9508e8 +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:1 +#: 58d595eb07f64b7d88b031c98848e443 +msgid "Whether guild message related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:3 +#: 76c0df55b55e4e35bcfafdeb2894f87b +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:7 +#: 3ed6f2cf4e5346d792100f12dc292a14 +msgid ":func:`on_message` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:8 +#: 2d87f5c419fd40eda73ddb7c8eadc4a3 +msgid ":func:`on_message_edit` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:9 +#: 6a5683151a954cef8e456f31a8f4b60c +msgid ":func:`on_message_delete` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:10 +#: 278599b279eb41888c8afe2a640c9e3e +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:11 +#: 3edb50195c384b008f95a101f0a67a93 +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:16 +#: fed192185bb04b4287239cad91879f78 +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:17 +#: 36841d614dfe42c187467691f00ca877 +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:18 +#: db5907ffd40d4722820e9b43477aab5c +msgid ":attr:`Client.polls` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:19 +#: 9ff157fcf1ca48ee99c05bfbb7794d19 +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:23 +#: ../../docstring of discord.Intents.guild_reactions:7 +#: c8df715cc6f3485fb0be9c491e646337 +#: 0f9dd91ef1a649588b0c988cd620e899 +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:24 +#: ../../docstring of discord.Intents.guild_reactions:8 +#: 1c5ff802260840e5aaa934513f0f0779 +#: b51729b9d73e4397838fa22d56fdb613 +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:25 +#: ../../docstring of discord.Intents.guild_reactions:9 +#: 8c1165c7fa7941e59b5a7f5666dcd44b +#: f1ea6c632a6c4141aba136ccb278bd69 +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:27 +#: a64ea14a09974cb1b16bcc4f867c2d66 +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:30 +#: ../../docstring of discord.Intents.message_content:5 +#: a137ba63f3c846b3bd5d57a7bf96e78c +#: d177535ebad849a4baae6d17fa3e786b +msgid ":attr:`Message.content`" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:31 +#: ../../docstring of discord.Intents.message_content:6 +#: af61766b09a94aa8a75595f3be33a449 +#: 7c7118245dc842a49b2ad81bc4ba0ebb +msgid ":attr:`Message.embeds`" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:32 +#: ../../docstring of discord.Intents.message_content:7 +#: 058da375316a46a0af5a9c3109b1f253 +#: ebb75125811444e4a46f7aef8bbb23b8 +msgid ":attr:`Message.attachments`" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:33 +#: ../../docstring of discord.Intents.message_content:8 +#: 9dc7fe52d32942078f6af7ec79f3d42b +#: 323a68adf77442f680a96f59bea295e3 +msgid ":attr:`Message.components`" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:34 +#: ../../docstring of discord.Intents.message_content:9 +#: 4ad7140b499a4cb89a813065e5957e41 +#: bb8eef7fe7034efc99a7fdba061ec310 +msgid ":attr:`Message.poll`" +msgstr "" + +#: ../../docstring of discord.Intents.guild_messages:36 +#: 39f1204df2e74395a1eb386b27a8f22b +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:1 +#: c78c215a6aae4169a1f9a3c1724c1c35 +msgid "Whether direct message related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:3 +#: 545f70f28af845d895fab795a8db798e +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:7 +#: 49535423a41f4e07bbeef03b8a73feae +msgid ":func:`on_message` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:8 +#: 4fbb198aa9eb4036b38997263f645a36 +msgid ":func:`on_message_edit` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:9 +#: c052558aa6fd499d961a30ac05b3701f +msgid ":func:`on_message_delete` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:10 +#: 5f6aed68f8e2437eab3b43825ba7351b +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:11 +#: bfff63df875f474ab2731d3523fda430 +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:16 +#: 30afb4a67fe94b679534c913638a5e7a +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:17 +#: 26d6c2d45f2040049b45dec2d0a92c72 +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:18 +#: b7c04389bf3f499a907e6aac732891be +msgid ":attr:`Client.polls` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:19 +#: 978fd4fa51e54ed1b278b30a947cb3ef +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:23 +#: ../../docstring of discord.Intents.dm_reactions:7 +#: 589df8506c3445e5bb27a3f7c0e1eb13 +#: c93500c986124c1392636208ff6c21bf +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:24 +#: ../../docstring of discord.Intents.dm_reactions:8 +#: 6b9d55f3802a435184fcb981cea63230 +#: e84e9e724cad49af88471537ded96255 +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_messages:25 +#: ../../docstring of discord.Intents.dm_reactions:9 +#: 85eb129e0b244960ab86b6367da8d207 +#: 7551821d00e94b5783620a188bf47757 +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.reactions:1 +#: 929be1e90b7c4127b4b1a4b1f5227e67 +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.reactions:3 +#: cbf06a86328b41278e14751624f52288 +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "" + +#: ../../docstring of discord.Intents.reactions:10 +#: b520e34dccd94a90921124ddda898f9c +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.reactions:11 +#: d1960985d4cd4c66a2bde602f35b5a51 +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.reactions:12 +#: 4cd08c85fad54d61a5544a683a991117 +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.reactions:16 +#: 2e02a28d4a2941f78808f39deab7fb97 +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_reactions:1 +#: cb03c57ff0ee486e98028d316ac7b15a +msgid "Whether guild message reaction related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.guild_reactions:3 +#: d10593579af2443baef608bbeb6f2545 +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "" + +#: ../../docstring of discord.Intents.guild_reactions:10 +#: 0df07d2a7df544c48d8f96dc8113264e +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_reactions:11 +#: ebc3e0c3b4784460ac493e199affb0fc +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_reactions:12 +#: 306a280e3a2e4b30adb4f319eeda6048 +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_reactions:16 +#: 57c1129e4dc44018b3a3c668aef10c29 +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_reactions:1 +#: 2538837a36a94c71b5a8d6da0d6b2433 +msgid "Whether direct message reaction related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.dm_reactions:3 +#: e8b13dc4be62458eac269ecaa10d11f8 +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "" + +#: ../../docstring of discord.Intents.dm_reactions:10 +#: f7472ddcc3b849d1b46cba92ebcafa33 +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_reactions:11 +#: 77b2519afcc2442cb4f6d12fa82775b2 +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_reactions:12 +#: 4fd01a8e43c14ab09b21a1bed73cdddb +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_reactions:16 +#: 6c0795ef9c794e53b8975d533ed6ce7a +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_typing:1 +#: ../../docstring of discord.Intents.guild_typing:1 +#: ../../docstring of discord.Intents.typing:1 +#: 8d8207f6f69441fba7d0f03fa6f9ff53 +#: 9ff7cfd43aa44d0193722bec92998fd9 +#: fb5b74711cf94bc8800f3998b67e5970 +msgid "Whether guild and direct message typing related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.typing:3 +#: b898e59ee7fc4342baeedbd1b73f4b33 +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "" + +#: ../../docstring of discord.Intents.typing:7 +#: e88904e1ceb741c38dff4b489f9992d4 +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_typing:3 +#: e1722de30ef1478d936b8eccf5f35690 +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "" + +#: ../../docstring of discord.Intents.guild_typing:7 +#: 5f100734e1944fdb982c0fb6c5670427 +msgid ":func:`on_typing` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_typing:3 +#: 7c61fa008d294a99be7d718feddada6d +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "" + +#: ../../docstring of discord.Intents.dm_typing:7 +#: c578de896535489da4db6a189776729e +msgid ":func:`on_typing` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.message_content:1 +#: cbad205f564c47e592d5884c800312f8 +msgid "Whether the bot will receive message content in guild messages." +msgstr "" + +#: ../../docstring of discord.Intents.message_content:3 +#: 3e92f261dce94ddbb7620f9de2097dac +msgid "This corresponds to the following attributes:" +msgstr "" + +#: ../../docstring of discord.Intents.message_content:11 +#: 44b2007f97a2416092e57c8f2aba59fc +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "" + +#: ../../docstring of discord.Intents.message_content:18 +#: 51ab78245c344515b0f1125e605a15c4 +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:1 +#: bef96b66a0f244b5a38f7241d4fab76c +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:5 +#: bc9ab281c7634eb5903762e2016e824c +msgid ":func:`on_scheduled_event_create`" +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:6 +#: 1424de2889d44cd08ee76f3e5ec71212 +msgid ":func:`on_scheduled_event_update`" +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:7 +#: de2b0468d2bc46f5b7fa230073ff053a +msgid ":func:`on_scheduled_event_delete`" +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:8 +#: 06db204669404231b2bbef48f48ac834 +msgid ":func:`on_scheduled_event_user_add`" +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:9 +#: 5359210e9b034fb58acda9ecad6f33b9 +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:10 +#: 68dc5c5f11e8478d98811c45c76789d6 +msgid ":func:`on_scheduled_event_user_remove`" +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:11 +#: fb0c541330cd4eb88e186b73cd07a7cc +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:15 +#: ee5536d3feff443e8d0c7257c67d2d54 +msgid ":class:`ScheduledEvent`" +msgstr "" + +#: ../../docstring of discord.Intents.scheduled_events:16 +#: 3c14bd88cc6c4ccb8901dfdd0b76e80e +msgid ":meth:`Guild.get_scheduled_event`" +msgstr "" + +#: ../../docstring of discord.Intents.auto_moderation_configuration:1 +#: bec3db92d166482db1bba849f1e94291 +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.auto_moderation_configuration:5 +#: 1ac39f8cf9b4469d8d999661b8c24c74 +msgid ":func:`on_auto_moderation_rule_create`" +msgstr "" + +#: ../../docstring of discord.Intents.auto_moderation_configuration:6 +#: 8ac648368db54bacbec2e2eb40e77113 +msgid ":func:`on_auto_moderation_rule_update`" +msgstr "" + +#: ../../docstring of discord.Intents.auto_moderation_configuration:7 +#: 18b27bf369534e788deddd820a097b47 +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr "" + +#: ../../docstring of discord.Intents.auto_moderation_execution:1 +#: 475351bf214c4885ad631c85594f4a8e +msgid "Whether guild auto moderation execution events are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.auto_moderation_execution:5 +#: 4c983eebeaf4485db5c3ddebcbf0efd2 +msgid ":func:`on_auto_moderation_action_execution`" +msgstr "" + +#: ../../docstring of discord.Intents.guild_polls:1 +#: f95bad9f8617427192960ee5d7d3e351 +msgid "Whether poll-related events in guilds are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.guild_polls:3 +#: 5d507f28ee044395a8d1ae3be6ceacf3 +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "" + +#: ../../docstring of discord.Intents.guild_polls:7 +#: 5a045fdc9fdc485d83c2322409038d31 +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_polls:8 +#: 304c6596289646aa8a1095805ef028f0 +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_polls:9 +#: 05e8e2280e21407a918e5f02c960d2dd +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_polls:10 +#: 00dca805aaad44d4bfafd78fe271c325 +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_polls:14 +#: 6cb33f052b444dc4a60d14bdb8d808bd +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr "" + +#: ../../docstring of discord.Intents.guild_polls:15 +#: 79059d2bf47f438989117431cfe9b020 +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_polls:1 +#: 118d37e2ee15448e94dfc019ade6914d +msgid "Whether poll-related events in direct messages are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.dm_polls:3 +#: 35d0eccff7ce4576b46e08fe19302360 +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "" + +#: ../../docstring of discord.Intents.dm_polls:7 +#: 723ad2dc12714853bc08f2a76e74e345 +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_polls:8 +#: 3382fccc94ce4299a51acd0d773ab5ef +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_polls:9 +#: 2148babdf16e4f559aecaf0922d94215 +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_polls:10 +#: 8586c19bb54b43a082fc6299120ebd4d +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_polls:14 +#: 50969bfe9ded4c00920f06d8c016a91f +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr "" + +#: ../../docstring of discord.Intents.dm_polls:15 +#: a86842a665c548bda7a307438926efa7 +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr "" + +#: ../../docstring of discord.Intents.polls:1 +#: 1a141b9e47d24aa88c14c0347e995fc4 +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "" + +#: ../../docstring of discord.Intents.polls:3 +#: 8f82d792166e4b44a58ce77352695e92 +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "" + +#: ../../docstring of discord.Intents.polls:7 +#: b6062d500cd5462585ee87b16a9b27b7 +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.polls:8 +#: e166efad26614235a9e0fa97638be809 +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.polls:9 +#: 4c2d0558315b48aca6d884f5e1fa6482 +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.polls:10 +#: f61aa21b0abf475a80062c2ec1e01c35 +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr "" + +#: ../../docstring of discord.Intents.polls:14 +#: 049eee0a0e6e486e93c18c742946c954 +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr "" + +#: ../../docstring of discord.Intents.polls:15 +#: b745c7b501f8431c9568babd02d6d953 +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo:1 +#: 84a87c23e08949c7a63adab75f08db4d +msgid "A class that gives information and control over a specific shard." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo:3 +#: 47d2f7e18fe04d23b294149c6ca63d06 +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo:10 +#: 5f4b433a305d4ecda4f5b1945c565813 +msgid "The shard ID for this shard." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo:16 +#: 581a25b3efba444eb7ba3ff625adc7af +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:16 +#: ../../../discord/message.py:docstring of discord.message.MessageReference:12 +#: ../../../discord/message.py:docstring of discord.message.MessageReference:24 +#: ../../../discord/poll.py:docstring of discord.poll.Poll.total_votes:4 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo:18 +#: c99851f342584595848427fb38375fa3 +#: 838cbbf586be4eb48c92fc8e4c675bad +#: 49c4c30c182d4a029b0c433682a7412d +#: 8162371196bd4d3698a8c759ead84e30 +#: 8162371196bd4d3698a8c759ead84e30 +msgid "Optional[:class:`int`]" +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.is_closed:1 +#: e588f36be137417db4a513b55beb6351 +msgid "Whether the shard connection is currently closed." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.is_strict_subset:5 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.is_strict_superset:5 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.is_subset:5 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.is_superset:5 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.is_closed:4 +#: 9aca5fcb17de43ee849174bf0bd5a3f7 +#: 58d0f572132547b7a1dbaf2927806124 +#: 58d0f572132547b7a1dbaf2927806124 +#: 58d0f572132547b7a1dbaf2927806124 +#: 58d0f572132547b7a1dbaf2927806124 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:1 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:1 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:1 +#: ../../../discord/message.py:docstring of discord.message.Message.delete:1 +#: ../../../discord/message.py:docstring of discord.message.Message.pin:1 +#: ../../../discord/message.py:docstring of discord.message.Message.publish:1 +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:1 +#: ../../../discord/message.py:docstring of discord.message.Message.reply:1 +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:1 +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:1 +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.end_poll:1 +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.fetch:1 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.connect:1 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.disconnect:1 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.reconnect:1 +#: 7b6aba613fd1494aa813bfbe67e79186 +#: 2d31939098494f0489e8a053303107d7 +#: 61d3fe2200f04894857f7a6b254fed20 +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +#: 336386f348c2475b83c479b3376548af +msgid "|coro|" +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.disconnect:3 +#: ecf67b0b5fc54349b0e8d8fa3e8357ad +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.disconnect:6 +#: 729b93fac4b6486189b7327d2b1dbbaa +msgid "If the shard is already disconnected this does nothing." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.append_field:9 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.clear_fields:4 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_field:15 +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:20 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:20 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:11 +#: ../../../discord/message.py:docstring of discord.message.Message.delete:24 +#: ../../../discord/message.py:docstring of discord.message.Message.pin:18 +#: ../../../discord/message.py:docstring of discord.message.Message.publish:14 +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:25 +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:18 +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.update:10 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.update:10 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.connect:6 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.disconnect:9 +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.reconnect:6 +#: 2aeb0522710e4223920fd1c621bb6bb9 +#: 937a7163bad44cc0b251d6ab47e83b23 +#: 6ab82dd262114586ae1460ec0ef8949f +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +#: 682dc42cdccd42f3a7f85235164dfb67 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.reconnect:3 +#: 3ca454d9c645490db147a17d1cfcbd0d +msgid "Disconnects and then connects the shard again." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.connect:3 +#: 4369546ad28f4db7b54d0be7be35146c +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.ShardInfo.latency:1 +#: a1f36fed4af44c01a9019cc4415319a2 +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.is_ws_ratelimited:1 +#: 17a313ff1c1c4f18989340eb1c290ed9 +msgid "Whether the websocket is currently rate limited." +msgstr "" + +#: ../../../discord/shard.py:docstring of discord.shard.ShardInfo.is_ws_ratelimited:3 +#: de4084473dcf4a36a6c44ee307905482 +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../api/data_classes.rst:40 +#: e4e4b4653ed64e5bb6d330ca5bee9fe8 +msgid "Message" +msgstr "" + +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:1 +#: 68de5fcef5f94fbdaf3d75ea7edc3e4d +msgid "A class that represents what mentions are allowed in a message." +msgstr "" + +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:3 +#: c68127e476394b188a4eaaf7dc79ba2d +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "" + +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:9 +#: 373d657b9ca9432fbf94b5cbcd98de32 +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "" + +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:15 +#: 294c0e16454d4deb9930e7ce4ad19e32 +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "" + +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:21 +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:31 +#: 530c33a7c302431cbd3d33ded378f0ba +#: 481cf58f03144feda8cabc58d0c1e2ee +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "" + +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:25 +#: 7ae63488c1fe4d4f978d73adf95cb6f7 +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "" + +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions:35 +#: 33026490f59548eda43d83120ff762a0 +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "" + +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions.all:1 +#: c44ec110894948148069a5bc458fe5b9 +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "" + +#: ../../../discord/mentions.py:docstring of discord.mentions.AllowedMentions.none:1 +#: d9a6fb9e04ea469881c25941627a7172 +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference:1 +#: 7356eae6e80c48cabddc24248342e844 +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference:5 +#: 8d9e3b5226b84a4d9a95bccfb7d8ccc5 +msgid "This class can now be constructed by users." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference:10 +#: 64f0d504dd97408ca19d5fe84a0df71b +msgid "The id of the message referenced." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference:16 +#: b3465d0402d0442e829de7d9fc0c70fb +msgid "The channel id of the message referenced." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference:22 +#: 850b11222cbb40e28037b71bde8dd57f +msgid "The guild id of the message referenced." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference:28 +#: ../../../discord/message.py:docstring of discord.message.MessageReference.from_message:9 +#: f161b3d6b9624e51af155755e2347428 +#: ea0f2d067e6b4d12b130bbafb1face58 +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference:37 +#: e78e1e20c3a241d3831110a8584672ce +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference:43 +#: b515d831ed234923be2b9bf7f76b9ae3 +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference:47 +#: 19036d2129714259ad50409d11530f07 +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference.from_message:1 +#: 38dfb19fc9954c6aa0ff7e16266e3f0e +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference.from_message:6 +#: a071c244685f4efbae71cdecef86fa51 +msgid "The message to be converted into a reference." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference.from_message:9 +#: 9d87e15db2c9447c9e88885a3e0c7f97 +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "" + +#: ../../api/data_classes.rst:0 +#: f298076f2da34bc6b0148276f66f26f5 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +#: ec698da13c7a4164a882b6d5a0868fe2 +msgid "Returns" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference.from_message:15 +#: 7440176a49d948b3838d6425ad4d9117 +msgid "A reference to the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageReference.from_message:16 +#: b558b9254e9b4404829ca2f6328601fb +msgid ":class:`MessageReference`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.MessageReference.cached_message:1 +#: e6ec39418abd41f6a698bfae76703a02 +msgid "The cached message, if found in the internal message cache." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.MessageReference.jump_url:1 +#: 741ef1bfdd924f8599b6b2586945ca23 +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.MessageCall:1 +#: e14df9af50a04ea0be0f0b8d6d7c7217 +msgid "Represents information about a call in a private channel." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.MessageCall.participants:1 +#: d40bee3ac62041f6bd23c7b59415130c +msgid "A list of :class:`User` that participated in this call." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.MessageCall.participants:3 +#: eac74b3c5bbb4ecca33c22998b7aedc6 +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.MessageCall.ended_at:1 +#: 9f12734610a74b0fb1263173c3491d33 +msgid "An aware timestamp of when the call ended." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:1 +#: e23515a3745e48e0aa983bd9f441d4ed +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:4 +#: 85a154f901df4f9e8b832dbe86812112 +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:7 +#: fbc197c5dcea4c929ef5fd628a9678e6 +msgid ":meth:`TextChannel.get_partial_message`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:8 +#: e4309a228f054e5c8144ef070337dff0 +msgid ":meth:`Thread.get_partial_message`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:9 +#: 5fe3a1137b6b4dbca5bd2f9e3cd3ad2d +msgid ":meth:`DMChannel.get_partial_message`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:10 +#: 770dedf0d7114dc4945e8f3ca0425ae9 +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:11 +#: fad600ffac8d4fc28948c4f227ca6738 +msgid ":meth:`StageChannel.get_partial_message`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:12 +#: 78d000ebd1274ceb8a1d38bc04d2d20b +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:14 +#: 58c599d04d364692bdb6b88fd2ec7d02 +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:22 +#: e4ba7e0b8bc44daf89cca61ef932b4c7 +msgid "Checks if two partial messages are equal." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:26 +#: 1e92d468fde74a73a1982f62f77caec3 +msgid "Checks if two partial messages are not equal." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:30 +#: c75d297174c040c291921a55c84aff50 +msgid "Returns the partial message's hash." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:34 +#: d6f75811b37446e4b8273a6368b9898b +msgid "The channel associated with this partial message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:36 +#: 541a020405794893b204059d68dab197 +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`, :class:`PartialMessageable`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage:40 +#: 31d02f342df640338bf76f95cf441475 +msgid "The message ID." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.PartialMessage.jump_url:1 +#: fbf0476ac2bd4f97acf8af65e0851cc3 +msgid "Returns a URL that allows the client to jump to this message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:3 +#: 29d3d44d9e2744588fef0d8f39679d7b +msgid "Deletes the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:5 +#: 96fae79288124f748e4e8c239b9b8b1a +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:9 +#: e971acc468664c7ca471b26ba6621cf7 +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:13 +#: 235950ff919946af9edc635392ba3699 +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:17 +#: ea61a6f32dfa4957a53d4b532656c263 +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:0 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:0 +#: ../../api/data_classes.rst:0 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +#: 564b493c7da74b0a8b0026dc729e05e4 +msgid "Raises" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:20 +#: b41a10938385430fbde90c12f035c739 +msgid "You do not have proper permissions to delete the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:21 +#: f7436f8b61e141a19280a62c8ed64f2e +msgid "The message was deleted already" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:22 +#: bcbb6e482f804c64a4abecb6a4e45f19 +msgid "Deleting the message failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:3 +#: f4e9dc8f86aa42a3a4c4055bbb33ce20 +msgid "Publishes this message to your announcement channel." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:5 +#: bf76faf1f9274216a09c2e91f6386f58 +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:7 +#: 2c0ccdfabdea4c2ebf6deb39d29924c4 +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:10 +#: ea693d1db97448e1a598c6ae8080dbf9 +msgid "You do not have the proper permissions to publish this message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:11 +#: 592c408165ff46f08ce8dd44d9425363 +msgid "Publishing the message failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:3 +#: e4f6d1445a4d415c9125a39ce255020d +msgid "Pins the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:5 +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:5 +#: daa1cb3817894aabbb0ea1a18b81421d +#: daa1cb3817894aabbb0ea1a18b81421d +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:9 +#: 689db2ebc4e949cbad070710a8741095 +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:9 +#: 623c513b16e14fc0bbc6b4a535a3e44f +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:14 +#: 98fff9ede225464a8da6d514b271b810 +msgid "You do not have permissions to pin the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:15 +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:15 +#: a926f86ace9a4194a00a466364e85741 +#: a926f86ace9a4194a00a466364e85741 +msgid "The message or channel was not found or deleted." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:16 +#: 6c215f6b7f2a4ddf8d77119142ed8b62 +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:3 +#: 8195304858b0442fbdf53efa34569fd2 +msgid "Unpins the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:9 +#: c1d8b8aa5b0a40d6b9f36f1853444704 +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:9 +#: 91e0a65046cc4d02ad07e98b00977259 +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:14 +#: 8ca4cd26797341a4b9f4100aca8b1e8c +msgid "You do not have permissions to unpin the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:16 +#: 87cd18a54efc4fd385432901fb39b837 +msgid "Unpinning the message failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:3 +#: 5ded560527ab4593a0062d503dccbd71 +msgid "Add a reaction to the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:5 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:5 +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:5 +#: cd02277db89943ed9ee4591e8af3275f +#: cd02277db89943ed9ee4591e8af3275f +#: cd02277db89943ed9ee4591e8af3275f +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:7 +#: de4aa6f9efb64b64878511d76ccf83ff +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:12 +#: 17817427c32c455ca89b1bd91f98f0a8 +msgid "The emoji to react with." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:15 +#: 8b7a9e28239647328af16528598e19d6 +msgid "Adding the reaction failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:16 +#: a0d53681382747ca83356bca8a90fd97 +msgid "You do not have the proper permissions to react to the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:17 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:17 +#: d954e7e116e24bf7bccda076d7755919 +#: d954e7e116e24bf7bccda076d7755919 +msgid "The emoji you specified was not found." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:18 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:18 +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:23 +#: 5c4cc2b758fc41c6b650e94c29df70a7 +#: 5c4cc2b758fc41c6b650e94c29df70a7 +#: 5c4cc2b758fc41c6b650e94c29df70a7 +msgid "The emoji parameter is invalid." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:3 +#: b6e0bf1734ac49a8a83b561a1c43d714 +msgid "Remove a reaction by the member from the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:7 +#: 7c558ddb88eb464db3a2e359159b7159 +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:10 +#: 9b812ebf91cd4b3ca164b4e32fe1ae6f +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:14 +#: cd3b40641ddb494288abcfd4e0107825 +msgid "The emoji to remove." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:17 +#: b348722b041942dc82c4ba077705d83a +msgid "The member for which to remove the reaction." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:20 +#: fb92db3d862e465694b3b7a0eed56842 +msgid "Removing the reaction failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:21 +#: 83ff0da11c77493391aecc7fc410a1c5 +msgid "You do not have the proper permissions to remove the reaction." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:22 +#: f88cb1d0218f4349b20f4bfb953cee8d +msgid "The member or emoji you specified was not found." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:3 +#: 234e3f29572e46dda5d60b94630539b6 +msgid "Clears a specific reaction from the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:7 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:5 +#: 4b5bd7feaad94acd9247e5ea152d72f3 +#: 4b5bd7feaad94acd9247e5ea152d72f3 +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:12 +#: a9c93f7d5e044830b8ed37b3d6e8e512 +msgid "The emoji to clear." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:15 +#: 035b8fd086994b7a9e2e0a91af5b2b79 +msgid "Clearing the reaction failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:16 +#: 4cea524ce2534f379a652aeb46daa548 +msgid "You do not have the proper permissions to clear the reaction." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:3 +#: 01f83e3901ca4698aaceda560e42b939 +msgid "Removes all the reactions from the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:7 +#: 482e30aeb4c749f0b5876f81537409f4 +msgid "Removing the reactions failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:8 +#: 5a89399102614a71b080c592a9df4274 +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.reply:3 +#: 6a803b20f30b41499a3154208e1cddbd +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.reply:8 +#: 0432f057bc24436ab0c9162af0b56320 +msgid "The message that was sent." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.reply:9 +#: 815203ab4dd9447daab77ae359e85c30 +msgid ":class:`.Message`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.reply:11 +#: d7a8c5afd03e4ba18c9c5bc654aaa52f +msgid "Sending the message failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.reply:12 +#: f58e37c02b9346ac8affda2006377756 +msgid "You do not have the proper permissions to send the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.reply:13 +#: 2b6ec3e3ab574a20ae37d4d118fb1267 +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:1 +#: 303f5f553a71428285d200852504cec9 +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:6 +#: 06525f041a224df2946303c15381e33f +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:6 +#: 2e4f11c09c7d463aad237579dd9ca160 +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:12 +#: ba9e9d761df54e83b387bd4522433122 +msgid "The reference to this message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:13 +#: 5ed3d2c88b4d4d4a96d200c1bf406751 +msgid ":class:`~discord.MessageReference`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.PartialMessage.created_at:1 +#: 43820c6a82af4b7f9be88f13c76d124e +msgid "The partial message's creation time in UTC." +msgstr "" + +#: ../../docstring of discord.PartialMessage.guild:1 +#: 9302b84c521647b69da4af562f56165e +msgid "The guild that the partial message belongs to, if applicable." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.fetch:3 +#: 78d000ebd1274ceb8a1d38bc04d2d20b +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.fetch:5 +#: b04e3809d78644b79df2f3e48d3af7a6 +msgid "The full message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:43 +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.fetch:8 +#: 63ddd6f4054a4187bf9397afe4e430c8 +#: 63ddd6f4054a4187bf9397afe4e430c8 +msgid "The message was not found." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.fetch:9 +#: a427a195ecf744038571bf8b10a6e687 +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.fetch:10 +#: b061557a36b44bc4bbad240bbac41710 +msgid "Retrieving the message failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:3 +#: 88cf9ce437914616b574f0a18a7f93ed +msgid "Edits the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:5 +#: c5ab139ad01d4a7b90691f1121856e5e +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:8 +#: e7dd8c55bda54d1593f2c051cccb14df +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:11 +#: 5a43027c35e24a84986b785209ad38ee +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:14 +#: 570745aeffc4476ab77e0c0b35d2537c +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:14 +#: 2ad24a36d4c1433c993f05022e0eec5c +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:18 +#: ebdb77601a344eef94e13632ce40243e +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:23 +#: 242d817223804c44bf3d8353ad0b04e2 +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:27 +#: 3143cd2b586c437a9f2c2a88805412dd +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:34 +#: 712d02ac186e43d38096c29c6b1d0f2b +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:34 +#: 38b462beb37a4f5a82a7486de84aaad9 +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:40 +#: b209c9c412ab459f887dcda7956aa9bd +msgid "The message that was edited." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:41 +#: 495113be7d064bd2873a327f900820fd +msgid "Optional[:class:`Message`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:44 +#: b94b53751505427e8ffe980ff5ecedc5 +msgid "Editing the message failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.edit:45 +#: 65fe20a3c43f4521aff5291cbe54222b +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.end_poll:3 +#: 9b18057fb00a4638aa360b2a6ea1e132 +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.end_poll:7 +#: ../../../discord/poll.py:docstring of discord.poll.Poll.end:4 +#: 4384eb6dd74c4277bc507b455314f30a +#: 4384eb6dd74c4277bc507b455314f30a +msgid "The updated message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.end_poll:10 +#: ../../../discord/poll.py:docstring of discord.poll.Poll.end:7 +#: 6688c9001e7746ebbeb01ce1f0aa311d +#: 6688c9001e7746ebbeb01ce1f0aa311d +msgid "You do not have permissions to end this poll." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.PartialMessage.end_poll:11 +#: ../../../discord/poll.py:docstring of discord.poll.Poll.end:8 +#: 90c6425cdab34723ac7939316ba8e7b9 +#: 90c6425cdab34723ac7939316ba8e7b9 +msgid "Ending this poll failed." +msgstr "" + +#: ../../../discord/file.py:docstring of discord.file.File:1 +#: 666289f9bc4c46a09ad5e5df62a010c7 +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "" + +#: ../../../discord/file.py:docstring of discord.file.File:6 +#: 1ffc468a7e564a77b1ab6d3d175a0ddf +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "" + +#: ../../../discord/file.py:docstring of discord.file.File:11 +#: ad22cb7b2f7f4bcaad2aca05530883c5 +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "" + +#: ../../../discord/file.py:docstring of discord.file.File:17 +#: 386a428af11841de99743da4a1919cca +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "" + +#: ../../../discord/file.py:docstring of discord.file.File:20 +#: a10d87c534c147fa9e5613a010e1e0a2 +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "" + +#: ../../../discord/file.py:docstring of discord.file.File:22 +#: 314a606b86634b62b8130b78e23bd0eb +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "" + +#: ../../../discord/file.py:docstring of discord.file.File:26 +#: 8b943603619b4b7fa7d08ab6270e0f33 +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "" + +#: ../../../discord/file.py:docstring of discord.file.File:34 +#: 04abb69d4e3f4e8aacd536a566f80f75 +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "" + +#: ../../../discord/file.py:docstring of discord.file.File:40 +#: 4bf08b434a2d4714995daee269da72e6 +msgid "Whether the attachment is a spoiler." +msgstr "" + +#: ../../api/data_classes.rst:68 +#: 5672173d06bd46829384d84e99bed65e +msgid "Embed" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:1 +#: 427c2ee28b8949af81f97e02fb5bfc9b +msgid "Represents a Discord embed." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:7 +#: 97943274365f418986ea5471553de688 +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:12 +#: 11a5e4a569954a24829d3090b41a6858 +msgid "Returns whether the embed has any data set." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:16 +#: 4dc22484606047e590d81e706cba0691 +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:21 +#: 7832fd63a2a943b2a73a9a920fa6d5be +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:29 +#: 692ccfef72e24f968e41d37b39fd6f78 +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:38 +#: 91b98af56bdd4aa88649159b8f936fb7 +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:46 +#: 2d954533b76e4515a096046a55fefefe +msgid "The URL of the embed. This can be set during initialisation." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:53 +#: 092b6ba6ce244e53b6ce5f7e4e9500c1 +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:57 +#: 609d9519dae540debf386660d6ae227f +msgid ":class:`datetime.datetime`" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:61 +#: 6c1111e73b4f46c4ac628d0f4bcc7b61 +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed:64 +#: b7a8a80c58ec45f7894593aeb43777e9 +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.from_dict:1 +#: 6aeabaacc69f4ee68ea92fd54e214d10 +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.from_dict:4 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField.from_dict:4 +#: 11c5c5487f8c48a3954a882ef0c81c3c +#: 11c5c5487f8c48a3954a882ef0c81c3c +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.from_dict:11 +#: 4342a4fd6cec45399e05d59fff964f02 +msgid "The dictionary to convert into an embed." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.from_dict:14 +#: c1382cd2a5db4426a35bea2a16300c17 +msgid "The converted embed object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.copy:4 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.from_dict:15 +#: 31cb82cfd5694185a67134d428e16b31 +#: b90f78f68b5240018331590be71043e2 +msgid ":class:`Embed`" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.copy:1 +#: 14efae1cd9574abb9144795b5692270d +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.copy:3 +#: 21bca5a6e16b456cb4607d2165def378 +msgid "The copied embed object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.footer:1 +#: 437357134c32411e93189260ef456947 +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.footer:3 +#: 39ffb3814ad149369fd0fcb49fd8305d +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.footer:5 +#: f8236e0b51ff40158d943d38427aa448 +msgid "If the footer is not set then `None` is returned." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_footer:1 +#: 870e25600d0245c7ad5e1223e69be28f +msgid "Sets the footer for the embed content." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_author:3 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_footer:3 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_image:3 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_thumbnail:3 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_author:3 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_field_at:5 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_footer:3 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_image:3 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_thumbnail:3 +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:3 +#: 472e69cfec074712ba341e65b8fecb6e +#: 472e69cfec074712ba341e65b8fecb6e +#: 472e69cfec074712ba341e65b8fecb6e +#: 472e69cfec074712ba341e65b8fecb6e +#: 472e69cfec074712ba341e65b8fecb6e +#: 472e69cfec074712ba341e65b8fecb6e +#: 472e69cfec074712ba341e65b8fecb6e +#: 472e69cfec074712ba341e65b8fecb6e +#: 472e69cfec074712ba341e65b8fecb6e +#: 472e69cfec074712ba341e65b8fecb6e +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_footer:7 +#: 965bb8f2192e403bab9f4eaa08028da0 +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_footer:11 +#: 927c6440f36d47e190e1e1e477a19e5a +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.add_field:20 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.insert_field_at:25 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_author:10 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_footer:10 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_image:10 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_thumbnail:10 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_author:19 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_field_at:27 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_footer:16 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_image:15 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_thumbnail:15 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +#: 670ce1a77ea64456afc2146913f95675 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_footer:1 +#: 6f46beafb8ad419b8bc47fecd8449ae0 +msgid "Clears embed's footer information." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.image:1 +#: b1846260ec5f4bf9bbfa1b6037667698 +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.image:3 +#: ../../../discord/embeds.py:docstring of discord.Embed.thumbnail:3 +#: d81411e68d0f4d6f9518289513f8a904 +#: d81411e68d0f4d6f9518289513f8a904 +msgid "Attributes you can access are:" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.image:5 +#: ../../../discord/embeds.py:docstring of discord.Embed.thumbnail:5 +#: cffb7b3b2793415b9fa8247a91357837 +#: cffb7b3b2793415b9fa8247a91357837 +msgid "``url``" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.image:6 +#: ../../../discord/embeds.py:docstring of discord.Embed.thumbnail:6 +#: ee9b344e994943acb62237fa811574d1 +#: ee9b344e994943acb62237fa811574d1 +msgid "``proxy_url``" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.image:7 +#: ../../../discord/embeds.py:docstring of discord.Embed.thumbnail:7 +#: b72ba3cc26404e28b1075b704cb14550 +#: b72ba3cc26404e28b1075b704cb14550 +msgid "``width``" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.image:8 +#: ../../../discord/embeds.py:docstring of discord.Embed.thumbnail:8 +#: b8a6a508837443ba95e9285eeb489453 +#: b8a6a508837443ba95e9285eeb489453 +msgid "``height``" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.image:10 +#: 9faeb16d7c394608bcc439a360bfcdef +msgid "If the image is not set then `None` is returned." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_image:1 +#: f95421a72dd8440ea35b94bb90b99eab +msgid "Sets the image for the embed content." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_image:6 +#: 6c7d99b78a5c4b3ea4f56709ac489762 +msgid "Passing `None` removes the image." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_image:10 +#: 2e2904f0369540eda223ee6501bbff63 +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_image:1 +#: 12f2619a68bd4015bb2c363774c16ed2 +msgid "Removes the embed's image." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.thumbnail:1 +#: 8605a3db4e5e434aa5698e2eaf0e6009 +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.thumbnail:10 +#: aaa83fb51344424a868c52e6f11cb940 +msgid "If the thumbnail is not set then `None` is returned." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_thumbnail:1 +#: e6aa0e627eb64cc8ae7a6e3a20500fad +msgid "Sets the thumbnail for the embed content." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_thumbnail:6 +#: 363a882807bd4cbab5e84fb3b4692a92 +msgid "Passing `None` removes the thumbnail." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_thumbnail:10 +#: 75423cad1541415192d6e7ed5aeacdfe +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_thumbnail:1 +#: 41da049e3aaa47d0b6fb9c3810d19658 +msgid "Removes the embed's thumbnail." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.video:1 +#: 961bd85bd5544669b31dae29d3f43bd5 +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.video:3 +#: 227fc3080b80426fb032921f183f703a +msgid "Attributes include:" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.video:5 +#: b99b49981ef14c3d9973e3c9e0ca0ebf +msgid "``url`` for the video URL." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.video:6 +#: e3a3db758819485ba4186d6932ed0e65 +msgid "``height`` for the video height." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.video:7 +#: 700e78637e7c4a4a9dae808ca8367557 +msgid "``width`` for the video width." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.video:9 +#: c38bb3a47e1d4b9da777f617d8b4e912 +msgid "If the video is not set then `None` is returned." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.provider:1 +#: 53ae4ef3b67342cfa2ff6292ef331f63 +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.provider:3 +#: eb83f78507ca43cdbdb984fdc42255b0 +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.provider:5 +#: 827b55dbf1184c3dab56e04ad6ccb51b +msgid "If the provider is not set then `None` is returned." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.author:1 +#: 74ac52b2dc5b498da593026b6b13a969 +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.author:3 +#: 923af0d9c0ee421d8a47b81dd2cc38cb +msgid "See :meth:`set_author` for possible values you can access." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.author:5 +#: 7b0abc19fc80475c942f7e406a8d0356 +msgid "If the author is not set then `None` is returned." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_author:1 +#: 285a520f7e65498d81469c11d5a6f161 +msgid "Sets the author for the embed content." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_author:7 +#: 62a5b11154fd435893abf09011196871 +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_author:11 +#: ed34c5262fa9474c8924dadcd9168527 +msgid "The URL for the author." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_author:14 +#: 4f213ce46c5a457ba1edd63cf797d629 +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_author:1 +#: 9a7e8719ffe5410483741abf1f1bb582 +msgid "Clears embed's author information." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.fields:1 +#: 5b5a10ffdc3d4837bf82e6e1508bbf36 +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.fields:3 +#: c16c38bb27d34d019499e7f617025356 +msgid "See :meth:`add_field` for possible values you can access." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.Embed.fields:5 +#: 7bdb18c2d3e44a7393da17fce49995db +msgid "If the attribute has no value then ``None`` is returned." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.append_field:1 +#: 79ae22049785481294f74348ae5cca23 +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.append_field:6 +#: a01f46e43a594987ba8c68257beed74d +msgid "The field to add." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.add_field:1 +#: 4c217cd38ff4450fb5b7a530a6f5c252 +msgid "Adds a field to the embed object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.add_field:3 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.insert_field_at:3 +#: 87ad0ce020044d25a671b1e53ff2a758 +#: 87ad0ce020044d25a671b1e53ff2a758 +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.add_field:7 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.insert_field_at:12 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_field_at:12 +#: c789b835bf5a431583ac9ba7139a8a18 +#: c789b835bf5a431583ac9ba7139a8a18 +#: c789b835bf5a431583ac9ba7139a8a18 +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.add_field:11 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.insert_field_at:16 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_field_at:16 +#: 43af5dd6ae4045f9b21924d69672625c +#: 43af5dd6ae4045f9b21924d69672625c +#: 43af5dd6ae4045f9b21924d69672625c +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.add_field:15 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.insert_field_at:20 +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_field_at:20 +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField:19 +#: 8873c3d93b1140ecb68918d2fe44630e +#: 8873c3d93b1140ecb68918d2fe44630e +#: 8873c3d93b1140ecb68918d2fe44630e +#: 8873c3d93b1140ecb68918d2fe44630e +msgid "Whether the field should be displayed inline." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.insert_field_at:1 +#: 2422a4b7e42540f790e3c5b0ac81bfeb +msgid "Inserts a field before a specified index to the embed." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.insert_field_at:9 +#: 95e091093d0d4473965eaae62579eaaf +msgid "The index of where to insert the field." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.clear_fields:1 +#: 94e95d53e5d748bbb9c233bffc137d78 +msgid "Removes all fields from this embed." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_field:1 +#: 1918f1c5266e492db3c279793a97d66a +msgid "Removes a field at a specified index." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_field:3 +#: eb47fe95d8ca482c9822f5b42b5cd76e +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_field:8 +#: d64b9bcad6e74710b32282c557ecc870 +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.remove_field:12 +#: 27c9eef73d05412584f6c76f27828329 +msgid "The index of the field to remove." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_field_at:1 +#: 06fb6ae64d344a4c8cffb3d1ae87a4df +msgid "Modifies a field to the embed object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_field_at:3 +#: 5113353d66b34c79ac9f94b266959aee +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_field_at:9 +#: f2d46b8fe7024d5a8d8bfef0364690e8 +msgid "The index of the field to modify." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.set_field_at:23 +#: ec1906dad4f44ecc861c0854dcaf4ba2 +msgid "An invalid index was provided." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.to_dict:1 +#: 9f2422b1f3204fa1bac9e137c83a3ce5 +msgid "Converts this embed object into a dict." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.to_dict:3 +#: f20ea68e61504bfc87732ee925a9624e +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.Embed.to_dict:4 +#: 3e2fb25d1b7b430c9753a7983ca774ea +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField:1 +#: 6569f8ddd1d5458b981ca62acef92db6 +msgid "Represents a field on the :class:`Embed` object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField:7 +#: 4b949db6063c477f9a87d68d5d75b325 +msgid "The name of the field." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField:13 +#: bf58b3e4df784a86a6053bf20de7a0ff +msgid "The value of the field." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField.from_dict:1 +#: f68540cf33154256bc69249e7ae628b0 +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField.from_dict:11 +#: 90e46216828a4801969a488cd8916ef8 +msgid "The dictionary to convert into an EmbedField object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField.from_dict:14 +#: 52637f1dd2d74324a31b9a90e46afcc5 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField.to_dict:1 +#: 699af58122094dbf9484c027c693fe5b +msgid "Converts this EmbedField object into a dict." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField.to_dict:3 +#: ba1355079f4445af930b5e3fa1d87193 +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedField.to_dict:4 +#: 92393ba03f314ad3b66cc9fabd35fa5d +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:1 +#: 5d4b2cb5459a4128b46ed9bf4654e6cf +msgid "Represents the author on the :class:`Embed` object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:7 +#: 0165cce516c64f5298d46a75bd8e81f3 +msgid "The name of the author." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:13 +#: 8fd25c58c3d6409fa26fcff1fdf67eec +msgid "The URL of the hyperlink created in the author's name." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:19 +#: 804bbf20fe6c4418a6f03780ed6e383d +msgid "The URL of the author icon image." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedAuthor:25 +#: 26594f578fc04c879c5132daef91fc4f +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedFooter:1 +#: 46d90ba390ec43e18bd5792f90aabb64 +msgid "Represents the footer on the :class:`Embed` object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedFooter:7 +#: a3c86f8a52834fce8eb89bee93b79386 +msgid "The text inside the footer." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedFooter:13 +#: b0a628aa630b46d4be33f6f9afa72e04 +msgid "The URL of the footer icon image." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedFooter:19 +#: 063facd6e7d64b6f93f3cf83c02270c3 +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:1 +#: 84009370ba89477799600703d0fd6cb9 +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:8 +#: 6f7dcd5b4c4c4c12bb80f4aa70c23c29 +msgid "The source URL of the media." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:14 +#: ecbf3a1aa02c4e77addc7cbd2f7c268e +msgid "The proxied URL of the media." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:20 +#: 2ac3ec6fd9cb4c85a8cbd82e79f3f399 +msgid "The height of the media." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedMedia:26 +#: d14db22673ec4303a4e43dd372f44d0b +msgid "The width of the media." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedProvider:1 +#: f484eca39a0b48beb3dbe96fe7018043 +msgid "Represents a provider on the :class:`Embed` object." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedProvider:7 +#: c8302a6febd04b178d3e35c4e249f5a0 +msgid "The name of the provider." +msgstr "" + +#: ../../../discord/embeds.py:docstring of discord.embeds.EmbedProvider:13 +#: a5648743549f45b5a0f218160cc66a13 +msgid "The URL of the provider." +msgstr "" + +#: ../../api/data_classes.rst:102 +#: 646f8ad2d43d4dce987005a50de9a4cf +msgid "Poll" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:1 +#: 596b19059df5489181dd78e474801848 +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:7 +#: c56b411c300a4ce08a3948b4da36a990 +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:9 +#: 8194348890384866a884b99e2b4c496e +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:13 +#: b778208a512643b98cbdabb1baa24642 +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:15 +#: 458431e25bdd4c0eb444b5917c005c9b +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:19 +#: ff4fb64ef22b48a5869c27f3c18b453e +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:25 +#: 293efff145294d2eb01067636aec1ced +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:31 +#: a3dd116585e34cd4a61770f53cca1f2b +msgid "The poll's layout type. Only one exists at the moment." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:33 +#: 195cf209f72e47e4afe524acecfa6505 +msgid ":class:`PollLayoutType`" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:37 +#: 6831db54dc464b23af1be2fe67385a15 +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll:39 +#: 602770e61cb14b51aa23c776955a22b8 +msgid "Optional[:class:`PollResults`]" +msgstr "" + +#: ../../docstring of discord.Poll.expiry:1 +#: 095344d640ad4e3686d6f8d4fa1b42a0 +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.has_ended:1 +#: 63ea2e4d032942aa9b0412c8e86862a6 +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.has_ended:3 +#: 307037856f4043509e0e2ea6ab1e1788 +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.has_ended:4 +#: cab588e9a2574d4583001470cbd6d49d +msgid "Optional[:class:`bool`]" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.total_votes:1 +#: b6b03dc921914dbe85dc2d2be6b6cb5c +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.total_votes:3 +#: 9a0fdc68d36f4c10ac1bf87dfb8a303a +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.get_answer:1 +#: 4bc8b97bc3104d30935148e3e21263d2 +msgid "Get a poll answer by ID." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.get_answer:4 +#: 9c8376d158244c9881f918c37595e5a6 +msgid "The ID to search for." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.get_answer:7 +#: ab496839c07a44458b623141c8adbda2 +msgid "The returned answer or ``None`` if not found." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.get_answer:8 +#: ac1c66324a2a4f76a6be775792c276ec +msgid "Optional[:class:`.PollAnswer`]" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:1 +#: b9e53c629c9e4021938d3101f9108020 +msgid "Add an answer to this poll." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:7 +#: f0853a888d3947bbaa38d45f88131502 +msgid "The answer text. Maximum 55 characters." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:10 +#: ../../../discord/poll.py:docstring of discord.poll.PollMedia:13 +#: 1a9558843dca496cb958afb3adb20a4d +#: 1a9558843dca496cb958afb3adb20a4d +msgid "The answer's emoji." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:13 +#: 4c4cf6f10a384cfc880a5f42883f6373 +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:14 +#: a0d53028501b413b82ba75a394aae545 +msgid "You cannot add an answer to an existing poll." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:15 +#: 79943b0defc04dd7b076d3a3be3f3790 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:18 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:26 +#: e3ed22fcc48e492ba655a324fd22c8ab +#: e3ed22fcc48e492ba655a324fd22c8ab +msgid "Examples" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:19 +#: 75de56964bf64f1d8fc7e0877d23ec0b +msgid "Regular usage ::" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.add_answer:31 +#: 9dd4a3582245480195104a815db073ef +msgid "Chaining style ::" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.end:1 +#: 13088052a2d742f991adf8b074e2d093 +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.Poll.end:9 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:22 +#: a64df6f6aa664e17aca4891da237f9de +#: a64df6f6aa664e17aca4891da237f9de +msgid "This poll wasn't recieved from a message." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollMedia:1 +#: ffb86145dac0403086b43ea3e82fe8f5 +msgid "Represents a poll media object that supports both questions and answers." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollMedia:7 +#: accc54dddd454268a0692f282ff316d1 +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollMedia:15 +#: b006fb5c6c854d799f871d8884228162 +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer:1 +#: cf9a1a1afdf34f12bf876e33bccf7739 +msgid "Represents a poll answer object." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer:7 +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswerCount:7 +#: e709c6027c5e46c8bf07a344edadf14c +#: e709c6027c5e46c8bf07a344edadf14c +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer:14 +#: b3e15cbd16a74614a884d4e981789621 +msgid "The relevant media for this answer." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer:16 +#: 32d401e253064f7cad83219924e2b9a8 +msgid ":class:`PollMedia`" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.PollAnswer.text:1 +#: 740e7e072dfc46cc9d3842ce6572cbeb +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.PollAnswer.emoji:1 +#: 43371229509347538d72a881414b90e1 +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.PollAnswer.count:1 +#: 26fd8264a6f94ea9be9059f7006b6c63 +msgid "This answer's vote count, if recieved from Discord." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:1 +#: bc21833cc8ae40d88034324574ffa7aa +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:4 +#: 583e4434932a41e5b3a269a6713a7fa2 +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:8 +#: b5997af254ee4259b0f34384a2799bc1 +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:13 +#: daa91e5f499d467fbc3e9bbca91e4b3e +msgid "For pagination, answers are sorted by member." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:0 +#: 01899695d46f4d1e8b1c2d94e2f745de +msgid "Yields" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:16 +#: 94211056fb704567a53471567e50f9fe +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:21 +#: 64baeefd4bb8487082a15bc551e40738 +msgid "Getting the voters for the answer failed." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:23 +#: ee17ca5d93ae4e32b5e43584dcdbcef6 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:27 +#: 4be99a5a14964333b7e39865a359b0b5 +msgid "Usage ::" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswer.voters:32 +#: c6e55828fa284012bdc2208c68d12e4c +msgid "Flattening into a list: ::" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswerCount:1 +#: c101fc73539645ef943416c6f35acff9 +msgid "Represents a poll answer count object." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswerCount:14 +#: f48a6afded354efb9ad758c1aab3db6d +msgid "The number of votes for this answer." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollAnswerCount:20 +#: 7d1d57e3a567465c814288bb92f9de2b +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollResults:1 +#: 0b2a540dde524344979b5afd0f3f6f3d +msgid "Represents a poll results object." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollResults:7 +#: aa347e9ae60b498abf39d69670fbb686 +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollResults:13 +#: cd87d8d6808b46b0bfe7d013d6331be9 +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollResults:15 +#: 471754e81c27452484eaf708e3581229 +msgid "List[:class:`PollAnswerCount`]" +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollResults.total_votes:1 +#: 117cb59ea6cc4530a8c119572b675f9e +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "" + +#: ../../../discord/poll.py:docstring of discord.poll.PollResults.total_votes:3 +#: 935d9c5a268d4132998d5ab2b779a4a0 +msgid "The total number of votes on this poll." +msgstr "" + +#: ../../api/data_classes.rst:132 +#: 43ab35acc0f9434b8e53132a073d8d22 +msgid "Flags" +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:1 +#: b6506378885b40b386e202d88e1b6b50 +msgid "Controls the library's cache policy when it comes to members." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:3 +#: d52ae24e27c848d8a93fcd4d63ed62ab +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:7 +#: 1934b928b4124bf29bf6bd8efee2c8b7 +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags:15 +#: 100fc3ea47604bbdb0ab983d056eb915 +msgid "The default value is all flags enabled." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags.all:1 +#: cfd924b2696a41d7b71920f52b279979 +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags.all:4 +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags.none:4 +#: 8bb674b4b37b49d39b2e4c552f123f11 +#: 8bb674b4b37b49d39b2e4c552f123f11 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags.none:1 +#: ec84f2c7145b46fda14ed34b3383678f +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "" + +#: ../../docstring of discord.MemberCacheFlags.voice:1 +#: 1e599f7b72f84d17810aeec4385ebe1a +msgid "Whether to cache members that are in voice." +msgstr "" + +#: ../../docstring of discord.MemberCacheFlags.voice:3 +#: b83d29d1e0c5490080d48db4692e75c7 +msgid "This requires :attr:`Intents.voice_states`." +msgstr "" + +#: ../../docstring of discord.MemberCacheFlags.voice:5 +#: 29cff10544cf45c8a99e777641354826 +msgid "Members that leave voice are no longer cached." +msgstr "" + +#: ../../docstring of discord.MemberCacheFlags.joined:1 +#: a2aadd5a8cd640cd8d80de55c70cb7be +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "" + +#: ../../docstring of discord.MemberCacheFlags.joined:4 +#: 0d84624c15994c2a971384631903a284 +msgid "This requires :attr:`Intents.members`." +msgstr "" + +#: ../../docstring of discord.MemberCacheFlags.joined:6 +#: 199c6d64c1dd449bb70c5456385611ff +msgid "Members that leave the guild are no longer cached." +msgstr "" + +#: ../../docstring of discord.MemberCacheFlags.interaction:1 +#: cd9de6171ee249e386bcd743296c86c1 +msgid "Whether to cache members obtained through interactions." +msgstr "" + +#: ../../docstring of discord.MemberCacheFlags.interaction:3 +#: b69154ada3f34b8cb44ac06ab84141a2 +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags.from_intents:1 +#: 71bce589850840799aef69fb53812713 +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags.from_intents:5 +#: d8f4814af70a4ca685de8d66a3618a1b +msgid "The intents to select from." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags.from_intents:8 +#: eae9acf293d74ae296ae74f8938b1cca +msgid "The resulting member cache flags." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberCacheFlags.from_intents:9 +#: f8dfaee97e7d4a20a85699e42ecaa334 +msgid ":class:`MemberCacheFlags`" +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:1 +#: a1aa35ec632b4627b69b3e64b95188e3 +msgid "Wraps up the Discord Application flags." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:7 +#: 2548906fb1c548c3817b77801d35027f +msgid "Checks if two ApplicationFlags are equal." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:10 +#: d0b32f0c6e85498a948b585d05a78060 +msgid "Checks if two ApplicationFlags are not equal." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ApplicationFlags:31 +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:31 +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:31 +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:31 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:31 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:31 +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:31 +#: 3851f49fd12d49ba93ddefde1a9b5c8b +#: 3851f49fd12d49ba93ddefde1a9b5c8b +#: 3851f49fd12d49ba93ddefde1a9b5c8b +#: 3851f49fd12d49ba93ddefde1a9b5c8b +#: 3851f49fd12d49ba93ddefde1a9b5c8b +#: 3851f49fd12d49ba93ddefde1a9b5c8b +#: 3851f49fd12d49ba93ddefde1a9b5c8b +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.managed_emoji:1 +#: 7ac241b169894315bbfd2621597de88b +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.group_dm_create:1 +#: 149b5addc60848a690ff6ed3364cd720 +msgid "Returns ``True`` if the application can create group DMs." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.application_auto_moderation_rule_create_badge:1 +#: 84e63c5c48ba4eb5ae1dabaa258759da +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.rpc_has_connected:1 +#: e6a9990ba3d646e388c64014e1e75a0f +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.gateway_presence:1 +#: 8bfd56a90b0740749399b09e8492b2c3 +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.gateway_presence_limited:1 +#: 031b14e91f46471b9c1caa3c143fe24c +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.gateway_guild_members:1 +#: b61c0d3c0ddc4019917e3b2c9fe5838e +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.gateway_guild_members_limited:1 +#: d6f247075dcd4acd9b36925e53626cc5 +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.gateway_message_content_limited:1 +#: ../../docstring of discord.ApplicationFlags.verification_pending_guild_limit:1 +#: 800775621ea646a5ab3d7aa7241a312f +#: 800775621ea646a5ab3d7aa7241a312f +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.embedded:1 +#: dc09c558ec6541459a558f676916b5e3 +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.gateway_message_content:1 +#: 0781df4a164c450a824b0c465ac4ab7d +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.app_commands_badge:1 +#: e59991780d57460db3e98a50cf7bdf3a +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "" + +#: ../../docstring of discord.ApplicationFlags.active:1 +#: 3f7a918d6bfb4ce4b696d4e6ebe3e353 +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:1 +#: a4bd098e1fc34c008219770e62a06a99 +msgid "Wraps up a Discord system channel flag value." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:3 +#: f486929f646446b8b0d2b87f181db124 +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:40 +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:39 +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:39 +#: ../../../discord/flags.py:docstring of discord.flags.SystemChannelFlags:43 +#: d854e922bf584117a013f976c9b28415 +#: d854e922bf584117a013f976c9b28415 +#: d854e922bf584117a013f976c9b28415 +#: d854e922bf584117a013f976c9b28415 +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "" + +#: ../../docstring of discord.SystemChannelFlags.join_notifications:1 +#: b8ee9a8232a8404a9b7465ad566dcc3b +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "" + +#: ../../docstring of discord.SystemChannelFlags.premium_subscriptions:1 +#: 30e1356e12bc4d2db6d115c6dfbb702a +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "" + +#: ../../docstring of discord.SystemChannelFlags.guild_reminder_notifications:1 +#: c860a7da688f4a3eba329b0f5a44fe60 +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "" + +#: ../../docstring of discord.SystemChannelFlags.join_notification_replies:1 +#: a12de3bb2ee84f1dbee7cc3d66dc1c5a +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:1 +#: 10b8cc67e79340b8a4ad420ef92f838a +msgid "Wraps up a Discord Message flag value." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MessageFlags:3 +#: 480c78b484734583bd294f3bc094cfa4 +msgid "See :class:`SystemChannelFlags`." +msgstr "" + +#: ../../docstring of discord.MessageFlags.crossposted:1 +#: 6d39d51a10534ed09d3a2c79eec76696 +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "" + +#: ../../docstring of discord.MessageFlags.is_crossposted:1 +#: 649ea51ce00e42e1ad43640c7458e6b0 +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "" + +#: ../../docstring of discord.MessageFlags.suppress_embeds:1 +#: 2a7cde95910f400596d570b49bfed689 +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "" + +#: ../../docstring of discord.MessageFlags.source_message_deleted:1 +#: 70ea37bce38b4f5fbbbeb08d57268b75 +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "" + +#: ../../docstring of discord.MessageFlags.urgent:1 +#: bf30f3b5a2484302b7d0c3ab72dba8c3 +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "" + +#: ../../docstring of discord.MessageFlags.urgent:3 +#: d317088a0a64477588f5743f245fceaf +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "" + +#: ../../docstring of discord.MessageFlags.has_thread:1 +#: 77a6e2aeea7940edb81b9265feb50d2f +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "" + +#: ../../docstring of discord.MessageFlags.ephemeral:1 +#: 0a77c56b6c474a99a5cd0657b7f7fc02 +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "" + +#: ../../docstring of discord.MessageFlags.loading:1 +#: 336d134a2b53410bb583d939dc1cecd4 +msgid "Returns ``True`` if the source message is deferred." +msgstr "" + +#: ../../docstring of discord.MessageFlags.loading:3 +#: 57c75b7855894e6fa76c6bda80588672 +msgid "The user sees a 'thinking' state." +msgstr "" + +#: ../../docstring of discord.MessageFlags.failed_to_mention_some_roles_in_thread:1 +#: 67057e75388e4edb90308a2fb5c13697 +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "" + +#: ../../docstring of discord.MessageFlags.suppress_notifications:1 +#: 3306149588ed40d5b847b2100e63721a +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "" + +#: ../../docstring of discord.MessageFlags.suppress_notifications:3 +#: 1765bd17b14d4dfbbb4f1981def660e8 +msgid "Users will still receive mentions." +msgstr "" + +#: ../../docstring of discord.MessageFlags.is_voice_message:1 +#: 8dfb19e31e824f7482b22c70839d3cfe +msgid "Returns ``True`` if this message is a voice message." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.AttachmentFlags:1 +#: 8dc3ce8bf77f4a4684ab876af0ddf039 +msgid "Wraps up the Discord Attachment flags." +msgstr "" + +#: ../../docstring of discord.AttachmentFlags.is_clip:1 +#: eeac692215814c7a97cb5a368f5e9411 +msgid "Returns ``True`` if the attachment is a clip." +msgstr "" + +#: ../../docstring of discord.AttachmentFlags.is_thumbnail:1 +#: 9e8032c720724ec2889d8c49b9305286 +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "" + +#: ../../docstring of discord.AttachmentFlags.is_remix:1 +#: 4ddb09d9637e4f49b0d1b3ca90f1a568 +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:1 +#: 33afb8ca627c4db79bb2365e319224ca +msgid "Wraps up the Discord User Public flags." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:7 +#: 5649c119f893493caabba18e103f07ad +msgid "Checks if two PublicUserFlags are equal." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags:10 +#: 6691bb86ba0b404ba18a2bb137eb7d30 +msgid "Checks if two PublicUserFlags are not equal." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.staff:1 +#: 9b746d60bed942a1950241d77759f1a7 +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.partner:1 +#: 4d18d90b42db4daaa8b711452f4a0d2d +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.hypesquad:1 +#: 46589090794347e886aa5de6ceee28fb +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.bug_hunter:1 +#: fccf1e186e094ebfaa00fbfb54e2fa3c +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.premium_promo_dismissed:1 +#: 2984d09fb2534bbda92f69564035b676 +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.hypesquad_bravery:1 +#: aa19d8a150674cddbd5c6a0a025bcc4a +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.hypesquad_brilliance:1 +#: 49e3b8c90259460298e42707a0ef84b1 +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.hypesquad_balance:1 +#: f8e077f7732e4742b902ed3298ce6bde +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.early_supporter:1 +#: e29056e2fb184c68b27a137402116f08 +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.team_user:1 +#: 4d6fedf25ae24ef484d125962d81e0d9 +msgid "Returns ``True`` if the user is a Team User." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.system:1 +#: e4f9559c2f6944abad4e86bb507e3511 +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.bug_hunter_level_2:1 +#: c8a9c76c50394d37a2bdf94ea0ccb8f5 +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.verified_bot:1 +#: ae50f2aeb3604bef956017622574b740 +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.verified_bot_developer:1 +#: 1adf9343bab7420e940b41a8e38ecfe8 +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.early_verified_bot_developer:1 +#: b8c67f65a3664475aa8de21005c25dc1 +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.discord_certified_moderator:1 +#: 47a31c6e967f49cbbd767def4ed0befc +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.bot_http_interactions:1 +#: 36db2efdfac943f8baf70ac04cc9d31d +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "" + +#: ../../docstring of discord.PublicUserFlags.active_developer:1 +#: f350510626714f79b476a615b61db38c +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags.all:1 +#: e4bc6b0210804222bd91863723951907 +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.PublicUserFlags.all:4 +#: 650deb70a83e4df5a896568198f3618a +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:1 +#: 7df90c872a784fe58cfc7e1be05d6805 +msgid "Wraps up the Discord Channel flags." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:7 +#: 2521c5e0a2a1484e9e698431323eefe8 +msgid "Checks if two ChannelFlags are equal." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.ChannelFlags:10 +#: ffe02de519314d17a878ee53f189096d +msgid "Checks if two ChannelFlags are not equal." +msgstr "" + +#: ../../docstring of discord.ChannelFlags.pinned:1 +#: 327561b0cace4239ac00b172a83525a7 +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "" + +#: ../../docstring of discord.ChannelFlags.require_tag:1 +#: 7f91812da4014ead9e3be4e675f7e057 +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:1 +#: 32012591b7c94fc08af1f60088606c64 +msgid "Wraps up the Discord SKU flags." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:7 +#: f35d7acec4bf4de78098e1c6d19d5151 +msgid "Checks if two SKUFlags are equal." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.SKUFlags:10 +#: dea4d42fa7ca4a229e039f2140418623 +msgid "Checks if two SKUFlags are not equal." +msgstr "" + +#: ../../docstring of discord.SKUFlags.available:1 +#: 027a6ab64f424916937c03f62e7ce9b5 +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "" + +#: ../../docstring of discord.SKUFlags.guild_subscription:1 +#: 81df38454e7f4f4a880120a036e9db35 +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "" + +#: ../../docstring of discord.SKUFlags.user_subscription:1 +#: eea2e37ea19042af87b4d63827d12ead +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:1 +#: 0afe05464fe04d56a027d0cd3c9db82a +msgid "Wraps up the Discord Member flags." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:7 +#: d080f67e546140669b711c0dbbfcc0b0 +msgid "Checks if two MemberFlags are equal." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.MemberFlags:10 +#: 90a926f55a614819835583819864e090 +msgid "Checks if two MemberFlags are not equal." +msgstr "" + +#: ../../docstring of discord.MemberFlags.did_rejoin:1 +#: 2c49440173f94a6e86ae552f1c7630b4 +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "" + +#: ../../docstring of discord.MemberFlags.completed_onboarding:1 +#: f716a9f2d5ed4fe396bc2744eeca2d3c +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "" + +#: ../../docstring of discord.MemberFlags.bypasses_verification:1 +#: 73740166295048a08a0cfddbe7978d73 +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "" + +#: ../../docstring of discord.MemberFlags.bypasses_verification:5 +#: fda7930c8a7c4c91abf604a4b839e60d +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "" + +#: ../../docstring of discord.MemberFlags.started_onboarding:1 +#: 834d998270134606aca02e4bb572587f +msgid "Returns ``True`` if the member has started onboarding." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:1 +#: a98c247c252c4ca589403b8194c19b47 +msgid "Wraps up the Discord Role flags." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:7 +#: 45517fcabe5845d6ae9bc1ae96508905 +msgid "Checks if two RoleFlags are equal." +msgstr "" + +#: ../../../discord/flags.py:docstring of discord.flags.RoleFlags:10 +#: a2547963b0e14605b352befb4ba8e266 +msgid "Checks if two RoleFlags are not equal." +msgstr "" + +#: ../../docstring of discord.RoleFlags.in_prompt:1 +#: bd41c11c44b445609dabf6fdee86122c +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "" + +#: ../../api/data_classes.rst:185 +#: 4d2438b9745240cd93782603979ee00b +msgid "Colour" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour:1 +#: 0bc56a88a55a448eba210de89aecb3ec +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour:4 +#: af377132a7a245d282a7cb5f72b98154 +msgid "There is an alias for this called Color." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour:10 +#: 95e2e6b9db564bfd9a10a6d0eb1a1c4f +msgid "Checks if two colours are equal." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour:14 +#: a6b3fc12993a4cb192fcf2c9cfa96e4b +msgid "Checks if two colours are not equal." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour:18 +#: cc84aa4e5a66474da6426208b5a7b8a7 +msgid "Return the colour's hash." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour:22 +#: 7ff8810602fe4d239a77dc15427f234e +msgid "Returns the hex format for the colour." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour:26 +#: 1e7a0f776972463ca7787176b0f12aaf +msgid "Returns the raw colour value." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour:30 +#: edb32b320cb342c89417ab0c470aadb4 +msgid "The raw integer colour value." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.Colour.r:1 +#: 2c8372e38d3243dea387feb00d363abf +msgid "Returns the red component of the colour." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.Colour.g:1 +#: 930927fd51f84af48c7f6523a2c27036 +msgid "Returns the green component of the colour." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.Colour.b:1 +#: 6a5c671c23a4455cae45cf7b86841334 +msgid "Returns the blue component of the colour." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.to_rgb:1 +#: 0258dd8927a5476ea31d85d4a343a00f +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.to_rgb:4 +#: a239b08c195d4cdeb39113116b69730e +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.from_rgb:1 +#: 63847d00bfc3402f9dddbc0fdb8fc12f +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.blue:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.blurple:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_blue:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_gold:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_green:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_grey:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_magenta:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_orange:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_purple:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_red:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_teal:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.darker_grey:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.default:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.embed_background:14 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.from_hsv:9 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.from_rgb:9 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.gold:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.green:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.greyple:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.light_grey:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.lighter_grey:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.magenta:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.og_blurple:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.orange:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.purple:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.random:16 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.red:4 +#: ../../../discord/colour.py:docstring of discord.colour.Colour.teal:4 +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +#: a0f8ca655ace4281904460b701a12e9d +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.from_hsv:1 +#: 1d2fd978b53341d1a9951c10e8409fa8 +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.default:1 +#: f6fe4b8aaf4a4059a6cb38c6c3750f4d +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.random:1 +#: b6244152aeb844b0b3a073594ad4f462 +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.random:5 +#: f72e38aaf95f4a55909f8f47e528047d +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.random:11 +#: 7e753ac524734679a23d66e7eca10609 +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.random:11 +#: 5733fdce535445dabd34d11f1981bffb +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.teal:1 +#: ffc576a6a0b647c994a91fc1ab89147f +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_teal:1 +#: 019ad6d562fb4868aebb8f80fbaf2628 +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.brand_green:1 +#: 2809c53d29824df69166201321bc9fec +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.green:1 +#: 6cc5d6aadbb64f25b32f9664d58ed82e +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_green:1 +#: 4ac07d277e394779972f7a7047b96483 +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.blue:1 +#: 1444ec89e41c4f6ab5ed395fe2d8050c +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_blue:1 +#: 2519110c724f42b2b34d51845e341702 +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.purple:1 +#: 8c9e35fbb1d540fd8a4191919032a05d +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_purple:1 +#: b3537fcb5c5e400faa8fa6d3adc61e0f +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.magenta:1 +#: b9b81e21116143db998500b2475dc29b +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_magenta:1 +#: a3ddc438b7fb47a8892de380f8a38f52 +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.gold:1 +#: 47a39aa405ea4c29a2c3f3987ce0d07e +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_gold:1 +#: a43570fb88f84b3fa081555ded31e601 +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.orange:1 +#: e4488bf9b87f46dd8b00d231510a0d11 +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_orange:1 +#: 7fb3e4c7e3624964a72d3ca847d50528 +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.brand_red:1 +#: bf01a50532b5404dae7505a55a88a477 +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.red:1 +#: 4eeea91e793a4fc19914d97c20797aab +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_red:1 +#: c9ffe0ca315247aeb2070b757416897c +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.lighter_grey:1 +#: 5e27ef808d91425e970ae6662337c2b5 +#: 5e27ef808d91425e970ae6662337c2b5 +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_grey:1 +#: 20eb2a0175154749974a5ddcaea1c505 +#: 20eb2a0175154749974a5ddcaea1c505 +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.light_grey:1 +#: c72d480b7c9149d6ac778be8a1432ded +#: c72d480b7c9149d6ac778be8a1432ded +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.darker_grey:1 +#: 6f66401bfb6b462090fc239b5f121de9 +#: 6f66401bfb6b462090fc239b5f121de9 +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.og_blurple:1 +#: a8a91c59f7f041378f7c8df6b9ba5d7f +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.blurple:1 +#: c00febfa573b48cab072245d343ad67b +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.greyple:1 +#: 8dd2bbd3142e43648a5342be5b997b2d +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.dark_theme:1 +#: ea6a540eff9141a58a4abebcb923706a +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.fuchsia:1 +#: b662095d005e4d848cdbb33fbcc79457 +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.yellow:1 +#: d041d59442644a0597c6274311bc6482 +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.nitro_pink:1 +#: 9082218ea3464ffb99c07f1fddb70e17 +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.embed_background:1 +#: 1a28ea6d58c74dc396e00736389a7fe5 +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.embed_background:4 +#: 7fb2e3dde8594c9d839efec27ed4f7a6 +msgid "``0x2B2D31`` (dark)" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.embed_background:5 +#: 36ab5f667d484968a82596cffbe4c7cc +msgid "``0xEEEFF1`` (light)" +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.embed_background:6 +#: 0110f69fe3ed402abf89c0ba8051e189 +msgid "``0x000000`` (amoled)." +msgstr "" + +#: ../../../discord/colour.py:docstring of discord.colour.Colour.embed_background:11 +#: d72641880fdd4598876dd1a82c6e7d8f +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "" + +#: ../../api/data_classes.rst:193 +#: 9905f7d99ac846c088e3402bdc9a380a +msgid "Activity" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:1 +#: c52db67ea78d414fa4300f7be0054f5a +msgid "Represents an activity in Discord." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:3 +#: 54f2215d0c5041639c16cfe8b6f42717 +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:6 +#: e729d11740df48e5bc828e39978e4180 +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:9 +#: ../../../discord/activity.py:docstring of discord.activity.BaseActivity:7 +#: bd8eef39e9e8469488008ac99a754b70 +#: bd8eef39e9e8469488008ac99a754b70 +msgid ":class:`Game`" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:10 +#: ../../../discord/activity.py:docstring of discord.activity.BaseActivity:8 +#: 5304d830379f4e10b5bf07f5239cc960 +#: 5304d830379f4e10b5bf07f5239cc960 +msgid ":class:`Streaming`" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:14 +#: f1a64e72ab044453a26f93ef99cf7fe9 +msgid "The application ID of the game." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:20 +#: 2a70cf7691b54a0688e7d533bd4bebf6 +msgid "The name of the activity." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:26 +#: 841863bc00d34766894f5836500f6ced +msgid "A stream URL that the activity could be doing." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:32 +#: 80e09c77ef794d7b85723a1454ad2baf +msgid "The type of activity currently being done." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:34 +#: 2b20ab734fe344d5a8cea26cd6e575d5 +msgid ":class:`ActivityType`" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:38 +#: 6e859884311d44dbac604d61a1b31e7f +msgid "The user's current party status or text used for a custom status." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:44 +#: d879aa74129d4958b85d73b8adede6f7 +msgid "The detail of the user's current activity." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:50 +#: 0dae68955393486393daf4ec2426aa22 +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:52 +#: 7dfd4bc9fbcd46bc908a24168eaa3524 +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:54 +#: 603680d7a4734e318b74294bb5d17cae +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:57 +#: 3afc0211c73c4d1da98f985be927ec34 +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:61 +#: 90cf228cb518423fa1fbcbe0ea6ca047 +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:64 +#: 2d84cc8fd7454346a7eee48a3fc9b69c +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:65 +#: 2963e1126d634fb99d4f2c8854ad01e1 +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:66 +#: 6974ca4a73a842aa9cee3f5b2a6b9d75 +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:67 +#: 7694677fe39f4f47b2cb64fd3ef8873d +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:69 +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:61 +#: 5eba8079bdca4d1ebd1953ae49348f0f +#: 5eba8079bdca4d1ebd1953ae49348f0f +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:73 +#: 7100a7a2fdb04e349a841242cfca9c8a +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:75 +#: 926c2d9fe15b420ea9db9043b0d00e30 +msgid "``id``: A string representing the party ID." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:76 +#: 987fcee3a24b4da188c6dd26f449db8a +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:78 +#: 90abebc7d5ba4bc6a3f72b1c0bfa3061 +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:82 +#: 119ad37b11cb4c86ab11f49c8205fe40 +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:85 +#: fee7d5966539463dbc09ba4d777dc4c5 +msgid "``label``: A string representing the text shown on the button." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:86 +#: e934ad3fb7514285a2551153ebba45df +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:90 +#: e9b5e058928b4b1ca13762463fa83073 +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:95 +#: 32efb19b998f47149b9c36a635d0e430 +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:99 +#: 1f065119b988464eb863d1f164649246 +msgid "The emoji that belongs to this activity." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Activity:101 +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:33 +#: b84d01ced9aa4d4d87d8a0ebe947641d +#: b84d01ced9aa4d4d87d8a0ebe947641d +msgid "Optional[:class:`PartialEmoji`]" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Activity.start:1 +#: 922a50363d1e4b7abda2b65a509a7633 +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Activity.end:1 +#: 6d118390d4fc42c6994502131a8335bf +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Activity.large_image_url:1 +#: 2e9df406abc44d68ac8d05f2623f233e +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Activity.small_image_url:1 +#: 5cc10e23763a40069105f956a47598f3 +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Activity.large_image_text:1 +#: af7be03a7e334e74835e11d36f55a1e8 +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Activity.small_image_text:1 +#: 3c2e2d49b5b146c6beeb4e21f02013f6 +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.BaseActivity:1 +#: fb3c412129464f14a32817147d50de0b +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.BaseActivity:4 +#: cf387d90080b4cdc9e10bbdc1d06257e +msgid "The following types currently count as user-settable:" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.BaseActivity:6 +#: aa33c3b5a42949859a53709e61da1f05 +msgid ":class:`Activity`" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.BaseActivity:9 +#: d6427e751a794bd78b364ac0b75728a3 +msgid ":class:`CustomActivity`" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.BaseActivity:11 +#: d09ea164c0cd4cbdbc0163e5437093a9 +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.BaseActivity.created_at:1 +#: 07b36b0e7d2948e1baf228040a6a3241 +msgid "When the user started doing this activity in UTC." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Game:1 +#: 66617b5efa3e411292f2c95782ab2454 +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Game:3 +#: e8cd4495f8bd4373b2d536a0829af5ca +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Game:9 +#: 23ae142cc83940b59466666da6b82abc +msgid "Checks if two games are equal." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Game:13 +#: da3209c4958443a396716fbf81b22ff6 +msgid "Checks if two games are not equal." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Game:17 +#: c7f7d169c44f42f492d9d7dcf1845954 +msgid "Returns the game's hash." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Game:21 +#: 6edf2ada4fb84c2299ef2193db043fa4 +msgid "Returns the game's name." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Game:24 +#: ../../../discord/activity.py:docstring of discord.activity.Game:29 +#: 710eb25609234a2eab35dd6ef26a8672 +#: 60ec9c34573a4bfd974edad2940fc120 +msgid "The game's name." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Game.type:1 +#: ../../../discord/activity.py:docstring of discord.Streaming.type:1 +#: 3a36f0b58a4a4e7cb9f8dc2cc6aa1d94 +#: 3a36f0b58a4a4e7cb9f8dc2cc6aa1d94 +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Game.type:3 +#: 519f2ad7af2643a49c8de14c5fd856dd +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Game.start:1 +#: 2fe7ad5b1581451e94caa24e9912d075 +msgid "When the user started playing this game in UTC, if applicable." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Game.end:1 +#: 0491299224284daeafc2d95b819b5835 +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:1 +#: 22e2635806f44e03b314fcea5c24d064 +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:3 +#: 76aa5d55d1c9433089da693267966795 +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:9 +#: 42eb1dc2050e401e9075ce5a316f1981 +msgid "Checks if two streams are equal." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:13 +#: 38c4279586ad4e439c331b076545379a +msgid "Checks if two streams are not equal." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:17 +#: 95be974cab9e4dadb28de5009208ebcc +msgid "Returns the stream's hash." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:21 +#: ae721653e365456fbebac789acb05adf +msgid "Returns the stream's name." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:25 +#: a178ef3028f3437e8d20967729abb6fc +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:33 +#: 6a24db0720074b169a1e671ec4841d36 +msgid "The stream's name." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:39 +#: 709bac80c9324b34a8b0686f4df4b0f6 +msgid "An alias for :attr:`name`" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:45 +#: 32097c73089e429384ee0fb98060f3df +msgid "The game being streamed." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:53 +#: f4b4de5b2031416dba949ce8be26937a +msgid "The stream's URL." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Streaming:59 +#: 033534059d1b420d810da1de9fc81a04 +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Streaming.type:3 +#: c020752da0ee48c085ed325e2a5107a3 +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Streaming.twitch_name:1 +#: de8e1cf2c6eb43218a65788ba6caa0b4 +msgid "If provided, the twitch name of the user streaming." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Streaming.twitch_name:3 +#: 165338f4dab94b2f8901501ebd64c6f7 +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:1 +#: 3938e568fe7a46089da5b19b17fc515e +msgid "Represents a Custom activity from Discord." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:7 +#: acf4363744434b20a6464a9900123c84 +msgid "Checks if two activities are equal." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:11 +#: 60bd4d421bcc41cca95806d2a68ed1cd +msgid "Checks if two activities are not equal." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:15 +#: 5b063163bfaf4930af9d387ef066d6ec +msgid "Returns the activity's hash." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:19 +#: 9c992dd3ca474eaead904f431e9b065e +msgid "Returns the custom status text." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:25 +#: 1185f9ed8b11425296b33aeb72e9d01c +msgid "The custom activity's name." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:31 +#: 73a10f994059438aafdfba8fb233ccf9 +msgid "The emoji to pass to the activity, if any." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.CustomActivity:37 +#: 66f77c61ee2840e59efe648bf891294d +msgid "The text used for the custom activity." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.CustomActivity.type:1 +#: a2fcc50995664b789e7912d698d3672b +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.CustomActivity.type:3 +#: df5b15e73d1e41028c2ec44cf7c8a8da +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "" + +#: ../../api/data_classes.rst:221 +#: 60d410b462c140fd9d5d5d85a0ca55ef +msgid "Permissions" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:1 +#: 8e13e3b1d07e469eb7a3ab8b4ba0be6c +msgid "Wraps up the Discord permission value." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:3 +#: 4f272e071c5f44139b56ad55b81ea8aa +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:7 +#: bd321b47be9a4de98bdd12535fbcf574 +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:15 +#: 5637ff5271234867aaf55cf80d0fc1b7 +msgid "Checks if two permissions are equal." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:18 +#: fcc55fde91b24b5c9f7c6519b7e15ff7 +msgid "Checks if two permissions are not equal." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:21 +#: b5ab6c1babd64517a24ef83f2dde5e10 +msgid "Checks if a permission is a subset of another permission." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:24 +#: b16c4f3a39614a8b9fc0564c88d54c3b +msgid "Checks if a permission is a superset of another permission." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:27 +#: 3421d8547974443eabb00466f982007e +msgid "Checks if a permission is a strict subset of another permission." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:32 +#: f962f0f158b04fa0a28a23da9b07d0f0 +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:35 +#: 4ab6f2fa1e274ff3b08bcbcb07a4008b +msgid "Subtracts two permissions from each other." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:38 +#: 32a4172a223a4badb7223518fd57bfe4 +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:41 +#: 6f359edfb3b84604a3683f6f61ac6027 +msgid "Returns the intersection of two permissions." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:44 +#: 5cccbc5524084879a00ace639984467b +msgid "Returns the inverse of a permission." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:46 +#: ea8f4803688c427aab864e15ecf72a18 +msgid "Checks if a permission is a strict superset of another permission." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:49 +#: d6f51ecf1a7947359281cb9413a44943 +msgid "Return the permission's hash." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite:22 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:52 +#: ee479ed5d50d4b20aebb43ef531f5610 +#: ee479ed5d50d4b20aebb43ef531f5610 +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions:58 +#: a10f6bbff86e49acbfaa46201bdf52d7 +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.is_subset:1 +#: 3713354dea1c4a6e98816c5530074aa7 +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.is_superset:1 +#: 7026a3194ab842e7ae4aedb81fd93bac +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.is_strict_subset:1 +#: df8b6b994b24481fbadcf9b7e63a31c7 +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.is_strict_superset:1 +#: cabd215d21bb4d96aa64bf4f13e778e8 +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.none:1 +#: 6e9068a2c344478ba5bb4ee0f556045a +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all:5 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.none:5 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.voice:5 +#: 1fba130190d641938864033a7f9fa35d +#: 1fba130190d641938864033a7f9fa35d +#: 1fba130190d641938864033a7f9fa35d +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all:1 +#: b8790ac5bab648788e3c6a7efe91a8c6 +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:1 +#: c501996a0aa44e3bba2a7c131a8ecc55 +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:7 +#: 3d33edd78b4a44af96d1174e80fe38df +msgid ":attr:`manage_emojis`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:8 +#: 67c5f2685a8140feb38876faa140bf2a +msgid ":attr:`view_audit_log`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:9 +#: eb56391df8e94861af5a6a8409c17d6f +msgid ":attr:`view_guild_insights`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:10 +#: 7b554c4be8944c03a6ef76c5b73eede5 +msgid ":attr:`manage_guild`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:11 +#: 7f33532c524d48eeb208f2f316ac7879 +msgid ":attr:`change_nickname`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:12 +#: 606ad5d3e5084e568298891c3b0588e7 +msgid ":attr:`manage_nicknames`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:13 +#: 48fc50f3db1a4049aa6ed259c0016e20 +msgid ":attr:`kick_members`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:14 +#: e7d64bc06aef4cc7837d72e3051db957 +msgid ":attr:`ban_members`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:15 +#: c502768910914af6a4de9d4bbf12a158 +msgid ":attr:`administrator`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:17 +#: 58e62e0ef9144695b99159ad964e9797 +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.all_channel:20 +#: 1ac70319723b451d9c8b3252e52b6e79 +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.general:1 +#: ba6992e7084e41a4ae1fb6437f90c395 +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.general:6 +#: 150148bc2a3e43f7b18149bb6897ee01 +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.membership:1 +#: 454540f845e641959058f28badf30ad5 +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.text:1 +#: 289554b113484936916b5ee1ab0fd38e +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.text:6 +#: c4688cf0c33a417e92f5c0627d33378d +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.text:10 +#: 04d50f609e1643f79c50c26c2356c391 +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.voice:1 +#: 7f71cb30e267401b9a2a1ff63f4884ab +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.stage:1 +#: a5f10e0b445a4afea2ac4f0bf2629b7a +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.stage_moderator:1 +#: 5e21d8ef96414ceda6df2f9e5f577da1 +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.advanced:1 +#: 6d2820f27e4e4332a814576db3003b76 +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.update:1 +#: 3cd8edc5bc9945299d62e81b1d2258bb +msgid "Bulk updates this permission object." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.update:3 +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.update:3 +#: ffc0d79e5c0e49a5afdaa65646082f76 +#: ffc0d79e5c0e49a5afdaa65646082f76 +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.Permissions.update:8 +#: 3fd6dda4423a4789884374f9f327e6d0 +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "" + +#: ../../docstring of discord.Permissions.create_instant_invite:1 +#: 0852cfca81494db9998dcb4555562238 +msgid "Returns ``True`` if the user can create instant invites." +msgstr "" + +#: ../../docstring of discord.Permissions.kick_members:1 +#: c79ee2200ed040ff8e3600a1f4bcd286 +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "" + +#: ../../docstring of discord.Permissions.ban_members:1 +#: 0606ce80e2b74dd18f3a06ddfb424905 +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "" + +#: ../../docstring of discord.Permissions.administrator:1 +#: 22117166f3d3400c8a0183d958f2473d +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "" + +#: ../../docstring of discord.Permissions.administrator:3 +#: 923ad41d1a9f4a06882f0589f49a660d +msgid "This also bypasses all channel-specific overrides." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_channels:1 +#: 324066ccebc7437a82fcd56264fd8cc8 +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_channels:3 +#: 12d73ea485d3493a8ded1ccc53e2c504 +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_guild:1 +#: 51e2d1633433474da1f3a494890db872 +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "" + +#: ../../docstring of discord.Permissions.add_reactions:1 +#: fbe183953a1a4ae3bbb2e9b7ee3760b0 +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "" + +#: ../../docstring of discord.Permissions.view_audit_log:1 +#: e82d9686fb914794b400bd4a68b9b71f +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "" + +#: ../../docstring of discord.Permissions.priority_speaker:1 +#: c26c8e4168b64c1b96a4a7543864afda +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "" + +#: ../../docstring of discord.Permissions.stream:1 +#: 1f324a8b58c541f2a1ba2b75de16b11f +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "" + +#: ../../docstring of discord.Permissions.view_channel:1 +#: b47230b37fe246c29733f872037b2627 +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "" + +#: ../../docstring of discord.Permissions.read_messages:1 +#: 236a13b11f97491aaf5c86a271f2a299 +msgid "An alias for :attr:`view_channel`." +msgstr "" + +#: ../../docstring of discord.Permissions.send_messages:1 +#: aeccba9f352f43ff93ba887eadb028ee +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "" + +#: ../../docstring of discord.Permissions.send_tts_messages:1 +#: 27578f091046405f94d22c382db1beeb +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_messages:1 +#: 30ebd7d1308943ae874ed4dd75a44ba8 +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_messages:5 +#: 07e3d2dc854b48da9ed38f4648f6a7bf +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "" + +#: ../../docstring of discord.Permissions.embed_links:1 +#: c0be8484ebc040b98fb0939998361c92 +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "" + +#: ../../docstring of discord.Permissions.attach_files:1 +#: 9c89ebe10d9b4e15b608ebfa25fcada1 +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "" + +#: ../../docstring of discord.Permissions.read_message_history:1 +#: fda35b6690a246aca8136c74f7233cda +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "" + +#: ../../docstring of discord.Permissions.mention_everyone:1 +#: dd01266c445141a097c673b102981c4d +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "" + +#: ../../docstring of discord.Permissions.external_emojis:1 +#: 2651f553500e45a693e270f7c2aeb8c3 +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "" + +#: ../../docstring of discord.Permissions.use_external_emojis:1 +#: 306f18053bce4eb2988a8ddb8c78bf30 +msgid "An alias for :attr:`external_emojis`." +msgstr "" + +#: ../../docstring of discord.Permissions.view_guild_insights:1 +#: 1b698e890134451ab81edcfb2f6fcced +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "" + +#: ../../docstring of discord.Permissions.connect:1 +#: e0ea8ccb80464cd493d1564f68c1dd2b +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "" + +#: ../../docstring of discord.Permissions.speak:1 +#: b6a13ba2d5204a789021424a697cc7aa +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "" + +#: ../../docstring of discord.Permissions.mute_members:1 +#: 84fcdd88475b4c918f4398c3c09b6a00 +msgid "Returns ``True`` if a user can mute other users." +msgstr "" + +#: ../../docstring of discord.Permissions.deafen_members:1 +#: 8c259e01f44245cf8e6e77bcea3f161b +msgid "Returns ``True`` if a user can deafen other users." +msgstr "" + +#: ../../docstring of discord.Permissions.move_members:1 +#: 05ad8c3fb5b545f7b5ca02137af48532 +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "" + +#: ../../docstring of discord.Permissions.use_voice_activation:1 +#: ee7d230c69a64cf6bd2fe7b2832f656a +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "" + +#: ../../docstring of discord.Permissions.change_nickname:1 +#: b317f5c3d4d644858fcb73b0648e2543 +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_nicknames:1 +#: 95d8e51d851943abb648ae889d064fe4 +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_roles:1 +#: 19b7f1d6020a42598e0f34f2792209d2 +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_roles:3 +#: 4c3329b815e14dc9835c6139cc389177 +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_permissions:1 +#: 19fe0acb3fc5444c98b26a21a0d4ae7f +msgid "An alias for :attr:`manage_roles`." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_webhooks:1 +#: 44e7d276317c4e28979d34995fa90864 +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_emojis:1 +#: c92b7007f5414278aec6dfca5c8d73c1 +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_emojis_and_stickers:1 +#: 099d0ab04ca44e2c9ebc7ddab039de05 +msgid "An alias for :attr:`manage_emojis`." +msgstr "" + +#: ../../docstring of discord.Permissions.use_slash_commands:1 +#: daaadff474a3483883ac2174fe2530b1 +msgid "Returns ``True`` if a user can use slash commands." +msgstr "" + +#: ../../docstring of discord.Permissions.use_application_commands:1 +#: cda19158b4e54a53b88bbd3ff38de8c2 +msgid "An alias for :attr:`use_slash_commands`." +msgstr "" + +#: ../../docstring of discord.Permissions.request_to_speak:1 +#: b90362eb52764c09b4466f2299c7aa94 +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_events:1 +#: 45b6e9a800814521ad39ffc6f673c66b +msgid "Returns ``True`` if a user can manage guild events." +msgstr "" + +#: ../../docstring of discord.Permissions.manage_threads:1 +#: a0ee39b0843b41f7a7fc4191722931fb +msgid "Returns ``True`` if a user can manage threads." +msgstr "" + +#: ../../docstring of discord.Permissions.create_public_threads:1 +#: f77953f75e474f6aac2fb2805fce656e +msgid "Returns ``True`` if a user can create public threads." +msgstr "" + +#: ../../docstring of discord.Permissions.create_private_threads:1 +#: 91a19cfe107c44b392607aecac97fe2a +msgid "Returns ``True`` if a user can create private threads." +msgstr "" + +#: ../../docstring of discord.Permissions.external_stickers:1 +#: 8b1a793caef94d5fb14d21b61fc6409b +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "" + +#: ../../docstring of discord.Permissions.use_external_stickers:1 +#: e38fa1b69be84a3c92d9c97b23256e76 +msgid "An alias for :attr:`external_stickers`." +msgstr "" + +#: ../../docstring of discord.Permissions.send_messages_in_threads:1 +#: 2a70a7674d36456a9e0a0c47fd6f07fd +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "" + +#: ../../docstring of discord.Permissions.start_embedded_activities:1 +#: 27967aab408f48ffbcf23e1585a3e71b +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "" + +#: ../../docstring of discord.Permissions.moderate_members:1 +#: 196a16e2d58c44088939738ff7874e0b +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "" + +#: ../../docstring of discord.Permissions.send_voice_messages:1 +#: 21e49f2607d948d1aac14cf0bde7222d +msgid "Returns ``True`` if a member can send voice messages." +msgstr "" + +#: ../../docstring of discord.Permissions.set_voice_channel_status:1 +#: 0d48ab90f0964e5385186ca15971059c +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "" + +#: ../../docstring of discord.Permissions.send_polls:1 +#: bbdd0cb2b0e8488dbfc566e1b0da5aea +msgid "Returns ``True`` if a member can send polls." +msgstr "" + +#: ../../docstring of discord.Permissions.use_external_apps:1 +#: ee9b457141c94c53bc60f022463f0486 +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "" + +#: ../../docstring of discord.Permissions.use_external_apps:4 +#: f0dd8fd11b81466881e15f1055ae10a9 +msgid "This only applies to apps that are also not installed to the guild." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite:1 +#: 53d4e7fb59b34e38b6649fc978006797 +msgid "A type that is used to represent a channel specific permission." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite:3 +#: fb3dee78b0cb4d83b9876aab5057b3d4 +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite:9 +#: 501c13440b884f20800485507a364281 +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite:16 +#: 9381f19b61e549358025726a4d4c9428 +msgid "Checks if two overwrites are equal." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite:19 +#: fc1e95f179164adbba323442145566e6 +msgid "Checks if two overwrites are not equal." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite:27 +#: 435efe3f9dd64b5fae801a5ba872e113 +msgid "Set the value of permissions by their name." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.pair:1 +#: 6db28971ce9946a591fa59339d8ac998 +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.pair:4 +#: c2ec090998c145729116ac6d6d9d9c9b +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.from_pair:1 +#: 149b1b1980834c0195ef69cc3bfe4463 +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.from_pair:7 +#: d1d8019940a44dcba4436b47f35715c1 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.is_empty:1 +#: 480a576b68994d99b4eecebe43cef95d +msgid "Checks if the permission overwrite is currently empty." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.is_empty:3 +#: 64192039c64c4b38a7dd83098aac96a4 +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.is_empty:6 +#: e0401be4964b4f78b29ae4a4649c2668 +msgid "Indicates if the overwrite is empty." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.update:1 +#: e574cdd4574f4865a7693c8125f56e49 +msgid "Bulk updates this permission overwrite object." +msgstr "" + +#: ../../../discord/permissions.py:docstring of discord.permissions.PermissionOverwrite.update:8 +#: ca60f1bcd3784c659f81563a3cb3a2d7 +msgid "A list of key/value pairs to bulk update with." +msgstr "" + +#: ../../api/data_classes.rst:234 +#: 9b867a9572674a3a8c8653b44c9f9b72 +msgid "Application Role Connections" +msgstr "" + +#: ../../../discord/application_role_connection.py:docstring of discord.application_role_connection.ApplicationRoleConnectionMetadata:1 +#: 637dd77a8de847aca02cf33f276dd203 +msgid "Represents role connection metadata for a Discord application." +msgstr "" + +#: ../../../discord/application_role_connection.py:docstring of discord.application_role_connection.ApplicationRoleConnectionMetadata:6 +#: b02b0ffd4f18485580abb2ca7f45e414 +msgid "The type of metadata value." +msgstr "" + +#: ../../../discord/application_role_connection.py:docstring of discord.application_role_connection.ApplicationRoleConnectionMetadata:9 +#: d40010af32404db5ae80b357c268c9ab +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "" + +#: ../../../discord/application_role_connection.py:docstring of discord.application_role_connection.ApplicationRoleConnectionMetadata:13 +#: 0a5e30d5b723463f96cc62cf934ffa34 +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "" + +#: ../../../discord/application_role_connection.py:docstring of discord.application_role_connection.ApplicationRoleConnectionMetadata:16 +#: 86c86651daab4d2bb56e2515613e0b8a +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "" + +#: ../../../discord/application_role_connection.py:docstring of discord.application_role_connection.ApplicationRoleConnectionMetadata:19 +#: b3a47d7fb5be43a5a545e53344b4ee1b +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "" + +#: ../../../discord/application_role_connection.py:docstring of discord.application_role_connection.ApplicationRoleConnectionMetadata:23 +#: 246b61db68854beb9cb72d12dc9cfd40 +#: 4f3b424badea44d289a8fba4635a8270 +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "" diff --git a/docs/build/locales/api/enums.pot b/docs/build/locales/api/enums.pot new file mode 100644 index 0000000000..d2e5fc20fd --- /dev/null +++ b/docs/build/locales/api/enums.pot @@ -0,0 +1,3309 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/enums.rst:7 +#: 62a3a42200714266a982a184b801615b +msgid "Enumerations" +msgstr "" + +#: ../../api/enums.rst:9 +#: 8edd78317af744249156d7fc55d53459 +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "" + +#: ../../api/enums.rst:12 +#: 5bede53965bb438f89620d1184cc4998 +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "" + +#: ../../api/enums.rst:17 +#: 41dd3d7ade864c7fac7f33bdc7997cf5 +msgid "Specifies the input type of an option." +msgstr "" + +#: ../../api/enums.rst:23 +#: c09bf4f35dff41199774467ec1a71d65 +msgid "A slash subcommand." +msgstr "" + +#: ../../api/enums.rst:26 +#: a32c124790b44aaa8f9cc124d791ae6a +msgid "A slash command group." +msgstr "" + +#: ../../api/enums.rst:29 +#: 2893d306dd214f12a1fc100b94446759 +msgid "A string." +msgstr "" + +#: ../../api/enums.rst:32 +#: d5b40b4a9cee43d3b0adba7e86c21fc9 +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "" + +#: ../../api/enums.rst:36 +#: ../../api/enums.rst:59 +#: 70b2bd1e114440079b80fffca89ae1ab +#: dda4596a99714ab38e3ec0b5a2b10fd6 +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "" + +#: ../../api/enums.rst:40 +#: aeb8467bda844397bd89efd7ed2d6e51 +msgid "A boolean." +msgstr "" + +#: ../../api/enums.rst:43 +#: b441f0733b824c1c90e5af72c6428036 +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "" + +#: ../../api/enums.rst:46 +#: c1d9b05304ed4d9782bca5b63910f471 +msgid "A channel from the current guild." +msgstr "" + +#: ../../api/enums.rst:49 +#: 8af7497f3271434a9221371639bf0a20 +msgid "A role from the current guild." +msgstr "" + +#: ../../api/enums.rst:52 +#: 29768171f9034607ac74932b5b671189 +msgid "A mentionable (user or role)." +msgstr "" + +#: ../../api/enums.rst:55 +#: 3678469398f4443d949e846231813f41 +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "" + +#: ../../api/enums.rst:63 +#: 8518d8d0bc574c7bbda674dcb9fc74e4 +msgid "An attachment." +msgstr "" + +#: ../../api/enums.rst:67 +#: 5dc42347281244ac9245a598cee06ef6 +msgid "Specifies the type of channel." +msgstr "" + +#: ../../api/enums.rst:71 +#: 811232ae673c4d43926ab75b4ff53889 +msgid "A text channel." +msgstr "" + +#: ../../api/enums.rst:75 +#: e66f26c0877b46c2a74930543ec5dda3 +msgid "A voice channel." +msgstr "" + +#: ../../api/enums.rst:79 +#: eb457db22b6f4992b255e5f8f3b35cea +msgid "A private text channel. Also called a direct message." +msgstr "" + +#: ../../api/enums.rst:83 +#: 4c89995ca9c04d3e939768d30f72f6b0 +msgid "A private group text channel." +msgstr "" + +#: ../../api/enums.rst:87 +#: 0f8a9c0389de4ff3b66bcf5e58f20346 +msgid "A category channel." +msgstr "" + +#: ../../api/enums.rst:91 +#: ec7bb4b12e9044d7be4521fe4c4dfc5a +msgid "A guild news channel." +msgstr "" + +#: ../../api/enums.rst:95 +#: cfd6ca96420f4b7b8e2f211569d82926 +msgid "A guild stage voice channel." +msgstr "" + +#: ../../api/enums.rst:101 +#: 15e714bf45b64bfba322a1fa4decb9e0 +msgid "A news thread." +msgstr "" + +#: ../../api/enums.rst:107 +#: d873c480bdcd4fe4bc547139c961bc99 +msgid "A public thread." +msgstr "" + +#: ../../api/enums.rst:113 +#: 5b47a4c12c3547c4876c1a68d67d2729 +msgid "A private thread." +msgstr "" + +#: ../../api/enums.rst:119 +#: 7ebdf56610c44fbaa6d9dee200161197 +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "" + +#: ../../api/enums.rst:125 +#: 211b7a19c3ee433db673e226f56f938f +msgid "User can only write in threads, similar functionality to a forum." +msgstr "" + +#: ../../api/enums.rst:131 +#: fc3cd4ddb3b74613b0513faab63616e9 +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "" + +#: ../../api/enums.rst:138 +#: a7a6cd05d7eb4191a78e415784ba36bf +msgid "Checks if two messages are equal." +msgstr "" + +#: ../../api/enums.rst:141 +#: f5630a500dd8482b84bceada63ebaa2a +msgid "Checks if two messages are not equal." +msgstr "" + +#: ../../api/enums.rst:145 +#: af618381e61a4f44a8f1ca183ea3655a +msgid "The default message type. This is the same as regular messages." +msgstr "" + +#: ../../api/enums.rst:148 +#: 0437846f556d4b09a2d83ca98f6b4ee5 +msgid "The system message when a user is added to a group private message or a thread." +msgstr "" + +#: ../../api/enums.rst:152 +#: 495303b8a3cb49fd9dceba3da06944bb +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "" + +#: ../../api/enums.rst:156 +#: 44f702d90f1d4d63a913bc95a83439c3 +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "" + +#: ../../api/enums.rst:160 +#: d89cf744022a484a83f6742bdfcf6f20 +msgid "The system message denoting that a channel's name has been changed." +msgstr "" + +#: ../../api/enums.rst:163 +#: a033722ff74045c58e32708afe0429d1 +msgid "The system message denoting that a channel's icon has been changed." +msgstr "" + +#: ../../api/enums.rst:166 +#: 98b57a613ed3419a8bdf4d5c892266fa +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "" + +#: ../../api/enums.rst:169 +#: b493fbf3a6da442e97d2a46132bce3ec +msgid "The system message denoting that a new member has joined a Guild." +msgstr "" + +#: ../../api/enums.rst:173 +#: f0d57b0b7bd04689b669a24fd805c747 +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "" + +#: ../../api/enums.rst:176 +#: e423cd2290a74b4ab87c81bd0376da8c +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "" + +#: ../../api/enums.rst:180 +#: 721d284c53a94769b51b9d509a335fdb +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "" + +#: ../../api/enums.rst:184 +#: 6ab3d0acd4c3455186ff388965f8cd2a +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "" + +#: ../../api/enums.rst:188 +#: fb77bf0ae82f44f0b0a01b4b84f1f638 +msgid "The system message denoting that an announcement channel has been followed." +msgstr "" + +#: ../../api/enums.rst:193 +#: 7f9a47eb82674f4482ed2a477ba7dea9 +msgid "The system message denoting that a member is streaming in the guild." +msgstr "" + +#: ../../api/enums.rst:198 +#: 18a8ceefd10b4d009b3bf16bc802e1e7 +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "" + +#: ../../api/enums.rst:204 +#: 4db35fd8f97a438ab56a809bf764ddf2 +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "" + +#: ../../api/enums.rst:210 +#: 56ef390d6df84b8e8e8bf1f8ef25b248 +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "" + +#: ../../api/enums.rst:216 +#: 39734c8f19fb49dba5af36e56f055d4f +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "" + +#: ../../api/enums.rst:222 +#: 4e88f0a260624a6f887880b3c2979b5d +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "" + +#: ../../api/enums.rst:230 +#: c658f0e4f08540898166e76907aec5b7 +msgid "The system message denoting that the author is replying to a message." +msgstr "" + +#: ../../api/enums.rst:235 +#: 9204abcbf0d94e83a5038c8b433ff036 +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "" + +#: ../../api/enums.rst:240 +#: 3c0e282e20f74ec6b2a5fd2b8f91dc27 +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "" + +#: ../../api/enums.rst:245 +#: cc2f2d7948e1473aa2ea3650d4c05110 +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "" + +#: ../../api/enums.rst:251 +#: e6c19002d4ea4a579b30e7b3b0e0025e +msgid "The system message denoting that an context menu command was executed." +msgstr "" + +#: ../../api/enums.rst:256 +#: 80e276c807444d5cb17a265fa33fec81 +msgid "The system message denoting an action by automod." +msgstr "" + +#: ../../api/enums.rst:261 +#: ab90d66043534202a3eded21dfc4b98a +msgid "The system message denoting a role-subscription purchase." +msgstr "" + +#: ../../api/enums.rst:267 +#: ca98e7da88294704bcae6d05929c2ce0 +msgid "The system message denoting an interaction premium upsell." +msgstr "" + +#: ../../api/enums.rst:273 +#: 10a242e386334e56b0cbb2bb07eb6b2c +msgid "The system message denoting that a stage event has started." +msgstr "" + +#: ../../api/enums.rst:279 +#: 2d965c77932f419eb56f5ca8ea70ce06 +msgid "The system message denoting that a stage event has ended." +msgstr "" + +#: ../../api/enums.rst:285 +#: 19e883e516d44790a1b4ae8123962c72 +msgid "The system message denoting that a stage event has a new speaker." +msgstr "" + +#: ../../api/enums.rst:291 +#: 82c9e7d6f6444f30b9f2120480f1d261 +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "" + +#: ../../api/enums.rst:297 +#: f5ccefca15ae44df81088ad63aebd697 +msgid "The system message denoting that a stage event has a new topic." +msgstr "" + +#: ../../api/enums.rst:303 +#: e12495e3fdbf4b6ab3c0b33eb06bcaf5 +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "" + +#: ../../api/enums.rst:309 +#: d1b2db02188c4405a8fdc05c5185884c +msgid "Represents Discord User flags." +msgstr "" + +#: ../../api/enums.rst:313 +#: db076302bd274dd891362a95c450ee19 +msgid "The user is a Discord Employee." +msgstr "" + +#: ../../api/enums.rst:316 +#: 751304832a704b3bbb95d0a64761a7b1 +msgid "The user is a Discord Partner." +msgstr "" + +#: ../../api/enums.rst:319 +#: e8f8e65b3c75489e8407576ce7c7877c +msgid "The user is a HypeSquad Events member." +msgstr "" + +#: ../../api/enums.rst:322 +#: 7e3d6737fb6740fc89b66afefdf43bd2 +msgid "The user is a Bug Hunter." +msgstr "" + +#: ../../api/enums.rst:325 +#: f534b2c373a946d99ddefd438a23b652 +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "" + +#: ../../api/enums.rst:328 +#: e309f734cb2f4d45884824ebcc227101 +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "" + +#: ../../api/enums.rst:331 +#: 958daf6b65bc4c6bbf599daf544f20bd +msgid "The user is a HypeSquad Bravery member." +msgstr "" + +#: ../../api/enums.rst:334 +#: e5a0f53d13e141bdb1957dcb2971597a +msgid "The user is a HypeSquad Brilliance member." +msgstr "" + +#: ../../api/enums.rst:337 +#: 3d45427279a54e33865f258b5dad30a5 +msgid "The user is a HypeSquad Balance member." +msgstr "" + +#: ../../api/enums.rst:340 +#: c0270429a6704771b33f183d7875c56c +msgid "The user is an Early Supporter." +msgstr "" + +#: ../../api/enums.rst:343 +#: fc75d8c9c2a643318cefaa8d1da707e0 +msgid "The user is a Team User." +msgstr "" + +#: ../../api/enums.rst:346 +#: d30d781a82a8418db1ed989738bb34c2 +msgid "Relates to partner/verification applications." +msgstr "" + +#: ../../api/enums.rst:349 +#: bb9df3bd7c10469bbcfc6cef8a4d2566 +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "" + +#: ../../api/enums.rst:352 +#: fa1149684fc2412593ecb660ca6b670a +msgid "The user has an unread system message." +msgstr "" + +#: ../../api/enums.rst:355 +#: 725026bcdcf2468fb0fddb9fce267852 +msgid "The user is a Bug Hunter Level 2." +msgstr "" + +#: ../../api/enums.rst:358 +#: 60011fa78ac34e20825ce6de66234250 +msgid "The user was deleted for being underage." +msgstr "" + +#: ../../api/enums.rst:361 +#: 413b980c139b411d9710cf3871f624b6 +msgid "The user is a Verified Bot." +msgstr "" + +#: ../../api/enums.rst:364 +#: f9904f90fedd47a1aeeb230f775f851b +msgid "The user is an Early Verified Bot Developer." +msgstr "" + +#: ../../api/enums.rst:367 +#: 75c7a0e249be4a47b66e0c046af57986 +msgid "The user is a Moderator Programs Alumni." +msgstr "" + +#: ../../api/enums.rst:370 +#: 0ca562896cc7423281a975f5494cd845 +msgid "The bot has set an interactions endpoint url." +msgstr "" + +#: ../../api/enums.rst:373 +#: 2210c3a20a70450a96e94214a3357642 +msgid "The user is disabled for being a spammer." +msgstr "" + +#: ../../api/enums.rst:376 +#: 281d19bf6c19491e9c3a38b138fb2c78 +msgid "The user is an Active Developer." +msgstr "" + +#: ../../api/enums.rst:380 +#: 0b62632dec6147c9aae71cbe50ec3b88 +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "" + +#: ../../api/enums.rst:385 +#: cb5aa857d2e74dbca5ed598bfa4b83a7 +msgid "An unknown activity type. This should generally not happen." +msgstr "" + +#: ../../api/enums.rst:388 +#: 78b9ef2656fa4163a4221e114d6bc0e3 +msgid "A \"Playing\" activity type." +msgstr "" + +#: ../../api/enums.rst:391 +#: 744b4ca84d3b4522ac2e119a7b5c59eb +msgid "A \"Streaming\" activity type." +msgstr "" + +#: ../../api/enums.rst:394 +#: a0cc249c7b2449db995e1f19b310c2cd +msgid "A \"Listening\" activity type." +msgstr "" + +#: ../../api/enums.rst:397 +#: 21ca511d445542c1bbcc579172356e77 +msgid "A \"Watching\" activity type." +msgstr "" + +#: ../../api/enums.rst:400 +#: 7b3fc29cd8e04f94b40453acc74f8d9a +msgid "A custom activity type." +msgstr "" + +#: ../../api/enums.rst:403 +#: 3673101e51264eb4bf6747615b709662 +msgid "A competing activity type." +msgstr "" + +#: ../../api/enums.rst:409 +#: b1832754b0eb4f5384d3a9d69fdf9077 +msgid "Specifies the type of :class:`Interaction`." +msgstr "" + +#: ../../api/enums.rst:415 +#: 4ac9cd54f9324d6ea403f83bc2438983 +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "" + +#: ../../api/enums.rst:418 +#: 98ac7aa9cbff4e658b2c35bf9e4482e9 +msgid "Represents a slash command interaction." +msgstr "" + +#: ../../api/enums.rst:421 +#: 4057e136a5a34be2b63de5112cd66ada +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "" + +#: ../../api/enums.rst:424 +#: 1d288a3a908e4fe78bf568876c54d5ca +msgid "Represents a autocomplete interaction for slash commands." +msgstr "" + +#: ../../api/enums.rst:427 +#: 7b9dd73bb4b443f287ef44bb27a1c8bc +msgid "Represents a modal-based interaction." +msgstr "" + +#: ../../api/enums.rst:431 +#: 9e176cc976b64630bec05ad11754bcae +msgid "Specifies the response type for the interaction." +msgstr "" + +#: ../../api/enums.rst:437 +#: fa591cd4599a4f05b1f5e841f1e4baf3 +msgid "Pongs the interaction when given a ping." +msgstr "" + +#: ../../api/enums.rst:439 +#: 4b837e2b0c904c6a979c1f95628cf7a5 +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "" + +#: ../../api/enums.rst:442 +#: 0d614902bed94b34a7fda8cb1d96d7ff +msgid "Respond to the interaction with a message." +msgstr "" + +#: ../../api/enums.rst:444 +#: b7642fbf5dfc40189da0c697a68596a8 +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "" + +#: ../../api/enums.rst:447 +#: 93f602a99b7e4bb38b36cf5514988a2e +msgid "Responds to the interaction with a message at a later time." +msgstr "" + +#: ../../api/enums.rst:449 +#: ../../api/enums.rst:455 +#: e330ae3ca05f42ce920b833974ede206 +#: f707eb8b54664d4b969081dec115130f +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "" + +#: ../../api/enums.rst:452 +#: c29479e9e1bd47d3939deb08f0e65473 +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "" + +#: ../../api/enums.rst:458 +#: 5592dad54ac44dbda11a34bdaf74ade5 +msgid "Responds to the interaction by editing the message." +msgstr "" + +#: ../../api/enums.rst:460 +#: 0fb171764af24d828e91710586137f16 +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "" + +#: ../../api/enums.rst:463 +#: c7f5bd0fccab49b1bc0f5b4efe913222 +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "" + +#: ../../api/enums.rst:465 +#: 3cc9bf7c3c33453d9cfb85a46738649a +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "" + +#: ../../api/enums.rst:468 +#: 1e1ee59416334ee0977d2a76bc53cca6 +msgid "Responds to the interaction by sending a modal dialog." +msgstr "" + +#: ../../api/enums.rst:470 +#: 80c98134ede1446c802b20484960a73b +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "" + +#: ../../api/enums.rst:474 +#: 79880e63219e47d999eaaaf7a536034c +msgid "Represents the component type of a component." +msgstr "" + +#: ../../api/enums.rst:480 +#: d30bdba858fb46e497c5f0c55f193d68 +msgid "Represents the group component which holds different components in a row." +msgstr "" + +#: ../../api/enums.rst:483 +#: 389c912e3d21445aa60707594022cbce +msgid "Represents a button component." +msgstr "" + +#: ../../api/enums.rst:486 +#: ../../api/enums.rst:492 +#: 3e83eaa0d1844924b452bc0453c951e1 +#: 9f02fd0355114b83b9ad4e2923235a6f +msgid "Represents a string select component." +msgstr "" + +#: ../../api/enums.rst:488 +#: cbc6e9d1411d4f8b95e3b81ecaa43458 +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "" + +#: ../../api/enums.rst:495 +#: 1a375b3f3c2149a18218a50153afbd76 +msgid "Represents an input_text component." +msgstr "" + +#: ../../api/enums.rst:498 +#: dd4d7eaeb3344260b86c54e9e2f6d05a +msgid "Represents a user select component." +msgstr "" + +#: ../../api/enums.rst:501 +#: c7939395f31d4630b1b14a652251afd0 +msgid "Represents a role select component." +msgstr "" + +#: ../../api/enums.rst:504 +#: 5efbf6efaa7743768aea8e2b57471242 +msgid "Represents a mentionable select component." +msgstr "" + +#: ../../api/enums.rst:507 +#: 448aec20bf2c45b1b36e0da5a1d006a5 +msgid "Represents a channel select component." +msgstr "" + +#: ../../api/enums.rst:511 +#: d3b5cb245cdb413e91512ec53ec704f4 +msgid "Represents the style of the button component." +msgstr "" + +#: ../../api/enums.rst:517 +#: 5147110dee214022bd8fa7c4fb1d2dc0 +msgid "Represents a blurple button for the primary action." +msgstr "" + +#: ../../api/enums.rst:520 +#: 1cafc57fe172466d9a3292c4ce8f9957 +msgid "Represents a grey button for the secondary action." +msgstr "" + +#: ../../api/enums.rst:523 +#: c46243584e72480695b518b1bc58612a +msgid "Represents a green button for a successful action." +msgstr "" + +#: ../../api/enums.rst:526 +#: cc2f997a688f42a9be197407721214ca +msgid "Represents a red button for a dangerous action." +msgstr "" + +#: ../../api/enums.rst:529 +#: 8b4e7393b35b417c908436be790e01e3 +msgid "Represents a link button." +msgstr "" + +#: ../../api/enums.rst:532 +#: d870b9c8c6fc49bda0956cafbe9d2dc1 +msgid "Represents a premium button." +msgstr "" + +#: ../../api/enums.rst:536 +#: 4a114ecfde0f415aa78c23ae95a03eef +msgid "An alias for :attr:`primary`." +msgstr "" + +#: ../../api/enums.rst:539 +#: ../../api/enums.rst:542 +#: 82535fcd360147e880dca049310bbe6f +#: 8321fe52ffb845e19b1b7d9aed7e6705 +msgid "An alias for :attr:`secondary`." +msgstr "" + +#: ../../api/enums.rst:545 +#: 3ac0aea49e2a45ca9d6688296413400f +msgid "An alias for :attr:`success`." +msgstr "" + +#: ../../api/enums.rst:548 +#: a12dc437275b4f269f536cd4658d804e +msgid "An alias for :attr:`danger`." +msgstr "" + +#: ../../api/enums.rst:551 +#: 8534814e7c964ade81128db570fe9b6e +msgid "An alias for :attr:`link`." +msgstr "" + +#: ../../api/enums.rst:555 +#: 66cbc8468aa84de2b570acda87ac130e +msgid "Represents the style of the input text component." +msgstr "" + +#: ../../api/enums.rst:561 +#: 48cbe43e6fb342169300a8f53803f539 +msgid "Represents a single-line input text field." +msgstr "" + +#: ../../api/enums.rst:564 +#: 77b11ba453194692b73e560ba59cb52a +msgid "Represents a multi-line input text field." +msgstr "" + +#: ../../api/enums.rst:567 +#: 60ab6349de2b49b39d9242a76836ba0e +msgid "An alias for :attr:`short`." +msgstr "" + +#: ../../api/enums.rst:570 +#: ../../api/enums.rst:573 +#: 02075561dbb8468d89db81730ef848ee +#: b1e4514a32ca4b6f8d3540036646f09e +msgid "An alias for :attr:`long`." +msgstr "" + +#: ../../api/enums.rst:577 +#: 14687525b9ad476bb6208d62748cf54b +msgid "Specifies the region a voice server belongs to." +msgstr "" + +#: ../../api/enums.rst:581 +#: 90f499fb4f134385bbfc3af0699539fb +msgid "The Amsterdam region." +msgstr "" + +#: ../../api/enums.rst:584 +#: b776b0a8473c45bd803f3b6a7eb18410 +msgid "The Brazil region." +msgstr "" + +#: ../../api/enums.rst:587 +#: 64cb8a3f20e849b4a9eb427399fbd903 +msgid "The Dubai region." +msgstr "" + +#: ../../api/enums.rst:593 +#: 66e324a8246644efa7fa06a3d95ab7ad +msgid "The EU Central region." +msgstr "" + +#: ../../api/enums.rst:596 +#: 0d0795530dc0414abf31cc814d1737de +msgid "The EU West region." +msgstr "" + +#: ../../api/enums.rst:599 +#: e0dd74b91b684d24bce94aa56f83166b +msgid "The Europe region." +msgstr "" + +#: ../../api/enums.rst:605 +#: a80849d6f4ce4ad383e30e781f322e13 +msgid "The Frankfurt region." +msgstr "" + +#: ../../api/enums.rst:608 +#: f61ccdd7bd194959897b4f24e4749d5e +msgid "The Hong Kong region." +msgstr "" + +#: ../../api/enums.rst:611 +#: efe001fde7084049845f0785b375921c +msgid "The India region." +msgstr "" + +#: ../../api/enums.rst:617 +#: 9862cb3b6d0a4f438ce362db4434fb41 +msgid "The Japan region." +msgstr "" + +#: ../../api/enums.rst:620 +#: 5d5b6e0af5c348f78a25651f1e1b2df4 +msgid "The London region." +msgstr "" + +#: ../../api/enums.rst:623 +#: d63a694b0fcf4b829467b9a98cc27faa +msgid "The Russia region." +msgstr "" + +#: ../../api/enums.rst:626 +#: 792f94d71ab242a5bde4f22c1b97068a +msgid "The Singapore region." +msgstr "" + +#: ../../api/enums.rst:629 +#: a4d6c698bba747428f33df48f401115c +msgid "The South Africa region." +msgstr "" + +#: ../../api/enums.rst:632 +#: c67af79dafd047d9b4d90bd0a4d6cc5d +msgid "The South Korea region." +msgstr "" + +#: ../../api/enums.rst:635 +#: 0c7bc1130add4b35aa955bcd3e55badd +msgid "The Sydney region." +msgstr "" + +#: ../../api/enums.rst:638 +#: ce77bd1b4d53463cadaa224887643131 +msgid "The US Central region." +msgstr "" + +#: ../../api/enums.rst:641 +#: ef82ec5d51974062a0ae97b3eb643d99 +msgid "The US East region." +msgstr "" + +#: ../../api/enums.rst:644 +#: 7b3d68f69b0c40d88d2cb95e84bdac4d +msgid "The US South region." +msgstr "" + +#: ../../api/enums.rst:647 +#: 793045d5ba3043d78311ec589d46636f +msgid "The US West region." +msgstr "" + +#: ../../api/enums.rst:650 +#: edfc1b9463f2411fa8c94042ccfb2138 +msgid "The Amsterdam region for VIP guilds." +msgstr "" + +#: ../../api/enums.rst:653 +#: 8b2691fc24fd496592d208408dec5829 +msgid "The US East region for VIP guilds." +msgstr "" + +#: ../../api/enums.rst:656 +#: 50201921761246bc9caa8e6c22c0a084 +msgid "The US West region for VIP guilds." +msgstr "" + +#: ../../api/enums.rst:660 +#: 3bf69f93ed404d34b15b826ae657bf5c +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "" + +#: ../../api/enums.rst:669 +#: fe1ad00c158c4c00acb1ea118a53928b +msgid "Checks if two verification levels are equal." +msgstr "" + +#: ../../api/enums.rst:672 +#: 46216c7a546b4c91912d7c8e9573c349 +msgid "Checks if two verification levels are not equal." +msgstr "" + +#: ../../api/enums.rst:675 +#: 2e0bb775b6df4ee8a04963d54dfb731f +msgid "Checks if a verification level is higher than another." +msgstr "" + +#: ../../api/enums.rst:678 +#: 7a3f52cd944049e887290b1231a1964a +msgid "Checks if a verification level is lower than another." +msgstr "" + +#: ../../api/enums.rst:681 +#: 620771d877bc4ef6aac111a4148a8bfb +msgid "Checks if a verification level is higher or equal to another." +msgstr "" + +#: ../../api/enums.rst:684 +#: e2b18998a2844ea8b31ae008fdbc6b58 +msgid "Checks if a verification level is lower or equal to another." +msgstr "" + +#: ../../api/enums.rst:688 +#: fb66916bd09d4ce1a73920a30968db22 +msgid "No criteria set." +msgstr "" + +#: ../../api/enums.rst:691 +#: bd647ba2a4774531947bfcf3f9ad1f89 +msgid "Member must have a verified email on their Discord account." +msgstr "" + +#: ../../api/enums.rst:694 +#: 21bbe20b61c84b9b9cb300365c10afa0 +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "" + +#: ../../api/enums.rst:698 +#: 299d3b3c431b4bae9a49515dfb2ddbec +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "" + +#: ../../api/enums.rst:703 +#: 1469ed3a1ca6460fa6c38ed7a7a2d52c +msgid "Member must have a verified phone on their Discord account." +msgstr "" + +#: ../../api/enums.rst:707 +#: ec6aa59281a448b2ac2592ee503e482d +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "" + +#: ../../api/enums.rst:715 +#: dc966a5e848642bea42db5392f380906 +msgid "Checks if two notification levels are equal." +msgstr "" + +#: ../../api/enums.rst:718 +#: 0be81a2959e048d69194270daa8d7163 +msgid "Checks if two notification levels are not equal." +msgstr "" + +#: ../../api/enums.rst:721 +#: fd3e2b62b4e9464381f697a2ce986496 +msgid "Checks if a notification level is higher than another." +msgstr "" + +#: ../../api/enums.rst:724 +#: f105280bb0c943be98437aa0c245d024 +msgid "Checks if a notification level is lower than another." +msgstr "" + +#: ../../api/enums.rst:727 +#: 846701cab8e64caa9e80f34c7bd03a54 +msgid "Checks if a notification level is higher or equal to another." +msgstr "" + +#: ../../api/enums.rst:730 +#: ba3d791aa9ff4ad8870b943ac0e1ae2e +msgid "Checks if a notification level is lower or equal to another." +msgstr "" + +#: ../../api/enums.rst:734 +#: be084b93aa534c83a085d8da3691a961 +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "" + +#: ../../api/enums.rst:737 +#: f92e661d81964e76a2c775a52c6657cb +msgid "Members receive notifications for messages they are mentioned in." +msgstr "" + +#: ../../api/enums.rst:741 +#: 95af5bd00d43462a906e5084192ed897 +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "" + +#: ../../api/enums.rst:751 +#: a306a70455c3408d8c5e838c614c2555 +msgid "Checks if two content filter levels are equal." +msgstr "" + +#: ../../api/enums.rst:754 +#: dfe076afd3cb44fd85205ba4d94cf663 +msgid "Checks if two content filter levels are not equal." +msgstr "" + +#: ../../api/enums.rst:757 +#: 0a9e650407c34c7f9dc886f8c8a775f9 +msgid "Checks if a content filter level is higher than another." +msgstr "" + +#: ../../api/enums.rst:760 +#: ce931389a4cf4b66a5f4b13d9045274d +msgid "Checks if a content filter level is lower than another." +msgstr "" + +#: ../../api/enums.rst:763 +#: dfcdb88cdef544e78bae9e35fa0459bb +msgid "Checks if a content filter level is higher or equal to another." +msgstr "" + +#: ../../api/enums.rst:766 +#: 1792e32dd6e843af9dd1121e4e8bc63d +msgid "Checks if a content filter level is lower or equal to another." +msgstr "" + +#: ../../api/enums.rst:770 +#: c66d2de8b0bd4072942c7a693c3b7ae3 +msgid "The guild does not have the content filter enabled." +msgstr "" + +#: ../../api/enums.rst:773 +#: ef98aa26fcaa4365b198f3e765a07fd6 +msgid "The guild has the content filter enabled for members without a role." +msgstr "" + +#: ../../api/enums.rst:776 +#: 8bc9bb4ad1ea4f1a89ce1889d698ec18 +msgid "The guild has the content filter enabled for every member." +msgstr "" + +#: ../../api/enums.rst:780 +#: f773f9149bb44c4d83e0298ae408fd6a +msgid "Specifies a :class:`Member` 's status." +msgstr "" + +#: ../../api/enums.rst:784 +#: 727979554bd64ac1a0b4393cd7bb5228 +msgid "The member is online." +msgstr "" + +#: ../../api/enums.rst:787 +#: 7b5be27e51204bcdaffd82a57a6de69c +msgid "The member is offline." +msgstr "" + +#: ../../api/enums.rst:790 +#: 74ddceb1cc1a4566ac34fe6a0b1abb54 +msgid "The member is idle." +msgstr "" + +#: ../../api/enums.rst:793 +#: 4490b159c76941dbab94c39b712ccaf2 +msgid "The member is \"Do Not Disturb\"." +msgstr "" + +#: ../../api/enums.rst:796 +#: 64dc5bb4a3954ac9ad8e84ee8959ba78 +msgid "An alias for :attr:`dnd`." +msgstr "" + +#: ../../api/enums.rst:799 +#: 6db87d8dee034d9d8685436fa8a26db0 +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "" + +#: ../../api/enums.rst:804 +#: 5638a65a34fa4c8b90930cd7817a2867 +msgid "The member is streaming." +msgstr "" + +#: ../../api/enums.rst:809 +#: 60612463044b4cde8d8308b993f3063e +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "" + +#: ../../api/enums.rst:814 +#: 632a23827cce4e32a73c4ba7e5176503 +msgid "The guild has updated. Things that trigger this include:" +msgstr "" + +#: ../../api/enums.rst:816 +#: 739c484cff324836b4bbc7e9a4ba5727 +msgid "Changing the guild vanity URL" +msgstr "" + +#: ../../api/enums.rst:817 +#: e2613a32359c47618dd6be48de2d7696 +msgid "Changing the guild invite splash" +msgstr "" + +#: ../../api/enums.rst:818 +#: bd56053367fa4283bb319f326001c04c +msgid "Changing the guild AFK channel or timeout" +msgstr "" + +#: ../../api/enums.rst:819 +#: 9822d25614704b7cb849ddd61ea89034 +msgid "Changing the guild voice server region" +msgstr "" + +#: ../../api/enums.rst:820 +#: 9f5b610f62304c51a1999c420d0b5c31 +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "" + +#: ../../api/enums.rst:821 +#: 8f44ea06843349ef910d0e022ee62ebd +msgid "Changing the guild moderation settings" +msgstr "" + +#: ../../api/enums.rst:822 +#: 2ba541de1193448fa261b50507c699fb +msgid "Changing things related to the guild widget" +msgstr "" + +#: ../../api/enums.rst:824 +#: c890e719787243a5af28be7c6f82f77b +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "" + +#: ../../api/enums.rst:827 +#: ../../api/enums.rst:853 +#: ../../api/enums.rst:872 +#: ../../api/enums.rst:894 +#: ../../api/enums.rst:913 +#: ../../api/enums.rst:929 +#: ../../api/enums.rst:944 +#: ../../api/enums.rst:1003 +#: ../../api/enums.rst:1017 +#: ../../api/enums.rst:1062 +#: ../../api/enums.rst:1082 +#: ../../api/enums.rst:1097 +#: ../../api/enums.rst:1112 +#: ../../api/enums.rst:1136 +#: ../../api/enums.rst:1153 +#: ../../api/enums.rst:1169 +#: ../../api/enums.rst:1182 +#: ../../api/enums.rst:1195 +#: ../../api/enums.rst:1206 +#: ../../api/enums.rst:1217 +#: ../../api/enums.rst:1314 +#: ../../api/enums.rst:1329 +#: ../../api/enums.rst:1350 +#: ../../api/enums.rst:1369 +#: ../../api/enums.rst:1388 +#: ../../api/enums.rst:1407 +#: ../../api/enums.rst:1428 +#: ../../api/enums.rst:1449 +#: ../../api/enums.rst:1470 +#: ../../api/enums.rst:1488 +#: ../../api/enums.rst:1506 +#: ../../api/enums.rst:1524 +#: ../../api/enums.rst:1534 +#: ../../api/enums.rst:1551 +#: ../../api/enums.rst:1567 +#: ../../api/enums.rst:1618 +#: ../../api/enums.rst:1632 +#: bfff5308473d4af998d5e90e81bd9d42 +#: 0776e36908074d45bfacf9e98b402a96 +#: ad53aecba09c4cff97fbe106a8aae4c3 +#: 9a20bd8774814a64b14884977510d1e6 +#: 0619742d7fa140278430c051be11dc1b +#: 69139dd3ef9e48d3b1af81c1e81c39d4 +#: ecd21b91f59c49bdabb7f8d74a287e1e +#: a2803ec37cea445fbe05eee14f7e763a +#: 38aec5e643c249b19b3d7b91ef993e5e +#: 1e5784f497904a1b8ea5e31e43b2a0ad +#: 752fd4d41eb541729116bdab7b643fc9 +#: c506008e4ec74cef851b196b09e69815 +#: 22d68de8370648cf9093a7a877656bf4 +#: f0e7616a583a47d4831939f3e25e8627 +#: fffb0afd84694213a281950c9c2906db +#: bd06e8336d7741e7adfae9936f1bf7fe +#: 5baecd9f1e2143c88378ba7f0e3ffb96 +#: 7499b8f78f014a8d8f9513dd6c5e69e3 +#: 4ad9e4ec222545458f27f958fe5bf43d +#: 0857346d12f54c63ba891ac188e985b3 +#: 95b8db2d9c284969b08a1156718090be +#: 61e23683148c4bf68627e0418b64f5f3 +#: 050b5f3e2f0b4e75b8f233a76bd515dd +#: a9cdc043a5fb4f8db268fa48136a2dfe +#: 96717b9a46964b4692326fe8a96295a2 +#: de04652441c24b81be6d3d268922492e +#: 093c3ea325f44f168aac272a73defeec +#: 6bfd123a5fca4eb0b0ac3ef7104dfac3 +#: a1736cc07b154021a682d4e42420bf9a +#: f1a1175365964973a77e600680c1613b +#: 91b67ae606ac453c9bf64b0b2012bac5 +#: 3411856d93a14776a6aa2dbfe75fdef0 +#: 5226c38d1fd44f3b816c29f729fa90c3 +#: 252bbee44ed14a1f9ddb9a6c43cbda0d +#: bc68c25f397a452f91ce7b919f52007c +#: a6e309f478874004a40055c758f64d0e +#: db4eb198caca4bd08cb1893c95ad57a7 +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "" + +#: ../../api/enums.rst:829 +#: 22e4308bba9c4789ad88e620c6469324 +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr "" + +#: ../../api/enums.rst:830 +#: f3892be329644776b547cf3fa7c32533 +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr "" + +#: ../../api/enums.rst:831 +#: c31a4836714247cc8ae5d1e97f1fa0a1 +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr "" + +#: ../../api/enums.rst:832 +#: b144fcde9e3e42499f4790871baa00c5 +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr "" + +#: ../../api/enums.rst:833 +#: 0d0e5e72f40447838c0a0c80fcdd0d6f +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr "" + +#: ../../api/enums.rst:834 +#: c2be22b8817b42c48e8a71489d583ebe +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr "" + +#: ../../api/enums.rst:835 +#: ../../api/enums.rst:855 +#: ../../api/enums.rst:874 +#: ../../api/enums.rst:896 +#: ../../api/enums.rst:1067 +#: ../../api/enums.rst:1087 +#: ../../api/enums.rst:1102 +#: ../../api/enums.rst:1156 +#: ../../api/enums.rst:1172 +#: ../../api/enums.rst:1185 +#: ../../api/enums.rst:1197 +#: ../../api/enums.rst:1208 +#: ../../api/enums.rst:1219 +#: ../../api/enums.rst:1352 +#: ../../api/enums.rst:1371 +#: ../../api/enums.rst:1390 +#: ../../api/enums.rst:1409 +#: ../../api/enums.rst:1430 +#: ../../api/enums.rst:1451 +#: ../../api/enums.rst:1472 +#: ../../api/enums.rst:1490 +#: ../../api/enums.rst:1508 +#: ../../api/enums.rst:1536 +#: ../../api/enums.rst:1553 +#: ../../api/enums.rst:1569 +#: 895caa8a7a2b40a3be55d2ec1baf44b1 +#: 99cc876d108e4eab8371a7d45c0ea1b9 +#: d5910caed39b4422a0bf2361a6565612 +#: d7fd5443343b4bc88ce6cd8918cdfeab +#: b44ca51adbc64e51b77c441b2878ad83 +#: 1de697d2ea2c4cae9ccab9fb6fc6d38a +#: ac7026819cf84b46ab62b7fc660eec2a +#: ac7b378f7a1046ebab645d5f7d3ff34e +#: c5d4dc545e724ea9989d999fa6992cce +#: fe717eea581f494ebf36019cc19d9964 +#: 558f751460d247b2a058a50b81e48a08 +#: 1394b20d84104b49a743fdfeb699c225 +#: e51f5200cbe140f19c8c3b3e2d75a534 +#: bfe00e359c3f448eace931206c0b2ee9 +#: b5339c2060384a359e7c71febf3ca2ce +#: b5ae5559c92341f9946a0237c88316b8 +#: 70b4a80497dc4c718cba972b132e9059 +#: 580ac06e34cc423d8a0c7804bcfa7dff +#: 515eb479a052419d88d9d9bd1eb338a0 +#: 2f935e45567444cca02d6e556a3e0904 +#: 46d1f8301ff548f1af259ccd664c3f42 +#: c31820d94e12407ba086b701f92569b0 +#: 646a54b16dff41a2b03ed31ac183c0b2 +#: 12c512f9e9f24101b8341757dbbeb0f4 +#: 0c293715eca54347b0f133a596ecfedf +msgid ":attr:`~AuditLogDiff.name`" +msgstr "" + +#: ../../api/enums.rst:836 +#: c02c63c7c88f4fe181dda7376bebc148 +msgid ":attr:`~AuditLogDiff.owner`" +msgstr "" + +#: ../../api/enums.rst:837 +#: 0c026e75724c47d7beb2a2c77e9f7c79 +msgid ":attr:`~AuditLogDiff.splash`" +msgstr "" + +#: ../../api/enums.rst:838 +#: 2e2b9b9568f446af9fc48b3fb53bf57c +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr "" + +#: ../../api/enums.rst:839 +#: eca51cbb07124eafb49aafd57720c935 +msgid ":attr:`~AuditLogDiff.icon`" +msgstr "" + +#: ../../api/enums.rst:840 +#: e88cfaca97164239924deb0947a3bb53 +msgid ":attr:`~AuditLogDiff.banner`" +msgstr "" + +#: ../../api/enums.rst:841 +#: 8f50869b6362417792226758c9cee340 +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr "" + +#: ../../api/enums.rst:845 +#: 902049bae0b942798334fe1b7ca30562 +msgid "A new channel was created." +msgstr "" + +#: ../../api/enums.rst:847 +#: e00bbae1ecc54cd4aa7b2f97761a2857 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "" + +#: ../../api/enums.rst:850 +#: a1df25c5f1984895b983d5275d8f8af5 +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "" + +#: ../../api/enums.rst:856 +#: ../../api/enums.rst:875 +#: ../../api/enums.rst:897 +#: ../../api/enums.rst:918 +#: ../../api/enums.rst:934 +#: ../../api/enums.rst:949 +#: ../../api/enums.rst:1354 +#: ../../api/enums.rst:1373 +#: ../../api/enums.rst:1392 +#: 9ec89df3159c46e287c1d83f1fa8ba27 +#: ff75120af4cd405d9f119936bb32f72d +#: a9329e3bd572430b8360afda3dd26ee0 +#: 998ef1796ea64671a79e87a4227e271c +#: 0ae29b838f1448d8b8f928d6939b92cd +#: 3de7a19ea4524c6bb59edd609646a050 +#: 1eec71ede8394476b9a4dc4ebffa9df6 +#: b61a8e74c58248e4a0d8c0c18806f0d4 +#: 2ee6e5873b53484eb7bd37f41c17a4bb +msgid ":attr:`~AuditLogDiff.type`" +msgstr "" + +#: ../../api/enums.rst:857 +#: ../../api/enums.rst:877 +#: ../../api/enums.rst:898 +#: 648726ce83124608809879a7571168a2 +#: 11cbe518c99642b49c959a2204a2c37a +#: b3e74457949d4229b324163fc858e635 +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr "" + +#: ../../api/enums.rst:861 +#: d3e3191004c34df799b5f5fbe25f013f +msgid "A channel was updated. Things that trigger this include:" +msgstr "" + +#: ../../api/enums.rst:863 +#: 98d0c561278d4e9d8096de31ee31173c +msgid "The channel name or topic was changed" +msgstr "" + +#: ../../api/enums.rst:864 +#: 5bc50a7dc2e240ad8f79a8c4704a3418 +msgid "The channel bitrate was changed" +msgstr "" + +#: ../../api/enums.rst:866 +#: ../../api/enums.rst:904 +#: 8f81efbdafac4745899e4ad861717ecd +#: 5257b72e408a46d4a7b06498d32f7209 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "" + +#: ../../api/enums.rst:869 +#: 48fbbcac84324aeeb2f83e415ad0b051 +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "" + +#: ../../api/enums.rst:876 +#: b9290b43388846c7a46f16bceccfbdbf +msgid ":attr:`~AuditLogDiff.position`" +msgstr "" + +#: ../../api/enums.rst:878 +#: ../../api/enums.rst:1316 +#: ../../api/enums.rst:1331 +#: 67ee76e83c454d32899f6326a4949701 +#: 51da4ef9f1994a6789fb2c54c371a367 +#: 7aeb804efb7d4bb8bd585a9b325278ba +msgid ":attr:`~AuditLogDiff.topic`" +msgstr "" + +#: ../../api/enums.rst:879 +#: 6464625c11634cc199dd526145504a9e +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr "" + +#: ../../api/enums.rst:880 +#: e914c09c71f34c58ab692ba1c54e5750 +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr "" + +#: ../../api/enums.rst:881 +#: d42f4667cecb4ff28a06c06c21882209 +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr "" + +#: ../../api/enums.rst:882 +#: e50b4d7fb0624f398085aa35aef1ce5b +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr "" + +#: ../../api/enums.rst:886 +#: 4bca3568aafc430883f16570fd625acb +msgid "A channel was deleted." +msgstr "" + +#: ../../api/enums.rst:888 +#: 5af5984da736481eae7b9ec37355167b +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "" + +#: ../../api/enums.rst:891 +#: aa14e43f332a43d2a9076ca32feb165e +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "" + +#: ../../api/enums.rst:902 +#: 0a3eeba6a561475bb1093b0e9c574110 +msgid "A channel permission overwrite was created." +msgstr "" + +#: ../../api/enums.rst:907 +#: 10f0d8428fb44ef8b43417b8f03cc667 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "" + +#: ../../api/enums.rst:915 +#: ../../api/enums.rst:931 +#: ../../api/enums.rst:946 +#: b424ed66d8e84fb79fbfe5ed3ed2cb86 +#: 5a13c30cb38b4c0b9d3a2a369009cf4c +#: 70e9189a4a7b4f49ac3a3308fb205f8a +msgid ":attr:`~AuditLogDiff.deny`" +msgstr "" + +#: ../../api/enums.rst:916 +#: ../../api/enums.rst:932 +#: ../../api/enums.rst:947 +#: 4c5c591191e04caca5c233d14a2705a7 +#: dc4242d8e2824db3a5e69e283a111660 +#: c7199b2fdb5742238c2221d7b22c7954 +msgid ":attr:`~AuditLogDiff.allow`" +msgstr "" + +#: ../../api/enums.rst:917 +#: ../../api/enums.rst:933 +#: ../../api/enums.rst:948 +#: 35f09304dc1349a39b5f06c5dcee6b92 +#: 4655625eec82495495f1912345214c5b +#: 1b799e07563746b4a908a2ec9213439b +msgid ":attr:`~AuditLogDiff.id`" +msgstr "" + +#: ../../api/enums.rst:922 +#: d2431e9dfea74688bba2536e6c35b787 +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "" + +#: ../../api/enums.rst:925 +#: ../../api/enums.rst:940 +#: b74dea0f59eb486f98c229b259e001f9 +#: 548a7a8ca0314acf9735eac331d866e9 +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "" + +#: ../../api/enums.rst:938 +#: 80f46495697548b5a7050db9f950fbae +msgid "A channel permission overwrite was deleted." +msgstr "" + +#: ../../api/enums.rst:953 +#: da1fc8cf0b4b4f41a454b0142a8cfdb4 +msgid "A member was kicked." +msgstr "" + +#: ../../api/enums.rst:955 +#: 9462b1de374b4d8696d91df0e11eaf2e +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "" + +#: ../../api/enums.rst:958 +#: ../../api/enums.rst:973 +#: ../../api/enums.rst:982 +#: ../../api/enums.rst:991 +#: 8d80f3e4c17140e9ac2805db8431e4e8 +#: 27a6a127989d4532a61debf08a3fa570 +#: a414b2f116ac46ada7444b1b3e19804c +#: 71e96ce05c754141bdccada47c638e79 +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "" + +#: ../../api/enums.rst:962 +#: a42f6c019433416db0d63e147f403d85 +msgid "A member prune was triggered." +msgstr "" + +#: ../../api/enums.rst:964 +#: 4c83a0acb3cc4f5d9f86ee20117108e6 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "" + +#: ../../api/enums.rst:967 +#: ../../api/enums.rst:1026 +#: ../../api/enums.rst:1229 +#: ../../api/enums.rst:1256 +#: ../../api/enums.rst:1271 +#: 812eb56e424040508ad06db116cc0f17 +#: 96a3ff2630e046b69b446776774304a9 +#: 2dbf8d34537d45518170b5a4c8ffb3cc +#: b77778578eb74355ae650d2fd52036ed +#: 7716d95527c348e5b78e86a177044241 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "" + +#: ../../api/enums.rst:970 +#: 97c74c62f95b40a3a6cbff5163170239 +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "" + +#: ../../api/enums.rst:971 +#: 096f33ff779c4097a1ef75c0e894457e +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "" + +#: ../../api/enums.rst:977 +#: 877a04c39e16466dade6cfadc93f7c27 +msgid "A member was banned." +msgstr "" + +#: ../../api/enums.rst:979 +#: 770451079d8d4b5f8e33b6c52da5f3ff +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "" + +#: ../../api/enums.rst:986 +#: 3b2ae463eb7b4f7a9791c566854c5c1a +msgid "A member was unbanned." +msgstr "" + +#: ../../api/enums.rst:988 +#: 456609aa1df0460dbb3dcd6b5414aca8 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "" + +#: ../../api/enums.rst:995 +#: 9f69f34e9ff743b994009ea40c627614 +msgid "A member has updated. This triggers in the following situations:" +msgstr "" + +#: ../../api/enums.rst:997 +#: a544a120b4ee4844a5309e3925de5b11 +msgid "A nickname was changed" +msgstr "" + +#: ../../api/enums.rst:998 +#: 4633d30e1e5045e2b6c5c1c0695a0636 +msgid "They were server muted or deafened (or it was undone)" +msgstr "" + +#: ../../api/enums.rst:1000 +#: 3685711e4704496c8312ef6113636f20 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "" + +#: ../../api/enums.rst:1005 +#: c510c63833424799981d8707385c2273 +msgid ":attr:`~AuditLogDiff.nick`" +msgstr "" + +#: ../../api/enums.rst:1006 +#: df5ef4a4cc2947b68d3a3009467c3315 +msgid ":attr:`~AuditLogDiff.mute`" +msgstr "" + +#: ../../api/enums.rst:1007 +#: 669b0e98d96f4a4bb1d02efd76cc2f33 +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr "" + +#: ../../api/enums.rst:1011 +#: 3168c0f6dd594f0eaefc02e12dbc54c8 +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "" + +#: ../../api/enums.rst:1014 +#: a57b479bb72143a6b0e1fa6cff760c1a +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "" + +#: ../../api/enums.rst:1019 +#: cb8587e29f82416e87ff25127dc06b2e +msgid ":attr:`~AuditLogDiff.roles`" +msgstr "" + +#: ../../api/enums.rst:1023 +#: c70c7e8ef89345efafdbab17bf609ff9 +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "" + +#: ../../api/enums.rst:1029 +#: 5440bab9f6a64c3fb332fe281170aefd +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "" + +#: ../../api/enums.rst:1030 +#: 797d8b3c02204f6ebfed77b79d469a69 +msgid "``count``: An integer specifying how many members were moved." +msgstr "" + +#: ../../api/enums.rst:1036 +#: b317d4610f7e4869b25a224b1fbdca0b +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "" + +#: ../../api/enums.rst:1039 +#: ../../api/enums.rst:1242 +#: a7df0bd89c504de1bd34eb9aae01ffdd +#: f1c87b2f6b27443a9bfb2f71e47d823b +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "" + +#: ../../api/enums.rst:1042 +#: a37ce51898424e1588bffced6528805d +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "" + +#: ../../api/enums.rst:1048 +#: 767c4131a5a44823a1e7f53894454c9e +msgid "A bot was added to the guild." +msgstr "" + +#: ../../api/enums.rst:1050 +#: aad1bbec2f2a487784929c43e432558a +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "" + +#: ../../api/enums.rst:1057 +#: 113e9849b1e74752a8869a0c1ffd14e4 +msgid "A new role was created." +msgstr "" + +#: ../../api/enums.rst:1059 +#: ../../api/enums.rst:1079 +#: ../../api/enums.rst:1094 +#: 5547887ba3e64a6cadc87783c1bcecf7 +#: 91ed6f1edab04e8aad95cd8d9aa069f7 +#: f5e5f97f23e7451c8914aad7c3391dd4 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "" + +#: ../../api/enums.rst:1064 +#: ../../api/enums.rst:1084 +#: ../../api/enums.rst:1099 +#: 78a55e9bc42241f9a96d7224c5f829b9 +#: c8f52d8ffd564aeeb79100f37e0325a9 +#: c9397379c14f4c23ac15cd0553fafd82 +msgid ":attr:`~AuditLogDiff.colour`" +msgstr "" + +#: ../../api/enums.rst:1065 +#: ../../api/enums.rst:1085 +#: ../../api/enums.rst:1100 +#: eedbba5c376e47df94bda7b4263dad48 +#: 42aa4a1fa28042b6880c172318537e00 +#: 16cea7c03f6f467cb4885cc212ad03ed +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr "" + +#: ../../api/enums.rst:1066 +#: ../../api/enums.rst:1086 +#: ../../api/enums.rst:1101 +#: cae8f831afd84c8f8ec3f34a605bf3a5 +#: a6bebfacdbd34302b9f9d66309f5cdac +#: c3a50507a9ed44eaa961e0cd5cf90b8b +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr "" + +#: ../../api/enums.rst:1068 +#: ../../api/enums.rst:1088 +#: ../../api/enums.rst:1103 +#: 9eb0712d85af4316b0ce621843c8e83a +#: 6291a02bf06e4893b114eb374c0972ea +#: add7cd11dbb04b919e545c8027e3abac +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr "" + +#: ../../api/enums.rst:1072 +#: d9dfda6a35974401a26b2c11d5bbbc7a +msgid "A role was updated. This triggers in the following situations:" +msgstr "" + +#: ../../api/enums.rst:1074 +#: c0be7ff1754a484db3ff044dc08a5819 +msgid "The name has changed" +msgstr "" + +#: ../../api/enums.rst:1075 +#: 6fa2713e239b4564bf5605320b494175 +msgid "The permissions have changed" +msgstr "" + +#: ../../api/enums.rst:1076 +#: 4ff2b1766c94484b96274b722058b292 +msgid "The colour has changed" +msgstr "" + +#: ../../api/enums.rst:1077 +#: 98644645ef474f4396c1f75dc07216c1 +msgid "Its hoist/mentionable state has changed" +msgstr "" + +#: ../../api/enums.rst:1092 +#: 3254c9db3f0e44e79d2d800a84c5e124 +msgid "A role was deleted." +msgstr "" + +#: ../../api/enums.rst:1107 +#: 07b94a8a9e374347b683f0f1830b37d3 +msgid "An invite was created." +msgstr "" + +#: ../../api/enums.rst:1109 +#: ce279e2749bb47529031e1755e0740c2 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "" + +#: ../../api/enums.rst:1114 +#: ../../api/enums.rst:1138 +#: 4b17ff80832c43dc985fef67f54f8867 +#: 63ed30d0cf114ac7897b93dbf0ebf677 +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr "" + +#: ../../api/enums.rst:1115 +#: ../../api/enums.rst:1139 +#: 98082e38b018425aad8bb7cba4329f6b +#: 80061f89311c4b1c840a03cb3d637b8a +msgid ":attr:`~AuditLogDiff.code`" +msgstr "" + +#: ../../api/enums.rst:1116 +#: ../../api/enums.rst:1140 +#: a06a13e2c7fd4ea58ff641ae8758f789 +#: 491537ae15b2481b96f5f897cbc0f594 +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr "" + +#: ../../api/enums.rst:1117 +#: ../../api/enums.rst:1141 +#: 7d631cc9c2c84b1f87e678854919422a +#: a2b61b72f027412aaf6e17de2db74522 +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr "" + +#: ../../api/enums.rst:1118 +#: ../../api/enums.rst:1142 +#: ../../api/enums.rst:1155 +#: ../../api/enums.rst:1171 +#: ../../api/enums.rst:1184 +#: ../../api/enums.rst:1411 +#: ../../api/enums.rst:1432 +#: ../../api/enums.rst:1453 +#: fe4c5c753de54249aa866828f408a565 +#: d0f57a601eda4711a767462d7dcd2f7e +#: 28ea5cd1a0434d598a0aef1d8ed865b9 +#: f6760b3a7eeb420bae78324ec9219b80 +#: a5886d55b844447395a66697a447146e +#: 4237027b541d4783b363e232e7b14c04 +#: 80cd12851d3d4ef3a24a79f9a22518ee +#: 723c64f924f24657939b655291a50d47 +msgid ":attr:`~AuditLogDiff.channel`" +msgstr "" + +#: ../../api/enums.rst:1119 +#: ../../api/enums.rst:1143 +#: f0cb2c7e0fd845bf97ab419451436a0d +#: 58673fccfc5e44d693f2c5a9b836cfd6 +msgid ":attr:`~AuditLogDiff.uses`" +msgstr "" + +#: ../../api/enums.rst:1120 +#: ../../api/enums.rst:1144 +#: ed096900498d4549bfcca4bfce2acfcf +#: 9c22d47dc70d4bf6b8eb85c93024ecea +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr "" + +#: ../../api/enums.rst:1124 +#: 6fba5968ea2140edaf5c6920b4177d38 +msgid "An invite was updated." +msgstr "" + +#: ../../api/enums.rst:1126 +#: c0adb6372c474dd9a6fa1b79ababb781 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "" + +#: ../../api/enums.rst:1131 +#: 89c1b80cc1114e8a89ba6aa80e3b635a +msgid "An invite was deleted." +msgstr "" + +#: ../../api/enums.rst:1133 +#: 951939c17ece4b73a544877c61858520 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "" + +#: ../../api/enums.rst:1148 +#: d8d5352632bd48d381951430129bba1d +msgid "A webhook was created." +msgstr "" + +#: ../../api/enums.rst:1150 +#: ../../api/enums.rst:1166 +#: ../../api/enums.rst:1179 +#: 2fe79b01b896449f8a2711781524a8df +#: ef972dbe7ec941a5907d624c86a390d6 +#: 59d99fea521c4d5f9ce1c97173c5a522 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "" + +#: ../../api/enums.rst:1157 +#: ../../api/enums.rst:1186 +#: 4cd9b18b6fd844f084981705eb37900e +#: 0bdfb34cd2b849d0a7293c9a911f4adf +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr "" + +#: ../../api/enums.rst:1161 +#: 41467b9018c348b4ada46a61a597aae0 +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "" + +#: ../../api/enums.rst:1163 +#: 7fdd2431c3c246bc83d907abb08f3801 +msgid "The webhook name changed" +msgstr "" + +#: ../../api/enums.rst:1164 +#: b0d8e438c965430ab7887a917e0e8e59 +msgid "The webhook channel changed" +msgstr "" + +#: ../../api/enums.rst:1173 +#: db08795bf6dc4cdf875deacb581bf66d +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr "" + +#: ../../api/enums.rst:1177 +#: 53f84f6d911b427a82d7422c010c7be6 +msgid "A webhook was deleted." +msgstr "" + +#: ../../api/enums.rst:1190 +#: e7175cc208c84d12957322bfb535b34b +msgid "An emoji was created." +msgstr "" + +#: ../../api/enums.rst:1192 +#: ../../api/enums.rst:1203 +#: 41aeb9dc3c5840aeb56f92ec751f6cd0 +#: df5de1fd8daa4ce2a481835fc9ae71f4 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "" + +#: ../../api/enums.rst:1201 +#: 68f03695f66b4169a03ed9c1dc80389f +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "" + +#: ../../api/enums.rst:1212 +#: 48163ca0ef4c45ae844e45109240ea51 +msgid "An emoji was deleted." +msgstr "" + +#: ../../api/enums.rst:1214 +#: 6c4676bf1a414f30a39f7196f7d82d10 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "" + +#: ../../api/enums.rst:1223 +#: 00ed260437894ceca3ae37e9a173fe0d +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "" + +#: ../../api/enums.rst:1226 +#: 8982961c175341f9a00e1d4196d2528a +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "" + +#: ../../api/enums.rst:1232 +#: ../../api/enums.rst:1245 +#: 4468836a846542d6a6df219845f7c8c0 +#: 92a746616613438f9e44ef14f58c45f6 +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "" + +#: ../../api/enums.rst:1233 +#: 0465bcc39989438fbc4fc946201f3198 +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "" + +#: ../../api/enums.rst:1237 +#: b666af6168ac4da4925c44e8955fd829 +msgid "Messages were bulk deleted by a moderator." +msgstr "" + +#: ../../api/enums.rst:1239 +#: b496e7abbf6641c6aa0ecb2f408fa88d +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "" + +#: ../../api/enums.rst:1251 +#: 26b1fef40156492aade7797dec762c5b +msgid "A message was pinned in a channel." +msgstr "" + +#: ../../api/enums.rst:1253 +#: d1e5158c3f894e9098ce7240dda29673 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "" + +#: ../../api/enums.rst:1259 +#: 33b6b5d83e1b460da4ba77c314d523a0 +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "" + +#: ../../api/enums.rst:1260 +#: b02423c690af4a9fb690657d4b07c8e5 +msgid "``message_id``: the ID of the message which was pinned." +msgstr "" + +#: ../../api/enums.rst:1266 +#: 044f2e7645914a0ba5e4145600a04267 +msgid "A message was unpinned in a channel." +msgstr "" + +#: ../../api/enums.rst:1268 +#: 9133756a00814e1591bec12ddd56edb6 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "" + +#: ../../api/enums.rst:1274 +#: 88df13e8f17342db8d4441d72f234b2a +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "" + +#: ../../api/enums.rst:1275 +#: b626f07690e84a63af8a2164b849883c +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "" + +#: ../../api/enums.rst:1281 +#: 3dd421c8d563469a97e25a3e6ddea1e8 +msgid "A guild integration was created." +msgstr "" + +#: ../../api/enums.rst:1283 +#: 28a61562db5c42e58719d9abdd270252 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "" + +#: ../../api/enums.rst:1290 +#: 760589bb3a7d45058bd7bef6a304f95d +msgid "A guild integration was updated." +msgstr "" + +#: ../../api/enums.rst:1292 +#: cc4ffb3112c04683842b7de2775fb45d +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "" + +#: ../../api/enums.rst:1299 +#: 933106178e5547948aa91bdcbd78433d +msgid "A guild integration was deleted." +msgstr "" + +#: ../../api/enums.rst:1301 +#: f5bd9a45dda249209e96a6ee8751ca52 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "" + +#: ../../api/enums.rst:1308 +#: 5f8e9f5c32bf4508b5f303a3410265aa +msgid "A stage instance was started." +msgstr "" + +#: ../../api/enums.rst:1310 +#: c2e9a68539184e2fa02ef00208b3a2aa +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "" + +#: ../../api/enums.rst:1317 +#: ../../api/enums.rst:1332 +#: ../../api/enums.rst:1412 +#: ../../api/enums.rst:1433 +#: ../../api/enums.rst:1454 +#: f8fdb84c50e44daeb4c36d389b641c96 +#: d65c3aecb6c0489696f90eadd54ecddf +#: 44e35106f7094f5fb9455ee772ec0ab6 +#: fad91e851d004a6b90a25284db67decf +#: 625caa87aa24485fb1397616cf577a7a +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr "" + +#: ../../api/enums.rst:1323 +#: 39f42f6186ef44da90259d27f7714aaa +msgid "A stage instance was updated." +msgstr "" + +#: ../../api/enums.rst:1325 +#: 5f94e6a27480458483dd65b0a69b1037 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "" + +#: ../../api/enums.rst:1338 +#: 68be42754dcf431aa9cbbc788139632b +msgid "A stage instance was ended." +msgstr "" + +#: ../../api/enums.rst:1344 +#: b272d864a7ce4045bafbee2d91846c0d +msgid "A sticker was created." +msgstr "" + +#: ../../api/enums.rst:1346 +#: ../../api/enums.rst:1365 +#: ../../api/enums.rst:1384 +#: a544a30d24fe44ce9cbd11c4d6bf9f7c +#: 83e568d602594a06a3755e2645cea0e5 +#: 3d62e77b4351433b96277edb798f3ce3 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "" + +#: ../../api/enums.rst:1353 +#: ../../api/enums.rst:1372 +#: ../../api/enums.rst:1391 +#: 583a543779cf4d9c86a08d861082267b +#: 7d2c2dae92fa4be7bcd52331157da5bb +#: 2c0f60d87b514b59b8c45d1eb06bf0dd +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr "" + +#: ../../api/enums.rst:1355 +#: ../../api/enums.rst:1374 +#: ../../api/enums.rst:1393 +#: 98d494cb41e24671a60a79da9eafe995 +#: 591225f4c32c4c6cb4296ef99a4a5aea +#: 123dd92166354b2782efe70594d4c669 +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr "" + +#: ../../api/enums.rst:1356 +#: ../../api/enums.rst:1375 +#: ../../api/enums.rst:1394 +#: ../../api/enums.rst:1410 +#: ../../api/enums.rst:1431 +#: ../../api/enums.rst:1452 +#: 799a4b9a391c4475baa04647431d2cf1 +#: be345a6986ef4009a3e94c8dcab51547 +#: 7d0a742e6503449abe9e681184246edf +#: 1c84003999434ea1b83339033d6f1b08 +#: 0e3cd3da365646e3a19d92b79ab09390 +#: efb8bf105929454c942dbc678084c415 +msgid ":attr:`~AuditLogDiff.description`" +msgstr "" + +#: ../../api/enums.rst:1357 +#: ../../api/enums.rst:1376 +#: ../../api/enums.rst:1395 +#: 2364c53b67874e0bb8ef85cc03081b1e +#: 91fe394c81e54010909f486a0a62ccda +#: e621569837954f27972fc94f56f0b1bb +msgid ":attr:`~AuditLogDiff.available`" +msgstr "" + +#: ../../api/enums.rst:1363 +#: 899d08deac6348098bd7c041fbf23728 +msgid "A sticker was updated." +msgstr "" + +#: ../../api/enums.rst:1382 +#: f9aabd9368034d05978e3ee12f1155fc +msgid "A sticker was deleted." +msgstr "" + +#: ../../api/enums.rst:1401 +#: 38576243ba11499c8f6670a8e071b23b +msgid "A scheduled event was created." +msgstr "" + +#: ../../api/enums.rst:1403 +#: ../../api/enums.rst:1424 +#: ../../api/enums.rst:1445 +#: af920a7bbbc94e369a1d93f7a1cc290a +#: 5a0b011e635a4d84895b73b59e7641c9 +#: 3a98586e07cd4bd4b61d000b98c58dec +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "" + +#: ../../api/enums.rst:1413 +#: ../../api/enums.rst:1434 +#: ../../api/enums.rst:1455 +#: 3ce8b3fb8cdb40feb984d3851b53ed2d +#: 4e176938b5ab445290fa6b9fe22d0261 +#: a42a905118e545359543f03054ca8874 +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr "" + +#: ../../api/enums.rst:1414 +#: ../../api/enums.rst:1435 +#: ../../api/enums.rst:1456 +#: e59ba5034b72405cba2bd082ef739063 +#: c47fb618a6a947ec9ff4a6875bf364ae +#: b6a63604628744a3bc3aa26a49390e7f +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr "" + +#: ../../api/enums.rst:1415 +#: ../../api/enums.rst:1436 +#: ../../api/enums.rst:1457 +#: 9d33cef93ba04aaeaa2ad8cae3d8dc49 +#: b89408ceb4084309b42b7239e9feb62b +#: 0c99d4fce1d04a07812e647b68078da6 +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr "" + +#: ../../api/enums.rst:1416 +#: ../../api/enums.rst:1437 +#: ../../api/enums.rst:1458 +#: 0e093f4fc20c4d4c93052a0e73f2c90c +#: 6a7f6324a52842f78660d3d570b3474f +#: 28f6a91e32b84ed0a6993a51d9b36113 +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr "" + +#: ../../api/enums.rst:1422 +#: 2252dcfbdddc4518ba9f0199a082b519 +msgid "A scheduled event was updated." +msgstr "" + +#: ../../api/enums.rst:1443 +#: bb429c2196f24695b2d8d9eb0078ecd6 +msgid "A scheduled event was deleted." +msgstr "" + +#: ../../api/enums.rst:1464 +#: cceba1207c31456faba4376926117457 +msgid "A thread was created." +msgstr "" + +#: ../../api/enums.rst:1466 +#: afb06852a1554bf69f47285f8ffc16d4 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "" + +#: ../../api/enums.rst:1473 +#: ../../api/enums.rst:1491 +#: ../../api/enums.rst:1509 +#: 043230d39cfa4461a1c9f34486530bfe +#: 912ddcb3355a458d90aeab0137082161 +#: 5e10df6626994f96aa8ca205bb584fdf +msgid ":attr:`~AuditLogDiff.archived`" +msgstr "" + +#: ../../api/enums.rst:1474 +#: ../../api/enums.rst:1492 +#: ../../api/enums.rst:1510 +#: c83aa80e1c8642d6bfa6257faf79c176 +#: 85bc413b27d047e89aec8a40c120b255 +#: e862a1e81d244239be82de48fc3618c1 +msgid ":attr:`~AuditLogDiff.locked`" +msgstr "" + +#: ../../api/enums.rst:1475 +#: ../../api/enums.rst:1493 +#: ../../api/enums.rst:1511 +#: 0d034477efc24673bc7165634eec50bc +#: 81ec3efdb28a4f1da2a70783422b8b6e +#: 6ee5745a5889407f923396b63d2c0be9 +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr "" + +#: ../../api/enums.rst:1476 +#: ../../api/enums.rst:1494 +#: ../../api/enums.rst:1512 +#: adce5da724a64308a735139135250eb8 +#: 4f086715273847ed83469dd67b4c9823 +#: b78b252d467f4092846c5159c58b890b +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr "" + +#: ../../api/enums.rst:1482 +#: df6fa3e3ec454818b8d9a17d68135162 +msgid "A thread was updated." +msgstr "" + +#: ../../api/enums.rst:1484 +#: 43b8091416ca4f4987c31bc8136e00f5 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "" + +#: ../../api/enums.rst:1500 +#: 1ac5abed8f7042188c6f9a597b4d9e1f +msgid "A thread was deleted." +msgstr "" + +#: ../../api/enums.rst:1502 +#: 438ec881b324479aad7b59bb720a7b9c +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "" + +#: ../../api/enums.rst:1518 +#: 2bfad9ddfb214fa4a9ca9516c683488c +msgid "An application command's permissions were updated." +msgstr "" + +#: ../../api/enums.rst:1520 +#: e7552f8804b04c728f78efa08726afe8 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "" + +#: ../../api/enums.rst:1526 +#: 78afc906ed3c4751996fd204584c1948 +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr "" + +#: ../../api/enums.rst:1532 +#: df674749995940d79c7bd5cfb222a814 +msgid "A guild auto moderation rule was created." +msgstr "" + +#: ../../api/enums.rst:1537 +#: ../../api/enums.rst:1554 +#: ../../api/enums.rst:1570 +#: 31b47099c3d143e38933e93b4bed7600 +#: c0e72ba6aeee400ba6b6be2c8179c441 +#: 1a6da37f97714504b63b3cc67cd287dd +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr "" + +#: ../../api/enums.rst:1538 +#: ../../api/enums.rst:1555 +#: ../../api/enums.rst:1571 +#: e55b2c534b8a48b28c7486027a472d80 +#: 96f0dbd43fab42cd8da1b295291534a8 +#: a29d09b8d1a54079b17bf108895a1d2c +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr "" + +#: ../../api/enums.rst:1539 +#: ../../api/enums.rst:1572 +#: e4de7bbff1904eb083376272e84eebd8 +#: e6e0f32618fe463999317e89c13b2b4c +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr "" + +#: ../../api/enums.rst:1540 +#: ../../api/enums.rst:1556 +#: ../../api/enums.rst:1573 +#: 53ff474414c545e0877c9dcfa81b07e9 +#: c1d3188e8fff44d683c45799cc96404b +#: f158418a61d24685822ad2d4026e7fb9 +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr "" + +#: ../../api/enums.rst:1541 +#: ../../api/enums.rst:1557 +#: ../../api/enums.rst:1574 +#: 60f92a70f105440b83650e54eeb14221 +#: 75430aa557ed4c2a87460a3fadad5137 +#: b792aaf740e045babb81c2f58ab9407a +msgid ":attr:`~AuditLogDiff.actions`" +msgstr "" + +#: ../../api/enums.rst:1542 +#: ../../api/enums.rst:1558 +#: ../../api/enums.rst:1575 +#: c38f20feb116471888fe077289ce8040 +#: 8a6a24983308476d8bb356863b85873f +#: a3b6f535700543959d3bb54fb078e015 +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr "" + +#: ../../api/enums.rst:1543 +#: ../../api/enums.rst:1559 +#: ../../api/enums.rst:1576 +#: 6db5bcd67f51475aacbe4e00cfd33b12 +#: 70b8c754ddd74892ac549fe3d22f8772 +#: d0fcfcce917e4cdba1501e04cd870554 +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr "" + +#: ../../api/enums.rst:1549 +#: 08714b4c79eb4a06bd4bad4c53f201af +msgid "A guild auto moderation rule was updated." +msgstr "" + +#: ../../api/enums.rst:1565 +#: b6818219409d4e6aacbe23037c32b8ac +msgid "A guild auto moderation rule was deleted." +msgstr "" + +#: ../../api/enums.rst:1582 +#: 9c85ec4f6e2f48cdaa7c1697b08dbd12 +msgid "A message was blocked by auto moderation." +msgstr "" + +#: ../../api/enums.rst:1588 +#: 20649608cd1c49eb8887ce7a5a1064c3 +msgid "A message was flagged by auto moderation." +msgstr "" + +#: ../../api/enums.rst:1594 +#: a271ec7a81804ceaa6c9e8de7f8c16ac +msgid "A member was timed out by auto moderation." +msgstr "" + +#: ../../api/enums.rst:1600 +#: db5791aff5df4a76b6dd46f17ba8eb10 +msgid "A creator monetization request was created." +msgstr "" + +#: ../../api/enums.rst:1606 +#: 29b4fe1bf2594cd6923b822ddb23f607 +msgid "The creator monetization terms were accepted." +msgstr "" + +#: ../../api/enums.rst:1612 +#: 6d784c3658104e46b3553fa88209e336 +msgid "A voice channel status was updated." +msgstr "" + +#: ../../api/enums.rst:1614 +#: ../../api/enums.rst:1628 +#: d09aa244691540dbaeff35ae7f802cd6 +#: 21d7aa25fa2449bdbc086189b5743a39 +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "" + +#: ../../api/enums.rst:1620 +#: ../../api/enums.rst:1634 +#: 9e02b19e51fd49449aacc3c074f5918a +#: 73946b20ffa0408d809d244e405077f2 +msgid ":attr:`~AuditLogDiff.status`" +msgstr "" + +#: ../../api/enums.rst:1626 +#: d1f055c436d14c188223461f9ca0cb1f +msgid "A voice channel status was deleted." +msgstr "" + +#: ../../api/enums.rst:1641 +#: 4b5b16167df54688914416bf0caf7627 +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "" + +#: ../../api/enums.rst:1643 +#: 9dbab0a232604abd8953a7df6a0bdf70 +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "" + +#: ../../api/enums.rst:1647 +#: f06b452c09974142b467507b70205eab +msgid "The action is the creation of something." +msgstr "" + +#: ../../api/enums.rst:1651 +#: 7dd989a90a0e43eca243d490ffef3bff +msgid "The action is the deletion of something." +msgstr "" + +#: ../../api/enums.rst:1655 +#: 183aa68fd5254ee7a6db373fb9097160 +msgid "The action is the update of something." +msgstr "" + +#: ../../api/enums.rst:1659 +#: 6a3f9302095245598ef3c8f0ffd44f83 +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "" + +#: ../../api/enums.rst:1665 +#: f99b7db7002a426498d6216ff366a87f +msgid "Represents an invited member." +msgstr "" + +#: ../../api/enums.rst:1669 +#: 5932ead93d9b4001a809e94b536efbaf +msgid "Represents a member currently in the team." +msgstr "" + +#: ../../api/enums.rst:1673 +#: d78900c618414d258b8bf82e4c53d0ce +msgid "Represents the type of webhook that can be received." +msgstr "" + +#: ../../api/enums.rst:1679 +#: 45607f9417c8476bbe61af59ae2145bb +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "" + +#: ../../api/enums.rst:1683 +#: 92040f62183548ba9f04a9c654fb5b9f +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "" + +#: ../../api/enums.rst:1687 +#: edd45f91b353433baa215c38fb8cfcfe +msgid "Represents a webhook that is used for interactions or applications." +msgstr "" + +#: ../../api/enums.rst:1693 +#: b9a957369e784999aa4db4b99d37e718 +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "" + +#: ../../api/enums.rst:1696 +#: e3e3956bce32458eab440f079ac72be1 +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "" + +#: ../../api/enums.rst:1702 +#: dde2cba259b942be9d7daa7f75050e95 +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "" + +#: ../../api/enums.rst:1707 +#: 8f56b4a6ec50439d8486352d8f2ec42c +msgid "This will kick the user when their subscription is finished." +msgstr "" + +#: ../../api/enums.rst:1711 +#: 110f5f127cf34700aebef11bd948132d +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "" + +#: ../../api/enums.rst:1715 +#: 95430a94d7b947f3a821f07b70aab0c5 +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "" + +#: ../../api/enums.rst:1719 +#: 58fcc73eebea461890325809557e6dc8 +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "" + +#: ../../api/enums.rst:1723 +#: d96b0ce740304a21a5d1db1f45051d0c +msgid "An alias for :attr:`grey`." +msgstr "" + +#: ../../api/enums.rst:1726 +#: 01c0705a0c01418ba8c2bee502a423b7 +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "" + +#: ../../api/enums.rst:1730 +#: acdf3d58f3ac468592d6eb672e7927ab +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "" + +#: ../../api/enums.rst:1734 +#: 63d1d5cafeb745c1a8da433c1c130535 +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "" + +#: ../../api/enums.rst:1739 +#: ae3f995775e245e5abf45bc2dda7078c +msgid "Represents the type of sticker." +msgstr "" + +#: ../../api/enums.rst:1745 +#: 151fd406272c490e93b3cf88e7ab8974 +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "" + +#: ../../api/enums.rst:1749 +#: 39793037eae8422ba9536d90e842bb02 +msgid "Represents a custom sticker created in a guild." +msgstr "" + +#: ../../api/enums.rst:1753 +#: b05e06d5a5354367b3b7a284ac12d311 +msgid "Represents the type of sticker images." +msgstr "" + +#: ../../api/enums.rst:1759 +#: 4e9c50adfad0429eacfe68de8c0581d6 +msgid "Represents a sticker with a png image." +msgstr "" + +#: ../../api/enums.rst:1763 +#: e8bfe207df5b45708af4bbd905129a8b +msgid "Represents a sticker with an apng image." +msgstr "" + +#: ../../api/enums.rst:1767 +#: b0fde2a0da464265ab504c4c9bef1f2a +msgid "Represents a sticker with a lottie image." +msgstr "" + +#: ../../api/enums.rst:1771 +#: 1381383432f44e6eb5368c0835da0f62 +msgid "Represents a sticker with a gif image." +msgstr "" + +#: ../../api/enums.rst:1777 +#: 8e5bfa0150ba4362936661ad4d6a554f +msgid "Represents the invite type for voice channel invites." +msgstr "" + +#: ../../api/enums.rst:1783 +#: c7f7db69ae9f4aac9e422022c828aa9b +msgid "The invite doesn't target anyone or anything." +msgstr "" + +#: ../../api/enums.rst:1787 +#: 99696cffc0224f118163d8732e9a10d6 +msgid "A stream invite that targets a user." +msgstr "" + +#: ../../api/enums.rst:1791 +#: 4721dd8e936842c5bbd1a61a15097822 +msgid "A invite that targets an embedded application." +msgstr "" + +#: ../../api/enums.rst:1793 +#: 9b51feef851e411aabb0c0038cd3b750 +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "" + +#: ../../api/enums.rst:1797 +#: dc0bb1003ef04faaa4b36bd79dd3badc +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "" + +#: ../../api/enums.rst:1803 +#: 088bf995fa014f37a03bf9c347e018c7 +msgid "Represents auto camera video quality." +msgstr "" + +#: ../../api/enums.rst:1807 +#: f5c93fe91c704114af9cb34d427c1921 +msgid "Represents full camera video quality." +msgstr "" + +#: ../../api/enums.rst:1811 +#: 965f3cd4c033475cb1cc38b821f8bded +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "" + +#: ../../api/enums.rst:1819 +#: 8fca712babea4c3a9a70f16a55863fad +msgid "The stage instance can only be joined by members of the guild." +msgstr "" + +#: ../../api/enums.rst:1823 +#: eb7b9565987841f0b48a3db792db276a +msgid "Alias for :attr:`.closed`" +msgstr "" + +#: ../../api/enums.rst:1827 +#: d5c29b81b2c14cc18c675c80d475f6a1 +msgid "Represents the NSFW level of a guild." +msgstr "" + +#: ../../api/enums.rst:1835 +#: 12bcaa8cfcb842c5a148f65f193cc74f +msgid "Checks if two NSFW levels are equal." +msgstr "" + +#: ../../api/enums.rst:1838 +#: 654b4dfd63874e9f819b003f72cf07b2 +msgid "Checks if two NSFW levels are not equal." +msgstr "" + +#: ../../api/enums.rst:1841 +#: f7c2e3b237eb4ce0a21fefe5b1189439 +msgid "Checks if a NSFW level is higher than another." +msgstr "" + +#: ../../api/enums.rst:1844 +#: 2305a4e94a2f4497bd17faa6e1171158 +msgid "Checks if a NSFW level is lower than another." +msgstr "" + +#: ../../api/enums.rst:1847 +#: d63e8c2fcee54c94a148283479fcdaba +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "" + +#: ../../api/enums.rst:1850 +#: 0bdeecdc326a477f99e3d20b23060fbd +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "" + +#: ../../api/enums.rst:1854 +#: 73f672f9e2dc41f3868c069d8f016e01 +msgid "The guild has not been categorised yet." +msgstr "" + +#: ../../api/enums.rst:1858 +#: 281c15a151fb4dcb95ea4c02e970ede6 +msgid "The guild contains NSFW content." +msgstr "" + +#: ../../api/enums.rst:1862 +#: f4359419ec5941e8b5e91c4ef5403f4a +msgid "The guild does not contain any NSFW content." +msgstr "" + +#: ../../api/enums.rst:1866 +#: 03593a6c2994467b9ed47bf3876b3622 +msgid "The guild may contain NSFW content." +msgstr "" + +#: ../../api/enums.rst:1870 +#: 1702f291fcb34353a6ab9d1d950767f0 +msgid "Represents an embedded activity application." +msgstr "" + +#: ../../api/enums.rst:1872 +#: e09b1261ff9e4aed838e56dc0f2d0ba1 +msgid "Some might be boost-only or gated." +msgstr "" + +#: ../../api/enums.rst:1876 +#: 51a321ee62d54d98a9eccf81b593ba9d +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "" + +#: ../../api/enums.rst:1878 +#: e421667f43d645a19bf6e4f2ec7619d3 +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "" + +#: ../../api/enums.rst:1884 +#: 8634ae2fdeae4337b6d96d3695dcfd5b +msgid "Represents the embedded application Ask Away." +msgstr "" + +#: ../../api/enums.rst:1890 +#: 4d3efac29bec4fea95eb83fb78c5e715 +msgid "Represents the embedded application Awkword." +msgstr "" + +#: ../../api/enums.rst:1894 +#: ../../api/enums.rst:1902 +#: ../../api/enums.rst:1982 +#: ../../api/enums.rst:1990 +#: ../../api/enums.rst:1998 +#: ../../api/enums.rst:2086 +#: ../../api/enums.rst:2106 +#: ../../api/enums.rst:2114 +#: 46a7b3bd09264237b2c107acc73ecd72 +#: 26a17bd0648f42319205d7e93d492172 +#: a79b808e86594cdb8093ee9de1e8d5ec +#: 9db4622ff7d24f809e4ebf3a64cd2d2d +#: 5d37fd74de88463abc545e8a9bc6c324 +#: 88f0d371b1894498954ed6863c819b42 +#: 6f540ae1a6bc40778c30e5b6ed6c1ebd +#: 7e84904cbf23461b85b39425620e25ed +msgid "This activity has been removed." +msgstr "" + +#: ../../api/enums.rst:1898 +#: 7df3a9c26b4f4fac8b39048deb5657dc +msgid "Development version of :attr:`.awkword`." +msgstr "" + +#: ../../api/enums.rst:1906 +#: abbce992b4e24550996b4cd9cbf4eb60 +msgid "Represents the embedded application Bash Out." +msgstr "" + +#: ../../api/enums.rst:1912 +#: 262e49924cc14a02865aa50c57045b60 +msgid "Represents the embedded application Betrayal.io." +msgstr "" + +#: ../../api/enums.rst:1916 +#: ca9d81dfd82f4031b335c4bc19933a46 +msgid "Represents the embedded application Blazing 8s." +msgstr "" + +#: ../../api/enums.rst:1922 +#: 37e760d58a7143b89abba2d5b19e1078 +msgid "Development version of :attr:`.blazing_8s`." +msgstr "" + +#: ../../api/enums.rst:1928 +#: 126662fd83ef43cd965f2fde2fbc3d90 +msgid "QA version of :attr:`.blazing_8s`." +msgstr "" + +#: ../../api/enums.rst:1934 +#: bceb40c70ad54faea89657ff53a8b6ed +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "" + +#: ../../api/enums.rst:1940 +#: ece980f3196e4e22826bf0b9fbd9ba4d +msgid "Represents the embedded application Bobble League." +msgstr "" + +#: ../../api/enums.rst:1946 +#: 2cd323b60d65453680bf7e879ce98f88 +msgid "Represents the embedded application Checkers in the Park." +msgstr "" + +#: ../../api/enums.rst:1950 +#: a78c47930e5a4ba8b51f71dcea78c7ce +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1954 +#: c2cc29ea6e184e83b2be17704af74c56 +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1958 +#: 7eb39863607f40c380be079505668760 +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1962 +#: ef05be1c5f7e4079ac7c56305f89ebfa +msgid "Represents the embedded application Chess in the Park." +msgstr "" + +#: ../../api/enums.rst:1966 +#: 6320ce907144405b876049b648120b12 +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1970 +#: 749604a85ea64bbf996c3637266a7dfd +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1974 +#: 4d7d5cbee8df40f39c5bd67d2a5cf15a +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1978 +#: bf380b08e1e1407eafa744eae41fbb85 +msgid "Represents the embedded application Decoders Development." +msgstr "" + +#: ../../api/enums.rst:1986 +#: 5f272d25b38e42c5b02ff61dfc3ded42 +msgid "Represents the embedded application Doodle Crew." +msgstr "" + +#: ../../api/enums.rst:1994 +#: 90460a782454406b9eba77e90bbc0d65 +msgid "Development version of :attr:`.doodle_crew`." +msgstr "" + +#: ../../api/enums.rst:2002 +#: adbde9ea5c7740d88be1a57b89ad8046 +msgid "Represents the embedded application Fishington.io." +msgstr "" + +#: ../../api/enums.rst:2006 +#: d6011665aa3848a8810933d33109f014 +msgid "Represents the embedded application Gartic Phone." +msgstr "" + +#: ../../api/enums.rst:2012 +#: 5b98bc6e985645759adce7b6dc973bc2 +msgid "Represents the embedded application Jamspace." +msgstr "" + +#: ../../api/enums.rst:2018 +#: 8cb40366f76a471182114e1d2bf663a4 +msgid "Represents the embedded application Know What I Meme." +msgstr "" + +#: ../../api/enums.rst:2024 +#: 4611eb49709143a7943172b1ecd4af36 +msgid "Represents the embedded application Land.io." +msgstr "" + +#: ../../api/enums.rst:2030 +#: 1cef475005fa4d3e977b4a250336eaff +msgid "Represents the embedded application Letter League." +msgstr "" + +#: ../../api/enums.rst:2034 +#: 90d3eb8aa9354387bab79c9666a7f6be +msgid "Development version of :attr:`.letter_league`." +msgstr "" + +#: ../../api/enums.rst:2040 +#: 5900632eb0bd408aaeaceea4df6a3400 +msgid "Represents the embedded application Poker Night." +msgstr "" + +#: ../../api/enums.rst:2044 +#: 859bd24025a04598a607f82fe33e2303 +msgid "Development version of :attr:`.poker_night`." +msgstr "" + +#: ../../api/enums.rst:2050 +#: 364952c675e345bfa20f62bb6295b569 +msgid "QA version of :attr:`.poker_night`." +msgstr "" + +#: ../../api/enums.rst:2054 +#: 306415ef45014befbf99265bc432d5d5 +msgid "Staging version of :attr:`.poker_night`." +msgstr "" + +#: ../../api/enums.rst:2058 +#: 6b68a438b88f4507bfaea1747c902c24 +msgid "Represents the embedded application Putt Party." +msgstr "" + +#: ../../api/enums.rst:2064 +#: 1db9baa076ee480d8d0aa84283c03a90 +msgid "Development version of :attr:`.putt_party`." +msgstr "" + +#: ../../api/enums.rst:2070 +#: 28f5321d2a88463a87a98cc3fe977eee +msgid "QA version of :attr:`.putt_party`." +msgstr "" + +#: ../../api/enums.rst:2076 +#: d1c4dbb002ad4b59b6f095bd3c9e8241 +msgid "Staging version of :attr:`.putt_party`." +msgstr "" + +#: ../../api/enums.rst:2082 +#: 10dffbd7ae7346b1a9adb510b348b139 +msgid "Represents the embedded application Putts." +msgstr "" + +#: ../../api/enums.rst:2090 +#: 1a64c939106a47e89fa93d72ccffb2dd +msgid "Represents the embedded application Sketch Heads." +msgstr "" + +#: ../../api/enums.rst:2096 +#: fe0828898e684c07ac1bb2b084c6b92e +msgid "Development version of :attr:`.sketch_heads`." +msgstr "" + +#: ../../api/enums.rst:2102 +#: 2abfe4abd47a4b16a8759924e64d5f61 +msgid "Represents the embedded application Sketchy Artist." +msgstr "" + +#: ../../api/enums.rst:2110 +#: 0c2730bb638249d491ca800b236c561d +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "" + +#: ../../api/enums.rst:2118 +#: 57f7dbca4655440a93c3fd350e137039 +msgid "Represents the embedded application Spell Cast." +msgstr "" + +#: ../../api/enums.rst:2122 +#: 5db2665a5810470ebfdcde53e0c9844e +msgid "Staging version of :attr:`.spell_cast`." +msgstr "" + +#: ../../api/enums.rst:2128 +#: e5f509a034fc4e12b38a85f3efc3e443 +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "" + +#: ../../api/enums.rst:2132 +#: 40693975970c4aba91b20cbb710c3df5 +msgid "Development version of :attr:`.watch_together`." +msgstr "" + +#: ../../api/enums.rst:2136 +#: b171892fb9124323bb2b98d60e1b7a85 +msgid "Represents the embedded application word snacks." +msgstr "" + +#: ../../api/enums.rst:2140 +#: f667ed7f17934a5886e9dbab4028d854 +msgid "Development version of :attr:`.word_snacks`." +msgstr "" + +#: ../../api/enums.rst:2144 +#: f2e8046479ab4befb1b09badb53ceac4 +msgid "Represents the embedded application Youtube Together." +msgstr "" + +#: ../../api/enums.rst:2148 +#: 3aafbe2b679b447ba75d81c817faba38 +msgid "Represents the status of a scheduled event." +msgstr "" + +#: ../../api/enums.rst:2154 +#: 203576378c61466aafba5a0280b7d8d7 +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "" + +#: ../../api/enums.rst:2158 +#: 11cbb117b6e540df9c5cf85a8692ddd0 +msgid "The scheduled event is in progress." +msgstr "" + +#: ../../api/enums.rst:2162 +#: 59952e0eaaed49e283b98e7bc4fc4827 +msgid "The scheduled event is over." +msgstr "" + +#: ../../api/enums.rst:2166 +#: 347d83904c7c44bc93ff95674bf1dc88 +msgid "The scheduled event has been canceled before it can start." +msgstr "" + +#: ../../api/enums.rst:2170 +#: f3e431347c5e494ab804674c1a47785e +msgid "Alias to :attr:`canceled`." +msgstr "" + +#: ../../api/enums.rst:2174 +#: 9367cb26de98424599dc80ef69d1a73d +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "" + +#: ../../api/enums.rst:2180 +#: 4266c50b2bdf4fcf8936d92fa70abac3 +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "" + +#: ../../api/enums.rst:2184 +#: f9e4297eb07d41a3bde1dbf3e89b5675 +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "" + +#: ../../api/enums.rst:2188 +#: e4af5f9d382340e3828ebe79f1ebfee7 +msgid "Represents a generic location as a :class:`str`." +msgstr "" + +#: ../../api/enums.rst:2192 +#: fe8d3a7422cf4811950c7096d1a6910d +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "" + +#: ../../api/enums.rst:2198 +#: e258adae10a24e399876694c35f291ee +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "" + +#: ../../api/enums.rst:2202 +#: 43c0ea119a5d4ddeae31a1891ab90bba +msgid "Represents an application role connection metadata type." +msgstr "" + +#: ../../api/enums.rst:2204 +#: a48a777f05f8404ea3f84c2eea0b407b +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "" + +#: ../../api/enums.rst:2213 +#: 7a2243082c9146148a159adfd210797b +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "" + +#: ../../api/enums.rst:2217 +#: e05c266364924b249c892a96ae04c509 +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "" + +#: ../../api/enums.rst:2221 +#: dc164a530b7748a890b89df5f1d48a3a +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "" + +#: ../../api/enums.rst:2225 +#: 271247e528204d5caec08f683630d00c +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "" + +#: ../../api/enums.rst:2229 +#: c5cbe1ee08764e95af0db6111e8f10c0 +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "" + +#: ../../api/enums.rst:2234 +#: 4f4f013f472b4670a51d9240fd8f71cb +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "" + +#: ../../api/enums.rst:2239 +#: fa757acb4e9841578e85bd76d6678b17 +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "" + +#: ../../api/enums.rst:2243 +#: 0f6c437fb349410593e5fc67633b1ed0 +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "" + +#: ../../api/enums.rst:2247 +#: 6cd1703bdbcb49af8199d10e0be98536 +msgid "Represents an AutoMod trigger type." +msgstr "" + +#: ../../api/enums.rst:2253 +#: 92785878e944483596614511844290d9 +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "" + +#: ../../api/enums.rst:2255 +#: ../../api/enums.rst:2265 +#: ../../api/enums.rst:2280 +#: 2748f446a4944afcac405b4e6431d085 +#: 6b22e3f8c2104c49a2126255db4d2a25 +#: 6e7fe5085c2c473ebe25b9e17a6473c3 +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "" + +#: ../../api/enums.rst:2257 +#: 164ea467f5a74a77a09fffe0604d2e6f +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr "" + +#: ../../api/enums.rst:2258 +#: 3a554f78cf8f4a0386b8cde531dbbbf4 +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr "" + +#: ../../api/enums.rst:2259 +#: ../../api/enums.rst:2268 +#: f18a268f3f3847c59e0ef614ee5a88ca +#: e648d4c07e7849498fa1e37f3dc9d7a4 +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr "" + +#: ../../api/enums.rst:2263 +#: 9cb29d61a6674cc58252b6ff7ec0ee65 +msgid "Represents a preset keyword rule trigger." +msgstr "" + +#: ../../api/enums.rst:2267 +#: d6aa05f209664d85a235c190d3043cd9 +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr "" + +#: ../../api/enums.rst:2272 +#: fc23e3e17deb4d2db2f13578e975407f +msgid "Represents the spam rule trigger." +msgstr "" + +#: ../../api/enums.rst:2274 +#: 5052fa1e23f84d919094b527e6780760 +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "" + +#: ../../api/enums.rst:2278 +#: c1b72bd121c64fd9b20ca8fdb200b748 +msgid "Represents a mention spam keyword rule trigger." +msgstr "" + +#: ../../api/enums.rst:2282 +#: cca7bd82a2394c6083489b7e39c4c738 +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr "" + +#: ../../api/enums.rst:2288 +#: 70879d5f0ea545c6a8e2c43268f3a44a +msgid "Represents a harmful link rule trigger." +msgstr "" + +#: ../../api/enums.rst:2290 +#: ab821fbd1d1c44e7b9adfaccc49878cc +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "" + +#: ../../api/enums.rst:2295 +#: 1d15948ea48048f3a54cb3fd56f98949 +msgid "Represents an AutoMod event type." +msgstr "" + +#: ../../api/enums.rst:2301 +#: de04935db43e47bb8ad4d5ad0a2e794a +msgid "Represents a message send AutoMod event." +msgstr "" + +#: ../../api/enums.rst:2305 +#: 20ab54c4886942d6a8b40c6cb79dc15e +msgid "Represents the type of action AutoMod is performing." +msgstr "" + +#: ../../api/enums.rst:2311 +#: 2052ac6a159c413096526b93f53fc40f +msgid "Represents a block message action." +msgstr "" + +#: ../../api/enums.rst:2315 +#: 52326fdbc82c40b78fb2d012ee46d6e0 +msgid "Represents a send alert message action." +msgstr "" + +#: ../../api/enums.rst:2319 +#: e71766619bd345e6adacc517795aa546 +msgid "Represents a timeout action." +msgstr "" + +#: ../../api/enums.rst:2323 +#: a67c1f449b7b46a6b3945dbe581eecf5 +msgid "Represents an AutoMod keyword preset type." +msgstr "" + +#: ../../api/enums.rst:2329 +#: 16fae1e09da548e194ff3e9b141d0b3e +msgid "Represents the profanity keyword preset rule." +msgstr "" + +#: ../../api/enums.rst:2333 +#: ab390cf38fb84df4a3a96714d0211fb6 +msgid "Represents the sexual content keyword preset rule." +msgstr "" + +#: ../../api/enums.rst:2337 +#: 1a4ffd11aed54240903e82e327560e9b +msgid "Represents the slurs keyword preset rule." +msgstr "" + +#: ../../api/enums.rst:2341 +#: e06b2688ab0040a886ef9dc2896bc3a3 +msgid "Represents how each prompt's options are displayed." +msgstr "" + +#: ../../api/enums.rst:2347 +#: 49a64ce72b5949fbb573a3ccaee7703f +msgid "The options will appear in a grid form, showing the name and description." +msgstr "" + +#: ../../api/enums.rst:2351 +#: 0a3bb3bdb2714e2cbf932539ebc78a91 +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "" + +#: ../../api/enums.rst:2355 +#: a23abfb2ecad4cd8ad6e055957bf964e +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "" + +#: ../../api/enums.rst:2361 +#: 6aa44f6eace5404f9d4a7f22c35aa583 +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "" + +#: ../../api/enums.rst:2365 +#: fb8b2393e31646fea2a6b5c6cff080cb +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "" + +#: ../../api/enums.rst:2369 +#: d984d2edafa0494198f40de75ba4ee65 +msgid "Represents a Reaction's type." +msgstr "" + +#: ../../api/enums.rst:2375 +#: 7093ffd76bf040fbabd2de615bea62a7 +msgid "Represents a normal reaction." +msgstr "" + +#: ../../api/enums.rst:2379 +#: 7ff6dcebaa89470b8b1b9ee4585e7e04 +msgid "Represents a super reaction." +msgstr "" + +#: ../../api/enums.rst:2383 +#: 8441ff853aa64a7da5c19e1df2a877a2 +msgid "Represents an SKU's type." +msgstr "" + +#: ../../api/enums.rst:2389 +#: bc04deae624c4ff79197fba79bb3d505 +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "" + +#: ../../api/enums.rst:2394 +#: ac5ad3bc7e1642909644aad6bf116481 +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "" + +#: ../../api/enums.rst:2399 +#: ac2cba0273274f94888cf5be8147f0b0 +msgid "Represents a recurring subscription." +msgstr "" + +#: ../../api/enums.rst:2403 +#: 9755ce16658e4e5aaf283233f4ba8e6c +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "" + +#: ../../api/enums.rst:2408 +#: f47ba3afb4144d7cb79cacb32af9f292 +msgid "Represents an entitlement's type." +msgstr "" + +#: ../../api/enums.rst:2414 +#: f0c9c5eeaf1d4576b1977a50ebff3be9 +msgid "Entitlement was purchased by the user." +msgstr "" + +#: ../../api/enums.rst:2418 +#: 0fd3167c06bb4f73a4373acc350c29f4 +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "" + +#: ../../api/enums.rst:2422 +#: 6e360623ccd14c7ba737664a0720387b +msgid "Entitlement was gifted by the developer." +msgstr "" + +#: ../../api/enums.rst:2426 +#: a3753cbe720248baad7006b741b83d0f +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "" + +#: ../../api/enums.rst:2430 +#: c50fbfb4231547299d0b58c756a526ef +msgid "Entitlement was granted when the SKU was free." +msgstr "" + +#: ../../api/enums.rst:2434 +#: 664d88fce1c945589b43e457c0a039ab +msgid "Entitlement was gifted by another user." +msgstr "" + +#: ../../api/enums.rst:2438 +#: bcce02698e7c4d93b0593a4738376114 +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "" + +#: ../../api/enums.rst:2442 +#: 94fb5669a76e4d5799331d41c4367469 +msgid "Entitlement was purchased as an app subscription." +msgstr "" + +#: ../../api/enums.rst:2447 +#: 043f69aa903442b79ab0a54119892850 +msgid "Represents an entitlement's ownership type." +msgstr "" + +#: ../../api/enums.rst:2453 +#: 72cb5e1565fc455191948cdc346b5907 +msgid "Entitlement is owned by a guild." +msgstr "" + +#: ../../api/enums.rst:2457 +#: e781c8a6bbb243499cddce3c2086358f +msgid "Entitlement is owned by a user." +msgstr "" + +#: ../../api/enums.rst:2462 +#: 61f4a928d66440c58ffbf67cfb15c5a1 +msgid "Represents a poll's layout type." +msgstr "" + +#: ../../api/enums.rst:2468 +#: f54fed3455b144949f6a44f072c31a50 +msgid "Represents the default layout." +msgstr "" + +#: ../../api/enums.rst:2473 +#: 2b0b8bc9cad04acebb5612d68a8de5bc +msgid "The integration type for an application." +msgstr "" + +#: ../../api/enums.rst:2479 +#: a15a8b77c15e4992bc42c8bb77ef4798 +msgid "The integration is added to a guild." +msgstr "" + +#: ../../api/enums.rst:2483 +#: 3c01a27a108a44fd993f5951533ed1d6 +msgid "The integration is added to a user account." +msgstr "" + +#: ../../api/enums.rst:2488 +#: d351c5701a90482b9a4914a152ef4078 +msgid "The context where an interaction occurs." +msgstr "" + +#: ../../api/enums.rst:2494 +#: e8e8e4cc8a314af0b8169d0786b9b761 +msgid "The interaction is in a guild." +msgstr "" + +#: ../../api/enums.rst:2498 +#: 9c92e2dd1a0f4c0c85a016d87b6eef8f +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "" + +#: ../../api/enums.rst:2502 +#: 1e9f15c549cb42a1974d9ba887984e15 +msgid "The interaction is in a private DM or group DM channel." +msgstr "" diff --git a/docs/build/locales/api/events.pot b/docs/build/locales/api/events.pot new file mode 100644 index 0000000000..6111d5f708 --- /dev/null +++ b/docs/build/locales/api/events.pot @@ -0,0 +1,1900 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/events.rst:6 +#: b2b93f092885467db7bfd392648d888f +msgid "Event Reference" +msgstr "" + +#: ../../api/events.rst:8 +#: bdee4bc49e3e4607b4c21d82fe93e090 +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "" + +#: ../../api/events.rst:10 +#: 2f7235d8cacd43e89e3c134128adb29d +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "" + +#: ../../api/events.rst:50 +#: adc23d509127474b8d15bcc0824ba0b8 +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "" + +#: ../../api/events.rst:55 +#: 47882c01d8f44f12a233f6e23da1bc8e +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "" + +#: ../../api/events.rst:60 +#: dcdd13d7ae4f41668bc09a5e8891be30 +msgid "Application Commands" +msgstr "" + +#: ../../api/events.rst:63 +#: 1bb731d89f9d453bb72c8525a0000c04 +msgid "Called when an application command is received." +msgstr "" + +#: ../../api/events.rst:0 +#: 4f354ed77ba74f58a8bfe8f9e4523bc8 +#: 0d3719138c324b9b86dfd4e1f7c983c2 +#: a3d7e20844c140bfae16d8b945ec35b3 +#: a9ebc9dfbb2342c09e6f908ff8b05b61 +#: fb18645345c14733936ee43bac2428ab +#: be24ecbc72b54a3390c05a17b44d15b6 +#: 47834821ad7340b2a0c1b302cf59221a +#: f4f36adbe07941dbb50a3375686a7f96 +#: 69f16d3ebdce40d299735d1b99859fc4 +#: 99b1f8fedb1a4fab9e06d830c354345b +#: fe865df5dd99489498c73d866ac670dc +#: 8ae7a130296f41c286012b115ac400f6 +#: 78efea9536c547dea9bcf4f0fb904c57 +#: a3d69eddf6564725bc67771befc4aeca +#: 96b417dff47e45afba7e2b6cd8b168f6 +#: 8f134176570e4223ac70dfaf54649fd3 +#: f19251d202354981b849ab1942b91951 +#: 17839a738d044231b7bb90c4f01bdc9b +#: 73dad0dff0974575a4f932f888e57e50 +#: d057103729ff4f3b8dbe93fe0bc1262e +#: cf1af74adcc940c6b88151caa220ceb0 +#: 13bb21ffd48c4d37b43cae9d0af4273a +#: 1031328b8ab2414c85e5725dc3c4efbf +#: 450ea7dd8b0742b6a95034bc736a0b26 +#: 349abfcdf56240438f5690772fe0a18d +#: e3455443ac954b88b181ebe074279d1a +#: 847adddbea6a47e4b9b7e13a7f352ad5 +#: a62f5e8fc8174aa7881c7c7803d52529 +#: 9d17e39474da4efb97dc8dba285d4e27 +#: 2047ad9931154d87a4d5f8a7090fd208 +#: d945cfa6fb84406aada47da35d94e1b0 +#: eb2b8d62e3094050ababe6c81875b9a3 +#: 0d00d17e652745278bde98e5a9baac57 +#: 81c162aa46b14ab0a333ed9962606f0a +#: 281495434b004210ae4aaff83990d327 +#: 677c6a863bc24ae1a5ad297c49517cd8 +#: 1678169629ec4355a18db9887c5dbc22 +#: 900882c0284c4bc4a079c467bf577de2 +#: 176ab3d1374941268495018745427ade +#: 60b3d7ac967d4fbaa7ab300016181e83 +#: 78208569a83144aa920b951012b5ce70 +#: b04fccd185f843d1aca16ec4a414e75c +#: 6d7428028f5f4c47a87e228b3382926a +#: e6e388c1d5e74cfcb8a83eb43c1ea8c0 +#: 4aa9dc788bbb4783842e434f794ea2be +#: d5cd6b0856484ad1a5f1be0f36dbca84 +#: 559e63e7918344a8afdb26e8d8af2bae +#: 681f4a0621c84af5b603e302957fca24 +#: 40ac5755dc1642c89e6bc723e5950d7a +#: 9ac90eb414af4d83b9c363cc85e04e26 +#: a88f1812c49f42f1ac7a744c1c840822 +#: d71e0e6a13fe4d9990262d983c4aea4b +#: d4d90a7f98cf4fa785b0c5df1c055240 +#: 9a16c00d4a624d2aa7e42be17f5e9e41 +#: da5228275de345319b40abae16fbe8b7 +#: 962d87d49ce14c0ea1cceabda7c9cc2d +#: 6b62d4d670624d2590578fa265eae9af +#: 4866914077374dcabb7961c78d04b703 +#: 99b97506806e4f40b1382cef723cca78 +#: 0450b87209e04abf999c6d16346f74ad +#: c914a36558cb4bc98abd8de320e5cfc0 +#: a2a4098c99f44db3990a9980266e23aa +#: 72ce7e3d4c314950a9bc3410fd54a91a +#: ab5d8aefc1db4a4c817b5368caa5543e +#: 4ab35ccbcc7a421bba4f7493d8ae96c4 +#: a6c90e28198047819bbc09741d0e820b +#: ca0cd7fa385341149261f81c4cb9db61 +#: 6dab0c0a2e24494ab8395fce18a6640a +#: 80f30be1218d4627ac862062d98f65b9 +#: de18df4128cb43da8ea61b66283e75f2 +#: 5015785657bd461bb6bf2bc0a2125668 +#: 8432d53ccc6b4c218b0be97b5c783d06 +#: 70306a7be41d4b578c334a0619ba1f3c +#: 1938a7564e7f49a4a0c3d07f69097a01 +#: 6d8d97277dc24519b84ce4eddbcf5e6c +#: c41c21d6e6304513afc6ce518472f17b +#: 60839dcce1c248789ade9b533e7911db +#: e9aab89b208b4e639310868813af5a3a +#: 620a42e608284789b3c467b464c96dad +#: ee9815d10d0f4b26aa8a87feed666d51 +#: 69f826f1232a4d53a56d0d5f09d6091a +#: 37ee4bf65332432b844f4c82c96e130f +#: fca243bce7384dd5a65201e550249536 +#: 8f50058a92a84b47a4211733aacacd7e +#: 18ff51c5a3704f5a9fa461a57b8e9b66 +#: 743a2e37a02c4c5fb8f7dd22c8217882 +#: ddbc0fd0c67b4c47b95f888da332497a +#: 13c8a10e7a204b58956db583cfa99493 +#: b71cd393e4bb46869fc9b5aa74556aea +#: 5f9dfeae511c4e658ed3c94bd40b4560 +#: d907a1e1ec6441fda3a2d770dd044ffb +#: 67c06d15edc74df8ac0d765f1893023e +msgid "Parameters" +msgstr "" + +#: ../../api/events.rst:67 +#: 263f3d12d8884506a406695110c94d1d +msgid "The ApplicationContext associated to the command being received." +msgstr "" + +#: ../../api/events.rst:72 +#: 24711ddc6949466a8b86ec45748ae3ce +msgid "Called when an application command is completed, after any checks have finished." +msgstr "" + +#: ../../api/events.rst:76 +#: 2fd180ffd6ff42b3b6e01dbd5969e3e3 +msgid "The ApplicationContext associated to the command that was completed." +msgstr "" + +#: ../../api/events.rst:81 +#: 44821c55ef8945558c1f43451f5cb497 +msgid "Called when an application command has an error." +msgstr "" + +#: ../../api/events.rst:85 +#: c10680f322e14111ac67af055eb489a3 +msgid "The ApplicationContext associated to the command that has an error." +msgstr "" + +#: ../../api/events.rst:88 +#: 5a47fd2e7d014a1d946b87ebc4c84417 +msgid "The DiscordException associated to the error." +msgstr "" + +#: ../../api/events.rst:93 +#: 56a473725976471ea908f69efac826f1 +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "" + +#: ../../api/events.rst:97 +#: c2d326f68bb44a35a20d93fb7c97652c +msgid "The interaction associated to the unknown command." +msgstr "" + +#: ../../api/events.rst:101 +#: 3e1b520c5ed4477ba2feec46353c8793 +msgid "Audit Logs" +msgstr "" + +#: ../../api/events.rst:105 +#: a524eb8a295b41a293f359f7a21b8c96 +msgid "Called when an audit log entry is created." +msgstr "" + +#: ../../api/events.rst:107 +#: ../../api/events.rst:121 +#: 4612cca4e358409f9d68b50876c6eec4 +#: bade2e1e4cf04f0686e4f797a2a839f2 +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "" + +#: ../../api/events.rst:112 +#: d0f5bab6c26a4183877ddb9f443b1f59 +msgid "The audit log entry that was created." +msgstr "" + +#: ../../api/events.rst:117 +#: b58b216d81fb40f89ff0d0650b13b0d8 +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "" + +#: ../../api/events.rst:126 +#: ../../api/events.rst:610 +#: ../../api/events.rst:705 +#: ../../api/events.rst:844 +#: ../../api/events.rst:857 +#: ../../api/events.rst:910 +#: ../../api/events.rst:937 +#: ../../api/events.rst:962 +#: ../../api/events.rst:999 +#: ../../api/events.rst:1031 +#: ../../api/events.rst:1054 +#: ../../api/events.rst:1079 +#: ../../api/events.rst:1134 +#: ../../api/events.rst:1158 +#: ../../api/events.rst:1257 +#: ../../api/events.rst:1284 +#: ../../api/events.rst:1318 +#: 2c7f1cc4edff4bc29e8b8268e06aa93e +#: 6214e4ff9d514cadbf5a0815af3cccaa +#: ac6d84c776ef4acaa1b57da19160c5d3 +#: 940bd659eeb745b2b753faf7238ee8fe +#: 08eb4bec2f2a4837932a221dbd3220c0 +#: b5f3a3acf81442c49df4b0db70f59a29 +#: cebb871f992f4011aea78bd0c12995fb +#: 6b8bd14634da4b118afbfe9e49e3beb1 +#: 023402936a654371aab9f215b6e0c90c +#: 7c6afb134ff248edbef99cd378aeac64 +#: 83f294fe23f6474ba62680e79b9ecfee +#: 776fe87242094fc881ad350436325a2a +#: 61459f05ae5d4e50b742f4e8ea6afe1f +#: 198f9bbae5974dffbe423f6dd1819686 +#: 97da3d1b88d84c68a282dfdb9f98fbb3 +#: 0635e0f24c0e47b894c9c7fec506157a +#: 6bea76946d334a7996bd35f353135667 +msgid "The raw event payload data." +msgstr "" + +#: ../../api/events.rst:130 +#: b73de85e7f7e4357ba1ed52cbf4bc263 +msgid "AutoMod" +msgstr "" + +#: ../../api/events.rst:133 +#: f510e9ca15b248c788d357edd9e88a71 +msgid "Called when an auto moderation rule is created." +msgstr "" + +#: ../../api/events.rst:135 +#: ../../api/events.rst:145 +#: ../../api/events.rst:155 +#: 1f32fe0dcb8a4935b9c14ec7663202cc +#: dea2d065cdf543c3a75fd4a57c6cc529 +#: b5819b508c5c4fed9e2d6b1b346ce769 +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "" + +#: ../../api/events.rst:138 +#: 2228e3b0e30d4bdfb1ef0c9bf8454aed +msgid "The newly created rule." +msgstr "" + +#: ../../api/events.rst:143 +#: b0c3c7be1e57441d9f7ae80a8b9a55fc +msgid "Called when an auto moderation rule is updated." +msgstr "" + +#: ../../api/events.rst:148 +#: bf10f7d992944dd19290c176392c30aa +msgid "The updated rule." +msgstr "" + +#: ../../api/events.rst:153 +#: f53def3a863c481da06c0adeb1c37117 +msgid "Called when an auto moderation rule is deleted." +msgstr "" + +#: ../../api/events.rst:158 +#: b3f4f05cc64c4bccbbe04993d4bf9054 +msgid "The deleted rule." +msgstr "" + +#: ../../api/events.rst:163 +#: c654ed31ecf14465b800fa756f7d8d4a +msgid "Called when an auto moderation action is executed." +msgstr "" + +#: ../../api/events.rst:165 +#: 7d4d74a12a2e459b953516591a5433d6 +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "" + +#: ../../api/events.rst:168 +#: fad72a1374294d369c622bfc37004f69 +msgid "The event's data." +msgstr "" + +#: ../../api/events.rst:172 +#: 23bb7ceedaee4167a40d30b1482c9dbc +msgid "Bans" +msgstr "" + +#: ../../api/events.rst:175 +#: 00b471a8d70f42dfb067cd77f6e4834d +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "" + +#: ../../api/events.rst:177 +#: ../../api/events.rst:190 +#: a3237655fba343fab0543ea041c27da3 +#: 2a2b5a4c85414b78ac6466d1323440c4 +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "" + +#: ../../api/events.rst:179 +#: 9a2729bbfbc344279cb9083860b57c76 +msgid "The guild the user got banned from." +msgstr "" + +#: ../../api/events.rst:181 +#: dc367f856d164ad38e4d0c51eb793ed1 +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "" + +#: ../../api/events.rst:188 +#: 952eeaee77bb47b6b764ab89d1ff9936 +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "" + +#: ../../api/events.rst:192 +#: 6a9b2d3cbc7747de9e9023d4ca96d73c +msgid "The guild the user got unbanned from." +msgstr "" + +#: ../../api/events.rst:194 +#: 04b83197700d451bb5349844eee4504b +msgid "The user that got unbanned." +msgstr "" + +#: ../../api/events.rst:198 +#: 95a2532527e84395b5ccd7d85a10592f +msgid "Channels" +msgstr "" + +#: ../../api/events.rst:201 +#: 3e9c005d8372415f88c61c2cf1192949 +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "" + +#: ../../api/events.rst:203 +#: ../../api/events.rst:789 +#: ../../api/events.rst:812 +#: ../../api/events.rst:829 +#: ../../api/events.rst:842 +#: ../../api/events.rst:855 +#: ../../api/events.rst:882 +#: ../../api/events.rst:908 +#: e55034f9969343d990011bfeb8b17ce5 +#: cb3213b1115949de9bb856d6d491d2ac +#: d97041759bf74fb7a97daf70cfe8bf3f +#: 95ccb54b20fd47e58417710ed5f5eb52 +#: 1082924a78134519a59315c26ab91333 +#: 024d5d91d73a44de83c021d43b5b54e9 +#: 9021e87cdea64927a2681528197df4d5 +#: af5b8c5a72884a83ac69344f157698af +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "" + +#: ../../api/events.rst:205 +#: a8a66b9bc1b04dd193764e55de15f19e +msgid "The updated group channel's old info." +msgstr "" + +#: ../../api/events.rst:207 +#: e63adae3641b4b97b7cdc33325376ca3 +msgid "The updated group channel's new info." +msgstr "" + +#: ../../api/events.rst:212 +#: ed32bc738f7f4ca3b11d34215528496f +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "" + +#: ../../api/events.rst:214 +#: 0f92e9df29834255b4e23938a063029f +msgid "The private channel that had its pins updated." +msgstr "" + +#: ../../api/events.rst:216 +#: ../../api/events.rst:238 +#: 4b02a9bca82b46eb86f2a70126175092 +#: aa84e858b4de4b38aca341540f075801 +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "" + +#: ../../api/events.rst:221 +#: f16c8f36b0484a088c2a9b3827ca81fd +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "" + +#: ../../api/events.rst:223 +#: ../../api/events.rst:234 +#: ../../api/events.rst:248 +#: ../../api/events.rst:456 +#: ../../api/events.rst:475 +#: ../../api/events.rst:489 +#: ../../api/events.rst:503 +#: ../../api/events.rst:512 +#: ../../api/events.rst:553 +#: ../../api/events.rst:1197 +#: ../../api/events.rst:1210 +#: ../../api/events.rst:1223 +#: ../../api/events.rst:1245 +#: ../../api/events.rst:1293 +#: ../../api/events.rst:1314 +#: 3ad5cbd41ddb4c8e847d8f8ac5f8c3e6 +#: f28de120c204470e8efc2483a3ec3ec3 +#: 5d355f08e7f145bc97271086b10d0260 +#: f9ffac6969464760865bea86217e862e +#: 4330cee10810420eae954b7acf917069 +#: 0873cc1fdc914f0fad25fd05b59de54d +#: 701881eeed2b49a0bf24be49460e89d7 +#: 2e278f832d434ef9a4960f7d01cde05e +#: ec0f92796f594f4297ae5903eb0667b8 +#: e12869e76b1849dfb9a5de16e606e9d9 +#: 77ddc91aee8f43b7b3639a94cef10e17 +#: 8b159796a6f349e8aeaf7c5bf5752f37 +#: 45b3e36bf4724062b1bddf760945f9e1 +#: a4a7d77e88f44357be30d5714d93dd1b +#: 213bd7864c0e48eea8da67e27a46dabc +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "" + +#: ../../api/events.rst:225 +#: 582a1772a9a24ec79ebf3380f605b994 +msgid "The updated guild channel's old info." +msgstr "" + +#: ../../api/events.rst:227 +#: 53270a2c896d41459a116b9d2cd5d61e +msgid "The updated guild channel's new info." +msgstr "" + +#: ../../api/events.rst:232 +#: 0518a7cd29724f0ebe14a809ed2eee33 +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "" + +#: ../../api/events.rst:236 +#: 3379c2bd9f27477e92d53e81fdd520fc +msgid "The guild channel that had its pins updated." +msgstr "" + +#: ../../api/events.rst:244 +#: b06ad24834684c0184a8cb62a7aa9496 +msgid "Called whenever a guild channel is deleted or created." +msgstr "" + +#: ../../api/events.rst:246 +#: 0b990a3012ab4d5dbfb2528666dfcc1f +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "" + +#: ../../api/events.rst:250 +#: a3c27d0b0d99451bbd118154b27728bd +msgid "The guild channel that got created or deleted." +msgstr "" + +#: ../../api/events.rst:254 +#: 7d449f79629f4f869b40a77ddef312bf +msgid "Connection" +msgstr "" + +#: ../../api/events.rst:257 +#: 8ec6bd0b3fbe4241bc6d9f75e823c85a +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "" + +#: ../../api/events.rst:263 +#: e631b145bbac440d88cafec5ec87dfd7 +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "" + +#: ../../api/events.rst:266 +#: dbd98ec209834cd6bd83612c55af9005 +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "" + +#: ../../api/events.rst:273 +#: dcf344c481cf4d11b82d8328a439ef32 +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "" + +#: ../../api/events.rst:275 +#: 03c4ccbc021946d29a5619ee2aee1c48 +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "" + +#: ../../api/events.rst:279 +#: 56c524590ae04f93a605d42859d7792b +msgid "The name of the event that raised the exception." +msgstr "" + +#: ../../api/events.rst:282 +#: 98db8715f93f433ab87723623ee23636 +msgid "The positional arguments for the event that raised the exception." +msgstr "" + +#: ../../api/events.rst:284 +#: 8dfd8c3b1dc84c6887b3932f50acd755 +msgid "The keyword arguments for the event that raised the exception." +msgstr "" + +#: ../../api/events.rst:289 +#: bbcc9c4b112d4e61978d8ce326fe6cf6 +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "" + +#: ../../api/events.rst:292 +#: 7f33474ea095415d94437132ace18ac7 +msgid "The warnings on :func:`on_ready` also apply." +msgstr "" + +#: ../../api/events.rst:296 +#: 2ae2df522e6f4a92920a80d034ae77fc +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "" + +#: ../../api/events.rst:301 +#: 91c23633ba4f41888381a63d594f6dae +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "" + +#: ../../api/events.rst:306 +#: e6fd21abf4ce49e089440189e709f0d6 +msgid "The shard ID that has connected." +msgstr "" + +#: ../../api/events.rst:311 +#: b1c968ec91014e3ba661afb388184d24 +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "" + +#: ../../api/events.rst:315 +#: 472cdd40fc634a4d96ca0be9aa3ee420 +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "" + +#: ../../api/events.rst:320 +#: e5534b890e0248a39e20344d3ee4f3b9 +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "" + +#: ../../api/events.rst:325 +#: 8c0f20c9bca7426b958f58f058b07dd2 +msgid "The shard ID that has disconnected." +msgstr "" + +#: ../../api/events.rst:330 +#: 748fed611ee3463d9059c87d4f5c1578 +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "" + +#: ../../api/events.rst:335 +#: b35787ab277f4f29bf403e1fbd863311 +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "" + +#: ../../api/events.rst:342 +#: e35773581ea743969833b125cf56d656 +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "" + +#: ../../api/events.rst:345 +#: 50262162085248069dcd30242d717ed1 +msgid "The shard ID that is ready." +msgstr "" + +#: ../../api/events.rst:350 +#: 753338ce1e254624b225eb476f342105 +msgid "Called when the client has resumed a session." +msgstr "" + +#: ../../api/events.rst:354 +#: 7ee4cd1af0364ade8b0eff1641a252d0 +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "" + +#: ../../api/events.rst:359 +#: bad97e6e55214ecdac9606dfade6aab2 +msgid "The shard ID that has resumed." +msgstr "" + +#: ../../api/events.rst:364 +#: 4c84d72a61734433987266f62f3f9bf2 +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "" + +#: ../../api/events.rst:366 +#: a5e9b00d68b34841aa32b730000c3c6b +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "" + +#: ../../api/events.rst:371 +#: 1ca9ee3aaebb4e9b8ccb1874adf58f48 +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "" + +#: ../../api/events.rst:376 +#: 9b0fbc2b869f4e7d97d634536359b072 +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "" + +#: ../../api/events.rst:380 +#: ../../api/events.rst:399 +#: 147ed7f0a5b94c1dabe80978422d561e +#: 75a209135d484bab8cfa803ad7f61222 +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "" + +#: ../../api/events.rst:383 +#: ../../api/events.rst:402 +#: 36f2db310d89444b98939f42f4b3d12e +#: 945cecef32a94d15a047464c5d430dbe +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "" + +#: ../../api/events.rst:387 +#: e929d8bfe7e540fd8296b711d97e59a8 +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "" + +#: ../../api/events.rst:390 +#: 6afe3ca5ed4b4cda9fe8fd39b449252e +msgid "The message passed in from the WebSocket library." +msgstr "" + +#: ../../api/events.rst:395 +#: dc512765150844c2a3f47b36106e8e8d +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "" + +#: ../../api/events.rst:406 +#: f0c4769fb11e41198c82a7e55644cda2 +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "" + +#: ../../api/events.rst:409 +#: f7e24f8f8760477e9ca0e47c386a918e +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "" + +#: ../../api/events.rst:414 +#: a7d79f8ec9934e6287e9f91b426f9ca3 +msgid "Entitlements" +msgstr "" + +#: ../../api/events.rst:417 +#: c4bda84ba80d4f6b82e53d44e2704b60 +msgid "Called when a user subscribes to an SKU." +msgstr "" + +#: ../../api/events.rst:421 +#: ec2ef743271140fca72f11b8f28b55f2 +msgid "The entitlement that was created as a result of the subscription." +msgstr "" + +#: ../../api/events.rst:426 +#: 072d6e76c4bb492ebf7fc48e64a58def +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "" + +#: ../../api/events.rst:430 +#: 79720b0dadf04f179a625168706790b9 +msgid "The entitlement that was updated." +msgstr "" + +#: ../../api/events.rst:435 +#: 1d13e1996ca641bcb26d6179d19e09e7 +msgid "Called when a user's entitlement is deleted." +msgstr "" + +#: ../../api/events.rst:437 +#: 3b910d98ee1b441498f2613151a00f70 +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "" + +#: ../../api/events.rst:442 +#: bf621f37de124bcbb5cce9859564f2d1 +msgid "This is not called when a user's subscription is cancelled." +msgstr "" + +#: ../../api/events.rst:446 +#: 9dbb179c32b54a398dc87524d5bbaef8 +msgid "The entitlement that was deleted." +msgstr "" + +#: ../../api/events.rst:450 +#: 4dfcfdb6c0064ac3b4f73a5d1c00da93 +msgid "Guilds" +msgstr "" + +#: ../../api/events.rst:453 +#: 20311648994641ae8ff17f72b5da9d99 +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "" + +#: ../../api/events.rst:458 +#: ea6e535b185f4d968990adf6893c7de0 +msgid "The guild that was joined." +msgstr "" + +#: ../../api/events.rst:463 +#: 070a63745b6849fbbeab2bf0a1b4e515 +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "" + +#: ../../api/events.rst:465 +#: 5d6cba70019f45f3ad96f5ec0a2594cc +msgid "This happens through, but not limited to, these circumstances:" +msgstr "" + +#: ../../api/events.rst:467 +#: 51b0d21974c1475a806ed37c3782ff11 +msgid "The client got banned." +msgstr "" + +#: ../../api/events.rst:468 +#: ff9e9e053e6049889fca38347497fb96 +msgid "The client got kicked." +msgstr "" + +#: ../../api/events.rst:469 +#: 1ed4f7c318cb43ce8b62cb081fe6a0b1 +msgid "The client left the guild." +msgstr "" + +#: ../../api/events.rst:470 +#: ec3900333c3f461bb2ad0cc95bc5ef2d +msgid "The client or the guild owner deleted the guild." +msgstr "" + +#: ../../api/events.rst:472 +#: c09fcb5ca235482a9dee894607af5aa1 +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "" + +#: ../../api/events.rst:477 +#: a83039edb3ba4814a286c7e322c10728 +msgid "The guild that got removed." +msgstr "" + +#: ../../api/events.rst:482 +#: 1e90656c38f64056af4b1e544753df18 +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "" + +#: ../../api/events.rst:484 +#: 422f145b8062401c84f76756bb9820e2 +msgid "Changed name" +msgstr "" + +#: ../../api/events.rst:485 +#: cbab865be7764aefa53002b353147cda +msgid "Changed AFK channel" +msgstr "" + +#: ../../api/events.rst:486 +#: deebcf9e947142edbdbcb28d9c54c4a6 +msgid "Changed AFK timeout" +msgstr "" + +#: ../../api/events.rst:487 +#: e5891580f33b405da90cd749c059cb8f +msgid "etc." +msgstr "" + +#: ../../api/events.rst:491 +#: a8cffe8722014b508fe234b456e99add +msgid "The guild prior to being updated." +msgstr "" + +#: ../../api/events.rst:493 +#: 09559bb331d54c818d9456c9e50dccc8 +msgid "The guild after being updated." +msgstr "" + +#: ../../api/events.rst:499 +#: 4926a01720844942bb4fbe2214b41d5d +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "" + +#: ../../api/events.rst:501 +#: 26919d02a3764b4bb306d4b2bb402aac +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "" + +#: ../../api/events.rst:505 +#: 1ff07f75468541b38b5b8945ccec0b63 +msgid "The role that was created or deleted." +msgstr "" + +#: ../../api/events.rst:510 +#: f7dd6519c06844c08e5241b1559491a5 +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "" + +#: ../../api/events.rst:514 +#: f1b5a9b9b024439d9ed75c18e938f390 +msgid "The updated role's old info." +msgstr "" + +#: ../../api/events.rst:516 +#: 1ff66a23bf0d491cb53e831bae382c88 +msgid "The updated role's updated info." +msgstr "" + +#: ../../api/events.rst:521 +#: 8cbae07e47ba4cdebe69ec4076d665f9 +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "" + +#: ../../api/events.rst:523 +#: ../../api/events.rst:536 +#: 7d54c1f8e6e74a72b35f12482d5961b4 +#: f67a33188bb34272a8889e369b01d223 +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "" + +#: ../../api/events.rst:525 +#: 73965f3cab494980aa9dd819ffd29c0b +msgid "The guild who got their emojis updated." +msgstr "" + +#: ../../api/events.rst:527 +#: fe7eb70f2c4a42d88b47e0e0c2137c58 +msgid "A list of emojis before the update." +msgstr "" + +#: ../../api/events.rst:529 +#: 0b5a5ffd3b384bb8b875fd343f7d22a6 +msgid "A list of emojis after the update." +msgstr "" + +#: ../../api/events.rst:534 +#: 7b8bb01b2d34498da90bd94b2c350575 +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "" + +#: ../../api/events.rst:540 +#: 1fae23769a4342888fab8d136a77ec99 +msgid "The guild who got their stickers updated." +msgstr "" + +#: ../../api/events.rst:542 +#: b36c6dcfc18940f9abb2e0f888efff66 +msgid "A list of stickers before the update." +msgstr "" + +#: ../../api/events.rst:544 +#: cd05518a2d924fd68974c2f5ea934b34 +msgid "A list of stickers after the update." +msgstr "" + +#: ../../api/events.rst:550 +#: 3c8f786f39b7401bb26040a54f057dc1 +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "" + +#: ../../api/events.rst:555 +#: c35fb39492e5426aa2d9ea96218afa36 +msgid "The guild that has changed availability." +msgstr "" + +#: ../../api/events.rst:560 +#: 6b348d1a6bcb4fd483811fb2f1f365d5 +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "" + +#: ../../api/events.rst:562 +#: a4440117ae634b6681222e5129783348 +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "" + +#: ../../api/events.rst:564 +#: e31dea0d4cf244af992bdf2f321a7013 +msgid "The channel that had its webhooks updated." +msgstr "" + +#: ../../api/events.rst:568 +#: 4c52e96a47324217a4defdba08ed9919 +msgid "Integrations" +msgstr "" + +#: ../../api/events.rst:571 +#: a6000695a11241f1b80ace12ef5bd409 +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "" + +#: ../../api/events.rst:573 +#: ../../api/events.rst:584 +#: ../../api/events.rst:595 +#: ../../api/events.rst:606 +#: a5ca1990b43345bebb2c1cb83f07bb00 +#: b5b38af536e54fbe8712c1ed8deb7547 +#: c2e1693b47554cf7945399623ff784b2 +#: 737a9cd4e70a4373a753fbdf4dff4b3b +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "" + +#: ../../api/events.rst:577 +#: 7cd3123072c84da0b5786b9c2dceed48 +msgid "The guild that had its integrations updated." +msgstr "" + +#: ../../api/events.rst:582 +#: c09a7f4e3d20488fa04c4baa6e222d0c +msgid "Called when an integration is created." +msgstr "" + +#: ../../api/events.rst:588 +#: ../../api/events.rst:599 +#: 7f9c50d99dd24e9fac1bc3fee804ca53 +#: 060f67ac9b304260a34915be922f68c1 +msgid "The integration that was created." +msgstr "" + +#: ../../api/events.rst:593 +#: 184033097d74474fb4d5a9e187a0eb1b +msgid "Called when an integration is updated." +msgstr "" + +#: ../../api/events.rst:604 +#: da531782f86c4b52b37c365448ee9f07 +msgid "Called when an integration is deleted." +msgstr "" + +#: ../../api/events.rst:614 +#: cfb2b057b0c1472cb4d3eee5331ae7ae +msgid "Interactions" +msgstr "" + +#: ../../api/events.rst:617 +#: 53db6b926a804818a95dc3ff07ce5e99 +msgid "Called when an interaction happened." +msgstr "" + +#: ../../api/events.rst:619 +#: 3ebdd96f98e9443a8d255dc81f17e869 +msgid "This currently happens due to application command invocations or components being used." +msgstr "" + +#: ../../api/events.rst:623 +#: 2689cfaa9dd24275b9870faf19ad2f56 +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "" + +#: ../../api/events.rst:629 +#: 5036e83617bf4ba58f9fcb428bc0680d +msgid "The interaction data." +msgstr "" + +#: ../../api/events.rst:633 +#: 6973c117b78e4a2ebc6825aacb60698c +msgid "Invites" +msgstr "" + +#: ../../api/events.rst:636 +#: ae71ea8985fa469282da5f31bdaf7446 +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "" + +#: ../../api/events.rst:643 +#: ../../api/events.rst:660 +#: 812b6d18d5a946d9bf0784367bb3affd +#: e9c28be70066461abdb827b38b467cff +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "" + +#: ../../api/events.rst:646 +#: ../../api/events.rst:666 +#: 3cf7be58f5b4432ca452bf28c48129e9 +#: 4dd28bae94dc48ccb43ad42ddf3c2eaf +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "" + +#: ../../api/events.rst:648 +#: 088d046716804d73b129d0bf49e473bb +msgid "The invite that was created." +msgstr "" + +#: ../../api/events.rst:653 +#: dab222e69c2c439887152238901a2947 +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "" + +#: ../../api/events.rst:663 +#: 1e05ea8a6a2444f7b38051ea5441c228 +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "" + +#: ../../api/events.rst:668 +#: 2af6321a181640749c67d39cf154ad77 +msgid "The invite that was deleted." +msgstr "" + +#: ../../api/events.rst:672 +#: cc2adb6fe784475a94c0c0e32b9bac4c +msgid "Members/Users" +msgstr "" + +#: ../../api/events.rst:675 +#: 59e3a422d23b4ebe987e2ae3ec18c6dc +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "" + +#: ../../api/events.rst:677 +#: ../../api/events.rst:690 +#: ../../api/events.rst:701 +#: ../../api/events.rst:720 +#: ../../api/events.rst:776 +#: ../../api/events.rst:1267 +#: ../../api/events.rst:1280 +#: 8c500bf67b4947efbccd591b47e807d3 +#: c267ed1dfc214c44b6f071d6284d0d90 +#: 571a0224eed04afca25ceb6fe779b727 +#: b77f2bddd083470aabb9f69a1aa4df63 +#: ac04b1a2a0c4454d82d101ecb00a6bc0 +#: 0608221e23ac498eb93feba2e0df9730 +#: 245dfa13ed9940cb9f9e97069c816268 +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "" + +#: ../../api/events.rst:679 +#: 51b1cf557f3b4b28a31d47b008c958e5 +msgid "The member who joined." +msgstr "" + +#: ../../api/events.rst:684 +#: 4bdb0182507c45c8b03ae52c0d7fe188 +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "" + +#: ../../api/events.rst:686 +#: 659720c167f64e42b9d9d1052d9709a6 +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "" + +#: ../../api/events.rst:692 +#: 3fd5f443082f4f50ab9d14d965e5906c +msgid "The member who left." +msgstr "" + +#: ../../api/events.rst:697 +#: bfd4357c25b649b89eb3bf3b2f0cc0c6 +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "" + +#: ../../api/events.rst:710 +#: 72cf960892384ef2a30c0f88ed9d2050 +msgid "Called when a :class:`Member` updates their profile." +msgstr "" + +#: ../../api/events.rst:712 +#: ../../api/events.rst:731 +#: ../../api/events.rst:769 +#: 9c0d0062f4524f09afc01922b6880478 +#: df7654b2971a4c8cb816e6a4cb412282 +#: 94033025616b4076bd1cd69dbccbce65 +msgid "This is called when one or more of the following things change:" +msgstr "" + +#: ../../api/events.rst:714 +#: 636b715442114d74b10fffcb5ea1f423 +msgid "nickname" +msgstr "" + +#: ../../api/events.rst:715 +#: 72c18648ea0441579e75a0809dda2be0 +msgid "roles" +msgstr "" + +#: ../../api/events.rst:716 +#: 32412ad2806a4c19a0b79bd9de971467 +msgid "pending" +msgstr "" + +#: ../../api/events.rst:717 +#: 23c7215831354f6eaa85e8cfa1a70f3e +msgid "communication_disabled_until" +msgstr "" + +#: ../../api/events.rst:718 +#: dfb5abcb569a43c7acb95e5da9c81b39 +msgid "timed_out" +msgstr "" + +#: ../../api/events.rst:722 +#: ../../api/events.rst:740 +#: 725047654176421eb19576468343096f +#: 3c202860a49f49fe90fce486a871deb3 +msgid "The updated member's old info." +msgstr "" + +#: ../../api/events.rst:724 +#: ../../api/events.rst:742 +#: 4a04609fc50046328661598fbb671487 +#: efbf85ad83644356bf043efa7cd58731 +msgid "The updated member's updated info." +msgstr "" + +#: ../../api/events.rst:729 +#: 1dee8a81bb94444cb7bc2ddf2fab5117 +msgid "Called when a :class:`Member` updates their presence." +msgstr "" + +#: ../../api/events.rst:733 +#: 1a275606817640eb8e06ee192f0f607b +msgid "status" +msgstr "" + +#: ../../api/events.rst:734 +#: 9f977430a74e4863afee82b21fcbf311 +msgid "activity" +msgstr "" + +#: ../../api/events.rst:736 +#: 765cb25bca1e473d8f12775b7c880b4f +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "" + +#: ../../api/events.rst:747 +#: a4a83d5acfa848f298585ef71e363a26 +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "" + +#: ../../api/events.rst:749 +#: ../../api/events.rst:1177 +#: 0c77a95ffd774442b4de3a3305b391f4 +#: 79633923465b40b68645223137732d3e +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "" + +#: ../../api/events.rst:751 +#: 2bdb0897344a4989a02198ce2b493750 +msgid "A member joins a voice or stage channel." +msgstr "" + +#: ../../api/events.rst:752 +#: a2d0ec0a66f44b798dbfdf16e54cf5f4 +msgid "A member leaves a voice or stage channel." +msgstr "" + +#: ../../api/events.rst:753 +#: 906d40a6e6c54fa48a691ea0742aefcd +msgid "A member is muted or deafened by their own accord." +msgstr "" + +#: ../../api/events.rst:754 +#: bae40f0b39be405a95122a36592e4a53 +msgid "A member is muted or deafened by a guild administrator." +msgstr "" + +#: ../../api/events.rst:756 +#: 1c7f2baeafaf4301bfd220ebeb3936ea +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "" + +#: ../../api/events.rst:758 +#: 0da0ec4c5bc04aaab41c2ad70e357a81 +msgid "The member whose voice states changed." +msgstr "" + +#: ../../api/events.rst:760 +#: 3b6875267fcb48fea947ebbc069ac8e3 +msgid "The voice state prior to the changes." +msgstr "" + +#: ../../api/events.rst:762 +#: 88099f60004742219109afd6e44eadff +msgid "The voice state after the changes." +msgstr "" + +#: ../../api/events.rst:767 +#: 525d8057d8ac440b9f12215a99861567 +msgid "Called when a :class:`User` updates their profile." +msgstr "" + +#: ../../api/events.rst:771 +#: f8f87a7c98ed4b2f928b30556b4fa7b7 +msgid "avatar" +msgstr "" + +#: ../../api/events.rst:772 +#: 599d96b1a33b4f199c8d33b53feb03be +msgid "username" +msgstr "" + +#: ../../api/events.rst:773 +#: e0ee257c4fb84b0d9c81e54f1137853d +msgid "discriminator" +msgstr "" + +#: ../../api/events.rst:774 +#: 32ad7813f11149efa7fa506c96845ed4 +msgid "global_name" +msgstr "" + +#: ../../api/events.rst:778 +#: b7fa74d14bdc43d68246734145009b99 +msgid "The updated user's old info." +msgstr "" + +#: ../../api/events.rst:780 +#: 9ba6bc5b6bbb4eaea29046092573c451 +msgid "The updated user's updated info." +msgstr "" + +#: ../../api/events.rst:784 +#: 7abff70b9dca4670aa6d4733ba79f565 +msgid "Messages" +msgstr "" + +#: ../../api/events.rst:787 +#: 82baa07e4f7c4be7b944e0382240ef7e +msgid "Called when a :class:`Message` is created and sent." +msgstr "" + +#: ../../api/events.rst:793 +#: e221d3668fa64676b963ba741fcd5174 +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "" + +#: ../../api/events.rst:799 +#: 192f3d3b79e047c4b51ec51f981e33b7 +msgid "The current message." +msgstr "" + +#: ../../api/events.rst:804 +#: 7b25830b67764d73a3031060cc579689 +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "" + +#: ../../api/events.rst:809 +#: ad4a7fb8f74444bb8d146c990732bb91 +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "" + +#: ../../api/events.rst:814 +#: a428153671394c76966c2a2f9024abcf +msgid "The deleted message." +msgstr "" + +#: ../../api/events.rst:819 +#: 095b22a1f2f24220ac745a7a4fdc391c +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "" + +#: ../../api/events.rst:826 +#: 26e2709b7f5540ec85c1bb0c0a606eb3 +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "" + +#: ../../api/events.rst:831 +#: 9ce00566593447c492ca1278f8511426 +msgid "The messages that have been deleted." +msgstr "" + +#: ../../api/events.rst:836 +#: 10a8f337e50f4b8d898d4a2a2d6d795e +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "" + +#: ../../api/events.rst:839 +#: acf2103910fa49ef84cc4b32ec70ca78 +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "" + +#: ../../api/events.rst:849 +#: 2bd4db8e59954989bcbf5cb1e022bff5 +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "" + +#: ../../api/events.rst:852 +#: 5852b5d52c9e40adbf768b1102728e63 +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "" + +#: ../../api/events.rst:862 +#: bf594df6bb134ca5ac6e7b608cd5b09e +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "" + +#: ../../api/events.rst:867 +#: 2824fa05ca1a4c06892fcc7588ddd6d8 +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "" + +#: ../../api/events.rst:870 +#: 9335cc2da527455584f33d3799b39d7d +msgid "The following non-exhaustive cases trigger this event:" +msgstr "" + +#: ../../api/events.rst:872 +#: 53861c9cc0f64565af31bcc8356d1596 +msgid "A message has been pinned or unpinned." +msgstr "" + +#: ../../api/events.rst:873 +#: 308d8ed1000e42cf94bd6253c7eee766 +msgid "The message content has been changed." +msgstr "" + +#: ../../api/events.rst:874 +#: 066a5520d3c14022b153532fb10de9ca +msgid "The message has received an embed." +msgstr "" + +#: ../../api/events.rst:876 +#: 0af62deae9b743988d34523a50c3d13a +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "" + +#: ../../api/events.rst:878 +#: b0864434abef4d4f9c3b7fb53099a72e +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "" + +#: ../../api/events.rst:879 +#: 0f327a0f417a439eab5204a3f58142bb +msgid "A call message has received an update to its participants or ending time." +msgstr "" + +#: ../../api/events.rst:880 +#: 497e563c063242e7b911450f5531d398 +msgid "A poll has ended and the results have been finalized." +msgstr "" + +#: ../../api/events.rst:884 +#: d43cb6b0601a480684fa45bddbf78ded +msgid "The previous version of the message." +msgstr "" + +#: ../../api/events.rst:886 +#: 7a7d3bc5be514a42acadd0236c90968a +msgid "The current version of the message." +msgstr "" + +#: ../../api/events.rst:891 +#: dd5375656537461f878930425fd44d9e +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "" + +#: ../../api/events.rst:894 +#: acb34759c383410297e89a9ab9014412 +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "" + +#: ../../api/events.rst:900 +#: ae06f1f32c284364a9fcc8766cd567cc +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "" + +#: ../../api/events.rst:903 +#: 7c877ddff3c948babea4b56c5855c106 +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "" + +#: ../../api/events.rst:914 +#: 407e56cbd8894cc7bfead844affa902e +msgid "Polls" +msgstr "" + +#: ../../api/events.rst:917 +#: a9b8e9767e884d369172fb6ab1841177 +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "" + +#: ../../api/events.rst:921 +#: ../../api/events.rst:935 +#: ../../api/events.rst:946 +#: ../../api/events.rst:960 +#: cf97ca5ad27a4e5fbbe4f583cc89dc60 +#: 91c503e67e4742a392a6f3e5e71708ec +#: e8a3023c3c93418e9c82cb67372f1bf7 +#: b162b13f9b5b4acd8b928cdf76d398af +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "" + +#: ../../api/events.rst:923 +#: ../../api/events.rst:948 +#: 258ead003f2243f494b187adccae34fa +#: ff747bd5556c4a8d9167ea03a335f344 +msgid "The current state of the poll." +msgstr "" + +#: ../../api/events.rst:925 +#: 57e5c2cd8fde48a285c0585219a834ef +msgid "The user who added the vote." +msgstr "" + +#: ../../api/events.rst:927 +#: ../../api/events.rst:952 +#: 90a34ed5976846189bfc2190e990abdf +#: b9bc568e4f2143f2b176e85afef48e8e +msgid "The answer that was voted." +msgstr "" + +#: ../../api/events.rst:932 +#: ee4f3182cf624af0b171db60500aa13a +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "" + +#: ../../api/events.rst:942 +#: 8d2b824eaf98481c961139a209dd3b16 +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "" + +#: ../../api/events.rst:950 +#: 5f583e96e69c4434b86aa5855a38a645 +msgid "The user who removed the vote." +msgstr "" + +#: ../../api/events.rst:957 +#: 5679d90e3b9043f8824042c0a86c634b +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "" + +#: ../../api/events.rst:966 +#: 1e6beea08c6545e1956f072b67cf94c0 +msgid "Reactions" +msgstr "" + +#: ../../api/events.rst:969 +#: 2259c8a34d124723a84253786909f8d4 +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "" + +#: ../../api/events.rst:975 +#: 0c4a10e8c65043cb8ad5b2aa8740c0f9 +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "" + +#: ../../api/events.rst:977 +#: ../../api/events.rst:997 +#: ../../api/events.rst:1029 +#: ../../api/events.rst:1040 +#: ../../api/events.rst:1052 +#: ../../api/events.rst:1063 +#: ../../api/events.rst:1075 +#: d254e7018b894d5da0d9ab3310487581 +#: 3ae12ea3aa9e49c29f89238dd55ad89d +#: e903959ba860442bacb9dbb7455787a1 +#: 8b747aaeeaa54dbaa2bb43a1cacfb4a4 +#: 05cf2a3105064224935b6fc52c104a8b +#: dcf7eda8ed0e407aaabc8a42264dd252 +#: 71824a77e84c432daeeb45c809a4cf3d +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "" + +#: ../../api/events.rst:981 +#: ba7506ec538a430493d6a2010d86c710 +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "" + +#: ../../api/events.rst:987 +#: ../../api/events.rst:1019 +#: 367f92343bc64207970e6a72c687716d +#: 09d780eee4834c02bccf9c957d6a8cf6 +msgid "The current state of the reaction." +msgstr "" + +#: ../../api/events.rst:989 +#: ../../api/events.rst:1021 +#: b19a600ee7604f58ae7c7dae8826a694 +#: 6e25ca528d3649428e675864d9383bf7 +msgid "The user who added the reaction." +msgstr "" + +#: ../../api/events.rst:994 +#: c55e19feffcb41368d0fc845e8ae8880 +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "" + +#: ../../api/events.rst:1004 +#: fc5f26cb8154484282163f3be1d72ecb +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "" + +#: ../../api/events.rst:1010 +#: 602b41b73b974da69daf8f4af20d682b +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "" + +#: ../../api/events.rst:1012 +#: f0e3d9f9640149579db72c4d79b4b9b7 +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "" + +#: ../../api/events.rst:1016 +#: 3e9d3eacd60d4aa38b1c604cfbc3af0c +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "" + +#: ../../api/events.rst:1026 +#: adb3323cef574cb280e6fcadbcd9d1cf +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "" + +#: ../../api/events.rst:1036 +#: 9487bf16e1d148c6918cc08f09685396 +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "" + +#: ../../api/events.rst:1042 +#: 957dda2d335345a6a9873f634958c021 +msgid "The message that had its reactions cleared." +msgstr "" + +#: ../../api/events.rst:1044 +#: 07322cdc6b664f13af8dca1e2b91081b +msgid "The reactions that were removed." +msgstr "" + +#: ../../api/events.rst:1049 +#: 0e10554d194944c49499801e107242a0 +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "" + +#: ../../api/events.rst:1059 +#: a2e41cfa30e1418aa393c0cf0d1858f8 +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "" + +#: ../../api/events.rst:1067 +#: dfa4f0b46a1048fb9196d4cab53e7e96 +msgid "The reaction that got cleared." +msgstr "" + +#: ../../api/events.rst:1072 +#: fa250169bf22484892b7b04838eb6a62 +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "" + +#: ../../api/events.rst:1083 +#: 35ea4a4f51b14096be194c1b45b9980e +msgid "Scheduled Events" +msgstr "" + +#: ../../api/events.rst:1086 +#: 92289345aa99456e8fccb0d2bedcc037 +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "" + +#: ../../api/events.rst:1088 +#: ../../api/events.rst:1097 +#: ../../api/events.rst:1108 +#: ../../api/events.rst:1119 +#: ../../api/events.rst:1132 +#: ../../api/events.rst:1143 +#: ../../api/events.rst:1156 +#: 397fd90fe30649a59c540215efdd33f2 +#: 9262461979874e4ba80b732bd9128414 +#: 2fd67e22f8f24a24a4f09f34a9e9d221 +#: d1665efce5a24edea7b9f156c11971dc +#: f1a230d4368d427a8aa0254e2144a131 +#: 5d2d9f01bc57458b94256b5aaae996bc +#: e0576265fd4140f3a91040bbb9245078 +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "" + +#: ../../api/events.rst:1090 +#: df55f40708a14557bca10e280cadffcd +msgid "The newly created scheduled event." +msgstr "" + +#: ../../api/events.rst:1095 +#: 3003cf8ca0d9419d9d22b0f170953af8 +msgid "Called when a scheduled event is updated." +msgstr "" + +#: ../../api/events.rst:1099 +#: f4adbcfb52fd47f483e7dcff7ef80d89 +msgid "The old scheduled event." +msgstr "" + +#: ../../api/events.rst:1101 +#: dd0e692f4c5a4846b85c3503724118c9 +msgid "The updated scheduled event." +msgstr "" + +#: ../../api/events.rst:1106 +#: a5186e52c5b5474589a4e4fce901f851 +msgid "Called when a scheduled event is deleted." +msgstr "" + +#: ../../api/events.rst:1110 +#: 30ee4a060f724db18a7e1b6d5dae9c6f +msgid "The deleted scheduled event." +msgstr "" + +#: ../../api/events.rst:1115 +#: fabb729a4b424d468699c4b45e7f928c +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "" + +#: ../../api/events.rst:1121 +#: 65b1bb809e964351ab01b21f5d03bce1 +msgid "The scheduled event subscribed to." +msgstr "" + +#: ../../api/events.rst:1123 +#: 1d1f095f702e4d1cba2e0300dfb1d7cd +msgid "The member who subscribed." +msgstr "" + +#: ../../api/events.rst:1128 +#: 0e3eb0e978f147ee8ac9f2ad8b364954 +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "" + +#: ../../api/events.rst:1139 +#: 009d57aba14a48edb7352ac0171cad61 +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "" + +#: ../../api/events.rst:1145 +#: 7fa34a768768480d8411a6b67d092bf9 +msgid "The scheduled event unsubscribed from." +msgstr "" + +#: ../../api/events.rst:1147 +#: ca841d99fac740dc81c93bccf1047b92 +msgid "The member who unsubscribed." +msgstr "" + +#: ../../api/events.rst:1152 +#: 42dbcfa7372c454aa0641aba41689b96 +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "" + +#: ../../api/events.rst:1162 +#: fdab4d3cb6594493937e482cf6f3a3cd +msgid "Stage Instances" +msgstr "" + +#: ../../api/events.rst:1166 +#: 5e4de8c9a02d40568f53b22e2928b78b +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "" + +#: ../../api/events.rst:1170 +#: 4362791ab4114db28b8dd19f7ef7ef07 +msgid "The stage instance that was created or deleted." +msgstr "" + +#: ../../api/events.rst:1175 +#: 885999ae3cce4971a022991fe5ae4fcd +msgid "Called when a :class:`StageInstance` is updated." +msgstr "" + +#: ../../api/events.rst:1179 +#: cf4fabc871504d3c8c5ef7cf2452c119 +msgid "The topic is changed." +msgstr "" + +#: ../../api/events.rst:1180 +#: 6f32d000266b4d3480e3e484435b15a8 +msgid "The privacy level is changed." +msgstr "" + +#: ../../api/events.rst:1184 +#: 0330580b863a4796b086995635979c2c +msgid "The stage instance before the update." +msgstr "" + +#: ../../api/events.rst:1186 +#: e2d1b23c3728472291d4c10ad1e01549 +msgid "The stage instance after the update." +msgstr "" + +#: ../../api/events.rst:1190 +#: 17f76be0c525474bb937f182666eecd1 +msgid "Threads" +msgstr "" + +#: ../../api/events.rst:1193 +#: 5b3f3d40701149f19d64a98a31e8adc5 +msgid "Called whenever a thread is joined." +msgstr "" + +#: ../../api/events.rst:1195 +#: ../../api/events.rst:1208 +#: ../../api/events.rst:1221 +#: ../../api/events.rst:1243 +#: 423b8f3188c34015b3769ffa0fcab9ca +#: aa7a8ccefad941ce85f2f7bcfb056245 +#: 2a9ac789aa754c35880a62d90d5b91cf +#: 61dce03189704726b094d79abe9d639f +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "" + +#: ../../api/events.rst:1201 +#: 5ec02873673f4719852827e4a4fc1fd5 +msgid "The thread that got joined." +msgstr "" + +#: ../../api/events.rst:1206 +#: 59bfa1563ad747e98d7057340d442f09 +msgid "Called whenever a thread is created." +msgstr "" + +#: ../../api/events.rst:1214 +#: dfb084bf5ccd42c29d6b55512463bf9f +msgid "The thread that got created." +msgstr "" + +#: ../../api/events.rst:1219 +#: 8c4ff18149944315a69630439fd143b6 +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "" + +#: ../../api/events.rst:1227 +#: e603d6dd1e314cbcbd72c972a610957c +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "" + +#: ../../api/events.rst:1234 +#: 22b7be80106949e8ac757cfca635aa77 +msgid "The thread that got removed." +msgstr "" + +#: ../../api/events.rst:1239 +#: 31254204062147f58ec2e17d16079cd6 +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "" + +#: ../../api/events.rst:1249 +#: c836cd8213994a84b0e2a036731f5f51 +msgid "The thread that got deleted." +msgstr "" + +#: ../../api/events.rst:1254 +#: bca48653dfbd43498473f0a6031eb84b +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "" + +#: ../../api/events.rst:1263 +#: 7a457e60855f40f1a930b8e3039c0c99 +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "" + +#: ../../api/events.rst:1265 +#: 258b46c075964405929ecf4a53efca46 +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "" + +#: ../../api/events.rst:1271 +#: 3768dbfed1414b8bbc6b887601538d2d +msgid "The member who joined or left." +msgstr "" + +#: ../../api/events.rst:1277 +#: 5db932fbff93400397baddb4e85e642d +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "" + +#: ../../api/events.rst:1291 +#: ../../api/events.rst:1309 +#: 0b546f8438b44009bacd6b97af0d4b28 +#: f4fb02cac22b4700aded6cad53c12eb7 +msgid "Called whenever a thread is updated." +msgstr "" + +#: ../../api/events.rst:1295 +#: 0df795db76f04dcaa3d951202f9797f4 +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "" + +#: ../../api/events.rst:1301 +#: 73530b47c0c14ea596341620dbb70d97 +msgid "The updated thread's old info." +msgstr "" + +#: ../../api/events.rst:1303 +#: e4ad496582ca4ac58d49cb868450344f +msgid "The updated thread's new info." +msgstr "" + +#: ../../api/events.rst:1311 +#: 21b1f36456ed41fcb1da52570c551b1a +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "" + +#: ../../api/events.rst:1322 +#: 1060458a9a7a4da09c743728271e7d05 +msgid "Typing" +msgstr "" + +#: ../../api/events.rst:1325 +#: 36ddd6002ec044c082db85e340ffd365 +msgid "Called when someone begins typing a message." +msgstr "" + +#: ../../api/events.rst:1327 +#: d7bdd9fa230e405d81dbef6cd1a0d7e6 +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "" + +#: ../../api/events.rst:1331 +#: 1bcac394435946fdac38181633fad1cb +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "" + +#: ../../api/events.rst:1334 +#: ../../api/events.rst:1351 +#: f4c7ce967027460c941934be2c781d19 +#: 4c2cab82fe0d4d7d9bb9226ebd0f9ba1 +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "" + +#: ../../api/events.rst:1336 +#: 6bd9c433daea4c2e8516e44a45101692 +msgid "The location where the typing originated from." +msgstr "" + +#: ../../api/events.rst:1338 +#: f0f1ef599c534a958cf8278f9d26283d +msgid "The user that started typing." +msgstr "" + +#: ../../api/events.rst:1340 +#: 3f0964e9777347c394ba677711de264d +msgid "When the typing started as an aware datetime in UTC." +msgstr "" + +#: ../../api/events.rst:1345 +#: 022f547d6ee849aa9405bdbea72c23b1 +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "" + +#: ../../api/events.rst:1348 +#: a2234f0918c24dadbdf649c1a93e3e57 +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "" + +#: ../../api/events.rst:1353 +#: dadfbe18822e4f56a787d7eee475f016 +msgid "The raw typing payload." +msgstr "" + +#: ../../api/events.rst:1358 +#: 72cc8acd59874ea7a93625ae002a2026 +msgid "Voice Channel Status Update" +msgstr "" + +#: ../../api/events.rst:1361 +#: faf876de35744e14972adcc55c9f6413 +msgid "Called when someone updates a voice channel status." +msgstr "" + +#: ../../api/events.rst:1365 +#: c82e605cb0a14ccfba06f997667f1f06 +msgid "The channel where the voice channel status update originated from." +msgstr "" + +#: ../../api/events.rst:1367 +#: 17c48469e42a4a4ba626198df396e32d +msgid "The old voice channel status." +msgstr "" + +#: ../../api/events.rst:1369 +#: cada34ee29ff4e7eb0d6d6c47797ec4d +msgid "The new voice channel status." +msgstr "" + +#: ../../api/events.rst:1374 +#: 52dd6b5033a0412b9bba7a8a156f8e4f +msgid "Called when someone updates a voice channels status." +msgstr "" + +#: ../../api/events.rst:1378 +#: 1bb0b4ef346543ad92c14dd99a025211 +msgid "The raw voice channel status update payload." +msgstr "" diff --git a/docs/build/locales/api/exceptions.pot b/docs/build/locales/api/exceptions.pot new file mode 100644 index 0000000000..e36341bdf4 --- /dev/null +++ b/docs/build/locales/api/exceptions.pot @@ -0,0 +1,621 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/exceptions.rst:4 +#: 905c88850259467092e1b8e338f90565 +msgid "Exceptions" +msgstr "" + +#: ../../api/exceptions.rst:7 +#: 53e7e8d0686b48dcb95509c92b7a7b84 +msgid "Exception Hierarchy" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ApplicationCommandInvokeError:10 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionFailed:16 +#: ../../api/exceptions.rst:11 +#: 889371d042124d10a698ad8826c671c4 +#: 47b569e25f35402db0c5bb4132894053 +#: c335ab33962a47c78ca52d33e998481f +msgid ":exc:`Exception`" +msgstr "" + +#: ../../api/exceptions.rst:12 +#: dd81b2c40c4443f1994d19146092117c +msgid ":exc:`DiscordException`" +msgstr "" + +#: ../../api/exceptions.rst:13 +#: 35e1705ec8384fe586c477bfb995fe1f +msgid ":exc:`ClientException`" +msgstr "" + +#: ../../api/exceptions.rst:14 +#: dfedaace178b4b04884f50be480617c9 +msgid ":exc:`InvalidData`" +msgstr "" + +#: ../../api/exceptions.rst:15 +#: c27d0bb098a447428a284ca5d023c57d +msgid ":exc:`InvalidArgument`" +msgstr "" + +#: ../../api/exceptions.rst:16 +#: 51774789129f449cb560ddcfaa9a803f +msgid ":exc:`LoginFailure`" +msgstr "" + +#: ../../api/exceptions.rst:17 +#: 3afa22c5daa04e60b127c44ec5d07180 +msgid ":exc:`ConnectionClosed`" +msgstr "" + +#: ../../api/exceptions.rst:18 +#: 4d88732f5db34d53b20962e8afa25a46 +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr "" + +#: ../../api/exceptions.rst:19 +#: 3e7d901618d546ca925a8ecd3cf9d136 +msgid ":exc:`InteractionResponded`" +msgstr "" + +#: ../../api/exceptions.rst:20 +#: c6fa2936034d4731ab1aeaa4b614ff42 +msgid ":exc:`NoMoreItems`" +msgstr "" + +#: ../../api/exceptions.rst:21 +#: ea3b24d6eef44faa8ef8ec9249070490 +msgid ":exc:`GatewayNotFound`" +msgstr "" + +#: ../../api/exceptions.rst:22 +#: 532d3c95695d4d6fa4e0473791f4a4f7 +msgid ":exc:`HTTPException`" +msgstr "" + +#: ../../api/exceptions.rst:23 +#: 9eebfbbe60bb4106a3b639f6f45ad07c +msgid ":exc:`Forbidden`" +msgstr "" + +#: ../../api/exceptions.rst:24 +#: 1bde5328566b4e7fab1aae599ee1a565 +msgid ":exc:`NotFound`" +msgstr "" + +#: ../../api/exceptions.rst:25 +#: 0a58a73846bc4a18941aa971d078364b +msgid ":exc:`DiscordServerError`" +msgstr "" + +#: ../../api/exceptions.rst:26 +#: f29304804655430dad81c3d59e546a63 +msgid ":exc:`ApplicationCommandError`" +msgstr "" + +#: ../../api/exceptions.rst:27 +#: b37502c50f0843ae943c87c7dd67d5b6 +msgid ":exc:`CheckFailure`" +msgstr "" + +#: ../../api/exceptions.rst:28 +#: 0cce9f5fbcb74b468b1486d842bc37ce +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr "" + +#: ../../api/exceptions.rst:29 +#: c0bc52a0a7354ea6949487633ceab22c +msgid ":exc:`ExtensionError`" +msgstr "" + +#: ../../api/exceptions.rst:30 +#: 8398035b6616440587f4fd9c558f9e1a +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr "" + +#: ../../api/exceptions.rst:31 +#: 1895dc7629c543ff9faff1a0910e9f71 +msgid ":exc:`ExtensionNotLoaded`" +msgstr "" + +#: ../../api/exceptions.rst:32 +#: 228943094df54f5e85488f9097fbf719 +msgid ":exc:`NoEntryPointError`" +msgstr "" + +#: ../../api/exceptions.rst:33 +#: cf4495b523474d45bfc0b6dd6d5c12ec +msgid ":exc:`ExtensionFailed`" +msgstr "" + +#: ../../api/exceptions.rst:34 +#: 49d4a6cc59664a2e8343d03b2aec0c6e +msgid ":exc:`ExtensionNotFound`" +msgstr "" + +#: ../../api/exceptions.rst:35 +#: 58a32d7c9bea4910a40a79acc301f307 +msgid ":exc:`sinks.SinkException`" +msgstr "" + +#: ../../api/exceptions.rst:36 +#: ecc415221b5d43c88a9b019f81916dea +msgid ":exc:`sinks.RecordingException`" +msgstr "" + +#: ../../api/exceptions.rst:37 +#: 6cb46421436a4f5da41d5ce4f96b8b72 +msgid ":exc:`sinks.WaveSinkError`" +msgstr "" + +#: ../../api/exceptions.rst:38 +#: 38041836606a4fcfba3572a7c0daf8c7 +msgid ":exc:`sinks.MP3SinkError`" +msgstr "" + +#: ../../api/exceptions.rst:39 +#: 2db35433e3264ecf98330cb7705502ff +msgid ":exc:`sinks.MP4SinkError`" +msgstr "" + +#: ../../api/exceptions.rst:40 +#: ba5662ba422a4369b2b8f1f665378896 +msgid ":exc:`sinks.M4ASinkError`" +msgstr "" + +#: ../../api/exceptions.rst:41 +#: f5c7a61d892d40ec91dd9f022d327953 +msgid ":exc:`sinks.MKVSinkError`" +msgstr "" + +#: ../../api/exceptions.rst:42 +#: 1989e76c0f0d4288b8d71f7553a64c97 +msgid ":exc:`sinks.MKASinkError`" +msgstr "" + +#: ../../api/exceptions.rst:43 +#: 4d93b42667a445899b60eece4adce2c2 +msgid ":exc:`sinks.OGGSinkError`" +msgstr "" + +#: ../../api/exceptions.rst:46 +#: 0a8986c1f9fe4880bb2c64822a11ab4f +msgid "Objects" +msgstr "" + +#: ../../api/exceptions.rst:48 +#: 7aa7998b08df4af68c8ace342caa93b5 +msgid "The following exceptions are thrown by the library." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.DiscordException:1 +#: 7a440737679a426fa7a7c89f2a31db07 +msgid "Base exception class for pycord" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.DiscordException:3 +#: c63dd0e386964ccfb2ed6fd3a6be053d +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ClientException:1 +#: 022cc7b12b61404d95709c9876f0e517 +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ClientException:3 +#: 72e32d92abb148ce85ccfff0a1d1ada7 +msgid "These are usually for exceptions that happened due to user input." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.LoginFailure:1 +#: 35b288843d43407289c000fe32985e83 +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.NoMoreItems:1 +#: e8c7fa94b9074f5685b8ff305095e230 +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:1 +#: 79d0ec5004a64282934d619362c00adc +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:5 +#: 5cea3ad7edfc46f98cc3d3639fe2c58a +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ApplicationCommandInvokeError:0 +#: ../../../discord/errors.py:docstring of discord.errors.ConnectionClosed:0 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionError:0 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionFailed:0 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionNotFound:0 +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:0 +#: ../../../discord/errors.py:docstring of discord.errors.InteractionResponded:0 +#: ../../../discord/errors.py:docstring of discord.errors.PrivilegedIntentsRequired:0 +#: ../../../discord/opus.py:docstring of discord.opus.OpusError:0 +#: ad6ceaf381c244c196eaa9e2c5c54f62 +#: d516381deef64c62a01e612de0485c15 +#: 36fe0b953f674793b8dd415161dc94f7 +#: 9e1201a1fc2546dc917e8cc272c39dbb +#: b222bcaab3384a428d9f3869d7c49166 +#: 5d3bb39d794c4babb6473ae2943d4ae3 +#: eaaa700780244b3ab76d45ff50c8fa38 +#: fcbe8c71151e4e77b1c0bbb59f3df1c4 +#: 00aed8628a2c4432af93e9fc483154aa +#: 8549f4429cce4661a795fb271ca15397 +#: 10825f2b28304b7aa76626de12eabd04 +#: de1455fa8690404684e1dea43f6ffeb4 +#: 6b22000658564039b294a02bf2e6978a +#: 7ec2e0f0129b42fda6b30c5c761c88c3 +#: 9474bf04f702459f93552f7909337706 +msgid "type" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:9 +#: b9be9bcf60594106b05151c479fcbb62 +msgid ":class:`aiohttp.ClientResponse`" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:13 +#: 4cd8b7f4c80243608b629e05a0b82093 +msgid "The text of the error. Could be an empty string." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ConnectionClosed:14 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionError:9 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionFailed:9 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionNotFound:12 +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:15 +#: 130c6752e7eb41e7943175215cfc448d +#: 765da4906ff94393ad18c1d66850c3b8 +#: 4a69a70e867e4a23a84ef67491a86a84 +#: 467be59d59894b21a4b6c9c2f2aa5ef9 +#: 8f37cdfd7fb2410895855b1ab1cb10ac +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:19 +#: b77d580f0e7840b5971d4135181ac6f4 +msgid "The status code of the HTTP request." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ConnectionClosed:8 +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:21 +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:27 +#: ../../../discord/opus.py:docstring of discord.opus.OpusError:7 +#: 3c18707e0ee841358f3dd424085d1b30 +#: 46b36037252e4cb0be7044ee26eec116 +#: 862454a4c48f4cebb4f3836d9f02381d +#: 12f947d587da438ea01b9101da0a9497 +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.HTTPException:25 +#: 2ed3cec390ee4551b59099fdde2a8dcd +msgid "The Discord specific error code for the failure." +msgstr "" + +#: ../../api/exceptions.rst:0 +#: 07ff437c106b4199ab1b15405361a8de +#: 477f7375a778484c8d34a844717b3aad +#: c9c817fae24b4e3da05a33a666ae0be5 +#: 61beddc1a3fd4da4ac0427c7f0747e06 +#: 52102f458d044481b865bebfa84bf489 +#: 36f2eab9bb524eecb4ce1aba97bc42c7 +#: 01ee9ba2deb744d7b92451a931529aa1 +#: 40eab0def975438badd887750af77f0b +#: ed0e9e2b68c04c76b794fc6e8e472c81 +#: 6de9bb08e23a417ca3708e32c93af240 +#: 80abf15e5074477e8f43380ebd8e2eb5 +#: 2492bdfb6bbc4d13ae0d8ea01b564017 +#: 771beee3311e448086db629aee6c4070 +#: 4b046040948c49c289a15ac2a5537311 +#: 4a1d7c3c1e934702ab6f71ca0c36450f +msgid "Parameters" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.Forbidden:1 +#: 67a7c71de0a1470dbabcc5de48d5aee9 +msgid "Exception that's raised for when status code 403 occurs." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.Forbidden:3 +#: ../../../discord/errors.py:docstring of discord.errors.NotFound:3 +#: 09342b5d6dc549dfbc16c2ce0935932c +#: d149e85486744382a40735339e24667b +msgid "Subclass of :exc:`HTTPException`" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.NotFound:1 +#: 25d70cb14b8640ef94180870b2575e45 +msgid "Exception that's raised for when status code 404 occurs." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.DiscordServerError:1 +#: 51a32935531241329221c1e89e97ff41 +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.DiscordServerError:3 +#: 4b503b2ec1944eca98de74a200c2c179 +msgid "Subclass of :exc:`HTTPException`." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.InvalidData:1 +#: 6b581300399849dd9c96910c90a8d543 +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.InvalidArgument:1 +#: aaa3f0a0a8be409594bf857e3ca59802 +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.InvalidArgument:4 +#: a4a8722ecbdb4fbba7477c447b82440e +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.GatewayNotFound:1 +#: 22be332c77ad43c29747f0c830b50dec +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ConnectionClosed:1 +#: 20116a3ed16a4f098c4b3b69a5e341ca +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ConnectionClosed:6 +#: d509ada602b848bdbd50c21cf0233978 +msgid "The close code of the websocket." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ConnectionClosed:12 +#: 7f37197e4ee74530bb88cb21b6a73f0a +msgid "The reason provided for the closure." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ConnectionClosed:18 +#: ../../../discord/errors.py:docstring of discord.errors.PrivilegedIntentsRequired:13 +#: 3d446df749944ec4ab403b1ae13406af +#: 171c5579acb2413c935a3d3e8f1d1b45 +msgid "The shard ID that got closed if applicable." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ConnectionClosed:20 +#: ../../../discord/errors.py:docstring of discord.errors.PrivilegedIntentsRequired:15 +#: 0c5edc13c29a4fcba0c5644e1ebe0e19 +#: a5aede21eb0f4acc8948671949905250 +msgid "Optional[:class:`int`]" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.PrivilegedIntentsRequired:1 +#: c35e141e7013495ea8c6f6f71dd78203 +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.PrivilegedIntentsRequired:4 +#: 9196e61bb84944db8fff5530c4d0d413 +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.PrivilegedIntentsRequired:7 +#: 030b7d6b61454efebb407201550cd7a9 +msgid ":attr:`Intents.members`" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.PrivilegedIntentsRequired:8 +#: b7642c9a817a49da89462e50b15e975b +msgid ":attr:`Intents.presences`" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.PrivilegedIntentsRequired:9 +#: 470bcd80cfd7496d98de1a3f2be5c22a +msgid ":attr:`Intents.message_content`" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.InteractionResponded:1 +#: 3573b8e0f8ab401e8b9b71a868031367 +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.InteractionResponded:4 +#: 34a4cd18050c48ed8392c9700be6d396 +msgid "An interaction can only respond once." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.InteractionResponded:10 +#: 9943182c689e42acbd083cbe6818da5d +msgid "The interaction that's already been responded to." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.InteractionResponded:12 +#: 5e386ba748274173b7734455c842a270 +msgid ":class:`Interaction`" +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.OpusError:1 +#: 1c1ea797ac5a40129e42d95b86fd38d4 +msgid "An exception that is thrown for libopus related errors." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.OpusError:5 +#: c7c96aac320a4bda9ce5bc7fcfada69f +msgid "The error code returned." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.OpusNotLoaded:1 +#: b7f591cca75a46a0b206b4c9859d3aa5 +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ApplicationCommandError:1 +#: 7cabf009ba0e4a83b39b4876c02bb864 +msgid "The base exception type for all application command related errors." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ApplicationCommandError:3 +#: 80e6f2d8a4d940c292d9d094f3b67480 +msgid "This inherits from :exc:`DiscordException`." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ApplicationCommandError:5 +#: 799361c7da824355a6b0744337a69ed3 +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.CheckFailure:1 +#: c81f4d594afa42ce8860c68647fc343c +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ApplicationCommandInvokeError:3 +#: ../../../discord/errors.py:docstring of discord.errors.CheckFailure:3 +#: 6fb9bf3276c74e69b2a38256c28e1ec0 +#: d5608f50352b46ada015d057ebd2d8a3 +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ApplicationCommandInvokeError:1 +#: 014df6d7579143978bdc8d92695bc502 +msgid "Exception raised when the command being invoked raised an exception." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ApplicationCommandInvokeError:7 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionFailed:13 +#: 9b23087d6dab4078a722e14af474ff0a +#: de46c67c0d34451d8cf4676f58567c93 +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionError:1 +#: c595f594796040aea80635be71c18f09 +msgid "Base exception for extension related errors." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionError:3 +#: 4ac31a298cd0422daf77b257ce912716 +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionError:7 +#: 25c5c3c8fb2d458cbda274f919af01a4 +msgid "The extension that had an error." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionAlreadyLoaded:1 +#: b5b0ffc88ecb415ebe57a386b79458bc +msgid "An exception raised when an extension has already been loaded." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionAlreadyLoaded:3 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionFailed:3 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionNotFound:3 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionNotLoaded:3 +#: ../../../discord/errors.py:docstring of discord.errors.NoEntryPointError:3 +#: 6c5a2c9815dd49d2b3c1d2a23baa67d8 +#: 28e512cb2cf24be19c6e32bc23841bbb +#: 39c6885c65794beb9120470780ac767e +#: e2125d928b54437bac568f64e733bfe7 +#: a59b7a8232614578bc2f7a2c3c532ffc +msgid "This inherits from :exc:`ExtensionError`" +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionNotLoaded:1 +#: 53e72a006f6241409b12457ba8b8e427 +msgid "An exception raised when an extension was not loaded." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.NoEntryPointError:1 +#: 67c40091d97d405098f489ef8ec672d8 +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionFailed:1 +#: 8168ccb6e48c40acacdcd3767115a1e7 +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionFailed:7 +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionNotFound:10 +#: 2e49b1133d3c4757ba35ed0415f07b34 +#: 8c44c489681d42b6a508ccb656164b0d +msgid "The extension that had the error." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionNotFound:1 +#: ef648aab45b0455690d58d28dfbe3e38 +msgid "An exception raised when an extension is not found." +msgstr "" + +#: ../../../discord/errors.py:docstring of discord.errors.ExtensionNotFound:5 +#: 7d6e25e7e1c54cbfbeb620fbdcfeaa37 +msgid "Made the ``original`` attribute always None." +msgstr "" + +#: ../../../discord/sinks/errors.py:docstring of discord.sinks.errors.SinkException:1 +#: 21739c1cf0ac475b89bb1107726f3f79 +msgid "Raised when a Sink error occurs." +msgstr "" + +#: ../../../discord/sinks/errors.py:docstring of discord.sinks.errors.RecordingException:1 +#: 7e64bdea145d4bb7875e1bcef1a3a483 +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "" + +#: ../../../discord/sinks/errors.py:docstring of discord.sinks.errors.WaveSinkError:1 +#: 6e4acf4cb73947dca4f423639b8cab3f +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "" + +#: ../../../discord/sinks/errors.py:docstring of discord.sinks.errors.MP3SinkError:1 +#: 6ae6e3ecf68c4d69ab5c019cba190af4 +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "" + +#: ../../../discord/sinks/errors.py:docstring of discord.sinks.errors.MP4SinkError:1 +#: 672f48e9a57f4a60b9061b0e91e2abf4 +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "" + +#: ../../../discord/sinks/errors.py:docstring of discord.sinks.errors.M4ASinkError:1 +#: 2389561c34a8497c91f4375f02708fb1 +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "" + +#: ../../../discord/sinks/errors.py:docstring of discord.sinks.errors.MKVSinkError:1 +#: b90dda587cf54324aee88041db439ac9 +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "" + +#: ../../../discord/sinks/errors.py:docstring of discord.sinks.errors.MKASinkError:1 +#: 218e43ce373a429e98b880bcd9e4f748 +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "" + +#: ../../../discord/sinks/errors.py:docstring of discord.sinks.errors.OGGSinkError:1 +#: 9cdf58aa453f4e2f896a496c0a20bd25 +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "" diff --git a/docs/build/locales/api/index.pot b/docs/build/locales/api/index.pot new file mode 100644 index 0000000000..e49d96cb36 --- /dev/null +++ b/docs/build/locales/api/index.pot @@ -0,0 +1,37 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/index.rst:16 +#: +msgid "Table of Contents" +msgstr "" + +#: ../../api/index.rst:4 +#: 8992526d88c64b82a566631cc042bf6b +msgid "API Reference" +msgstr "" + +#: ../../api/index.rst:6 +#: 262a2f48a4e843069ef5e14e69074c5c +msgid "The following section outlines the API of Pycord." +msgstr "" + +#: ../../api/index.rst:10 +#: b91b68d91ae540459d4bd07dd3c8177f +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "" diff --git a/docs/build/locales/api/models.pot b/docs/build/locales/api/models.pot new file mode 100644 index 0000000000..a4e4929a4f --- /dev/null +++ b/docs/build/locales/api/models.pot @@ -0,0 +1,19628 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/models.rst:6 +#: 38e0de79b9364f9192187f5cafbf86e6 +msgid "Discord Models" +msgstr "" + +#: ../../api/models.rst:8 +#: 2d341c7d46244d2abbc87149a4052863 +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "" + +#: ../../api/models.rst:13 +#: fa5a9d512c964a36a57a16409779d3d8 +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "" + +#: ../../api/models.rst:16 +#: 3c643f93a2804663b7ee2b81f054dbe3 +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "" + +#: ../../api/models.rst:19 +#: af70c20f9fc54371a461c00f1c6b9508 +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "" + +#: ../../api/models.rst:26 +#: ffd5a4f0c4bd431d8781dff93d7e3373 +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset:1 +#: 4b6e88f1ca724d2c8d7ffbd0482931ad +msgid "Represents a CDN asset on Discord." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset:7 +#: 936e301eb51d45cbac03ca0b73a3b6fc +msgid "Returns the URL of the CDN asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset:11 +#: 76958866276249ce9521bc01dee3f1e2 +msgid "Returns the length of the CDN asset's URL." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset:15 +#: 8117bae6fc854836a148475fae0c6b4d +msgid "Checks if the asset is equal to another asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset:19 +#: a1a120421df24e4391f78742e4725277 +msgid "Checks if the asset is not equal to another asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset:23 +#: 08223d7368fe4ec1ae8fb6b483cef2ac +msgid "Returns the hash of the asset." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:0 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:0 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:0 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:0 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:0 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:0 +#: ../../api/models.rst:0 +#: b168fffcce71401eb693e9e18b66c905 +#: 1000e6e5e6224041a432ab22340c6a22 +#: c2cf03ff152a4746a445c6e09c4ecf4d +#: de160c5eabbc4424aa90922d81f49f99 +#: 9b463aa7bf23454dbdca8aa23cc8539b +#: e4bba7ea10be4e9ea126e3aa6e9ad74a +#: 7c47ce6d35854eabae233cb4388c1b7c +#: 0c17b7715600433fac4d35bf0017e7b7 +#: 47cf29f45d094211a6159f29fd08d82d +#: 8183ff58df9b4e73bc33a30fb382eb7b +#: 021c63b182bb4e81a6b50633e6be8d94 +#: a24c93013f654f39aec619169aee3ffd +#: 7eeef0117d73468bbf069e0735089439 +#: c7ef03b91163401782f9a92f6ce2c03d +#: 868a9098949744cf9fcf7c6f42e516f7 +#: faad64e33270420d9540268e1052426c +#: 6836891e883c423481ebac9ffd750fa1 +#: bb58123a93434a7d923686db2691d9bf +#: 7cc43cf3dd184cd686b8bf1ec6c776c2 +#: cf2ef7aba94a4080be66ea0480c20921 +#: b22c89b9409f45538c044c97893adb19 +#: be92e79b8562492497e0d816d28b3038 +#: 2c7f28585a7445caa3375c657bfa10fe +#: c46eadcf6cc141368f08bb53bfa5ea54 +#: 9d168ece95784b269773220dae484295 +#: 2a4d60ac337a46c0bed1bc26c226038f +#: 883bef32346f462e98c0bdec679b1efc +#: d2e07740ec32449eb410f0bdef8452b3 +#: 12d301f98b5e48a3873512211a277fb8 +#: c831fa537f414a13a0b6020ed358e961 +#: d490697a012c42d5bbf554978ed73d0e +#: ad6aee1e9b0642d4a2598a8a947336f6 +#: 8358e6376bbf4ed99e959db533fd3e82 +#: bce09d4f70644d45949114525a9e232f +#: f9d7b016a79b4441b05cde2a98ff2f73 +#: f0fe6c67049d4b96a437cd6ff3a5018d +#: fd2871dc9d2b437eaf077d906752bc0a +#: 67deeae9eedb44cc97fa9c9c32d8fb7f +#: c4b82d4c337b48fb8cecced3bfaea55a +#: efe3e572d3bb42b9a47d27498a8b1ecc +#: 18a8b12540854ba4bd1ccf6a3faf2044 +#: cfa8cd151dec4643af4fb785fc99556c +#: cb7c79b0236c445790339b76b58e96f0 +#: e898e44df463451c9ed547af0b4667fd +#: 7b1c6d12b4a842a997b5465a8ddbb287 +#: db10503e23c74cc18f50099e14cc0893 +#: 8df6ae442263404b9f2b7ed7ae19f057 +#: 41f3ff189d5746b3b37769fc2f8e683d +#: 7db2c31f6b6b4368877cec63b61d725c +#: a70491d545954835a7ba3ee88e35ab11 +#: 2bb5fe9dcfdc4277aedd1b8cac88e88f +#: 8fa9dbf39d3e4d458673e6e35abcb4c9 +#: ae50dcfdf19047f39c36d0c0cb946484 +#: 82c457d86c2142bcab50d8842bda9063 +#: 92bc5070285c4eb9b08cec9bafd803a0 +#: 7cde32a58ded4bc89d170ba90e584f79 +#: 81e36a1bf1c14fe2a37b210df30a3427 +#: a3bb38861f7d4b6f9fc2cde50a4f6e90 +#: 728aa08043a64adda19d956c6ff44128 +#: 9b83c72d2fe047bf93dffa69af7efd07 +#: 4ad270a9f286434ea4210e41b4d84a2b +#: 185fb682d8514ac8aac5a55b2bb0b3dc +#: df2fb0faeb9443da8ba9f844182584ef +#: 4cd55485c5ec409cb04d2efb51172d09 +#: a226e4fd036c4e87a2f9e3ab17fc1ca1 +#: fe151c499f3f4ed9af0da6bfd29cd5c4 +#: abffcbc2c62646a59bd6a3492faaf76c +#: 8bfaf5d7e1804eb5bf58cca632c716c2 +#: 3993991579084341a58ae9581980d8f2 +#: 483e8acc9cae4b48aaaa0566e32bbf6c +#: b4903e4b445749fc8bb0e9ed08704b46 +#: d4e42741de964a12b603dfbee3a9228f +#: 1d83346277d643b291dca0b949e3b058 +#: 4e3426bccb324f8ca84175605fe88d97 +#: a7ad261a3e4e408fae23d5a5d4336802 +#: 978731b4ff544335acfad6f762b91b3e +#: df9374bb269a4de2a914a52d64365053 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: 2ad70d3718a4499cb9197f85eb4abf87 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +#: b5873e6ce92f4f3ab50f63c347178ee1 +msgid "Parameters" +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.Asset.url:1 +#: cd3e1dc1a94d4c3a8c524857d4dd1246 +msgid "Returns the underlying URL of the asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.Asset.key:1 +#: 350e91b0635b401c984176738616aef5 +msgid "Returns the identifying key of the asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.is_animated:1 +#: 176cce10bb0141758719e6eb9aeab46d +msgid "Returns whether the asset is animated." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:0 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:0 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:0 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:0 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:0 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:0 +#: ../../api/models.rst:0 +#: cbcd88ced77f4597bfb0d4fd48bf4f58 +#: c6a7d99157e3423285c53b00b65eef1b +#: 0640e492b57342b5a13994bcb5450a85 +#: 4bd018c62f114816b1848122761f0c79 +#: 261deaa002874837a2c0c7f43b420d08 +#: 506e955535214cac83087478241a0b1b +#: b4bd8df1935644ce9c0489c8542cd1af +#: 0ad9dd6e25d24167a508024ae35d87da +#: 86bfec4746ab4883a54583e29dafe33d +#: 4f8209b09da140ffa3202f93b7b6bf97 +#: dda4d63fbd664297808f901fc4957b29 +#: 9fbc068a17a84765ab1cdd7a4092661d +#: 522f4898e55c4556a060f6a8f63bdcd5 +#: e819402188e744ca884c8ba6b1a852d5 +#: 668a7f8b61594196a848b31c1eb2f132 +#: 0c09c04ca6c24f37b7befefc1e27c108 +#: 5987f3ee200f4d81a08e1d344e30d1d7 +#: 0309d5bc75b4441c897a10094b96ac4a +#: f31cbc6d18c4492d8d39476d33e60215 +#: a19f99d9ba494816a26f530dcd4d3024 +#: 350fcc488876465bad13a5796135bdf2 +#: 19c515ba3ce24f398e966d395a7bab86 +#: cd8afe5f874a4ed893d57cd0f29bb9a6 +#: 2862e3ccc6274017a74b9196f3154985 +#: 6a593fc9f66142829114c6c0fed61c9b +#: 536e3251a836422fac526839f75dc3c3 +#: 407ca03640e945a485ddf6039c4290d7 +#: 5aa46d39cf93485795e2b3966ca802e2 +#: ca57d95ea26c4194994d202c3ff3ec2a +#: 16749d2b71db4335acddc773be0d2f0a +#: bac9870e0e33411ba53fb5c16935ecb0 +#: 8f1345380b4e4342a090f0d5cd984869 +#: 18b90031dfc547088813e057a56401c1 +#: da0e818d0fef430fbadf33a4e57ea595 +#: f5fb05070ebd4d488d1b462e0470b4c1 +#: d261c751d34446d5890e6fe388663db9 +#: aa0eaae63db44458a10fa9b1b74828fe +#: 5bd361d0404c4498a423491718158f86 +#: dbf4e8a592f049df9c417ab8b3d39404 +#: 22c035014b65406b969da9bfa17929bc +#: 3bc86514262a4b3c8dfa0832fd887a71 +#: 3bc24b485df54ccc86aaa73edfdda00d +#: 5bc8d4fec7fe4a3da55954a965a3c166 +#: 872e315e148e4e858f69d56dc0ace95e +#: 8b037c2dd39d43d7bab7234b9974ee26 +#: adbc4a22ca1c4ac8959bac23ec4839d3 +#: 77ceaeb103b7476c86ce358d994b966c +#: d3a9ecd345b9437a900862749bb1d523 +#: d3570283753343cdba2a6758d688bef4 +#: 8f074c462f05439087eaf38bdcbde36a +#: 5369cb3951f140f7b332ad63eaca1069 +#: ed9005f2cb1d47fb862b4be05f63997a +#: 077c7293671b47aea1ead298192db654 +#: a491af9434bd4ae6b7adaf96a9ca0ef7 +#: 356bef769b5f47b4987d39eb1a7db4b6 +#: a6245e82802e4b7193ce9a3c9ae5b2ad +#: 3670d238b65946fc85955a7f42fa1a37 +#: 254810d5159c4a7ab7e45312a75c3188 +#: 589587890ebd4f478c62b58dd26d5671 +#: 64bddacb4cac4f82a67a58222d50d578 +#: 61b6dd6513944110a133c7efb3bc0cdc +#: ab64e8b5946049a2b1cf13bb6b63fe97 +#: 9b83d663436b4b1385978a81a84e11d8 +#: bd10cae6ed2b4708a5a0c0f4dda84951 +#: f852538e23ea4d0f954a427289c543f3 +#: c106589d8eff4543b272782e24ad92c8 +#: 2a1ad31a3f764795a2fb39aff9873758 +#: 6f73c53cb70247089d507722c9903f3e +#: f6f36e6c6c81482582ab35769ad90599 +#: 79440ec28ea74d52b17263e296d3409e +#: b91691d031fa405b8a1d7c7a5d684d4b +#: 2907f41b9a254a10a732581db38bb3a9 +#: fc37f43ede9d48f9949589a404c7024f +#: 566bc6bb24784bc5970599ef1e8770c6 +#: 0e77fecc1b154fdaae5ecd7437e07fea +#: 0ffde691430f49ef890254f0b87e9c2e +#: 21ff3a60e1e84c648ce0a5d9aea70700 +#: a35fe165deb2481da568d709dae266c2 +#: 1c5c8239784e471dba566d1b92b2a5e5 +#: 553cad25175b446fbcdab20da396f524 +#: 4558c796153c4ef68dcf70075672fb40 +#: 6000f7ba9ba8448589288c9e491da658 +#: 0979548eb8314965a4232b002d6d8f8e +#: cdf62d9b674847e39744c3e80c1fb9ea +#: 55412074b3c0457a928ba79d2886ef21 +#: 8cf23c67e6aa4a318dc9702fd590e1f8 +#: a57d083bbea64801a7d65f69c25a92fc +#: 3a7e19ad0efc41afb60748ca5ec7ce49 +#: ac441bf274914d2f9dc6f264613f0faf +#: 21bbe3bfdbc446d695ba06c20c373f85 +#: 19a35a7ed51a4b99a8041f75cf8e58a3 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: 9c5c89e0d0874a8691ae9c0e0face8be +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: 3744d240485643bfaaeedd4801535130 +#: f32707707ee74b6dbff49ed14a238389 +#: d90d732a2bb845569dedb27e471e7f93 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +#: f32707707ee74b6dbff49ed14a238389 +msgid "Return type" +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.is_animated:4 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.is_nsfw:4 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.is_nsfw:4 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.is_news:4 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.is_nsfw:4 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.is_nsfw:4 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.is_command:4 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.is_component:4 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.is_done:6 +#: ../../../discord/member.py:docstring of discord.member.Member.is_on_mobile:4 +#: ../../../discord/message.py:docstring of discord.message.Attachment.is_spoiler:4 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.is_custom_emoji:4 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.is_unicode_emoji:4 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.is_custom_emoji:4 +#: ../../../discord/role.py:docstring of discord.role.Role.is_default:4 +#: ../../../discord/role.py:docstring of discord.role.RoleTags.is_bot_managed:4 +#: ../../../discord/role.py:docstring of discord.role.RoleTags.is_integration:4 +#: ../../../discord/role.py:docstring of discord.role.RoleTags.is_premium_subscriber:4 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_news:7 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_nsfw:7 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_private:7 +#: 1fad9e42f9844177a0e09f9e5f6e4592 +#: 1264fee836bb466f89b4f893c7bf697a +#: b3d373e32ad24fc09945543962ca1e3a +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +#: d5f84379d77d42a0860bc6eab1204514 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.replace:1 +#: b7c61034a96543d3a292a7aebd55d2b6 +msgid "Returns a new asset with the passed components replaced." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.replace:4 +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_size:4 +#: daa2f1c92cda42ddae693df8ce5553ce +#: cd7840d7e7a84dfa84a627eb4b3760cc +msgid "The new size of the asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.replace:7 +#: f29fced6031545078062f51a725d4e15 +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.replace:11 +#: 492be4dad9bf42bc83a10472a86b7b84 +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:0 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:0 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:0 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:0 +#: ../../api/models.rst:0 +#: 57f07e810e7a4586855dc28481b0158a +#: c9b9dc712a914abf8f2219351eeff240 +#: d8969dd93df444019b67ca16bb4ef691 +#: 0edeaf6b803640c28054b2e619ddd802 +#: d158caf1186e48c8a38e8020bc046db6 +#: 9f601fe77c824a16b0956178e383143e +#: b2f1da5ff55c4a3b9346d3b6e1f1adaf +#: 433e78d93a284222b29b7c5c27f30975 +#: 1d273c9af8b04078a7f814a612b7af22 +#: 27f96ff5ae5b4e83ab6648c6154d02e1 +#: 4db57c6eb2ff45e683de729c56067875 +#: 51d0460ea52747fe85f7df2cb0591858 +#: f88c908a6f4c41fabacd70ad58cdf52a +#: 5b7671b931944b139d39fd1e649e4371 +#: 83705baf8a864eec9f13163564e7cf6f +#: 25f5699c89f544419e402558052f5325 +#: 76becbf11cbf44e694d2b1ae7e64f923 +#: 647c16affa9946b1954e30a98d48817e +#: 86821b65aab74584ad8c55849a601d14 +#: 362375f37b194a349214ed5fc7c0f203 +#: 0a5c812ff0c04eea82c6fa3bb63067e0 +#: d49a124f37e64f348e59d79ea1e601dc +#: 0996753e5e124f77b30e61a42df820c1 +#: ecd9fdca3e544014953f89c1e94c68f0 +#: fdf7e9a3108d4be18ba445ce61cb75c8 +#: 2607b77d823943a39c83436bd083804e +#: 750f91e4b5294b2eb91a6c4fd068c0e2 +#: bab7da69a6be495781382e54dbaca4de +#: 18d5b6a744724d3a83612d2d141e79a6 +#: b6c1b4114fb543e195c94aa432fe159c +#: 083c074a6726498a8b6a44b2c0390d7b +#: 0ec6d9b2e0264d87852ba95d863dd39d +#: 35d53beb4f25480bb67fe4c3813e33e5 +#: f6f28fef35e44b52b7f0d8b8d69516ea +#: e79560eeaad2454da4385f06e2aaee39 +#: 3d661899f6cf48ebbebdc8e59ef6f6ec +#: d5a133945e874db9945b37883aaded27 +#: b86abad0dc784bcfbc12f4c84d1fa742 +#: 8e51aa1f2ed94e2094249f3044a9d198 +#: b739480c9c6f4adf8e1e3c3933784bc3 +#: 9f2285651c4f433f8b1c16881926f0bb +#: d36b0236b9ea4776a7e6b378e9e2d52a +#: 68305bc3e2184fd09fe9642896bc9d34 +#: dfd2a44a017442e29804dc590d1e49d5 +#: ac01e19d8d404b5dae571c9d27da19cb +#: 6ad8863060a441e4b4dc968c529722e7 +#: 96cc6a6f1f9d4894a37e737d95105b43 +#: 5b085ed69fe04b72a038408f1694f8b7 +#: 2f6d4fffa6184f9780a0a1f424fb7cfe +#: da72630aca084d3aaeafd45ebb6e90e2 +#: 74b5a057233e4cb5a1231cfc2ec593e2 +#: 46a0aa1454ae417e88e6b3cd870b72f5 +#: 4065753368ca48ba9303ab80be7280d6 +#: 5a4bb964168c4d4bb38a489fc597be24 +#: 6653c72cfad749238708f3ebe0122142 +#: e081836ae6504e498ac8f7e7f304807e +#: 43c1656cdb8c46c3a79e2da9fcc17b2b +#: 2357c289d156430aa3fc97424d2c388b +#: 847dccc772424a3faf88bddcb661386d +#: 6ac49508d1c143e2a64cce304a570b5e +#: 27c881e4f9d54dbc8ab1466442f08633 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 2e2ac69c07864724996d15ad04f08e14 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: f66ddfebd98a4697bb828487d4a14e10 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8aa9e45ae0fe4b84b38aee62c912c235 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +#: 8283e51b1c044e2fb9250dd199dcac71 +msgid "Returns" +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.replace:15 +#: 0f6ae02f77bb47c4ad5b987a9ff6472f +msgid "The newly updated asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.replace:16 +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_format:8 +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_size:8 +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_static_format:11 +#: fd507c401cdc4f5ea3a0dc7c779df1d2 +#: 7decbb31cbe34e0591ee991814ce097d +#: 11fc898438104a268cae9f6320a66331 +#: dee5733170884301b654b93e85996bf0 +msgid ":class:`Asset`" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:0 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:0 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:0 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:0 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:0 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:0 +#: ../../api/models.rst:0 +#: 05260df1bd954c5caa25ff09f602f59d +#: 699b6b4ff6544f7faeeb9f52f295dba8 +#: c68960e6aa504d848baa9d228f79b622 +#: d80bc37cab244a838dc6b22f210108fd +#: 44b8d1766516447fb8c88325249d39b0 +#: 6c88abffe12448c7999d0268dd98391d +#: 3c681436fcb64600ad5b441e2331589b +#: 8448a10ed39946c9814070a5a8747f5b +#: 2472859665d2470bb065bfc0b93027e1 +#: fb44d6093f9241de967bd1a6a92c87d8 +#: 08e736d0ebcb4f969f5b6c1e9b37778c +#: 6f136f8c5e6d4b7088fce1fed9753458 +#: 5298538313c0410689ffa672c5266090 +#: 3df56f6e1f9a4a4999cbaaf11a1cd473 +#: a093e145386d4741a3c32f63e3d1b3b7 +#: b8530b14839d4c8c8d553f5ecd20f041 +#: c2ea625207034985b0c360f2a82bcb33 +#: 6b49644c0a984cefa8ad37bd37e25c6c +#: f5bccbd888d048908de44bba82b6968a +#: acf65750771442a785e04917545d20bc +#: e0eacc7163104667a12355c978c322ca +#: a747b811291345929a132043b534d8f7 +#: 6e2bbeaa9dbf4d0095fcab664be6f5ad +#: fb7a0c154ac948c6bb5db13e5ec9280f +#: 017b475bd4664867bb6949ff019b5617 +#: 22e7624f7c8a4117a3d3744545d2dcf3 +#: b59762528dc74f0fa3c39634bbc7b257 +#: 1c6dc455287548f2ab99194beb45b232 +#: fb448fea1e4d411da17ac96ac8102a8e +#: 12909ab179ae4ae984212487c8121eb8 +#: 0b506a02f13c4c2aa4ee74fe7426251a +#: 3f8de618dccb440bae0e587fb00cbbca +#: f65abbd1f6c1479e933a7e770f0b0b9d +#: cca081068ed54c418626a8f0830289cc +#: 26bd87134fbb4581a4f394d41b894084 +#: b2dbee1368ee427fad1bc38199801dfd +#: 46cf6a58d072411e85e96d08a4ce189e +#: 936a55c4d73045b7a97b48add3bbba31 +#: 73980af6f86141cf98c79c7088e50c86 +#: d64c9fbd67f44db186cc840553acf9c2 +#: 267de63306354febb545e6ce928be1e6 +#: 47f45e0b2e5f442790500ab0a1cb7ae5 +#: 5c03c74134e3491dba9c9a283a2eb3ef +#: 141f4b3b829f443c9e0e95b059139f3c +#: 612731b71d164a1d85b70ee0e6acd7f7 +#: 22006d01559c4c56acdb79d7f1ed738f +#: ec0331f905e2441fab9824d1f8c4963c +#: b879e907e15d4b709a7c4fb7e4e46856 +#: ca68861e26e843c79b39454f02ce4bdb +#: c793135c62ea436aad956d5fa0129ef6 +#: ac17053a86f84471be8fbb3466c02f59 +#: 479fe8e8503a4eeda03033937fea8178 +#: 6f0007dd2faf4406952fee24462ad0ef +#: f56f39ec6cb24f81ae8f8d24412d450e +#: f540cbb4fa004ee6bea4303f94a62480 +#: 17544644f3174233b360da2c7fc321de +#: df047e2a4b19450294fe199cbece81dc +#: 932053c3e0c04333bbe3132b2cc918f0 +#: 9ed8c6957e594b989803867465b0832b +#: 393c0085e60b406e91fa74316710ca6c +#: 911a2045702c4b5da52b8d43e124cdf3 +#: 4b0ae9cfa8734a47aec5bc961bf7d8ea +#: 63b00c35f848405e9fea923d03fa7759 +#: 6a70eeb5c346446eaa451b8a82fa36f0 +#: 8cd7d37a539b4df8a6a38d86b91a57ca +#: ab281ddb680842b9a168aa9d9d1142c8 +#: 949c13f67593491fb341a58620388b86 +#: 55e5647b51fa4afb899876de7b44a51e +#: a78381ea68c5462ca57f748f4891aaeb +#: 530048b485b64e259d50b0528f5a980e +#: 97d2c307e17a4aa98bf80c3816b2023f +#: eb9ad7bc68144f10904406488bd7ae24 +#: 113a72e344ba44e589ab4850f4e526d2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 2d288ac0eca6428fa8068b8aeb74e498 +#: 3902ae0d9db246adb81666c177be7db2 +#: 1f953a100c764d178b276431e62b1992 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: dd7eff5537e64034b184274723af6237 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +#: 3902ae0d9db246adb81666c177be7db2 +msgid "Raises" +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.replace:18 +#: 44165730eb744f8ba309bbead8d7fe98 +msgid "An invalid size or format was passed." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_size:1 +#: 18fd8b8e2cf343548ebeecbc10b4aad1 +msgid "Returns a new asset with the specified size." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_format:7 +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_size:7 +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_static_format:10 +#: 9adf62b3d3dd496d8296e2f28fb3db26 +#: 0745ca1b6ee24362a4d64ca7427632bc +#: 7d4b2761dbd546be90d9bb9950d4e9b3 +msgid "The new updated asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_size:10 +#: 93e6016595cd40a7b1d0dab443a478a8 +msgid "The asset had an invalid size." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_format:1 +#: 4d5a1d9e37a94f8ca44dad570f54f4bd +msgid "Returns a new asset with the specified format." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_format:4 +#: c83f8a1f70c645c2bd156cee9f378e6f +msgid "The new format of the asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_format:10 +#: c886a9cdeec743fba730f913067a88ad +msgid "The asset has an invalid format." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_static_format:1 +#: b55b6fcf0cec4d5f8a57ac6ebbef3b51 +msgid "Returns a new asset with the specified static format." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_static_format:3 +#: 88e4f675a5ea4f9592f17a4e1326bb23 +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_static_format:7 +#: a99351c344ef4193a12d16c9a9ca3034 +msgid "The new static format of the asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.Asset.with_static_format:13 +#: fbfb165d42014fd699bd2ef4dcea2aef +msgid "The asset had an invalid format." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.read:1 +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.save:1 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.delete:1 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:1 +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:1 +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:1 +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.delete:1 +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.invites:1 +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:1 +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:1 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.fetch_message:1 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.pins:1 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:1 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.trigger_typing:1 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.clone:1 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_forum_channel:1 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_stage_channel:1 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_text_channel:1 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_voice_channel:1 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:1 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:1 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:1 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:1 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.leave:1 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.clone:1 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:1 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:1 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:1 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:1 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.fetch_instance:1 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:1 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.webhooks:1 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:1 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.clone:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.set_status:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.webhooks:1 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.clone:1 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:1 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:1 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:1 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.webhooks:1 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.read:1 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.save:1 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.delete:1 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.active_threads:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.change_voice_state:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.chunk:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_category:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_integration:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_template:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_test_entitlement:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_emoji:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_sticker:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_widget:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rule:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rules:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_ban:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channel:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channels:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emoji:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emojis:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_member:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_role:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_roles:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_event:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_events:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_sticker:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_stickers:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.integrations:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.invites:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.kick:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.leave:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.onboarding:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.set_mfa_required:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.templates:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.unban:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.vanity_invite:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.webhooks:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.welcome_screen:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.widget:1 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration.delete:1 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:1 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.sync:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_response:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_response:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.respond:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.delete:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.pong:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.premium_required:1 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:1 +#: ../../../discord/invite.py:docstring of discord.invite.Invite.delete:1 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.fetch_message:1 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.pins:1 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:1 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.trigger_typing:1 +#: ../../../discord/member.py:docstring of discord.member.Member.add_roles:1 +#: ../../../discord/member.py:docstring of discord.member.Member.ban:1 +#: ../../../discord/member.py:docstring of discord.member.Member.edit:1 +#: ../../../discord/member.py:docstring of discord.member.Member.kick:1 +#: ../../../discord/member.py:docstring of discord.member.Member.move_to:1 +#: ../../../discord/member.py:docstring of discord.member.Member.remove_roles:1 +#: ../../../discord/member.py:docstring of discord.member.Member.remove_timeout:1 +#: ../../../discord/member.py:docstring of discord.member.Member.request_to_speak:1 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout:1 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout_for:1 +#: ../../../discord/member.py:docstring of discord.member.Member.unban:1 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:1 +#: ../../../discord/message.py:docstring of discord.message.Attachment.read:1 +#: ../../../discord/message.py:docstring of discord.message.Attachment.save:1 +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:1 +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:1 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:1 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:1 +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:1 +#: ../../../discord/message.py:docstring of discord.message.Message.delete:1 +#: ../../../discord/message.py:docstring of discord.message.Message.edit:1 +#: ../../../discord/message.py:docstring of discord.message.Message.end_poll:1 +#: ../../../discord/message.py:docstring of discord.message.Message.pin:1 +#: ../../../discord/message.py:docstring of discord.message.Message.publish:1 +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:1 +#: ../../../discord/message.py:docstring of discord.message.Message.reply:1 +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:1 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.consume:1 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.delete:1 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:1 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.append_prompt:1 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:1 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:1 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.get_prompt:1 +#: ../../../discord/partial_emoji.py:docstring of discord.asset.AssetMixin.save:1 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.read:1 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.clear:1 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.remove:1 +#: ../../../discord/role.py:docstring of discord.role.Role.delete:1 +#: ../../../discord/role.py:docstring of discord.role.Role.edit:1 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.cancel:1 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.complete:1 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.delete:1 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:1 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.start:1 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.delete:1 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:1 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.delete:1 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:1 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker.pack:1 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem.fetch:1 +#: ../../../discord/template.py:docstring of discord.template.Template.create_guild:1 +#: ../../../discord/template.py:docstring of discord.template.Template.delete:1 +#: ../../../discord/template.py:docstring of discord.template.Template.edit:1 +#: ../../../discord/template.py:docstring of discord.template.Template.sync:1 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.fetch_message:1 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.pins:1 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:1 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.trigger_typing:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.add_user:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.archive:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.fetch_members:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.join:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.leave:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.remove_user:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.unarchive:1 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.fetch_message:1 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.pins:1 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:1 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.trigger_typing:1 +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:1 +#: ../../../discord/user.py:docstring of discord.user.User.create_dm:1 +#: ../../../discord/user.py:docstring of discord.user.User.create_test_entitlement:1 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:1 +#: ../../../discord/widget.py:docstring of discord.widget.Widget.fetch_invite:1 +#: e9daf36896ce457cbddfeb00139760dd +#: 7ad00ffb5bab447ca72c6844703a96e9 +#: 0ca18e9a7adf4b6f9bfcce46aa9e3c6f +#: 704cb3891c8f40fd82c41a6e73d45468 +#: bf7d7300665a42d4b2d8623f113713f2 +#: ff88a521f3414956bb0ae0fb0241dcbc +#: b41df4171ce3487289ea11713cb69daf +#: c126483eaf8f483ea012ef62bb4ca9a5 +#: a5c07649e5ae469886fe90f590944332 +#: 6ca83568bdad40798ecbdd6239c77a81 +#: 16bc1d11ba1242fcaaa2d5f3a231382b +#: 97d7c3ed4fdb465b963224edb1f96c40 +#: 3db17b50b5c94a2e910ca4e66e1a92d6 +#: e36857d00d4a4b03a1a0dde15176d0f7 +#: 5d4f482bbf7846e59a2374c6ee3eb3ad +#: a228bf8cd1194556b2d999730fc00b47 +#: 81253fd018124062b2e6978ba7f46e1c +#: b7eba1a9a94b4abca974be4cda3b9439 +#: 867ac713660943d69dbd98f2164d01b6 +#: cb531c728a4e4ebe841b5d629b87de49 +#: 6eb05241c80d4ae3b044eb9161b223e3 +#: c812fd05fc964c57aabd04b4b16b89e6 +#: b1382f4fb77344589f6d0af222d4038d +#: 87c91af97b574208ae3fed3ce8222bd1 +#: 6e5bcc4045eb45ee9cc11a3a33632917 +#: 6ba495235f7645788ad7dded9e4cbc17 +#: 8c5c8dd3ede749a19ce6044fa98822d2 +#: 3e7128aea19b401893ffdc27d203a3b0 +#: c62fb81bdab94beba442b9b30c439099 +#: b61fb94b7fd5463b98f5c4cba114eb44 +#: d81d01d2bf864f69be7d59be99c53415 +#: 35d10e85e986443a9e0a1f97dcac92c0 +#: 3edfe5a70b18415b911ba5439cc5a95c +#: a006e586ea96435888e9470ed4c69990 +#: 80f4a463d8554a85a5f20b7b8a2e22e2 +#: def68b192c7147ba9f95cf729e534f29 +#: 16f0ba84894943f1aef0558e371df7b3 +#: 2074d7f99a844507a10fe0536d71e67f +#: 7fb30cd7713242d68f44b6b6ebcef3fb +#: c475e3a182784df084eb336605c7944c +#: 69a188049ab64f7ca4accf2252dc85f9 +#: cbea66b66f524924bc315334fd17e07a +#: e4db3b2aeb53457297109bc676433dbe +#: 5ef60e9b21b84048b0fe6334289f0abd +#: 463e5fcc76984461a559231b6cd6dd11 +#: f6c37e86f96f473a8d467748569b3925 +#: adee786460914fdcb477594f45acb37a +#: 7db62c34d00146b596edf2b23276ac74 +#: 99adafd0bce74bca994af7d097e50577 +#: b4e8c615fe5343b683b8b0ad945cd4a1 +#: 0370e808c57d45af969bace394918843 +#: 722b6b94854649b2b6cd0bcdec84d94a +#: 960b97e779684aedae87fb6801d55474 +#: 3b9f5473c35c4f9db28d3a986789472f +#: 7ffdf73db5ab488e9b51b597babc8b61 +#: b417d4f6381b47c98b155db7cd64c5fb +#: c98a9314dab44cf1bfa78489978e74c7 +#: 7fb6be439be4482eb842382bddf0eb36 +#: 7932b3a1df6e44acacdc6ef4e6344229 +#: 066b403845fe4067a93eb4cd4de9e874 +#: f18f5ee8a1464b5bad7b9626fb8800ed +#: 5b3163ea99564932af894f02711d4317 +#: 0cae40f9ce954ec9b15b77889eac1aa0 +#: aca413eb20544eddbf028107ebe44fe0 +#: 24480af3fa9148cdaabce5cd5523cf8f +#: 9a10b90385b0491d98530df90fe54977 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: a7d1faaa3453418aa9971cf314037c1b +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 910794dd47a748b5b041934ea50a6337 +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +#: 160d2bd81c0b42bdbab49cfa35cacd7c +msgid "|coro|" +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.read:3 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.read:3 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.read:3 +#: 4dcd15b67bf147479ba86c1113f22610 +#: 0a45793fa09947b5b76f788948db618b +#: 0a45793fa09947b5b76f788948db618b +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.read:5 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.read:5 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.read:5 +#: 65febeca148b4be9994734d258af10f6 +#: 61bde54de96944b9b82f92d99b94300f +#: 61bde54de96944b9b82f92d99b94300f +msgid "The content of the asset." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.read:6 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.read:6 +#: ../../../discord/message.py:docstring of discord.message.Attachment.read:17 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.read:6 +#: d3b229e6d8534eceb97a2d8228c54f0f +#: 54bfde75f0f943679d7db0a7aaac127e +#: 5dda9975005547e4beb396e3191f0db8 +#: 5dda9975005547e4beb396e3191f0db8 +msgid ":class:`bytes`" +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.read:8 +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.save:18 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.read:8 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.save:18 +#: ../../../discord/partial_emoji.py:docstring of discord.asset.AssetMixin.save:18 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.read:8 +#: 2d8757c0cd4949059cba01c2a5b8f8f6 +#: b83fb92fb53945bba9a45e6f0fe3f9d7 +#: 34973bc8542a42cd997c216b94cce104 +#: 34973bc8542a42cd997c216b94cce104 +#: 34973bc8542a42cd997c216b94cce104 +#: 34973bc8542a42cd997c216b94cce104 +msgid "There was no internal connection state." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.read:9 +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.save:19 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.read:9 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.save:19 +#: ../../../discord/partial_emoji.py:docstring of discord.asset.AssetMixin.save:19 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.read:9 +#: a1e890fa41674e048ecbd57d80238a69 +#: 2e3e6e96952c4e09959ea48ab64f6bb9 +#: 0926c1a57e1d42ca8306857809e2bbf9 +#: 0926c1a57e1d42ca8306857809e2bbf9 +#: 0926c1a57e1d42ca8306857809e2bbf9 +#: 0926c1a57e1d42ca8306857809e2bbf9 +msgid "Downloading the asset failed." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.read:10 +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.save:20 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.read:10 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.save:20 +#: ../../../discord/partial_emoji.py:docstring of discord.asset.AssetMixin.save:20 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.read:10 +#: 4401ecb89712474fb7bfe8e694cbfee2 +#: 9178ef81aa534252b75195e5f2fe0095 +#: 9cdae5cd0ee548be87ed7cba9ee65aff +#: 9cdae5cd0ee548be87ed7cba9ee65aff +#: 9cdae5cd0ee548be87ed7cba9ee65aff +#: 9cdae5cd0ee548be87ed7cba9ee65aff +msgid "The asset was deleted." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.save:3 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.save:3 +#: ../../../discord/partial_emoji.py:docstring of discord.asset.AssetMixin.save:3 +#: 4cbc6c1c6cba4159a0d4a5b6c0d718b8 +#: 53a10fbce32c4c78adf94540d77378d2 +#: 53a10fbce32c4c78adf94540d77378d2 +msgid "Saves this asset into a file-like object." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.save:6 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.save:6 +#: ../../../discord/message.py:docstring of discord.message.Attachment.save:6 +#: ../../../discord/partial_emoji.py:docstring of discord.asset.AssetMixin.save:6 +#: 83de373e758a4e4681957b8ec406b431 +#: 7b493c556a40473db9b99d2c953c19d8 +#: 7bc5cf8ede5a45639de67d42ca5aca08 +#: 7bc5cf8ede5a45639de67d42ca5aca08 +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.save:11 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.save:11 +#: ../../../discord/message.py:docstring of discord.message.Attachment.save:11 +#: ../../../discord/partial_emoji.py:docstring of discord.asset.AssetMixin.save:11 +#: 046ad38efb79459fbf2a3ecd8b279567 +#: c4ec62dcfb8546f5b32ef163c4e401e4 +#: 148b8fad8702458e82dda1d1d36058f9 +#: 148b8fad8702458e82dda1d1d36058f9 +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.save:15 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.save:15 +#: ../../../discord/message.py:docstring of discord.message.Attachment.save:23 +#: ../../../discord/partial_emoji.py:docstring of discord.asset.AssetMixin.save:15 +#: aede6c3b17ae4ee08ab6dafed6701d9a +#: b4b183e053614b16a4b57382139bccb2 +#: 05679ca6d69e48cd90a4c771b4725c81 +#: 05679ca6d69e48cd90a4c771b4725c81 +msgid "The number of bytes written." +msgstr "" + +#: ../../../discord/asset.py:docstring of discord.asset.AssetMixin.save:16 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModActionMetadata:12 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:27 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:39 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:60 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:39 +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:39 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:37 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:76 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:94 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:37 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:51 +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:28 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:39 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:64 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:70 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:37 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:72 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:90 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:37 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:56 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:62 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:98 +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:41 +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:48 +#: ../../../discord/emoji.py:docstring of discord.asset.AssetMixin.save:16 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:39 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:63 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:47 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:59 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:71 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:119 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:152 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:158 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:18 +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:9 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:9 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:9 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:9 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:57 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:12 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:42 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:11 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:19 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:53 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:90 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:97 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:34 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:34 +#: ../../../discord/message.py:docstring of discord.message.Attachment:28 +#: ../../../discord/message.py:docstring of discord.message.Attachment:34 +#: ../../../discord/message.py:docstring of discord.message.Attachment.save:24 +#: ../../../discord/message.py:docstring of discord.message.Message:119 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:9 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:15 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:21 +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:9 +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:21 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:9 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:9 +#: ../../../discord/partial_emoji.py:docstring of discord.asset.AssetMixin.save:16 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:15 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:29 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:41 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:15 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:21 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:13 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:9 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:21 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMemberRemoveEvent:15 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:7 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:19 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:7 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:15 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:8 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:14 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:20 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:9 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:15 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:7 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:13 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:10 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:16 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:9 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:21 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:27 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:9 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:15 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:21 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:9 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:21 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:27 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:9 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:15 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:9 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:15 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:36 +#: ../../../discord/reaction.py:docstring of discord.reaction.ReactionCountDetails:7 +#: ../../../discord/role.py:docstring of discord.role.Role:41 +#: ../../../discord/role.py:docstring of discord.role.Role:74 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:23 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:35 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:29 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:53 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:29 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:41 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:59 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:29 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:41 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:29 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:35 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:47 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:53 +#: ../../../discord/template.py:docstring of discord.template.Template:15 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:42 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:48 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:54 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:70 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:76 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:82 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:115 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:146 +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:27 +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:33 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:31 +#: ../../../discord/user.py:docstring of discord.user.User:31 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookChannel:11 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookGuild:11 +#: ../../../discord/widget.py:docstring of discord.widget.Widget:21 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:25 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:37 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:25 +#: 42faf5a34414420fa7c8b306f914946c +#: 940c35d806714f3490c1706f2b5e9387 +#: 6b01df183fb34aff8d8ff8f39fcd123f +#: 66016977cc094ded920608f03478efe9 +#: 5191b22157d04bf4bc0a54a5f2b92103 +#: 60c6d421be604ba494cc3d95066a7282 +#: ed30d7077e91479b8d8bca2fbdbe9c9c +#: a29ea8b8246a43af9b40003208bbc391 +#: cf2159859c6247b487751085c8eca2ab +#: 629d14726075491d8b2353e9951aced7 +#: 890c84de21ba4d91a8b26637510d4407 +#: b50d54ba08564b4f9b2be822321beec8 +#: 6b195ebe2b3f42baa97cb2ab411e7e1a +#: 212de6faa7504807a9cf8215d8063c5f +#: 1495a50b4ab8413cad396ce6b79fc8c7 +#: 4e73e268d0bc4f3b9f9926548f91bef1 +#: aa8742356cbc4c489cc800a7eb9d42f8 +#: a5de6e34f3a84becb10665499bedb572 +#: bc403ebbeb184ea2bda7548155852630 +#: ca35a42f7bd740a59fa89b4d31894909 +#: 09a9130eef2f4e5f97bee108b1b2125c +#: 5f353ab23d4e42d19a2257f9ead36a65 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: 271a7d1b5dc64585a8287a2229b96d39 +#: 271a7d1b5dc64585a8287a2229b96d39 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +#: d69750ecda48449186ede1be30a7b7d1 +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Spotify:1 +#: 4d8441d00798480f97977a334b4a48da +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Spotify:8 +#: 4b7d1b841620499ba7463a98767f47e9 +msgid "Checks if two activities are equal." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Spotify:12 +#: d89f31e4e5404f12a1ce0f26c2f146a2 +msgid "Checks if two activities are not equal." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Spotify:16 +#: 594c0f99676c49e082bb82c19c0f7d6e +msgid "Returns the activity's hash." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.activity.Spotify:20 +#: dfc91939393f4a7e9857d116b2b1bbd7 +msgid "Returns the string 'Spotify'." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.type:1 +#: 0b0a706f84ae464cbc6dfdcdbc9e8933 +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.type:3 +#: 99555b5fa2de47b2bd1cb78ad4c12e18 +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.created_at:1 +#: b6518f9c55b54751bc83644713021450 +msgid "When the user started listening in UTC." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.color:1 +#: ../../../discord/activity.py:docstring of discord.Spotify.colour:1 +#: 66c0095a60a34c59a3390d2c9df00d73 +#: 2198a9c9e1f54df38b83ca3b1209747b +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.colour:3 +#: 80df3891719c4ecdbfbf1540c062886f +msgid "There is an alias for this named :attr:`color`" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.color:3 +#: 3ef9a24d763545acb4f24a5d289ec2cb +msgid "There is an alias for this named :attr:`colour`" +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.name:1 +#: 97308ab0289b48c6b918911a58a9a597 +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.title:1 +#: 8dca551009b444789adfa0d0fcb4c606 +msgid "The title of the song being played." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.artists:1 +#: d0687c8a579342cba812c673b56621aa +msgid "The artists of the song being played." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.artist:1 +#: 65057f550e364368848a89daf74f96d8 +msgid "The artist of the song being played." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.artist:3 +#: ecec3cf51d2b4896906f928dae17b0c8 +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.album:1 +#: 73ba8c064af84734beb1457181271913 +msgid "The album that the song being played belongs to." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.album_cover_url:1 +#: 1a329a4988b34f5288ac278d2806f965 +msgid "The album cover image URL from Spotify's CDN." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.track_id:1 +#: c6d5df6af7634597886f212077f9b892 +msgid "The track ID used by Spotify to identify this song." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.track_url:1 +#: c10b93e08a394c8fa658fea9d8cee51f +msgid "The track URL to listen on Spotify." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.start:1 +#: 0c912b73bfe74d9b9736d6d3e34aca1c +msgid "When the user started playing this song in UTC." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.end:1 +#: b6a0a3dce624443db41a83233c76221a +msgid "When the user will stop playing this song in UTC." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.duration:1 +#: cb55726247de4a8e8fa41253942fb6a9 +msgid "The duration of the song being played." +msgstr "" + +#: ../../../discord/activity.py:docstring of discord.Spotify.party_id:1 +#: 2368f55e263f4e57b9256c714d6e201b +msgid "The party ID of the listening party." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:1 +#: 8521704e5a85426f8785035e260b2b34 +msgid "Represents a Discord user's voice state." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:5 +#: d19a2b06ac6745cf97412af920e58255 +msgid "Indicates if the user is currently deafened by the guild." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModAction:0 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModActionMetadata:0 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:0 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:0 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:0 +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:0 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:0 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:0 +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:0 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:0 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:0 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:0 +#: ../../../discord/components.py:docstring of discord.components.ActionRow:0 +#: ../../../discord/components.py:docstring of discord.components.Button:0 +#: ../../../discord/components.py:docstring of discord.components.Component:0 +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:0 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:0 +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:0 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:0 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationAccount:0 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:0 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:0 +#: ../../../discord/interactions.py:docstring of discord.interactions.AuthorizingIntegrationOwners:0 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:0 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:0 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:0 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:0 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:0 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:0 +#: ../../../discord/member.py:docstring of discord.member.Member:0 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:0 +#: ../../../discord/message.py:docstring of discord.message.Attachment:0 +#: ../../../discord/message.py:docstring of discord.message.Message:0 +#: ../../../discord/monetization.py:docstring of discord.SKU.url:0 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:0 +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:0 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding:0 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:0 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:0 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMemberRemoveEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:0 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:0 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:0 +#: ../../../discord/reaction.py:docstring of discord.reaction.ReactionCountDetails:0 +#: ../../../discord/role.py:docstring of discord.role.Role:0 +#: ../../../discord/role.py:docstring of discord.role.RoleTags:0 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:0 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:0 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:0 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:0 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:0 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:0 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:0 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:0 +#: ../../../discord/template.py:docstring of discord.template.Template:0 +#: ../../../discord/threads.py:docstring of discord.Thread.applied_tags:0 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:0 +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:0 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:0 +#: ../../../discord/user.py:docstring of discord.user.User:0 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookChannel:0 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookGuild:0 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen:0 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreenChannel:0 +#: ../../../discord/widget.py:docstring of discord.widget.Widget:0 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:0 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:0 +#: ../../api/models.rst:0 +#: ../../docstring of discord.AuthorizingIntegrationOwners.guild:0 +#: ../../docstring of discord.AuthorizingIntegrationOwners.user:0 +#: ../../docstring of discord.InteractionMetadata.interacted_message:0 +#: ../../docstring of discord.InteractionMetadata.original_response_message:0 +#: 09eec61105ed4161b45e3ffdafd48bb1 +#: 5d2422bd8d6c40aaa09875550353f8d8 +#: 7c45525c2a804ee983410a85d2856c72 +#: fdd925840fb24e89b0f94205c0acc9fb +#: da073de05b9e4f528d3dc81a9e6ac777 +#: abb9957168004deb9b0b16726211ec29 +#: f8d9a7bee8654e418338d5153f0346e0 +#: 1b2606ff5e8b4524989753c9ad467b97 +#: ebfd2a17c7c64a649b40a97c0397f08d +#: bee43d44de1540dd8308d7840112e7ea +#: ea5702097679494cbc117ca53b79b9d1 +#: 7e3d3537787f4909a3f533956a0b2114 +#: f619d28bcac54b87b9826c65caaa95d4 +#: 338106e55c8240eab14065502b864dfc +#: bc3aa6d4529e45068a1e542de6b4fb17 +#: 4dee2a1342b24edcbb70f7c373b370a3 +#: d4b6e88a914c4f039e215ddeec921bd5 +#: d1bbad3b31bd49bfaea28fbc02d6c4ab +#: 7693963e34644ca1bd2effa6f88d8b9e +#: 272747f7539542f3b8a44148c72e26ea +#: 8387e2278a404919af843b93e8115ab7 +#: 784be10dac3d459faa6de5dc766fca6b +#: a854241a48da4657ac4191293b46900d +#: 4e47f55a759e4da2818894aa503b7ee5 +#: 69cefcf03e884ac7b5fc11b7d1d29cf3 +#: b337c6dc8c414befa7850e212ce7d7eb +#: bf0d57cc45cc4633bb0cc7df070c4418 +#: c776312038584368bc9ecec0c0ad8dbf +#: 35a8b82808b8453db119ab7ba0ebcdd1 +#: 03e71a7ef3c74ac7aeab4c072e40f78d +#: 176e4886bf9f4105b2c77ab49bff6956 +#: 614ea7004bc04ea0b4e031051f813524 +#: 7a27fafabfe045e1830b6e6d3c6728b6 +#: ad846a914f534e62aa1a0fa410b7ffb3 +#: 22065b2145c345fcbc326d89075ec35b +#: e18c8d576865486dbf7e1e5055f5ce7c +#: ba3676ed311e42e99fd2a599b2467dba +#: fc1703444c8e43aeb6b207c0f0770564 +#: ab173d33d46744e6a0cb8b961e49e23d +#: 9f597ce69b054fe48d2922e85db0c3af +#: 9173191c27e6484794007b6452c643b8 +#: 03a5eb78e95e41108576c4db355fe914 +#: 1bdb2cabcf67495ebdc667608c720a06 +#: 22ac68d587fe4abc9f96441f06046dd9 +#: 095f7ca30ce74014962ea2b3236a9c3a +#: fd31d6e51ff848fbaa774b695fb45f96 +#: 0d3d1607e68844609eed1db5d315d17c +#: 77b5c1a970774a8ebeabdf892fe59af6 +#: e4ebc8ba68aa48d1ad1e4703697409ce +#: 495f29871fc9457e9d2309a9a716f0d5 +#: 998a56ee903a43baa0dcd25155351a0b +#: 06df0be9e38d4672b7997b4b6bed681c +#: d7244d7c36304984b34b1f7bc9f77171 +#: 655791b8ec334318a71371e38c2748ad +#: 4ab61677a7bb4b46a38295c13b89b84c +#: b89ba10007ff47f0a80093f54be43e16 +#: 0d7fa3aefcb74cbda495ff8a7ba6fbc6 +#: 2a608fc04cba49d98e1f1ddaeb64d63c +#: 022d0104c2db48bc9630f70a4304365e +#: 9cfa3c015b574cc9879d457ec5fb2607 +#: b99c99a9aae44872b07a6e5714355931 +#: f893de4cfff14b6fad708001d112c886 +#: a79f925772d5431288f420c483672dff +#: b2584d98803a488da58a6cfeeb4ff514 +#: a7eb34de6a7544ba80ac451d76e97de2 +#: 02722029b4644ccbb2826596fdd7d4f2 +#: 2cfabf5b7fef435e84dfb3fc2787f1ac +#: 6d94e4d6b4274516b6b9f993418424ab +#: a90d060620ea4f589990c3d137e2fd63 +#: c265aacd65f544b7b53d69cd86c1a6c9 +#: f40b4138a7f643cdad4ff34785e7a1a6 +#: 445c00ebbc034cf592fd52d5d03e6cd2 +#: 39e122018c1842f396b368886b48e775 +#: 1a5fb7ddf3a7455ea4289176cdc0aff8 +#: 19f362c6d92d48a38052a262699789de +#: 65592515d2344a05a46a09f7c2971220 +#: 9807910de97640019833188504fba5e2 +#: ff120de4acd049acb1bd45f48960e558 +#: 05e0203dbd8649cd8585fca15c617da7 +#: 997c9a6bf9f841e1a23ee87e07dc133a +#: 82e604d0bafb4db995460f2cd17d033d +#: 301f746397184c208e2c02257b8dddbc +#: f2e4b8b8137d40a2bebbf3bc5de39968 +#: 0bc6ed7330724dd5990afe78502410f7 +#: 220cdabc3311432b998e5c424c465750 +#: 38452ae8461d43858b5eedf649345464 +#: 8fd99964bc5f4c75b99e76cd55db8f3f +#: 4ff0756fe2ff475e9426ecf6e42de593 +#: 999d70ebdc004054bed7337133d7badb +#: 40e0a342c08347f4a56b1ca567727562 +#: cd2df1c929cd456f8d9d8bf26bf9301d +#: ea38f3e356fa4161b8de01801d95f3b6 +#: b9452c8cf7c2467e9e6c1b7e509554ca +#: 597e2c7023454f9bae54cdbdb61770d9 +#: eb97cfb2bf1c4e2c98573c7e3bbd8c4a +#: 21faf240333d4ce2bf3365f28aace9c3 +#: 46bc1c63dd9e4910a17146639aada31f +#: cd84f3ab22b34b47b43cca8064efcc1e +#: 4e9a5a92ba97487c98c0e80a7c1da703 +#: ee3b3590bdcd478e9bf22ad66c97f6cb +#: cf8df1038cd14c499b0f1e011403c79c +#: 8e36b6cc07aa42da819389f7b2caa577 +#: 95a4a27c7cc446feb8ade2dd0ed19a75 +#: c73d884c4f3f47b3882953a0d0b64d00 +#: 5c87aebcd49e483a94cadb1a64305abf +#: d20c90ab1d3b4e78a4b1fdb0230e5cee +#: 11b797ca46964705b194c18b4a73a447 +#: 08e3e9c93f0b4183ba0461cac59169eb +#: 1a47b03bc43541c8ac4ed7daa9ca1088 +#: ec2d1bea39794ebcbef93b57b9de6d67 +#: 3f61e1f35e8e409586a1c02b6434c7ad +#: 364abd3036f54f50916f10f4efd58771 +#: c6917a192f01402aabd064ec968591dd +#: 09e3beef264a4814a23c023bad7967f1 +#: 65673938e9ab431fb0c36fba6144e5e1 +#: b8c22f4bd1b345eaa7b1ed351b8b599e +#: 72133300fc0e4ceabfa5d18acd4f5a9c +#: 6356776abd8f454aab1e3ef10a9b60ba +#: 27158b656eca4afe88f99efb05ccb80e +#: de6c29b7c5de48cfbe3371df25e2e2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 4ca295d01b0b49c58f92e474e0ed1fc7 +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 38411a48b02d428999e9c0ecf39097ae +#: 65b623a6ad5942158f94d51716ea4f68 +#: 6f14d3ecd2f343f7bb7a86e1056f87e5 +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 977d255a45434383aa099d0cffd1a8f2 +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 39b4f683f3684b8cb1b34e32eea8ac7c +#: e107404ea2c94a5aaa45cbcc63c9130c +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: ae93341707b647f7ac229290218e5ebd +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 78e960b05b6f460ca4e148d0b59efded +#: c9fabdb2315b487abfb348c35ed9aeb0 +#: 0543f30da3e5475c9bd5eb027436314e +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: f32c17be6b6e42cbbcc690990b864b62 +#: 440f85a803964393857b04290988e1dc +#: 2e73b3fbe6374c54a25603c479a50d5b +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 00d1af14de6d4547ac426408cfb3330e +#: c036b2d5a57e4a3d89c4ac92c77e08bf +#: 8011afda364b4ad79ae0165dd6b60d40 +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: d5c8ea805b224e0e93e2aaefc85d438b +#: 6f42d562ae7947699c87a27afae00ca2 +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 6d42276c22a945b28406f8e09ad56b0f +#: 88b635d0d40c4f37a563725261f1c623 +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +#: 1f9651133d7a430f8a24b9a645ada2ce +msgid "type" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:69 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.can_send:4 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:56 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:86 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:82 +#: ../../../discord/components.py:docstring of discord.components.Button:35 +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:70 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:45 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:51 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:57 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:69 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:65 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:81 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:166 +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:33 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:33 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:33 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:39 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:71 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:84 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.can_send:4 +#: ../../../discord/member.py:docstring of discord.member.Member:62 +#: ../../../discord/member.py:docstring of discord.member.Member.mentioned_in:8 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:7 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:13 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:19 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:25 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:33 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:39 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:49 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:67 +#: ../../../discord/message.py:docstring of discord.message.Attachment:90 +#: ../../../discord/message.py:docstring of discord.message.Message:23 +#: ../../../discord/message.py:docstring of discord.message.Message:85 +#: ../../../discord/message.py:docstring of discord.message.Message:138 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:39 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:65 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding:15 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:33 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:39 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:45 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:38 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:56 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:33 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:42 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:48 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:60 +#: ../../../discord/reaction.py:docstring of discord.reaction.ReactionCountDetails:13 +#: ../../../discord/role.py:docstring of discord.role.Role:59 +#: ../../../discord/role.py:docstring of discord.role.Role:81 +#: ../../../discord/role.py:docstring of discord.role.Role:87 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:53 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:47 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.can_send:4 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:95 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:101 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:108 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.can_send:4 +#: ../../../discord/user.py:docstring of discord.user.BaseUser.mentioned_in:8 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:55 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:63 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:69 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:81 +#: ../../../discord/user.py:docstring of discord.user.User:55 +#: ../../../discord/user.py:docstring of discord.user.User:61 +#: ../../../discord/widget.py:docstring of discord.user.BaseUser.mentioned_in:8 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:43 +#: 55766eb1c16d48b9a0c2abbf506e9b9e +#: df0105c172b14940b0ce5d8fb044beee +#: 086298bde6d3427996bb79be49ab9aec +#: 9c07a12592d74668bddd9fa2ad17b925 +#: 1073ecfb4a744835bbfaeda3378c9886 +#: 11c2f9ea736642a693a9574bc0b22721 +#: ef47610b7fd44937a5ef4143f95f5fc0 +#: 200ce5183d284487b83477bba2b7c24f +#: 91ee58c33d2848ed8446bec74e5c8c94 +#: 975fd0fa469044a8a9710bc449dee9bc +#: 6afc41742da04070adb35652a57c9da3 +#: 7e4e194346944a07bc961f3e35ff72bd +#: 3033e6f13ed54783b7677f34108bf609 +#: c553482c64d74d31a199dacf7d704993 +#: 60abce50c46249439a7420028aa5b862 +#: 12dadc55d4ba4391961b514f8a8f42cb +#: 4003d244e62a42b7ab7815a5cfe25417 +#: ae2156faa6f64461abb53909ccabe94a +#: 5fa3865947e547d3861918f336602cc1 +#: 789166acd786435a96c38745c7816111 +#: 105352a161e5411ba6f61e2fc15386f2 +#: 94f78f94eef14c5eab8e517a73ffd096 +#: e0e606cdfb3344ea9a2910bb9d83e6de +#: ffb3dc1bff1343b9a69bd7bd94289cef +#: 21d89e71e8b84b7ea2afdb3b82c26c07 +#: 0fc3be486f3b423da7bc607b592c9e7c +#: 24c8e520b8a64e1b985739e53ed463bc +#: afe0c59747ee4a43b812d58594001451 +#: 672f9b3780724032b26e6627e52d3591 +#: f89aa2fc767048f9b9414df39ccb147b +#: aed4fc542c3c49dd9f4ffe40e456a225 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: c0f57792bcc94fe6a59671a5e2fb01b3 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: c0f57792bcc94fe6a59671a5e2fb01b3 +#: c0f57792bcc94fe6a59671a5e2fb01b3 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: c0f57792bcc94fe6a59671a5e2fb01b3 +#: 8dd5694c8ba7416c96e14265ef887819 +#: c0f57792bcc94fe6a59671a5e2fb01b3 +#: 8dd5694c8ba7416c96e14265ef887819 +#: c0f57792bcc94fe6a59671a5e2fb01b3 +#: c0f57792bcc94fe6a59671a5e2fb01b3 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +#: 8dd5694c8ba7416c96e14265ef887819 +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:11 +#: 4e168944987344bba51eddacf973f7d4 +msgid "Indicates if the user is currently muted by the guild." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:17 +#: 9875674d947d4f31b35f6d3a57996149 +msgid "Indicates if the user is currently muted by their own accord." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:23 +#: 089ad680a6c643b9935e870ac1bc364d +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:29 +#: 6c6d13d9551e4ff7a6b6d531c1d196ca +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:37 +#: 5cc560cd8bcf4b94823207cc822ad75c +msgid "Indicates if the user is currently broadcasting video." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:43 +#: 06d90bf0834b4f71b75e975612ee0644 +msgid "Indicates if the user is suppressed from speaking." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:45 +#: 400787b0d95d4aed99a0a29fb34c711a +msgid "Only applies to stage channels." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:53 +#: c6f155a526404a928c64818aa2e3e40f +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:57 +#: 3cb3767a09b54e99b0f689f6dfcbd40e +msgid "Only applicable to stage channels." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:125 +#: ../../../discord/member.py:docstring of discord.member.Member:30 +#: ../../../discord/member.py:docstring of discord.member.Member:69 +#: ../../../discord/member.py:docstring of discord.member.Member:77 +#: ../../../discord/member.py:docstring of discord.member.VoiceState:61 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:51 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:128 +#: bd59fe44ce914d0285c9bd326f4f62ad +#: 0dd0b8ab160843ff8798020ac2f60772 +#: 0dd0b8ab160843ff8798020ac2f60772 +#: 0dd0b8ab160843ff8798020ac2f60772 +#: 0dd0b8ab160843ff8798020ac2f60772 +#: 0dd0b8ab160843ff8798020ac2f60772 +#: 0dd0b8ab160843ff8798020ac2f60772 +msgid "Optional[:class:`datetime.datetime`]" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:65 +#: 309697c5722a42ab82a6fba34345d73b +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:71 +#: 52c3b08b0e2648b88bccee6b6ca24e56 +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.VoiceState:74 +#: 035717ca83284d6f87bf02244eb995d9 +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:1 +#: 5ee3c89ba12a4b97861e1536c42d843d +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:4 +#: f0dc803cf2f841e9a63f0f53916c6748 +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:6 +#: 3b17bb6aee87426a8954360e77bfaf57 +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:14 +#: 9b71a5537ffc44ed88015a1b14bb8f7d +msgid "Checks if two partial messageables are equal." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:18 +#: 5b8ad364746c434d99276855f965a84f +msgid "Checks if two partial messageables are not equal." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:22 +#: 17317a1964e741529f60995ac19f5717 +msgid "Returns the partial messageable's hash." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:26 +#: fa864924ff55465baeeeb587848822fa +msgid "The channel ID associated with this partial messageable." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:32 +#: 024a39c377b74088a8e5d21409e13189 +msgid "The channel type associated with this partial messageable, if given." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable:34 +#: f69b9d38552d4efd9d7f1beb314b5d4b +msgid "Optional[:class:`ChannelType`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.can_send:1 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.can_send:1 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.can_send:1 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.can_send:1 +#: ee064c6766394f2fa4a28f0119527874 +#: 2047ab6ff868447b8b80f9ec9ec486df +#: a55a872065654b93971d8c6ecb32ddcf +#: a55a872065654b93971d8c6ecb32ddcf +#: a55a872065654b93971d8c6ecb32ddcf +#: a55a872065654b93971d8c6ecb32ddcf +#: a55a872065654b93971d8c6ecb32ddcf +#: a55a872065654b93971d8c6ecb32ddcf +#: a55a872065654b93971d8c6ecb32ddcf +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.can_send:3 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.can_send:3 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.can_send:3 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.can_send:3 +#: 14d2bfd03a6e469d8ee65a8d101afb5f +#: 8d0ce9e20b7c4622b2f7c96ac7e3f046 +#: 2e7906ec63d841a4878301bd49409146 +#: 2e7906ec63d841a4878301bd49409146 +#: 2e7906ec63d841a4878301bd49409146 +#: 2e7906ec63d841a4878301bd49409146 +#: 2e7906ec63d841a4878301bd49409146 +#: 2e7906ec63d841a4878301bd49409146 +#: 2e7906ec63d841a4878301bd49409146 +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.can_send:6 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.can_send:6 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.can_send:6 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.can_send:6 +#: 0384c1134c80472eac35ba53c22d90ff +#: b05306d39e7845898a8908e0817898fb +#: f3e0f8c526b743fdb038573a85012d71 +#: f3e0f8c526b743fdb038573a85012d71 +#: f3e0f8c526b743fdb038573a85012d71 +#: f3e0f8c526b743fdb038573a85012d71 +#: f3e0f8c526b743fdb038573a85012d71 +#: f3e0f8c526b743fdb038573a85012d71 +#: f3e0f8c526b743fdb038573a85012d71 +msgid "An invalid type has been passed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.fetch_message:3 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.fetch_message:3 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.fetch_message:3 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.fetch_message:3 +#: 0dec3dbb162842d78a61e2d1f4a0da1d +#: 5d3bd874ef084f87ab4ac6c6d08cb08a +#: 25b6541bc41841ccbf8b1649f85a1f9d +#: 25b6541bc41841ccbf8b1649f85a1f9d +#: 25b6541bc41841ccbf8b1649f85a1f9d +#: 25b6541bc41841ccbf8b1649f85a1f9d +#: 25b6541bc41841ccbf8b1649f85a1f9d +#: 25b6541bc41841ccbf8b1649f85a1f9d +#: 25b6541bc41841ccbf8b1649f85a1f9d +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.fetch_message:6 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.fetch_message:6 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.fetch_message:6 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.fetch_message:6 +#: 4ae78ba5a69f45d4a4ae83d62b4802f3 +#: 800b0904653841ea8964dbb973b192ae +#: fdbcb5604d10415c86135acc54b67c0c +#: fdbcb5604d10415c86135acc54b67c0c +#: fdbcb5604d10415c86135acc54b67c0c +#: fdbcb5604d10415c86135acc54b67c0c +#: fdbcb5604d10415c86135acc54b67c0c +#: fdbcb5604d10415c86135acc54b67c0c +#: fdbcb5604d10415c86135acc54b67c0c +msgid "The message ID to look for." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.fetch_message:9 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.fetch_message:9 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.fetch_message:9 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.fetch_message:9 +#: c2f7f6b8b80e4041818f55005ce8b67a +#: 11df635629de48ef8f9d38590f9f8676 +#: e18b1b81cff840a99be2aaac63a6f05e +#: e18b1b81cff840a99be2aaac63a6f05e +#: e18b1b81cff840a99be2aaac63a6f05e +#: e18b1b81cff840a99be2aaac63a6f05e +#: e18b1b81cff840a99be2aaac63a6f05e +#: e18b1b81cff840a99be2aaac63a6f05e +#: e18b1b81cff840a99be2aaac63a6f05e +msgid "The message asked for." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.fetch_message:10 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:100 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.fetch_message:10 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:100 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.fetch_message:10 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:100 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.fetch_message:10 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:100 +#: 0e44b08a661a4e4cb8977253c1a1fce1 +#: eeb551cbf2bc4573a7518a774f0ab3e2 +#: 54db8105f8b44c2cb4f23b1d50d1686f +#: 6e0a7e5d3ecd440881fcaf5c610130f0 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +#: e0e1920c1d0342bab09dc720dc295044 +msgid ":class:`~discord.Message`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.fetch_message:12 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.fetch_message:12 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.fetch_message:12 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.fetch_message:12 +#: 9ae4e78f4cbb4eab83ecc6f4fabaf8cc +#: 818359f01e9b4e949e0d69159449dd63 +#: 6f8b6217053e47479783af39a2aff1f6 +#: 6f8b6217053e47479783af39a2aff1f6 +#: 6f8b6217053e47479783af39a2aff1f6 +#: 6f8b6217053e47479783af39a2aff1f6 +#: 6f8b6217053e47479783af39a2aff1f6 +#: 6f8b6217053e47479783af39a2aff1f6 +#: 6f8b6217053e47479783af39a2aff1f6 +msgid "The specified message was not found." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.fetch_message:13 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.fetch_message:13 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.fetch_message:13 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.fetch_message:13 +#: 1c4b5de6d0084edfb0c36ddc586cd125 +#: 87b677120b8244279256a5f0d5ba6cb3 +#: 013831d1e99644938c6dd757927e6079 +#: 013831d1e99644938c6dd757927e6079 +#: 013831d1e99644938c6dd757927e6079 +#: 013831d1e99644938c6dd757927e6079 +#: 013831d1e99644938c6dd757927e6079 +#: 013831d1e99644938c6dd757927e6079 +#: 013831d1e99644938c6dd757927e6079 +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.fetch_message:14 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.fetch_message:14 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.fetch_message:14 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.fetch_message:14 +#: 1e046de530f5431fa8a01caec3544a8a +#: a04b7c15a11f4d91b3ef716d191fc2e5 +#: 72cd9cf4d7734dba8283d21a3e6a2960 +#: 72cd9cf4d7734dba8283d21a3e6a2960 +#: 72cd9cf4d7734dba8283d21a3e6a2960 +#: 72cd9cf4d7734dba8283d21a3e6a2960 +#: 72cd9cf4d7734dba8283d21a3e6a2960 +#: 72cd9cf4d7734dba8283d21a3e6a2960 +#: 72cd9cf4d7734dba8283d21a3e6a2960 +msgid "Retrieving the message failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:1 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:1 +#: a2b5b9f3f9864954a6c95353f0840647 +#: d62bbb3b47734dc5a98c28915226ceb7 +#: 34a4d40c3a264dc996c94056170a151d +#: 34a4d40c3a264dc996c94056170a151d +#: 34a4d40c3a264dc996c94056170a151d +#: 34a4d40c3a264dc996c94056170a151d +#: 34a4d40c3a264dc996c94056170a151d +#: 34a4d40c3a264dc996c94056170a151d +#: 34a4d40c3a264dc996c94056170a151d +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:3 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:3 +#: 1e013f815e324252ba499008afce7129 +#: eeab1364847b4490bc5bf659ea280f89 +#: d846b20a22f54d4bbaf1433acb092177 +#: d846b20a22f54d4bbaf1433acb092177 +#: d846b20a22f54d4bbaf1433acb092177 +#: d846b20a22f54d4bbaf1433acb092177 +#: d846b20a22f54d4bbaf1433acb092177 +#: d846b20a22f54d4bbaf1433acb092177 +#: d846b20a22f54d4bbaf1433acb092177 +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:6 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:6 +#: 62c477d54eab4eb5b3303b8b364c89c4 +#: 2325531f3a304ef38fa74dc2ae0ffc0d +#: cedec68e61774ccd965a29d9620bb85b +#: cedec68e61774ccd965a29d9620bb85b +#: cedec68e61774ccd965a29d9620bb85b +#: cedec68e61774ccd965a29d9620bb85b +#: cedec68e61774ccd965a29d9620bb85b +#: cedec68e61774ccd965a29d9620bb85b +#: cedec68e61774ccd965a29d9620bb85b +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:11 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:11 +#: ad959063203140e2a8fec35d19f3b2c1 +#: d447181fcf274a4f8318c716bd49fd73 +#: b18b7dbe82754883974c8fb7505d4715 +#: b18b7dbe82754883974c8fb7505d4715 +#: b18b7dbe82754883974c8fb7505d4715 +#: b18b7dbe82754883974c8fb7505d4715 +#: b18b7dbe82754883974c8fb7505d4715 +#: b18b7dbe82754883974c8fb7505d4715 +#: b18b7dbe82754883974c8fb7505d4715 +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:16 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:16 +#: aacb6953371648ccb5e72a11bdaabbe0 +#: f56ba8bbb92847e0817c7e5cf592bfae +#: ad29354d07e7456d9ac05382a07917a3 +#: ad29354d07e7456d9ac05382a07917a3 +#: ad29354d07e7456d9ac05382a07917a3 +#: ad29354d07e7456d9ac05382a07917a3 +#: ad29354d07e7456d9ac05382a07917a3 +#: ad29354d07e7456d9ac05382a07917a3 +#: ad29354d07e7456d9ac05382a07917a3 +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:21 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:21 +#: da844572f0ee4e3db1ab88bc0ae53ace +#: 94944dd5859741c495b946a77434e4b3 +#: ddf1d1beab504636ab1745bb2a90b04f +#: ddf1d1beab504636ab1745bb2a90b04f +#: ddf1d1beab504636ab1745bb2a90b04f +#: ddf1d1beab504636ab1745bb2a90b04f +#: ddf1d1beab504636ab1745bb2a90b04f +#: ddf1d1beab504636ab1745bb2a90b04f +#: ddf1d1beab504636ab1745bb2a90b04f +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:28 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:28 +#: 2158e52532114f00b4b65cd0423df2af +#: 2bf2f78c9c8f4a729d8f42921b489c38 +#: 5755a7ad7f454b7cac7a362f9721ba8b +#: 5755a7ad7f454b7cac7a362f9721ba8b +#: 5755a7ad7f454b7cac7a362f9721ba8b +#: 5755a7ad7f454b7cac7a362f9721ba8b +#: 5755a7ad7f454b7cac7a362f9721ba8b +#: 5755a7ad7f454b7cac7a362f9721ba8b +#: 5755a7ad7f454b7cac7a362f9721ba8b +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:0 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:0 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:0 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:0 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:0 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:0 +#: a56a4e26f11646db9973fb9a82041c86 +#: c7f12b2d61ff4ddeac3d4e82b620a453 +#: 27a00c698a184861a3e79a26f6bebd2e +#: 978ec7ef1794400e84a2dba4651a187b +#: 54460f7075c6462b90bb377d32ddffe4 +#: 2227a40f1a6346e1a0dbe7f890162ed3 +#: 004531da24fb489bb78e99a15ce76ef7 +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +#: 5fdbbfc37c264fbdac887a1d265d4d0d +msgid "Yields" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:32 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:32 +#: a02393114810463a8e9d4c9c7191362e +#: 4d8cd2cb40d64e9d8476dc4f2f34ff2e +#: 1362e64547b04b19aa2381aeab3e61a4 +#: 1362e64547b04b19aa2381aeab3e61a4 +#: 1362e64547b04b19aa2381aeab3e61a4 +#: 1362e64547b04b19aa2381aeab3e61a4 +#: 1362e64547b04b19aa2381aeab3e61a4 +#: 1362e64547b04b19aa2381aeab3e61a4 +#: 1362e64547b04b19aa2381aeab3e61a4 +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:34 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:34 +#: aabc54e6131b4d4a81f580c6c926badb +#: 1a061777efb3481fada5ffff633a266f +#: 08bc04473e1c44da9381c5b7866fb287 +#: 08bc04473e1c44da9381c5b7866fb287 +#: 08bc04473e1c44da9381c5b7866fb287 +#: 08bc04473e1c44da9381c5b7866fb287 +#: 08bc04473e1c44da9381c5b7866fb287 +#: 08bc04473e1c44da9381c5b7866fb287 +#: 08bc04473e1c44da9381c5b7866fb287 +msgid "You do not have permissions to get channel message history." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:35 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:35 +#: f2f1efc2d20a4530b8075de51578d2a5 +#: 55b54bcf5eca44b1a17570404a0fe8b5 +#: f77840d45e1943359bf5aa4d7cbafd58 +#: f77840d45e1943359bf5aa4d7cbafd58 +#: f77840d45e1943359bf5aa4d7cbafd58 +#: f77840d45e1943359bf5aa4d7cbafd58 +#: f77840d45e1943359bf5aa4d7cbafd58 +#: f77840d45e1943359bf5aa4d7cbafd58 +#: f77840d45e1943359bf5aa4d7cbafd58 +msgid "The request to get message history failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:36 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:36 +#: 71713b3b7da14660975590d847fa9ea1 +#: 3e3b6a5f5b8c4f55ae00cb8003b37981 +#: ed437085f8744eecbf24ae254b3e43af +#: ed437085f8744eecbf24ae254b3e43af +#: ed437085f8744eecbf24ae254b3e43af +#: ed437085f8744eecbf24ae254b3e43af +#: ed437085f8744eecbf24ae254b3e43af +#: ed437085f8744eecbf24ae254b3e43af +#: ed437085f8744eecbf24ae254b3e43af +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:39 +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:25 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:39 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:48 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:48 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:48 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:35 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:35 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:63 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:56 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:29 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:27 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:38 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:48 +#: 966fbbaa61a846aa9b633dbfc1ee5c60 +#: ad7ad919296e43aa91303b7877fb6571 +#: 25bd697769214744832fa1612bc8518a +#: ed1cdd19826443bcafb0987ebb091e42 +#: 7b71c6405b814333af85829dd3f29d30 +#: 48f6a2450ed6433da0a303deb56d0dd7 +#: b5677759b9d043b6805db7ae8a3ad143 +#: 5bbda7c77f3240319cda935ecec72876 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +#: bc6b48a124404bd1892f9edada1a6b58 +msgid "Examples" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:40 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:40 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:36 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:30 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:28 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:39 +#: 51b8dfbb15bb43ef95c144c7a5d3f6ba +#: f95b2fa403dc4f92a794b30158d2f431 +#: 745ca57186c14e1785a2e80ce870df80 +#: 01e7cb99a36b47abbce9830768f0aaa7 +#: 7a9234e954ec4317a5a562863b521268 +#: edbc71da771842d3aea9af593db2f036 +#: edbc71da771842d3aea9af593db2f036 +#: edbc71da771842d3aea9af593db2f036 +#: edbc71da771842d3aea9af593db2f036 +#: edbc71da771842d3aea9af593db2f036 +#: edbc71da771842d3aea9af593db2f036 +#: edbc71da771842d3aea9af593db2f036 +#: edbc71da771842d3aea9af593db2f036 +msgid "Usage ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:47 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:47 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:34 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:44 +#: 154df22c3326437ebd9a4d0421852b9e +#: ab788cd1146c42759b597d948a21f602 +#: 976781fce2904a7ea929a7f179bad61a +#: d3f3a3b667f54db189761cb1f7a9880c +#: d3f3a3b667f54db189761cb1f7a9880c +#: d3f3a3b667f54db189761cb1f7a9880c +#: d3f3a3b667f54db189761cb1f7a9880c +#: d3f3a3b667f54db189761cb1f7a9880c +#: d3f3a3b667f54db189761cb1f7a9880c +#: d3f3a3b667f54db189761cb1f7a9880c +#: d3f3a3b667f54db189761cb1f7a9880c +msgid "Flattening into a list: ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:52 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.history:52 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:16 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:10 +#: ../../../discord/member.py:docstring of discord.member.Member.edit:35 +#: 4e0136f8359346d6ae9e6d3eb61aa0d7 +#: f55d483d8f7243539066e1a0a2e89189 +#: ace68b84a7ee43cbb3d166231f224751 +#: eac891cd3dbd47dc9b8fe4be3f905b5b +#: bd8f03a7a627458e993b3312ffe4d046 +#: bd8f03a7a627458e993b3312ffe4d046 +#: bd8f03a7a627458e993b3312ffe4d046 +#: bd8f03a7a627458e993b3312ffe4d046 +#: bd8f03a7a627458e993b3312ffe4d046 +#: bd8f03a7a627458e993b3312ffe4d046 +#: bd8f03a7a627458e993b3312ffe4d046 +#: bd8f03a7a627458e993b3312ffe4d046 +msgid "All parameters are optional." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.pins:3 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.pins:3 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.pins:3 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.pins:3 +#: 4f0650134f1040c6b9ae6622883f8748 +#: 8ca3f84c6e354ac5a6abcc0bf696e629 +#: dc000ded9dd346c096a38a8956dfdc6a +#: dc000ded9dd346c096a38a8956dfdc6a +#: dc000ded9dd346c096a38a8956dfdc6a +#: dc000ded9dd346c096a38a8956dfdc6a +#: dc000ded9dd346c096a38a8956dfdc6a +#: dc000ded9dd346c096a38a8956dfdc6a +#: dc000ded9dd346c096a38a8956dfdc6a +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.pins:7 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.pins:7 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.pins:7 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.pins:7 +#: 5219c84db278497aafcba6d6e944b9fc +#: 816eb61199e34968bfdbee4f24a84ba5 +#: 08b2f9ec55a44bf8a9f0ca1e3fd0c560 +#: 08b2f9ec55a44bf8a9f0ca1e3fd0c560 +#: 08b2f9ec55a44bf8a9f0ca1e3fd0c560 +#: 08b2f9ec55a44bf8a9f0ca1e3fd0c560 +#: 08b2f9ec55a44bf8a9f0ca1e3fd0c560 +#: 08b2f9ec55a44bf8a9f0ca1e3fd0c560 +#: 08b2f9ec55a44bf8a9f0ca1e3fd0c560 +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.pins:11 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.pins:11 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.pins:11 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.pins:11 +#: 549042b4685847aba193e422e7789a14 +#: da415a879e4147c4a0af1d630cc81346 +#: e283aaccd4144d6e95f83432985ac90c +#: e283aaccd4144d6e95f83432985ac90c +#: e283aaccd4144d6e95f83432985ac90c +#: e283aaccd4144d6e95f83432985ac90c +#: e283aaccd4144d6e95f83432985ac90c +#: e283aaccd4144d6e95f83432985ac90c +#: e283aaccd4144d6e95f83432985ac90c +msgid "The messages that are currently pinned." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.pins:12 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.pins:12 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.pins:12 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.pins:12 +#: 875dee04a4ff4712a8b83bd629d6ad29 +#: 64745f109e7948b0a14d1d21ddb9a3ec +#: 1b6e9a8893454a5db4741c00c3bc8031 +#: 1b6e9a8893454a5db4741c00c3bc8031 +#: 1b6e9a8893454a5db4741c00c3bc8031 +#: 1b6e9a8893454a5db4741c00c3bc8031 +#: 1b6e9a8893454a5db4741c00c3bc8031 +#: 1b6e9a8893454a5db4741c00c3bc8031 +#: 1b6e9a8893454a5db4741c00c3bc8031 +msgid "List[:class:`~discord.Message`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.pins:14 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.pins:14 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.pins:14 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.pins:14 +#: 2bc50ccd657f46209917f5d9f4099650 +#: b2f62ff86c1d4e9eaf9d1ea62937f171 +#: 5f422bc795f7480fa14af883be52f572 +#: 5f422bc795f7480fa14af883be52f572 +#: 5f422bc795f7480fa14af883be52f572 +#: 5f422bc795f7480fa14af883be52f572 +#: 5f422bc795f7480fa14af883be52f572 +#: 5f422bc795f7480fa14af883be52f572 +#: 5f422bc795f7480fa14af883be52f572 +msgid "Retrieving the pinned messages failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:3 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:3 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:3 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:3 +#: 2a04455df66145088795dfb431c2b0e9 +#: 66d2246603944b76b2b9c3683d1e1363 +#: ed69aa77f03b4955bbe3d5671c0e8088 +#: ed69aa77f03b4955bbe3d5671c0e8088 +#: ed69aa77f03b4955bbe3d5671c0e8088 +#: ed69aa77f03b4955bbe3d5671c0e8088 +#: ed69aa77f03b4955bbe3d5671c0e8088 +#: ed69aa77f03b4955bbe3d5671c0e8088 +#: ed69aa77f03b4955bbe3d5671c0e8088 +msgid "Sends a message to the destination with the content given." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:5 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:5 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:5 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:5 +#: d514a06a45d546b5af908df5d43dc2cb +#: 33cd3f176f8f4a66aa1bb1de515d839a +#: bb15699719b54825b8d487d07891ab85 +#: bb15699719b54825b8d487d07891ab85 +#: bb15699719b54825b8d487d07891ab85 +#: bb15699719b54825b8d487d07891ab85 +#: bb15699719b54825b8d487d07891ab85 +#: bb15699719b54825b8d487d07891ab85 +#: bb15699719b54825b8d487d07891ab85 +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:9 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:9 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:9 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:9 +#: 70aab3326d8f44e7bacd069c736a0420 +#: ac929a3b993642c4959eb60a184fa042 +#: 724dcfafc4784a6e9190169d5b4ff6fc +#: 724dcfafc4784a6e9190169d5b4ff6fc +#: 724dcfafc4784a6e9190169d5b4ff6fc +#: 724dcfafc4784a6e9190169d5b4ff6fc +#: 724dcfafc4784a6e9190169d5b4ff6fc +#: 724dcfafc4784a6e9190169d5b4ff6fc +#: 724dcfafc4784a6e9190169d5b4ff6fc +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:14 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:14 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:14 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:14 +#: 5d8119f4a9344fd8bb519aebe2645bff +#: 71fcdcc413ae47cb8f3aee3a55f10402 +#: 12384d2719ae45da97444ff82dc4f2d6 +#: 12384d2719ae45da97444ff82dc4f2d6 +#: 12384d2719ae45da97444ff82dc4f2d6 +#: 12384d2719ae45da97444ff82dc4f2d6 +#: 12384d2719ae45da97444ff82dc4f2d6 +#: 12384d2719ae45da97444ff82dc4f2d6 +#: 12384d2719ae45da97444ff82dc4f2d6 +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:20 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:14 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:6 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:20 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:20 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:20 +#: db5a50cea2b24ff4bca646659c4d8cc6 +#: 1f03d90af71148a9a80d108cb0925c4f +#: 67ccce517035472ea66a0b51302a98cb +#: 67ccce517035472ea66a0b51302a98cb +#: 67ccce517035472ea66a0b51302a98cb +#: 67ccce517035472ea66a0b51302a98cb +#: 67ccce517035472ea66a0b51302a98cb +#: 67ccce517035472ea66a0b51302a98cb +#: 67ccce517035472ea66a0b51302a98cb +#: 67ccce517035472ea66a0b51302a98cb +#: 67ccce517035472ea66a0b51302a98cb +msgid "The content of the message to send." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:23 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:17 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:23 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:23 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:23 +#: 6af57bec404e422082a79e523a309932 +#: af87dc0d04b748c4a8a24c800c8496bf +#: 9fce481c33fe4f38ae23dab3e4faf570 +#: 9fce481c33fe4f38ae23dab3e4faf570 +#: 9fce481c33fe4f38ae23dab3e4faf570 +#: 9fce481c33fe4f38ae23dab3e4faf570 +#: 9fce481c33fe4f38ae23dab3e4faf570 +#: 9fce481c33fe4f38ae23dab3e4faf570 +#: 9fce481c33fe4f38ae23dab3e4faf570 +#: 9fce481c33fe4f38ae23dab3e4faf570 +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:26 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:17 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:26 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:26 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:26 +#: 96484f4d35624bdd83b5e136d83bb9ad +#: 8ee729028d6946f9aa0cc6b36c0941c6 +#: 270d2242a6ec45928378eb596ae18294 +#: 270d2242a6ec45928378eb596ae18294 +#: 270d2242a6ec45928378eb596ae18294 +#: 270d2242a6ec45928378eb596ae18294 +#: 270d2242a6ec45928378eb596ae18294 +#: 270d2242a6ec45928378eb596ae18294 +#: 270d2242a6ec45928378eb596ae18294 +#: 270d2242a6ec45928378eb596ae18294 +msgid "The rich embed for the content." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:29 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:23 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:36 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:29 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:29 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:29 +#: 06f3de9c7238498a8af9d93d7325365a +#: 8cb56dd64e2c4c6199d7efaee33d3c2f +#: e16b27219fda4529824444922c14f332 +#: e16b27219fda4529824444922c14f332 +#: e16b27219fda4529824444922c14f332 +#: e16b27219fda4529824444922c14f332 +#: e16b27219fda4529824444922c14f332 +#: e16b27219fda4529824444922c14f332 +#: e16b27219fda4529824444922c14f332 +#: e16b27219fda4529824444922c14f332 +#: e16b27219fda4529824444922c14f332 +msgid "The file to upload." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:32 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:26 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:39 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:32 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:32 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:32 +#: 9b87132b9bb447f8af98bd5da3e604f8 +#: 71a4376c8faa43328c788c7021c3cf72 +#: 3a17a09c33884706a4449b3f40d6cdd6 +#: 3a17a09c33884706a4449b3f40d6cdd6 +#: 3a17a09c33884706a4449b3f40d6cdd6 +#: 3a17a09c33884706a4449b3f40d6cdd6 +#: 3a17a09c33884706a4449b3f40d6cdd6 +#: 3a17a09c33884706a4449b3f40d6cdd6 +#: 3a17a09c33884706a4449b3f40d6cdd6 +#: 3a17a09c33884706a4449b3f40d6cdd6 +#: 3a17a09c33884706a4449b3f40d6cdd6 +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:35 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:35 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:35 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:35 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:35 +#: 55c2f9866dc74139b0feab43272e038d +#: b70a45a4cce344acb40ad3072b10fb24 +#: 88a081070fd044f1962c54e034ac21e6 +#: 88a081070fd044f1962c54e034ac21e6 +#: 88a081070fd044f1962c54e034ac21e6 +#: 88a081070fd044f1962c54e034ac21e6 +#: 88a081070fd044f1962c54e034ac21e6 +#: 88a081070fd044f1962c54e034ac21e6 +#: 88a081070fd044f1962c54e034ac21e6 +#: 88a081070fd044f1962c54e034ac21e6 +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:39 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:39 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:39 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:39 +#: 0682ef24bd354948b962042a67084324 +#: 0f48f9d6b3e741e88aa2c3bc7d806b59 +#: 926fcea09e55478190f384b73306866a +#: 926fcea09e55478190f384b73306866a +#: 926fcea09e55478190f384b73306866a +#: 926fcea09e55478190f384b73306866a +#: 926fcea09e55478190f384b73306866a +#: 926fcea09e55478190f384b73306866a +#: 926fcea09e55478190f384b73306866a +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:39 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:39 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:39 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:39 +#: ab8ae4adffea4ea1ad666e6619212c31 +#: d3f5fee321ed4c12b0d13ef20bc64ede +#: 33fb702867244946add0e91965debb6d +#: 33fb702867244946add0e91965debb6d +#: 33fb702867244946add0e91965debb6d +#: 33fb702867244946add0e91965debb6d +#: 33fb702867244946add0e91965debb6d +#: 33fb702867244946add0e91965debb6d +#: 33fb702867244946add0e91965debb6d +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:44 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:44 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:44 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:44 +#: 75b7f2ddb4c744648d05f3e322561b4c +#: 4e5d6a26919f4ecbbf31c7688e4a63ed +#: a316e7fd64e540af960514409d0e2f77 +#: a316e7fd64e540af960514409d0e2f77 +#: a316e7fd64e540af960514409d0e2f77 +#: a316e7fd64e540af960514409d0e2f77 +#: a316e7fd64e540af960514409d0e2f77 +#: a316e7fd64e540af960514409d0e2f77 +#: a316e7fd64e540af960514409d0e2f77 +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:49 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:49 +#: ../../../discord/message.py:docstring of discord.message.Message.edit:46 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:49 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:49 +#: a046f5017f4b49e8b01e1a6448f58d41 +#: 7837a952a01b4658b8eaca483bdf5339 +#: 14f1d3c69b914877a492f43e66ec40b1 +#: 1d43d14e53314fd98fb480f4c227d8c2 +#: 1d43d14e53314fd98fb480f4c227d8c2 +#: 1d43d14e53314fd98fb480f4c227d8c2 +#: 1d43d14e53314fd98fb480f4c227d8c2 +#: 1d43d14e53314fd98fb480f4c227d8c2 +#: 1d43d14e53314fd98fb480f4c227d8c2 +#: 1d43d14e53314fd98fb480f4c227d8c2 +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:49 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:39 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:40 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:49 +#: ../../../discord/message.py:docstring of discord.message.Message.edit:46 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:49 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:49 +#: 76e68b02a3534b59bb633ccfab46cc5b +#: f47f15229801436fa9101633e7c271e3 +#: 1ff05d97ab3c410cbfab12ff72fc439a +#: d8b69682b7294cac8417eaa4662fb1fb +#: d8b69682b7294cac8417eaa4662fb1fb +#: d8b69682b7294cac8417eaa4662fb1fb +#: d8b69682b7294cac8417eaa4662fb1fb +#: d8b69682b7294cac8417eaa4662fb1fb +#: d8b69682b7294cac8417eaa4662fb1fb +#: d8b69682b7294cac8417eaa4662fb1fb +#: d8b69682b7294cac8417eaa4662fb1fb +#: d8b69682b7294cac8417eaa4662fb1fb +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:59 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:59 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:59 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:59 +#: 2aa113aa350843c58a84928aff36e57e +#: 12ae0cd2debd436ba454389a57dd9578 +#: 4637e02b33794bb39d8bbf9635ea207f +#: 4637e02b33794bb39d8bbf9635ea207f +#: 4637e02b33794bb39d8bbf9635ea207f +#: 4637e02b33794bb39d8bbf9635ea207f +#: 4637e02b33794bb39d8bbf9635ea207f +#: 4637e02b33794bb39d8bbf9635ea207f +#: 4637e02b33794bb39d8bbf9635ea207f +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:59 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:59 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:59 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:59 +#: 6e42ff8967e144e3ae89f80e28a26b06 +#: d16e5a003d5c4a35b2f276da520d2469 +#: 0da0de0227bd4c8b9819086cd5d59cf0 +#: 0da0de0227bd4c8b9819086cd5d59cf0 +#: 0da0de0227bd4c8b9819086cd5d59cf0 +#: 0da0de0227bd4c8b9819086cd5d59cf0 +#: 0da0de0227bd4c8b9819086cd5d59cf0 +#: 0da0de0227bd4c8b9819086cd5d59cf0 +#: 0da0de0227bd4c8b9819086cd5d59cf0 +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:68 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:68 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:68 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:68 +#: 27c40492605d46f4b6d1ec39f44617cb +#: fa82c635e540411192f7b2397d7c3910 +#: a203a5bbf16240e6b0b6018534cfb6cb +#: a203a5bbf16240e6b0b6018534cfb6cb +#: a203a5bbf16240e6b0b6018534cfb6cb +#: a203a5bbf16240e6b0b6018534cfb6cb +#: a203a5bbf16240e6b0b6018534cfb6cb +#: a203a5bbf16240e6b0b6018534cfb6cb +#: a203a5bbf16240e6b0b6018534cfb6cb +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:68 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:68 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:68 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:68 +#: aaeebba9d9a64174b83aa7be6aae9540 +#: 5a1768e861e9461f8e873b9caaaafbe3 +#: f3fbe7c7e9574f468a6adc37e05b90a0 +#: f3fbe7c7e9574f468a6adc37e05b90a0 +#: f3fbe7c7e9574f468a6adc37e05b90a0 +#: f3fbe7c7e9574f468a6adc37e05b90a0 +#: f3fbe7c7e9574f468a6adc37e05b90a0 +#: f3fbe7c7e9574f468a6adc37e05b90a0 +#: f3fbe7c7e9574f468a6adc37e05b90a0 +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:73 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:47 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:73 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:73 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:73 +#: bd4855af588b4e1988b99aac83ede6de +#: 34faeb47cd6d48c5bbd1a5beafac4e49 +#: cf005a229e6e4514a0a1788d1edc0f3e +#: cf005a229e6e4514a0a1788d1edc0f3e +#: cf005a229e6e4514a0a1788d1edc0f3e +#: cf005a229e6e4514a0a1788d1edc0f3e +#: cf005a229e6e4514a0a1788d1edc0f3e +#: cf005a229e6e4514a0a1788d1edc0f3e +#: cf005a229e6e4514a0a1788d1edc0f3e +#: cf005a229e6e4514a0a1788d1edc0f3e +msgid "A Discord UI View to add to the message." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:76 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:76 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:76 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:76 +#: ed29a8c13ec640fa92a87f37475ac04c +#: 00099963c8a84315afd165852b85479e +#: bcf7573f6fb444e38ceeeb4e08a9b320 +#: bcf7573f6fb444e38ceeeb4e08a9b320 +#: bcf7573f6fb444e38ceeeb4e08a9b320 +#: bcf7573f6fb444e38ceeeb4e08a9b320 +#: bcf7573f6fb444e38ceeeb4e08a9b320 +#: bcf7573f6fb444e38ceeeb4e08a9b320 +#: bcf7573f6fb444e38ceeeb4e08a9b320 +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:76 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:20 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:76 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:76 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:76 +#: f103ebfe04b44e86849a58ad2e1e0dfe +#: 1fa752ebb98b48968581074edbd1b6e1 +#: f324a93551a240b98f56ccda5ac85d13 +#: f324a93551a240b98f56ccda5ac85d13 +#: f324a93551a240b98f56ccda5ac85d13 +#: f324a93551a240b98f56ccda5ac85d13 +#: f324a93551a240b98f56ccda5ac85d13 +#: f324a93551a240b98f56ccda5ac85d13 +#: f324a93551a240b98f56ccda5ac85d13 +#: f324a93551a240b98f56ccda5ac85d13 +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:81 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:81 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:81 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:81 +#: b1d45afa98b64e6fa0ac204136beeb14 +#: fef9be1b0ddc4247beb8c8dbc4822665 +#: 4fb386188eb34f18a71304f7add2e62b +#: 4fb386188eb34f18a71304f7add2e62b +#: 4fb386188eb34f18a71304f7add2e62b +#: 4fb386188eb34f18a71304f7add2e62b +#: 4fb386188eb34f18a71304f7add2e62b +#: 4fb386188eb34f18a71304f7add2e62b +#: 4fb386188eb34f18a71304f7add2e62b +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:81 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:29 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:81 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:81 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:81 +#: 50a1e07e506e41859f67cc406b77ce5b +#: f0058a94c72e4c99a07b8ed475f56cd5 +#: 291f28b0846e48b18cf6bf41c291be37 +#: 291f28b0846e48b18cf6bf41c291be37 +#: 291f28b0846e48b18cf6bf41c291be37 +#: 291f28b0846e48b18cf6bf41c291be37 +#: 291f28b0846e48b18cf6bf41c291be37 +#: 291f28b0846e48b18cf6bf41c291be37 +#: 291f28b0846e48b18cf6bf41c291be37 +#: 291f28b0846e48b18cf6bf41c291be37 +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:86 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:46 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:40 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:37 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:86 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:86 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:86 +#: e3b279330bc34955b55950c71551319c +#: a5e4c6e0b2894fd0a8ecc23a1c4d3b5a +#: 5fd776e27b6b4fd59ec695fbd41b251a +#: 5fd776e27b6b4fd59ec695fbd41b251a +#: 5fd776e27b6b4fd59ec695fbd41b251a +#: 5fd776e27b6b4fd59ec695fbd41b251a +#: 5fd776e27b6b4fd59ec695fbd41b251a +#: 5fd776e27b6b4fd59ec695fbd41b251a +#: 5fd776e27b6b4fd59ec695fbd41b251a +#: 5fd776e27b6b4fd59ec695fbd41b251a +#: 5fd776e27b6b4fd59ec695fbd41b251a +#: 5fd776e27b6b4fd59ec695fbd41b251a +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:89 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:89 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:89 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:89 +#: 1bfc49ed975b4dd6803c578b5a1b9a11 +#: 98f82715cfdd4551a4255c4314e32cf3 +#: 7b98f69bb68f41769f08d7f4087f8aca +#: 7b98f69bb68f41769f08d7f4087f8aca +#: 7b98f69bb68f41769f08d7f4087f8aca +#: 7b98f69bb68f41769f08d7f4087f8aca +#: 7b98f69bb68f41769f08d7f4087f8aca +#: 7b98f69bb68f41769f08d7f4087f8aca +#: 7b98f69bb68f41769f08d7f4087f8aca +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:89 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:89 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:89 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:89 +#: 1f656b33b85f44f1b8d7ef979f3fb091 +#: 6f0bd7ae71044d439a4aacd4001103f2 +#: c5df4f33c29747b78f070b6c57fe5c31 +#: c5df4f33c29747b78f070b6c57fe5c31 +#: c5df4f33c29747b78f070b6c57fe5c31 +#: c5df4f33c29747b78f070b6c57fe5c31 +#: c5df4f33c29747b78f070b6c57fe5c31 +#: c5df4f33c29747b78f070b6c57fe5c31 +#: c5df4f33c29747b78f070b6c57fe5c31 +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:94 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:42 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:94 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:94 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:94 +#: b141ceeb37ae4582a08741b71a2246bd +#: d552d88161fd406dbd970c7e913296af +#: 172e6867a25d47b49adfa19666d2445a +#: 172e6867a25d47b49adfa19666d2445a +#: 172e6867a25d47b49adfa19666d2445a +#: 172e6867a25d47b49adfa19666d2445a +#: 172e6867a25d47b49adfa19666d2445a +#: 172e6867a25d47b49adfa19666d2445a +#: 172e6867a25d47b49adfa19666d2445a +#: 172e6867a25d47b49adfa19666d2445a +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:94 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:42 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:94 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:94 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:94 +#: d267e037031c49eb8e18cccf60f0c73f +#: e130dcbd42754c9f8dad4109bb0a107b +#: 4d02fb8bd44244f4ab7c7a7edcc06076 +#: 4d02fb8bd44244f4ab7c7a7edcc06076 +#: 4d02fb8bd44244f4ab7c7a7edcc06076 +#: 4d02fb8bd44244f4ab7c7a7edcc06076 +#: 4d02fb8bd44244f4ab7c7a7edcc06076 +#: 4d02fb8bd44244f4ab7c7a7edcc06076 +#: 4d02fb8bd44244f4ab7c7a7edcc06076 +#: 4d02fb8bd44244f4ab7c7a7edcc06076 +msgid "The poll to send." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:99 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:99 +#: ../../../discord/message.py:docstring of discord.message.Message.reply:8 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:99 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:99 +#: 3a4f436feb9b4de4a168d2d5a14fbb8d +#: 4e9295f65811429bad49c668d0b4d63c +#: 529869019b26467eabd9b22c54f8a337 +#: 5ef39d889467448fa24ecf26ae56b3e5 +#: 5ef39d889467448fa24ecf26ae56b3e5 +#: 5ef39d889467448fa24ecf26ae56b3e5 +#: 5ef39d889467448fa24ecf26ae56b3e5 +#: 5ef39d889467448fa24ecf26ae56b3e5 +#: 5ef39d889467448fa24ecf26ae56b3e5 +#: 5ef39d889467448fa24ecf26ae56b3e5 +msgid "The message that was sent." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:102 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.premium_required:11 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:50 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:102 +#: ../../../discord/message.py:docstring of discord.message.Message.reply:11 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:102 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:102 +#: e115079242b5446f93fb52a4a2929591 +#: 27d01e18735f42969e57b866ee44ac34 +#: 88c91e15b9a246d7ba6c0a0c4a8cd3ca +#: 4fd022a21beb4f86a7a42bb8fc34934c +#: 4fd022a21beb4f86a7a42bb8fc34934c +#: 4fd022a21beb4f86a7a42bb8fc34934c +#: 4fd022a21beb4f86a7a42bb8fc34934c +#: 4fd022a21beb4f86a7a42bb8fc34934c +#: 4fd022a21beb4f86a7a42bb8fc34934c +#: 4fd022a21beb4f86a7a42bb8fc34934c +#: 4fd022a21beb4f86a7a42bb8fc34934c +#: 4fd022a21beb4f86a7a42bb8fc34934c +msgid "Sending the message failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:103 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:103 +#: ../../../discord/message.py:docstring of discord.message.Message.reply:12 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:103 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:103 +#: ae8d9e25950748d7b741fcc4d782933b +#: 653f7d3602144d8e976bf3697fca85f6 +#: 11607a716ca841198785219e0ca22b26 +#: 4505f54833d2487e9273977980d743f3 +#: 4505f54833d2487e9273977980d743f3 +#: 4505f54833d2487e9273977980d743f3 +#: 4505f54833d2487e9273977980d743f3 +#: 4505f54833d2487e9273977980d743f3 +#: 4505f54833d2487e9273977980d743f3 +#: 4505f54833d2487e9273977980d743f3 +msgid "You do not have the proper permissions to send the message." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.send:104 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.send:104 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.send:104 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.send:104 +#: 604cb5ce8f63403583ed85ead7908ba4 +#: cd2845f86cc544029fe38f244567082a +#: 922ccd9a531a4fc2a1b337e4b5b65624 +#: 922ccd9a531a4fc2a1b337e4b5b65624 +#: 922ccd9a531a4fc2a1b337e4b5b65624 +#: 922ccd9a531a4fc2a1b337e4b5b65624 +#: 922ccd9a531a4fc2a1b337e4b5b65624 +#: 922ccd9a531a4fc2a1b337e4b5b65624 +#: 922ccd9a531a4fc2a1b337e4b5b65624 +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.trigger_typing:3 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.trigger_typing:3 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.trigger_typing:3 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.trigger_typing:3 +#: 433a232ac737443cadd8e5f32c10aea4 +#: 0256a90926ae4ba39c97264975e6f972 +#: da262d70dc734e058487c9d9d7fb55da +#: da262d70dc734e058487c9d9d7fb55da +#: da262d70dc734e058487c9d9d7fb55da +#: da262d70dc734e058487c9d9d7fb55da +#: da262d70dc734e058487c9d9d7fb55da +#: da262d70dc734e058487c9d9d7fb55da +#: da262d70dc734e058487c9d9d7fb55da +msgid "Triggers a *typing* indicator to the destination." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.trigger_typing:5 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.trigger_typing:5 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.trigger_typing:5 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.trigger_typing:5 +#: 10bacd45da084132bd3fef9ed8d250ca +#: 9e7da29277964bc586866aee221c4d5a +#: 7fa85cc40e9a4280a73c347dfd23b6c1 +#: 7fa85cc40e9a4280a73c347dfd23b6c1 +#: 7fa85cc40e9a4280a73c347dfd23b6c1 +#: 7fa85cc40e9a4280a73c347dfd23b6c1 +#: 7fa85cc40e9a4280a73c347dfd23b6c1 +#: 7fa85cc40e9a4280a73c347dfd23b6c1 +#: 7fa85cc40e9a4280a73c347dfd23b6c1 +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.delete:12 +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.delete:16 +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:51 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.trigger_typing:8 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.leave:10 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:28 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:28 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.set_status:17 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:28 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.delete:15 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:25 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.chunk:16 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_integration:20 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete:10 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_auto_moderation_rule:13 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_emoji:18 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_sticker:20 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_widget:20 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.kick:20 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.set_mfa_required:16 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.unban:20 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration.delete:17 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:22 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.sync:12 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_response:16 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.delete:14 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:35 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:52 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.pong:11 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_autocomplete_result:11 +#: ../../../discord/invite.py:docstring of discord.invite.Invite.set_scheduled_event:16 +#: ../../../discord/member.py:docstring of discord.abc.Messageable.trigger_typing:8 +#: ../../../discord/member.py:docstring of discord.member.Member.add_roles:25 +#: ../../../discord/member.py:docstring of discord.member.Member.ban:9 +#: ../../../discord/member.py:docstring of discord.member.Member.kick:7 +#: ../../../discord/member.py:docstring of discord.member.Member.move_to:21 +#: ../../../discord/member.py:docstring of discord.member.Member.remove_roles:25 +#: ../../../discord/member.py:docstring of discord.member.Member.remove_timeout:17 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout:17 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout_for:19 +#: ../../../discord/member.py:docstring of discord.member.Member.unban:7 +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:20 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:20 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:11 +#: ../../../discord/message.py:docstring of discord.message.Message.delete:24 +#: ../../../discord/message.py:docstring of discord.message.Message.pin:18 +#: ../../../discord/message.py:docstring of discord.message.Message.publish:14 +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:25 +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:18 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.consume:11 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.delete:10 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.remove:19 +#: ../../../discord/role.py:docstring of discord.role.Role.delete:15 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.delete:9 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.delete:15 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:22 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.delete:15 +#: ../../../discord/threads.py:docstring of discord.abc.Messageable.trigger_typing:8 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:30 +#: ../../../discord/user.py:docstring of discord.abc.Messageable.trigger_typing:8 +#: 86bbc2437e30463eba135081562d8883 +#: 27bc06838ac848c3b0fe0336815bbeac +#: 75890795eb3141649ba62f2337421e6d +#: 9b4d5894f2f7434e8f7a6db8d32e038b +#: 2ee40ebde871468f8f6de6897dac9c7d +#: c79512090a914dba8ab3fa21fd75cc6e +#: cc254c16841e4da597b2cb03121e72a8 +#: d91143a7220f4b34bf74155cb8ae8be8 +#: 14645c52282b4897948d349951d1024a +#: ce4e0e456b5b4d0cba2b85d163688001 +#: 782f366e5ed847f6bf6c788c4f1925ff +#: 3666c2339d0a49e19d24271c3bcba8bd +#: f0af5aeed9c64f9682895d74ab8d663f +#: 9ee6181f007c4587958af0e67b61b634 +#: a3c36d216f0b40c9a7c15665a87b7ddb +#: 93aac34c639a47d9b97c351311f4762b +#: 9b0abd1a428341979fb585f00a3923ac +#: ae96e1efcd9d40988c62cd01273b26ea +#: d6e84ae4d1504d90b0e567c3f8d16ffa +#: d6e84ae4d1504d90b0e567c3f8d16ffa +#: d6e84ae4d1504d90b0e567c3f8d16ffa +#: d6e84ae4d1504d90b0e567c3f8d16ffa +#: d6e84ae4d1504d90b0e567c3f8d16ffa +#: d6e84ae4d1504d90b0e567c3f8d16ffa +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +#: 38872441954a4937b4adbe036302e6e8 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:1 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.typing:1 +#: 507759ccb3074f54855e48e5f971d798 +#: 82ac5b60c6c54cc69673118552352f27 +#: 0d3a00bc83d3498495522af06e5f9829 +#: 0d3a00bc83d3498495522af06e5f9829 +#: 0d3a00bc83d3498495522af06e5f9829 +#: 0d3a00bc83d3498495522af06e5f9829 +#: 0d3a00bc83d3498495522af06e5f9829 +#: 0d3a00bc83d3498495522af06e5f9829 +#: 0d3a00bc83d3498495522af06e5f9829 +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:3 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.typing:3 +#: 8a9ffc24518f4de293cc4b65774a51d8 +#: ae5e1f660cfe4a0b92ae7b946305dec5 +#: b115df81ecdf400cb4077a062bac2160 +#: b115df81ecdf400cb4077a062bac2160 +#: b115df81ecdf400cb4077a062bac2160 +#: b115df81ecdf400cb4077a062bac2160 +#: b115df81ecdf400cb4077a062bac2160 +#: b115df81ecdf400cb4077a062bac2160 +#: b115df81ecdf400cb4077a062bac2160 +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:9 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.typing:9 +#: f38b5698c9964d15a7dd0e1ff97642fd +#: 9267e098f8054f019857c139f7175481 +#: a59c82762ab04a37b73a0ad680efb1c5 +#: a59c82762ab04a37b73a0ad680efb1c5 +#: a59c82762ab04a37b73a0ad680efb1c5 +#: a59c82762ab04a37b73a0ad680efb1c5 +#: a59c82762ab04a37b73a0ad680efb1c5 +#: a59c82762ab04a37b73a0ad680efb1c5 +#: a59c82762ab04a37b73a0ad680efb1c5 +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:12 +#: ../../../discord/channel.py:docstring of discord.abc.Messageable.typing:12 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:10 +#: a9a905b97c2a48ebbf86176eaeee6469 +#: c30c993c97f54668907dcea50623c843 +#: 5a69aa7fa8774768bebc130243d33f24 +#: 5a69aa7fa8774768bebc130243d33f24 +#: 5a69aa7fa8774768bebc130243d33f24 +#: 5a69aa7fa8774768bebc130243d33f24 +#: 5a69aa7fa8774768bebc130243d33f24 +#: 5a69aa7fa8774768bebc130243d33f24 +#: 5a69aa7fa8774768bebc130243d33f24 +#: 5a69aa7fa8774768bebc130243d33f24 +msgid "Example Usage: ::" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.get_partial_message:1 +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable.get_partial_message:1 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.get_partial_message:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.get_partial_message:1 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.get_partial_message:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.get_partial_message:1 +#: 715e396d169947279c18eb2f259bd903 +#: 9b14b15d4eb74f3f82993eca73ef83e5 +#: 9b14b15d4eb74f3f82993eca73ef83e5 +#: 9b14b15d4eb74f3f82993eca73ef83e5 +#: 9b14b15d4eb74f3f82993eca73ef83e5 +#: 9b14b15d4eb74f3f82993eca73ef83e5 +#: 9b14b15d4eb74f3f82993eca73ef83e5 +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.get_partial_message:3 +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable.get_partial_message:3 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.get_partial_message:3 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.get_partial_message:3 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.get_partial_message:3 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.get_partial_message:3 +#: 67179488c7744e83bfcf423722415b13 +#: 823983a7d48b436491e7c7d6c382dd49 +#: 823983a7d48b436491e7c7d6c382dd49 +#: 823983a7d48b436491e7c7d6c382dd49 +#: 823983a7d48b436491e7c7d6c382dd49 +#: 823983a7d48b436491e7c7d6c382dd49 +#: 823983a7d48b436491e7c7d6c382dd49 +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.get_partial_message:9 +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable.get_partial_message:7 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.get_partial_message:9 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.get_partial_message:9 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.get_partial_message:9 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.get_partial_message:9 +#: 843df377ee7c4084b88787836abc669e +#: 98efec157ebb473c808aae14f50e6d61 +#: 98efec157ebb473c808aae14f50e6d61 +#: 98efec157ebb473c808aae14f50e6d61 +#: 98efec157ebb473c808aae14f50e6d61 +#: 98efec157ebb473c808aae14f50e6d61 +#: 98efec157ebb473c808aae14f50e6d61 +msgid "The message ID to create a partial message for." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.get_partial_message:12 +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable.get_partial_message:10 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.get_partial_message:12 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.get_partial_message:12 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.get_partial_message:12 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.get_partial_message:12 +#: 6f2827dab3174ceba9c167c94f8e8b01 +#: 02f2a7118c294c018c9461a938ec529b +#: 02f2a7118c294c018c9461a938ec529b +#: 02f2a7118c294c018c9461a938ec529b +#: 02f2a7118c294c018c9461a938ec529b +#: 02f2a7118c294c018c9461a938ec529b +#: 02f2a7118c294c018c9461a938ec529b +msgid "The partial message." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.get_partial_message:13 +#: ../../../discord/channel.py:docstring of discord.channel.PartialMessageable.get_partial_message:11 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.get_partial_message:13 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.get_partial_message:13 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.get_partial_message:13 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.get_partial_message:13 +#: 125d07572d5c4fa4bafff84e471385ed +#: 5d6e1bf5a673406c9a939d94eda6212d +#: 5d6e1bf5a673406c9a939d94eda6212d +#: 5d6e1bf5a673406c9a939d94eda6212d +#: 5d6e1bf5a673406c9a939d94eda6212d +#: 5d6e1bf5a673406c9a939d94eda6212d +#: 5d6e1bf5a673406c9a939d94eda6212d +msgid ":class:`PartialMessage`" +msgstr "" + +#: ../../api/models.rst:53 +#: 51c19b229c5b4c04bbac59e131da1dfb +msgid "Users" +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:1 +#: 49763b094f654c97ac5092643e51ac66 +msgid "Represents your Discord user." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:7 +#: ../../../discord/user.py:docstring of discord.user.User:7 +#: 8528f633c43f4dfba2b972dc62785542 +#: bb87a910467b4f62bb1f394dd32e6575 +msgid "Checks if two users are equal." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:11 +#: ../../../discord/user.py:docstring of discord.user.User:11 +#: 85c8883463c64892b2d113641e57cfc0 +#: b8d07fcfe0c44217895443aebd19f908 +msgid "Checks if two users are not equal." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:15 +#: ../../../discord/user.py:docstring of discord.user.User:15 +#: d143943b4ab946ab950eb1f7171cd587 +#: 50bf005b5c574b58839952b19464b208 +msgid "Return the user's hash." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:19 +#: ../../../discord/user.py:docstring of discord.user.User:19 +#: 1add853063144abda929fa08b980265c +#: 28a3ceb054d74237b1ad21a28be2a934 +msgid "Returns the user's name with discriminator or global_name." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:23 +#: ../../../discord/user.py:docstring of discord.user.User:23 +#: df577759b9bb40b891e952c0fc8d7856 +#: 094c51e2dd284606a8ffe35e059f9d9e +msgid "The user's username." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModActionMetadata:27 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:33 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:27 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:25 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:27 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:25 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:25 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:33 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:27 +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:15 +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:27 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:15 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:27 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationAccount:9 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationAccount:15 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:15 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:27 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:33 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:15 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:27 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:61 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:73 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:79 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:31 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:59 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:28 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:28 +#: ../../../discord/message.py:docstring of discord.message.Attachment:52 +#: ../../../discord/message.py:docstring of discord.message.Attachment:68 +#: ../../../discord/message.py:docstring of discord.message.Attachment:76 +#: ../../../discord/message.py:docstring of discord.message.Attachment:130 +#: ../../../discord/message.py:docstring of discord.message.Message:43 +#: ../../../discord/monetization.py:docstring of discord.SKU.url:3 +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:27 +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:33 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:21 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:33 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:92 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:98 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:104 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:50 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:29 +#: ../../../discord/role.py:docstring of discord.role.Role:47 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:33 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:41 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:23 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:35 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:66 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:23 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:35 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:23 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:35 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:53 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:23 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:41 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:23 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:29 +#: ../../../discord/template.py:docstring of discord.template.Template:9 +#: ../../../discord/template.py:docstring of discord.template.Template:21 +#: ../../../discord/template.py:docstring of discord.template.Template:27 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:27 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:25 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:41 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:49 +#: ../../../discord/user.py:docstring of discord.user.User:25 +#: ../../../discord/user.py:docstring of discord.user.User:41 +#: ../../../discord/user.py:docstring of discord.user.User:49 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookChannel:17 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookGuild:17 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen:9 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreenChannel:15 +#: ../../../discord/widget.py:docstring of discord.widget.Widget:27 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:31 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:31 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:37 +#: b181e837ebe24f42aed74532d371c2d6 +#: 6ab9e38fee2f4f6cb94faa9a8b05a91c +#: cd70408c99084152b7be0bcf7f009b7e +#: 956a1abeaf574fbfba3816ea1bfa1d1b +#: 23e632a55bcf4949b35edf2b13661d83 +#: 829531878901473f909b329033e932a3 +#: e3867aa2a5734ede9dfd2b008ef82ff6 +#: 8cdd313032d24f41a003933efa33756e +#: 34f8a3e93d424eff88254983dd3736a7 +#: d8bb4e332f9e4288aa8952e99c0043df +#: 67c2d7ad9e4f432590e0941a54d9e9be +#: 3a3a7e1226884523b0ba2364ba0ceaf7 +#: f4cb9643a4f54f8986a504914866acdd +#: 9301fc895bdf4d5781a1ffa99a0ed169 +#: d0d100cfdca84ec6bd94d1435523e5fb +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 3f94ada44c5a4e4f96a478f2eba12ba9 +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:29 +#: ../../../discord/user.py:docstring of discord.user.User:29 +#: 7d59402a16e54f61a97fdc966dfa756c +#: db789a3e10764d59b4328ce02560ff1f +msgid "The user's unique ID." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:35 +#: ../../../discord/user.py:docstring of discord.user.User:35 +#: 4fe49248ca6a4cf19931a37f31753734 +#: 095164b434774a8bad94f6e92b646e03 +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:39 +#: 5e07121932524ee29d2d94f465d1c951 +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:45 +#: ../../../discord/user.py:docstring of discord.user.User:45 +#: ced530d2472048d0a529cf1cf1c91d86 +#: f5d700742ed5457cbd1652439db6a54f +msgid "The user's global name." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:53 +#: ../../../discord/user.py:docstring of discord.user.User:53 +#: 6f1c81c727e7490db10e1647ddc6868b +#: 855b4c1de89b43c29aea9b3c7d9b52cd +msgid "Specifies if the user is a bot account." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:59 +#: ../../../discord/user.py:docstring of discord.user.User:59 +#: e5ec8e04dabb4b16903f766258769106 +#: ca90bc81cd8c464bb9df1041c691bbba +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:67 +#: d090cfb32c5c430eb430718db10c5c78 +msgid "Specifies if the user's email is verified." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:73 +#: 4b08f5755ce949d2a448e13b2eef2ad6 +msgid "The IETF language tag used to identify the language the user is using." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:53 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:57 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:45 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:49 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:106 +#: ../../../discord/components.py:docstring of discord.components.Button:23 +#: ../../../discord/components.py:docstring of discord.components.Button:29 +#: ../../../discord/components.py:docstring of discord.components.Button:41 +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:28 +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:34 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:111 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:173 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:21 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:85 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:52 +#: ../../../discord/member.py:docstring of discord.member.Member:54 +#: ../../../discord/message.py:docstring of discord.message.Attachment:61 +#: ../../../discord/message.py:docstring of discord.message.Attachment:82 +#: ../../../discord/message.py:docstring of discord.message.Attachment:98 +#: ../../../discord/message.py:docstring of discord.message.Attachment:114 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:39 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:32 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:39 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:21 +#: ../../../discord/role.py:docstring of discord.role.Role:102 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:39 +#: ../../../discord/user.py:docstring of discord.user.ClientUser:75 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:55 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:61 +#: ../../api/models.rst:140 +#: dc1d35b84de04aa694c7b09e76c9f5ab +#: 7a2d9ca6781d4f33b2f9fa33a78e4bcc +#: 9c465eb7704a47f9811d7160f3bd5935 +#: cdc5ce07494d46818ca2ced81397e2b3 +#: 7c77b2ea3750497e96dc19203a13f276 +#: f2fec74b5ab74ff4b1cab4cf1a188256 +#: cb5ae2be4f6d4d089f1885ce659a538d +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +#: 304736d9c87440b1b4d8f573adc7def8 +msgid "Optional[:class:`str`]" +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser:79 +#: 77e76f500b0d41cab105a37f20f3ad74 +msgid "Specifies if the user has MFA turned on and working." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:3 +#: d9f3769ee435454a9f5f69bb052d6fbd +msgid "Edits the current profile of the client." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:7 +#: ddef82e80a74417389ee7da8cc6ecbce +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:12 +#: c719af29fc1e42aa876207e09613e455 +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:14 +#: 9591acd6156c42438b25b366eedcc43e +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:17 +#: bbb407029cbc40d4b9f36f85d7bdaf19 +msgid "The ``banner`` keyword-only parameter was added." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:21 +#: c7d106c643294f50b5844f3da87467c9 +msgid "The new username you wish to change to." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:24 +#: 240db79737fc41138acf16a14ec978c4 +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:28 +#: 08557913597c469eab9f36eb51a20a93 +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:32 +#: c8469d63da8744f4a0201e9a1728a8b7 +msgid "The newly edited client user." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:33 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:31 +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:33 +#: 41d7eb227e4843b2b4b56128122141ed +#: 135fd10138e84d4ba3551678d985b183 +#: 135fd10138e84d4ba3551678d985b183 +msgid ":class:`ClientUser`" +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:35 +#: 18775769dafe4f45b7630eb7d3663fc3 +msgid "Editing your profile failed." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.ClientUser.edit:36 +#: d41a31f1b0584f0cb7cb79920089dc07 +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.accent_color:1 +#: ../../../discord/user.py:docstring of discord.User.accent_color:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.accent_color:1 +#: 6a0f951102c042f1967a6cc3fb063826 +#: 6ab96fcf4f29436e858954fbce53796b +#: 5d42054d5da84f4fbd5c7a1c1f650136 +msgid "Returns the user's accent color, if applicable." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.accent_color:3 +#: ../../../discord/user.py:docstring of discord.User.accent_color:3 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.accent_color:3 +#: 98620bb2a1034ce2a564fe642e2417c6 +#: dbfa0f2b4d2542e2855ee6b9d62771be +#: 1938cce6bef44a45a48d698878cba477 +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.accent_color:9 +#: ../../../discord/user.py:docstring of discord.ClientUser.accent_colour:9 +#: ../../../discord/user.py:docstring of discord.ClientUser.banner:6 +#: ../../../discord/user.py:docstring of discord.User.accent_color:9 +#: ../../../discord/user.py:docstring of discord.User.accent_colour:9 +#: ../../../discord/user.py:docstring of discord.User.banner:6 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.accent_color:9 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.accent_colour:9 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.banner:6 +#: 5b13b7de5a524b0aaf9cc1784c3e14eb +#: 6e1597cc41fb43719f34c784e37f64e7 +#: c08cdcb663f141e5b59ef6b7054e737d +#: 877cf2f74fcf407a8e16e91d17876d07 +#: 4ee137d17b6a442dac436b0e7e6e7913 +#: 80debc8bc8b242619b4535eff3c20814 +#: e0bc6b1e888d4fa680977bfd269d8d8a +#: e0bc6b1e888d4fa680977bfd269d8d8a +#: e0bc6b1e888d4fa680977bfd269d8d8a +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.accent_colour:1 +#: ../../../discord/user.py:docstring of discord.User.accent_colour:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.accent_colour:1 +#: c59947f63fe941bf84cf9f07cdfe2593 +#: fc1973771c3e423ab34b16ab10b22619 +#: 89e0f07e8f4b42c18a916c2fee3a14a4 +msgid "Returns the user's accent colour, if applicable." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.accent_colour:3 +#: ../../../discord/user.py:docstring of discord.User.accent_colour:3 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.accent_colour:3 +#: 04e4c72d96d64ecd921c375be4339ac8 +#: a090b4fb330747bd92cc59742138225c +#: 6b7360e798ae481c9c1808160c5bb033 +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.avatar:1 +#: ../../../discord/user.py:docstring of discord.User.avatar:1 +#: 501c4f6cbdbf42769fff2a35d112d118 +#: 80ce4b40e1d34abdace629cb7a571a4d +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.avatar:3 +#: ../../../discord/user.py:docstring of discord.User.avatar:3 +#: a26030435155406dac323efb28927fe9 +#: 10382ad8465644e3bc34b20641256a9c +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.avatar_decoration:1 +#: ../../../discord/user.py:docstring of discord.User.avatar_decoration:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.avatar_decoration:1 +#: c03fc269038746299c68c4ff20bdcb43 +#: 4e65e66d65cf422f984e2dc18da32a72 +#: af7c151a269941859b5eb927d1052e49 +msgid "Returns the user's avatar decoration, if available." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.banner:1 +#: ../../../discord/user.py:docstring of discord.User.banner:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.banner:1 +#: be1ed8a944cf42bebfcd8d4c6878cdcb +#: 9c4d8e995e424d76994802eb84438e29 +#: 55fa34cde7fb4b2c86ad88d8033f125e +msgid "Returns the user's banner asset, if available." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.color:1 +#: ../../../discord/user.py:docstring of discord.User.color:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.color:1 +#: 0d50a75dd5aa40f4a61fc98fd5b2e577 +#: ca3f1b9b592542c08357b2c0269e41dc +#: 10d4742b9b8f4d08b8afb6128d733ad0 +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.color:5 +#: ../../../discord/user.py:docstring of discord.ClientUser.color:4 +#: ../../../discord/user.py:docstring of discord.User.color:4 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.color:4 +#: d5b77dfdb6414af4bd41ae7661eca6e5 +#: 624b0e883b1d48839b0128ffaafa47e8 +#: 4a11e8cca87344baa2a0b654de88fa39 +#: 4a11e8cca87344baa2a0b654de88fa39 +msgid "There is an alias for this named :attr:`colour`." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.colour:1 +#: ../../../discord/user.py:docstring of discord.User.colour:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.colour:1 +#: 9cec23c320d8469ea36f43da369ed102 +#: e69af87a44364eaf9b5b69d3f66864c7 +#: 2cf635b79df3473c90ac23f164a0427c +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.colour:5 +#: ../../../discord/user.py:docstring of discord.ClientUser.colour:4 +#: ../../../discord/user.py:docstring of discord.User.colour:4 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.colour:4 +#: e2124f67ec9f4267908985a925d278ed +#: 4e371cae01aa4766ab17cff8f76e1efe +#: 2d5f274e11504b99938c8ba60c312acb +#: 2d5f274e11504b99938c8ba60c312acb +msgid "There is an alias for this named :attr:`color`." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.created_at:1 +#: ../../../discord/user.py:docstring of discord.User.created_at:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.created_at:1 +#: b36550ba16734b24b4466af739ed85aa +#: 242c9dfc04694b489e2f7d80df59ded7 +#: 437b006882224342968fb4c368487fe6 +msgid "Returns the user's creation time in UTC." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.created_at:3 +#: ../../../discord/user.py:docstring of discord.User.created_at:3 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.created_at:3 +#: 8221e054b3a6494e9dcbb094d3c44517 +#: c13d536b60be48f5b31de078b4b756b6 +#: 50f3e4ffe5384958b891922303c4be12 +msgid "This is when the user's Discord account was created." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.default_avatar:1 +#: ../../../discord/user.py:docstring of discord.User.default_avatar:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.default_avatar:1 +#: 224eea430fc345f5baaceb1fd1705c4a +#: d4d393857fb64b7e914cd07558fd6602 +#: 038c62b751b84784986d6e29a5dc57c1 +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.display_avatar:1 +#: ../../../discord/user.py:docstring of discord.User.display_avatar:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.display_avatar:1 +#: 3c9e57b8c879411eb7b0a5bce8837eaa +#: 613adc4ebb9d487bb1c10b1b831c265a +#: 91a80ca04f9845d782a0aec709e6342d +msgid "Returns the user's display avatar." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.display_avatar:3 +#: ../../../discord/user.py:docstring of discord.User.display_avatar:3 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.display_avatar:3 +#: fb3482d25d174a26b778b9faf87546c8 +#: d2b170adae3f48cfaca8949892f73fc4 +#: b73981c9e34846df86edd23a8b06acba +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.display_name:1 +#: ../../../discord/user.py:docstring of discord.User.display_name:1 +#: 590fc14655784aab8f2ee70767655abb +#: b7f12013710249f19b27a29d414d549f +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.is_migrated:1 +#: ../../../discord/user.py:docstring of discord.User.is_migrated:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.is_migrated:1 +#: 98d46180481045ac91439bb582984225 +#: 75913c2943e244da9f912797c9315548 +#: 83b3d21571f541efa5c11b1df2216c78 +msgid "Checks whether the user is already migrated to global name." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.jump_url:1 +#: ../../../discord/user.py:docstring of discord.User.jump_url:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.jump_url:1 +#: ed344f416d38414faf37aa0952f5119b +#: a6aab4a6f73b4a558e5a99f75d9d6f09 +#: 71803c743ab04f6487bcc7cd7592ab5c +msgid "Returns a URL that allows the client to jump to the user." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.mention:1 +#: ../../../discord/user.py:docstring of discord.User.mention:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.mention:1 +#: 952afd71f7ee40ee923e5d57e9666246 +#: 7000b4f254244a50968882f86aa22812 +#: 2e4ec00b99904f72a3847aca88c7a818 +msgid "Returns a string that allows you to mention the given user." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.BaseUser.mentioned_in:1 +#: ../../../discord/widget.py:docstring of discord.user.BaseUser.mentioned_in:1 +#: fd752e6addca4ab6b4f098137fa9ce29 +#: 93d3ff64137447f39e0019c80c4df9d2 +#: 54594e8767054e72946033269b0c3592 +msgid "Checks if the user is mentioned in the specified message." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.mentioned_in:4 +#: ../../../discord/user.py:docstring of discord.user.BaseUser.mentioned_in:4 +#: ../../../discord/widget.py:docstring of discord.user.BaseUser.mentioned_in:4 +#: f59645c800104853b49db0b8b46edcbf +#: aeae96f3b68e4982bf78bbc2036c04e5 +#: d7be525e0b7b494d9f5b256e3f118474 +#: d7be525e0b7b494d9f5b256e3f118474 +msgid "The message to check if you're mentioned in." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.BaseUser.mentioned_in:7 +#: ../../../discord/widget.py:docstring of discord.user.BaseUser.mentioned_in:7 +#: 8f7489e0344546199a8c5c066f41a5c2 +#: bc66413bce7f498bac19576ed4b6fbd0 +#: 1cf28790dcb441a19baba9858f83391c +msgid "Indicates if the user is mentioned in the message." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.ClientUser.public_flags:1 +#: ../../../discord/user.py:docstring of discord.User.public_flags:1 +#: ../../../discord/widget.py:docstring of discord.WidgetMember.public_flags:1 +#: 93632cb243b348e9956831b21bdc22a9 +#: 921c002b550040f8b20f075deecaa7e6 +#: ea58197e31bb4b41884a157342d514cc +msgid "The publicly available flags the user has." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.User:1 +#: a5bbb9c41ded42adbbedac8adcab5236 +msgid "Represents a Discord user." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.user.User:39 +#: 2f6617dc2aed416ca5dc1c8d8df0170e +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.User.dm_channel:1 +#: dd9cd5d45b7a4f7d81de8e1843f28922 +msgid "Returns the channel associated with this user if it exists." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.User.dm_channel:3 +#: 7fae4ce246b54d1b92ebaf328f8b65cf +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.User.mutual_guilds:1 +#: b383cc9fafc743aab9219b21184e78ed +msgid "The guilds that the user shares with the client." +msgstr "" + +#: ../../../discord/user.py:docstring of discord.User.mutual_guilds:5 +#: e41db11d00364968bc3168d7ac4c4a02 +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:3 +#: ../../../discord/user.py:docstring of discord.user.User.create_dm:3 +#: 5d3cf60bddbc4c6fad29b9c300b60469 +#: 463038c5ef3f43cd807215436ae90bd7 +msgid "Creates a :class:`DMChannel` with this user." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:5 +#: ../../../discord/user.py:docstring of discord.user.User.create_dm:5 +#: e099032e034b487db2a951a186656094 +#: 7eb7c88b11764472a09211f3e8271341 +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.clone:19 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.clone:19 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.clone:19 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.clone:19 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:8 +#: ../../../discord/user.py:docstring of discord.user.User.create_dm:8 +#: 34c3db924cfe4afba20d42849d8a1d7b +#: 7f0c8d792b204d7eb76a4f9cdbbc9b4a +#: 7f0c8d792b204d7eb76a4f9cdbbc9b4a +#: 7f0c8d792b204d7eb76a4f9cdbbc9b4a +#: 7f0c8d792b204d7eb76a4f9cdbbc9b4a +#: 7f0c8d792b204d7eb76a4f9cdbbc9b4a +#: 7f0c8d792b204d7eb76a4f9cdbbc9b4a +msgid "The channel that was created." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:9 +#: ../../../discord/user.py:docstring of discord.user.User.create_dm:9 +#: 827186088d1d4f689ad318127cf593a4 +#: b6cefe350c984fc3b0fdd3b0b59ea5e6 +msgid ":class:`.DMChannel`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:3 +#: ../../../discord/user.py:docstring of discord.user.User.create_test_entitlement:3 +#: 6f3a14dd55e94eff97233f7cdb9ddded +#: ad1e53c4d8a74c90aea9eac9056fa9a8 +msgid "Creates a test entitlement for the user." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_test_entitlement:6 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:6 +#: ../../../discord/user.py:docstring of discord.user.User.create_test_entitlement:6 +#: 52b7f3d178ba45879ca736db726309ac +#: 2812004ba59d451cacbb47175f8796f9 +#: 2812004ba59d451cacbb47175f8796f9 +msgid "The SKU to create a test entitlement for." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_test_entitlement:9 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:9 +#: ../../../discord/user.py:docstring of discord.user.User.create_test_entitlement:9 +#: 688251e620db45399e35182ab313f053 +#: 31ce2a2adcdb4fc0adc3e688aed0d2b0 +#: 31ce2a2adcdb4fc0adc3e688aed0d2b0 +msgid "The created entitlement." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_test_entitlement:10 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:10 +#: ../../../discord/user.py:docstring of discord.user.User.create_test_entitlement:10 +#: ed4f4ebe3d314273a8db0f388ad10891 +#: 6473a06d5de84d299e4903e3cb389bac +#: 6473a06d5de84d299e4903e3cb389bac +msgid ":class:`Entitlement`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:1 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:1 +#: ae059b12f7be4225823a1ebe75b9caa2 +#: 024d66d0841244cab9d49a97deb4c5e5 +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:3 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:3 +#: 73ee380e8eaa49b1985d9e76d0ce3011 +#: e10285f0eb4f48e8b6564c9263859412 +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:8 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:8 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:8 +#: 191945eb971249b586dd09f0a363f167 +#: 8a837858c9c74dd78408d01365b40b96 +#: 8a837858c9c74dd78408d01365b40b96 +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:11 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:11 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:11 +#: 6aa172e940f144f98ef4d69e388b7e00 +#: 19c5cfcf169d466a949ae4cad69dd539 +#: 19c5cfcf169d466a949ae4cad69dd539 +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:16 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:16 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:16 +#: 3be018fd0820429f800ddf00c58423ea +#: 960251d52e934e4c92c9bd0a0aa77ea8 +#: 960251d52e934e4c92c9bd0a0aa77ea8 +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:21 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:21 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:21 +#: 2f95d22d8cda40e587765c256f57bfe6 +#: ccc5662bbccc488a8bd98f228735b700 +#: ccc5662bbccc488a8bd98f228735b700 +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:26 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:26 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:26 +#: cb8af2a165a445fa87148c0efa867904 +#: 45683405846449d59048c3085f095887 +#: 45683405846449d59048c3085f095887 +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:30 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:30 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:30 +#: 2fcb0d10765c4c01b53a633d1e7749f0 +#: c089af58b0c7402cb4dee2dcb39632a4 +#: c089af58b0c7402cb4dee2dcb39632a4 +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:32 +#: ../../../discord/member.py:docstring of discord.member.flatten_user..generate_function..general:32 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:32 +#: dfae8467fd154ea5b8777569e61e764e +#: 7a9d13bf49744fff9c9bf9f66c88f6bc +#: 4477dcd6cf974b189ffa8308bef5b349 +msgid "Retrieving the entitlements failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:34 +#: ../../../discord/user.py:docstring of discord.user.User.entitlements:34 +#: add5fc2b3b474b48963f5e2d57af8ad3 +#: 87e7437ba3dd4295bcf7317cc8932738 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr "" + +#: ../../api/models.rst:75 +#: e2f6fc6b14cf443e9ffd5ee366ab35b0 +msgid "Messages" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:1 +#: 610ab4299cf34098b4fc7626fa9f4515 +msgid "Represents an attachment from Discord." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:7 +#: 36cbed8c5d6c44508ac29609b3fb8a2e +msgid "Returns the URL of the attachment." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:11 +#: eb4d45edb6984c1aae6adf406962d755 +msgid "Checks if the attachment is equal to another attachment." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:15 +#: c719b7728d734c2d872dd919ae331934 +msgid "Checks if the attachment is not equal to another attachment." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:19 +#: 54133d6dd993488ba10e3caf08a4c2fc +msgid "Returns the hash of the attachment." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:21 +#: 0c575e35aef5425b94a0dff90e2e0231 +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:26 +#: 8c174bbfd44147ecb1d712933fa3aa4e +msgid "The attachment ID." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:32 +#: cad88e03745e4898b486276d5648803c +msgid "The attachment size in bytes." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:38 +#: a2938bf7c9b44e4e9bca2663a729afaf +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:46 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:43 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:60 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:67 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:126 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:51 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:58 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:100 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:43 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:56 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:63 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:106 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:43 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:50 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:87 +#: ../../../discord/components.py:docstring of discord.components.Button:53 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:87 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:97 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:105 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:190 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:201 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:42 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:24 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:36 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:35 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:42 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:109 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:116 +#: ../../../discord/message.py:docstring of discord.message.Attachment:40 +#: ../../../discord/message.py:docstring of discord.message.Attachment:46 +#: ../../../discord/message.py:docstring of discord.message.Message:126 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:44 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:53 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:66 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:79 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:27 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:33 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:19 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:15 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:13 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:23 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:26 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:21 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:19 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:27 +#: ../../../discord/role.py:docstring of discord.role.RoleTags:15 +#: ../../../discord/role.py:docstring of discord.role.RoleTags:21 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:70 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:78 +#: ../../../discord/threads.py:docstring of discord.Thread.category_id:4 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:61 +#: 8a0504dbcaec4f5ca2890730091a5b6a +#: 4eda47990854400088b81bf7ad06b60b +#: f55fe32c1fb5446182de1835f38e3e5f +#: 32bfaad9dc0e42aba5a769f9c2139168 +#: 62e39fcf170c47679b6cd7bf3c126f84 +#: 861419498d894bd392b618fafce8f153 +#: cc7340cf856c432a8a37d01487f45c4c +#: 16aa462320ca4ecfbe0d2390f73def67 +#: a53dd3b06e6747ce830d157361089b45 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: f50b8fb8640844a6933c62864952effb +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +#: 310192c648264bc086b55a67115104f5 +msgid "Optional[:class:`int`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:44 +#: 5ef4f4ec93704176ab793181a849f05f +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:50 +#: 1578fbf5297d4be08834fd1ee5ef1fe5 +msgid "The attachment's filename." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:56 +#: 958d5b5f3b08410aa5055b2450fc39f1 +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:65 +#: ee16dbcd50b74902b088cad9dcd1cccf +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:72 +#: 992e18f11a9c4994b41a6e9c411d60de +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:80 +#: 3afcc47a746b41ef962d8970c735e85c +msgid "The attachment's `media type `_." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:86 +#: 1bc86b04dd0e4e3ab62f5abb1fa5a191 +msgid "Whether the attachment is ephemeral or not." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:94 +#: 3f39cbfb9d7b4acdbbbbb44af1a4a044 +msgid "The attachment's description." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:102 +#: 41a146e92e5c4b14b97610c414598c5f +msgid "The duration of the audio file (currently for voice messages)." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:106 +#: 5e36ab69e24a4e9281fef9f23b4e9417 +msgid "Optional[:class:`float`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:110 +#: eff44c3749674e1fbbf4b67f51584aa1 +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:118 +#: 8d72571d6ca849d6a35b59f075db944f +msgid "Extra attributes of the attachment." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:122 +#: ab0f888b90cd441e98e12a4233f6a5ca +msgid ":class:`AttachmentFlags`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment:126 +#: eb66ce493d6144a692880c2d020256d8 +msgid "The unique signature of this attachment's instance." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.Attachment.expires_at:1 +#: 7a7e3e6209bd4c15afc6752b8c74040e +msgid "This attachment URL's expiry time in UTC." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.Attachment.issued_at:1 +#: 581eda75240949569707cd63ac09c7a8 +msgid "The attachment URL's issue time in UTC." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.is_spoiler:1 +#: 49b18fc268034c8db39371a3fc32c865 +msgid "Whether this attachment contains a spoiler." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.save:3 +#: c25732e0908f4dd8bd7a864809412d0d +msgid "Saves this attachment into a file-like object." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.read:8 +#: ../../../discord/message.py:docstring of discord.message.Attachment.save:15 +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:9 +#: 2b5ead79700145a382d76f44023473e0 +#: abdf57698eb34d8982ba647f6da17306 +#: 7aa4f610913d4f9b9a7d74ae16d69eb5 +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.save:26 +#: 3a2517aab81246b4b3b8e32809055a54 +msgid "Saving the attachment failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.read:21 +#: ../../../discord/message.py:docstring of discord.message.Attachment.save:27 +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:29 +#: d18abb0c844745c2807b072262ea7789 +#: ab9fdda4d9474a1086b411042447c7f8 +#: 38a5651d049e4b7e9f01bb38e9760855 +msgid "The attachment was deleted." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.read:3 +#: 89527552ebbd4d409dcce3694f51a99b +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.read:16 +#: 1bad3cdd715542a994765eeb1d5cc225 +msgid "The contents of the attachment." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.read:19 +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:27 +#: 50fc85816460419987fd4b9d6f35c1e0 +#: 4db1799592a342b69f4dff05cb3399aa +msgid "Downloading the attachment failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.read:20 +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:28 +#: 852f492f157c49a49a538a015d3dc7f6 +#: 93df4e1ae9c44fe4ab4e94a66887ed45 +msgid "You do not have permissions to access this attachment" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:3 +#: 512cefc81149403991eb28276fd27583 +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:9 +#: 97c789cd2203402caaf8749a1b36a101 +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:19 +#: c2dc41c458d14511af30641f128b62a7 +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:19 +#: ac21dc598e304ef99add56eb017be309 +msgid "Whether the file is a spoiler." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:24 +#: 3dbef21cef734a099ef0f5b9de18b4b0 +msgid "The attachment as a file suitable for sending." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Attachment.to_file:25 +#: 406bc1fb64024186be3b7ecaf1a02ac3 +msgid ":class:`File`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:1 +#: 10ef3aa25d85405fb59e9ab658bc9eac +msgid "Represents a message from Discord." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:7 +#: c89f0f707b8e46c6a7c6c501bc5f0293 +msgid "Checks if two messages are equal." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:11 +#: 96dc0272315c4528b796e1996105ea53 +msgid "Checks if two messages are not equal." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:15 +#: a4333cfc43cd4aa59cf2da1c96614ce0 +msgid "Returns the message's hash." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:19 +#: 66fcb5e73fa5422b84143f684a703457 +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:27 +#: 1c29cc92950e41328decea6a9493d984 +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:30 +#: ac22c5569dca4c34a8f7f0844f479dab +msgid ":class:`MessageType`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:34 +#: 98463528996a46798fc8efd5aa242dd6 +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:37 +#: 9ca47ce35e334775b050c5fffee921b4 +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:41 +#: 851fad41cfa943068fdd9dc3ce016772 +msgid "The actual contents of the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:47 +#: 539e6d62371d4f8c97f56e84dd29d925 +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:50 +#: e60f3027370f43b693c6d981bf0d4f55 +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:54 +#: 8a97782bb8154337aaaa86c73d5871a6 +msgid "A list of embeds the message has." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:56 +#: 6e668a78acd34b959732d8cbd2667cc0 +msgid "List[:class:`Embed`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:60 +#: 5e7f262f6ee24545b1ca267cfc28867a +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:63 +#: 33f5a93d3c45480890ed9a50bb089b3f +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:67 +#: 9995b387626a431bad40c78cda6d0c9e +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:73 +#: 1b1a4032950945b2a0895fe3c81c3721 +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:77 +#: d7804f1b198444419c99c4772c5d55ac +msgid "Specifies if the message mentions everyone." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:81 +#: 97bbea590d824d1f81373c1ace66ba4a +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:89 +#: 960165a680ad459eac0bbdccfbd7d204 +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:96 +#: f9800bb1f137401aab89591a1a423b6e +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:99 +#: b6bd045fd6c44ad09ef867d9bffbade7 +msgid "List[:class:`abc.User`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:103 +#: 7af63d54c0ff4a8690b5d9607495a1cd +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:106 +#: 011476095d5046498b1c37fad94213e1 +msgid "List[:class:`abc.GuildChannel`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:110 +#: 49955f9ef16d41bf80b7937f4ace197a +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:31 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_roles:12 +#: ../../../discord/message.py:docstring of discord.message.Message:113 +#: a4e4f174c60443c0afb51e724da832d1 +#: 9e75c40ee9b4463aadc399e8db6f6389 +#: 88c4c524c78a4857b913ca8d5973f08d +msgid "List[:class:`Role`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:117 +#: b652db0d948a4908bd0a5f651a230759 +msgid "The message ID." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:123 +#: 786d6374802f4e44b030b2fd41adf862 +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:130 +#: 421e917b62fd42bebe07d3de413ddf85 +msgid "A list of attachments given to a message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:132 +#: f24083bc199542cbbe74419d8abbdb6e +msgid "List[:class:`Attachment`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:136 +#: 2f13ad45fff048719718a0c2788c1d0c +msgid "Specifies if the message is currently pinned." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:142 +#: efef04c240ec4429aa48439dc785b972 +msgid "Extra features of the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:146 +#: 6c7e533bdc934532a1a9ed62d9dd677c +msgid ":class:`MessageFlags`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:150 +#: 55c105f0e8554e7ab630de0a57a2af15 +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:152 +#: f5938125bdc04e539f46f82dae7db0a9 +msgid "List[:class:`Reaction`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:156 +#: 1b8101a6a88346038765fee81ebe3ad4 +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:159 +#: cdd04cf139c9423a92d80149e2b2e150 +msgid "It is a dictionary with the following optional keys:" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:161 +#: 1423a2c02f774bd480ca350e72106b6c +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:162 +#: 21d99256b5c044858d72ec0bdeba7f33 +msgid "``party_id``: The party ID associated with the party." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:164 +#: ../../../discord/message.py:docstring of discord.message.Message:178 +#: f3f5b79ae0264c59b2b8f18457a33604 +#: 11c75525785d4c429178a7a718d68f80 +msgid "Optional[:class:`dict`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:168 +#: 5c638f47368d4db5882b325512edf336 +msgid "The rich presence enabled application associated with this message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:170 +#: 1ae5cbf673ab45ceb3b8e66cc8706099 +msgid "It is a dictionary with the following keys:" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:172 +#: 221c04f455724fcfb9b0a46ddb3939e5 +msgid "``id``: A string representing the application's ID." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:173 +#: 5a6f862aefff4cbcadc74c8ba6271e5c +msgid "``name``: A string representing the application's name." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:174 +#: f4b50c05afeb4dd29178bda7d9f126da +msgid "``description``: A string representing the application's description." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:175 +#: 084d789e62d143e8b725a57852282cd2 +msgid "``icon``: A string representing the icon ID of the application." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:176 +#: ee50f70337d94151a302a61e82dbc029 +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:182 +#: 5582678c2ca8413ca069c56f2492567d +msgid "A list of sticker items given to the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:186 +#: bd86ecd15cc848a8b57ef5dbb7c6f4d4 +msgid "List[:class:`StickerItem`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:190 +#: bb20c61da20940bab181136ef093d900 +msgid "A list of components in the message." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.ActionRow:19 +#: ../../../discord/message.py:docstring of discord.message.Message:194 +#: 67814d733bdf4049865a606a8b8f8cc5 +#: 84f37565d5b54049bca37476a10434b3 +msgid "List[:class:`Component`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:198 +#: 0f10704216da411fa9cb5ea9729a306d +msgid "The guild that the message belongs to, if applicable." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:200 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:35 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:22 +#: ../../docstring of discord.AuthorizingIntegrationOwners.guild:4 +#: c721db13a7b146019d639a9f3f834bf5 +#: 9dd1e8c3b999410fa6625ba6f279c7c7 +#: 9dd1e8c3b999410fa6625ba6f279c7c7 +#: 9dd1e8c3b999410fa6625ba6f279c7c7 +msgid "Optional[:class:`Guild`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:204 +#: c711b5679e6f4001971bdbf17f5a6bc5 +msgid "The interaction associated with the message, if applicable." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:208 +#: 9c695b320a55407a830a789ff0278c51 +msgid "Use :attr:`interaction_metadata` instead." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:210 +#: 4229c74086434a8da37f74044d1d1104 +msgid "Optional[:class:`MessageInteraction`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:214 +#: b1fdf0c3bbfe46aba08110ea038a323e +msgid "The interaction metadata associated with the message, if applicable." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:49 +#: ../../../discord/message.py:docstring of discord.message.Message:218 +#: bc296a912770482a81cf365b4076d957 +#: 465b6273c1434cdf84d1bf9d0bec35d1 +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:222 +#: fbae865071c64c2e9e3f98ada3d37e00 +msgid "The thread created from this message, if applicable." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.get_thread:10 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_thread:10 +#: ../../../discord/message.py:docstring of discord.message.Message:226 +#: d8d7b5cabb804112945544dd9fce00a3 +#: aac45b2defac480591d4ff80dd368aa8 +#: 2654a66e65374bf188f55b35405bed50 +#: 2654a66e65374bf188f55b35405bed50 +msgid "Optional[:class:`Thread`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:230 +#: 976df015627c468c81e129d00a058565 +msgid "The poll associated with this message, if applicable." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:234 +#: b70aff860e5a4c0092f8bc6056c6c429 +msgid "Optional[:class:`Poll`]" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:238 +#: ba8414a14e5247d1891f3fcd6ede7ba5 +msgid "The call information associated with this message, if applicable." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message:242 +#: 2e405f4e197f4b0ba5d54391a69b0d71 +msgid "Optional[:class:`MessageCall`]" +msgstr "" + +#: ../../docstring of discord.Message.raw_mentions:1 +#: d59d70f0cbd743578391ed22b87a8517 +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "" + +#: ../../docstring of discord.Message.raw_mentions:4 +#: bf9876a8435e4fb5a35d45f7ba9ab90a +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "" + +#: ../../docstring of discord.Message.raw_channel_mentions:1 +#: 21f2f539641c4128b9e6858d5de9a5ca +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "" + +#: ../../docstring of discord.Message.raw_role_mentions:1 +#: 61279901d2c144e3a417b89ad6970896 +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "" + +#: ../../docstring of discord.Message.clean_content:1 +#: 5905102b41e94421a8bbe2d3e39e0dc1 +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "" + +#: ../../docstring of discord.Message.clean_content:6 +#: a849cf73f2174ff19747610e465a352d +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "" + +#: ../../docstring of discord.Message.clean_content:11 +#: 69355ee0c0ff4f15a9b729b4ca15c973 +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.Message.created_at:1 +#: 55e47beaa3ac4cee992d5883ba04a4c6 +msgid "The message's creation time in UTC." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.Message.edited_at:1 +#: bb1c1cc12b08400f86be29f7d0441b3e +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.Message.jump_url:1 +#: dbcd2c570fa4423cb11ac679697038d6 +msgid "Returns a URL that allows the client to jump to this message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.is_system:1 +#: 902275c17f3c469aa785343359c47fb9 +msgid "Whether the message is a system message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.is_system:3 +#: 380bdbfc46bd4c5899551469cc7e5889 +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../docstring of discord.Message.system_content:1 +#: 6ac96034f537482981cd178d888a47e4 +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "" + +#: ../../docstring of discord.Message.system_content:4 +#: cb529005bb6e428d9a95dbc310bfe671 +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.delete:3 +#: ../../../discord/message.py:docstring of discord.message.Message.delete:3 +#: f3ebcd5f2ae04e4995b614f305c52ccf +#: ad8810e402c64d56a4003b1747b42550 +msgid "Deletes the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:5 +#: 0bbb54d698a1473eb6060514cc3eca99 +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:9 +#: b016c406275e4375a282ef3c913836f1 +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:13 +#: 3e7b8a13ba7745cb878a4b89c7dc35ff +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:17 +#: 7766e3a4eb534510bc1dcafa3f915983 +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.delete:10 +#: ../../../discord/message.py:docstring of discord.message.Message.delete:20 +#: 31dae9bdaac8430bab6b0a5bad06b2c3 +#: f075f7ddf459448486db289bb7a664c8 +msgid "You do not have proper permissions to delete the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.delete:21 +#: b863c986a0fa4047b2f5c54b2393cb04 +msgid "The message was deleted already" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_message:3 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_response:13 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.delete:12 +#: ../../../discord/message.py:docstring of discord.message.Message.delete:22 +#: 11626a89e9754d98b9e406dee995ee11 +#: 918b2eb266e64d8b92a504fe13d28665 +#: 918b2eb266e64d8b92a504fe13d28665 +#: 120db33a3735472ab0570bbc976c4428 +msgid "Deleting the message failed." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:3 +#: ../../../discord/message.py:docstring of discord.message.Message.edit:3 +#: 6ed53c62bf794126a8bcd24d3fd2a19e +#: 99ff3a0b34044b0aa7c00d20adca1974 +msgid "Edits the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:5 +#: f506e070d16e481b93649766961323be +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:7 +#: c919b04337dd4e29b9089203012031c2 +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:11 +#: f15edfb6cdf74e378aecadedb0ab3e72 +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:15 +#: eea88257163b4962992fe33593dbc23a +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:19 +#: 93c44872f4754ff89bacdf2adf89814e +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:19 +#: bb7569bda28141f4b8cec0729aa54f1f +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:25 +#: e635ccc895ce42aab5f9e248143bfab4 +msgid "A new file to add to the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:28 +#: 929da4038ce34700ac4c10e343adce0b +msgid "New files to add to the message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:29 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:23 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:24 +#: ../../../discord/message.py:docstring of discord.message.Message.edit:31 +#: 37250a2ca1734906b0f17639a4ca5a55 +#: 30fc507352f2434c88bf8dae92a030f3 +#: 30fc507352f2434c88bf8dae92a030f3 +#: 30fc507352f2434c88bf8dae92a030f3 +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:35 +#: 94013e4244574f8aa0b4bc45b834b58c +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:41 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:35 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:32 +#: ../../../discord/message.py:docstring of discord.message.Message.edit:41 +#: a865ae969b7e4cd1aa10292adaa53422 +#: 1b1c8d98c40d4a1db673aba02af8ab84 +#: 1b1c8d98c40d4a1db673aba02af8ab84 +#: 1b1c8d98c40d4a1db673aba02af8ab84 +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:37 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:31 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:28 +#: ../../../discord/message.py:docstring of discord.message.Message.edit:56 +#: 66bd52e02f594816b9a3876ee0003e20 +#: 14c5970e926b4bdba9cf225c428573be +#: 14c5970e926b4bdba9cf225c428573be +#: 14c5970e926b4bdba9cf225c428573be +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_message:6 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:52 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:46 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:48 +#: ../../../discord/message.py:docstring of discord.message.Message.edit:60 +#: 332dbf07fc3c4518af8fb62bff79dcac +#: 67b05d01e4534778912bcc2bc182d711 +#: 67b05d01e4534778912bcc2bc182d711 +#: 67b05d01e4534778912bcc2bc182d711 +#: 67b05d01e4534778912bcc2bc182d711 +msgid "Editing the message failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:61 +#: 8f9e1ea8a2e340cd84961e1002372225 +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:62 +#: d13f7e34dd204807a23d8f242e6cfd40 +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.edit:64 +#: 7810feb6286743e1815a8c05a3a7c021 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:3 +#: 963e6ad32ed64ea3866c7c9c5d8c9dff +msgid "Publishes this message to your announcement channel." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:5 +#: b79c0f15372a43f784dc744bcc092094 +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:7 +#: 0753a753405c425fbb76674fcddf3c26 +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:10 +#: f6019d9837ad4cc2ba2a8577c019a50d +msgid "You do not have the proper permissions to publish this message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.publish:11 +#: 3250bbcd5c12424d887a0f63f25245af +msgid "Publishing the message failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:3 +#: 5a1324914dc7460d865a7533dbe183bc +msgid "Pins the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:5 +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:5 +#: 26202505ba6947e586039e2c754bf8ae +#: 63843b42e1924b479832a6a8a7e48618 +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:9 +#: 7847b26da73f44e1838c342d6466391a +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:9 +#: 3a1b5b438c584983b6f4325d989fd5ab +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:14 +#: 67f7fac70faa4d079104ff9431a16bd6 +msgid "You do not have permissions to pin the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:15 +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:15 +#: 4533dbcb39de41998e7511a51a37bb11 +#: 0d21afec7d6044b798fba0b60322f7a2 +msgid "The message or channel was not found or deleted." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.pin:16 +#: 07a60251003047b4ba481745ac32e138 +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:3 +#: 2b5c4c9d2422472ab042fc1afdf24b9a +msgid "Unpins the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:9 +#: db7044deecb0488889c0dfb4903060fe +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:9 +#: 55b0db066a994507b071a381697cb7c9 +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:14 +#: 133f2ff9453e480f8c6e7d6262afa326 +msgid "You do not have permissions to unpin the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.unpin:16 +#: a9aec70f724a485e8dcf19b74bd2fdd3 +msgid "Unpinning the message failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:3 +#: db5902f5e8834ed1b202b00edd1b0fa1 +msgid "Add a reaction to the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:5 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:5 +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:5 +#: 1aa5ee02625744fb8125add13b1e3df3 +#: bd657fd6ab1340feb3c8e0ed695a8135 +#: d66a572a4fa74e52addeaad952d58e89 +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:7 +#: 0664e6f74ec5451ab9265738e4ebaa40 +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:12 +#: 6ed9eed730bf47b3b9f83a2ce7028148 +msgid "The emoji to react with." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:15 +#: cce1f1518b1f4c9883a53cb3927da79a +msgid "Adding the reaction failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:16 +#: 65ce388e1f284767a1e0cba3ce4e79a6 +msgid "You do not have the proper permissions to react to the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:17 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:17 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.clear:13 +#: 2ffd54e393ab406ea54fc4e98a266593 +#: 8dd42a82528e498f8b2686102872ac6f +#: b88c13ed83e5418a9170adff1a0e3523 +msgid "The emoji you specified was not found." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.add_reaction:18 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:18 +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:23 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.clear:14 +#: 422c7b0521e54a28afe1e65e6a49e3ec +#: 0505095b173e48159d4b6dcc1f0f7cd3 +#: 3c7d18a165c749cda738792a0312f453 +#: 09176183d3c048e581fe6e2b9983e4bd +msgid "The emoji parameter is invalid." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:3 +#: eb47bea041e84503880cbe32bd2eda61 +msgid "Remove a reaction by the member from the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:7 +#: 5ec65487191e427e87384de3b9fbcf36 +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:10 +#: f378e96813ce4f299c457ebd9601de1a +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:14 +#: ae8c48c041ac4b45b9ad7077617146ff +msgid "The emoji to remove." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:17 +#: f659d999d16d4416bea4ca7796135f67 +msgid "The member for which to remove the reaction." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:20 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.remove:15 +#: 9941fe595096404386307faed343ca19 +#: 662ed5086e76494795de8ea9d5bca33f +msgid "Removing the reaction failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:21 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.remove:16 +#: e41740887bbf483fb11ce6d383c6c9ab +#: 7f2bc964d6354e959e7a3a4c5cb754c2 +msgid "You do not have the proper permissions to remove the reaction." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.remove_reaction:22 +#: ebb24f101b3a4f38bfec6edcd473c2e2 +msgid "The member or emoji you specified was not found." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:3 +#: 7fc2eaf92eaf4373ad753b449a33caa1 +msgid "Clears a specific reaction from the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:7 +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:5 +#: b31e5a12186248189a19328b932b85ff +#: 4ca4c4f14828485bbc6d2656a2bfce2a +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:12 +#: 548ef981414b4d49b0e7b676a0ba9e8f +msgid "The emoji to clear." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:15 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.clear:11 +#: e8b551eb942b41679802a74c35e331c1 +#: 2233857fffb7482cb227cf18ee71a104 +msgid "Clearing the reaction failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reaction:16 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.clear:12 +#: 2c0573085ea84c958bc40240ec04a71a +#: 02e12cad95884ce09602f895440c1f7c +msgid "You do not have the proper permissions to clear the reaction." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:3 +#: 0a40adeb44d5439a950b26edbdd378d9 +msgid "Removes all the reactions from the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:7 +#: 80ff4108cd8942f48f27098fcf3dbfba +msgid "Removing the reactions failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.clear_reactions:8 +#: 612b122606c349a39130881cbbebd531 +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:3 +#: defabf462bcb4c59a3f42586f4c6fdcf +msgid "Creates a public thread from this message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:5 +#: e88a011da86341b78f27a8424f89819f +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:8 +#: d5ce5953554646d39d00cc9b39f2b240 +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:11 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:11 +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:13 +#: b76d73bb2eec453fa791730f2896373e +#: c412555942314e6abb96db9bca6ed6c0 +#: c412555942314e6abb96db9bca6ed6c0 +msgid "The name of the thread." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:53 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:19 +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:16 +#: d4ed5bbfc3cd43088a3b6e8715f45654 +#: 30e22d15e90d4423afb572096bc361de +#: 30e22d15e90d4423afb572096bc361de +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:20 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:30 +#: 8e3b3a9d19ac4812927782e4fa09edfe +#: 181f2f80fc1c44fd9bed109ac89f141e +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:24 +#: 926796b3230345a3843522da29c30bb8 +msgid "The created thread." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:25 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.archive:10 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.unarchive:6 +#: f5280afb2c934a6ea25391480ed57a0e +#: 9f646bb40e254fe0b597541bce565ff5 +#: 9f646bb40e254fe0b597541bce565ff5 +msgid ":class:`.Thread`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:70 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:42 +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:27 +#: ac637d19fb1d403d95c9d2561056cdc5 +#: 1edc4b26a7b14e7ebc76ed185b7258dd +#: 1edc4b26a7b14e7ebc76ed185b7258dd +msgid "You do not have permissions to create a thread." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:28 +#: 0fe9251d141d41ffa3f62b42ca7fb130 +msgid "Creating the thread failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.create_thread:29 +#: f428c849be8f4e07aaf5ed090b6216de +msgid "This message does not have guild info attached." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.reply:3 +#: fbd67ff4c215400ea4a271748c5dc77c +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.reply:9 +#: 8fb0c77645f547c6872c4b243378a15d +msgid ":class:`.Message`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.reply:13 +#: 407cc6ed96864a86a0c521ed428b7511 +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.end_poll:3 +#: 3dafec6926db4c4d81092ac287d3d107 +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.end_poll:7 +#: 4a3dc6d67ed745eb97c46bc2b0126c04 +msgid "The updated message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.end_poll:8 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:54 +#: 301847af28674e3fa66b98a999ad3a24 +#: c6245cc6405d4d10a83d87b23ebb1501 +msgid ":class:`Message`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.end_poll:10 +#: c3d9fa4ad2024a41b78d90e1ab3ecd18 +msgid "You do not have permissions to end this poll." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.end_poll:11 +#: 4c4e783c9fed479e9d3f508871e459d1 +msgid "Ending this poll failed." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:1 +#: dd4d2e31e18f48c893bb52c2705c78ab +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:6 +#: 86483833c0624de19d40b49b553e42d5 +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:6 +#: c506ff24bf594020a7e0c82912c8d828 +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:12 +#: 8a8ab09da0a9465bb681ee6462a156b6 +msgid "The reference to this message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.Message.to_reference:13 +#: f06595a3a15743dcbeae344ccd5daf42 +msgid ":class:`~discord.MessageReference`" +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.DeletedReferencedMessage:1 +#: 463786c736924e608ec8378a080aaa31 +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.message.DeletedReferencedMessage:4 +#: 05f414ff3d5f40a99da782fcff12356a +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.DeletedReferencedMessage.id:1 +#: b91f6f228ec34d6e84926a07cb3d5529 +msgid "The message ID of the deleted referenced message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.DeletedReferencedMessage.channel_id:1 +#: 5b18fda51f044f26a474b5006c9e19f3 +msgid "The channel ID of the deleted referenced message." +msgstr "" + +#: ../../../discord/message.py:docstring of discord.DeletedReferencedMessage.guild_id:1 +#: f98421f4146f431d805b01b7566a2e35 +msgid "The guild ID of the deleted referenced message." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:1 +#: 443e4a7e83794c9ca6b03288c36bc0db +msgid "Represents a reaction to a message." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:3 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:3 +#: 6b17d7197c824dbf9b1b9f5555dda822 +#: 60bb87648d9040c3bdc1881005a683a5 +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:10 +#: f040ad6d3ba445bf806d65e991a4adb5 +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:16 +#: 8aa833a603ae439ab7e49c83c19b4e35 +msgid "Checks if two reactions are not equal." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:20 +#: 33e424db11bb4c59a3cd27e734ff36fd +msgid "Returns the reaction's hash." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:24 +#: 14eaf906b99446a2934f19940182a54f +msgid "Returns the string form of the reaction's emoji." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:28 +#: 49a6023ce4184bde8d8392dce854c7b5 +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:30 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreenChannel:21 +#: d0fdab02f7ff4c81b105f060099ea6dd +#: 4bde8fe9c1b843e1ac8e64327c6fa644 +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:34 +#: 2c4aa0d7cbbb4f988a1a6fc2f1c7f688 +msgid "The combined total of normal and super reactions for this emoji." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:40 +#: e57d310799d741d7bc0252178f43d114 +msgid "If the user sent this as a normal reaction." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:46 +#: cc47d47b4dd9496ab72a4c8d4164fb31 +msgid "If the user sent this as a super reaction." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:52 +#: e4ed4b4cd1854fd792b439e7a511e825 +msgid "Message this reaction is for." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:54 +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction:58 +#: 5190e5726035489ba22258b7e607d443 +#: d9ad7a2be3b24ac686dda32d9c316fc8 +msgid "Whether this reaction is a burst (super) reaction." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:1 +#: 0958e07a78ed4d869f34ae625b3e196f +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:3 +#: 1f04234398f743a595187130048adfed +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:7 +#: f56abc2327e64340bb04db78a26912a0 +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:12 +#: 380084668e484c1fa2c2a29a0770cb29 +msgid "For pagination, reactions are sorted by member." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:15 +#: bc8530e934df4b92844df9fc397447a6 +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:18 +#: 2283d254fc64459f8958cd07bc7a1df1 +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:23 +#: 5a9b3c83c2c04f2d91cce4856581eee4 +msgid "Getting the users for the reaction failed." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:24 +#: abcff3aaba8c4326aba0f10be153dcdf +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.users:41 +#: 2b042430e8bf4ac69ad5fa232c94b85c +msgid "Getting super reactors: ::" +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.Reaction.burst_colors:1 +#: ../../../discord/reaction.py:docstring of discord.Reaction.burst_colours:1 +#: 859ad1f6d6fe4419a6e0d7429d714a1c +#: 0fc3e29d13884d05af4fd7829184073f +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.Reaction.burst_colours:3 +#: 9ea3273d46664bcabfaf997faf75903a +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.Reaction.burst_colors:3 +#: 4b1e6455f99b4cb48761829e9947ae34 +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.Reaction.count_details:1 +#: 8020928c7c884030a43d1f1e88be1f12 +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.is_custom_emoji:1 +#: 4fedf8fd7cf14f929d4e43b0dc7ea4a9 +msgid "If this is a custom emoji." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.remove:3 +#: 80a1041811c44091b60360414c3f34d4 +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.remove:5 +#: 67cc8cd0b18a45748f81dbbd084e6c34 +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.remove:8 +#: e1a7b4b270994c6bac90d3e34c58a439 +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.remove:12 +#: 480798e124144fd88c458233e8cae802 +msgid "The user or member from which to remove the reaction." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.remove:17 +#: 9ed3319b3f8f4b26b59fec846526fc76 +msgid "The user you specified, or the reaction's message was not found." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.clear:3 +#: a9b348caee0b4fbf8f25c7fed3fbe950 +msgid "Clears this reaction from the message." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.Reaction.clear:5 +#: b8aa893b08e947e6ac97e260e4875972 +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.ReactionCountDetails:1 +#: 27e3ca8007f24a42a899c8fc86d444c9 +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.ReactionCountDetails:5 +#: 6ee28a4591c342499c80e1beabd65020 +msgid "The number of normal reactions for this emoji." +msgstr "" + +#: ../../../discord/reaction.py:docstring of discord.reaction.ReactionCountDetails:11 +#: 79fcfd62a81b475ea5ccb85337642bac +msgid "The number of super reactions for this emoji." +msgstr "" + +#: ../../api/models.rst:105 +#: 438fa97418ac42c086378f5f6cd9cbb5 +msgid "Monetization" +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:1 +#: 0912f7894a974f38b5c491381fb703de +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:7 +#: 18fe6a743d8a4bb3b829f258f8d7533a +msgid "The SKU's ID." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:13 +#: c922fe84c9444e08b6923dd77e3e47c4 +msgid "The type of SKU." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:15 +#: 7eb21e004f3f4df98cc31e4e8d127d3a +msgid ":class:`SKUType`" +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:19 +#: 50cef2d53ee946559047ecd0176caf96 +msgid "The ID of the application this SKU belongs to." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:25 +#: 316a83431191428293c26edf082f08bc +msgid "The name of the SKU." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:31 +#: d2a15e893ab040709adc7ecc9d98c68d +msgid "The SKU's slug." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:37 +#: 9ecda8e413964917aa9d81547e5061b7 +msgid "The SKU's flags." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.SKU:39 +#: 064c9c1e49414b42b274509ac23e53bf +msgid ":class:`SKUFlags`" +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.SKU.url:1 +#: 167b1d199a94472395eeb277b09342b4 +msgid "Returns the URL for the SKU." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:1 +#: f90050e635304cceb060faed27c18428 +msgid "Represents a Discord entitlement." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:7 +#: 474393e263ed49ceadcdb9df979b1e80 +msgid "The entitlement's ID." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:13 +#: e22b12906d11423b92816daccc7bbee6 +msgid "The ID of the SKU this entitlement is for." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:19 +#: fcc6d115692f4a39ad0cd1665c40aded +msgid "The ID of the application this entitlement belongs to." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:25 +#: 390ffbbcdbea4754bbbd4fa8dc55c4a1 +msgid "The ID of the user that owns this entitlement." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:27 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:57 +#: 6cb0d709a1ce4db0ac68dcdb6166f2fc +#: eb3c7861a13a491ea908638d3b775c62 +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:31 +#: 6127f165c1f342a69f6e0693dc75a9f9 +msgid "The type of entitlement." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:33 +#: 7d438bff37c749b3950ffe589d702f9f +msgid ":class:`EntitlementType`" +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:37 +#: eeed4145d06f42de87ad7d9fa099ee64 +msgid "Whether the entitlement has been deleted." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:43 +#: e426dda4c7484e6c94320a0b89169497 +msgid "When the entitlement starts." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:45 +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:51 +#: c2010b24b8dd4c6d88d0ecd78719e628 +#: 7d2c5e5d21084616a225b5b35ea056dc +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:49 +#: 455f169162d3445d83c04197602e6bac +msgid "When the entitlement expires." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:55 +#: a8a68a11ea664400b47e3c47bb207c13 +msgid "The ID of the guild that owns this entitlement." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement:61 +#: 75e64b3cc68246fd9a86531d95c85d6e +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.consume:3 +#: 7007221d52574f1ab5ad1b0a27d15876 +msgid "Consumes this entitlement." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.consume:5 +#: 48fb2081fef249e38e28e7ff56356232 +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.consume:7 +#: 1a95e9e2ea00431a8d3081cad5c245c4 +msgid "The entitlement is not consumable." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.consume:8 +#: fb894fb00daa46e8b8dae1d812d0c7b9 +msgid "Consuming the entitlement failed." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.delete:3 +#: 3c25dcfd92364bf79c3674ab64f0c7b6 +msgid "Deletes a test entitlement." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.delete:5 +#: 8fa876c4cba046589d6be6c002dc5805 +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "" + +#: ../../../discord/monetization.py:docstring of discord.monetization.Entitlement.delete:7 +#: 03034a25ec2842b49ff30db4103d47ab +msgid "Deleting the entitlement failed." +msgstr "" + +#: ../../api/models.rst:118 +#: e844acaaa52845ed85e5fd6814cb0f53 +msgid "Guild" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:1 +#: db1ab6b381fe4cf2a74999dd87bf4c66 +msgid "Represents a Discord guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:3 +#: 6ea24a3ae2eb4c84acbdea570bb61225 +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:9 +#: 366cf975af114c628f6c2dd3dc509e36 +msgid "Checks if two guilds are equal." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:13 +#: 229df8b397124f35ba0f02f760cbca31 +msgid "Checks if two guilds are not equal." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:17 +#: 9b50dcd790d04b489c01c87670b2a5c0 +msgid "Returns the guild's hash." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:21 +#: 1cbf5b02d7d348cc9ad53a509759f84a +msgid "Returns the guild's name." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:25 +#: 1a8044c512e34298a1e621c2018506b5 +msgid "The guild name." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:31 +#: a49865a6df284e17adeb5f445d3524ff +msgid "All emojis that the guild owns." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:33 +#: 258a28d33dbe4186945587d0e306c05b +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:37 +#: 93bac270df3c4e049e8b16b766fedea4 +msgid "All stickers that the guild owns." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:41 +#: 0887294ac6c94174b7099a5f75c5a4f7 +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:45 +#: b43540d7ae864f39ab06e51116f8b67b +msgid "The timeout to get sent to the AFK channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:51 +#: 8616d231b75a4b68b9d00fb946e6be36 +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:53 +#: 4c522f09862f4ca68745afa6fe5084b0 +msgid "Optional[:class:`VoiceChannel`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:57 +#: ../../../discord/widget.py:docstring of discord.widget.Widget:19 +#: 0ea13064f858406d9a644970bab4738b +#: 882f2ffccbb54152b08a3a1c84128add +msgid "The guild's ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:63 +#: c9538b5448934b30b766e0ae1d32918d +msgid "Indicates if the guild invites are disabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:69 +#: 5e161c99d2614533a657fd69b38162ef +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:75 +#: 678f43ad19ba4c61a33ce8f109f66203 +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:79 +#: e375ccafce024828b9792faeb45f8a70 +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:85 +#: bc2aad77e90e4ef89efa55be5b4b3c0c +msgid "The maximum amount of presences for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:91 +#: 21f9958ddf3f47d88ffa435fa73d3e75 +msgid "The maximum amount of members for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:95 +#: 30217731df6d4b218c05a58ba6c68105 +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:101 +#: 40324476aaaa4b58ae2b3e97fc7595d9 +msgid "The maximum amount of users in a video channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:109 +#: 7621b825fc6848199afd96d57cdb3c46 +msgid "The guild's description." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:115 +#: afd0570ec40e46bf9dd1d40f2894791b +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:123 +#: 058f5112199e488192d7833ff52a640b +msgid "The guild's verification level." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:125 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:40 +#: fc441b8a398a45528430a0b152144c74 +#: 30f9afd8d244416dbcacd423e52553d9 +msgid ":class:`VerificationLevel`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:129 +#: f5dde26f539a4a519dfd9d17d13e77dd +msgid "The guild's explicit content filter." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:131 +#: 8eabd9ce697640f598d06c0958ad8883 +msgid ":class:`ContentFilter`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:135 +#: fb017f4588244305b97543cecc6f7327 +msgid "The guild's notification settings." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:137 +#: 7697e3149f17414f9cd6205716954255 +msgid ":class:`NotificationLevel`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:141 +#: 96094a79a794453ca947a68e85a7ac9d +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:29 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:38 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:52 +#: ../../../discord/guild.py:docstring of discord.guild.Guild:145 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:46 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:53 +#: 1062d87a1499437b8d0fad52243a2c42 +#: 402fe8591df646adab6f23b2f9d9081b +#: 402fe8591df646adab6f23b2f9d9081b +#: 402fe8591df646adab6f23b2f9d9081b +#: 402fe8591df646adab6f23b2f9d9081b +#: 402fe8591df646adab6f23b2f9d9081b +msgid "List[:class:`str`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:149 +#: 2c052457608241eba3b00da2a2a12fde +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:156 +#: 7c4970cbb42d464999f7d038ad54c407 +msgid "The number of \"boosts\" this guild currently has." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:162 +#: b13ceeec9b754f61ae4851568efe13d3 +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:170 +#: 450c59c978d0455da13ab5e457f9d5bb +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:177 +#: 512295e7ee00418eb57569f797cf38bd +msgid "The guild's NSFW level." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:181 +#: cb80e8016d41430cabcaa25c939547ec +msgid ":class:`NSFWLevel`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:185 +#: 4fd548acdbe942b6991c79437ea7f900 +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild:194 +#: 6482522942c045cfaf1b031b70eb826a +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:1 +#: 0120dd3a92464615b401de79efb6e0d9 +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:6 +#: fb2df2dda5d44726afe47364f6c07cc3 +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:13 +#: 23c7ea33859848df952ea7e2cf3208d6 +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:17 +#: af75813c15d24e61b162b7b6c73903e0 +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:22 +#: ce79475da5b3429490204a963d62eb31 +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.chunk:14 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:24 +#: 9cb64e499c0f479382a5ec14961861e2 +#: 31b960ea95b743da9185fea00ff094d8 +msgid "The members intent is not enabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:25 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.search_members:19 +#: 077d9bc4af6441c6a5ed391c7ac1e1d2 +#: 5641b671700a4bf3b21a2239f64e9cd8 +msgid "Getting the members failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:26 +#: 3fe2216ce94246bda3794d4c16683ddd +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:41 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_members:35 +#: 081c6429caa04e0a8c5e5dbf3e7662c7 +#: 4c5a13c5676c44cc86de248b93dd8baa +msgid "Flattening into a list ::" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:1 +#: ae8d71971791441db70367c5a6d14451 +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:3 +#: 888f32c854a1461e9e8a19497ea6576e +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:5 +#: 2c14687569f44565a2b9669476dcb351 +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:9 +#: fb2eba26c34c411ca8bbe737728d0a39 +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:12 +#: 5cf3fb6971b44875b110b8bf4e68ed39 +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:17 +#: a3d821e0288a4f5c8eeac00a68f740d9 +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:22 +#: 6cd1626aa86e49e383b0cd2cd3538dd9 +msgid "The moderator to filter entries from." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:25 +#: 14e26f608aa6430a92c507d3647cb792 +msgid "The action to filter with." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:28 +#: 509ca146023a4b0b8f0d92909152f46d +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:30 +#: f6f6cae23df840329202e2ff1533930a +msgid "You are not allowed to fetch audit logs" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:31 +#: 853d3de6365f4416975a212373d7fc6a +msgid "An error occurred while fetching the audit logs." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:32 +#: 71a9a557b42348ec8e3746a3f51ea658 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:36 +#: cc8f18ece4004b4e8d0bdadbebccf25f +msgid "Getting the first 100 entries: ::" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:41 +#: 99f720978c984a339eba44173d6a39c1 +msgid "Getting entries for a specific action: ::" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.audit_logs:46 +#: cc73d866480b4b3db62be86a652f10b9 +msgid "Getting entries made by a specific user: ::" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.channels:1 +#: 6ce1830b26764a30a5e526eeaa23b59f +msgid "A list of channels that belong to this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.threads:1 +#: 2d77e18619ef45009234869221d9121c +msgid "A list of threads that you have permission to view." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.jump_url:1 +#: 40d9ed8c7b2a49a89fdb8479d6c0cacc +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.large:1 +#: 3d4d9b02116d4da4ad340477b0e48753 +msgid "Indicates if the guild is a 'large' guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.large:3 +#: b9a7a645115c4ce48b106b7a1a01a40e +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.voice_channels:1 +#: a6d6d0cf319d424fb1c0ca09689b9157 +msgid "A list of voice channels that belong to this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.categories:3 +#: ../../../discord/guild.py:docstring of discord.Guild.forum_channels:5 +#: ../../../discord/guild.py:docstring of discord.Guild.stage_channels:5 +#: ../../../discord/guild.py:docstring of discord.Guild.text_channels:3 +#: ../../../discord/guild.py:docstring of discord.Guild.voice_channels:3 +#: f180923c6bfe4725a27df0027fcc0aab +#: 8cd16538342347349db85c45c4048567 +#: 3b767c7eca7b4c108c0b8a1ec2392e54 +#: 373e876152f148038089f956a932f20c +#: 92654e54cec845f2b651b5237c632afb +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.stage_channels:1 +#: bbbf7717cf1e4bc3bb698d09ffc8a345 +msgid "A list of stage channels that belong to this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.forum_channels:1 +#: f7ef4b1006854a04a171bc2e321489b6 +msgid "A list of forum channels that belong to this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.me:1 +#: 5aba6d2a00dd4aa4818d5f17ba085874 +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.voice_client:1 +#: b6776b60c00e49bab33fedb2af1df73f +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.text_channels:1 +#: 2cd56f1919f54ac8a3d8634aa1ae7a60 +msgid "A list of text channels that belong to this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.categories:1 +#: 22b43fc194e344c08456c90f8ccc357c +msgid "A list of categories that belong to this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.by_category:1 +#: 5d91fd36b588460390754e6fd167d425 +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.by_category:3 +#: e8278239d98d46b1a52f50039ea88c4a +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.by_category:5 +#: 5abcb3095e764520976db20ad48da11a +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.by_category:8 +#: 4fbcb98503744d30b86ce12cbe73a634 +msgid "The categories and their associated channels." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.by_category:9 +#: cda56a62a87d49d48faaadbf7c0763b5 +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_channel_or_thread:1 +#: 3cf03eac3bf54951a9d1b63afa4fad2f +msgid "Returns a channel or thread with the given ID." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.get_thread:6 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_channel:8 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_channel_or_thread:6 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member:4 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_role:4 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_scheduled_event:4 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_stage_instance:6 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_thread:6 +#: ../../../discord/member.py:docstring of discord.member.Member.get_role:6 +#: 3a1180e1deb44b6a8374aee179bde960 +#: 9b4160356f9649e1a8abcfdaf94ea03a +#: b9a5cb9dcc2a445e84a4df4707c5497a +#: 8e5457f352a34ed48d5a54f0cc4bd840 +#: 4f51145163c24784940599506be8b039 +#: 56c6c525daa045cca9d6990eb2a7785c +#: 6fb31e7daaac48ecb8ae0f2ad021074f +#: 6fb31e7daaac48ecb8ae0f2ad021074f +#: 6fb31e7daaac48ecb8ae0f2ad021074f +#: 6fb31e7daaac48ecb8ae0f2ad021074f +msgid "The ID to search for." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_channel_or_thread:9 +#: 73cc5f097e0047fdaafa76a89e0d26f6 +msgid "The returned channel or thread or ``None`` if not found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_channel_or_thread:10 +#: 77fc52a6e5c84cbf9bc3c58a7a94bd18 +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_channel:1 +#: 7c63100096a24c67ba8c3fa77d186380 +msgid "Returns a channel with the given ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_channel:5 +#: aa4d6cd6520845c5b47ba50e98855219 +msgid "This does *not* search for threads." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_channel:11 +#: ff8cc3b719644dccb57c090f5d814d48 +msgid "The returned channel or ``None`` if not found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_channel:12 +#: 99732313fb2b45068a8b7f1756b51876 +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.get_thread:1 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_thread:1 +#: 6756f4807ebc43bb9fcd4ade90cb9a0c +#: 063021b717da4ac1bbe2b9d24f4e77a8 +#: 063021b717da4ac1bbe2b9d24f4e77a8 +msgid "Returns a thread with the given ID." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.get_thread:9 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_thread:9 +#: 0b52a378783845b9a553efe578dab819 +#: 2b49c4d121db43b194ffa1bfff78a702 +#: 2b49c4d121db43b194ffa1bfff78a702 +msgid "The returned thread or ``None`` if not found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.system_channel:1 +#: c3e97d65cd5d406e9b8fe6c3548cb16d +msgid "Returns the guild's channel used for system messages." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.public_updates_channel:5 +#: ../../../discord/guild.py:docstring of discord.Guild.rules_channel:4 +#: ../../../discord/guild.py:docstring of discord.Guild.system_channel:3 +#: 9e3d2735e47a433f876420b2db8a5da2 +#: a64c2c61a8224e0bb4226e11ef4994a6 +#: 2ae6c126f58341fc988bfa1804274039 +msgid "If no channel is set, then this returns ``None``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.system_channel_flags:1 +#: 42fb2ad7ac984b2fb420d833affbecaf +msgid "Returns the guild's system channel settings." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.rules_channel:1 +#: 79cdc8efcf314c76ad5285ef3ac7d66d +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.public_updates_channel:1 +#: 4cdbc6c8e74f4434b7b96631dd4e8ac0 +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.emoji_limit:1 +#: 87332d6da80941448cf805bef2040e2f +msgid "The maximum number of emoji slots this guild has." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.sticker_limit:1 +#: 87fb8a5cd4a64448920bc860483db18a +msgid "The maximum number of sticker slots this guild has." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.bitrate_limit:1 +#: 382f34f464964f41b660ca62580be5b0 +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.filesize_limit:1 +#: 50b9637ed32944ce8d4d032493bd94af +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.members:1 +#: c1634d0bf11144208238d3422e50572f +msgid "A list of members that belong to this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member:1 +#: 9e1bfb5c6d3c429fbad485e4e0911755 +msgid "Returns a member with the given ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member:7 +#: 11899c35315748e0af61b02ca2c67e7b +msgid "The member or ``None`` if not found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member:8 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member_named:21 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:47 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:40 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:33 +#: ea5ce4db5209427392e12d73651f271b +#: e66d8f3d8faf4bf1b19074324f7b4f06 +#: 3dd36482d6584e0caa30ff04b7f88ac2 +#: 3dd36482d6584e0caa30ff04b7f88ac2 +#: 3dd36482d6584e0caa30ff04b7f88ac2 +msgid "Optional[:class:`Member`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.premium_subscribers:1 +#: 9620482fa56a459eabd21941ab8d6849 +msgid "A list of members who have \"boosted\" this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.roles:1 +#: bf330cfe91ee46c49b95aea56ab062a4 +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.roles:3 +#: 0377dec4d9d0431b87fefbf7989a745b +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_role:1 +#: 8f5df98b969a48cb85026bf9c8d2ed81 +msgid "Returns a role with the given ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_role:7 +#: 75f2adc480a74d009cd6a50616a74db2 +msgid "The role or ``None`` if not found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_role:8 +#: ../../../discord/member.py:docstring of discord.member.Member.get_role:10 +#: 49faa26614694f83a8a1031e5b037fc0 +#: a59751e769344c159a35d97d289207ab +msgid "Optional[:class:`Role`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.default_role:1 +#: f4fc8210064941dbb8869f5e26c39a3a +msgid "Gets the @everyone role that all members have by default." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.premium_subscriber_role:1 +#: 32b04d6a2dde453fa99673b5d4b6dd65 +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.self_role:1 +#: 281b90db195b429d989343b55c507a32 +msgid "Gets the role associated with this client's user, if any." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.stage_instances:1 +#: c13aa5fc5ca24a538fa770acba338f68 +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_stage_instance:1 +#: fc99eb73f72942eea987ad13cc9e1d81 +msgid "Returns a stage instance with the given ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_stage_instance:9 +#: b6bb1a2527644e4b87b69d5db0262f3b +msgid "The stage instance or ``None`` if not found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_stage_instance:10 +#: 9a1967e478074ccaa951da219250162b +msgid "Optional[:class:`StageInstance`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.owner:1 +#: ebfa0bfbc6de4d2ab737e25be9da32dd +msgid "The member that owns the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.icon:1 +#: ../../../discord/invite.py:docstring of discord.PartialInviteGuild.icon:1 +#: ../../../discord/webhook/async_.py:docstring of discord.PartialWebhookGuild.icon:1 +#: 9edfce4f13344022a20bc5d74a5618f8 +#: d8382b4b46e949acbd18ad7290999e60 +#: d8382b4b46e949acbd18ad7290999e60 +msgid "Returns the guild's icon asset, if available." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.banner:1 +#: ../../../discord/invite.py:docstring of discord.PartialInviteGuild.banner:1 +#: 79b98460de4a45918567ea4ed97db67b +#: cdc6de4d93d84126981872de7ddfd9e4 +msgid "Returns the guild's banner asset, if available." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.splash:1 +#: ../../../discord/invite.py:docstring of discord.PartialInviteGuild.splash:1 +#: 1503595c1aad4549a6988e6597add1bd +#: 617b62d85d634607ba8b35af07a4aed2 +msgid "Returns the guild's invite splash asset, if available." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.discovery_splash:1 +#: 277e63e39cce4b76b7a0c9f020c5bd43 +msgid "Returns the guild's discovery splash asset, if available." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.member_count:1 +#: 25aaad6f80ad4572b4f36923fb9f132b +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.member_count:5 +#: b7ccf0f88ffa435688d7e3fe61ba00fa +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.chunked:1 +#: 3a535c2ef8d6481282d9ef9ed786082c +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.chunked:3 +#: 239d55a0fbfd45539a7a3e9b81987630 +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.chunked:6 +#: bfd0b7b89f9d499fb1319f6072489e7f +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.shard_id:1 +#: c834ed32571a45efaf70049924028c84 +msgid "Returns the shard ID for this guild if applicable." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.created_at:1 +#: ../../../discord/invite.py:docstring of discord.PartialInviteGuild.created_at:1 +#: 98a9abb4d99d4af6a1bc90dead64714b +#: 2a63da98f7714298bd86c262529e96fc +msgid "Returns the guild's creation time in UTC." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.invites_disabled:1 +#: 21438da4623b4f089e64f5fd9065d2c8 +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member_named:1 +#: 389668f9993d42cb9e8b13be6aedaa12 +msgid "Returns the first member found that matches the name provided." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member_named:3 +#: 5a17c55789534edba8bf8ff9e15f399e +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member_named:8 +#: d458dfa7d494407a91d3c42d7b71cb21 +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member_named:13 +#: b6257865a85f4b6680875aa63c4badde +msgid "If no member is found, ``None`` is returned." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member_named:16 +#: 1dfe62681b2f48f295a5625f440b6665 +msgid "The name of the member to lookup with an optional discriminator." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_member_named:19 +#: e1562c59250e48369ff2dfd424899106 +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:3 +#: 18d743c07fc04fdca34d8ecf8c42d49c +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:5 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:5 +#: d15d11b0f7884cfa9ce8b8e10b0f0081 +#: 7ccbcfbc7c0245ebaf80c63fa46ca066 +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:8 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:8 +#: 0826bc86fc6844d7bd523a337d246ef2 +#: 59dc80266fe441d8a613d4b177b2519c +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:15 +#: cd41b65a000942078be736927f9af9cf +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:20 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:8 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:20 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:6 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:29 +#: baa4ae0af73d42ccbd4f2ab5592b2b5b +#: f04ba645478941639f2375ddc8661948 +#: 1609f6ef955b46daa8feab89aed3f130 +#: 436aeddd681b4340bb158dac6a294899 +#: 3caddaa8be9748a0b5c7e2b6d20702cd +msgid "The channel's name." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:23 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:14 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:23 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:9 +#: d061fcc33b574ffba76bef2a087460c8 +#: e755d7a964c3468b8f7905f13a5ce264 +#: 0c2adeba36d84af9aeff4fd8ffa5d7a7 +#: 3790b49ca326407bacd99677d85e7ca1 +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:26 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:17 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:26 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:12 +#: d1087d9122e94791b0aa20790b0e668a +#: 1edd8ba28a214a2689b68c958b267c2f +#: 6f4ba6a61d134a19a4351fe041cd967f +#: 9d06515f3f7641b09dbaf639bb7e6587 +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:31 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:22 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:31 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:17 +#: 0848ff8e94324c9db997de2a3c123e40 +#: c9a5417638814f06a3b018b6aa0838d6 +#: ccdf540d4f874713bd55b15253bc98d8 +#: 53e9a8d1ef7c486db9167ae9c78bb56c +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:10 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:19 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:35 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:11 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:35 +#: b12af80947024bd196b707459a1c7ab1 +#: b2201c903bb4444c92177c8cff398d07 +#: 2bc1d86a3c9d4ed2bcdcafe7083bdbca +#: 445e7ca3ca40409399381cc3fa66c395 +#: 445e7ca3ca40409399381cc3fa66c395 +msgid "The new channel's topic." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:38 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:38 +#: 9e9dd9425b054fcfb714c7318b17daaa +#: 04bb9a8b4c6a47a8ab232c8d41007089 +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:14 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:23 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:42 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:42 +#: 6e0e5f25fba64a62b1ac7c005cb3c4aa +#: 158f4a82c5184ed186f0c45d5ca5b0d7 +#: 5249f14b4df34180913d70dc0424dff8 +#: 5249f14b4df34180913d70dc0424dff8 +msgid "To mark the channel as NSFW or not." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:45 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:26 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:45 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:38 +#: 9adb04fec50a471792f88440104c745e +#: c4783994e88f4aeb9f00f605dc7aac4b +#: 2a5da0498eb4468e95bc376c2e663bb2 +#: 017d65bacf3b4bfbbd241ed984235147 +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_forum_channel:7 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_stage_channel:7 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_text_channel:5 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_voice_channel:5 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_category:10 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:55 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:29 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:48 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:41 +#: 33ff9c9a82b64c10a83c4add616fdc82 +#: 62cd93ababdf4cfd9cce9f1a801e775d +#: 04c22cfc54c044df8a63b0d3dbd206b3 +#: a47b33dd7e3e423bbc5cb05c12895fc7 +#: 1cd37bb095e24c0cb549434848340622 +#: fde12a59435846c39cb0f10c1e144e14 +#: 10f333753a3f485ab9e166f5fa769198 +#: 10f333753a3f485ab9e166f5fa769198 +#: 10f333753a3f485ab9e166f5fa769198 +#: 10f333753a3f485ab9e166f5fa769198 +msgid "The channel that was just created." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_text_channel:6 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:49 +#: 8b6a84cc25c349419c31de47c2303d96 +#: 809a9a177767412ea6242641e68be16f +msgid ":class:`TextChannel`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.clone:22 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.clone:22 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.clone:22 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.clone:22 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_category:13 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:58 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:32 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:51 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:44 +#: 4add16d398aa4f518bf3f72e29c63eb3 +#: f8709c4a529b4bdf9a369a9e4fb45a7e +#: 58e3a614336b400e90a85ec0941087e2 +#: 7e15a4a056c44b6aa411b98f9832c52d +#: c80ea61f690a43b1b33e04f5455833b6 +#: c9655e17e69d47da801e88fca3d16f86 +#: 0114eb9f7deb4dadaa52b41a0ecda85d +#: 0114eb9f7deb4dadaa52b41a0ecda85d +#: 0114eb9f7deb4dadaa52b41a0ecda85d +#: 0114eb9f7deb4dadaa52b41a0ecda85d +#: 0114eb9f7deb4dadaa52b41a0ecda85d +msgid "You do not have the proper permissions to create this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.clone:23 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.clone:23 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.clone:23 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.clone:23 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_category:14 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:59 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:33 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:52 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:45 +#: c9330770911546dd87b510a3ebe4cb6e +#: e3fbf7d8bf344cd0b81613c462bf5066 +#: 45065f4fa65d4bd8baf39aa0a4aae98e +#: ff2795e7198d4a86b02989a21cf39afa +#: 6000a8b302d348b6bcc347bfd2d4a1ca +#: abfcf22ceae94b8ba266c29a2fa8ba6c +#: a152e92313ea4bb89cecd1b6400cdbc6 +#: a152e92313ea4bb89cecd1b6400cdbc6 +#: a152e92313ea4bb89cecd1b6400cdbc6 +#: a152e92313ea4bb89cecd1b6400cdbc6 +#: a152e92313ea4bb89cecd1b6400cdbc6 +msgid "Creating the channel failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_category:15 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:34 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:53 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:46 +#: 0b663ebdee664572bfd1ee200898c6c4 +#: 7bf63611242a4cdc9df3378f7c4b7143 +#: 353e85d3c97d4d3f976c9a308e8dcd37 +#: 83ae3be9003e4fc1af548a97fff9850d +#: 18e2b63aff2d4d938974528b742d4c88 +msgid "The permission overwrite information is not in proper form." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:64 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:57 +#: 7df77a377a454968b06f3a9737d86455 +#: f84b5551f533496385cc0f08cdb31bcf +msgid "Creating a basic channel:" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:70 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_text_channel:63 +#: d02100cc73e84244915ea5042b7d93b7 +#: aad25d44f07241feb96ce590433a0d06 +msgid "Creating a \"secret\" channel:" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:3 +#: a7ac1b9755e64488ba4b0ef8ce4dba06 +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:62 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:54 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:21 +#: da6c567358d2457a8328b9419aba1b0c +#: e4a529edf2a7427d9f0d448e950c5a3d +#: e4a529edf2a7427d9f0d448e950c5a3d +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:60 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:24 +#: 61e6218add924882b4544d4f65fe3038 +#: b45a714586514aa199c2aa4f8fd70cfc +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:27 +#: 77472c0b87ee4c12919534435862d712 +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:66 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:27 +#: a012c67cbf8c4c758c6232633b5b90b4 +#: ae62841317554b39b2c03b27fb66f7c4 +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:38 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:33 +#: 143d16193a8a48bca8f44b6c8f8b294c +#: 198ebaf4f6584b8abd4208269d8a7f60 +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:75 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:38 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:33 +#: 41726a9352834d8eb39464ddde36de96 +#: f81dfca9eaf142aabf6243ffebb15d3a +#: f81dfca9eaf142aabf6243ffebb15d3a +msgid "The camera video quality for the voice channel's participants." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_voice_channel:6 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_voice_channel:42 +#: c5cb71ee58114ad9a77c365f6c9176be +#: 882663e87fa341189dff841fac58e4ba +msgid ":class:`VoiceChannel`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:3 +#: 63e5deabd69a4e71b26eabfb7b24de5d +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_stage_channel:8 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_stage_channel:30 +#: c125cd5cd18a4cc9bc46d5d9206d57e7 +#: 3682e80e1aff4ac38504209bf3c75b67 +msgid ":class:`StageChannel`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:3 +#: c2b2f7d2a8a84fc88f7a5a1071887bf2 +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:15 +#: 6a39c30db0244703b82139035e88f91d +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:48 +#: eb7dfe39426b4d8abafbed2980956151 +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:41 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:48 +#: acba40fd9b99460bb43889ba61c943d4 +#: 674bb951bf6f4615bdd90432ab644f2c +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_forum_channel:8 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:56 +#: 40f5253a0a994369be22ef233358809c +#: 18dbe7f3736a46b086fab0dc3f51122f +msgid ":class:`ForumChannel`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_forum_channel:60 +#: a86092ffb99e4f6d861dfb93fcdd2b28 +msgid "The argument is not in proper form." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_category:3 +#: 79a4e988b37d4e64afe1d69afb920ca7 +#: 9bdb1e626e5b4c1f9dad1bb9f2df7372 +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_category:7 +#: 716d3c3986d448ba8bbae24d3a927b3d +#: 9100aed34bd14af28745ceddb65aeb80 +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_category:11 +#: 27c0ba54755f4232854c7bb1e836306b +#: 5f28803b6126460f925f168cd21164cd +msgid ":class:`CategoryChannel`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.leave:3 +#: b1abcb9f0f754be0b71b198a7424036c +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.leave:9 +#: 372e626a7b2c4524bb3ba6cd71060653 +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.leave:12 +#: 1c39e7d936124a0bb40b3516844d893f +msgid "Leaving the guild failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete:3 +#: 6ddfed444a50419fb1453c64936386f2 +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete:6 +#: e59e369114c1423aa81d821f040d9c7f +msgid "Deleting the guild failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete:7 +#: 32c7959e2e0d475aaff8585af43a2269 +msgid "You do not have permissions to delete the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.set_mfa_required:3 +#: 2a70d99413c1496a8359c704195070fe +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.set_mfa_required:7 +#: c77287e8b0af409aa38371f49a55b252 +msgid "Whether MFA should be required to perform moderation actions." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.set_mfa_required:10 +#: fd273e9c1b4d49e0807f3df28ccebf24 +msgid "The reason to show up in the audit log." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.delete:10 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:35 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:35 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.set_mfa_required:13 +#: ../../../discord/member.py:docstring of discord.member.Member.edit:84 +#: ../../../discord/member.py:docstring of discord.member.Member.request_to_speak:17 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.cancel:17 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.complete:17 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.delete:6 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:54 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.start:17 +#: 6a5a47ad973940209028891e87d59314 +#: 6e383a0f60374e1792867357bb73d27a +#: 6e383a0f60374e1792867357bb73d27a +#: 6e383a0f60374e1792867357bb73d27a +#: 0401bd2a8e2641b4b33a27e26bec88b9 +#: 6e383a0f60374e1792867357bb73d27a +#: 6e383a0f60374e1792867357bb73d27a +#: 845342df7f694a18b74e63bd8283fbf9 +#: 6e383a0f60374e1792867357bb73d27a +#: 6e383a0f60374e1792867357bb73d27a +#: 6e383a0f60374e1792867357bb73d27a +msgid "The operation failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.set_mfa_required:14 +#: f00beb8bcf8b4e62b56d0ffbd22cfff0 +msgid "You are not the owner of the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:3 +#: 11428f2987084ae8a40f98220ed55984 +msgid "Edits the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:5 +#: 3014c6612676410f8e42c405e062f6b6 +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:8 +#: 83bdf14b43b6420dbc3bb9615f728f89 +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:11 +#: 4cef9bdd20ec471381b60d7e5b638401 +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:14 +#: a056ab336703485491f8ed91c4cd7526 +msgid "The newly updated guild is returned." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:18 +#: dd46e3094d2f4ce3882c5849c7f57d9e +msgid "The new name of the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:21 +#: 8a2a5c56f33e4533b97b13d27713e4d5 +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:25 +#: bd982c8dcd424f1d888906966c6520e7 +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:30 +#: 62998ed161f747af97127a6f4b69dea8 +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:35 +#: ae92e8acc94045e7b21be41f9f3e3d51 +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:41 +#: b263908257734e2596e92d68c51e1fe5 +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:47 +#: a353ef800ffd4c0285090d9df4e8e459 +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:51 +#: 222420833b4f41f3a3e29975e1d78035 +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:54 +#: 57955f97485b4a8d99435d0ed84493b4 +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:57 +#: ee57edd89c934f6f8851f745bd657faa +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:61 +#: e00b07f969094865b88d709b4e3b2b73 +msgid "The new verification level for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:64 +#: 58b9d36ce2304eb7ae2a7d248bc3d561 +msgid "The new default notification level for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:67 +#: e848eb60847643f392c41d9933562d1f +msgid "The new explicit content filter for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:70 +#: 9c088bed23924d1299dd212181955017 +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:73 +#: e4e7e720a8eb48a3802a88baea0f0a0a +msgid "The new system channel settings to use with the new system channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:76 +#: e8c42c080f354eb089e1fecd40acd31f +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:80 +#: 9fbd7fff4fd24355935af8d2aae792f1 +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:85 +#: 3242067dfd4e44b78067a933e8675cde +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:90 +#: 387f2c8ecb814ef79b4d196dc73a9991 +msgid "Whether the guild should have premium progress bar enabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:93 +#: ab83fdbf1e0e4760b895cdc4cf06ee7e +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:96 +#: 226196ae337f47ba9ed1b2641b83f3df +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:99 +#: f2ec2f8365b0482f88522cb620b9f3c2 +msgid "You do not have permissions to edit the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:100 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:19 +#: 7026e8922b26447f903df8f0411dae38 +#: 3d2005f11a794335a10c47ceb9494569 +msgid "Editing the guild failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:101 +#: ae815105c2f445988a7245f534d3ec20 +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:103 +#: cf020628c49b457ab63b2155e49a9aa1 +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:33 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:31 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:33 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:31 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:31 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit:105 +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:21 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:21 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:21 +#: ../../../discord/member.py:docstring of discord.member.Member:48 +#: ../../../discord/role.py:docstring of discord.role.Role:53 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:27 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:29 +#: ../../../discord/template.py:docstring of discord.template.Template:52 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:33 +#: 276f56a64f5843658e8be434f64806d5 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +#: 9c735f0e65834a429826e96e1cd0e8e1 +msgid ":class:`Guild`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channels:3 +#: ec1d25a9867d4249aee938ced8744313 +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channels:7 +#: a060dfadcca74ce8a74827770f267656 +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channels:11 +#: 72a6ea47b50d444e8be720b4e9f920b9 +msgid "All channels in the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channels:12 +#: ff60027791904e2da51e8afb72d19bc6 +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channels:14 +#: 77c5aece3a47484991744680b8ff1713 +msgid "An unknown channel type was received from Discord." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channels:15 +#: 4e3038da83364fee951438fc677b1bcd +msgid "Retrieving the channels failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.active_threads:3 +#: 08d8e0b261174bf5985026c2d38886bc +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.active_threads:5 +#: 6cdf67c965c0468395de19b1edb81445 +msgid "This includes both private and public threads." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.active_threads:9 +#: 77aa93650f0548b5b5f44e7454c3251a +msgid "The active threads" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.active_threads:10 +#: f1336549afe545e5b63468ec39a2d9a8 +msgid "List[:class:`Thread`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.active_threads:12 +#: 90fc74fa0c694a70aed7f1070b0dcc9a +msgid "The request to get the active threads failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.search_members:1 +#: c3a5be09680c4bb4b29c379de1ff3ad5 +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.search_members:5 +#: 3a0c12402f8e4f1c9a8df56e6f478ee0 +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.search_members:10 +#: 0de4b1e2691e48e18560ab218d588c8c +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.search_members:13 +#: 4e654b49af1d473d943ba41ab77a4b3f +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:33 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.search_members:16 +#: 92f75e3a49844fddaa6a5089964c0135 +#: accd314ed7a443a092b37ec3dd0d8643 +msgid "The list of members that have matched the query." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:34 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.search_members:17 +#: ../../../discord/widget.py:docstring of discord.widget.Widget:47 +#: 12afd1d7c7e440c880a4b51741d666bd +#: d1bc4b075a1f4d74beb00c7b12f21914 +#: 4ab8c0068b7244b3a7274cfc050aaa1f +msgid "List[:class:`Member`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_member:3 +#: 34622231a6d44019beafcb50678c74cb +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_member:7 +#: 9e8f21a714514f38bc975340a5d615d2 +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_member:11 +#: eaf9c2a41dc3449bad4fa716e05919fe +msgid "The member's ID to fetch from." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_member:14 +#: c8716867e27c47d199c918ab7f1fd42a +msgid "The member from the member ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_member:15 +#: a57ef03bb44d468185e9564cdc18a638 +msgid ":class:`Member`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_member:17 +#: 125f70fac7604877b0bd457d9307c8df +msgid "You do not have access to the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_member:18 +#: 6dea9ef6b41e49789e8679ae2d3c66f3 +msgid "Fetching the member failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_ban:3 +#: 998765fd112f49c7890d221c7b3df54f +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_ban:5 +#: 4d271df745ba4e4d8d75b0690e6c5fec +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_ban:9 +#: 8feaeaab6d0c4bfc83cfdc3dc629cfc0 +msgid "The user to get ban information from." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_ban:12 +#: 61c138eec62643948c4a0a9ef41b24b1 +msgid "The :class:`BanEntry` object for the specified user." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_ban:13 +#: f1265b8b1c3b4065854d6017be37b9a0 +msgid ":class:`BanEntry`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.invites:10 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:30 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_ban:15 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.invites:11 +#: 73cd4a54b33f468fbd6598ae6039b5ad +#: 53af8ec9a63546c58412a8f4710b321d +#: 9c4c94aac34c4e5daa5dec9015f1399e +#: fc14665c6b8c42f7b2021236fbe289a1 +#: fc14665c6b8c42f7b2021236fbe289a1 +#: fc14665c6b8c42f7b2021236fbe289a1 +#: fc14665c6b8c42f7b2021236fbe289a1 +#: fc14665c6b8c42f7b2021236fbe289a1 +msgid "You do not have proper permissions to get the information." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_ban:16 +#: 3f8c6f500b8d4c88b4ddce6ab0a57f7f +msgid "This user is not banned." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.invites:11 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:31 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_ban:17 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.invites:12 +#: e91a22a8592f4d83adfff9b890100c70 +#: a18ed0d4d7704b9ea30fe7d2b8d050b0 +#: dd2d4279f4094eb185c46164537534df +#: f604401cde9a47eeb37838e3eefdad3d +#: f604401cde9a47eeb37838e3eefdad3d +#: f604401cde9a47eeb37838e3eefdad3d +#: f604401cde9a47eeb37838e3eefdad3d +#: f604401cde9a47eeb37838e3eefdad3d +msgid "An error occurred while fetching the information." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channel:3 +#: 63c9970013b74eab9035aba0b82c855e +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channel:7 +#: 80b8d9d092d847b29eea8795f8e6dbc8 +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channel:11 +#: dd265519b29f40288f55accbe36ad0d2 +msgid "The channel from the ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channel:12 +#: a964c939aaf04a96ac70d5a8fdd4a8b6 +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channel:14 +#: 59ba84c18b934ead84f0ba94f9e4e6a2 +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channel:15 +#: 437ad0ad76014283a02907a34ca01091 +msgid "Retrieving the channel failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channel:16 +#: 6af31751ceb34a3fa0252e9b345829e1 +msgid "Invalid Channel ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_channel:17 +#: 86d5ca29effe4cb09b8d22c86e77656e +msgid "You do not have permission to fetch this channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:3 +#: 8d1aa24b8df846e198d57a66eaa690bd +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:8 +#: ef722d362274401cadccae1d34099995 +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:12 +#: 7a6783ca6f8d40a9b189fd699aa9ba79 +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:19 +#: e985008dbcff48aca12f0100d929a58b +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:22 +#: c668a0aaaac3483eb31f1d9e8827eab2 +msgid "Retrieve bans before the given user." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:25 +#: f83085d7ced84766af1276c9e2d23b61 +msgid "Retrieve bans after the given user." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:28 +#: 73f3c061a7dc49a6b7a0281cd4ee722a +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bans:32 +#: 1b254db9f76c48a3a18af4c1aa3d16e4 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:3 +#: 36bd9264268b41bc82369216df6d556e +msgid "Prunes the guild from its inactive members." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:5 +#: 9e184b794e3a48488563772ec896436e +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:8 +#: 5d3ed663a2d247ae941a48d1f7ddf3d7 +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:11 +#: f47e977e4213413095b13e20c8fa36d0 +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:14 +#: 2a76227ee9244bd1be22bcc036548369 +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:16 +#: 05582715c7ee4711947323e84fc4ba60 +msgid "The ``roles`` keyword-only parameter was added." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:8 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:20 +#: 0fd3894014d744e3a1de5dc175707f11 +#: a6643b5e6f8548d2adfc203bbb424b8c +msgid "The number of days before counting as inactive." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:53 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:23 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.unban:14 +#: ../../../discord/member.py:docstring of discord.member.Member.move_to:18 +#: ../../../discord/member.py:docstring of discord.member.Member.remove_timeout:11 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout:11 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout_for:13 +#: 3224d7c321cc4c78b44b8fc4932f2b89 +#: 6211cc2aa291498796952ffa64eee7c9 +#: 6211cc2aa291498796952ffa64eee7c9 +#: 6211cc2aa291498796952ffa64eee7c9 +#: 6211cc2aa291498796952ffa64eee7c9 +#: 6211cc2aa291498796952ffa64eee7c9 +#: 6211cc2aa291498796952ffa64eee7c9 +#: 6211cc2aa291498796952ffa64eee7c9 +#: 6211cc2aa291498796952ffa64eee7c9 +#: 6211cc2aa291498796952ffa64eee7c9 +#: 6211cc2aa291498796952ffa64eee7c9 +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:26 +#: 3f1d1f1bc748436e9ef41a0a4d024fe7 +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:32 +#: 9fe81644274d4411b33f21d867b79cbe +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:20 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:36 +#: 5aa6ae18b0af4102b10a032b1b6a7e8f +#: 913056eb50fa459dbf010b7884d25537 +msgid "You do not have permissions to prune members." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:37 +#: 5dc1ca51912b48ebbb7a301e0e5c7be4 +msgid "An error occurred while pruning members." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:22 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:38 +#: 95e8775caf6c4fa98a50493042af3094 +#: 7b88402799514b5cb8b7bbe58831a29e +msgid "An integer was not passed for ``days``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.prune_members:40 +#: f0e830e71ab24714baf086e45202c039 +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.templates:3 +#: 5a96260e347a4b21ad9f5a11e79dca0d +msgid "Gets the list of templates from this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.templates:5 +#: ef25d2947bf74162a067f3be348525dd +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.templates:9 +#: 7d7692d53cee484d8d516a477ded5a56 +msgid "The templates for this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.templates:10 +#: a2964b1b45464c15bdd7949f8b1999c1 +msgid "List[:class:`Template`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.templates:12 +#: 6a48d471dda844de8120ebeb9ac61d4f +msgid "You don't have permissions to get the templates." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.webhooks:3 +#: ed3a05b8d6c8434895efe539f774ddd9 +msgid "Gets the list of webhooks from this guild." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:5 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.webhooks:5 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:5 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.webhooks:5 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:5 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.webhooks:5 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.webhooks:5 +#: a41a818bb60d4197af2cfa72219eee39 +#: 81f00aa66a804c659436513d84f58331 +#: 81f00aa66a804c659436513d84f58331 +#: 81f00aa66a804c659436513d84f58331 +#: 81f00aa66a804c659436513d84f58331 +#: 81f00aa66a804c659436513d84f58331 +#: 81f00aa66a804c659436513d84f58331 +#: 81f00aa66a804c659436513d84f58331 +#: 81f00aa66a804c659436513d84f58331 +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.webhooks:7 +#: 1b4210747893413196486dea81f2d24a +msgid "The webhooks for this guild." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.webhooks:8 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.webhooks:8 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.webhooks:8 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.webhooks:8 +#: 7253240c20004a45b527af391c6c7fae +#: 99e2ef5f06e840b49beef674316afa93 +#: 99e2ef5f06e840b49beef674316afa93 +#: 99e2ef5f06e840b49beef674316afa93 +#: 99e2ef5f06e840b49beef674316afa93 +msgid "List[:class:`Webhook`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.webhooks:10 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.webhooks:10 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.webhooks:10 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.webhooks:10 +#: cfc0d35c673d41278b8b1cd4581fee83 +#: a35aad3bdf6a4eab97d658e6525ce10a +#: a35aad3bdf6a4eab97d658e6525ce10a +#: a35aad3bdf6a4eab97d658e6525ce10a +#: a35aad3bdf6a4eab97d658e6525ce10a +msgid "You don't have permissions to get the webhooks." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:3 +#: 6ed6691303c4485ebb8803ae67509f8e +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:11 +#: d27a0fa2d9394b858c7ef2054f3127e2 +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:11 +#: 47d3809a6ba642ea9c25fc471b1a07e4 +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:17 +#: 019bb91bee7f46fc8b771b3e5bf99c0f +msgid "The number of members estimated to be pruned." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.estimate_pruned_members:21 +#: f46f5a56cae94de9a978505c18e3df19 +msgid "An error occurred while fetching the prune members estimate." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.invites:3 +#: 0970de5aed86413dab17883b99c8afac +msgid "Returns a list of all active instant invites from the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.invites:5 +#: e991e4e67c0f4be1ad9b6e7230f98b7c +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.invites:7 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.invites:8 +#: b4eb1b6da60540cd89dedf2329be357a +#: 74f1849dc85b465e874fdcba96c50071 +#: 74f1849dc85b465e874fdcba96c50071 +#: 74f1849dc85b465e874fdcba96c50071 +#: 74f1849dc85b465e874fdcba96c50071 +#: 74f1849dc85b465e874fdcba96c50071 +msgid "The list of invites that are currently active." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.invites:9 +#: b28e08bf49ff49a7ace96e2b061393ed +msgid "List[:class:`Invite`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_template:3 +#: 615e1f0d0cb7492abcab7502b8f8e9a0 +msgid "Creates a template for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_integration:5 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_template:5 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.integrations:5 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration.delete:5 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:5 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.sync:5 +#: b248bb63d2404648aa22ca648a5d0ca8 +#: d99eae95a87a4b7f913ecc5a4c7ca6d6 +#: adfb039ef6d545d6aa4a65fee758b611 +#: a582a220595b498096d03893062a9df0 +#: a582a220595b498096d03893062a9df0 +#: a582a220595b498096d03893062a9df0 +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_template:11 +#: ../../../discord/template.py:docstring of discord.template.Template:19 +#: 8a02d4ac608d419788e95d560d214721 +#: 6573de58430a435fb453dcffcad5c318 +msgid "The name of the template." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_template:14 +#: ../../../discord/template.py:docstring of discord.template.Template:25 +#: d305a169d2574be8813ea5e8a02a9756 +#: 29ab765f02d240d882a315f3e85185da +msgid "The description of the template." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_template:17 +#: 760cda1cd1bf483ebd28b138dbac9316 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_integration:3 +#: 0c00ff66a0c74ba8bdb568b9ade08e40 +msgid "Attaches an integration to the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_integration:11 +#: 7055633b41f14e90817f176388a13d25 +msgid "The integration type (e.g. Twitch)." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_integration:14 +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:7 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:7 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:7 +#: 1346001cfed24b21b072ef9856fdbdae +#: 944b63c7272645ac8e3cb2e3e21563fe +#: 944b63c7272645ac8e3cb2e3e21563fe +#: 944b63c7272645ac8e3cb2e3e21563fe +msgid "The integration ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_integration:17 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.integrations:13 +#: b2080ec5a9504c288adff5bb581385d4 +#: d113a7909c6d4a71bf31959da1ae369d +msgid "You do not have permission to create the integration." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_integration:18 +#: 8b360cadc5e6410f9163b009e1798c17 +msgid "The account could not be found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.integrations:3 +#: 55c98a3dddb043f98fb6d84b2d473f35 +msgid "Returns a list of all integrations attached to the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.integrations:10 +#: fed6ce5bcef64a35ab2b8b162b5eb50c +msgid "The list of integrations that are attached to the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.integrations:11 +#: 707fa57d80054d489f59022167789830 +msgid "List[:class:`Integration`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.integrations:14 +#: 5ad7153c64f047ad9daa906a9becef09 +msgid "Fetching the integrations failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_stickers:3 +#: 00dbbbe1eab34f6d894eca32b04b95fc +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_stickers:9 +#: 64c032cddf1e44aabf81215b2fd65a7d +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_stickers:11 +#: 0be1df9394af4fffa74cf3c2c1f2e4d7 +msgid "An error occurred fetching the stickers." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_stickers:13 +#: 55697da9b79446dfb69b28f4fa3adfb2 +msgid "The retrieved stickers." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_stickers:14 +#: 1714df6157b64ca5a1a90b995fd44623 +msgid "List[:class:`GuildSticker`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_sticker:3 +#: a8d670ef84b143d982f79b48c0b1c562 +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_sticker:9 +#: 63867ec00f414a55bbef1821d171b784 +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_sticker:13 +#: f0a03ba8de3d4db5a3968b94e40ed0bd +msgid "The sticker's ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_sticker:16 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem.fetch:5 +#: 2e5e5cb4083b4d768bb3ca349cd4cc41 +#: ee33114d35c04bba9e3a60b0daace838 +msgid "The retrieved sticker." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:27 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_sticker:17 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:19 +#: 2802fcb7a86b474589f5c11ccebdfc55 +#: 0ef37b2e6d2e442fb19065b7614a9b0d +#: ae85608176334c78a30d747892aebbd0 +msgid ":class:`GuildSticker`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_sticker:19 +#: 6f2712591be94a89ac8d4530d2c62af1 +msgid "The sticker requested could not be found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_sticker:20 +#: 10ab3b6a5c934028bb0caa016beaed29 +msgid "An error occurred fetching the sticker." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:3 +#: 2bc1d5ddf1094d0ca12d95d8a2c84076 +msgid "Creates a :class:`Sticker` for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:5 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_sticker:5 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.delete:5 +#: 19d83ba9c2b64a40a0d99a566e2f1570 +#: b08f600f8fb24a939877a9f21c67b6b9 +#: d9bcd31ba9c8417eaebec2098f4a6866 +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:11 +#: a6460e077e1044cd82e7514c43a74c85 +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:14 +#: b83cc1df192e44cfa969e71988e5677c +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:17 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:12 +#: d1d3341da8154cc6b4378671085d6876 +#: da50ce0daeb14bac9177688a530a501f +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:20 +#: a66e5eaafd104f64b94753b15e176012 +msgid "The file of the sticker to upload." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:23 +#: 66fe361a6d7d46a4a6844cfae8e53e8d +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:26 +#: c5a2ccdde03b45da82a41aafe5ca11f4 +msgid "The created sticker." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:29 +#: e497f6606bf64d688a4d1adcbe4550d5 +msgid "You are not allowed to create stickers." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:30 +#: 4014ebbe73454bba80fffcc20a76d48e +msgid "An error occurred creating a sticker." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_sticker:31 +#: 0d272e8551554a528b510633e63e660b +msgid "The parameters for the sticker are not correctly formatted." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_sticker:3 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.delete:3 +#: bcb585d0888b47c5aa7e11bd76e69153 +#: e42fb4e9e6cd462899cde8b8f13f183e +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_sticker:11 +#: 389b2c95a682457586d94318d12dcdc0 +msgid "The sticker you are deleting." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_sticker:14 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.delete:9 +#: f7a4f3ca9f0840278988c57b3e1584ba +#: eb21701dec21455885321861a71e8a93 +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_sticker:17 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.delete:12 +#: 57b98898cf2b4745af78f85b0f783f43 +#: f882c67f674f47e397cfa9cbd16ed37e +msgid "You are not allowed to delete stickers." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_sticker:18 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.delete:13 +#: b1d13694e29548c2b31bf65409c39404 +#: 854d757ca8b241ebab7c4cacf7bcec8c +msgid "An error occurred deleting the sticker." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emojis:3 +#: 7e19d4e700d74093a3cdc5c09aa87a7d +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emojis:7 +#: 0e34069b5d51441ab8c457a52f2d4c01 +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emojis:9 +#: 6c8e39b268f349da8aa4bf43ef2e8dbd +msgid "An error occurred fetching the emojis." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emojis:11 +#: ab7b44a854f44e168c38f0c4119385b0 +msgid "The retrieved emojis." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emojis:12 +#: d20f42179eff44a7a621d7a831ddbe4b +msgid "List[:class:`Emoji`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emoji:3 +#: cc1afd530dcb498eab35fafe4575a8d9 +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emoji:7 +#: 20deca88487948c09b27806328bb2663 +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:37 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emoji:11 +#: 53a1817de08548d2a68fbe1e43614c15 +#: 04438e1da08e48938f42dbf2de330ba9 +msgid "The emoji's ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emoji:14 +#: 906d9a9b33fd4c2fae5128b182620971 +msgid "The retrieved emoji." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:25 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:29 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emoji:15 +#: 1eb1e8a92e454d7bbee3b5e9541f84fd +#: 37a41037481642b78fafaee019f75015 +#: 399573321d6c4868983d0d4e6e50494d +msgid ":class:`Emoji`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emoji:17 +#: 7dca8307be0f46d9bc1484bffd2db96e +msgid "The emoji requested could not be found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_emoji:18 +#: 1268b68564384470a7e408eb7ffe05cc +msgid "An error occurred fetching the emoji." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:3 +#: c19298ed5a9d4c7f94a5ba4c63da6ecf +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:5 +#: 67653b1edbe444cfa63bdb3f8dd142ee +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:8 +#: 017a600143d2422fa0e812681706e91c +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:12 +#: 97c6fd9370bf4aea96238eab140f5d1e +msgid "The emoji name. Must be at least 2 characters." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:15 +#: 2fec2eb4ceb747919d9b166d18265401 +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:19 +#: 1e4d12b61e6d490598ae6693db9198cf +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:22 +#: bd0e76c282eb438dab73ee18a87a6267 +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:25 +#: 949a7873ef1f4058b494809e97495c5f +msgid "You are not allowed to create emojis." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:26 +#: de6fe0f7f1e4471d96ac84fcaccafdad +msgid "An error occurred creating an emoji." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_custom_emoji:28 +#: 7840ab867f304e7f922df2244f5e9e17 +msgid "The created emoji." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_emoji:3 +#: 29f350f034fc4530acff6df42f01d8c8 +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.delete:5 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:5 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_emoji:5 +#: ff6de30aac954fea9e2f208059f9cb4c +#: fb90b1ef5ff84a2fa79294890e940a4e +#: fb90b1ef5ff84a2fa79294890e940a4e +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_emoji:9 +#: 5168a27eeb5742e19c0c8ed921c02486 +msgid "The emoji you are deleting." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.delete:9 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_emoji:12 +#: 678beeb23b2d4987b952b0071cc7e655 +#: 83fa5c76aa45496c8a174a7aba164212 +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.delete:12 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_emoji:15 +#: d87322ed656a4631bd9fa98caa580e08 +#: 06192bc5820542e09a610656abe007be +msgid "You are not allowed to delete emojis." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.delete:13 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_emoji:16 +#: 595f6eee2e13488f8569abd8053aeeb1 +#: dd8fe40fffc947b8adf8f1e9fdfa8d16 +msgid "An error occurred deleting the emoji." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_roles:3 +#: 6c8d370449314b2187994721e4cca657 +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_roles:7 +#: 75df743b5f774665a0376cf6ee506507 +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_roles:11 +#: 113e7cb6f37f43a78caf4740e39fb7b8 +msgid "All roles in the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_roles:14 +#: de362117a6804bf9aaa7770e8b9a8e18 +msgid "Retrieving the roles failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_role:3 +#: 681fb3ca2ecf4e84ac864c64062b94f3 +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_role:7 +#: 1f6a9aaf78384eabae7f935cc30d3215 +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_role:11 +#: 5903ec8f839b4c2d9dc2d902b5329cf4 +msgid "The role in the guild with the specified ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:45 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_role:12 +#: ../../../discord/role.py:docstring of discord.role.Role.edit:51 +#: 79519cee140f4bafa12f86a5c341f0e7 +#: 79519cee140f4bafa12f86a5c341f0e7 +#: 79519cee140f4bafa12f86a5c341f0e7 +msgid ":class:`Role`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_role:14 +#: b28ab0944bac46fcb93d05451f0c7447 +msgid "Retrieving the role failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:3 +#: 681fb3ca2ecf4e84ac864c64062b94f3 +msgid "Creates a :class:`Role` for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:5 +#: ../../../discord/role.py:docstring of discord.role.Role.edit:8 +#: dcfe27cdb7b04f7785b896b227db69aa +#: dcfe27cdb7b04f7785b896b227db69aa +msgid "All fields are optional." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:7 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:5 +#: 25b3022700bc40c98280cd7ad9067eac +#: 25b3022700bc40c98280cd7ad9067eac +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:10 +#: ../../../discord/role.py:docstring of discord.role.Role.edit:10 +#: 44506364e73a40a2b43adf68402543c1 +#: 44506364e73a40a2b43adf68402543c1 +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:14 +#: 2f9a2e14086443cf9aca60ecc5d37418 +msgid "The role name. Defaults to 'new role'." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:17 +#: d215923b1e584a69a414a1184375f930 +msgid "The permissions to have. Defaults to no permissions." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:20 +#: 0a615245fd3c4c0b8e29edf8e72d8d88 +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:24 +#: 93bce075ad454d48ae59eb4d231dfd8d +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:28 +#: b1a288ba1940445ab63c5c1bde1d1efa +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:32 +#: 1d2ebd073b2c4459be628151776f3b50 +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:35 +#: ba8c8b44279743f2bcd9efddc53d5b58 +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:40 +#: ../../../discord/role.py:docstring of discord.role.Role.edit:46 +#: 9cdff82aa82a440db4251f66f2e822f6 +#: 9cdff82aa82a440db4251f66f2e822f6 +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:44 +#: c965ce93ea074ed78be662486645a373 +msgid "The newly created role." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:47 +#: 6ac5de532acc4a0386c665a37617cb7b +msgid "You do not have permissions to create the role." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:48 +#: 013ad29dd49441ce9292d34076552ad7 +msgid "Creating the role failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_role:49 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:35 +#: b7ba11634247483a88e4f438230dcdbf +#: dfd9adbb613a4f5491d078cb00e63802 +msgid "An invalid keyword argument was given." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:3 +#: 8a6532467f3445c8aac59a9849fe69d8 +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:10 +#: 53cfc538295b49a3b7caf1413df5d719 +msgid "Example:" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:23 +#: 5be883a67eca47498aa481fa2ef1935e +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:27 +#: db47caaeff6d4546bb0643624faa9b92 +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:30 +#: 12db7fb56e4240d5bb76d9855001ebfc +msgid "A list of all the roles in the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:33 +#: c4e82f0721b340f080c4d67188f58b04 +msgid "You do not have permissions to move the roles." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_role_positions:34 +#: 776b7a3630cc4e66bf21286c273569ff +msgid "Moving the roles failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.kick:3 +#: cb317007469e4271a5e6c0606e32c86c +msgid "Kicks a user from the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:5 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.kick:5 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.unban:5 +#: 71041b43fe424416b87fd77ec0c5d5e4 +#: 71041b43fe424416b87fd77ec0c5d5e4 +#: 71041b43fe424416b87fd77ec0c5d5e4 +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.kick:7 +#: d7b0f37f560049afbe7c47f86d66467b +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.kick:11 +#: 45009620b7f94266a041b3e310508761 +msgid "The user to kick from their guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.kick:14 +#: 1c2dbbc4e17f448cb9a05dec693b0442 +msgid "The reason the user got kicked." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.kick:17 +#: 0cb82bb2c31e4229afae977226735946 +msgid "You do not have the proper permissions to kick." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.kick:18 +#: 7c6a72f5d47441b7b8953ae50bb69637 +msgid "Kicking failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:3 +#: e7e76ceffdd84efa98c4d457787247b9 +msgid "Bans a user from the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:7 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:7 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.unban:7 +#: 7898787d528947f9b335b0550794b0da +#: 7898787d528947f9b335b0550794b0da +#: 7898787d528947f9b335b0550794b0da +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:11 +#: 964deba937b1486a8a65222912bd2eb2 +msgid "The user to ban from their guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:14 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:22 +#: f12004652b6a44c3aac2cd2af378b28a +#: f12004652b6a44c3aac2cd2af378b28a +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:19 +#: 921f87c6d6924435af9237d0e0831da0 +msgid "The reason the user got banned." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:22 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:34 +#: f0ed8f3842b8443994b81e6081dc5d00 +#: f0ed8f3842b8443994b81e6081dc5d00 +msgid "You do not have the proper permissions to ban." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.ban:23 +#: 2f002500714e4934a50414836da732aa +msgid "Banning failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:3 +#: dd877201bae44c008dc09493b09db8e6 +msgid "Bulk ban users from the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:5 +#: 33f03ddefbd64b499a435901401beee3 +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:19 +#: 160521264b974bca8bc5a69bfc8efb20 +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:27 +#: a2d44ca22def408cae0e51c561ea6252 +msgid "The reason the users were banned." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:30 +#: c8be38577fe0452f83af35aa10e6ba6f +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:31 +#: fc54d0cdae1c407fb5edbf6291ec62a5 +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:33 +#: aeec79561bb949d99becec9c2f6b2c73 +msgid "You tried to ban more than 200 users." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.bulk_ban:35 +#: 5297b180a9ce4baa8074dd8c40f5e39d +msgid "No users were banned." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.unban:3 +#: 0d95fc42ca2e46e4b00022b067e9c37e +msgid "Unbans a user from the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.unban:11 +#: 31d409761a5e47a18a41b77429bddf8e +msgid "The user to unban." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.unban:17 +#: 1273209cc03a4f17a1a441da321140a8 +msgid "You do not have the proper permissions to unban." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.unban:18 +#: e7f66e79fcd445c9918e030dcbc3c959 +msgid "Unbanning failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.vanity_invite:3 +#: 53fc54fe12e441ceb936081f031cd6b9 +msgid "Returns the guild's special vanity invite." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.vanity_invite:5 +#: e6a89eec37044cf4aaba02a7cdffc538 +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.vanity_invite:7 +#: f95ef0a0ffad4af89dbac74c911ece29 +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.vanity_invite:10 +#: 61132536a75c4980ad027ff7010dd60d +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.vanity_invite:12 +#: aac84dd0fab64564aca458b9921f1cba +msgid "Optional[:class:`Invite`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.vanity_invite:14 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.welcome_screen:14 +#: 9afd0935187a461ab98d15477738fc11 +#: 9afd0935187a461ab98d15477738fc11 +msgid "You do not have the proper permissions to get this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.vanity_invite:15 +#: 92f4126e516b40a7ad0844916b460b61 +msgid "Retrieving the vanity invite failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.widget:3 +#: 6db9c141f3454a02956d67ae075181e2 +msgid "Returns the widget of the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.widget:7 +#: 6de997f9d74246c9896ec0512e55d05f +msgid "The guild must have the widget enabled to get this information." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.widget:9 +#: 5ae3e49f57f649848879953ba95e33b5 +msgid "The guild's widget." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.widget:10 +#: 70de3135e29b4adc9c43ed76a9f743bc +msgid ":class:`Widget`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.widget:12 +#: c3c4d3e924ff42d4af62063676318e1e +msgid "The widget for this guild is disabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.widget:13 +#: 7164076f8680428b9070baedc4dcd961 +msgid "Retrieving the widget failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_widget:3 +#: 884a618895b24208824d7df0d9f00753 +msgid "Edits the widget of the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_widget:5 +#: cc0f8147df47422290bc58a79ac5732b +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_widget:11 +#: f8df75bf67b94e6e9f9cc36b91a776e3 +msgid "Whether to enable the widget for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_widget:14 +#: eed0ed35d95f4b0cbd48c7113ac1bcbc +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_widget:17 +#: 6937fbe0b1234f878097827fb7d43b77 +msgid "You do not have permission to edit the widget." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_widget:18 +#: be2d233cd66048c18682d4d806a9a250 +msgid "Editing the widget failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.chunk:3 +#: d93329457a654f3bba9f67c57323690d +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.chunk:6 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:6 +#: 9544932f24934807a6ea75123701b991 +#: 9544932f24934807a6ea75123701b991 +msgid "This is a websocket operation and can be slow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.chunk:11 +#: 70c561834f024cd0883be83ee259e182 +msgid "Whether to cache the members as well." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:3 +#: 4781c9b928184ff3a261a54fc07fdfbd +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:11 +#: 7f885af8335740ee876b3af40fb3042f +msgid "The string that the username's start with." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:14 +#: 3e87b46212064dde916a768dd405fd77 +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:14 +#: 2e4eecbdbe4841fabc4431d67b034d80 +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:19 +#: d516d96fa2ad4c3a99294f38c51b62e3 +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:23 +#: 3b9a20e913de48aaa1c019f3d468957a +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:23 +#: a5456f3fda6040e7acac052db041d781 +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:29 +#: 176463243a414ff0b64fdecf6b9717cb +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:36 +#: b7e36216d69045c4aff6ea6fc951ab13 +msgid "The query timed out waiting for the members." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:37 +#: 5b3af2d6e1464e3f826c1461e5bc74cb +msgid "Invalid parameters were passed to the function" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.query_members:38 +#: 083e7113abc141828c9963a0a2a331b3 +msgid "The presences intent is not enabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.change_voice_state:3 +#: c1a9a546f19746c78140e6093203a0c6 +msgid "Changes client's voice state in the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.change_voice_state:8 +#: a33b965829f846f79a99cf1cae906491 +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.change_voice_state:11 +#: a6f7e41be9e9486b86706a0b86f3b77e +msgid "Indicates if the client should be self-muted." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.change_voice_state:14 +#: a53b68d5aa2d4bf5abd74686fd90145d +msgid "Indicates if the client should be self-deafened." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.welcome_screen:3 +#: 9bda182e2a214445a72c17f558913fe7 +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.welcome_screen:5 +#: 2f6bd3131f2042e389a6cf5c679145f4 +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.welcome_screen:7 +#: ff928f87056341a5a1d5860f421d87ab +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.welcome_screen:11 +#: ecc30a5b66ff403d9f99fa235321b757 +msgid "The welcome screen of guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:20 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.welcome_screen:12 +#: a8775024ec8c4156acf05824fcf64a34 +#: a8775024ec8c4156acf05824fcf64a34 +msgid ":class:`WelcomeScreen`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.welcome_screen:15 +#: 1aaffa8b3af54bc493fe065e0c985b2c +msgid "Retrieving the welcome screen failed somehow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.welcome_screen:16 +#: 2ca0a22a6e4f4d12bc55b9ac10cd1239 +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:3 +#: 99eed2c0f64445be860077576d0f2263 +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:5 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:5 +#: 0645a3e4c2e94af68988b850f3ac4c16 +#: 0645a3e4c2e94af68988b850f3ac4c16 +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:8 +#: b9c269e6c70948b49571ba727e4f63e8 +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:10 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:8 +#: f0b106b23b04473aa6fcdc972261afae +#: f0b106b23b04473aa6fcdc972261afae +msgid "The new description of welcome screen." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:12 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:10 +#: d6c4741ad35f4feda1007d4313472b28 +#: d6c4741ad35f4feda1007d4313472b28 +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:14 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:12 +#: 05a7a458521d4d14b6b4d4b4d4ee44fa +#: 05a7a458521d4d14b6b4d4b4d4ee44fa +msgid "Whether the welcome screen should be displayed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:16 +#: 69fcaacc9de94c0fa26eb00efdf57a41 +msgid "The reason that shows up on audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:19 +#: 24b50a56be2c4454ba4c69145e24289b +msgid "The edited welcome screen." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:22 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:17 +#: 001bef1ddd0c4b4e84fcd27b8df3d96b +#: 001bef1ddd0c4b4e84fcd27b8df3d96b +msgid "Editing the welcome screen failed somehow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:23 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:18 +#: 6003dd88fec7420199985ef5024bb31a +#: 6003dd88fec7420199985ef5024bb31a +msgid "You don't have permissions to edit the welcome screen." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_welcome_screen:24 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:19 +#: 2ae3a3676df24d8aabc07fc2d60eb677 +#: 0b7cc1a06b8244c7a6e371bb6495ee5d +msgid "This welcome screen does not exist." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_events:3 +#: 1146710c6f234b72868f4854820b1fe7 +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_events:7 +#: 1f6a9aaf78384eabae7f935cc30d3215 +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_events:10 +#: b93d82959ad540abb93c374a05b62412 +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_events:15 +#: 7803509167534117a3e927c61c8d6e47 +msgid "The fetched scheduled events." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_events:16 +#: 4efd44f0307d477eb185d6690ad7db25 +msgid "List[:class:`ScheduledEvent`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_events:18 +#: 488e46f3eb884958b2b4c9629a4b11c2 +msgid "The scheduled events intent is not enabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_events:19 +#: 8e4569e0213b4be6ab5b186e2f56f730 +msgid "Getting the scheduled events failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_event:3 +#: 8429230cb33b41c6ae22422ea1f3eb1b +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_event:7 +#: b9ab54b2a02d405a8507f76ce557bf9d +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_event:11 +#: a5ff8f1150f8474cb9bb6be02d54e2a6 +msgid "The event's ID to fetch with." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_event:14 +#: e033fc413f41483d87af4c519972741b +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_event:19 +#: 4a29e289bff74069ba4cc113ffe0bd97 +msgid "The scheduled event from the event ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:32 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_event:20 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_scheduled_event:8 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:161 +#: ea335cf575724209b2c07a48814c2c53 +#: 86baf481154547959ddb8413c5939b28 +#: ea335cf575724209b2c07a48814c2c53 +#: 86baf481154547959ddb8413c5939b28 +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_event:22 +#: b62feec903004869b092dfc14ed12962 +msgid "Fetching the event failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_scheduled_event:23 +#: 72f86761735b41cb87fa7b1c31a59bde +msgid "Event not found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_scheduled_event:1 +#: be73574af08f4eb28dbf633b9e545760 +msgid "Returns a Scheduled Event with the given ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.get_scheduled_event:7 +#: 5d68a842563a4de38d4c48588d6d5c44 +msgid "The scheduled event or ``None`` if not found." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:1 +#: f5cb5ca28d824761a94020f0a60ac378 +msgid "|coro| Creates a scheduled event." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:5 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:31 +#: 55dcb7456e3f40efbcb954cea6d49413 +#: 55dcb7456e3f40efbcb954cea6d49413 +msgid "The name of the scheduled event." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:8 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:37 +#: 2377bfb5becb4b0591ce93ddfe51545a +#: 2377bfb5becb4b0591ce93ddfe51545a +msgid "The description of the scheduled event." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:11 +#: 512f5da5b9094054a5601f150fbf130b +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:14 +#: 0e491a34f7424daf872bb453bf8f1395 +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:17 +#: afc2c8680c3b4c99b29dfeb41039ac2c +msgid "The location of where the event is happening." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:20 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:32 +#: 5f56ce92853748bdb97c7d6a998a2956 +#: 5f56ce92853748bdb97c7d6a998a2956 +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:25 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.cancel:10 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.complete:10 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:37 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.start:10 +#: 6f0e0e8f39384675bc1794823cb3fa20 +#: 6f0e0e8f39384675bc1794823cb3fa20 +#: 6f0e0e8f39384675bc1794823cb3fa20 +#: 6f0e0e8f39384675bc1794823cb3fa20 +#: 6f0e0e8f39384675bc1794823cb3fa20 +msgid "The reason to show in the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:28 +#: 6eca104b38b340f0a46b29a4c8199630 +msgid "The cover image of the scheduled event" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:31 +#: 546727e696df48378cae34ed85c59496 +msgid "The created scheduled event." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_scheduled_event:34 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.cancel:16 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.complete:16 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.delete:5 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:53 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.start:16 +#: 5d785162986749e2945e8c651dc507eb +#: 5d785162986749e2945e8c651dc507eb +#: 5d785162986749e2945e8c651dc507eb +#: 5d785162986749e2945e8c651dc507eb +#: 5d785162986749e2945e8c651dc507eb +#: 5d785162986749e2945e8c651dc507eb +msgid "You do not have the Manage Events permission." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.Guild.scheduled_events:1 +#: cfdafb562ce2471cb433dffc655b8923 +msgid "A list of scheduled events in this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rules:3 +#: e43b1b902c254f22982e6c92115c5491 +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rules:5 +#: a4eb186fe95e4d638aebdad1c96262c6 +msgid "The auto moderation rules for this guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rules:6 +#: 92001cdcd8024353b77d873048fca432 +msgid "List[:class:`AutoModRule`]" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rules:8 +#: 7fa3d786434c46bbb28a3203dbae0c3c +msgid "Getting the auto moderation rules failed." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.delete:9 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:34 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:35 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_auto_moderation_rule:11 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rule:9 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rules:9 +#: f4cb677bf946444db00720582cadf54e +#: cf5d9362cb0f4a96ae1fcd563b178d27 +#: f4cb677bf946444db00720582cadf54e +#: cf5d9362cb0f4a96ae1fcd563b178d27 +#: f4cb677bf946444db00720582cadf54e +#: f4cb677bf946444db00720582cadf54e +msgid "You do not have the Manage Guild permission." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rule:3 +#: 9fd0f32195da4f8a8ba6afeee64defe2 +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rule:5 +#: 8e9b5d93fd7248ffbc6f2a1a36e66f74 +msgid "The requested auto moderation rule." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:32 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rule:6 +#: b9a3c3d15f1d42158f2d6557141abe8f +#: b9a3c3d15f1d42158f2d6557141abe8f +msgid ":class:`AutoModRule`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.fetch_auto_moderation_rule:8 +#: be33175c8ed04894a62d75550622c6da +msgid "Getting the auto moderation rule failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:1 +#: 022f3795574a4ae9a73bc531c60b5f33 +msgid "Creates an auto moderation rule." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:4 +#: fc7c82e7ce5240ae87a4b8888a1834a8 +msgid "The name of the auto moderation rule." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:7 +#: 2bf99f7c1e524737a54f7496291c4a69 +msgid "The type of event that triggers the rule." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:10 +#: bd79dbece2e34f6883ab4c43f0eefdfe +msgid "The rule's trigger type." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:55 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:13 +#: 761219e812e54e64acae665e0f0a3ee0 +#: 761219e812e54e64acae665e0f0a3ee0 +msgid "The rule's trigger metadata." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:16 +#: 2c4ec7efb2a84a4e932cd105f8c8bd9f +msgid "The actions to take when the rule is triggered." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:19 +#: ea4fedcb8baf4e8e80b732580b8864c7 +msgid "Whether the rule is enabled." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:22 +#: 38f882f570db4c2ca22c7f0c52e414f8 +msgid "A list of roles that are exempt from the rule." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:25 +#: 81f668b4f0c94a599649916de9551caf +msgid "A list of channels that are exempt from the rule." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:28 +#: 4531d8bc55b844b3958a17c91aac2604 +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:31 +#: 105efa6a98d7495c9dfa2b71680219b3 +msgid "The new auto moderation rule." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_auto_moderation_rule:34 +#: 8e17d899e28b469bbe0771a8ae35d57a +msgid "Creating the auto moderation rule failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.onboarding:3 +#: c61190617cf6478d8d9c4b6d95d08e50 +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.onboarding:7 +#: 46ce13e0435c4f2dac885ba6d56e4069 +msgid "The onboarding flow for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:27 +#: ../../../discord/guild.py:docstring of discord.guild.Guild.onboarding:8 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:31 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.append_prompt:16 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:16 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:27 +#: c343d9d40bae4a43bd68f1af8e94f4e8 +#: c343d9d40bae4a43bd68f1af8e94f4e8 +#: c343d9d40bae4a43bd68f1af8e94f4e8 +#: c343d9d40bae4a43bd68f1af8e94f4e8 +#: c343d9d40bae4a43bd68f1af8e94f4e8 +#: c343d9d40bae4a43bd68f1af8e94f4e8 +msgid ":class:`Onboarding`" +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.onboarding:10 +#: 77d044af231d4ace904c995790c1a138 +msgid "Retrieving the onboarding flow failed somehow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:3 +#: 0d64da82315f4e298378e33fe0448d34 +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:5 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:5 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.append_prompt:5 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:5 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:5 +#: 0882c5ddfa7e4b1a9f4c9a828646c692 +#: 0882c5ddfa7e4b1a9f4c9a828646c692 +#: 0882c5ddfa7e4b1a9f4c9a828646c692 +#: 0882c5ddfa7e4b1a9f4c9a828646c692 +#: 0882c5ddfa7e4b1a9f4c9a828646c692 +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:9 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:9 +#: 45a92da581e04fa2b319585280d42b15 +#: 45a92da581e04fa2b319585280d42b15 +msgid "The new list of prompts for this flow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:12 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:12 +#: cafaefe922dd48c5ba61c50a27ec28dd +#: cafaefe922dd48c5ba61c50a27ec28dd +msgid "The new default channels that users are opted into." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:15 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:15 +#: 5d6d3ca99aa8482dbc6ffda9436fbe5b +#: 5d6d3ca99aa8482dbc6ffda9436fbe5b +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:20 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:20 +#: 74763711887947678db4c474731cbcea +#: 74763711887947678db4c474731cbcea +msgid "The new onboarding mode." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:23 +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:14 +#: 4efb14b400af448684e8daabbaf07bfb +#: 4efb14b400af448684e8daabbaf07bfb +msgid "The reason that shows up on Audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:26 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:30 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.append_prompt:15 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:15 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:26 +#: b2acfb4f157841e4b7c8d566142234e4 +#: b2acfb4f157841e4b7c8d566142234e4 +#: b2acfb4f157841e4b7c8d566142234e4 +#: b2acfb4f157841e4b7c8d566142234e4 +#: b2acfb4f157841e4b7c8d566142234e4 +msgid "The updated onboarding flow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:29 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:33 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.append_prompt:18 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:19 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:29 +#: 3f3449ad058c4ff6bf3428a177b5aaa8 +#: 3f3449ad058c4ff6bf3428a177b5aaa8 +#: 3f3449ad058c4ff6bf3428a177b5aaa8 +#: 3f3449ad058c4ff6bf3428a177b5aaa8 +#: 3f3449ad058c4ff6bf3428a177b5aaa8 +msgid "Editing the onboarding flow failed somehow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.edit_onboarding:30 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:34 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.append_prompt:19 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:20 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:30 +#: 86b87547d2ed4552ac12516dc869b8f1 +#: 86b87547d2ed4552ac12516dc869b8f1 +#: 86b87547d2ed4552ac12516dc869b8f1 +#: 86b87547d2ed4552ac12516dc869b8f1 +#: 86b87547d2ed4552ac12516dc869b8f1 +msgid "You don't have permissions to edit the onboarding flow." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_auto_moderation_rule:1 +#: 48cf22ba0c99497080c86cbff0eee085 +msgid "Deletes an auto moderation rule." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_auto_moderation_rule:4 +#: 3f5008bb6cf04927b981b47ead834904 +msgid "The ID of the auto moderation rule." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_auto_moderation_rule:7 +#: 7067e1b021e24246a274ecf334b608a3 +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.delete_auto_moderation_rule:10 +#: cf81134ec30b4520b0f5883093b5ef56 +msgid "Deleting the auto moderation rule failed." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.create_test_entitlement:3 +#: ead2e3553f9f4a35bbb876a7f8a1c957 +msgid "Creates a test entitlement for the guild." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:1 +#: 0a2edf433dd24913b837190596f61a7d +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "" + +#: ../../../discord/guild.py:docstring of discord.guild.Guild.entitlements:3 +#: 49db5051d76041628c6e8b56d1e9064e +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "" + +#: ../../api/models.rst:134 +#: fb9668f6a20a4f0bbf8ba6929fd3594b +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "" + +#: ../../api/models.rst:138 +#: 4d8636790bdc471f860037026c9b8f57 +msgid "The reason this user was banned." +msgstr "" + +#: ../../api/models.rst:143 +#: 83ffc7d2c2814caa965b59434791892d +msgid "The :class:`User` that was banned." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:39 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:45 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:63 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:23 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:37 +#: ../../../discord/template.py:docstring of discord.template.Template:33 +#: ../../api/models.rst:145 +#: d1bc287ff89b4eea9c60ff6c175ddc51 +#: d1bc287ff89b4eea9c60ff6c175ddc51 +#: d1bc287ff89b4eea9c60ff6c175ddc51 +#: d1bc287ff89b4eea9c60ff6c175ddc51 +#: d1bc287ff89b4eea9c60ff6c175ddc51 +#: d1bc287ff89b4eea9c60ff6c175ddc51 +#: d1bc287ff89b4eea9c60ff6c175ddc51 +msgid ":class:`User`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:1 +#: 4224e72302b244e5975ce30b9083fe11 +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:3 +#: 16147907536f4214984d222a2b1f3b49 +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:9 +#: 4bd0f2d59e4c475b997f1ec81989baeb +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:14 +#: c16c8485920d4219bc3306573a48106d +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:19 +#: cd62a2fc56714695abacf07b65286fac +msgid "Returns the member's hash." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:23 +#: c916cab233ba4291b5947e372bead4d4 +msgid "Returns the member's name with the discriminator or global_name." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:27 +#: fd09fb6dee234da99f1a284943155802 +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:34 +#: 97e4088148b34fd29deedd05736cb686 +msgid "The activities that the user is currently doing." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:38 +#: 300358621dd14a42adf6c1f0b0aa3c5c +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:42 +#: 94261981c2ca405dbc02c617650d3d7e +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:46 +#: 15957280725e487e86cc9fdc1f09686c +msgid "The guild that the member belongs to." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:52 +#: af5f6ac353344515bf322a8d556b7492 +msgid "The guild specific nickname of the user." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:58 +#: 54756fffdae9412eb7cacf5266721fe4 +msgid "Whether the member is pending member verification." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:66 +#: 23818d39e4094f75a12136a59f5a79f0 +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:73 +#: 3950ea6a6bd645e7a1bf3c1284b3bc3f +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:81 +#: a9a6616aac0148a58f9225a34376e401 +msgid "Extra attributes of the member." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member:85 +#: 5cb8a7de85bf4b94b5bc71709d021690 +msgid ":class:`MemberFlags`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.name:1 +#: d19c2f29833942f18d614198d6fb687e +msgid "Equivalent to :attr:`User.name`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.id:1 +#: c492902022b849c29d575c5329b401e3 +msgid "Equivalent to :attr:`User.id`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.discriminator:1 +#: 59af3cdce2f84e048157b3ee5440b776 +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.bot:1 +#: df849db718194071a81fe2a2f7184a2a +msgid "Equivalent to :attr:`User.bot`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.system:1 +#: 0bc73fc598fd48039fcfcc9a78d3b99c +msgid "Equivalent to :attr:`User.system`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.created_at:1 +#: f9d06af574d1446c87a936924dad6c64 +msgid "Equivalent to :attr:`User.created_at`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.default_avatar:1 +#: d05acb1f08ea4efca7ea02095ff098d5 +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.avatar:1 +#: 0636df0c16b34527af057d465fec0505 +msgid "Equivalent to :attr:`User.avatar`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.dm_channel:1 +#: 303c7c64fda0424ebbe70e6883543f44 +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.mutual_guilds:1 +#: 423c486c003247ac9966ca71793c8b48 +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.public_flags:1 +#: a592ed6a8cfc42d3a82c9f7e3e27a6f2 +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.banner:1 +#: dc7ae802cab54df5a8aa17332269f562 +msgid "Equivalent to :attr:`User.banner`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.accent_color:1 +#: 19d8cea50fbd44909edfbf8a094bfae2 +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.accent_colour:1 +#: 0432ce3359414325b19aee690117aef6 +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.raw_status:1 +#: 2f5fea69ade2408d8f7ee6fd6088f598 +msgid "The member's overall status as a string value." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.status:1 +#: 9e786b933ad54b38bebdba5654823859 +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.mobile_status:1 +#: 54c542a06dc241189497c93b96043a9b +msgid "The member's status on a mobile device, if applicable." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.desktop_status:1 +#: 29edc36c25774b2ab46b7321043cde87 +msgid "The member's status on the desktop client, if applicable." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.web_status:1 +#: fa6a34f9e6f04c128a517e4f8262782a +msgid "The member's status on the web client, if applicable." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.global_name:1 +#: ca2bed1e705c4f4a853c1a36773e1e9e +msgid "The member's global name, if applicable." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.is_on_mobile:1 +#: 6bfa3f0e7dcc47368b087045bbfd8453 +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.colour:1 +#: ec82496d1ce14217b009e4cb3c93ae1c +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.color:1 +#: ca143b673e1845aea65f2c7ce04c1301 +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.roles:1 +#: 621f782ce5f14018a13edc57e5d3e1cb +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.roles:5 +#: e9735a8be8f844cb9d1f7506c6948b54 +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.mention:1 +#: cb31142c94234c7d96a5f9e8a9203a76 +msgid "Returns a string that allows you to mention the member." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.display_name:1 +#: c7bbcd6fa1b8499c9d5abb92d639c395 +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.display_avatar:1 +#: 7cd0c7fd0121466d856b8544e0085b53 +msgid "Returns the member's display avatar." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.display_avatar:3 +#: 2db0b9f8f64f48938c7e870b6c4d507c +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.guild_avatar:1 +#: 58517cfb8d7e46efa7aad63030e3d132 +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.display_banner:1 +#: be1c1bedfca64980a23a4e6ce258f0d1 +msgid "Returns the member's display banner." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.display_banner:3 +#: 66a66f71e0fe488ca806a75ad79389bd +msgid "For regular members this is just their banner, but if they have a guild specific banner then that is returned instead." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.guild_banner:1 +#: 11a30a6056824ad3b282435d7c3ac74f +msgid "Returns an :class:`Asset` for the guild banner the member has. If unavailable, ``None`` is returned." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.activity:1 +#: 0fe8c01199404f9bb81abee32e46de02 +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.activity:6 +#: 61a9e50b25374094a07265d4c6e399bf +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.activity:12 +#: 463255fd89a34300bd54e6b46893449b +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.mentioned_in:1 +#: 8f055d7ad1d3409c9bc0a6982a4df3d5 +msgid "Checks if the member is mentioned in the specified message." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.mentioned_in:7 +#: c123f04c08954fd880f0b46e12cf1b5f +msgid "Indicates if the member is mentioned in the message." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.top_role:1 +#: 2de2e5171bf84639ac1169e05f17b87b +msgid "Returns the member's highest role." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.top_role:3 +#: 99f7f895d96949ef857d0068159226fc +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.guild_permissions:1 +#: 95d5eecd0cdc4c518d47eb8dc9f410f3 +msgid "Returns the member's guild permissions." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.guild_permissions:3 +#: 31425c322a96462e99b4728a7ae8cf2b +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.guild_permissions:8 +#: a5c4a9f7842446d19859918a6574b8c5 +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.voice:1 +#: b7f18c6561624baf9b387e7cbc9410f7 +msgid "Returns the member's current voice state." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.timed_out:1 +#: 8fa6a9e228fa43ae828849ed839b3fe6 +msgid "Returns whether the member is timed out." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.ban:3 +#: cf3459c60a5448888d44092d532857cb +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.unban:3 +#: 55b8c90e571e446792626dd6ae30518b +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.kick:3 +#: d4b65da0baee4f14b3ead3f145cb41b4 +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:3 +#: 3f0a1b838a2647c3b891a0598e75ba6d +msgid "Edits the member's data." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:5 +#: 191f92a299584434b1a8ece363f2970e +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:8 +#: c583cbd9466848e5b3a66e42d181fa40 +msgid "Parameter" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:8 +#: 2b01166c89e247bea4fc825dfcb3b915 +msgid "Permission" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:10 +#: f5156642c2e34f729bbe6863ddc3184f +msgid "nick" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:10 +#: e683810bda264f899e9c08a6db087a41 +msgid ":attr:`Permissions.manage_nicknames`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:12 +#: 4f4b3d3eb3a841ec9bcd348b6e6b754a +msgid "mute" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:12 +#: d3f5c1a20f264280b200cbcac5c0d6d5 +msgid ":attr:`Permissions.mute_members`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:14 +#: 5a0b2ea3a1fe4c00b62fbf3ca37a2056 +msgid "deafen" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:14 +#: 6aa212566176493fa4693e9e84a1ca0f +msgid ":attr:`Permissions.deafen_members`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:16 +#: e68265f5c790401bac6f73bcc637cf99 +msgid "roles" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:16 +#: 9ea588ed6dd64cf1a5fe4bf6f57c6059 +msgid ":attr:`Permissions.manage_roles`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:18 +#: 520b1222e9fb4a82af38bbbc41bbf3d3 +msgid "voice_channel" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:18 +#: 369a4c2a10674441ae336a1ccb56e699 +msgid ":attr:`Permissions.move_members`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:20 +#: b55fbe99ab8742069352b60ad9017339 +msgid "communication_disabled_until" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:20 +#: b497816b27384f2f89f7def4a8a8b46f +msgid ":attr:`Permissions.moderate_members`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:22 +#: bbd302f910334704934ca0c09a1837fa +msgid "bypass_verification" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:22 +#: fb447ba10e5d4f0788669d8e55273e16 +msgid "See note below" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:27 +#: 76a3becb4b6c4bfab9e65f0e7fc1e4ef +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:29 +#: c5003198a611467882fab14bdd0444bb +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:31 +#: 66e3186beb5a47ceb21589afcbdfcd6c +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:33 +#: bdadfe5cb0704ebd9df5045592ffcff5 +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:37 +#: f841e22738634da48594ee1e17ad1916 +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:40 +#: 9daf22cbbe1b41bc8bdd328b01d14338 +msgid "The newly member is now optionally returned, if applicable." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:44 +#: 1e205abbcb6c42148f88e2b2ea1e223d +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:47 +#: 93bd86a0ac724cfbb2b9e05b0e3bf0a6 +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:50 +#: 5ce7761f05ac4b15b453852bc84acd07 +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:53 +#: e0c6410979ab4bb999e9c991839b67c2 +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:53 +#: 4707597fe3f4402d99abcd4c353e8d8c +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:58 +#: d5ad7f3d9790412b8a1a6e9e335d35fd +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:61 +#: ad76d48b98e344078e1778cae1d3828e +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:65 +#: 7d2ece875a854077aa8922df9658464e +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:68 +#: 12b3b480b959409c97a966579c582741 +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:68 +#: 3c6b7a21d66b4d2fb80ea744cae56c1b +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:74 +#: 7a3b65549f614538a0ebb902d0238dff +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:74 +#: 6465b7a29e214013a4a396a21814536c +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:79 +#: 2adf8663f70b4a72b1fa3c51ddfb6c41 +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:81 +#: a6a8e0142c534a4c9db5ea9905bf1324 +msgid "Optional[:class:`.Member`]" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.edit:83 +#: ../../../discord/member.py:docstring of discord.member.Member.request_to_speak:16 +#: 9fcd0b74f14347da8c2bbb599a1d6f8a +#: 9fcd0b74f14347da8c2bbb599a1d6f8a +msgid "You do not have the proper permissions to the action requested." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.timeout:3 +#: 67fcfd3c206a4c318800ab0f5de5c77b +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.timeout:5 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout_for:6 +#: 8f3a11b0ffb6483eb2e62e38d7f3b417 +#: 07ab819209a440ab914bf6c94d75af30 +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.timeout:8 +#: 1e92b504d5134586905349c69536d3fd +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.timeout:14 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout_for:16 +#: 290a334f5b9f48f0ad5f62553d07c555 +#: 290a334f5b9f48f0ad5f62553d07c555 +msgid "You do not have permissions to timeout members." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_timeout:15 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout:15 +#: ../../../discord/member.py:docstring of discord.member.Member.timeout_for:17 +#: ce0d879a4399461a90bc27598271760b +#: ce0d879a4399461a90bc27598271760b +#: ce0d879a4399461a90bc27598271760b +msgid "An error occurred doing the request." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.timeout_for:3 +#: 39be7fd9a9504abf8bb9496fc5da44ca +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.timeout_for:10 +#: fd041c18511244ac839dcc4d8c2d4c07 +msgid "The duration to timeout the member for." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_timeout:3 +#: fd70d9a85517425eac26f22be69dc022 +msgid "Removes the timeout from a member." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_timeout:5 +#: 8f09beeaef574af6a7d9e0a5b815cee6 +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_timeout:8 +#: 3a47bba56957450c8a25ee82cfe2acd8 +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_timeout:14 +#: 722571d769ca4a9c845bb58aebebbaea +msgid "You do not have permissions to remove the timeout." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.request_to_speak:3 +#: 8b1ddf2494da4d18b8104138bdad7fe9 +msgid "Request to speak in the connected channel." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.request_to_speak:5 +#: 0399a9d50af149919d64576b2e22f6bb +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.request_to_speak:11 +#: b8b4bc2b34d041c8aa4c00881624baee +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.move_to:3 +#: 482a70bf0cdd4117afac463a709c136f +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.move_to:5 +#: 5499de24315c4e3681b7dcd8cca1e9b1 +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.move_to:8 +#: 69861da81eff4d51b5634bf458738e8b +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.move_to:10 +#: 0ef28902ea594c2690adf3ba5b9d81c9 +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.move_to:14 +#: 503735ef849943d2b4b2fa0fd2d04967 +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.add_roles:3 +#: 4fca1b79777444d7ad677cd10494b795 +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.add_roles:5 +#: 16b5351a5d2d442e95285cc327bff730 +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.add_roles:10 +#: 08e555262cee446794f4f563b0c99c84 +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.add_roles:14 +#: cdb82fa7747642ebbbb2e87cdfb0641e +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.add_roles:17 +#: 8ab879d3759a45a1b30cc9e5d8271623 +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.add_roles:22 +#: b29f7142676942f9acc3da4f6606a1d3 +msgid "You do not have permissions to add these roles." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.add_roles:23 +#: 59cd6ba166c9409abf12b3a10d1f2e48 +msgid "Adding roles failed." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.avatar_decoration:1 +#: cabe3ed43fdf4e4ebc41e33075bd0b9f +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.is_migrated:1 +#: f9263362216f45cb993e644b8f06e9b7 +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.Member.jump_url:1 +#: 2a9456847dbd44caa70b41a1ace5907a +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_roles:3 +#: ce5eafe9a84847258a6bf6a05706fd4c +msgid "Removes :class:`Role`\\s from this member." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_roles:5 +#: 9d40127d6bc14fa6849472841667a3a3 +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_roles:10 +#: 151f782cf7da475a9348e09c83b381a5 +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_roles:14 +#: 2e48cc6bee8f4c1c82f680c63fb2f9ee +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_roles:17 +#: aaa8ce8da63e4e36bfd04c5556440d03 +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_roles:22 +#: 9056f686438c4efda4be253e5b5d6698 +msgid "You do not have permissions to remove these roles." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.remove_roles:23 +#: b28ab0944bac46fcb93d05451f0c7447 +msgid "Removing the roles failed." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.get_role:1 +#: 1a315b9d0ae84ef9a8aaac0e3b6e82f8 +msgid "Returns a role with the given ID from roles which the member has." +msgstr "" + +#: ../../../discord/member.py:docstring of discord.member.Member.get_role:9 +#: c4ef36a9616d459ea91ba285772aa15c +msgid "The role or ``None`` if not found in the member's roles." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template:1 +#: bf5548d7f1344452ac9aab8d493066f8 +msgid "Represents a Discord template." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template:7 +#: e9cb8b6efd734274924a4126f172a997 +msgid "The template code." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template:13 +#: 1f2a73ed296346078fcffc86ef712e2b +msgid "How many times the template has been used." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template:31 +#: c83fded2631f4cf1b2d646c3d5e3c144 +msgid "The creator of the template." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template:37 +#: 38af213396984d9681c7e60a89460807 +msgid "An aware datetime in UTC representing when the template was created." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:75 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:77 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:21 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:45 +#: ../../../discord/template.py:docstring of discord.template.Template:39 +#: ../../../discord/template.py:docstring of discord.template.Template:46 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:121 +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:39 +#: b8e1833f3ac147369e252c5d8801de52 +#: b8e1833f3ac147369e252c5d8801de52 +#: b8e1833f3ac147369e252c5d8801de52 +#: b8e1833f3ac147369e252c5d8801de52 +#: b8e1833f3ac147369e252c5d8801de52 +#: b8e1833f3ac147369e252c5d8801de52 +#: b8e1833f3ac147369e252c5d8801de52 +#: b8e1833f3ac147369e252c5d8801de52 +msgid ":class:`datetime.datetime`" +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template:43 +#: a08d3b7933ae42939fabfd13f6d815fa +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template:50 +#: 29e7297008044e4ea82c9f41238467b1 +msgid "The source guild." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template:56 +#: 1c3d15b96df6417498447cf15dd2b44c +msgid "Whether the template has unsynced changes." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:45 +#: ../../../discord/template.py:docstring of discord.template.Template:60 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:73 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:79 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:85 +#: ad7ae992e9464d198f1ab9b5ae6b4efa +#: ad7ae992e9464d198f1ab9b5ae6b4efa +#: ad7ae992e9464d198f1ab9b5ae6b4efa +#: ad7ae992e9464d198f1ab9b5ae6b4efa +#: ad7ae992e9464d198f1ab9b5ae6b4efa +msgid "Optional[:class:`bool`]" +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.create_guild:3 +#: 188d3a03174d45e0bc3e507f9284c0aa +msgid "Creates a :class:`.Guild` using the template." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.create_guild:5 +#: 1f7e68f47747482790c6bfde1f799131 +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.create_guild:8 +#: d7855834282943ff8fe5f3f2e1586fb6 +msgid "The name of the guild." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.create_guild:11 +#: eeda24219810402f9f0f4d863622e24e +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.create_guild:15 +#: 9720111e71c14949bd37d4710e5ba779 +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.create_guild:17 +#: 60fb7adfd729405c9622a41dac16e0e7 +msgid ":class:`.Guild`" +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.create_guild:19 +#: ebe7523a8bfa43798097a7af866aa23b +msgid "Guild creation failed." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.create_guild:20 +#: cc161cedb24a49fa87c8e704c82d516d +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.sync:3 +#: 0b9f97db60654891ab2ac4487da374e5 +msgid "Sync the template to the guild's current state." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.edit:5 +#: ../../../discord/template.py:docstring of discord.template.Template.sync:5 +#: 977e60b646b7448a8979fb130ee01916 +#: 977e60b646b7448a8979fb130ee01916 +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.sync:10 +#: 4970e09963914887b0fcf223d3189144 +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.sync:13 +#: 86a98670847c4f308c3be4099d382b5f +msgid "The newly synced template." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.edit:21 +#: ../../../discord/template.py:docstring of discord.template.Template.sync:14 +#: 972be385b13d440092cdccd620111c7a +#: 972be385b13d440092cdccd620111c7a +msgid ":class:`Template`" +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.sync:16 +#: 46a228ca6d6144b3b791081a13773e53 +msgid "Syncing the template failed." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.sync:17 +#: 63d20844750f4597802d03f9df32fef4 +msgid "You don't have permissions to sync the template." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.delete:14 +#: ../../../discord/template.py:docstring of discord.template.Template.edit:25 +#: ../../../discord/template.py:docstring of discord.template.Template.sync:18 +#: 33c32e64d0434d23a47aa521c5f83dad +#: 33c32e64d0434d23a47aa521c5f83dad +#: 33c32e64d0434d23a47aa521c5f83dad +msgid "This template does not exist." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.edit:3 +#: caef495a64ea4a2abf259a30923afff0 +msgid "Edit the template metadata." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.edit:10 +#: 4f12d8ba2b4145f69e90b8808fdc0a07 +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.edit:14 +#: cb045b76ee6c47549f43603081eed127 +msgid "The template's new name." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.edit:17 +#: 24f040a38b8a45908cdcae4b34bb8cdb +msgid "The template's new description." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.edit:20 +#: de911bbc2e0b44188641f650ea0b7be2 +msgid "The newly edited template." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.edit:23 +#: 5ed66316abce4297b32eb011363b5d7d +msgid "Editing the template failed." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.edit:24 +#: 7ad6202760ba4961891ab9718d7cc26b +msgid "You don't have permissions to edit the template." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.delete:3 +#: afcc7d9d4e454de7902106a6a09e2964 +msgid "Delete the template." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.delete:5 +#: 8b5a9e96266a4023b25f75b35b65796a +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.delete:12 +#: 907065e9899b4eeaad5ddd08f9203a20 +msgid "Deleting the template failed." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.template.Template.delete:13 +#: 2a4855817ddb4b6f926e1ca0101d5d7e +msgid "You don't have permissions to delete the template." +msgstr "" + +#: ../../../discord/template.py:docstring of discord.Template.url:1 +#: c8f3576f377c41bf991f59cc9514db58 +msgid "The template url." +msgstr "" + +#: ../../api/models.rst:166 +#: 225faf34ffdd44d1b1e7d780b7711787 +msgid "AutoMod" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:1 +#: c27d0bb1f5bf40568dc7702d3a3030ad +msgid "Represents a guild's auto moderation rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:9 +#: e3f6ffd480a947daacbb3ee3dc9bcc2e +msgid "Checks if two rules are equal." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:13 +#: 101d390cb41f4c62a44c8df8b739f11d +msgid "Checks if two rules are not equal." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:17 +#: d7b0787407c840b79eee4ad0c2df3ae9 +msgid "Returns the rule's hash." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:21 +#: e2877fcc254949309be5940913b5fa49 +msgid "Returns the rule's name." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:25 +#: dad5bb9babac4fa995acbc17f8802c23 +msgid "The rule's ID." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:31 +#: ca774a304f9a4d4baa6329ce8e864eef +msgid "The rule's name." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:37 +#: 6aa70ca12ef64846a5efe5890863cd66 +msgid "The ID of the user who created this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:43 +#: 06de674f376a4b4abe96c1042cc2a0e7 +msgid "Indicates in what context the rule is checked." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:45 +#: e7e6a53fb12b47838e344835380b52c9 +msgid ":class:`AutoModEventType`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:49 +#: 02beb191b9c142a48ff1df40a1e07b29 +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:51 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:23 +#: 848ba8fba5d94c7da78956880b9befd4 +#: 848ba8fba5d94c7da78956880b9befd4 +msgid ":class:`AutoModTriggerType`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:57 +#: 45e34f01bab246e7ab8def22a7b3b766 +msgid ":class:`AutoModTriggerMetadata`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:61 +#: 42106214e93e46c48ce6a567c7e5d4a6 +msgid "The actions to perform when the rule is triggered." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:63 +#: 0437f0929c274d88b99010b4bd10e60e +msgid "List[:class:`AutoModAction`]" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:67 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:18 +#: 1b34d636f1674e9f9a8297e79af3aa07 +#: 1b34d636f1674e9f9a8297e79af3aa07 +msgid "Whether this rule is enabled." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:73 +#: 0759c70f615648d4b1b0b4c37556dd99 +msgid "The IDs of the roles that are exempt from this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:75 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:81 +#: 87c8fe8fea4441edb52f0ea109aaae0a +#: 87c8fe8fea4441edb52f0ea109aaae0a +msgid "List[:class:`int`]" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule:79 +#: 82153e076b5f42eca5f02ddfb4a738b1 +msgid "The IDs of the channels that are exempt from this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.AutoModRule.guild:1 +#: 66f75bf0d3964e8fa888333a284a7480 +msgid "The guild this rule belongs to." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.AutoModRule.creator:1 +#: 5902be937b934b3dab2737ac2ba90684 +msgid "The member who created this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.AutoModRule.exempt_roles:1 +#: ae0c2b3646bf4314a2b436f029353385 +msgid "The roles that are exempt from this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.AutoModRule.exempt_roles:4 +#: f2b2ce1dbc4a452e80b48de7fadf471d +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.AutoModRule.exempt_channels:1 +#: 3d1c090fe2744ae7920d9b41b93707c3 +msgid "The channels that are exempt from this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.AutoModRule.exempt_channels:3 +#: ../../docstring of discord.Onboarding.default_channels:3 +#: 4605c05e782c449fbb9df453c31e8668 +#: 4605c05e782c449fbb9df453c31e8668 +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.delete:3 +#: e577fb88088d45699005b7a923d2ad0a +msgid "Deletes this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.delete:6 +#: 278ac7d30eb2425093e409cb04b02bdc +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:3 +#: 953c903154d94a5db43a89fd099bfb98 +msgid "Edits this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:6 +#: 9ad875341a1448938d88b24cdb962f43 +msgid "The rule's new name." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:9 +#: 0d476f45ec98457cbc8c01fe527b3058 +msgid "The new context in which the rule is checked." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:12 +#: c8306420574d4b5783433979e2595a32 +msgid "The new trigger metadata." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:15 +#: 9968061d3f5e47c29b419db205ffd58d +msgid "The new actions to perform when the rule is triggered." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:21 +#: 48142cdaf6284df9ac9a9d91fa05a605 +msgid "The roles that will be exempt from this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:24 +#: 9c486c6dcc47492ca546aca991afaba2 +msgid "The channels that will be exempt from this rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:27 +#: 110894ce28854cfa96d399b582d05d94 +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:30 +#: 6433b6a7db514d358a3f4093103a6389 +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModRule.edit:32 +#: d863f1c014244e438f267edde0a81727 +msgid "Optional[:class:`.AutoModRule`]" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModAction:1 +#: 5d6016062f7c41c0accd5c9c802d02fd +msgid "Represents an action for a guild's auto moderation rule." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModAction:7 +#: 2744effe31674cd6887f039aaf3150e2 +msgid "The action's type." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModAction:9 +#: 9a73c92ce0c1452f8dac5dec612f59f4 +msgid ":class:`AutoModActionType`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModAction:13 +#: 29f292c60c514b4fa71bcb95a03f98b6 +msgid "The action's metadata." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModAction:15 +#: 1cb00afaf1b44c83884bfb663de6ea64 +msgid ":class:`AutoModActionMetadata`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModActionMetadata:1 +#: cd1d6707da27496d819b4bc93fa8d9a9 +msgid "Represents an action's metadata." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModActionMetadata:3 +#: a88697345fec4d69b0da3b40328193d0 +msgid "Depending on the action's type, different attributes will be used." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModActionMetadata:9 +#: adf66476594744779d49521c5f892de1 +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModActionMetadata:16 +#: 2c9f4f06300e40a8b2478a5825b9df6e +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModActionMetadata:19 +#: 43745dfaea0f48c2b061c077103091b2 +msgid ":class:`datetime.timedelta`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModActionMetadata:23 +#: 24850b9583a942e2b87b2024e264356c +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:1 +#: e6473b15bf1c4aab8d18c91cd7a68623 +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:3 +#: 9b6947b4ccf14e44a9ef208417f38303 +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:6 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:27 +#: 7ece475c494647459b908955f3d194df +#: 7ece475c494647459b908955f3d194df +msgid "Attribute" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:6 +#: 8c548fe1a7c34ca6bce83e5e90e41f62 +msgid "Trigger Types" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:8 +#: 4496649362734b089d460cd8c7f67771 +msgid ":attr:`keyword_filter`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:8 +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:10 +#: b3a97afc4a6d45f1b595e20dcfd61b00 +#: b3a97afc4a6d45f1b595e20dcfd61b00 +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:10 +#: 4af760617eae40a49267b86322b8311d +msgid ":attr:`regex_patterns`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:12 +#: b1e8ad230d1e49848260dc3ccdb4cd07 +msgid ":attr:`presets`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:12 +#: 3e776a67efb24799ba6d061c21ee7c35 +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:14 +#: 6d82b167b64941a8a2d1239c77d47bb4 +msgid ":attr:`allow_list`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:14 +#: 3fcd3e8edbb2474f87ca8ec502a448e1 +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:16 +#: baa8675fda194957a18f620d958af8da +msgid ":attr:`mention_total_limit`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:16 +#: c94a6bf582e5483d9a84c8933763bb52 +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:19 +#: 1c6c27691aac4d85b49add284a607515 +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:27 +#: 08cf564ffd8f4fdd85936d9e3a7d8739 +msgid "A list of substrings to filter." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:33 +#: ecc19b65d2a844dd9c3257978c9471f1 +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:42 +#: 8ec3997fd0a44fc5b1ba9942db04c3d9 +msgid "A list of preset keyword sets to filter." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:44 +#: 1a31537f646b42e287d2e35e283b37af +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:48 +#: 455fd824a9da48ec8d8ef2c2c5c43e09 +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "" + +#: ../../../discord/automod.py:docstring of discord.automod.AutoModTriggerMetadata:56 +#: aef8ec696f474f2aa37e3d91d1cb8dc6 +msgid "The total number of unique role and user mentions allowed." +msgstr "" + +#: ../../api/models.rst:189 +#: 30ed9cbe01954df3a16f002ee6bb94c2 +msgid "Invites" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:1 +#: 69fba3baef004ee2b84142272ccce2d9 +msgid "Represents a \"partial\" invite guild." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:3 +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:3 +#: 45776a9178224707a1d5cf4ebfff169b +#: 45776a9178224707a1d5cf4ebfff169b +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:10 +#: 89fb246f756446b38c7f3f3b535fdfeb +msgid "Checks if two partial guilds are the same." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:14 +#: 1f072902c7b1434897f2b821bf1f710a +msgid "Checks if two partial guilds are not the same." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:18 +#: a95177c93f494a09b14669a985cb009c +msgid "Return the partial guild's hash." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:22 +#: ef98a21ce76645eeb3b149d4b39da542 +msgid "Returns the partial guild's name." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:26 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookGuild:15 +#: 93d2a832d86246279c35490b6c878a86 +#: 93d2a832d86246279c35490b6c878a86 +msgid "The partial guild's name." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:32 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookGuild:9 +#: e194cbb46c32457d858d2e294d45765b +#: e194cbb46c32457d858d2e294d45765b +msgid "The partial guild's ID." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:38 +#: 9aadc47d60734bb8abf3cf294402d4b7 +msgid "The partial guild's verification level." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:44 +#: bdd12952c5c54de4ad633d5a56475d15 +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteGuild:50 +#: 58805ad02d6a468e80400ef9c583bd6e +msgid "The partial guild's description." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:1 +#: 832a15deed5f4ef4b30ce4df2b19ee8d +msgid "Represents a \"partial\" invite channel." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:10 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:7 +#: 95e9950220b84e359463a51ad286e6c9 +#: 95e9950220b84e359463a51ad286e6c9 +msgid "Checks if two partial channels are the same." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:14 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:11 +#: 30b235b76e1342cf941b30523684f372 +#: 30b235b76e1342cf941b30523684f372 +msgid "Checks if two partial channels are not the same." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:18 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:15 +#: f9335d3f6f084e94a23c90b76421fca3 +#: f9335d3f6f084e94a23c90b76421fca3 +msgid "Return the partial channel's hash." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:22 +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:19 +#: cf5680cc558b4f1c9ee058a815a6aa99 +#: cf5680cc558b4f1c9ee058a815a6aa99 +msgid "Returns the partial channel's name." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:26 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookChannel:15 +#: 141d223702fe42af8e2c67e1fe220ad8 +#: 141d223702fe42af8e2c67e1fe220ad8 +msgid "The partial channel's name." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:32 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookChannel:9 +#: 34fdd30888cc4a69a2ecff38e80c7735 +#: 34fdd30888cc4a69a2ecff38e80c7735 +msgid "The partial channel's ID." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:38 +#: f303ce62e1f14e0da28ca61198536e08 +msgid "The partial channel's type." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.PartialInviteChannel:40 +#: b14920fd93004ab5816c641d6c994d31 +msgid ":class:`ChannelType`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.mention:1 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.mention:1 +#: ../../../discord/channel.py:docstring of discord.StageChannel.mention:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.mention:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.mention:1 +#: ../../../discord/invite.py:docstring of discord.PartialInviteChannel.mention:1 +#: ../../../discord/widget.py:docstring of discord.WidgetChannel.mention:1 +#: bf4b576b58b64dbcaa30f9f34b305d1c +#: bf4b576b58b64dbcaa30f9f34b305d1c +#: bf4b576b58b64dbcaa30f9f34b305d1c +#: bf4b576b58b64dbcaa30f9f34b305d1c +#: bf4b576b58b64dbcaa30f9f34b305d1c +#: bf4b576b58b64dbcaa30f9f34b305d1c +#: bf4b576b58b64dbcaa30f9f34b305d1c +msgid "The string that allows you to mention the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.created_at:1 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.created_at:1 +#: ../../../discord/channel.py:docstring of discord.GroupChannel.created_at:1 +#: ../../../discord/channel.py:docstring of discord.StageChannel.created_at:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.created_at:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.created_at:1 +#: ../../../discord/invite.py:docstring of discord.PartialInviteChannel.created_at:1 +#: ../../../discord/widget.py:docstring of discord.WidgetChannel.created_at:1 +#: d9cb26c43e2f4fdf8263a762822511b3 +#: d9cb26c43e2f4fdf8263a762822511b3 +#: d9cb26c43e2f4fdf8263a762822511b3 +#: d9cb26c43e2f4fdf8263a762822511b3 +#: d9cb26c43e2f4fdf8263a762822511b3 +#: d9cb26c43e2f4fdf8263a762822511b3 +#: d9cb26c43e2f4fdf8263a762822511b3 +#: d9cb26c43e2f4fdf8263a762822511b3 +msgid "Returns the channel's creation time in UTC." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:1 +#: 6e1375d7315842f389240d361f9e940f +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:10 +#: 40c79e3afa054125ac51372fff62c627 +msgid "Checks if two invites are equal." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:14 +#: 88ce1ecfb798467da639a3bf341c04a2 +msgid "Checks if two invites are not equal." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:18 +#: f627201143cb4f289aa3fd1b82dd7a5f +msgid "Returns the invite hash." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:22 +#: 812a6ee84f4046a699ba426c6add7d28 +msgid "Returns the invite URL." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:24 +#: be54ec540e4d4166ad2b1edfaf5f7562 +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:27 +#: 67b0891cfb804ad7b5cf90f89d770328 +msgid "Method" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:29 +#: caff775708cd4876a15508a9fdb66328 +msgid ":attr:`max_age`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:29 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:31 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:33 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:35 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:37 +#: 888ee5b5c54841b18baa7f2ba1dfd8c2 +#: 888ee5b5c54841b18baa7f2ba1dfd8c2 +#: 888ee5b5c54841b18baa7f2ba1dfd8c2 +#: 888ee5b5c54841b18baa7f2ba1dfd8c2 +#: 888ee5b5c54841b18baa7f2ba1dfd8c2 +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:31 +#: ad799b98576649d8802dcd295ebc0dd9 +msgid ":attr:`max_uses`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:33 +#: e0a962b6bbda4f739665deac7489d153 +msgid ":attr:`created_at`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:35 +#: 8d8febf96d094432b54a0b48f74bad39 +msgid ":attr:`temporary`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:37 +#: d4805f27f1dc4d7999b200935cb75e97 +msgid ":attr:`uses`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:39 +#: 8c30a6bf469647fba6e2394ee934abae +msgid ":attr:`approximate_member_count`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:39 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:41 +#: 38c5c5e52ebf42a8a131562a6bf58a86 +#: 38c5c5e52ebf42a8a131562a6bf58a86 +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:41 +#: e10dd807365640f1a2ec881e571ec9af +msgid ":attr:`approximate_presence_count`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:43 +#: d8f7449f7d3d4bc0893e0ee643fa117a +msgid ":attr:`expires_at`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:43 +#: 4ac46789b8f642ddaf4c5e54851c4dd7 +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:46 +#: b4a65c6404244f719d338f5e80b7a68f +msgid "If it's not in the table above then it is available by all methods." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:50 +#: 71c850531d60478ebabc66051e813fdf +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:57 +#: 662de69e9fae4578bf4142bd3dc1d7bb +msgid "The URL fragment used for the invite." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:63 +#: be8e6c9dd831487bb751f81d56d1a2cd +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:65 +#: b1392531abbf409a8e7c252b057ae900 +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:69 +#: e5816f6ab311461f86b05afe960120d0 +msgid "Indicates if the invite has been revoked." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:75 +#: e19f71ea88dd4ba38b5550b82e75abef +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:81 +#: 5d28782dd7694324949984de51047486 +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:88 +#: a896b00f401f47b3bff014a4652f5d11 +msgid "How many times the invite has been used." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:94 +#: 00069cbcc5e347768ef002d8f2f1bbb4 +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:101 +#: f5152bae14734569aeef4a6b6f207e59 +msgid "The user who created the invite." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:27 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:43 +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:76 +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:39 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:103 +#: ../../../discord/invite.py:docstring of discord.invite.Invite:147 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:84 +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:60 +#: ../../docstring of discord.AuthorizingIntegrationOwners.user:4 +#: cc61dfae294c4579ba596a34ef3fa088 +#: cc61dfae294c4579ba596a34ef3fa088 +#: cc61dfae294c4579ba596a34ef3fa088 +#: cc61dfae294c4579ba596a34ef3fa088 +#: cc61dfae294c4579ba596a34ef3fa088 +#: cc61dfae294c4579ba596a34ef3fa088 +#: cc61dfae294c4579ba596a34ef3fa088 +#: cc61dfae294c4579ba596a34ef3fa088 +#: cc61dfae294c4579ba596a34ef3fa088 +msgid "Optional[:class:`User`]" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:107 +#: 092635739e83496eb3cfaf0b1e9893bb +msgid "The approximate number of members in the guild." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:113 +#: 21544a9ae3414724afee94ec77100e81 +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:120 +#: 0fb015a916f84ff79a330f0846477afa +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:129 +#: f884e37b37a34004b7a60715f9c7e323 +msgid "The channel the invite is for." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:131 +#: cc72df05282c45baa3c3a91d6478083c +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:135 +#: 39b0750e8cbf48ae839656f658244074 +msgid "The type of target for the voice channel invite." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:139 +#: b032b0fb8cdb4d8f8c23635f64d87c28 +msgid ":class:`InviteTarget`" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:143 +#: f6ce14dc542f41d58faf3343fe7e3588 +msgid "The user whose stream to display for this invite, if any." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:151 +#: 1284111c547e490395ccd35e0a06b0e5 +msgid "The embedded application the invite targets, if any." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:155 +#: e5acecac4ece457db47dac10f2bb7aea +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite:159 +#: aa16b1be4bc549659e87c7c8bea28707 +msgid "The scheduled event linked with the invite." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.Invite.id:1 +#: d78e636501ba4a9496c3e2d74742b9c7 +msgid "Returns the proper code portion of the invite." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.Invite.url:1 +#: c86c778cb8704643a0aff10ce58e44f7 +msgid "A property that retrieves the invite URL." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite.delete:3 +#: 8daafc92ded341cab14f98fbf27ae51f +msgid "Revokes the instant invite." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite.delete:5 +#: 85148c52c6af4d47a184d6dd44768251 +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite.delete:8 +#: 441bb5982c4b41f9bbb8564a33e9f82a +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite.delete:11 +#: 320594922ef34be8afcd2c84ca73a327 +msgid "You do not have permissions to revoke invites." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite.delete:12 +#: 27532139278643cca80692a6913ecc8d +msgid "The invite is invalid or expired." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite.delete:13 +#: f5b462234a1447cbabc2f3d30423b54b +msgid "Revoking the invite failed." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite.set_scheduled_event:1 +#: 0b28b765bed746be8b84b9c2bbebbbc5 +msgid "Links the given scheduled event to this invite." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite.set_scheduled_event:5 +#: 40b1ead2f26c44be9f8d235e30913fa7 +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "" + +#: ../../../discord/invite.py:docstring of discord.invite.Invite.set_scheduled_event:13 +#: 7ed4e3948e6d45278da021e5a830aeb8 +msgid "The scheduled event object to link." +msgstr "" + +#: ../../api/models.rst:207 +#: b0b4dba2274847c2bc1e96752ddd4675 +msgid "Role" +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:1 +#: 14f0b3819e864b7a89db5d4552ee08d8 +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:7 +#: 76cac8abf7bf49a2b8a67fccd3be816a +msgid "Checks if two roles are equal." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:11 +#: b92755862c7d4471bd1889e2ba7981ec +msgid "Checks if two roles are not equal." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:15 +#: 436f1560b791441cac322a7967adad6c +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:19 +#: cd79ad1c57ef40f7bba566449bc33b61 +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:23 +#: c1720665fb4345feba29535022d8b9d0 +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:27 +#: 5885ab2ad4294d468d632b657112f8b5 +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:31 +#: 244e8fd76d424931a3d287e634510aff +msgid "Return the role's hash." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:35 +#: 0cb4be6ef3dc4b808045712f1dbd5e6e +msgid "Returns the role's name." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:39 +#: 5d81164f7c4c4823aff92d0c6d7d5050 +msgid "The ID for the role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:45 +#: 511691ba37f34cbbbe377481dcbd99bd +msgid "The name of the role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:51 +#: 31505115fa5a44068bab84354a5cd954 +msgid "The guild the role belongs to." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:57 +#: 62642a7712b54bd39f19c1ce29d2e5c4 +msgid "Indicates if the role will be displayed separately from other members." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:63 +#: 5f7db28911cd408096024e3b849cb7cc +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:68 +#: 6d87eb7337744266b5b769b4d5eb238f +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:78 +#: 71708c2052ef460cbf50e18eff7472ff +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:85 +#: b9bafa1eea5a42449a950ef3b3948003 +msgid "Indicates if the role can be mentioned by users." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:91 +#: 90292a8451094a81b831a50845ab0581 +msgid "The role tags associated with this role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:93 +#: ce68cf07f32542ee887cbfe498cd4506 +msgid "Optional[:class:`RoleTags`]" +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:97 +#: 6b477dc220bf4cd0affb1801794c7c46 +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:106 +#: fa704dc55e8b4bc89b983325045fb26e +msgid "Extra attributes of the role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role:110 +#: 235c07739380495f822049acb2f71763 +msgid ":class:`RoleFlags`" +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.is_default:1 +#: f8b5d7e6df82406bb4c5f9cfdb6dc7cb +msgid "Checks if the role is the default role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.is_bot_managed:1 +#: abaa9e6454b3434897bdb6657fb9c73a +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.is_premium_subscriber:1 +#: 57a256a1d1ec47d8bd23a3f5a026fde3 +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.is_integration:1 +#: adc96808a0f849419bffb0291dfcf2e1 +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.is_assignable:1 +#: c2e51432847743fba93caa703ec89c5d +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/role.py:docstring of discord.Role.permissions:1 +#: 7902c3504ac24ac0a24155bd9bcbce40 +msgid "Returns the role's permissions." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.Role.colour:1 +#: 4a391466dd224b78895dc3b4dc98a713 +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.Role.color:1 +#: fa84130cdb2e41b9aeabc2461ce3e03f +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.Role.created_at:1 +#: 0bc0e2c3149a4903900a6cc2688c0f81 +msgid "Returns the role's creation time in UTC." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.Role.mention:1 +#: 5c6d4251d1054c46b5866e2562db0ec8 +msgid "Returns a string that allows you to mention a role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.Role.members:1 +#: 43e2f1a35d6542c5b9bcabb86ce49a1f +msgid "Returns all the members with this role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.Role.icon:1 +#: f550271db031424d9bb95b4b4c6b3dfa +msgid "Returns the role's icon asset, if available." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:3 +#: 6a0db6cfac2441b6b52b131acdc42943 +msgid "Edits the role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.delete:5 +#: ../../../discord/role.py:docstring of discord.role.Role.edit:5 +#: 1342d2d0aed64ae7ba75ee42534a7a8b +#: 1342d2d0aed64ae7ba75ee42534a7a8b +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:13 +#: e453bb534cfc463fb008712c93126d97 +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:18 +#: b13aa6c81fc8460b8170b67aca970828 +msgid "The new role name to change to." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:21 +#: ca4744954a454ba08c142db3547c4ee5 +msgid "The new permissions to change to." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:24 +#: 57f0dcf8c8a84faf89677dc7c270c68a +msgid "The new colour to change to. (aliased to color as well)" +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:27 +#: e9916faa46634b49ad0598b3084eaea2 +msgid "Indicates if the role should be shown separately in the member list." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:30 +#: c4bff8c51bfe4f7b8d4f5211f9c79a79 +msgid "Indicates if the role should be mentionable by others." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:33 +#: 6d9bace9d861488894fc85bfcd50b3dc +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:37 +#: abeffd1a802842c2a6493224e6f02d2b +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:40 +#: bd9f0feaf75b4b3f8587fd19981f6ae2 +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:50 +#: 4a9a00d62a984236a0ad4aefa11e685f +msgid "The newly edited role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:53 +#: 726a634f83fd43c6bacebf07a8dcfd2b +msgid "You do not have permissions to change the role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:54 +#: b2728a1bd3684723b2562070971b253b +msgid "Editing the role failed." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.edit:55 +#: 2ef1a6690c73422cb2edead785d1e265 +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.delete:3 +#: b1c68744b35b41d7b9fc7ad838756aff +msgid "Deletes the role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.delete:9 +#: 09634e2e93d24ddabd7e058a560ff8fa +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.delete:12 +#: 8c1678106db14993b38b64ab433391a4 +msgid "You do not have permissions to delete the role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.Role.delete:13 +#: 3d7c30b23b9c4b35ade1e6a1e0bd2d73 +msgid "Deleting the role failed." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.RoleTags:1 +#: 3ce6d748ce74481dbd88eaa208d8d38c +msgid "Represents tags on a role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.RoleTags:3 +#: f055b2214fc846c69dafe51a7828d5c9 +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.RoleTags:6 +#: 7b96a689baf942ce8c8d44c556ca1315 +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.RoleTags:13 +#: cefbfbe8367243c9873b7f3e6efd68cf +msgid "The bot's user ID that manages this role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.RoleTags:19 +#: 05a238fa0ee54228891c9067f660ce29 +msgid "The integration ID that manages the role." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.RoleTags.is_bot_managed:1 +#: 32f901508cfe434eaa834608ef0a2813 +msgid "Whether the role is associated with a bot." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.RoleTags.is_premium_subscriber:1 +#: 99c432602c464398bf8657a5d7720033 +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "" + +#: ../../../discord/role.py:docstring of discord.role.RoleTags.is_integration:1 +#: 8cd2b27c79a1497d9fe2ed01efa457c8 +msgid "Whether the role is managed by an integration." +msgstr "" + +#: ../../api/models.rst:220 +#: 501c6b29607b4c55ace35858ceb2e513 +msgid "Scheduled Event" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:1 +#: 10e0de9eb9274b9a90009e1d986359bb +msgid "Represents a Discord Guild Scheduled Event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:7 +#: 338d7d42898a41c1aa76bae4170d62d5 +msgid "Checks if two scheduled events are equal." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:11 +#: c94e50d69c844f7ab6df2b14c4dfd011 +msgid "Checks if two scheduled events are not equal." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:15 +#: 63533c1674a54dd38883de86d857fadd +msgid "Returns the scheduled event's hash." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:19 +#: e6e8056199704fb19bebfa19fbd84a0d +msgid "Returns the scheduled event's name." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:25 +#: 1dfe359919ac4a94a5753514a83b8ee4 +msgid "The guild where the scheduled event is happening." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:43 +#: 7db26903f71241b8b5d862be13720ff4 +msgid "The time when the event will start" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:49 +#: 4a373162831b42a280178408697638a0 +msgid "The time when the event is supposed to end." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:55 +#: 7fa115df6d194b9eaf2c37b4960c54fb +msgid "The status of the scheduled event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:57 +#: beaedb41ec2840239f556ef2b031ce7c +msgid ":class:`ScheduledEventStatus`" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:61 +#: 06f7d4894f104c109e7f423cb180b019 +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:64 +#: 5e1cf8c0e6574b238759f48a2beb96bd +msgid ":class:`ScheduledEventLocation`" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:68 +#: 0e52f18181e548e2b175255bd6ce27dd +msgid "The number of users that have marked themselves as interested in the event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:74 +#: dceb5b236844473e86a48e3ee1e9fc9e +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:82 +#: 5ccd05fa01e64cf09322dd166b85f5c5 +msgid "The resolved user object of who created the event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:88 +#: 2dced7676e174ab0848be9afd308410a +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent:92 +#: 4ea359d726ae4aa28a9dbe385e18693d +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.ScheduledEvent.created_at:1 +#: 739d9ebd38654aa199a2ca98c2ac31b5 +msgid "Returns the scheduled event's creation time in UTC." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.ScheduledEvent.interested:1 +#: 249062afc1644255b779d2c32eb3606f +msgid "An alias to :attr:`.subscriber_count`" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.ScheduledEvent.url:1 +#: a6c5206b2783448885037dd254cfcc5a +msgid "The url to reference the scheduled event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.ScheduledEvent.cover:1 +#: ../../../discord/scheduled_events.py:docstring of discord.ScheduledEvent.image:1 +#: 5438a938169f4597aa1a5242f21d12e2 +#: 5438a938169f4597aa1a5242f21d12e2 +msgid "Returns the scheduled event cover image asset, if available." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.ScheduledEvent.cover:3 +#: 5374a22bf91b40c59814524886eb6790 +msgid "Use the :attr:`image` property instead." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:3 +#: 0f0bbd18446341ed961bf49012e47619 +msgid "Edits the Scheduled Event's data" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:5 +#: 0825ab9a3ac7430aaf4fbebb5f494030 +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:9 +#: b05ee511b9f641ca968da622ca3cff17 +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:12 +#: 9240e0b449764b00832cc50af78f4c02 +msgid "The new name of the event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:15 +#: 5466aa4697994643ad1e42485bcb4530 +msgid "The new description of the event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:18 +#: c550fa6d58a24a3c8eaf6c88e9d288a2 +msgid "The location of the event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:21 +#: 012b9b8518bf489b8b78ea88133fc122 +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:26 +#: cc71d9959291468e8b68b66491f03ef4 +msgid "The new starting time for the event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:29 +#: 2918c259d7114424aba68bcb28771575 +msgid "The new ending time of the event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:40 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:43 +#: cdfb40b39a994b05a328decf47ec528d +#: cdfb40b39a994b05a328decf47ec528d +msgid "The cover image of the scheduled event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:43 +#: efc47c7c1d6d46ecb3948046ef60c88b +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:45 +#: 1d36d39c01a24d3f9ecd5093343f501c +msgid "Use the `image` argument instead." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:49 +#: ed2a50594a6c4c67b633ce1f269cae09 +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.cancel:14 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.complete:14 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.edit:51 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.start:14 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:59 +#: 29af72e8c0344ccb8418d3680362e11f +#: 29af72e8c0344ccb8418d3680362e11f +#: 29af72e8c0344ccb8418d3680362e11f +#: 29af72e8c0344ccb8418d3680362e11f +#: 8ea327279d484e47b555b10b24fe81ae +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.delete:3 +#: ff7f51d150fb4766815a206e71c0dec7 +msgid "Deletes the scheduled event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.start:3 +#: 4958b434b9cb4d289319db632ca44181 +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.cancel:7 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.start:7 +#: 0c1c2e3e84764a568b297d90d0b75c5c +#: 0c1c2e3e84764a568b297d90d0b75c5c +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.cancel:13 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.complete:13 +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.start:13 +#: a64cb72cf711477f9207ff71bbd6fe6f +#: a64cb72cf711477f9207ff71bbd6fe6f +#: a64cb72cf711477f9207ff71bbd6fe6f +msgid "The newly updated scheduled event object." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.complete:3 +#: 8cae4739d8e44a1fab241670b0bf776d +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.complete:7 +#: d4a3e8de49d348b89d7b8477fd4bf250 +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.cancel:3 +#: 9914bb7334d24671a216557961e06dda +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:1 +#: 68731f25d3ac41da925136d5120ea267 +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:3 +#: 0918ed64d7194f8c99486ce6f9bbb63a +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:8 +#: 650d1964db3d415184de61f1f7b17d35 +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:12 +#: 5402be59de4d467f84400c7be1993911 +msgid "The maximum number of results to return." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:15 +#: ecd0ce1df77242cb97d8dc7cceec24b4 +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:20 +#: b8de116ec76b417bb07bca3005600f2c +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:25 +#: c6856b5aac894500b8b84fcc31b1b38a +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:30 +#: 8671805c66244008905e0ebf131d47f0 +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:34 +#: aa2b527516c44c569aff79684995a1ba +msgid "Fetching the subscribed users failed." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:35 +#: 96236c596b12476284b35f3f352e6df6 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEvent.subscribers:49 +#: bd1bc81cad8b496aa9b9a5e90585f5b5 +msgid "Getting members instead of user objects: ::" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:1 +#: ef94d3ad86b54127b54e63206f010f5d +msgid "Represents a scheduled event's location." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:3 +#: 9aa9d7eadef24ce28f0064e5b979e562 +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:6 +#: 7bc32d48f49d4be99491c05be1a98851 +msgid "Type of Input" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:6 +#: 29525c9aa20c4dda9afbbf810b4096fd +msgid "Location Type" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:8 +#: df99d5de02784c35a91a783590e60dd9 +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:8 +#: d87e2ab2c93848258ff304f6fcc46ca4 +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:17 +#: d242449192c44c94af25f194a83e40ae +msgid "The actual location of the scheduled event." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:19 +#: 55879a88833246c9ae72fb9d33df5445 +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:23 +#: 3dce7682f6a949d98c73d003368d6139 +msgid "The type of location." +msgstr "" + +#: ../../../discord/scheduled_events.py:docstring of discord.scheduled_events.ScheduledEventLocation:25 +#: da80a8bae0e64be2bb5e162a771b6a93 +msgid ":class:`ScheduledEventLocationType`" +msgstr "" + +#: ../../api/models.rst:231 +#: bd728eaba2b94cb59255cd2be9d0a4a5 +msgid "Welcome Screen" +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen:1 +#: 3a9a9b015d3843bbb893b7756919f4f3 +msgid "Represents the welcome screen of a guild." +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen:7 +#: 1d1b937ea9854e96a28ef28316e74f1e +msgid "The description text displayed on the welcome screen." +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen:13 +#: a6c019bb099f4ef5a5dffc399c47e5d0 +msgid "A list of channels displayed on welcome screen." +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen:15 +#: 29ebb991339244c98e862232952bed14 +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.WelcomeScreen.enabled:1 +#: ab609b9ab2954498ac49f8cbf81a92f1 +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.WelcomeScreen.guild:1 +#: 4bf7a0f55663483493297c10bc4d1fe7 +msgid "The guild this welcome screen belongs to." +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:3 +#: cc0bf1a0c7e84527bf801eed13078bc4 +msgid "Edits the welcome screen." +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:22 +#: 6f82ed1675044aa699bde2749a2ab5e7 +msgid "Example" +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreen.edit:38 +#: e31a24db1a4e4e9391ec0fd6872992ac +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreenChannel:1 +#: d6341ad4205a4369988579907602c902 +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreenChannel:7 +#: 5c9f94dfbcaf49beb2c47bb0f81fe100 +msgid "The channel that is being referenced." +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreenChannel:9 +#: 8d53c1fea1ed4bc4b42468d6682605b5 +msgid ":class:`abc.Snowflake`" +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreenChannel:13 +#: d1574884bdf44266b4c3364b6f302c7a +msgid "The description of the channel that is shown on the welcome screen." +msgstr "" + +#: ../../../discord/welcome_screen.py:docstring of discord.welcome_screen.WelcomeScreenChannel:19 +#: db5cf07c9c1c4763bb1b294c64f3d247 +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "" + +#: ../../api/models.rst:244 +#: e2ae072aa4324f3fb90878fc5cfbd742 +msgid "Onboarding" +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding:1 +#: f51c0b9e44d241c2a01c5cb93e225f1e +msgid "Represents the onboarding flow for a guild." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding:7 +#: 271b317948ee4af9ac01057fa6097d2e +msgid "A list of prompts displayed in the onboarding flow." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding:9 +#: 53d298867f0c486d98071115179a949f +msgid "List[:class:`OnboardingPrompt`]" +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding:13 +#: 96c4cd419cd3476793dc4c22dc0b8175 +msgid "Whether onboarding is enabled in the guild." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding:19 +#: b3abc10736334f98852bb312a0b4df26 +msgid "The current onboarding mode." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding:21 +#: dc0e91b6bea547bb823242eb1af6537d +msgid ":class:`OnboardingMode`" +msgstr "" + +#: ../../docstring of discord.Onboarding.default_channels:1 +#: ac0131664589453fb988bfb2f8a3e052 +msgid "The channels that members are opted into by default." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:3 +#: d20857ae9f4f49299f0af0e6a13c5f15 +msgid "Edits this onboarding flow." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.edit:23 +#: 2d2ecabe5aee4e3596e250d144f1b17f +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:3 +#: 7d4d8143818740ffbfe9e04ffa131da6 +msgid "Adds a new onboarding prompt." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:9 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:13 +#: 0dd701dcf1ed49b09e55f614e36c0301 +#: 0dd701dcf1ed49b09e55f614e36c0301 +msgid "The type of onboarding prompt." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:12 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:19 +#: 6700d1737c4640a1a5e0c6c939a0fa53 +#: 6700d1737c4640a1a5e0c6c939a0fa53 +msgid "The prompt's title." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:15 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:25 +#: 12fc1d61e1c04c398375cfcebedcf0be +#: 12fc1d61e1c04c398375cfcebedcf0be +msgid "The list of options available in the prompt." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:18 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:31 +#: 70201762314944bdbac8ef5b336e95a7 +#: 70201762314944bdbac8ef5b336e95a7 +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:21 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:37 +#: c3b4464213de424f9c6a0efe01a7ad89 +#: c3b4464213de424f9c6a0efe01a7ad89 +msgid "Whether the user is required to answer this prompt." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:24 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:43 +#: 736b84d05e0a460ca50bbea976a37066 +#: 736b84d05e0a460ca50bbea976a37066 +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.add_prompt:27 +#: d14ad3d6830b490ca80590d0877dd87a +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.append_prompt:3 +#: 5a0236baae0848e6b052bb23a9d0afc0 +msgid "Append an onboarding prompt onto this flow." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.append_prompt:9 +#: b4c7b2ff81fc46aaaa37979ad8eb246a +msgid "The onboarding prompt to append." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.append_prompt:12 +#: 8564639152384b80938ce5ca87315fb2 +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.get_prompt:3 +#: 975dd453a349453f9b0b86b8a4300162 +msgid "Get an onboarding prompt with the given ID." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.get_prompt:6 +#: 16e168dd301b427b842e30432a032d54 +msgid "The ID of the prompt to get." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.get_prompt:9 +#: 2327423e92d74575b26527572486abe2 +msgid "The matching prompt, or None if it didn't exist." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.get_prompt:10 +#: 750e3a157b1e43b8a91675c7fbf92d5e +msgid ":class:`OnboardingPrompt`" +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:3 +#: de814b3d090c4b76828a46c8f937f906 +msgid "Delete an onboarding prompt with the given ID." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:9 +#: f972e03f78734bd890086b0e3e25cd2a +msgid "The ID of the prompt to delete." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:12 +#: cdcf43e9ffdf4c77952652485c2867e2 +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.Onboarding.delete_prompt:18 +#: 09d52410084d43a39931d71b0da0e2c2 +msgid "No prompt with this ID exists." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:1 +#: e9bbcc00172d4571aeb8a1aaa2fcffcc +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:7 +#: 40574c40da6a4ed6beca51ba233bead3 +msgid "The id of the prompt." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:15 +#: 685b6eedf1484c94aeea4dff12247f40 +msgid ":class:`PromptType`" +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.OnboardingPrompt:27 +#: 83dacb7ae96c43a4b4917f49fb6e496b +msgid "List[:class:`PromptOption`]" +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:1 +#: 4512d47250fd4664bc1928c5050aabf3 +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:7 +#: 5d260ad66d5746919fedb99cc3ebaeb1 +msgid "The id of the prompt option." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:13 +#: 39216b8c9a634b2fa67406bbd8a8f7e3 +msgid "The channels assigned to the user when they select this option." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:15 +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:21 +#: 6efdd1d676b6498ea7a7b933c7a4fcc8 +#: 6efdd1d676b6498ea7a7b933c7a4fcc8 +msgid "List[:class:`Snowflake`]" +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:19 +#: bf357dbe14854415b2edcde082511a2d +msgid "The roles assigned to the user when they select this option." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:25 +#: bea61aebacbf44cd938740a0f103f3de +msgid "The emoji displayed with the option." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:27 +#: 201b7a7c20b7462080d7ef962f18c186 +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:31 +#: d5adad86add84b7980b126a6cd5977bf +msgid "The option's title." +msgstr "" + +#: ../../../discord/onboarding.py:docstring of discord.onboarding.PromptOption:37 +#: 1e50bdeb3b6748af981acd85600a1abb +msgid "The option's description." +msgstr "" + +#: ../../api/models.rst:262 +#: 336df85a4c564d0e9187eaaab07e05fc +msgid "Integration" +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:1 +#: 1785bfbb2cbe44d7b237f2f2c73a769b +msgid "Represents a guild integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:13 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:13 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:13 +#: 9796bc5b9de64095a1c6c4b1297d91e1 +#: 9796bc5b9de64095a1c6c4b1297d91e1 +#: 9796bc5b9de64095a1c6c4b1297d91e1 +msgid "The integration name." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:19 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:19 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:19 +#: ee79d1da943c4e048638ebf74603e904 +#: ee79d1da943c4e048638ebf74603e904 +#: ee79d1da943c4e048638ebf74603e904 +msgid "The guild of the integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:25 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:25 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:25 +#: a15dc03a69304c0ea67001bdcc74eeea +#: a15dc03a69304c0ea67001bdcc74eeea +#: a15dc03a69304c0ea67001bdcc74eeea +msgid "The integration type (i.e. Twitch)." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:31 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:31 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:31 +#: 7bd5e756a20541969248ddb62fce3937 +#: 7bd5e756a20541969248ddb62fce3937 +#: 7bd5e756a20541969248ddb62fce3937 +msgid "Whether the integration is currently enabled." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:37 +#: d3600becb7c747b58990065d4e6a10e1 +msgid "The account linked to this integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:45 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:39 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:69 +#: 21d3b7a2c2794cbb899e0d71e058a150 +#: 21d3b7a2c2794cbb899e0d71e058a150 +#: 21d3b7a2c2794cbb899e0d71e058a150 +msgid ":class:`IntegrationAccount`" +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:37 +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration:43 +#: 457c653cc8d74125bcd46da778f939b9 +#: 457c653cc8d74125bcd46da778f939b9 +msgid "The user that added this integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration.delete:3 +#: 8b3ffbaa59b14c90a9fc7afa45026e2d +msgid "Deletes the integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration.delete:9 +#: dd5935769aea469ba10a8a1d3a8bbc1b +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration.delete:9 +#: 734f9399d86e4b8e9a1def95909ec9c3 +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration.delete:14 +#: ea6d867ff2b64f0784fe1cd4a3643563 +msgid "You do not have permission to delete the integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.Integration.delete:15 +#: fc5b286ea45942b0aa4ccc4fa2650448 +msgid "Deleting the integration failed." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationAccount:1 +#: 051f5baa31ad4608a77a9235e725f749 +msgid "Represents an integration account." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationAccount:7 +#: b46ce6c022144379a08da3c7e379031d +msgid "The account ID." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationAccount:13 +#: 50cde552d4454560ae462e981472bd31 +msgid "The account name." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:1 +#: d4f2fb2b97b0466daffc259ba311fa14 +msgid "Represents a bot integration on discord." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:43 +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:67 +#: 0b0e4b93e0074ce3bde5c03b1389b3ef +#: 0b0e4b93e0074ce3bde5c03b1389b3ef +msgid "The integration account information." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:49 +#: 3d2f746f188b48fcaa0c20d7e321d9b1 +msgid "The application tied to this integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.BotIntegration:51 +#: 6f321f9ee8bf422d9c0d4d54a6dc99b9 +msgid ":class:`IntegrationApplication`" +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:1 +#: a7dc168070fb49c3a3446ea00d0e15df +msgid "Represents an application for a bot integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:7 +#: acce68a625bc416282a380ec7f49a537 +msgid "The ID for this application." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:13 +#: de98dede40cc4d77a38831d433b5387d +msgid "The application's name." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:19 +#: bffed0c8dada4975a6e439912fba1f4e +msgid "The application's icon hash." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:25 +#: 3e80d9ebb4f64ac7b9acda712293a428 +msgid "The application's description. Can be an empty string." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:31 +#: 0c1c24e1fe04467eab04f0003f56c375 +msgid "The summary of the application. Can be an empty string." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.IntegrationApplication:37 +#: aea523fa81074e9dbd69e8c156914b31 +msgid "The bot user on this application." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:1 +#: c68676e831784f818ed983ef682555db +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:37 +#: 24d03d37cb52482d89c62b6b84ef4311 +msgid "Where the integration is currently syncing." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:43 +#: 3593d31955bc4632bb4985471e78e098 +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:49 +#: 6e0ac92b80784da497c721645009c8e6 +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:51 +#: 7a4de949a3f049bb9a4c83c33675d557 +msgid ":class:`ExpireBehaviour`" +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:55 +#: e03d6eec6012477790d4eae99a4f1a39 +msgid "The grace period (in days) for expiring subscribers." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:61 +#: c030974a1da14562a4a19d1b747cf27f +msgid "The user for the integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration:73 +#: 34ac350a5f24416c9dd75923281ec2c7 +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.StreamIntegration.expire_behavior:1 +#: 677c8eaf2fb84d439ecf639d5a7032b2 +msgid "An alias for :attr:`expire_behaviour`." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.StreamIntegration.role:1 +#: 0e4777b133bd43ef9717d00fa475dfe6 +msgid "The role which the integration uses for subscribers." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:3 +#: 762cedc36f1645f48f9f5a0d9d2fc27e +msgid "Edits the integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:9 +#: 27c5d6ff298146d0841521848de21afb +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:12 +#: 7b5cde27ae5e419bb307f66f6fac1144 +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:15 +#: 583eabb6e09b477bae17d461579d8e60 +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:18 +#: 5c7199415d0646a0a3771e3e3f68769b +msgid "You do not have permission to edit the integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.edit:20 +#: 7ee08cacd7934777ba8ce2f3f00e8696 +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.sync:3 +#: 18a0bc5e019c479aa91eced9307c5419 +msgid "Syncs the integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.sync:8 +#: 4888b65407a843ceaeb05eccbe0cc4e8 +msgid "You do not have permission to sync the integration." +msgstr "" + +#: ../../../discord/integrations.py:docstring of discord.integrations.StreamIntegration.sync:9 +#: 03487c76dd8843a5ba8ae916bddd7e62 +msgid "Syncing the integration failed." +msgstr "" + +#: ../../api/models.rst:280 +#: 9cf29fbd2890454db490e0730bd67152 +msgid "Widget" +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget:1 +#: 1d87c6fd0c164a4585b06b69648cfad6 +msgid "Represents a :class:`Guild` widget." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget:7 +#: eb2b35ab9969443bb0ec92c7427dcacf +msgid "Checks if two widgets are the same." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget:11 +#: 595eef4d74ad40719f2926f63d720866 +msgid "Checks if two widgets are not the same." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget:15 +#: 77237a33c4324d729d14829db8440658 +msgid "Returns the widget's JSON URL." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget:25 +#: 9b2d03f0d394413c849737a5730a5637 +msgid "The guild's name." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget:31 +#: bd6ffaf6e5aa4480b9a3ec32545bb678 +msgid "The accessible voice channels in the guild." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget:33 +#: 433e644b5a464d99965275aa2bdf5113 +msgid "List[:class:`WidgetChannel`]" +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget:37 +#: 2cdd2806026540edb70d2f1f54362cf6 +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget:42 +#: 491aab7c0228443e98dd0634065be810 +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.Widget.created_at:1 +#: 994e3f551fdc4c33aff57bbf415915ea +msgid "Returns the member's creation time in UTC." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.Widget.json_url:1 +#: b990bc2341be4bda99857899e6781163 +msgid "The JSON URL of the widget." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.Widget.invite_url:1 +#: 1814a1e713b24e2d97c981eff1c125f9 +msgid "The invite URL for the guild, if available." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget.fetch_invite:3 +#: 840a71ef091143abb364c22f4d133ca6 +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget.fetch_invite:8 +#: d75451ea4129492c9596eba0da52ecf1 +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget.fetch_invite:13 +#: ff90e8c1588b42c5a22917055eec9364 +msgid "The invite from the widget's invite URL." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.Widget.fetch_invite:14 +#: 580b931e16cc43dda7c757392c9d60e9 +msgid ":class:`Invite`" +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:1 +#: 3acbe0815eda46edb6098d348f866bfe +msgid "Represents a \"partial\" widget channel." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:23 +#: ded97df4dda74dd080c94aaa4e540000 +msgid "The channel's ID." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetChannel:35 +#: 72f9a68665cd4bf7aac6cf2bf68c1cd7 +msgid "The channel's position" +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:1 +#: d5394f7afc754b288c64a3f1f72932d5 +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:7 +#: 9999d783bb9f4dc18b91d2cd85068ebe +msgid "Checks if two widget members are the same." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:11 +#: 35731aff615f4dff845ae775b414311a +msgid "Checks if two widget members are not the same." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:15 +#: 0f4e9d0cd50a4b1d91351ab5d94c3979 +msgid "Return the widget member's hash." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:19 +#: 7bb172beacfe4617aa83c641cc3f2576 +msgid "Returns the widget member's `name#discriminator`." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:23 +#: 7443575f9f214e1699b8e4cfa95ab02c +msgid "The member's ID." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:29 +#: ed8828093ef343208bf15ddf3093d61e +msgid "The member's username." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:35 +#: 476e5b58d05d4f0ba6d0c2efc1a612bc +msgid "The member's discriminator." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:41 +#: 52e4f22308a84c2e9d95fd17ea2b4e5f +msgid "Whether the member is a bot." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:47 +#: 7fb6bb5298914dfaada7d31d17e859c0 +msgid "The member's status." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:49 +#: c2adee63344e4654956898d0f1e443a6 +msgid ":class:`Status`" +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:53 +#: 157122b9e8b24251880d68a737d4d522 +msgid "The member's nickname." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:59 +#: f619f9599f374b6c8f1df8b0f1765a39 +msgid "The member's avatar hash." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:65 +#: 45684373c5e74f8fb347af80b03ed751 +msgid "The member's activity." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:67 +#: a1689f0e7f6244d8a119ce54d04afd64 +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:71 +#: b3ff818af6974ac9af066044bf4ba6ca +msgid "Whether the member is currently deafened." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:77 +#: fc4b2322da844f30885f5d2bff97bace +msgid "Whether the member is currently muted." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:83 +#: e24cd9e568b849f7a5b64fe9242d31f6 +msgid "Whether the member is currently being suppressed." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:89 +#: 2eb48de5180449159d623794c7ef1d80 +msgid "Which channel the member is connected to." +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.widget.WidgetMember:91 +#: baf0d47ab52a4e7f9ad33ad1297b6245 +msgid "Optional[:class:`WidgetChannel`]" +msgstr "" + +#: ../../../discord/widget.py:docstring of discord.WidgetMember.display_name:1 +#: be1c1bedfca64980a23a4e6ce258f0d1 +msgid "Returns the member's display name." +msgstr "" + +#: ../../api/models.rst:299 +#: 37c503ce08c645ed80617cb4dae9b391 +msgid "Threads" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:1 +#: 862c0af81fa74b42ae0c1fc3e4927c60 +msgid "Represents a Discord thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:7 +#: a53a2504fd6b4fe3a4779e7a2316dde8 +msgid "Checks if two threads are equal." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:11 +#: d317c8430ff34f91a4b7d991b79bd5f7 +msgid "Checks if two threads are not equal." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:15 +#: 561a44e9bb8b491e8c7b78ee3fd6701d +msgid "Returns the thread's hash." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:19 +#: f1beb12f175941abb922b3500042939f +msgid "Returns the thread's name." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:25 +#: 4858970bd7154bc89032f2bc4f72baa7 +msgid "The thread name." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:31 +#: f197d86c764149bfb3fd7c1eacf9a3b3 +msgid "The guild the thread belongs to." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:37 +#: c3245fdb024f4dbd9d3ce6b9e53ca810 +msgid "The thread ID." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:40 +#: cb093b6a1fdd4cfcb644c15c0e577728 +msgid "This ID is the same as the thread starting message ID." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:46 +#: 60d6679beded46c194c1da5401f65110 +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:52 +#: 679daece3daa4e4cbb295a2b5337dd5f +msgid "The user's ID that created this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:58 +#: b1064ff6697546238155084f98843c81 +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:65 +#: 96b104d5ba9746c6bc54bee3d95bfdcf +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:74 +#: 518ddd8e2aea44fcbf0b4e1d7fb21da1 +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:80 +#: 5b10830c99d1452194e55ee1a0291464 +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:86 +#: c311e65b40b6488db53add6297be7cba +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:89 +#: 3488c9668abc47e8a839d445f9eed2a9 +msgid "Optional[:class:`ThreadMember`]" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:93 +#: 21c84d957185468f97d2e7b36ec22056 +msgid "Whether the thread is archived." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:99 +#: b4eafe5a4f7a4a088e54ccbe39314d36 +msgid "Whether the thread is locked." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:105 +#: 6f26e3e892c0426b8ffcae0f1d4b79a5 +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:112 +#: 0c3bc69cc45443009fda8cfda1204d10 +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:119 +#: ff2833e886b544118d6856cce8f59537 +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:125 +#: cbd4c982ba7741ba9045fcb0a9bd7f11 +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:132 +#: e212d34b2b1c416494deb7d202253ad9 +msgid "Extra features of the thread." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:64 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:102 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:93 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:98 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:114 +#: ../../../discord/threads.py:docstring of discord.threads.Thread:136 +#: f03b50bb386e47e88f5080d349b75439 +#: f03b50bb386e47e88f5080d349b75439 +#: f03b50bb386e47e88f5080d349b75439 +#: f03b50bb386e47e88f5080d349b75439 +#: f03b50bb386e47e88f5080d349b75439 +#: f03b50bb386e47e88f5080d349b75439 +msgid ":class:`ChannelFlags`" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread:140 +#: a9b329ac47594a1ca69498f273e2226e +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.type:1 +#: ../../../discord/channel.py:docstring of discord.DMChannel.type:1 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.type:1 +#: ../../../discord/channel.py:docstring of discord.GroupChannel.type:1 +#: ../../../discord/channel.py:docstring of discord.StageChannel.type:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.type:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.type:1 +#: ../../../discord/threads.py:docstring of discord.Thread.type:1 +#: 4e301d5d8f414b4a8fca6cb4433976e7 +#: 4e301d5d8f414b4a8fca6cb4433976e7 +#: 4e301d5d8f414b4a8fca6cb4433976e7 +#: 4e301d5d8f414b4a8fca6cb4433976e7 +#: 4e301d5d8f414b4a8fca6cb4433976e7 +#: 4e301d5d8f414b4a8fca6cb4433976e7 +#: 4e301d5d8f414b4a8fca6cb4433976e7 +#: 4e301d5d8f414b4a8fca6cb4433976e7 +msgid "The channel's Discord type." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.parent:1 +#: 6685fa4f98da4f4fbad14622dc43bd59 +msgid "The parent channel this thread belongs to." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.owner:1 +#: 3bb2c4499f774c7db3a93a7a4840b242 +msgid "The member this thread belongs to." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.mention:1 +#: de6170f8f1db4c83a177129fd8a80e69 +msgid "The string that allows you to mention the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.jump_url:1 +#: b55dcf3cd4e84201a89d95165638fb0d +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.members:1 +#: 65ee281822674cdf9142045aa15e51f5 +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.members:3 +#: 1b86fa2a3a8c426889ae42c19b19f672 +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.applied_tags:1 +#: 3f3c5952d3e44e838cda0dd3b470fed5 +msgid "A list of tags applied to this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.applied_tags:3 +#: 520a7a4a8aeb471a9616b98069fe4e20 +msgid "This is only available for threads in forum channels." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:110 +#: ../../../discord/threads.py:docstring of discord.Thread.applied_tags:5 +#: 22ee64cf3e304d3fa699868a43f6e342 +#: 22ee64cf3e304d3fa699868a43f6e342 +msgid "List[:class:`ForumTag`]" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.last_message:1 +#: 7d496f753ec4435baf11b02c3eecff1d +msgid "Returns the last message from this thread in cache." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.last_message:3 +#: ../../../discord/channel.py:docstring of discord.StageChannel.last_message:3 +#: ../../../discord/channel.py:docstring of discord.TextChannel.last_message:3 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.last_message:3 +#: ../../../discord/threads.py:docstring of discord.Thread.last_message:3 +#: ../../../discord/threads.py:docstring of discord.Thread.starting_message:3 +#: 79224463831a451c8339369ad55335d1 +#: 79224463831a451c8339369ad55335d1 +#: 79224463831a451c8339369ad55335d1 +#: 79224463831a451c8339369ad55335d1 +#: 79224463831a451c8339369ad55335d1 +#: 79224463831a451c8339369ad55335d1 +msgid "The message might not be valid or point to an existing message." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.last_message:5 +#: ../../../discord/channel.py:docstring of discord.StageChannel.last_message:5 +#: ../../../discord/channel.py:docstring of discord.TextChannel.last_message:5 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.last_message:5 +#: ../../../discord/threads.py:docstring of discord.Thread.last_message:5 +#: 086f64f83b2e45448c6e193790788fb9 +#: 086f64f83b2e45448c6e193790788fb9 +#: 086f64f83b2e45448c6e193790788fb9 +#: 086f64f83b2e45448c6e193790788fb9 +#: 086f64f83b2e45448c6e193790788fb9 +msgid "Reliable Fetching" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.last_message:8 +#: ../../../discord/channel.py:docstring of discord.StageChannel.last_message:8 +#: ../../../discord/channel.py:docstring of discord.TextChannel.last_message:8 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.last_message:8 +#: ../../../discord/threads.py:docstring of discord.Thread.last_message:8 +#: 1fa6735ff47b46a5a2bd90070d218c40 +#: 1fa6735ff47b46a5a2bd90070d218c40 +#: 1fa6735ff47b46a5a2bd90070d218c40 +#: 1fa6735ff47b46a5a2bd90070d218c40 +#: 1fa6735ff47b46a5a2bd90070d218c40 +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.last_message:13 +#: ../../../discord/channel.py:docstring of discord.StageChannel.last_message:13 +#: ../../../discord/channel.py:docstring of discord.TextChannel.last_message:13 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.last_message:13 +#: ../../../discord/threads.py:docstring of discord.Thread.last_message:13 +#: 53538facaa654a67be082b8dfbf4f8d3 +#: 53538facaa654a67be082b8dfbf4f8d3 +#: 53538facaa654a67be082b8dfbf4f8d3 +#: 53538facaa654a67be082b8dfbf4f8d3 +#: 53538facaa654a67be082b8dfbf4f8d3 +msgid "The last message in this channel or ``None`` if not found." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.last_message:14 +#: ../../../discord/channel.py:docstring of discord.StageChannel.last_message:14 +#: ../../../discord/channel.py:docstring of discord.TextChannel.last_message:14 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.last_message:14 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:54 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:72 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:86 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:25 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:36 +#: ../../../discord/threads.py:docstring of discord.Thread.last_message:14 +#: ../../../discord/threads.py:docstring of discord.Thread.starting_message:9 +#: ../../docstring of discord.InteractionMetadata.interacted_message:4 +#: ../../docstring of discord.InteractionMetadata.original_response_message:4 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +#: 8bb271610b164ef2a44fba616a0bb416 +msgid "Optional[:class:`Message`]" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.category:1 +#: fa406e35bd84467385fd2950bc239ea7 +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.category:3 +#: 3ecfd31222b1423d888799e280392ed4 +msgid "The parent channel's category." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.category:4 +#: 5c2fca147f364702ad1752ee26abc80a +msgid "Optional[:class:`CategoryChannel`]" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.category:6 +#: ../../../discord/threads.py:docstring of discord.Thread.category_id:6 +#: e66dee0dc32745b5b1c3998855c064eb +#: e66dee0dc32745b5b1c3998855c064eb +msgid "The parent channel was not cached and returned ``None``." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.category_id:1 +#: 2722f4ac082d4e9b8f104458a252afbf +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.category_id:3 +#: 142b2cc7a5094cb8aa3990e91a2a036a +msgid "The parent channel's category ID." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.starting_message:1 +#: 65899ce1f85a4946b96f26fe16255a80 +msgid "Returns the message that started this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.starting_message:6 +#: 3a6d325fb82747a7bc19ddda517f3b17 +msgid "The ID for this message is the same as the thread ID." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.Thread.starting_message:8 +#: 9609686473534ab295e3ecdb511944f3 +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_pinned:1 +#: b9b0a2dd3d2e4ecc887943971386974f +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_private:1 +#: 1e601881276b4c0f8d04536a4d310638 +msgid "Whether the thread is a private thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_private:3 +#: a157bbbcad26493495551f13f22a9b57 +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_news:1 +#: 1a00e42e8d4b4436ae5a3eda59611a61 +msgid "Whether the thread is a news thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_news:3 +#: c770f278fc9741068b5f5caa810a47ec +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_nsfw:1 +#: be6f1dd770614a5d8bf4700202115bf4 +msgid "Whether the thread is NSFW or not." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.is_nsfw:3 +#: 80c412eccc484737bba543d510696dd2 +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:1 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:1 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:1 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.permissions_for:1 +#: 692f32fef56d4dc2a04da0f0d03690c3 +#: 692f32fef56d4dc2a04da0f0d03690c3 +#: 692f32fef56d4dc2a04da0f0d03690c3 +#: 692f32fef56d4dc2a04da0f0d03690c3 +#: 692f32fef56d4dc2a04da0f0d03690c3 +#: 692f32fef56d4dc2a04da0f0d03690c3 +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.permissions_for:4 +#: 42fd14322cd84ff585c47df80340632a +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:23 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:23 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:23 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.permissions_for:10 +#: 5f9a51f4c1324ef39f021d40602fc2ca +#: 5f9a51f4c1324ef39f021d40602fc2ca +#: 5f9a51f4c1324ef39f021d40602fc2ca +#: 5f9a51f4c1324ef39f021d40602fc2ca +#: 5f9a51f4c1324ef39f021d40602fc2ca +#: 5f9a51f4c1324ef39f021d40602fc2ca +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:28 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:28 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:28 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.permissions_for:15 +#: 4affbef6d844449eb70b5f03da656576 +#: 4affbef6d844449eb70b5f03da656576 +#: 4affbef6d844449eb70b5f03da656576 +#: 4affbef6d844449eb70b5f03da656576 +#: 4affbef6d844449eb70b5f03da656576 +#: 4affbef6d844449eb70b5f03da656576 +msgid "The resolved permissions for the member or role." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:29 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:29 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:29 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.permissions_for:16 +#: 32bedaab337c4ea6a781177cc1e64553 +#: ebe51a2429f948418f2ba027284602e4 +#: ebe51a2429f948418f2ba027284602e4 +#: ebe51a2429f948418f2ba027284602e4 +#: ebe51a2429f948418f2ba027284602e4 +#: ebe51a2429f948418f2ba027284602e4 +msgid ":class:`~discord.Permissions`" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.permissions_for:18 +#: 93eb5aa115234b06b0dc1fb131cbdda0 +msgid "The parent channel was not cached and returned ``None``" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:3 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:3 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:3 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:3 +#: efb41e6c99054ced96096e8407c04478 +#: efb41e6c99054ced96096e8407c04478 +#: efb41e6c99054ced96096e8407c04478 +#: efb41e6c99054ced96096e8407c04478 +#: efb41e6c99054ced96096e8407c04478 +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:6 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:6 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:6 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:6 +#: 95d403544c7b470d8e62307238c84394 +#: 95d403544c7b470d8e62307238c84394 +#: 95d403544c7b470d8e62307238c84394 +#: 95d403544c7b470d8e62307238c84394 +#: 95d403544c7b470d8e62307238c84394 +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:10 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:10 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:10 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:10 +#: 44d243e208e74dabaf00f2898f37a386 +#: 44d243e208e74dabaf00f2898f37a386 +#: 44d243e208e74dabaf00f2898f37a386 +#: 44d243e208e74dabaf00f2898f37a386 +#: 44d243e208e74dabaf00f2898f37a386 +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:13 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:13 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:13 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:13 +#: 12ac8c2d1ee24602b36d469637750012 +#: 12ac8c2d1ee24602b36d469637750012 +#: 12ac8c2d1ee24602b36d469637750012 +#: 12ac8c2d1ee24602b36d469637750012 +#: 12ac8c2d1ee24602b36d469637750012 +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:16 +#: 81b2505f5c46461fbe068c205bb88ae6 +msgid "Usable only by bot accounts." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:17 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:17 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:17 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:19 +#: 258275aa7a7f40928cd773403e9d2750 +#: 258275aa7a7f40928cd773403e9d2750 +#: 258275aa7a7f40928cd773403e9d2750 +#: 258275aa7a7f40928cd773403e9d2750 +#: 258275aa7a7f40928cd773403e9d2750 +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:20 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:38 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:20 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:38 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:20 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:38 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:22 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:38 +#: 8fc880d585134a17a0024216a1164444 +#: 8fc880d585134a17a0024216a1164444 +#: 8fc880d585134a17a0024216a1164444 +#: 8fc880d585134a17a0024216a1164444 +#: 8fc880d585134a17a0024216a1164444 +#: 8fc880d585134a17a0024216a1164444 +#: 8fc880d585134a17a0024216a1164444 +#: 8fc880d585134a17a0024216a1164444 +#: 8fc880d585134a17a0024216a1164444 +#: 8fc880d585134a17a0024216a1164444 +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:23 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:23 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:23 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:25 +#: a1442b5bbdf74f6e8b31ae84a2726b54 +#: a1442b5bbdf74f6e8b31ae84a2726b54 +#: a1442b5bbdf74f6e8b31ae84a2726b54 +#: a1442b5bbdf74f6e8b31ae84a2726b54 +#: a1442b5bbdf74f6e8b31ae84a2726b54 +msgid "The number of messages to delete was more than 100." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:26 +#: dd1d020ebc714c82be6ea10ecba7ab9c +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:25 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:25 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:25 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:27 +#: 8411b93430f2431482fd0973f5fe5166 +#: 8411b93430f2431482fd0973f5fe5166 +#: 8411b93430f2431482fd0973f5fe5166 +#: 8411b93430f2431482fd0973f5fe5166 +#: 8411b93430f2431482fd0973f5fe5166 +msgid "If single delete, then the message was already deleted." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:26 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:26 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:26 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete_messages:28 +#: 313dc26247974242aaf1193cdd259b8f +#: 313dc26247974242aaf1193cdd259b8f +#: 313dc26247974242aaf1193cdd259b8f +#: 313dc26247974242aaf1193cdd259b8f +#: 313dc26247974242aaf1193cdd259b8f +msgid "Deleting the messages failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:3 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:3 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:3 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:3 +#: 20bf7bf6e69540dc87705f873d0610d7 +#: 20bf7bf6e69540dc87705f873d0610d7 +#: 20bf7bf6e69540dc87705f873d0610d7 +#: 20bf7bf6e69540dc87705f873d0610d7 +#: 20bf7bf6e69540dc87705f873d0610d7 +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:7 +#: 3465d6c0938946a886a3bc9197eefef8 +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:13 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:13 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:13 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:13 +#: 48531b89c2704243bdba0081c736b094 +#: 48531b89c2704243bdba0081c736b094 +#: 48531b89c2704243bdba0081c736b094 +#: 48531b89c2704243bdba0081c736b094 +#: 48531b89c2704243bdba0081c736b094 +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:17 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:17 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:17 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:17 +#: 73a25e191e4d427eb290e5ad194aeb46 +#: 73a25e191e4d427eb290e5ad194aeb46 +#: 73a25e191e4d427eb290e5ad194aeb46 +#: 73a25e191e4d427eb290e5ad194aeb46 +#: 73a25e191e4d427eb290e5ad194aeb46 +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:21 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:21 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:21 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:21 +#: 6e83155f849f4352a4bfa760384b8b9e +#: 6e83155f849f4352a4bfa760384b8b9e +#: 6e83155f849f4352a4bfa760384b8b9e +#: 6e83155f849f4352a4bfa760384b8b9e +#: 6e83155f849f4352a4bfa760384b8b9e +msgid "Same as ``before`` in :meth:`history`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:24 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:24 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:24 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:24 +#: 7aa18cb895d644e19053e2eec14ee6c0 +#: 7aa18cb895d644e19053e2eec14ee6c0 +#: 7aa18cb895d644e19053e2eec14ee6c0 +#: 7aa18cb895d644e19053e2eec14ee6c0 +#: 7aa18cb895d644e19053e2eec14ee6c0 +msgid "Same as ``after`` in :meth:`history`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:27 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:27 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:27 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:27 +#: 083fb0803d4f4b939e1a15944a2584cf +#: 083fb0803d4f4b939e1a15944a2584cf +#: 083fb0803d4f4b939e1a15944a2584cf +#: 083fb0803d4f4b939e1a15944a2584cf +#: 083fb0803d4f4b939e1a15944a2584cf +msgid "Same as ``around`` in :meth:`history`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:30 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:30 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:30 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:30 +#: 0a6dd8d4b88c4a3e9b3e4e250790250e +#: 0a6dd8d4b88c4a3e9b3e4e250790250e +#: 0a6dd8d4b88c4a3e9b3e4e250790250e +#: 0a6dd8d4b88c4a3e9b3e4e250790250e +#: 0a6dd8d4b88c4a3e9b3e4e250790250e +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:33 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:33 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:33 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:33 +#: 7981dc8e7bf44631bc14eaefc415734a +#: 7981dc8e7bf44631bc14eaefc415734a +#: 7981dc8e7bf44631bc14eaefc415734a +#: 7981dc8e7bf44631bc14eaefc415734a +#: 7981dc8e7bf44631bc14eaefc415734a +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:41 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:41 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:41 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:41 +#: e2aad5ac64c24915bdc0bbe81ec6228f +#: e2aad5ac64c24915bdc0bbe81ec6228f +#: e2aad5ac64c24915bdc0bbe81ec6228f +#: e2aad5ac64c24915bdc0bbe81ec6228f +#: e2aad5ac64c24915bdc0bbe81ec6228f +msgid "The list of messages that were deleted." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:42 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:42 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:42 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:42 +#: b0c8e3b1df6f47d9a418cb9029926cb7 +#: b0c8e3b1df6f47d9a418cb9029926cb7 +#: b0c8e3b1df6f47d9a418cb9029926cb7 +#: b0c8e3b1df6f47d9a418cb9029926cb7 +#: b0c8e3b1df6f47d9a418cb9029926cb7 +msgid "List[:class:`.Message`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:44 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:44 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:44 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:44 +#: 75f5a744aaeb45b9800325ba52e32825 +#: 75f5a744aaeb45b9800325ba52e32825 +#: 75f5a744aaeb45b9800325ba52e32825 +#: 75f5a744aaeb45b9800325ba52e32825 +#: 75f5a744aaeb45b9800325ba52e32825 +msgid "You do not have proper permissions to do the actions required." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:45 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:45 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:45 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:45 +#: 55ac3c5f07e84d59b3459547d1ec5ebb +#: 55ac3c5f07e84d59b3459547d1ec5ebb +#: 55ac3c5f07e84d59b3459547d1ec5ebb +#: 55ac3c5f07e84d59b3459547d1ec5ebb +#: 55ac3c5f07e84d59b3459547d1ec5ebb +msgid "Purging the messages failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:49 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:49 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:49 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.purge:49 +#: 67669bca174940f0a790b768a423a88b +#: 67669bca174940f0a790b768a423a88b +#: 67669bca174940f0a790b768a423a88b +#: 67669bca174940f0a790b768a423a88b +#: 67669bca174940f0a790b768a423a88b +msgid "Deleting bot's messages ::" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:3 +#: 4496559920f34393bb3246284304db51 +msgid "Edits the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:5 +#: ec5c1a6a155042b3b86f50bc6ff94b25 +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:10 +#: f0ab4c069b414542ae59c42963bee817 +msgid "The thread must be unarchived to be edited." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:13 +#: 498910bc39f641c0aa938c6f996f063a +msgid "The new name of the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:16 +#: 9664f07837e0479bb44fa5828ec3b4d4 +msgid "Whether to archive the thread or not." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:19 +#: 63f577001ef343a3ba34c99075155b12 +msgid "Whether to lock the thread or not." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:22 +#: 83b23a4a59684d8792b9edcf4730a552 +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:26 +#: cf29fb446325413491772632704014f3 +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:34 +#: 1156a52c234a4a16a525c4ee1e8d2aa3 +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:37 +#: 16778a16ff164603a54eef19b4f71952 +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:40 +#: 0da7c0a3c631463692bb26a46134936a +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:40 +#: 4b882218e71646c4bde6153d4e8fce26 +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:45 +#: f3242dd7014845a89c338d87a47dc9a2 +msgid "The newly edited thread." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:68 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:40 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:46 +#: 0be10d93f961436c9de4fab78f0fe327 +#: 0be10d93f961436c9de4fab78f0fe327 +#: 0be10d93f961436c9de4fab78f0fe327 +msgid ":class:`Thread`" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:48 +#: 0d0cd43a3658484b94e7206b30bcf60f +msgid "You do not have permissions to edit the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.edit:49 +#: a5f03015ee4640d79c0fe07e078aaa88 +msgid "Editing the thread failed." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.archive:3 +#: 05c3fee091fc403fa1184f8c24a0b544 +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.archive:6 +#: c625b40bb4bc47c2b3ef3646b70b9001 +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.archive:9 +#: ../../../discord/threads.py:docstring of discord.threads.Thread.unarchive:5 +#: 5bbc21eca8354cd8a2ba719986db0064 +#: 5bbc21eca8354cd8a2ba719986db0064 +msgid "The updated thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.unarchive:3 +#: 8e12b8fb6f0544c286a3fb3bb00d7a52 +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.join:3 +#: 31eb981658ed4cc9a37411b903861206 +msgid "Joins this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.join:5 +#: be140a45a17d41898ac50df0617089ee +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.join:8 +#: e06f3725eaaf408db90393e6f3ada095 +msgid "You do not have permissions to join the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.join:9 +#: 7d12848dcb3f4861a351c970261c2b1b +msgid "Joining the thread failed." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.leave:3 +#: ff71a333b5ae4e6bbd890b237dad840e +msgid "Leaves this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.leave:5 +#: bdb4a9ea2f0a47a08d6dca16dff62451 +msgid "Leaving the thread failed." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.add_user:3 +#: 1b05a68ae3c84a648f1ad70729c77a36 +msgid "Adds a user to this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.add_user:5 +#: 4a0ae931e5564397891f5e173f57aea1 +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.add_user:11 +#: 1856ba808a5345d09d7679fedb68f710 +msgid "The user to add to the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.add_user:14 +#: 780131b5bb2b4a7386a00c1dd2604c8b +msgid "You do not have permissions to add the user to the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.add_user:15 +#: 739e34ad4e53466fa316fee1c363010e +msgid "Adding the user to the thread failed." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.remove_user:3 +#: 0bb51be8537b4cc6ae5e2913f7af4fab +msgid "Removes a user from this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.remove_user:5 +#: 8dbe55c513b84d41af8ad3e22098bab3 +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.remove_user:8 +#: e72e4aeb9b2e48bea51c447675b82634 +msgid "The user to remove from the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.remove_user:11 +#: c9902821760b43a5b3e58a1ff58ced44 +msgid "You do not have permissions to remove the user from the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.remove_user:12 +#: 424ee87877a14d00b91eef06804bf321 +msgid "Removing the user from the thread failed." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.fetch_members:3 +#: bfa27a74cae14a589e4212797383ae0f +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.fetch_members:5 +#: 17c8b9aeddc44d2c98cd4241c194830c +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.fetch_members:8 +#: ab88896940db4fa48943613f620be701 +msgid "All thread members in the thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.fetch_members:9 +#: 86a3f975569646a6a58e60647d1dfcde +msgid "List[:class:`ThreadMember`]" +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.fetch_members:11 +#: 71f3a9dbbb2a4b6e92dd4582e5e33c7d +msgid "Retrieving the members failed." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete:3 +#: 266518b94fca48c29a23d520a7a430f1 +msgid "Deletes this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete:5 +#: b3acb93535cc4ece8625c5d7d5b3ad76 +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete:7 +#: 4457d46863cb4e2790ebd1ba60137630 +msgid "You do not have permissions to delete this thread." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.Thread.delete:8 +#: 7744db38370a490aba33b006de6375d7 +msgid "Deleting the thread failed." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:1 +#: 860838b6020e49b0ae2028d20f4083f2 +msgid "Represents a Discord thread member." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:7 +#: ba525c7b07824c139f36bdecc842f020 +msgid "Checks if two thread members are equal." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:11 +#: 630e0a97a888475789d5f3ebacba3327 +msgid "Checks if two thread members are not equal." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:15 +#: 8302c36b3dbf42f2ae1d459d2c78c905 +msgid "Returns the thread member's hash." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:19 +#: ceb09394c4c4467b8f2d416c408764b3 +msgid "Returns the thread member's name." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:25 +#: b4aacab5225840ca94a608170900ccfa +msgid "The thread member's ID." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:31 +#: cc00b147152243bb8f89b459191c1daf +msgid "The thread's ID." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.threads.ThreadMember:37 +#: 985132367fb04e298906610d56501aec +msgid "The time the member joined the thread in UTC." +msgstr "" + +#: ../../../discord/threads.py:docstring of discord.ThreadMember.thread:1 +#: 97fc6a907f064db0a1c8e12ba6c89f42 +msgid "The thread this member belongs to." +msgstr "" + +#: ../../api/models.rst:320 +#: 74f4a8b9588440d094786e1993d7e7b4 +msgid "Stages" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:1 +#: 27cae1cff3b1483ba2927229b7e76ea6 +msgid "Represents a Discord guild stage channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:9 +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:7 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:7 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:7 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:9 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:7 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:7 +#: cbc78674793e480aaaf2d52a99574eb8 +#: cbc78674793e480aaaf2d52a99574eb8 +#: cbc78674793e480aaaf2d52a99574eb8 +#: cbc78674793e480aaaf2d52a99574eb8 +#: cbc78674793e480aaaf2d52a99574eb8 +#: cbc78674793e480aaaf2d52a99574eb8 +#: cbc78674793e480aaaf2d52a99574eb8 +msgid "Checks if two channels are equal." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:13 +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:11 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:11 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:11 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:13 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:11 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:11 +#: 91b7e5fb35174e4c8cab7571141a7cd9 +#: 91b7e5fb35174e4c8cab7571141a7cd9 +#: 91b7e5fb35174e4c8cab7571141a7cd9 +#: 91b7e5fb35174e4c8cab7571141a7cd9 +#: 91b7e5fb35174e4c8cab7571141a7cd9 +#: 91b7e5fb35174e4c8cab7571141a7cd9 +#: 91b7e5fb35174e4c8cab7571141a7cd9 +msgid "Checks if two channels are not equal." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:15 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:15 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:15 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:17 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:15 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:15 +#: 40b19f0e11a242c3878748f60e579d3c +#: 40b19f0e11a242c3878748f60e579d3c +#: 40b19f0e11a242c3878748f60e579d3c +#: 40b19f0e11a242c3878748f60e579d3c +#: 40b19f0e11a242c3878748f60e579d3c +#: 40b19f0e11a242c3878748f60e579d3c +msgid "Returns the channel's hash." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:19 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:21 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:19 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:19 +#: c3008f4769c14c198b601e8cc3c70be8 +#: c3008f4769c14c198b601e8cc3c70be8 +#: c3008f4769c14c198b601e8cc3c70be8 +#: c3008f4769c14c198b601e8cc3c70be8 +msgid "Returns the channel's name." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:23 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:25 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:23 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:23 +#: b116e2cea92b420eac9aea8cc1ab81f0 +#: b116e2cea92b420eac9aea8cc1ab81f0 +#: b116e2cea92b420eac9aea8cc1ab81f0 +#: b116e2cea92b420eac9aea8cc1ab81f0 +msgid "The channel name." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:29 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:31 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:29 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:29 +#: e4d03f1e47a9494392429ae5f2172724 +#: e4d03f1e47a9494392429ae5f2172724 +#: e4d03f1e47a9494392429ae5f2172724 +#: e4d03f1e47a9494392429ae5f2172724 +msgid "The guild the channel belongs to." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:35 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:37 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:35 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:35 +#: 10d9af8b3c114f4f9be973e412b03fb3 +#: 10d9af8b3c114f4f9be973e412b03fb3 +#: 10d9af8b3c114f4f9be973e412b03fb3 +#: 10d9af8b3c114f4f9be973e412b03fb3 +msgid "The channel ID." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:43 +#: 821d258afb4a4a4db55ea4e35e29266f +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:41 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:49 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:41 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:41 +#: 7bce4c601b7e4d13af2c0eeb1288ed61 +#: 7bce4c601b7e4d13af2c0eeb1288ed61 +#: 7bce4c601b7e4d13af2c0eeb1288ed61 +#: 7bce4c601b7e4d13af2c0eeb1288ed61 +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:57 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:55 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:53 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:47 +#: 17d5c49b53b94e559f645697fdc954fc +#: 17d5c49b53b94e559f645697fdc954fc +#: 17d5c49b53b94e559f645697fdc954fc +#: 17d5c49b53b94e559f645697fdc954fc +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:68 +#: df3465d34dd146e4aa85ec747685d5e0 +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:74 +#: 75bbd3cfaa304f20b19991a13e1b8aac +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:77 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:71 +#: 88d6ddb0b6ae4b87b31b7db5c79da00b +#: 88d6ddb0b6ae4b87b31b7db5c79da00b +msgid "Optional[:class:`VoiceRegion`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:81 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:32 +#: 2a5f6761e17f48c2b0d616d81972d964 +#: 2a5f6761e17f48c2b0d616d81972d964 +msgid "The camera video quality for the stage channel's participants." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:85 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:79 +#: 1ea0cbbbbdeb41d28a69cf68b30e94ce +#: 1ea0cbbbbdeb41d28a69cf68b30e94ce +msgid ":class:`VideoQualityMode`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:60 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:98 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:89 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:94 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:110 +#: 0e3d32b5c2244ca6a0d83a892a081f8d +#: 0e3d32b5c2244ca6a0d83a892a081f8d +#: 0e3d32b5c2244ca6a0d83a892a081f8d +#: 0e3d32b5c2244ca6a0d83a892a081f8d +#: 0e3d32b5c2244ca6a0d83a892a081f8d +msgid "Extra features of the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel:97 +#: dfd71d1f5420428fbfb980d8e3bf715c +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.requesting_to_speak:1 +#: 675ecc5cb3b84438b270c726510b3052 +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.speakers:1 +#: e1fb97ff67e449668ed24643520eeaf6 +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.listeners:1 +#: df3a44abedf640f6b0b890c8ba159e58 +msgid "A list of members who are listening in the stage channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.is_nsfw:1 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.is_nsfw:1 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.is_nsfw:1 +#: 47f3fed9c90f4f96a742e7c04818b2d5 +#: 47f3fed9c90f4f96a742e7c04818b2d5 +#: 47f3fed9c90f4f96a742e7c04818b2d5 +#: 47f3fed9c90f4f96a742e7c04818b2d5 +msgid "Checks if the channel is NSFW." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.last_message:1 +#: ../../../discord/channel.py:docstring of discord.StageChannel.last_message:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.last_message:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.last_message:1 +#: 0605656b32984ab9a75c79ef67a728b8 +#: 0605656b32984ab9a75c79ef67a728b8 +#: 0605656b32984ab9a75c79ef67a728b8 +#: 0605656b32984ab9a75c79ef67a728b8 +msgid "Fetches the last message from this channel in cache." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.delete_messages:24 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.delete_messages:24 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.delete_messages:24 +#: c129d88ab0874303b120799a19d7c0ec +#: c129d88ab0874303b120799a19d7c0ec +#: c129d88ab0874303b120799a19d7c0ec +#: c129d88ab0874303b120799a19d7c0ec +msgid "You do not have proper permissions to delete the messages." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.purge:7 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.purge:7 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.purge:7 +#: d32cf9eeeb9847b2830a4a6c876ef451 +#: d32cf9eeeb9847b2830a4a6c876ef451 +#: d32cf9eeeb9847b2830a4a6c876ef451 +#: d32cf9eeeb9847b2830a4a6c876ef451 +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.webhooks:3 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.webhooks:3 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.webhooks:3 +#: 4a1a304024aa4bbb960259df3ba1226e +#: 4a1a304024aa4bbb960259df3ba1226e +#: 4a1a304024aa4bbb960259df3ba1226e +#: 4a1a304024aa4bbb960259df3ba1226e +msgid "Gets the list of webhooks from this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.webhooks:7 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.webhooks:7 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.webhooks:7 +#: 85ddcd8c95604e5fb9d65095ba79d614 +#: 85ddcd8c95604e5fb9d65095ba79d614 +#: 85ddcd8c95604e5fb9d65095ba79d614 +#: 85ddcd8c95604e5fb9d65095ba79d614 +msgid "The webhooks for this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:3 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:3 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:3 +#: 77801db3060a4d5a90b6e7d0b67b7bc3 +#: 77801db3060a4d5a90b6e7d0b67b7bc3 +#: 77801db3060a4d5a90b6e7d0b67b7bc3 +#: 77801db3060a4d5a90b6e7d0b67b7bc3 +msgid "Creates a webhook for this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:7 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:7 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:7 +#: 1ea0953ddb0b4b89b78d9d96a62ccf8f +#: 1ea0953ddb0b4b89b78d9d96a62ccf8f +#: 1ea0953ddb0b4b89b78d9d96a62ccf8f +#: 1ea0953ddb0b4b89b78d9d96a62ccf8f +msgid "Added the ``reason`` keyword-only parameter." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:11 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:11 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:11 +#: c3a5508c1b064afc9513a06272a1fd9c +#: c3a5508c1b064afc9513a06272a1fd9c +#: c3a5508c1b064afc9513a06272a1fd9c +#: c3a5508c1b064afc9513a06272a1fd9c +msgid "The webhook's name." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:14 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:14 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:14 +#: 969c1c3c82834ac695633f8b76d5447b +#: 969c1c3c82834ac695633f8b76d5447b +#: 969c1c3c82834ac695633f8b76d5447b +#: 969c1c3c82834ac695633f8b76d5447b +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:18 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:18 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:18 +#: 879233ad70174408b4dfc419d65951e2 +#: 879233ad70174408b4dfc419d65951e2 +#: 879233ad70174408b4dfc419d65951e2 +#: 879233ad70174408b4dfc419d65951e2 +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:21 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:21 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:21 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:21 +#: ad33f0ecada7446aa29ccb4cb4652d46 +#: ad33f0ecada7446aa29ccb4cb4652d46 +#: ad33f0ecada7446aa29ccb4cb4652d46 +#: ad33f0ecada7446aa29ccb4cb4652d46 +#: ad33f0ecada7446aa29ccb4cb4652d46 +#: ad33f0ecada7446aa29ccb4cb4652d46 +msgid "The created webhook." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:22 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:22 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:22 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:22 +#: a1ab293dca0a4d679744b60f873832a7 +#: a1ab293dca0a4d679744b60f873832a7 +#: a1ab293dca0a4d679744b60f873832a7 +#: a1ab293dca0a4d679744b60f873832a7 +#: a1ab293dca0a4d679744b60f873832a7 +#: a1ab293dca0a4d679744b60f873832a7 +msgid ":class:`Webhook`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:24 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:24 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:24 +#: fcad9386059d42feb4e79e5a14931208 +#: fcad9386059d42feb4e79e5a14931208 +#: fcad9386059d42feb4e79e5a14931208 +#: fcad9386059d42feb4e79e5a14931208 +msgid "Creating the webhook failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_webhook:25 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_webhook:25 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.create_webhook:25 +#: 81fb2b5fd70b4af792ed7a8d92cbfb55 +#: 81fb2b5fd70b4af792ed7a8d92cbfb55 +#: 81fb2b5fd70b4af792ed7a8d92cbfb55 +#: 81fb2b5fd70b4af792ed7a8d92cbfb55 +msgid "You do not have permissions to create a webhook." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.moderators:1 +#: d3cd17c5683f4d2caae0468890e3c3c7 +msgid "A list of members who are moderating the stage channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.clone:3 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.clone:3 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.clone:3 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.clone:3 +#: 713c44f071794ebf9a814632d2c5da11 +#: 713c44f071794ebf9a814632d2c5da11 +#: 713c44f071794ebf9a814632d2c5da11 +#: 713c44f071794ebf9a814632d2c5da11 +#: 713c44f071794ebf9a814632d2c5da11 +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:7 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.clone:6 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:7 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.clone:6 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.clone:6 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.clone:6 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +#: fa64ba8bf0624293b23cc2cc03daf2b4 +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.clone:12 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.clone:12 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.clone:12 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.clone:12 +#: f1500ea7686647ea9b0c9b51d0928759 +#: f1500ea7686647ea9b0c9b51d0928759 +#: f1500ea7686647ea9b0c9b51d0928759 +#: f1500ea7686647ea9b0c9b51d0928759 +#: f1500ea7686647ea9b0c9b51d0928759 +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.clone:16 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.clone:16 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.clone:16 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.clone:16 +#: dc75b4e91a0f4f2a8abef5896e012117 +#: dc75b4e91a0f4f2a8abef5896e012117 +#: dc75b4e91a0f4f2a8abef5896e012117 +#: dc75b4e91a0f4f2a8abef5896e012117 +#: dc75b4e91a0f4f2a8abef5896e012117 +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.clone:20 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.clone:20 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.clone:20 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.clone:20 +#: a01edf3b9cdb4626b6737bfec16c617d +#: a01edf3b9cdb4626b6737bfec16c617d +#: a01edf3b9cdb4626b6737bfec16c617d +#: a01edf3b9cdb4626b6737bfec16c617d +#: a01edf3b9cdb4626b6737bfec16c617d +msgid ":class:`.abc.GuildChannel`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.instance:1 +#: c874643e34984fb09f53a0612a9a1078 +msgid "The running stage instance of the stage channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:3 +#: afc6e38cd59a4c7abae58394c72b2365 +msgid "Create a stage instance." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:5 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:5 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:5 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:5 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:5 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:5 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.delete:5 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:5 +#: 3788fffc313c4e17a7031c304b84dbf1 +#: 3788fffc313c4e17a7031c304b84dbf1 +#: 3788fffc313c4e17a7031c304b84dbf1 +#: 3788fffc313c4e17a7031c304b84dbf1 +#: 3788fffc313c4e17a7031c304b84dbf1 +#: 3788fffc313c4e17a7031c304b84dbf1 +#: 3788fffc313c4e17a7031c304b84dbf1 +#: 3788fffc313c4e17a7031c304b84dbf1 +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:11 +#: 2adbed76c2d44058b5a23660c0a6936c +msgid "The stage instance's topic." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:14 +#: 994336115c4548ed991343f91b95e7fa +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:17 +#: 3d38fa02f61b4c99b5009ad293c0c00b +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:20 +#: 6f7613a62cef4e20be3e6ff16a3812b7 +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:24 +#: daf699fa9af443fa9da0a51deed5c85c +msgid "The newly created stage instance." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:25 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.fetch_instance:8 +#: 155260cb1d8e4613b0448e82854766f1 +#: 155260cb1d8e4613b0448e82854766f1 +msgid ":class:`StageInstance`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:27 +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:18 +#: 2a69f4fcb45f4ade8fa8261598454b6d +#: 2a69f4fcb45f4ade8fa8261598454b6d +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:28 +#: 0f850c713bbc4f9fa722dd28c79d5b11 +msgid "You do not have permissions to create a stage instance." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.create_instance:29 +#: aae387d47ca645c7af000d7f0627891d +msgid "Creating a stage instance failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.fetch_instance:3 +#: 34c2a00adb6f4848aa1cd3b0959f47dd +msgid "Gets the running :class:`StageInstance`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.fetch_instance:7 +#: 2a8212724eb0417fb86677800297dd9a +msgid "The stage instance." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.fetch_instance:10 +#: 08abc5c686b84d1bbce3950ce0a84e85 +msgid "The stage instance or channel could not be found." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.fetch_instance:11 +#: 6be6f1a53cc74484b55ebb05b7623f48 +msgid "Getting the stage instance failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:3 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:3 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:3 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:3 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:3 +#: b2e2f851c87a4d75806ec5d84d91f6a8 +#: b2e2f851c87a4d75806ec5d84d91f6a8 +#: b2e2f851c87a4d75806ec5d84d91f6a8 +#: b2e2f851c87a4d75806ec5d84d91f6a8 +#: b2e2f851c87a4d75806ec5d84d91f6a8 +msgid "Edits the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:8 +#: ac71816f1a7040fdabbd0b7c4113ab4a +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:11 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:11 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:14 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:11 +#: 70e1ecd5420a44c482cdc6d7970e356e +#: 70e1ecd5420a44c482cdc6d7970e356e +#: 70e1ecd5420a44c482cdc6d7970e356e +#: 70e1ecd5420a44c482cdc6d7970e356e +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:14 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:14 +#: b3042033fc1f41e0a7ca362c7fc6b2b4 +#: b3042033fc1f41e0a7ca362c7fc6b2b4 +msgid "The new channel's name." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:12 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:16 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:21 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:20 +#: 9a4fe72c71564b6dac1e273987ca267d +#: 9a4fe72c71564b6dac1e273987ca267d +#: 9a4fe72c71564b6dac1e273987ca267d +#: 9a4fe72c71564b6dac1e273987ca267d +msgid "The new channel's position." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:16 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:18 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:25 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:22 +#: 28b85d3d9a3e42c690aebcdc756b8659 +#: 28b85d3d9a3e42c690aebcdc756b8659 +#: 28b85d3d9a3e42c690aebcdc756b8659 +#: 28b85d3d9a3e42c690aebcdc756b8659 +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:19 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:21 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:28 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:25 +#: 7a7108c1fdb34bed8937a7877d4f1c06 +#: 7a7108c1fdb34bed8937a7877d4f1c06 +#: 7a7108c1fdb34bed8937a7877d4f1c06 +#: 7a7108c1fdb34bed8937a7877d4f1c06 +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:26 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:25 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:39 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:29 +#: c0b3b7fe32594f7c93abe776da7dd8f6 +#: c0b3b7fe32594f7c93abe776da7dd8f6 +#: c0b3b7fe32594f7c93abe776da7dd8f6 +#: c0b3b7fe32594f7c93abe776da7dd8f6 +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:23 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:28 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:27 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:41 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:31 +#: e9fbe45828cb4bd19e93296ab98065b3 +#: e9fbe45828cb4bd19e93296ab98065b3 +#: e9fbe45828cb4bd19e93296ab98065b3 +#: e9fbe45828cb4bd19e93296ab98065b3 +#: e9fbe45828cb4bd19e93296ab98065b3 +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:29 +#: 639187546700401c86775c5aba5f968d +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:32 +#: 5384b04c47d543fba5d0b8687447bac9 +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:37 +#: ec14d9ad4d8e40c0b6eda5434bf8fba5 +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:39 +#: b3f5e65f48c64c678a5cb3a165db1a5a +msgid "Optional[:class:`.StageChannel`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:41 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:47 +#: cd77eae84e4c47198b881cc8c19d7012 +#: cd77eae84e4c47198b881cc8c19d7012 +msgid "If the permission overwrite information is not in proper form." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:61 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:42 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:56 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:48 +#: eee74368fc62419e83a5fa7e4547b372 +#: eee74368fc62419e83a5fa7e4547b372 +#: eee74368fc62419e83a5fa7e4547b372 +#: eee74368fc62419e83a5fa7e4547b372 +msgid "You do not have permissions to edit the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:62 +#: ../../../discord/channel.py:docstring of discord.channel.StageChannel.edit:43 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:57 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:49 +#: f4eee836c1ef4595a1249c72fc4aa856 +#: f4eee836c1ef4595a1249c72fc4aa856 +#: f4eee836c1ef4595a1249c72fc4aa856 +#: f4eee836c1ef4595a1249c72fc4aa856 +msgid "Editing the channel failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.category:1 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.category:1 +#: ../../../discord/channel.py:docstring of discord.StageChannel.category:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.category:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.category:1 +#: 09cedcdcfe6748fd9851abb128364216 +#: 09cedcdcfe6748fd9851abb128364216 +#: 09cedcdcfe6748fd9851abb128364216 +#: 09cedcdcfe6748fd9851abb128364216 +#: 09cedcdcfe6748fd9851abb128364216 +msgid "The category this channel belongs to." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.category:3 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.category:3 +#: ../../../discord/channel.py:docstring of discord.StageChannel.category:3 +#: ../../../discord/channel.py:docstring of discord.TextChannel.category:3 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.category:3 +#: 79a25807046443a6bc1b79a1b106bd6e +#: 79a25807046443a6bc1b79a1b106bd6e +#: 79a25807046443a6bc1b79a1b106bd6e +#: 79a25807046443a6bc1b79a1b106bd6e +#: 79a25807046443a6bc1b79a1b106bd6e +msgid "If there is no category then this is ``None``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.changed_roles:1 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.changed_roles:1 +#: ../../../discord/channel.py:docstring of discord.StageChannel.changed_roles:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.changed_roles:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.changed_roles:1 +#: 48031388459c4cebb09fdaaa927a12bd +#: 48031388459c4cebb09fdaaa927a12bd +#: 48031388459c4cebb09fdaaa927a12bd +#: 48031388459c4cebb09fdaaa927a12bd +#: 48031388459c4cebb09fdaaa927a12bd +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:3 +#: f7deaa2bbc044f24af765d5b1e3a0b1c +#: f7deaa2bbc044f24af765d5b1e3a0b1c +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:6 +#: d70b0c0665824f279f6f2d8f4c33368a +#: d70b0c0665824f279f6f2d8f4c33368a +msgid "This requires :attr:`Intents.voice_states`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:9 +#: 43aeaecd4b2643a6bc63951f0bafe328 +#: 43aeaecd4b2643a6bc63951f0bafe328 +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:12 +#: 3c5bc8937793432ca7daa817aed76aa8 +#: 3c5bc8937793432ca7daa817aed76aa8 +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:17 +#: 614c4fd2722841e08c133eba1eea755c +#: 614c4fd2722841e08c133eba1eea755c +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:21 +#: a7e95f41fa914cf38d3b0c61c7b2ff7a +#: a7e95f41fa914cf38d3b0c61c7b2ff7a +msgid "A voice client that is fully connected to the voice server." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:22 +#: 978309374c9a4fcaa9ec5d4b81c4ea4f +#: 978309374c9a4fcaa9ec5d4b81c4ea4f +msgid ":class:`~discord.VoiceProtocol`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:24 +#: ef6bea38102e444ea718dad6b316d70b +#: ef6bea38102e444ea718dad6b316d70b +msgid "Could not connect to the voice channel in time." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:25 +#: 3803ca73e6ff4e6e8a3660e0fb82b23c +#: 3803ca73e6ff4e6e8a3660e0fb82b23c +msgid "You are already connected to a voice channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.Connectable.connect:26 +#: 2d6a9796e95542f184dc8040a1e90187 +#: 2d6a9796e95542f184dc8040a1e90187 +msgid "The opus library has not been loaded." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:3 +#: 8284b6f7a985425eb7b9096b97fee46f +#: 8284b6f7a985425eb7b9096b97fee46f +#: 8284b6f7a985425eb7b9096b97fee46f +#: 8284b6f7a985425eb7b9096b97fee46f +#: 8284b6f7a985425eb7b9096b97fee46f +msgid "Creates an instant invite from a text or voice channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:5 +#: 70c428800cb74bfdb244a446a5c7f7ed +#: 70c428800cb74bfdb244a446a5c7f7ed +#: 70c428800cb74bfdb244a446a5c7f7ed +#: 70c428800cb74bfdb244a446a5c7f7ed +#: 70c428800cb74bfdb244a446a5c7f7ed +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:9 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:11 +#: bbb89bbf5cd24082927b096b88b65cfe +#: bbb89bbf5cd24082927b096b88b65cfe +#: bbb89bbf5cd24082927b096b88b65cfe +#: bbb89bbf5cd24082927b096b88b65cfe +#: bbb89bbf5cd24082927b096b88b65cfe +#: bbb89bbf5cd24082927b096b88b65cfe +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:13 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:14 +#: bedcf4e2057b460d975ee26ec8e6b9f3 +#: bedcf4e2057b460d975ee26ec8e6b9f3 +#: bedcf4e2057b460d975ee26ec8e6b9f3 +#: bedcf4e2057b460d975ee26ec8e6b9f3 +#: bedcf4e2057b460d975ee26ec8e6b9f3 +#: bedcf4e2057b460d975ee26ec8e6b9f3 +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:17 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:17 +#: a639ea144cef4a2d8e7b0b5d1a2db86a +#: a639ea144cef4a2d8e7b0b5d1a2db86a +#: a639ea144cef4a2d8e7b0b5d1a2db86a +#: a639ea144cef4a2d8e7b0b5d1a2db86a +#: a639ea144cef4a2d8e7b0b5d1a2db86a +#: a639ea144cef4a2d8e7b0b5d1a2db86a +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:21 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:20 +#: 6eeeb747c2df4cf4b68c675601f7d3bf +#: 6eeeb747c2df4cf4b68c675601f7d3bf +#: 6eeeb747c2df4cf4b68c675601f7d3bf +#: 6eeeb747c2df4cf4b68c675601f7d3bf +#: 6eeeb747c2df4cf4b68c675601f7d3bf +#: 6eeeb747c2df4cf4b68c675601f7d3bf +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:26 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:24 +#: 3e5d68bfef38424ea4dd2e8dec8ea22e +#: 3e5d68bfef38424ea4dd2e8dec8ea22e +#: 3e5d68bfef38424ea4dd2e8dec8ea22e +#: 3e5d68bfef38424ea4dd2e8dec8ea22e +#: 3e5d68bfef38424ea4dd2e8dec8ea22e +#: 3e5d68bfef38424ea4dd2e8dec8ea22e +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:29 +#: f7c3557ed02049ffa29494923a1632a1 +#: f7c3557ed02049ffa29494923a1632a1 +#: f7c3557ed02049ffa29494923a1632a1 +#: f7c3557ed02049ffa29494923a1632a1 +#: f7c3557ed02049ffa29494923a1632a1 +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:29 +#: 7856f6d98f9b4686a4aae6e6dc45240f +#: 7856f6d98f9b4686a4aae6e6dc45240f +#: 7856f6d98f9b4686a4aae6e6dc45240f +#: 7856f6d98f9b4686a4aae6e6dc45240f +#: 7856f6d98f9b4686a4aae6e6dc45240f +msgid "The type of target for the voice channel invite, if any." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:34 +#: ba2d82cc52254953bd13d32eceaf43ef +#: ba2d82cc52254953bd13d32eceaf43ef +#: ba2d82cc52254953bd13d32eceaf43ef +#: ba2d82cc52254953bd13d32eceaf43ef +#: ba2d82cc52254953bd13d32eceaf43ef +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:34 +#: 5aaa5f7dc0ff4ce587ae704ccf6526fa +#: 5aaa5f7dc0ff4ce587ae704ccf6526fa +#: 5aaa5f7dc0ff4ce587ae704ccf6526fa +#: 5aaa5f7dc0ff4ce587ae704ccf6526fa +#: 5aaa5f7dc0ff4ce587ae704ccf6526fa +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:40 +#: f1e931cf80764eb79c66781cbe3eb218 +#: f1e931cf80764eb79c66781cbe3eb218 +#: f1e931cf80764eb79c66781cbe3eb218 +#: f1e931cf80764eb79c66781cbe3eb218 +#: f1e931cf80764eb79c66781cbe3eb218 +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:40 +#: 46f587a58bad446fbfa6950cdc349794 +#: 46f587a58bad446fbfa6950cdc349794 +#: 46f587a58bad446fbfa6950cdc349794 +#: 46f587a58bad446fbfa6950cdc349794 +#: 46f587a58bad446fbfa6950cdc349794 +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:46 +#: 5abd69aa39664224ab1cde302dbba8ee +#: 5abd69aa39664224ab1cde302dbba8ee +#: 5abd69aa39664224ab1cde302dbba8ee +#: 5abd69aa39664224ab1cde302dbba8ee +#: 5abd69aa39664224ab1cde302dbba8ee +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:46 +#: fa1870165cd547d0ac1334f32bb75083 +#: fa1870165cd547d0ac1334f32bb75083 +#: fa1870165cd547d0ac1334f32bb75083 +#: fa1870165cd547d0ac1334f32bb75083 +#: fa1870165cd547d0ac1334f32bb75083 +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:49 +#: d5fe56ca5d4e4b62bb563b9daab914c9 +#: d5fe56ca5d4e4b62bb563b9daab914c9 +#: d5fe56ca5d4e4b62bb563b9daab914c9 +#: d5fe56ca5d4e4b62bb563b9daab914c9 +#: d5fe56ca5d4e4b62bb563b9daab914c9 +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:55 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:27 +#: ad6d07cc0ecc4daf8e70e62b42c54694 +#: ad6d07cc0ecc4daf8e70e62b42c54694 +#: ad6d07cc0ecc4daf8e70e62b42c54694 +#: ad6d07cc0ecc4daf8e70e62b42c54694 +#: ad6d07cc0ecc4daf8e70e62b42c54694 +#: ad6d07cc0ecc4daf8e70e62b42c54694 +msgid "The invite that was created." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:56 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:28 +#: a44a756d8ef54c06b9c598b3c5057293 +#: a44a756d8ef54c06b9c598b3c5057293 +#: a44a756d8ef54c06b9c598b3c5057293 +#: a44a756d8ef54c06b9c598b3c5057293 +#: a44a756d8ef54c06b9c598b3c5057293 +#: a44a756d8ef54c06b9c598b3c5057293 +msgid ":class:`~discord.Invite`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:58 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:31 +#: c31e3444e11d47d5a0c7c01273e242e2 +#: c31e3444e11d47d5a0c7c01273e242e2 +#: c31e3444e11d47d5a0c7c01273e242e2 +#: c31e3444e11d47d5a0c7c01273e242e2 +#: c31e3444e11d47d5a0c7c01273e242e2 +#: c31e3444e11d47d5a0c7c01273e242e2 +msgid "Invite creation failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.create_invite:59 +#: e7cf9d4d551c4341a736ddfb07f036b8 +#: e7cf9d4d551c4341a736ddfb07f036b8 +#: e7cf9d4d551c4341a736ddfb07f036b8 +#: e7cf9d4d551c4341a736ddfb07f036b8 +#: e7cf9d4d551c4341a736ddfb07f036b8 +msgid "The channel that was passed is a category or an invalid channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.delete:3 +#: 76d4b05d53d24bb89f07ef3ea80937ae +#: 76d4b05d53d24bb89f07ef3ea80937ae +#: 76d4b05d53d24bb89f07ef3ea80937ae +#: 76d4b05d53d24bb89f07ef3ea80937ae +#: 76d4b05d53d24bb89f07ef3ea80937ae +msgid "Deletes the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.delete:5 +#: 790b7e62afe845a6b6bb0860e617ff2e +#: 790b7e62afe845a6b6bb0860e617ff2e +#: 790b7e62afe845a6b6bb0860e617ff2e +#: 790b7e62afe845a6b6bb0860e617ff2e +#: 790b7e62afe845a6b6bb0860e617ff2e +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.delete:8 +#: 8db538d28f594660bf8aa72c650e4d61 +#: 8db538d28f594660bf8aa72c650e4d61 +#: 8db538d28f594660bf8aa72c650e4d61 +#: 8db538d28f594660bf8aa72c650e4d61 +#: 8db538d28f594660bf8aa72c650e4d61 +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.delete:12 +#: 0bde2d677c4c442d81074ef53bffa892 +#: 0bde2d677c4c442d81074ef53bffa892 +#: 0bde2d677c4c442d81074ef53bffa892 +#: 0bde2d677c4c442d81074ef53bffa892 +#: 0bde2d677c4c442d81074ef53bffa892 +msgid "You do not have proper permissions to delete the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.delete:13 +#: 76703abb28a94196bc3fe2539ff0fd17 +#: 76703abb28a94196bc3fe2539ff0fd17 +#: 76703abb28a94196bc3fe2539ff0fd17 +#: 76703abb28a94196bc3fe2539ff0fd17 +#: 76703abb28a94196bc3fe2539ff0fd17 +msgid "The channel was not found or was already deleted." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.delete:14 +#: 2242d4491ce5454f938e820c8e6e0f88 +#: 2242d4491ce5454f938e820c8e6e0f88 +#: 2242d4491ce5454f938e820c8e6e0f88 +#: 2242d4491ce5454f938e820c8e6e0f88 +#: 2242d4491ce5454f938e820c8e6e0f88 +msgid "Deleting the channel failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.invites:3 +#: dbc4b30c00eb410ebe53ad9b4896990c +#: dbc4b30c00eb410ebe53ad9b4896990c +#: dbc4b30c00eb410ebe53ad9b4896990c +#: dbc4b30c00eb410ebe53ad9b4896990c +#: dbc4b30c00eb410ebe53ad9b4896990c +msgid "Returns a list of all active instant invites from this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.invites:5 +#: 5fcbbff57b014ff6a73619b4e701ef56 +#: 5fcbbff57b014ff6a73619b4e701ef56 +#: 5fcbbff57b014ff6a73619b4e701ef56 +#: 5fcbbff57b014ff6a73619b4e701ef56 +#: 5fcbbff57b014ff6a73619b4e701ef56 +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.invites:8 +#: 05cac3b74a5f4adaad5d3d265f4819de +#: 05cac3b74a5f4adaad5d3d265f4819de +#: 05cac3b74a5f4adaad5d3d265f4819de +#: 05cac3b74a5f4adaad5d3d265f4819de +#: 05cac3b74a5f4adaad5d3d265f4819de +msgid "List[:class:`~discord.Invite`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.jump_url:1 +#: ../../../discord/channel.py:docstring of discord.DMChannel.jump_url:1 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.jump_url:1 +#: ../../../discord/channel.py:docstring of discord.GroupChannel.jump_url:1 +#: ../../../discord/channel.py:docstring of discord.StageChannel.jump_url:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.jump_url:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.jump_url:1 +#: 61992eebcf9d49e5b62a6f71ca4ffa9d +#: 61992eebcf9d49e5b62a6f71ca4ffa9d +#: 61992eebcf9d49e5b62a6f71ca4ffa9d +#: 61992eebcf9d49e5b62a6f71ca4ffa9d +#: 61992eebcf9d49e5b62a6f71ca4ffa9d +#: 61992eebcf9d49e5b62a6f71ca4ffa9d +#: 61992eebcf9d49e5b62a6f71ca4ffa9d +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.members:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.members:1 +#: 6811b1001649454db7b2e3ee65c02d6a +#: 6811b1001649454db7b2e3ee65c02d6a +msgid "Returns all members that are currently inside this voice channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:3 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:3 +#: 928cb0355b304182beda16e7827b0e90 +#: 928cb0355b304182beda16e7827b0e90 +#: 928cb0355b304182beda16e7827b0e90 +#: 928cb0355b304182beda16e7827b0e90 +#: 928cb0355b304182beda16e7827b0e90 +msgid "A rich interface to help move a channel relative to other channels." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:5 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:5 +#: 62bbf4b228aa4f73963ec11bde6809b4 +#: 62bbf4b228aa4f73963ec11bde6809b4 +#: 62bbf4b228aa4f73963ec11bde6809b4 +#: 62bbf4b228aa4f73963ec11bde6809b4 +#: 62bbf4b228aa4f73963ec11bde6809b4 +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:12 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:12 +#: 64354ecf425049c18b97220a3cc8b93f +#: 64354ecf425049c18b97220a3cc8b93f +#: 64354ecf425049c18b97220a3cc8b93f +#: 64354ecf425049c18b97220a3cc8b93f +#: 64354ecf425049c18b97220a3cc8b93f +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:17 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:17 +#: 19e6d5cf82be4209980612975d29dff8 +#: 19e6d5cf82be4209980612975d29dff8 +#: 19e6d5cf82be4209980612975d29dff8 +#: 19e6d5cf82be4209980612975d29dff8 +#: 19e6d5cf82be4209980612975d29dff8 +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:21 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:21 +#: 28d86464680f49afa0f33bf4938eac79 +#: 28d86464680f49afa0f33bf4938eac79 +#: 28d86464680f49afa0f33bf4938eac79 +#: 28d86464680f49afa0f33bf4938eac79 +#: 28d86464680f49afa0f33bf4938eac79 +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:25 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:25 +#: 1f21d2ba65cc4e88bc94ccc4a533aba5 +#: 1f21d2ba65cc4e88bc94ccc4a533aba5 +#: 1f21d2ba65cc4e88bc94ccc4a533aba5 +#: 1f21d2ba65cc4e88bc94ccc4a533aba5 +#: 1f21d2ba65cc4e88bc94ccc4a533aba5 +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:28 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:28 +#: 6f149660295343d2bef512e3122f3cf9 +#: 6f149660295343d2bef512e3122f3cf9 +#: 6f149660295343d2bef512e3122f3cf9 +#: 6f149660295343d2bef512e3122f3cf9 +#: 6f149660295343d2bef512e3122f3cf9 +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:31 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:31 +#: 243b0f6c1dd942f09e1f66f4333f2937 +#: 243b0f6c1dd942f09e1f66f4333f2937 +#: 243b0f6c1dd942f09e1f66f4333f2937 +#: 243b0f6c1dd942f09e1f66f4333f2937 +#: 243b0f6c1dd942f09e1f66f4333f2937 +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:38 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:38 +#: b8bbf52e3eb842fab9307ed3207602b0 +#: b8bbf52e3eb842fab9307ed3207602b0 +#: b8bbf52e3eb842fab9307ed3207602b0 +#: b8bbf52e3eb842fab9307ed3207602b0 +#: b8bbf52e3eb842fab9307ed3207602b0 +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:42 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:42 +#: b43c9a7f761945eaa7ff4de5fc52e741 +#: b43c9a7f761945eaa7ff4de5fc52e741 +#: b43c9a7f761945eaa7ff4de5fc52e741 +#: b43c9a7f761945eaa7ff4de5fc52e741 +#: b43c9a7f761945eaa7ff4de5fc52e741 +msgid "Whether to sync the permissions with the category (if given)." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:44 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:44 +#: e78b0fba71c449c6b22bc68d7a42b8b7 +#: e78b0fba71c449c6b22bc68d7a42b8b7 +#: e78b0fba71c449c6b22bc68d7a42b8b7 +#: e78b0fba71c449c6b22bc68d7a42b8b7 +#: e78b0fba71c449c6b22bc68d7a42b8b7 +msgid "The reason for the move." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:47 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:47 +#: eb8261bde35e4cf4b4cd36dcbf3084a6 +#: eb8261bde35e4cf4b4cd36dcbf3084a6 +#: eb8261bde35e4cf4b4cd36dcbf3084a6 +#: eb8261bde35e4cf4b4cd36dcbf3084a6 +#: eb8261bde35e4cf4b4cd36dcbf3084a6 +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:48 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:48 +#: ec5967cc04484df9aaaa322214ff2ebf +#: ec5967cc04484df9aaaa322214ff2ebf +#: ec5967cc04484df9aaaa322214ff2ebf +#: ec5967cc04484df9aaaa322214ff2ebf +#: ec5967cc04484df9aaaa322214ff2ebf +msgid "You do not have permissions to move the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.move:49 +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.move:49 +#: 13385efe88d34243bb30e64a26401394 +#: 13385efe88d34243bb30e64a26401394 +#: 13385efe88d34243bb30e64a26401394 +#: 13385efe88d34243bb30e64a26401394 +#: dec5694062304b0e9d3ed0f5c54038b7 +msgid "Moving the channel failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.overwrites:1 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.overwrites:1 +#: ../../../discord/channel.py:docstring of discord.StageChannel.overwrites:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.overwrites:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.overwrites:1 +#: b7dc82bf54634320a5031a32b5afd0e0 +#: b7dc82bf54634320a5031a32b5afd0e0 +#: b7dc82bf54634320a5031a32b5afd0e0 +#: b7dc82bf54634320a5031a32b5afd0e0 +#: b7dc82bf54634320a5031a32b5afd0e0 +msgid "Returns all of the channel's overwrites." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.overwrites:3 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.overwrites:3 +#: ../../../discord/channel.py:docstring of discord.StageChannel.overwrites:3 +#: ../../../discord/channel.py:docstring of discord.TextChannel.overwrites:3 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.overwrites:3 +#: d2fe158d967147c8b4ef1867798ca82b +#: d2fe158d967147c8b4ef1867798ca82b +#: d2fe158d967147c8b4ef1867798ca82b +#: d2fe158d967147c8b4ef1867798ca82b +#: d2fe158d967147c8b4ef1867798ca82b +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.overwrites:7 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.overwrites:7 +#: ../../../discord/channel.py:docstring of discord.StageChannel.overwrites:7 +#: ../../../discord/channel.py:docstring of discord.TextChannel.overwrites:7 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.overwrites:7 +#: cf5f4a1ff74146fb903c23deb37c3299 +#: cf5f4a1ff74146fb903c23deb37c3299 +#: cf5f4a1ff74146fb903c23deb37c3299 +#: cf5f4a1ff74146fb903c23deb37c3299 +#: cf5f4a1ff74146fb903c23deb37c3299 +msgid "The channel's permission overwrites." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.overwrites:8 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.overwrites:8 +#: ../../../discord/channel.py:docstring of discord.StageChannel.overwrites:8 +#: ../../../discord/channel.py:docstring of discord.TextChannel.overwrites:8 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.overwrites:8 +#: 83956f5a5333400b902ec3cbf55ef987 +#: 83956f5a5333400b902ec3cbf55ef987 +#: 83956f5a5333400b902ec3cbf55ef987 +#: 83956f5a5333400b902ec3cbf55ef987 +#: 83956f5a5333400b902ec3cbf55ef987 +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.overwrites_for:1 +#: f9b2ad6e19814664ac9b8151811dd122 +#: f9b2ad6e19814664ac9b8151811dd122 +#: f9b2ad6e19814664ac9b8151811dd122 +#: f9b2ad6e19814664ac9b8151811dd122 +#: f9b2ad6e19814664ac9b8151811dd122 +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.overwrites_for:4 +#: 424f1b06e4ca49da8f3ae55bd2b5a833 +#: 424f1b06e4ca49da8f3ae55bd2b5a833 +#: 424f1b06e4ca49da8f3ae55bd2b5a833 +#: 424f1b06e4ca49da8f3ae55bd2b5a833 +#: 424f1b06e4ca49da8f3ae55bd2b5a833 +msgid "The role or user denoting whose overwrite to get." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.overwrites_for:8 +#: 941badf662e24af6bdb04e39a1020079 +#: 941badf662e24af6bdb04e39a1020079 +#: 941badf662e24af6bdb04e39a1020079 +#: 941badf662e24af6bdb04e39a1020079 +#: 941badf662e24af6bdb04e39a1020079 +msgid "The permission overwrites for this object." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.overwrites_for:9 +#: fc3fff034d7048b592fe35dcd866a631 +#: fc3fff034d7048b592fe35dcd866a631 +#: fc3fff034d7048b592fe35dcd866a631 +#: fc3fff034d7048b592fe35dcd866a631 +#: fc3fff034d7048b592fe35dcd866a631 +msgid ":class:`~discord.PermissionOverwrite`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:4 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:4 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:4 +#: ad61cc31ac914379a2e312de3d43ffe8 +#: ad61cc31ac914379a2e312de3d43ffe8 +#: ad61cc31ac914379a2e312de3d43ffe8 +#: ad61cc31ac914379a2e312de3d43ffe8 +#: ad61cc31ac914379a2e312de3d43ffe8 +msgid "This function takes into consideration the following cases:" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:6 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:6 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:6 +#: a116f87071af41338aeba09a8eb992af +#: a116f87071af41338aeba09a8eb992af +#: a116f87071af41338aeba09a8eb992af +#: a116f87071af41338aeba09a8eb992af +#: a116f87071af41338aeba09a8eb992af +msgid "Guild owner" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:7 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:7 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:7 +#: 412081ad6b56428da03c40fe91e46896 +#: 412081ad6b56428da03c40fe91e46896 +#: 412081ad6b56428da03c40fe91e46896 +#: 412081ad6b56428da03c40fe91e46896 +#: 412081ad6b56428da03c40fe91e46896 +msgid "Guild roles" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:8 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:8 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:8 +#: 3d8a5b7caf8449499a5df8e5f52da039 +#: 3d8a5b7caf8449499a5df8e5f52da039 +#: 3d8a5b7caf8449499a5df8e5f52da039 +#: 3d8a5b7caf8449499a5df8e5f52da039 +#: 3d8a5b7caf8449499a5df8e5f52da039 +msgid "Channel overrides" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:9 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:9 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:9 +#: f5a7c4f10acd4fc78ace8d9c7ae71a1e +#: f5a7c4f10acd4fc78ace8d9c7ae71a1e +#: f5a7c4f10acd4fc78ace8d9c7ae71a1e +#: f5a7c4f10acd4fc78ace8d9c7ae71a1e +#: f5a7c4f10acd4fc78ace8d9c7ae71a1e +msgid "Member overrides" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:11 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:11 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:11 +#: bb22b5f45b9744aba2495cbe1c5c3927 +#: bb22b5f45b9744aba2495cbe1c5c3927 +#: bb22b5f45b9744aba2495cbe1c5c3927 +#: bb22b5f45b9744aba2495cbe1c5c3927 +#: bb22b5f45b9744aba2495cbe1c5c3927 +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:14 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:14 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:14 +#: 7792fc4132114a33a1d0dd6a31c0d67f +#: 7792fc4132114a33a1d0dd6a31c0d67f +#: 7792fc4132114a33a1d0dd6a31c0d67f +#: 7792fc4132114a33a1d0dd6a31c0d67f +#: 7792fc4132114a33a1d0dd6a31c0d67f +msgid "The default role permissions" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:15 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:15 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:15 +#: a9f75d8e2445493f8f13f904067552f4 +#: a9f75d8e2445493f8f13f904067552f4 +#: a9f75d8e2445493f8f13f904067552f4 +#: a9f75d8e2445493f8f13f904067552f4 +#: a9f75d8e2445493f8f13f904067552f4 +msgid "The permissions of the role used as a parameter" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:16 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:16 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:16 +#: f7edbbec0ac84cbc88a8a26badcac519 +#: f7edbbec0ac84cbc88a8a26badcac519 +#: f7edbbec0ac84cbc88a8a26badcac519 +#: f7edbbec0ac84cbc88a8a26badcac519 +#: f7edbbec0ac84cbc88a8a26badcac519 +msgid "The default role permission overwrites" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:17 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:17 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:17 +#: 6174d926cc1b4b0d99f7af83decc22fe +#: 6174d926cc1b4b0d99f7af83decc22fe +#: 6174d926cc1b4b0d99f7af83decc22fe +#: 6174d926cc1b4b0d99f7af83decc22fe +#: 6174d926cc1b4b0d99f7af83decc22fe +msgid "The permission overwrites of the role used as a parameter" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.permissions_for:19 +#: ../../../discord/channel.py:docstring of discord.channel.VocalGuildChannel.permissions_for:19 +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.permissions_for:19 +#: 0de4faae977c4d34ba5ebf875178efb2 +#: 0de4faae977c4d34ba5ebf875178efb2 +#: 0de4faae977c4d34ba5ebf875178efb2 +#: 0de4faae977c4d34ba5ebf875178efb2 +#: 0de4faae977c4d34ba5ebf875178efb2 +msgid "The object passed in can now be a role object." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.permissions_synced:1 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.permissions_synced:1 +#: ../../../discord/channel.py:docstring of discord.StageChannel.permissions_synced:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.permissions_synced:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.permissions_synced:1 +#: 5afc09453dd94d4aa2b35273e549c663 +#: 5afc09453dd94d4aa2b35273e549c663 +#: 5afc09453dd94d4aa2b35273e549c663 +#: 5afc09453dd94d4aa2b35273e549c663 +#: 5afc09453dd94d4aa2b35273e549c663 +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.permissions_synced:4 +#: ../../../discord/channel.py:docstring of discord.ForumChannel.permissions_synced:4 +#: ../../../discord/channel.py:docstring of discord.StageChannel.permissions_synced:4 +#: ../../../discord/channel.py:docstring of discord.TextChannel.permissions_synced:4 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.permissions_synced:4 +#: 981749f5cb0242b8855f2826a6dc6bf4 +#: 981749f5cb0242b8855f2826a6dc6bf4 +#: 981749f5cb0242b8855f2826a6dc6bf4 +#: 981749f5cb0242b8855f2826a6dc6bf4 +#: 981749f5cb0242b8855f2826a6dc6bf4 +msgid "If there is no category then this is ``False``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:3 +#: 3a5fa731cfa147c7a0bfaa31890a8fe1 +#: 3a5fa731cfa147c7a0bfaa31890a8fe1 +#: 3a5fa731cfa147c7a0bfaa31890a8fe1 +#: 3a5fa731cfa147c7a0bfaa31890a8fe1 +#: 3a5fa731cfa147c7a0bfaa31890a8fe1 +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:6 +#: 3ef3986ccc4a47cf960c7dd5d60a5557 +#: 3ef3986ccc4a47cf960c7dd5d60a5557 +#: 3ef3986ccc4a47cf960c7dd5d60a5557 +#: 3ef3986ccc4a47cf960c7dd5d60a5557 +#: 3ef3986ccc4a47cf960c7dd5d60a5557 +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:9 +#: b07e547adb1545f8a3616be524559dd4 +#: b07e547adb1545f8a3616be524559dd4 +#: b07e547adb1545f8a3616be524559dd4 +#: b07e547adb1545f8a3616be524559dd4 +#: b07e547adb1545f8a3616be524559dd4 +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:15 +#: 764ab65cb31c493594eaa77947707624 +#: 764ab65cb31c493594eaa77947707624 +#: 764ab65cb31c493594eaa77947707624 +#: 764ab65cb31c493594eaa77947707624 +#: 764ab65cb31c493594eaa77947707624 +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:18 +#: 146970e2d3814a7188e3cbb525453e55 +#: 146970e2d3814a7188e3cbb525453e55 +#: 146970e2d3814a7188e3cbb525453e55 +#: 146970e2d3814a7188e3cbb525453e55 +#: 146970e2d3814a7188e3cbb525453e55 +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:22 +#: 346d7572d6cd45afa3d668860d51d232 +#: 346d7572d6cd45afa3d668860d51d232 +#: 346d7572d6cd45afa3d668860d51d232 +#: 346d7572d6cd45afa3d668860d51d232 +#: 346d7572d6cd45afa3d668860d51d232 +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:26 +#: 637f3a1a21694797a9ac311c64c0c911 +#: 637f3a1a21694797a9ac311c64c0c911 +#: 637f3a1a21694797a9ac311c64c0c911 +#: 637f3a1a21694797a9ac311c64c0c911 +#: 637f3a1a21694797a9ac311c64c0c911 +msgid "Setting allow and deny: ::" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:31 +#: 810d95b1d4994c63862f68887c77e831 +#: 810d95b1d4994c63862f68887c77e831 +#: 810d95b1d4994c63862f68887c77e831 +#: 810d95b1d4994c63862f68887c77e831 +#: 810d95b1d4994c63862f68887c77e831 +msgid "Deleting overwrites ::" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:35 +#: dae2ea6fc6544c64bf6008937d45f7d0 +#: dae2ea6fc6544c64bf6008937d45f7d0 +#: dae2ea6fc6544c64bf6008937d45f7d0 +#: dae2ea6fc6544c64bf6008937d45f7d0 +#: dae2ea6fc6544c64bf6008937d45f7d0 +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:43 +#: 03cfeadeceb24469845f590f9734b5ac +#: 03cfeadeceb24469845f590f9734b5ac +#: 03cfeadeceb24469845f590f9734b5ac +#: 03cfeadeceb24469845f590f9734b5ac +#: 03cfeadeceb24469845f590f9734b5ac +msgid "The member or role to overwrite permissions for." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:46 +#: dcf66235aaf14217aaf08ce4c7556408 +#: dcf66235aaf14217aaf08ce4c7556408 +#: dcf66235aaf14217aaf08ce4c7556408 +#: dcf66235aaf14217aaf08ce4c7556408 +#: dcf66235aaf14217aaf08ce4c7556408 +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:50 +#: 6f036719a4ef44aeb1c05e3412443113 +#: 6f036719a4ef44aeb1c05e3412443113 +#: 6f036719a4ef44aeb1c05e3412443113 +#: 6f036719a4ef44aeb1c05e3412443113 +#: 6f036719a4ef44aeb1c05e3412443113 +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:56 +#: 9efb0463f8ca4001ab156472387d2537 +#: 9efb0463f8ca4001ab156472387d2537 +#: 9efb0463f8ca4001ab156472387d2537 +#: 9efb0463f8ca4001ab156472387d2537 +#: 9efb0463f8ca4001ab156472387d2537 +msgid "You do not have permissions to edit channel specific permissions." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:57 +#: 61bb29fcb29e4916a4342d95e7354727 +#: 61bb29fcb29e4916a4342d95e7354727 +#: 61bb29fcb29e4916a4342d95e7354727 +#: 61bb29fcb29e4916a4342d95e7354727 +#: 61bb29fcb29e4916a4342d95e7354727 +msgid "Editing channel specific permissions failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:58 +#: 4e7647606bd44e0b98e6cf273cb2d1ec +#: 4e7647606bd44e0b98e6cf273cb2d1ec +#: 4e7647606bd44e0b98e6cf273cb2d1ec +#: 4e7647606bd44e0b98e6cf273cb2d1ec +#: 4e7647606bd44e0b98e6cf273cb2d1ec +msgid "The role or member being edited is not part of the guild." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.abc.GuildChannel.set_permissions:59 +#: eed46e2237c8429cb10297b23b78e9a2 +#: eed46e2237c8429cb10297b23b78e9a2 +#: eed46e2237c8429cb10297b23b78e9a2 +#: eed46e2237c8429cb10297b23b78e9a2 +#: eed46e2237c8429cb10297b23b78e9a2 +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.voice_states:1 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.voice_states:1 +#: aac395884ca44a2f930fe268dfbcf173 +#: aac395884ca44a2f930fe268dfbcf173 +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.voice_states:7 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.voice_states:7 +#: ff1a46da477a45748d4878f27e338736 +#: ff1a46da477a45748d4878f27e338736 +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.voice_states:10 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.voice_states:10 +#: b0a39ba35b224de5b9bc4829d6564c07 +#: b0a39ba35b224de5b9bc4829d6564c07 +msgid "The mapping of member ID to a voice state." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.StageChannel.voice_states:11 +#: ../../../discord/channel.py:docstring of discord.VoiceChannel.voice_states:11 +#: e44ca07452324be283fc857fbc182383 +#: e44ca07452324be283fc857fbc182383 +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:1 +#: d1f3c8bd47f140719e5c0b888ad99b67 +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:9 +#: cfd9e47e9aba457a8d7e7dcded874e46 +msgid "Checks if two stage instances are equal." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:13 +#: 5389094ace54424ab29560b4eba7477d +msgid "Checks if two stage instances are not equal." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:17 +#: 10b764b2654e41ff8f3a68cfa60abf67 +msgid "Returns the stage instance's hash." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:21 +#: dc0cb661be4645ffb0ee5fb775fac7fc +msgid "The stage instance's ID." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:27 +#: 4b99c1a221404ba48edaaa5f27026cd5 +msgid "The guild that the stage instance is running in." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:33 +#: 25ae9212c60a42ae92f03be0294d125c +msgid "The ID of the channel that the stage instance is running in." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:39 +#: 4496cdcdbe394897845762e5db5b8d62 +msgid "The topic of the stage instance." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:45 +#: 753d7151d11749ed9ce37a2371108611 +msgid "The privacy level of the stage instance." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:47 +#: 0adc3279736942f287a3d9e1774aa984 +msgid ":class:`StagePrivacyLevel`" +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:51 +#: 203e2e85a6de4714bcf5108fc81cba3f +msgid "Whether discoverability for the stage instance is disabled." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance:57 +#: a0333acf6c3442b5b56ad839722b7f60 +msgid "The scheduled event linked with the stage instance, if any." +msgstr "" + +#: ../../docstring of discord.StageInstance.channel:1 +#: 1829c4b5e5394d688644ccb61fc9b59a +msgid "The channel that stage instance is running in." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:3 +#: 961d71895bdf42e1a265dcb3b977d9bc +msgid "Edits the stage instance." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:9 +#: bf4cb416b05f4dc5b4de3fed388dc439 +msgid "The stage instance's new topic." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:12 +#: 6bf6a4420bdd44b198d0f9df963a8335 +msgid "The stage instance's new privacy level." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:15 +#: be797d5ca83f47919ca615b971ce92e0 +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:19 +#: 98a2aed69860406c92d9d7430af6e0c4 +msgid "You do not have permissions to edit the stage instance." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.edit:20 +#: 1d9e265f57774641925c72942fecadf6 +msgid "Editing a stage instance failed." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.delete:3 +#: 97baaaa1bd20483e9f048aa3d113c954 +msgid "Deletes the stage instance." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.delete:9 +#: bce1bcc41ea341de90f034daecd0731c +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.delete:12 +#: f52b3342df8f489d8b6254c7c5c7ab13 +msgid "You do not have permissions to delete the stage instance." +msgstr "" + +#: ../../../discord/stage_instance.py:docstring of discord.stage_instance.StageInstance.delete:13 +#: 9ee431d14a7f4af6b46c49f8b807926f +msgid "Deleting the stage instance failed." +msgstr "" + +#: ../../api/models.rst:334 +#: dd317db3c9cb4a29aeb80d2b10ad338c +msgid "Interactions" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:1 +#: 775ea52457284cd4a51e8046ea22bf5e +msgid "Represents a Discord interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:3 +#: 40047a7f0dad4c7889963527d0ff04a6 +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:10 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:9 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:17 +#: 6008728ed3b44140a9d0d21ecc5f3928 +#: 6008728ed3b44140a9d0d21ecc5f3928 +#: 6008728ed3b44140a9d0d21ecc5f3928 +msgid "The interaction's ID." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:16 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:15 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:23 +#: c6a9f7b9c9cf4b248b01fab6c0256cce +#: c6a9f7b9c9cf4b248b01fab6c0256cce +#: c6a9f7b9c9cf4b248b01fab6c0256cce +msgid "The interaction type." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:18 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:17 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:25 +#: 1fc0cdfa3ed24c29b2f792d652f54f7b +#: 1fc0cdfa3ed24c29b2f792d652f54f7b +#: 1fc0cdfa3ed24c29b2f792d652f54f7b +msgid ":class:`InteractionType`" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:22 +#: d271e7c0211841a98f87ff7809f85656 +msgid "The guild ID the interaction was sent from." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:28 +#: ../../docstring of discord.Interaction.cached_channel:1 +#: 6592055219f343cb9bdd6913260e9096 +#: da78be11664f477fa8875f0a7b3cf40d +msgid "The channel the interaction was sent from." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:30 +#: fe765f9ca0464f1b81b27493ad00183c +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:34 +#: d4988af767804657b320108c5d7b3467 +msgid "The ID of the channel the interaction was sent from." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:40 +#: 1cc256002cdd4d539edb65e587c2f9a7 +msgid "The application ID that the interaction was for." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:46 +#: 6eeedd965eac44a5b905a06d37c570d7 +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:48 +#: e4df7cd48a2e428086b0c54763d2c4da +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:52 +#: 752abdff761c400093ceddf3d5ba43cf +msgid "The message that sent this interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:58 +#: 6248830208cd4b49ae1952d3cb094507 +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:65 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:41 +#: 28ba605672334ec98d75cfc20d4534bc +#: 28ba605672334ec98d75cfc20d4534bc +msgid "The raw interaction data." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:67 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:43 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:112 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:60 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:33 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:29 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMemberRemoveEvent:23 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:33 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:29 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:83 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:59 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:27 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:37 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:41 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:29 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:33 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:41 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:27 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +#: 62d4b92033714c14a7e588f356deec68 +msgid ":class:`dict`" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:71 +#: 431e63b876fc4e95ab4746e9607e8cef +msgid "The user's locale." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:77 +#: d1b67b9a517e4afa987f5d8808f281ec +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:83 +#: bc95434233944967b59146866853dc61 +msgid "The custom ID for the interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:89 +#: 87681089c6c34a3a8b90710e070e432f +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:93 +#: 7a446b1615f949e2a8791a93cf39f86a +msgid "list[:class:`Entitlement`]" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:97 +#: 02eac2317d8042c1973ec01e54f167da +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:101 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:29 +#: 575fb80fa5ad41f294d33252d69885fc +#: 575fb80fa5ad41f294d33252d69885fc +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:105 +#: 5792e58158d04e58899ee162f1c542e7 +msgid "The context in which this command was executed." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction:109 +#: 149351b7df664788a413093688677723 +msgid "Optional[:class:`InteractionContextType`]" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.Interaction.client:1 +#: 4464cbbf3555444890e48eaf0e78176d +msgid "Returns the client that sent the interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.Interaction.guild:1 +#: 55c70be45b73482ca42cefdb013a99f3 +msgid "The guild the interaction was sent from." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.is_command:1 +#: bd66fcea2cc64e7793c0f6867ab2d4f3 +msgid "Indicates whether the interaction is an application command." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.is_component:1 +#: 26ede07ec91341e19637c9b51fbf2327 +msgid "Indicates whether the interaction is a message component." +msgstr "" + +#: ../../docstring of discord.Interaction.cached_channel:4 +#: 2059802134ba4fd1847a6c6046b12b09 +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.Interaction.permissions:1 +#: 38c0562356cc42cd894edfbccb261023 +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.Interaction.permissions:3 +#: ac78027c2cfd40abbeb784e00ead560e +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "" + +#: ../../docstring of discord.Interaction.app_permissions:1 +#: 7909ba6d6a2f41f6b6462a9351d9e4f4 +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "" + +#: ../../docstring of discord.Interaction.response:1 +#: cad185e4c9f94be694c4f320b7c90829 +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "" + +#: ../../docstring of discord.Interaction.response:3 +#: 4699990c15104a26b6d4c952657ddce3 +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "" + +#: ../../docstring of discord.Interaction.followup:1 +#: 8fdd84284e2a497bade0d8001a36e09a +msgid "Returns the followup webhook for followup interactions." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_response:3 +#: 2de1a112cdb84a6f9936002cc8f558aa +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_response:5 +#: f98e672573a846dfa70a7a495bb85fd5 +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_response:9 +#: 2f3891340d1d4328a53b411abf6e1d34 +msgid "Repeated calls to this will return a cached value." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_message:3 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_response:11 +#: 4bc04d411af54a45b89a5c855ec2ab0f +#: 4bc04d411af54a45b89a5c855ec2ab0f +msgid "The original interaction response message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_message:6 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_response:14 +#: c142aeb5a3c949ccb4255648b0bd5d10 +#: c142aeb5a3c949ccb4255648b0bd5d10 +msgid "Fetching the original response message failed." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_message:7 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_response:15 +#: 49b41174c824449cbd07131376945e32 +#: 49b41174c824449cbd07131376945e32 +msgid "The channel for the message could not be resolved." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.original_message:1 +#: 816552f68597445d88271545aff5d020 +msgid "An alias for :meth:`original_response`." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:3 +#: 1850b83f26c04738a5ca8083908d7be2 +msgid "Edits the original interaction response message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:5 +#: 514bff746a3d4cd8b9ee478107a9cb8b +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:8 +#: 943be66eb84e4bbe8c3da8f3df723e6c +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:12 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:6 +#: 5d0e4e83b4f24731b34a35e79c46a8c1 +#: 5d0e4e83b4f24731b34a35e79c46a8c1 +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:15 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:9 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:10 +#: 78ab2785551d40aebdd0c9db2b357a8e +#: 78ab2785551d40aebdd0c9db2b357a8e +#: 78ab2785551d40aebdd0c9db2b357a8e +msgid "A list of embeds to edit the message with." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:18 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:12 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:13 +#: 1bfea59e058349e6983197c48ebab23c +#: 1bfea59e058349e6983197c48ebab23c +#: 1bfea59e058349e6983197c48ebab23c +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:22 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:16 +#: 60ad98432301495e81b9d767d8bc2752 +#: 60ad98432301495e81b9d767d8bc2752 +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:25 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:19 +#: 6f346031716245248cab708988aa9e2b +#: 6f346031716245248cab708988aa9e2b +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:33 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:27 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:28 +#: ded433826a6d40e98463ddc4efddb20e +#: ded433826a6d40e98463ddc4efddb20e +#: ded433826a6d40e98463ddc4efddb20e +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_message:3 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:49 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:43 +#: 57b7e0b2c9594f87a4f6a794d8f8311d +#: 57b7e0b2c9594f87a4f6a794d8f8311d +#: 57b7e0b2c9594f87a4f6a794d8f8311d +msgid "The newly edited message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_message:4 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:50 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:44 +#: c9d4555a10334b05844245ef0bb77543 +#: c9d4555a10334b05844245ef0bb77543 +#: c9d4555a10334b05844245ef0bb77543 +msgid ":class:`InteractionMessage`" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_message:7 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:53 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:47 +#: b305b4b190304f928eacfe9998ad4a2b +#: b305b4b190304f928eacfe9998ad4a2b +#: b305b4b190304f928eacfe9998ad4a2b +msgid "Edited a message that is not yours." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_message:8 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:54 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:48 +#: 0e2e17416ca94d62957d593de02de4f8 +#: 0e2e17416ca94d62957d593de02de4f8 +#: 0e2e17416ca94d62957d593de02de4f8 +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_message:9 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_response:55 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.edit:49 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:52 +#: a5114f88c58f463b828b0bbcdf8ea0cf +#: a5114f88c58f463b828b0bbcdf8ea0cf +#: a5114f88c58f463b828b0bbcdf8ea0cf +#: a5114f88c58f463b828b0bbcdf8ea0cf +msgid "The length of ``embeds`` was invalid." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit_original_message:1 +#: bd6d58e2d23149ba9ce01594ee1923f7 +msgid "An alias for :meth:`edit_original_response`." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_response:3 +#: 14276a4f9e5c4b63a629f832a0753117 +msgid "Deletes the original interaction response message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_response:5 +#: 50fb04a60e7a46c78e90ee08c279dec5 +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_response:9 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.delete:6 +#: febbc9cba8d34c6586876cd40429ec3b +#: febbc9cba8d34c6586876cd40429ec3b +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_message:4 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_response:14 +#: a1d88591f3784ab0a14ee62252f107fb +#: 7dd0c5d8414b42298fbe212d13c29826 +msgid "Deleted a message that is not yours." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.delete_original_message:1 +#: a6e99b1e2f7f4e65b5d8d9ba6c333fd3 +msgid "An alias for :meth:`delete_original_response`." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.respond:3 +#: cbc7c9a8ce5944ef82d469e98f491d7e +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit:6 +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.respond:6 +#: c94a1b5cbea24b01a9797e6870ae5ea4 +#: c94a1b5cbea24b01a9797e6870ae5ea4 +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.respond:7 +#: b30852d11460457eabb6784aba94a706 +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit:3 +#: 8d35bb67672a42fcac023f5995852b4d +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.edit:7 +#: 0e02b73f63d349c093e61f6adb60397f +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.to_dict:1 +#: f62b32c6deba4ae285103dd2f354292c +msgid "Converts this interaction object into a dict." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.to_dict:3 +#: 0ad066b6f53a48738838e07593cedea5 +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.Interaction.to_dict:4 +#: 5c107ee8b22644db9b4cfed7056afc3e +msgid "Dict[:class:`str`, Any]" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse:1 +#: 6a080d45f7f94f7b9996e3e689aeea4f +msgid "Represents a Discord interaction response." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse:3 +#: 749dee81631c46d0bfd9f420bc223e79 +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.is_done:1 +#: 1a1c87556c5b46338759b67959814cae +msgid "Indicates whether an interaction response has been done before." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.is_done:3 +#: 9fc4846fbb464219b452b4608fae6d7a +msgid "An interaction can only be responded to once." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:3 +#: 2cd8394c7ee440b7914ed17796762aff +msgid "Defers the interaction response." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:5 +#: cd531d8e26754adbb67ccfcc5557bc1c +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:8 +#: fac744047d0f466996a2066c3f50d6ed +msgid "This can only be used with the following interaction types:" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:10 +#: 9a9bf857983c496b92e769a2c61e3277 +msgid ":attr:`InteractionType.application_command`" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:11 +#: 4e88a14c0f274842afb4125ddc39972c +msgid ":attr:`InteractionType.component`" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:12 +#: cafbe6d28edb4eaaa0289f186f485ee7 +msgid ":attr:`InteractionType.modal_submit`" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:15 +#: 2ba82ddad23d446db6d9655546f3b84d +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:19 +#: c027019699d74cfdbd10025be90b90c1 +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:24 +#: 781f8954cb5d49dd958f065940a34ed9 +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:32 +#: cf570c86c50649c0bbd0dd376d345eb7 +msgid "Deferring the interaction failed." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.defer:33 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:50 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.pong:8 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.premium_required:12 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_autocomplete_result:9 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:53 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_modal:10 +#: 190377437a99469fbe3f65af715e569b +#: 5fd8b575c5ea4556be228e6ffd03fc31 +#: c2f8b5e3b60f49c2ae55cb0c96d9c761 +#: 190377437a99469fbe3f65af715e569b +#: 190377437a99469fbe3f65af715e569b +#: 190377437a99469fbe3f65af715e569b +#: c2f8b5e3b60f49c2ae55cb0c96d9c761 +msgid "This interaction has already been responded to before." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.pong:3 +#: 726629a0abdc4eefbda7fd1c98f15b7f +msgid "Pongs the ping interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.pong:5 +#: bbf97771852d403bb3d12542b445d11e +msgid "This should rarely be used." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.pong:7 +#: 63865b257fb148eca22c5902537a160a +msgid "Ponging the interaction failed." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:3 +#: 04fc7140a0054bbfab98eb1ef5eb9db2 +msgid "Responds to this interaction by sending a message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:9 +#: cf022833321e4d4e952d42c919a9e58a +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:13 +#: fa988857e557477dbba1ebe2e0cdea53 +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:20 +#: 7a2fc6f963a74c2bb23e22c1eefbb2ac +msgid "The view to send with the message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:23 +#: 78aa02922d154229b23d02e952d96cad +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:32 +#: 64e02398ff574112aa7da5406a0677d0 +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:47 +#: 80d3084bbff64deb9a18d1bb91999e24 +msgid "The interaction object associated with the sent message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:48 +#: 818f06aff6094b08a83db537c72141a4 +msgid ":class:`.Interaction`" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:49 +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_message:51 +#: e2024a8f3ffb496d9c436a8a62f58ff2 +#: e2024a8f3ffb496d9c436a8a62f58ff2 +msgid "You specified both ``embed`` and ``embeds``." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:3 +#: bf8a8d7d68404c6c8dc528e78ef7571b +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:7 +#: 4b5180a1cf0647009a0d600d9383e0a5 +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:17 +#: 9a19c321a52f419daee55b3f6b21c3ef +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.edit_message:20 +#: b1b174a3fec84e6db5e7e9611be7966d +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_autocomplete_result:1 +#: 32c68b7cc33841258ae96c0c02aa2da0 +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_autocomplete_result:5 +#: bc6555a8e3324ec7a29849428b192cb1 +msgid "A list of choices." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_autocomplete_result:8 +#: d864284c89884ed3ad8949b4cf99011e +msgid "Sending the result failed." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_modal:1 +#: 8e54ac9007de4a4d829ed4df0e5915e2 +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_modal:6 +#: f4c62420e64349f492d00f247c09a447 +msgid "The modal dialog to display to the user." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_modal:9 +#: f2b153a0e68f499980aa1d0581b95ffd +msgid "Sending the modal failed." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.send_modal:12 +#: fa2c7415a5394f01aea0cdbeac5bf9ae +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.premium_required:3 +#: 78617e1aed38430384dba4d8cca25d12 +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionResponse.premium_required:9 +#: f77a39a6089f4253a884d8819df78f12 +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage:1 +#: c0b870f0e79d48c0b613e7df8c1d8588 +msgid "Represents the original interaction response message." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage:3 +#: d7736f47631844a6b757d1233dc575ad +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage:6 +#: f9dbfcff943e4cc0907be97e5dc96b40 +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMessage.delete:11 +#: 1c9fdeee1518456d982525c4a87964e9 +msgid "The message was deleted already." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:1 +#: 27715675c1044bd4b769e8ae37b2f93b +msgid "Represents a Discord message interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:3 +#: eb49b29ecd8048b3b781d3a2cce3478d +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:10 +#: 69521c9fc5714a6a8859ddff3efb8403 +msgid "See :class:`InteractionMetadata`." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:13 +#: a79b8da007c44f1e96437ee14ccfea66 +msgid "Responses to message components do not include this property." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:29 +#: 58f0b598df8f4b0a9e46d1dc7f600c24 +msgid "The name of the invoked application command." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:21 +#: ../../../discord/interactions.py:docstring of discord.interactions.MessageInteraction:35 +#: 7f960d2316a846959186aa98cc5bdc80 +#: 7f960d2316a846959186aa98cc5bdc80 +msgid "The user that sent the interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:1 +#: aefc043c2e7a4936b14e77ad181e747f +msgid "Represents metadata about an interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:3 +#: 4b72b7fa0dd34800b112fd5124349780 +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:27 +#: ec5f1e75991d4361b15dd4324d59c3e2 +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:33 +#: 9e25574cf7a64ecaa23396bb90495acb +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:39 +#: bdf5d71153fc41698afcb762ceb8b3b3 +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.InteractionMetadata:46 +#: 29e6e31887114b448358d1e098c402bb +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "" + +#: ../../docstring of discord.InteractionMetadata.original_response_message:1 +#: b58e0939843b4f7f8bd3c352c93fd161 +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "" + +#: ../../docstring of discord.InteractionMetadata.interacted_message:1 +#: 24c26cbf637d43e586c71ac57e489433 +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.AuthorizingIntegrationOwners:1 +#: 65790c58c3bd4a77a1c2045e8c1d395f +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.AuthorizingIntegrationOwners:7 +#: 2722a330072a40ff9d26d694ccf3e59b +msgid "The ID of the user that authorized the integration." +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.AuthorizingIntegrationOwners:9 +#: ../../../discord/interactions.py:docstring of discord.interactions.AuthorizingIntegrationOwners:17 +#: e9458a1d2e184ba08cb95ee060a70b67 +#: e9458a1d2e184ba08cb95ee060a70b67 +msgid ":class:`int` | None" +msgstr "" + +#: ../../../discord/interactions.py:docstring of discord.interactions.AuthorizingIntegrationOwners:13 +#: dfb1816376444865bf9fa592dd94e3bf +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "" + +#: ../../docstring of discord.AuthorizingIntegrationOwners.user:1 +#: c561ef72045447c8bcaefae99bea4069 +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "" + +#: ../../docstring of discord.AuthorizingIntegrationOwners.guild:1 +#: b6d1a54d63184868baf3162b671055f8 +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Component:1 +#: 325eccff689b463a930829aa10f85c86 +msgid "Represents a Discord Bot UI Kit Component." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Component:3 +#: 2d12acff11104cfdae9f7130c251450e +msgid "Currently, the only components supported by Discord are:" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Component:5 +#: 709fc995d26b4c83ac251992b4d0284c +msgid ":class:`ActionRow`" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Component:6 +#: 006ee8a5eae04575b71c25f80734fddc +msgid ":class:`Button`" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Component:7 +#: 0c5375d482ec498eaa71bfd03f2a8133 +msgid ":class:`SelectMenu`" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Component:9 +#: c058b048558c41e796780dc8fd7e13b3 +msgid "This class is abstract and cannot be instantiated." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.ActionRow:11 +#: ../../../discord/components.py:docstring of discord.components.Component:15 +#: f81c11da386445dbbb02292e3bc450c1 +#: f81c11da386445dbbb02292e3bc450c1 +msgid "The type of component." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.ActionRow:13 +#: ../../../discord/components.py:docstring of discord.components.Component:17 +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:22 +#: c7fa145264a345959a3d9ee21d0d3f9b +#: c7fa145264a345959a3d9ee21d0d3f9b +#: c7fa145264a345959a3d9ee21d0d3f9b +msgid ":class:`ComponentType`" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.ActionRow:1 +#: 9f7d8de88aed40a08872c3374e05f049 +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.ActionRow:3 +#: 52afa1f78ae7497c8060bdb4a963d379 +msgid "This is a component that holds up to 5 children components in a row." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.ActionRow:5 +#: ../../../discord/components.py:docstring of discord.components.Button:3 +#: 93341d8aa4fb44959bf727bb0998ab94 +#: 93341d8aa4fb44959bf727bb0998ab94 +msgid "This inherits from :class:`Component`." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.ActionRow:17 +#: 3248a4ea4e8c4849a1e3cfd557671f33 +msgid "The children components that this holds, if any." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:1 +#: e0b3fcd3375d4bfb8695df0a7104c162 +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:7 +#: e84696cb443c46b1a00676610ca02b0d +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:14 +#: 17316ef8cf2e41eea87856713d44d589 +msgid "The style of the button." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:16 +#: 9b26c0ad72604068a56d44df8deaf10e +msgid ":class:`.ButtonStyle`" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:20 +#: 3e0bad6d875e4b708e06d95b7bc848df +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:27 +#: dbc3fc6e82d449c498ff55cedadec8f1 +msgid "The URL this button sends you to." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:33 +#: 92ad8e5b06b44eaeb61e9ec6fe198505 +msgid "Whether the button is disabled or not." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:39 +#: cf2143a753e04aaba2c533fd326bcdbd +msgid "The label of the button, if any." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:45 +#: a1bedc695439492f85e0988db64713a1 +msgid "The emoji of the button, if available." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:47 +#: 2f8502a4187e40f597d6496424c5ac3a +msgid "Optional[:class:`PartialEmoji`]" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.Button:51 +#: 76a7eb849b774f21a8d3351ab54c814a +msgid "The ID of the SKU this button refers to." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:1 +#: 6efb83e0de88482cb68cfc583e02da9a +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:3 +#: 7bdf0a195f7349158b0f1f4e36fb930b +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:8 +#: fc6946db0ea245a69657a6935ca95a1a +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:15 +#: 1f0a74344d894d50bbcf2e95bba368ca +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:20 +#: 2102950811c74486ab9b1026c9caddb1 +msgid "The select menu's type." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:26 +#: b88d7aba2c9f46f88b681a6b575cb84e +msgid "The ID of the select menu that gets received during an interaction." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:32 +#: c13453267e014bf98fe6f803e5a076c7 +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:38 +#: 3fdc6cc88eee4898b8468f5a5a44e7d2 +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:45 +#: 33a222b1a7e9441f86f5ce875be10c72 +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:52 +#: d4e8136b7e634c6daa20e200a532bc0d +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:56 +#: d343089d09514315960da0c7bf2b3de2 +msgid "List[:class:`SelectOption`]" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:60 +#: 5352d7de29a64f59834df1c06284439b +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:64 +#: 1c0857ba83824e07ae47f6b53750d2fa +msgid "List[:class:`ChannelType`]" +msgstr "" + +#: ../../../discord/components.py:docstring of discord.components.SelectMenu:68 +#: 4d0bc3e8202f4bea84931cee7392c89d +msgid "Whether the select is disabled or not." +msgstr "" + +#: ../../api/models.rst:389 +#: c885c2e7084646b998c51b1c9bafc0aa +msgid "Emoji" +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:1 +#: a4f545bdd7dc437c9d245d238586c702 +msgid "Represents a custom emoji." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:3 +#: a3349dfb97b44db9b3ecbbee8e3a01ff +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:10 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:12 +#: 44bf70fa78894c1daddd55e9d90838e2 +#: 44bf70fa78894c1daddd55e9d90838e2 +msgid "Checks if two emoji are the same." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:14 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:16 +#: d2a07b8aa3ab40839e60c1d979b40ceb +#: d2a07b8aa3ab40839e60c1d979b40ceb +msgid "Checks if two emoji are not the same." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:18 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:20 +#: 4c8a36b9a18a42cc928f6013bb72307c +#: 4c8a36b9a18a42cc928f6013bb72307c +msgid "Return the emoji's hash." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:22 +#: 7cf57bf9d537462a8b495549c81e2242 +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:27 +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:24 +#: 2a7b951e1a5b452d93036b3794628d0d +#: 2a7b951e1a5b452d93036b3794628d0d +msgid "Returns the emoji rendered for discord." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:31 +#: 14ea0733e1d541da9fea4210dc039209 +msgid "The name of the emoji." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:43 +#: b6e01311a7694deeba97d6ea2b8240e8 +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:49 +#: 880bd48f7776420995813479f53ac12a +msgid "Whether an emoji is animated or not." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:55 +#: 69dcc8a19c474fdb8fad0b3391750694 +msgid "If this emoji is managed by a Twitch integration." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:61 +#: a1e8a33a32c64b71bef5731eeaa07cd3 +msgid "The guild ID the emoji belongs to." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:67 +#: 33a23d7c29004eaaa37ca543e08ac512 +msgid "Whether the emoji is available for use." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji:73 +#: db162171483149d08942625fc5b9ac36 +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.Emoji.created_at:1 +#: 62dffac0a0724a6383eb42c22cd717c4 +msgid "Returns the emoji's creation time in UTC." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.Emoji.url:1 +#: 94a262936d7443e284a5b0bca6175dc3 +msgid "Returns the URL of the emoji." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.Emoji.roles:1 +#: 5dfaa3531d0646b0bf85c2b34e72fb67 +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.Emoji.roles:3 +#: d76d5cc472e547e2893bf6d83d18cb1b +msgid "If roles is empty, the emoji is unrestricted." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.Emoji.guild:1 +#: 04b446a6ff504bf8a407983e47aaeb77 +msgid "The guild this emoji belongs to." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.is_usable:1 +#: a9a8d25d86ae4c3496bc37cd89b9ea7d +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.delete:3 +#: 496fefc520c1400a95b50c17283f2426 +msgid "Deletes the custom emoji." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:3 +#: aca7f87a81bc40f8855d7c68ddee4b7c +msgid "Edits the custom emoji." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:8 +#: 9eeff73ac06d4e61bc1a6e1a62c484b2 +msgid "The newly updated emoji is returned." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:12 +#: b1be944c7f23429e8685fd13dcaf8082 +msgid "The new emoji name." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:15 +#: 7a765fb4a9714da9b98d6d67185e6ad0 +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:18 +#: 9a6b2a99c62d43668117ae80889fa7d7 +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:21 +#: b2b4c21efd88459db5e27419833f6c0b +msgid "You are not allowed to edit emojis." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:22 +#: 29b4b67b766647a38d168494e1cfa898 +msgid "An error occurred editing the emoji." +msgstr "" + +#: ../../../discord/emoji.py:docstring of discord.emoji.Emoji.edit:24 +#: 89165b83444e45609f6f4d2352594759 +msgid "The newly updated emoji." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:1 +#: f39d6b6e8b3044fba02ad0bd00f8d7f6 +msgid "Represents a \"partial\" emoji." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:3 +#: 5d68be3976954c49971d9c1525d67938 +msgid "This model will be given in two scenarios:" +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:5 +#: 0bd5bd19fa184dfd8018db6e2035c59c +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:6 +#: 391bf6eb223945c8bb01c03d034bfa67 +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:28 +#: 9a2e957e6c0f49419644ab64c951ea5d +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:36 +#: a7a51594069a438f8acd9bbca571858b +msgid "Whether the emoji is animated or not." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji:42 +#: 23ce1e8f521549d09f31a673daa9a7bf +msgid "The ID of the custom emoji, if applicable." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:1 +#: 4e68e8b298ae489096c3076a1bad8b8c +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:3 +#: b51ef4ea5b024d89a5e6790bee09dbb7 +msgid "The formats accepted are:" +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:5 +#: d92c174300aa4cb682ca65c243bd2886 +msgid "``a:name:id``" +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:6 +#: 7e7e15b82eda46b69f622b8d207a7938 +msgid "````" +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:7 +#: 068b659b889a46e6af015102dbae96ba +msgid "``name:id``" +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:8 +#: 26451483b7b345a89034cdb9f5bee4a7 +msgid "``<:name:id>``" +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:10 +#: 0004bb49447249e5a5fb57df035e4181 +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:15 +#: 682f94e2acc1488989fc736ca8c488b4 +msgid "The string representation of an emoji." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:18 +#: 18e7d4d4e1e44093ab57f3037fb1e861 +msgid "The partial emoji from this string." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.from_str:19 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:32 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:27 +#: 1eda185924ee4e90b494cdb8b767c886 +#: 1eda185924ee4e90b494cdb8b767c886 +#: 1eda185924ee4e90b494cdb8b767c886 +msgid ":class:`PartialEmoji`" +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.is_custom_emoji:1 +#: 591c4b9c436d4c1e9ea45212c5423557 +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.partial_emoji.PartialEmoji.is_unicode_emoji:1 +#: e3856358c4bb4995809b5f40633b3838 +msgid "Checks if this is a Unicode emoji." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.PartialEmoji.created_at:1 +#: 53d2c4b30a8b4edab0af741a907d0fe5 +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.PartialEmoji.url:1 +#: 07396e8cbb974e699724356e6ef8a4f3 +msgid "Returns the URL of the emoji, if it is custom." +msgstr "" + +#: ../../../discord/partial_emoji.py:docstring of discord.PartialEmoji.url:3 +#: 1ef7bcbcbc1248db84780ad13df86a2f +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "" + +#: ../../api/models.rst:404 +#: a26c3fb538cc4eae85bc9b01ec610081 +msgid "Channels" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:1 +#: 1cf47d24b7704b8dad853e268978d801 +msgid "Represents a Discord text channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:47 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:47 +#: 28cadf33bcaa4284b510b25b352040ba +#: 28cadf33bcaa4284b510b25b352040ba +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:64 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:60 +#: de489b1b036047c99f633e4585c04d92 +#: de489b1b036047c99f633e4585c04d92 +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:71 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:67 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:91 +#: 77a34e9892e94686b1a5737a8469fde8 +#: 77a34e9892e94686b1a5737a8469fde8 +#: 77a34e9892e94686b1a5737a8469fde8 +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:50 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:80 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:76 +#: fab80e171db445d78867efd958f0536b +#: fab80e171db445d78867efd958f0536b +#: fab80e171db445d78867efd958f0536b +msgid "If the channel is marked as \"not safe for work\"." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:54 +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:84 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:80 +#: 50ed6ace112b45399a2e24de081c9951 +#: 50ed6ace112b45399a2e24de081c9951 +#: 50ed6ace112b45399a2e24de081c9951 +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:90 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:86 +#: 39c3e1849aea42b1a5e44b6b35945813 +#: 39c3e1849aea42b1a5e44b6b35945813 +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:122 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel:102 +#: c03fe611956149aba94e3914962f92df +#: c03fe611956149aba94e3914962f92df +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.is_news:1 +#: 59a76c086f30476faaab4e29e854acd4 +msgid "Checks if the channel is a news/announcements channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.TextChannel.news:1 +#: 550e2832cc16427dbd968ae91bf8abb0 +msgid "Equivalent to :meth:`is_news`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:8 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:8 +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:8 +#: 1d1be76fe7b04528b2c3ee29212c3c84 +#: 1d1be76fe7b04528b2c3ee29212c3c84 +#: 1d1be76fe7b04528b2c3ee29212c3c84 +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:11 +#: 63058ac2db904abc8c2ac2b98b8a38b0 +msgid "The ``type`` keyword-only parameter was added." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:8 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:17 +#: b736174baf734a728df41ae7c8846701 +#: b736174baf734a728df41ae7c8846701 +msgid "The new channel name." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:22 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:31 +#: 795407065f204ab394d5d71e46f4f9e4 +#: 795407065f204ab394d5d71e46f4f9e4 +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:34 +#: eb56e78bf81c46edb931dd15152cf3e9 +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:30 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:43 +#: aec9e5551cb74af8b49d87aceac3742b +#: aec9e5551cb74af8b49d87aceac3742b +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:33 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:46 +#: 2b1b27b29de74dada9a54eb48be4b94e +#: 2b1b27b29de74dada9a54eb48be4b94e +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:33 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:46 +#: a07120a4d00149718bbcb809103cc6a7 +#: a07120a4d00149718bbcb809103cc6a7 +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:51 +#: b15a139dcf17430b9bda24a4052d3504 +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:53 +#: 9e006a134f6d4a5c98852ac3f6ee4da7 +msgid "Optional[:class:`.TextChannel`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:60 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.edit:55 +#: 0fc3c3b030404e49b32d2e3452611428 +#: 0fc3c3b030404e49b32d2e3452611428 +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:3 +#: be26239c94d04849849334d27feda04c +msgid "Creates a thread in this text channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:5 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:5 +#: fbf735600cc44f92ab131b1a3b735685 +#: fbf735600cc44f92ab131b1a3b735685 +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:14 +#: 515f99b3674c4b6296c673589b16743a +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:23 +#: 79387b6c65034148b278684aec8e838f +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:28 +#: 3a1d717daba84e828fbd005b5afebc7d +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:32 +#: 799bd650e7ad4728a8c423f25d53bc64 +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:64 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:36 +#: 0102ac1b4d7c4838bb44d69f8d60d28c +#: 0102ac1b4d7c4838bb44d69f8d60d28c +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:67 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:39 +#: fd6df08adf534a90b14c140cbd59529b +#: fd6df08adf534a90b14c140cbd59529b +msgid "The created thread" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:71 +#: ../../../discord/channel.py:docstring of discord.channel.TextChannel.create_thread:43 +#: f3041c1cfd4f4cd0b84d05aec3166d18 +#: f3041c1cfd4f4cd0b84d05aec3166d18 +msgid "Starting the thread failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:1 +#: 53020510c3264070868a136e9d819a55 +#: 53020510c3264070868a136e9d819a55 +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:3 +#: eade018b8df94654aade6c41b12a606a +#: eade018b8df94654aade6c41b12a606a +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:9 +#: d96d787d544246e8955385af1e212084 +#: d96d787d544246e8955385af1e212084 +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:14 +#: 18c4a1c74591444e8ab0eadccd6068a4 +#: 18c4a1c74591444e8ab0eadccd6068a4 +msgid "Retrieve archived channels before the given date or ID." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:17 +#: 47e0f3baf0144f1ba8b3c4d5ef0bfe34 +#: 47e0f3baf0144f1ba8b3c4d5ef0bfe34 +msgid "Whether to retrieve private archived threads." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:20 +#: 53a32620bfa14fbb874c660624fe5617 +#: 53a32620bfa14fbb874c660624fe5617 +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:24 +#: 7893ab8ad95343709b667196bff9d808 +#: 7893ab8ad95343709b667196bff9d808 +msgid ":class:`Thread` -- The archived threads." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:26 +#: 2d87b8ad74d74790955f8a8f7521ae0c +#: 2d87b8ad74d74790955f8a8f7521ae0c +msgid "You do not have permissions to get archived threads." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:27 +#: 00056e8969fc401c9d8d3a593d399d7b +#: 00056e8969fc401c9d8d3a593d399d7b +msgid "The request to get the archived threads failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.archived_threads:29 +#: 2e2ff553e8684e86a18df67eca7e1566 +#: 2e2ff553e8684e86a18df67eca7e1566 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:1 +#: dd7fe9e0e5104c1bb97c25dc8254e260 +#: dd7fe9e0e5104c1bb97c25dc8254e260 +msgid "Follows a channel using a webhook." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:3 +#: 20936b5e624649fe9dc85c8cc9da0a31 +#: 20936b5e624649fe9dc85c8cc9da0a31 +msgid "Only news channels can be followed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:7 +#: 4e6a755a76a24f0dac7823c73d8eeed5 +#: 4e6a755a76a24f0dac7823c73d8eeed5 +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:13 +#: 3a6238bf9ce5438aa21950c2d2f44a49 +#: 3a6238bf9ce5438aa21950c2d2f44a49 +msgid "The channel you would like to follow from." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:16 +#: 0e891d00bbcf4a789ddad17a6d35832c +#: 0e891d00bbcf4a789ddad17a6d35832c +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:16 +#: 7c0e19b5677c49e9ace5407d47115d0c +#: 7c0e19b5677c49e9ace5407d47115d0c +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:24 +#: 6e59b434e5ea44f28ea64487973c3373 +#: 6e59b434e5ea44f28ea64487973c3373 +msgid "Following the channel failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel._TextChannel.follow:25 +#: aafe6d980d8c46cd89c2a0d6c857ced5 +#: aafe6d980d8c46cd89c2a0d6c857ced5 +msgid "You do not have the permissions to create a webhook." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.members:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.members:1 +#: d3a81ce636a44a9e88b3eea449b50f70 +#: d3a81ce636a44a9e88b3eea449b50f70 +msgid "Returns all members that can see this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.threads:1 +#: ../../../discord/channel.py:docstring of discord.TextChannel.threads:1 +#: f4fe0d12fcea454aa752afbccfa50240 +#: f4fe0d12fcea454aa752afbccfa50240 +msgid "Returns all the threads that you can see." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:1 +#: 3d9ee502ea0640118b0f4cf0cbb8e626 +msgid "Represents a Discord forum channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:51 +#: 4b34ca608be34c5597336cc69ea91cf2 +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:106 +#: b083e6a86b634b1894c54f243b988735 +msgid "The set of tags that can be used in a forum channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:114 +#: cae1b545239a43b6aa72e818246d1b4a +msgid "The default sort order type used to order posts in this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:118 +#: 163ca8890cd8438d88981ac907297672 +msgid "Optional[:class:`SortOrder`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:130 +#: 79295ddcd99444a28326d80b16bcb8e8 +msgid "The default forum reaction emoji." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel:134 +#: 301a6e58f833446e89b741b0196dbd33 +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.guidelines:1 +#: 718249dfc3d4489791382f41a839e150 +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.requires_tag:1 +#: 8dae47fc78014be6bdc6ca09757b5007 +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.ForumChannel.requires_tag:3 +#: ef72d447ccb444db82cfbcc3779bc392 +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.get_tag:1 +#: 790f262d27f049caa2b496ed4373523e +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.get_tag:8 +#: 193050a1c4bb4382bbbf16fdfabd0435 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:37 +#: c16a388e069d4526b2674948441ecfbf +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:37 +#: a743fff2abf44d978975cbef0b68d112 +msgid "The default sort order type to use to order posts in this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:41 +#: 60f31611259c42a69519afb9d55367d7 +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:47 +#: f1f62f3c054949af950dbe405e52b553 +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:47 +#: 0b5e325a38434b46b84bf970a8b2c356 +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:51 +#: 7efd5463c5cf4f67b497827921ab640b +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:51 +#: 46f1ffe182e64c9ba4a690d9f6460f58 +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:56 +#: 794542333a414e1999fcca0dd25f516b +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.edit:58 +#: e6117095200744589214d6b9a9606502 +msgid "Optional[:class:`.ForumChannel`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:3 +#: 20d73b30bc03404db6cebb419fc013d2 +msgid "Creates a thread in this forum channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:32 +#: 2b7967c4efa54bc092954aa4b4790943 +msgid "The time to wait before deleting the thread." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:50 +#: fd82b9157d3e4afbbbc2d483895a3773 +msgid "A list of tags to apply to the new thread." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.ForumChannel.create_thread:57 +#: 5812e2412483464bb0330be789353b43 +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:1 +#: 176b5d8e42a149aca568b2ab47d6d85d +msgid "Represents a Discord guild voice channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:83 +#: 74371b3956454f0dbed25b2bb2c7a21d +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel:102 +#: 43512047185a49aabc1a03e1af965a58 +msgid "The channel's status, if set." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:16 +#: 0a27deab81dd461da942e57ef12425b8 +msgid "The new channel's bitrate." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:18 +#: 9b247bddd4ac418d8e12d122b4570e72 +msgid "The new channel's user limit." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:33 +#: 1f0f56119b9e41deb242811f7c8ca21f +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:33 +#: beddf16d24b343009db491a281c45474 +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:43 +#: 8429bc1f3b3d4ad6a65ac7f3de8ef5f1 +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.edit:45 +#: 477c17bee0a64b0e8d0b82aa34a7a062 +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:3 +#: d817b78eacdf48e6812d05f13985393f +msgid "A shortcut method that creates an instant activity invite." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:5 +#: 71034e6b918e41a88b295c40378de972 +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:9 +#: b79c6282c8e440628022aaa3a2d90857 +msgid "The activity to create an invite for which can be an application id as well." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.create_activity_invite:30 +#: 403a4833625a48e8b746bd791d33f1b5 +msgid "If the activity is not a valid activity or application id." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.set_status:3 +#: 1cd7a8f6f43b4fa4ad315833918a527f +msgid "Sets the status of the voice channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.set_status:5 +#: f8d1b48374784102ba343b5bf2ed84bf +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.set_status:8 +#: 29ad9a928c66456baf52fec8cf63ba65 +msgid "The new status." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.set_status:11 +#: 66a3cccc28684da3a091335c07727ef8 +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.set_status:14 +#: 4667178d35264140a0c30c1a62d3e94f +msgid "You do not have proper permissions to set the status." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.VoiceChannel.set_status:15 +#: e577ec72d87b44f997070b042dfd5927 +msgid "Setting the status failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:1 +#: a9d340ffed6841aea33ff4985cddcbcc +msgid "Represents a Discord channel category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:3 +#: 7c1573d6fd0245109df230dd8ecbf388 +msgid "These are useful to group channels to logical compartments." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:17 +#: 63e3c6221a184d2b9688c0e5bc1bd14e +msgid "Returns the category's hash." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:21 +#: 936f63cab2574f28a0c5410be52d8880 +msgid "Returns the category's name." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:25 +#: c1df12ed1a724f27be3f2c4803917b8a +msgid "The category name." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:31 +#: 911563f1a0a1497593ab58c660c51247 +msgid "The guild the category belongs to." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:37 +#: 9eaf9fd54ae14ef49c4283bd42bdc435 +msgid "The category channel ID." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel:43 +#: c80d0d015c2a49e2bf6092504cb5d3d2 +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.is_nsfw:1 +#: e9979dc9e1ca4edf9bbab4d0d9d940ff +msgid "Checks if the category is NSFW." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:14 +#: ef4264b15f4a43e9bd1f8cbd08812001 +msgid "The new category's name." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:16 +#: 33ce503ce56e47ccb5a39480e2a788ff +msgid "The new category's position." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:18 +#: a435247eccb243ac905d04ca7c85813e +msgid "To mark the category as NSFW or not." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:21 +#: 997e5dc2ce0c405a80238b62e7946484 +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:26 +#: 73ae0571d02d466cac576ee0903571f3 +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:28 +#: ee95be99ea4940da9448b273185c78c0 +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:30 +#: 480b9252595a4ed4b1b95eb359604cbd +msgid "If position is less than 0 or greater than the number of categories." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:31 +#: c2f46b9891fe40ada146763803d531ed +msgid "You do not have permissions to edit the category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.edit:32 +#: c5809c792a1740ffb03db9155e4d695c +msgid "Editing the category failed." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.channels:1 +#: 4f08c36f4ffc40d4badff0801f721889 +msgid "Returns the channels that are under this category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.channels:3 +#: c90b3a756a4048228b28ad9566918ebb +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.text_channels:1 +#: 48caa2a52a4144049a492c2f01a7eff0 +msgid "Returns the text channels that are under this category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.voice_channels:1 +#: 8f45774d9356475e874aee31fda3247d +msgid "Returns the voice channels that are under this category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.stage_channels:1 +#: 7569c68aba4545afb640a92e84fb4953 +msgid "Returns the stage channels that are under this category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.CategoryChannel.forum_channels:1 +#: aa08e4cb2f0940eb8d70ec09350d030d +msgid "Returns the forum channels that are under this category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_text_channel:3 +#: 0bcafb6404fc4a5b9e418a9dcff0bc95 +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_voice_channel:3 +#: c15aa9c3711542d79aab55cbf96ac79d +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_stage_channel:3 +#: e44eb392ee574f87bf54665424c1f131 +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.CategoryChannel.create_forum_channel:3 +#: c39adbc2bbd645db8ff6528b2cacb1f0 +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:1 +#: 9bcfa7dd51134c0c971d4c30899cbb1e +msgid "Represents a Discord direct message channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:19 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:19 +#: 7241a3894f7647c99e02bf6dc83f92d7 +#: 7241a3894f7647c99e02bf6dc83f92d7 +msgid "Returns a string representation of the channel" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:23 +#: c5d76213f75c4f70b94ea6aa3082417c +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:31 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:29 +#: 07d26c6d19384c6f86ae530ce8a92741 +#: 07d26c6d19384c6f86ae530ce8a92741 +msgid "The user presenting yourself." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel:37 +#: aea97e16a41843c3a2d833abae3ca0a2 +msgid "The direct message channel ID." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.DMChannel.created_at:1 +#: cec5a91670184d8594a8168b49e63c77 +msgid "Returns the direct message channel's creation time in UTC." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.permissions_for:1 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:1 +#: 2e3a7be955924d12b02a8a67a62243ce +#: 2e3a7be955924d12b02a8a67a62243ce +msgid "Handles permission resolution for a :class:`User`." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.permissions_for:3 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:3 +#: 8a6bd8833e2e4eb1b5b91fec38efc1a7 +#: 8a6bd8833e2e4eb1b5b91fec38efc1a7 +msgid "This function is there for compatibility with other channel types." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.permissions_for:5 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:5 +#: 5bd63434d23d47ef9405d7cd8f3c0792 +#: 5bd63434d23d47ef9405d7cd8f3c0792 +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.permissions_for:7 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:7 +#: b7f135a3e450454281ecbc95203edfe9 +#: b7f135a3e450454281ecbc95203edfe9 +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.permissions_for:9 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:9 +#: 37714f0cf619431f859f64895e535122 +#: 37714f0cf619431f859f64895e535122 +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.permissions_for:10 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:10 +#: 0fd9fff73f23420c954048e6c55bbdae +#: 0fd9fff73f23420c954048e6c55bbdae +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.permissions_for:13 +#: 920a461af4a3409b80dd9b62fe593c74 +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.permissions_for:17 +#: 026abc8c403d492f8f529f5167663614 +msgid "The resolved permissions." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.DMChannel.permissions_for:18 +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:19 +#: 298831af02f147868ac4921ae73b06f5 +#: 298831af02f147868ac4921ae73b06f5 +msgid ":class:`Permissions`" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:1 +#: 587dfd4e44d94e0b83037e4ac8322626 +msgid "Represents a Discord group channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:23 +#: d0cd14f31ea34431802b867a7472c004 +msgid "The users you are participating with in the group channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:25 +#: 74146d0fcd3c407c9fc17f2a05fa99de +msgid "List[:class:`User`]" +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:35 +#: 7121cf484eba4970baaae8e6ee478918 +msgid "The group channel ID." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:41 +#: d5f6eb22ab8d44a981bfc691f53389f8 +msgid "The user that owns the group channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:47 +#: c7b8c4b9b857405a99a74a647c686d89 +msgid "The owner ID that owns the group channel." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel:55 +#: c8b1d45e983b4d1da2b160d717b4ff0d +msgid "The group channel's name if provided." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.GroupChannel.icon:1 +#: 30d7f57d10b64076a00032ca63ac35d0 +msgid "Returns the channel's icon asset if available." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:12 +#: 7c9677f5993443998c6a715088f59cc9 +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:15 +#: 2293199313574b40a04178d0acff383f +msgid "The user to check permissions for." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.permissions_for:18 +#: 0185dc41947d440b9deb847368a4ad47 +msgid "The resolved permissions for the user." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.leave:3 +#: 3d3e36f11c1c49d094ec86d55a8aa936 +msgid "Leave the group." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.leave:5 +#: 69e56047815d4e7f8cc89dc9d6a54e5a +msgid "If you are the only one in the group, this deletes it as well." +msgstr "" + +#: ../../../discord/channel.py:docstring of discord.channel.GroupChannel.leave:7 +#: dfeb38c2641d49a7b989615d03053502 +msgid "Leaving the group failed." +msgstr "" + +#: ../../api/models.rst:464 +#: 209e72461fff4eaeb235cc21aa5f1997 +msgid "Stickers" +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:1 +#: 3f954ebeebec484e93c4d6d0bc7d901f +msgid "Represents a sticker." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:9 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:9 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:9 +#: d7e569b01dcb4dcb8c79e2a0ca7cd9b0 +#: d7e569b01dcb4dcb8c79e2a0ca7cd9b0 +#: d7e569b01dcb4dcb8c79e2a0ca7cd9b0 +msgid "Returns the name of the sticker." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:13 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:13 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:13 +#: 9f3b6e968acc47f09ad051f70e94b1d1 +#: 9f3b6e968acc47f09ad051f70e94b1d1 +#: 9f3b6e968acc47f09ad051f70e94b1d1 +msgid "Checks if the sticker is equal to another sticker." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:17 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:17 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:17 +#: 8d7c7c56f12947279193129bd979cf00 +#: 8d7c7c56f12947279193129bd979cf00 +#: 8d7c7c56f12947279193129bd979cf00 +msgid "Checks if the sticker is not equal to another sticker." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:21 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:21 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:21 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:21 +#: e70e6c2d80344d49b442735fce54a425 +#: e70e6c2d80344d49b442735fce54a425 +#: e70e6c2d80344d49b442735fce54a425 +#: e70e6c2d80344d49b442735fce54a425 +msgid "The sticker's name." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:27 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:27 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:27 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:27 +#: 39127218ef194b2580d66ec98a1b28ef +#: 39127218ef194b2580d66ec98a1b28ef +#: 39127218ef194b2580d66ec98a1b28ef +#: 39127218ef194b2580d66ec98a1b28ef +msgid "The id of the sticker." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:33 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:33 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:33 +#: dffad35450864bf1ae2ea28d86a0cbe2 +#: dffad35450864bf1ae2ea28d86a0cbe2 +#: dffad35450864bf1ae2ea28d86a0cbe2 +msgid "The description of the sticker." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:39 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:39 +#: 6bad54d4ee5a461daf1e24145a5bf9b4 +#: 6bad54d4ee5a461daf1e24145a5bf9b4 +msgid "The id of the sticker's pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:39 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:45 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:45 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:33 +#: 5e0919e094cc42b68aecea6053e15de7 +#: 5e0919e094cc42b68aecea6053e15de7 +#: 5e0919e094cc42b68aecea6053e15de7 +#: 5e0919e094cc42b68aecea6053e15de7 +msgid "The format for the sticker's image." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:41 +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:47 +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:47 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:35 +#: 0947335f49564c9a9845a931f348d155 +#: 0947335f49564c9a9845a931f348d155 +#: 0947335f49564c9a9845a931f348d155 +#: 0947335f49564c9a9845a931f348d155 +msgid ":class:`StickerFormatType`" +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.Sticker:51 +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:39 +#: eb58efe02ae4445b8b7404efa57f07f4 +#: eb58efe02ae4445b8b7404efa57f07f4 +msgid "The URL for the sticker's image." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.Sticker.created_at:1 +#: b017f2694c78454e89e712049f8fc4c0 +msgid "Returns the sticker's creation time in UTC." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:1 +#: d4bf0a56f70a4156b6ffafbaf1a1afd1 +msgid "Represents a sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:9 +#: 7c3867828aa74c04afe3890251c409ad +msgid "Returns the name of the sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:13 +#: 2e25f7b511344bf0ac7e847f84491b10 +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:17 +#: a01a06b8cb664d62af6c4e831878f7a3 +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:21 +#: ae74f28032104407a1c56df0f1ad5552 +msgid "The name of the sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:27 +#: ca4212b8b0034d669bd2d68773ad42bb +msgid "The description of the sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:33 +#: 2fa56ee1b62f4cab80779d0358130504 +msgid "The id of the sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:39 +#: 3464c8109245401db50402e242ad469c +msgid "The stickers of this sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:41 +#: 12af66b1cde54e739d49c8abdd86adc7 +msgid "List[:class:`StandardSticker`]" +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:45 +#: 7e61663b01f54ce58a991cb28b24a3fb +msgid "The SKU ID of the sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:51 +#: e5656f2a93a04683b9380630ab8ea347 +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:57 +#: 5429b72888314c36b9c4115c199cb57e +msgid "The sticker used for the cover of the sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerPack:59 +#: d23dcc1a3c8f460291e14581057aa60f +msgid ":class:`StandardSticker`" +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.StickerPack.banner:1 +#: d4b50052f21143d0b34a3b0349704a5e +msgid "The banner asset of the sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:1 +#: 7d3ec7ac0f5d4d02a92463f865795cac +msgid "Represents a sticker item." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:9 +#: aeebdd818d504901bd5f56b41ddea95e +msgid "Returns the name of the sticker item." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:13 +#: 92d1d9b5f6f549d7a52b697301991631 +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem:17 +#: db2f4c0ca4824bed9036a3918862e12a +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem.fetch:3 +#: bc424429bee740d58c7f5c49268a1a41 +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem.fetch:6 +#: aab251a927704361a8eb0a7bac7c1fec +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StickerItem.fetch:8 +#: 53245ab104a4472a9bbd9315097855bd +msgid "Retrieving the sticker failed." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:1 +#: d438c58c4df44c4cb5fbd8aebc4006ac +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:51 +#: 20f99ef51faa468db4bb70032e2cdcff +msgid "A list of tags for the sticker." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker:57 +#: 00a3cf8e2d85423291148ef40b05a77c +msgid "The sticker's sort order within its pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker.pack:3 +#: a4c42c93c98c4f6ea491f30ed70e3170 +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker.pack:5 +#: 73939f1df54b4f518d868e7aa7a100da +msgid "The retrieved sticker pack." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker.pack:6 +#: 301b3051d4f44a809194f97c0341c309 +msgid ":class:`StickerPack`" +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker.pack:8 +#: 74bf6b15cbab4cccbe0810c233d03692 +msgid "The corresponding sticker pack was not found." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.StandardSticker.pack:9 +#: ae617817e9644df1884c000f7b6bb2a1 +msgid "Retrieving the sticker pack failed." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:1 +#: 2211977338284dabb4ddd3a5298bc2ee +msgid "Represents a sticker that belongs to a guild." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:45 +#: 008d75de22e74fcbb1201a5d468699bf +msgid "Whether this sticker is available for use." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:51 +#: bf5e70691eb048d29e5620a2952c0e85 +msgid "The ID of the guild that this sticker is from." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:57 +#: 963a7a7f1b5a409987d9b1e2032a1e60 +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker:64 +#: 33b4d3cc6f954c71a16ce001c71ed4bc +msgid "The name of a unicode emoji that represents this sticker." +msgstr "" + +#: ../../docstring of discord.GuildSticker.guild:1 +#: 32601811227a49d499e3c7a5322cf44b +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:3 +#: 630cb9a5fcdb4f388ddfc0cde1b04c9d +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:6 +#: 2c3c71774c97407c95bf4470d6d5e978 +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:9 +#: 67bff4eece154a76ae3986ffd8f99287 +msgid "The sticker's new description. Can be ``None``." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:15 +#: 74ac0f952f264e6b857c92b03be46775 +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:18 +#: a88be413ad224db0a16c5d0076d53205 +msgid "The newly modified sticker." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:21 +#: e271c8e5775b42dabbd868b1f3142981 +msgid "You are not allowed to edit stickers." +msgstr "" + +#: ../../../discord/sticker.py:docstring of discord.sticker.GuildSticker.edit:22 +#: 417424ce11a344fba8235344e4fd0d5e +msgid "An error occurred editing the sticker." +msgstr "" + +#: ../../api/models.rst:492 +#: fa3209921266443fb19f43b396c4c0a6 +msgid "Events" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:1 +#: b79f190d2d0948f089814f349c0d9261 +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:7 +#: f59bbb3db9c544e1ad828a596a22de9e +msgid "The action that was executed." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:9 +#: 21fa4c5e146c472590b1421c4f265e69 +msgid ":class:`AutoModAction`" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:13 +#: 9d152ca0b57c4831a63ac4f3ba694587 +msgid "The ID of the rule that the action belongs to." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:19 +#: 0938f0fdbfc14cbfb9a98c6e970f09f0 +msgid "The category of trigger the rule belongs to." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:27 +#: 5903ec8f839b4c2d9dc2d902b5329cf4 +msgid "The ID of the guild that the action was executed in." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:33 +#: c1359aa34c5d40eaac3b6c9def40e077 +msgid "The guild that the action was executed in, if cached." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:39 +#: 31088a4e5f2646258619cfbe0fe78c89 +msgid "The ID of the user that triggered the action." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:45 +#: 22f1087adfc24aa8a6944aef5c2cd09d +msgid "The member that triggered the action, if cached." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:51 +#: 58e17c63ce814fd58836e40f1411127e +msgid "The ID of the channel in which the member's content was posted." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:57 +#: dc0207d3dd944e11bcd1577a7aa4e96d +msgid "The channel in which the member's content was posted, if cached." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:59 +#: 376755f7365b4605974de6a4391d2d09 +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:63 +#: 906da4869ca74857aa12c64689988056 +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:70 +#: dc4532a7e5b34a9ab4851febbf01cbf2 +msgid "The message that triggered the action, if cached." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:76 +#: 3e754965c0ba4ad9b0aed65749f28b2f +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:83 +#: 4c3d95bc6e42436cbc78c2640f190d2f +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:90 +#: c58f51b1d6334159a2a60f2d322e8d45 +msgid "The content of the message that triggered the action." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:96 +#: 6ffde4d983ac42b0969d9ce742636544 +msgid "The word or phrase configured that was matched in the content." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:102 +#: bde7642f0ba14c51bfb2f81f07a2932e +msgid "The substring in the content that was matched." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.AutoModActionExecutionEvent:108 +#: b6afb38f8d2e49ebb42b29492db03440 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:1 +#: 499fc1b5ce724e788a72c35bf2ce080c +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:7 +#: 6aefe6592d3e481bb194f15c9aff3208 +msgid "The channel ID where the typing originated from." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:13 +#: 14b6274d91774c6eaae92facfb26f9d8 +msgid "The ID of the user that started typing." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:19 +#: 7162af01584f4ceca217802b5fd67f12 +msgid "When the typing started as an aware datetime in UTC." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:25 +#: 074d97d9348f4fb69e34d69ea0c05149 +msgid "The guild ID where the typing originated from, if applicable." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:31 +#: 9d2a1fd74db74e858c41d60042891f83 +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawTypingEvent:37 +#: 68202a289cc64633add155d110e551b5 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:1 +#: 083fd25a4caf4f438e18f06ecfc329a3 +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:5 +#: 591b40b272cb4d6fa4456a1483cd349d +msgid "The channel ID where the deletion took place." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:11 +#: cba8549241ae4f2b8ec7e2b036915985 +msgid "The guild ID where the deletion took place, if applicable." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:17 +#: b885728f638f4102888b355dd2fde5bd +msgid "The message ID that got deleted." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:23 +#: 51825d7c41ac41bc9bd7aaf54e8731c5 +msgid "The cached message, if found in the internal message cache." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageDeleteEvent:29 +#: 80e8bcebb6c846b9a94201322d201f11 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:1 +#: 9758fa2c23934519aa0a31b619561841 +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:5 +#: 95fdfdb30b0b44c0ad31616a5630431b +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:7 +#: 2c4db09f55444e179276a27886c53ab1 +msgid "Set[:class:`int`]" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:11 +#: 9e257c61cf59469dafe62914243b17ab +msgid "The channel ID where the message got deleted." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:17 +#: f5e94fb1e9b74e7cb97320acf2b8fd2d +msgid "The guild ID where the message got deleted, if applicable." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:23 +#: 8eab388727794972a7906a9c73529e53 +msgid "The cached messages, if found in the internal message cache." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:25 +#: 859990ca3d474b82ab8a25c709399af3 +msgid "List[:class:`Message`]" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawBulkMessageDeleteEvent:29 +#: df91c3ca90284cba833f8d2303683970 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:1 +#: 872290794a8b426ea016c6cb478edf1c +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:5 +#: fa312fddcc7640858f6f5dc198669a1a +msgid "The message ID that got updated." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:11 +#: 07c75520606b4ce8b11422018fe961f4 +msgid "The channel ID where the update took place." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:19 +#: 6c11263af97b4adf9f96d3420215db95 +msgid "The guild ID where the message got updated, if applicable." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:27 +#: b265740494834d0a910c37f8097fff5a +msgid "The raw data sent by the `gateway `_" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMessageUpdateEvent:33 +#: 262dc5905556459587d9ae798ee82024 +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:1 +#: ffe7a35941da4ee0ba78d8c78549e0c7 +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:6 +#: 7d5dc4e9d47e4f288265ecc59e7a8ee7 +msgid "The message ID that got or lost a reaction." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:12 +#: 79c663166bf54130b292c2b3b0c02da7 +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:18 +#: 349706d55fec46638e81b043bb480718 +msgid "The channel ID where the reaction got added or removed." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:24 +#: 1a761539da4e42edb15d580870eea3e2 +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:30 +#: 109ca37f75c440149342c11e3d196458 +msgid "The custom or unicode emoji being used." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:36 +#: 79d0117cef804316937d5fd65887a66a +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:44 +#: d59b3f7188164f7690a5236089a3edd9 +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:60 +#: 3d57daf4600347369012e4666cfa9e32 +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:45 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:63 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:69 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:45 +#: 6de13fa5309f426d97885e856de66c2d +#: 6de13fa5309f426d97885e856de66c2d +#: 6de13fa5309f426d97885e856de66c2d +#: 6de13fa5309f426d97885e856de66c2d +msgid "Optional[:class:`list`]" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:67 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:43 +#: a0ae038460cc4afeb1f55fc31edad93b +#: a0ae038460cc4afeb1f55fc31edad93b +msgid "Alias for :attr:`burst_colours`." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:73 +#: 8be7e177048b48c58c5069f7bace65bb +msgid "The type of reaction added." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:75 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:51 +#: be68507029b84b93bc3189b87e423c23 +#: be68507029b84b93bc3189b87e423c23 +msgid ":class:`ReactionType`" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionActionEvent:79 +#: 57fcb3b89ea343e49b6121016bbf056a +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:1 +#: 9c55b78745534bf3908765bfe80b3a96 +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:7 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:5 +#: 5b0c86bf3fe74bc59f7526bb295a5f6b +#: 5b0c86bf3fe74bc59f7526bb295a5f6b +msgid "The message ID that got its reactions cleared." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:13 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:11 +#: 3fc3b9a31e0843e99300bef5908239ae +#: 3fc3b9a31e0843e99300bef5908239ae +msgid "The channel ID where the reactions got cleared." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:19 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:17 +#: ed2e7768cefa4a21841b18d806ae7e22 +#: ed2e7768cefa4a21841b18d806ae7e22 +msgid "The guild ID where the reactions got cleared." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEvent:23 +#: 00c10feb478642c796ce040922822aa6 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:1 +#: 4f6f4cd8c25a4c269e81552330a5af16 +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:25 +#: e93ddf7f5f2f4108a62c97c24c102d5f +msgid "The custom or unicode emoji being removed." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:31 +#: e0a6e4a865e6478f984e5c7a61eca7bf +msgid "Whether this reaction was a burst (super) reaction." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:37 +#: 8da8ed8c042d43a09d679902449a5d5c +msgid "The available HEX codes of the removed super reaction." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:39 +#: 6c4c75d113254029b77ba850debfcfd3 +msgid ":class:`list`" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:49 +#: 248f1f73e30940a49c621a94e90983d6 +msgid "The type of reaction removed." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawReactionClearEmojiEvent:55 +#: 1b350547602f48838cf645fbc4a9540b +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:1 +#: ae35ffa2bd784c71850e872f6dc0176f +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:7 +#: e3281dac58fa4334a67caf80cb45df51 +msgid "The ID of the integration that got deleted." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:13 +#: 9326171cc2334890a65c282bf5939c5c +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:19 +#: f5b124b805c5449a8cc33744ded015d9 +msgid "The guild ID where the integration got deleted." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawIntegrationDeleteEvent:25 +#: 74b0025e77e44f66aa7e45c9924f9b43 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:1 +#: f71bc55131744337a32f55761bd384ae +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:7 +#: ed66c4fafdab48dfb26fdc88526903cb +msgid "The ID of the thread that was deleted." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:13 +#: 80173e2d13a74455851c296207108a67 +msgid "The channel type of the deleted thread." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:15 +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:15 +#: c56a434ae2034ed1a139116a20d9e828 +#: c56a434ae2034ed1a139116a20d9e828 +msgid ":class:`discord.ChannelType`" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:19 +#: c942d9a66ae943129c00dacecda6bda0 +msgid "The ID of the guild the deleted thread belonged to." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:25 +#: 5e55c49746e44da78344b275882d7dab +msgid "The ID of the channel the thread belonged to." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:31 +#: 52970a93b1f7408b8648ba6d7da2481c +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:33 +#: 6e59f1f4561a4ff4a56f3257e62223a3 +msgid "Optional[:class:`discord.Thread`]" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadDeleteEvent:37 +#: b14b3e97de234e28b4104e5a613cbb95 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:1 +#: 8abc932b7db9477aa37671ad8555a946 +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:8 +#: 7b3ca844c2e4433ca2f6f4532db57804 +msgid "The event ID where the typing originated from." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:14 +#: 2589e072a10945fd91844cf562e522f8 +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:20 +#: fc2d5f7de1334ecfa878e4a54efbe2d7 +msgid "The guild where the subscription/unsubscription happened." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:26 +#: 6f7667c231954a3b85809427b6c178ce +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawScheduledEventSubscription:33 +#: db759799a9584ace958e5d19d8bda3a8 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMemberRemoveEvent:1 +#: 57f6174c02b04d4f89daad19a99de172 +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMemberRemoveEvent:7 +#: c043b937892d446e8be670d14755b111 +msgid "The user that left the guild." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMemberRemoveEvent:9 +#: e9afa44e8d8f48eba0a9330f7bb79265 +msgid ":class:`discord.User`" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMemberRemoveEvent:13 +#: f5d1f7b186934cb59089bb69614223e3 +msgid "The ID of the guild the user left." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawMemberRemoveEvent:19 +#: 82c67a590a6f41b5912e8b043427212a +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:1 +#: 50e584b568b144d8ab8195b6f228fdb1 +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:7 +#: 6825333ca162418ab57606ff1740b8dc +msgid "The ID of the updated thread." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:13 +#: 18e0d2ab7dc1463891dec1fa3cf9a37f +msgid "The channel type of the updated thread." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:19 +#: 59e5a8efef2346bbb2ee80ea21c011a7 +msgid "The ID of the guild the thread belongs to." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:25 +#: 619f2bcdd29345aa865973f05c3a9648 +msgid "The ID of the channel the thread belongs to." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:31 +#: 56d86a0d67224029bf5c3db6a2af6a27 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:37 +#: 4852d50180674582ac786b3068cb2017 +msgid "The thread, if it could be found in the internal cache." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadUpdateEvent:39 +#: 150d503109894b5b87c17829594f7b55 +msgid ":class:`discord.Thread` | None" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:1 +#: a64458b6da9e449597a58d378bf385d3 +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:7 +#: b031a4ae017f4ad49cba8881b024de8e +msgid "The ID of the thread that was updated." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:13 +#: b0e8229bc54c408f913f222cb0c8db77 +msgid "The ID of the guild the thread is in." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:19 +#: cd08b36b1ca744f0bfe69607abde1f45 +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawThreadMembersUpdateEvent:25 +#: a30e73121303499994de20efcdb448ea +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:1 +#: 1655071d2beb439380bead37316806c7 +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:7 +#: 83c9b3e36e7d46d79ffc9f4d380a4e5d +msgid "The action that was done." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:9 +#: 3ed7e6ec47a54369b7d127872cd53b81 +msgid ":class:`AuditLogAction`" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:13 +#: 3ed3876549944886804d62c1af6c5744 +msgid "The entry ID." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:19 +#: c71f08f112ca4b1a8bbccbaf514cdac1 +msgid "The ID of the guild this action came from." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:25 +#: 7738f7e468004076bc8ec1e83b91154f +msgid "The ID of the user who initiated this action." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:31 +#: 0f17e043ff2f4e349a147254f66412cc +msgid "The ID of the target that got changed." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:37 +#: 8b94f30533de478d925794511806a750 +msgid "The reason this action was done." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:43 +#: 18a298908f194ee0ab2a9223ede03164 +msgid "The changes that were made to the target." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:49 +#: 1a572cf26ed44102b41930008de5b09b +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:54 +#: 56c299547cc748adba656f35026ca822 +msgid "Any" +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawAuditLogEntryEvent:58 +#: eac6487fc7d14ee89b983b7dd83f84f8 +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:1 +#: 1cde686644bc47ec941a3e368aa2874a +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:7 +#: 5fffb927d5c44084b4bff9b07be28069 +msgid "The channel ID where the voice channel status update originated from." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:13 +#: 17207373f8ab4b6084c706e3f9052280 +msgid "The guild ID where the voice channel status update originated from." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:19 +#: 285d830f117547f699bbf453aa4268b7 +msgid "The new new voice channel status." +msgstr "" + +#: ../../../discord/raw_models.py:docstring of discord.raw_models.RawVoiceChannelStatusUpdateEvent:25 +#: c6e09cd5881145a5b95550e3f54faf4f +msgid "The raw data sent by the `gateway `_." +msgstr "" + +#: ../../api/models.rst:577 +#: eae4e206e45a463f80727bc3e3eee504 +msgid "Webhooks" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookGuild:1 +#: 657eceaa87cd4bc9b144d286afe67c5e +msgid "Represents a partial guild for webhooks." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookChannel:3 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookGuild:3 +#: 0e1a2663052f464386761f009fafc287 +#: 0e1a2663052f464386761f009fafc287 +msgid "These are typically given for channel follower webhooks." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.PartialWebhookChannel:1 +#: 63fdae50745f4e43bf58c07d12c4ed00 +msgid "Represents a partial channel for webhooks." +msgstr "" diff --git a/docs/build/locales/api/sinks.pot b/docs/build/locales/api/sinks.pot new file mode 100644 index 0000000000..80b39b1e0f --- /dev/null +++ b/docs/build/locales/api/sinks.pot @@ -0,0 +1,223 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/sinks.rst:4 +#: da5ec43759ab47fdb55072ef2d386b77 +msgid "Sinks" +msgstr "" + +#: ../../api/sinks.rst:7 +#: 69ccca52dd344eba81f86600350345de +msgid "Core" +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Filters:1 +#: 0142ecf442b940a78a28dc08a1ce93cb +msgid "Filters for :class:`~.Sink`" +msgstr "" + +#: ../../api/sinks.rst:0 +#: 378afe544b724d8f90393291fdc85369 +#: fab663f2aebe45c48cdc3b54b4e31005 +msgid "Parameters" +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Filters:5 +#: 0703f5343d364e319360f8c62ab449e0 +msgid "Container of all Filters." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Sink:1 +#: eb6c1cd03ec9420db458b64f82b0e54d +msgid "A sink \"stores\" recorded audio data." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Sink:3 +#: f84d8b866bf9422c8920ca48f7442fd7 +msgid "Can be subclassed for extra customizablilty." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Sink:6 +#: 46f6384351cd4250abdc80e42a256c2f +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Sink:10 +#: 7e2733f87658404cba7b6fe06dd64f29 +msgid "just replace the following like so: ::" +msgstr "" + +#: ../../api/sinks.rst:0 +#: 3a24bec2087b4fd2828ce8bcf7bfcce6 +#: e7eb3ded3c57413c9ee86ee3409252f9 +#: 817268b268934544944a1cdba3c85456 +#: 98ec647e22e34424b43cef44e33d1f5d +#: 0132a5cc6ea140e993f0c67c578b8564 +#: e41d37b52642478ba8b5960322091c62 +#: 49d6e90fbe7345e296ddb91c800584da +#: db671b98041f42c69d09637b747da230 +#: a75ba41f4c624334b98deb28f10ff722 +#: 77e45956053343f4a15cfc2f1834d79a +#: 7640928653394b188296110e0ec788fb +msgid "Raises" +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Sink:20 +#: 2750e2c115da40ecaf706f78f45897a8 +msgid "An invalid encoding type was specified." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Sink:21 +#: ../../../discord/sinks/m4a.py:docstring of discord.sinks.m4a.M4ASink.format_audio:3 +#: ../../../discord/sinks/mka.py:docstring of discord.sinks.mka.MKASink.format_audio:3 +#: ../../../discord/sinks/mkv.py:docstring of discord.sinks.mkv.MKVSink.format_audio:3 +#: ../../../discord/sinks/mp3.py:docstring of discord.sinks.mp3.MP3Sink.format_audio:3 +#: ../../../discord/sinks/mp4.py:docstring of discord.sinks.mp4.MP4Sink.format_audio:3 +#: ../../../discord/sinks/ogg.py:docstring of discord.sinks.ogg.OGGSink.format_audio:3 +#: ../../../discord/sinks/wave.py:docstring of discord.sinks.wave.WaveSink.format_audio:3 +#: 01169f852b5a4038ae7d519f251930b4 +#: 45b9ef0215544a9d860e550bc4ccb921 +#: 4e7509b88ea04946bc020fc4de77c0b6 +#: 1588985c20834c0ba74aaef6231a58bd +#: b356e78d934c4cd9993fc61cbe1af4e9 +#: fc1928b8934a4555af9965d0c2317ea2 +#: 7d38b47a020b40cdb95c6af18cc1d6d1 +#: bea313c3e6fa42beba3ab64e756ce223 +msgid "Audio may only be formatted after recording is finished." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Sink.get_all_audio:1 +#: ce7e04b04b104eaf98b124fe959e2088 +msgid "Gets all audio files." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.Sink.get_user_audio:1 +#: 377a9171544b4e1a90582106b504271e +msgid "Gets the audio file(s) of one specific user." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.AudioData:1 +#: 8c98ad6ace2a490eb332d994e20ee698 +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.AudioData.write:1 +#: 691bcb7057ff4b668a6924f1567447bb +msgid "Writes audio data." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.AudioData.cleanup:3 +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.AudioData.write:3 +#: c514847e5b65402d9c119e0fba871115 +#: 156dcea554294f688d2303b360e8eeb5 +msgid "The AudioData is already finished writing." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.AudioData.cleanup:1 +#: 8878b11f4bb44242b182551f312611e0 +msgid "Finishes and cleans up the audio data." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.AudioData.on_format:1 +#: bcc4d0731438457bb3b42134f2de664d +msgid "Called when audio data is formatted." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.AudioData.on_format:3 +#: 4328bd3adc894e768723c4be7aa942e0 +msgid "The AudioData is still writing." +msgstr "" + +#: ../../../discord/sinks/core.py:docstring of discord.sinks.core.RawData:1 +#: 570b9f01ec964f44a6f4e780cd307291 +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "" + +#: ../../api/sinks.rst:23 +#: 169639fab74b449ba82498b86bb44876 +msgid "Sink Classes" +msgstr "" + +#: ../../../discord/sinks/wave.py:docstring of discord.sinks.wave.WaveSink:1 +#: 433ebcc0d30f4d9fbd220456a7abbbeb +msgid "A special sink for .wav(wave) files." +msgstr "" + +#: ../../../discord/sinks/m4a.py:docstring of discord.sinks.m4a.M4ASink.format_audio:1 +#: ../../../discord/sinks/mka.py:docstring of discord.sinks.mka.MKASink.format_audio:1 +#: ../../../discord/sinks/mkv.py:docstring of discord.sinks.mkv.MKVSink.format_audio:1 +#: ../../../discord/sinks/mp3.py:docstring of discord.sinks.mp3.MP3Sink.format_audio:1 +#: ../../../discord/sinks/mp4.py:docstring of discord.sinks.mp4.MP4Sink.format_audio:1 +#: ../../../discord/sinks/ogg.py:docstring of discord.sinks.ogg.OGGSink.format_audio:1 +#: ../../../discord/sinks/wave.py:docstring of discord.sinks.wave.WaveSink.format_audio:1 +#: 285ad63cdb584ebd94d7e557e5314619 +#: 08a57363e08c4ea6a322cda7ca882dd2 +#: 665fa3dc297f4f22b0369bd5cbd3b255 +#: f5b24a38289c496a9f4d55948337d7b2 +#: 6e115579af2240c3ada2216ac756d626 +#: c5088f6657d347dab6bb07ea09dccd7d +#: 8edc17c4981b4fc6881cb2c4ccca081d +msgid "Formats the recorded audio." +msgstr "" + +#: ../../../discord/sinks/m4a.py:docstring of discord.sinks.m4a.M4ASink.format_audio:4 +#: ../../../discord/sinks/mka.py:docstring of discord.sinks.mka.MKASink.format_audio:4 +#: ../../../discord/sinks/mkv.py:docstring of discord.sinks.mkv.MKVSink.format_audio:4 +#: ../../../discord/sinks/mp3.py:docstring of discord.sinks.mp3.MP3Sink.format_audio:4 +#: ../../../discord/sinks/mp4.py:docstring of discord.sinks.mp4.MP4Sink.format_audio:4 +#: ../../../discord/sinks/ogg.py:docstring of discord.sinks.ogg.OGGSink.format_audio:4 +#: ../../../discord/sinks/wave.py:docstring of discord.sinks.wave.WaveSink.format_audio:4 +#: bee146d8a4ce454ca6ab676a1f751bdd +#: 0d6886be966b465182e4ac7708898391 +#: b4bafc34899b43ada086ab5e6ca5064b +#: 6bad2ce294a342759f75493790b102b5 +#: 47a74f69bb6540ef9f21dfaa43684d36 +#: f1da7192debb4976a99f255ff8f3d860 +#: 9fa092f5912b4cc794dc15ec1615bb3c +msgid "Formatting the audio failed." +msgstr "" + +#: ../../../discord/sinks/mp3.py:docstring of discord.sinks.mp3.MP3Sink:1 +#: d0b8264ce4284da5b4f00d3bd6fc0b27 +msgid "A special sink for .mp3 files." +msgstr "" + +#: ../../../discord/sinks/mp4.py:docstring of discord.sinks.mp4.MP4Sink:1 +#: 12c1601a144f47c2b658cdb1638c2a1a +msgid "A special sink for .mp4 files." +msgstr "" + +#: ../../../discord/sinks/m4a.py:docstring of discord.sinks.m4a.M4ASink:1 +#: ec93398e6fab40c3963078ee6efec8fd +msgid "A special sink for .m4a files." +msgstr "" + +#: ../../../discord/sinks/mkv.py:docstring of discord.sinks.mkv.MKVSink:1 +#: caa9e491104c47bf87dbe04c48e5107d +msgid "A special sink for .mkv files." +msgstr "" + +#: ../../../discord/sinks/mka.py:docstring of discord.sinks.mka.MKASink:1 +#: 90d4defae7c241bbb26aeec83cfe661e +msgid "A special sink for .mka files." +msgstr "" + +#: ../../../discord/sinks/ogg.py:docstring of discord.sinks.ogg.OGGSink:1 +#: 3bf2e13e0ec743b19e3d9c47ef3fc435 +msgid "A special sink for .ogg files." +msgstr "" diff --git a/docs/build/locales/api/ui_kit.pot b/docs/build/locales/api/ui_kit.pot new file mode 100644 index 0000000000..65e400af14 --- /dev/null +++ b/docs/build/locales/api/ui_kit.pot @@ -0,0 +1,1072 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/ui_kit.rst:4 +#: cef9c4161ab944be895b73e34a1e959e +msgid "Bot UI Kit" +msgstr "" + +#: ../../api/ui_kit.rst:6 +#: 114eb7a552d7423185c807d0039a9d70 +msgid "The library has helpers to help create component-based UIs." +msgstr "" + +#: ../../api/ui_kit.rst:10 +#: 795a5badeccd4169beae11dbdaee8acf +msgid "Shortcut decorators" +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:1 +#: 7169fb06bff6465a96fab24a71cd6cdc +msgid "A decorator that attaches a button to a component." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:3 +#: 0a98301d144642f3af77faae9044333b +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:9 +#: a581c27589c34afeb3bc17c4b0000164 +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "" + +#: ../../api/ui_kit.rst:0 +#: beefc8c24f164c63a80136a8c5e5e925 +#: 53499c7c38dd43799b5780dfd21b3b02 +#: de7bcf10bc5947e99f4931c26c17c8c2 +#: ca073ce612814d8abbb2857a4f7c31cc +#: 68f0e04b65fd43ccad6348c57bad93ba +#: f4f99caceafc4e0b857149cb71c15de8 +#: ffbafb20b66d44b193637453dd85a141 +#: 7075cd32ada643e1afe2b1b1e2540a78 +#: 0fde91581db244e9a38eaa1298517198 +#: e6eacbc6685647afaa993a9e034c2c9e +#: 8ca8779b464a40069954fb8439451723 +#: 196110ed1f174bbc90e8e7f376d23b2d +#: 31274878cbf8429eb4cbbaab562f687a +#: 87b1f760ee304fdcb8d3158dad1f9687 +#: 26b856f134bd43d89d7bd04e9508cec1 +#: 99b19d97768746f6aad0d4c9f04602fc +#: 89289390586d4a4cab63303506125e33 +#: 7c40b29c39174637a4378923ab36d01b +#: 0eb33b6aec414778a7e06b676fd526f3 +#: ee24240ba8fe4d32b79a3dbd84647890 +#: 16f62a630b6c42649b13ec913a13f066 +#: 402dffb461e445cba56e4e1afcc98a38 +#: a32d29d036704b3aadf3893a40c1fd58 +#: dce921ab81d64865ba38df542fa4386f +#: dde97b21e9124139901056550166fb09 +#: d1dc3c0514e641c29d06f205b7feefc9 +#: db02240fc27a4c479381b1273800b086 +#: bb7676b81f53410c845e5d60a69a03a4 +#: 3310aa20be5a488690708eb9e3dd0fcc +#: 7f8342f4fa72464f92c9c3cffcfcbda4 +#: a5c25727efd240d7b3b1f5647ed24ce6 +msgid "Parameters" +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:15 +#: e96eba4f6dc741feb44abc732fe9b174 +msgid "The label of the button, if any." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:18 +#: 180c7d621c86482cb6b43ceaf4fde368 +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:22 +#: ac7a0de67602471fb341ca7230448a62 +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:25 +#: 48333a30942940d4bf4fad7e72e2aa33 +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:28 +#: c138b390419e4f4194bf27c7e5da9e82 +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.Button:28 +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:32 +#: 7226675e37a14baba12bf447b1d4a11e +#: c7feafdb9ed34fceaaf137f89a8fad12 +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "" + +#: ../../api/ui_kit.rst:0 +#: e5ecb31082e14aa3861296ff5854437a +#: e6251a3992ae4babb7e79b06a31ea11d +#: f041071e4093433a9cac0a03ce5ab140 +#: f8f0d423ecf24626a1247f45667e5bfd +#: 9764068d3bfa4df68a9821f82609e559 +#: d36c9dfb2e944d03935e93d529a40227 +#: b1890cceac0449368e45eca0e3cc227a +#: 69ca8cba0b9a411d8e19abd29f7f1ed4 +#: a0b7807032194a53a18ea1511e4f67d3 +#: e6517eae45a3404e899c0bdfabdf3aea +#: 79d2f21642c04d77b8bce27656a52f8f +#: e1405bf6c4334211ba770e0674f150f9 +#: 74e20e420edc4715b4995ab7938b2023 +#: ae8f754f5d1a446e866e9443cd10081d +#: 4847b534d3c14deba4061b428620b95b +#: 76d49544901349599337569d52510ee9 +#: 48dd419af0df473f93e5e713b7748656 +#: 9b9d0befc3c64fb9bae98aba514956f0 +#: f360a94646744e36b9934341c7885ed7 +#: b96d252eb71246cba2ed7ce0fa575e98 +#: 4d44fb14e809440e8f7f915460300e06 +#: 67269ff08c06462b82bff968f744feea +#: f66852d0a07246dbb596fa01e203d767 +#: 787aeffb30b548a38cbe20f0a065de37 +#: 5354adfbc0cb4f498d3e07dc0ed3d63c +#: c8632725e7ca4cb18d9ec87f8986c8b6 +#: 49a56da0430b431f8c729950b9c55006 +msgid "Return type" +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.button:39 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.channel_select:19 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.mentionable_select:17 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.role_select:17 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:55 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.string_select:19 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.user_select:17 +#: 8b2126220f0a40489f72fbb6541865ab +#: 9d801d79daf4416b8d3f256723d14e9e +#: bedc28aed63d4c35821a3df7a988ceba +#: da524bc45bed4882b24144a6de72d3b3 +#: fd120175bb8541ecb5ca7146883b6156 +#: 15a54ae1a66549eab609150b6dc69f6b +#: 2e9d4fbae0e54c02b65dcc5c67eccab2 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:1 +#: 23ebf0c41e1a46c9b96eaaed21d7b029 +msgid "A decorator that attaches a select menu to a component." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:3 +#: 00b2b61db8b84ae2b5053febef93fed2 +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:7 +#: 1a447e447e4947d4ab6031c89b6fa2c8 +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:12 +#: 5178e617c8584c74ae12204643b4cc51 +msgid "Creating select menus of different types is now supported." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:16 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:15 +#: d47cd55a76154d2c8296ed8d52f4fe49 +#: acf48d755e5d47f7b645a78fdecb9b9d +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.Select.placeholder:1 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:26 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:21 +#: cf7265a79f204a609bac4e3eeac79c31 +#: 3e3120d48b4f41869c6ac4d4a11ae788 +#: 46f50cc5d1d241dea802bc7c51e5b497 +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:24 +#: c98d6ddb36f4423f855f14a8bcaa452a +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:48 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:28 +#: c01d219ac90b445594257aa88fe409ff +#: 4bbd3f8002fd49ddb09b40d45fb48efe +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:35 +#: 3ce98d78639e4b00b541949c1579c3e3 +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:33 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:39 +#: 79d61d2476ba400ca5d40331e2c47372 +#: 796b9050ceed4aeba3ead0a0b4cd7d4d +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:43 +#: eb85122a049d4e5ba8a1ac9fdbd6ee30 +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:47 +#: 21bc9c9ab88c428699fe8f30713d0445 +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.select:52 +#: b1d29705ace44ca3872c15046d01f845 +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.string_select:1 +#: 17e132379dad4798922af2a9271f7996 +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.user_select:1 +#: 98d5b30855cc484ca89f0acdd2e1c1e7 +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.role_select:1 +#: 69ea07d124aa4d38b3ba835ae1545eac +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.mentionable_select:1 +#: 27e5bbcab67147e5b4a8d3f3dd62addc +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.channel_select:1 +#: 4a0b40ad90df4fbb98a435ebcb063111 +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "" + +#: ../../api/ui_kit.rst:34 +#: e335cba9c74a4f6186149901c830873d +msgid "Objects" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:1 +#: 51e6a1596c4a449f9a81c52ebddaa39e +msgid "Represents a UI view." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal:3 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:3 +#: 16b83c8a92c745c8b399ffc3a72f0772 +#: ef81e6ce764b40beb46714a774f98ce0 +msgid "This object must be inherited to create a UI within Discord." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:8 +#: 2f917e72a1924778a62c52611093344a +msgid "The initial items attached to this view." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal:19 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:11 +#: 807b8f486b1846ca85e2c78b609a287d +#: 447ce0fa50bb4a4b82ed7747b529452c +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:17 +#: 880d25828d79404c9b741921ea68a63e +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:0 +#: 480fbf0b10fa416d83a78fe20327dbce +#: c0f3dd62da99471bbbb9ef04603415f0 +#: 3bb28eba0b6e4a33bf70e6ec23f7f0ce +#: 869c217ef1fb4f1bb558c0c275307664 +#: 90ac82a2463949f8a34cca59e7616985 +msgid "type" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:20 +#: 974b8aac4f3643038bdeb783f44ea94d +msgid "Optional[:class:`float`]" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:24 +#: 8ffab86883334a96855bfa18b8fa7750 +msgid "The list of children attached to this view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:26 +#: 3682451fd9d94fd0b7d5c2f0000be28e +msgid "List[:class:`Item`]" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:30 +#: 390e0de65aca4e25bf50e5ae6a456657 +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:32 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.interaction_check:23 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.wait:8 +#: 4d45955820034f44b44354116cd9d1f7 +#: 81901a6370e14b888c56185b26f75c5c +#: a20a4215e0ea431eb8fb5f8afaff44f3 +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:36 +#: 6e02983bce14423ca205b74a4644a71f +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:39 +#: 62493226680b4bc3bb9641549d93df08 +msgid "Optional[:class:`.Message`]" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:43 +#: fbf42b30d6ff425694a8364a242cd8cc +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View:46 +#: f5c57d9fa43643e8a8f9e9a19428dfb3 +msgid "Optional[:class:`.Interaction`]" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.from_message:1 +#: c392f64e411a44c39ed13c8cc5125f2a +msgid "Converts a message's components into a :class:`View`." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.from_message:3 +#: 565b68cabf4b4ba5a94ed222b1bdb166 +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.from_message:9 +#: 440ace76c1c843a0a6a9ed83aba2d54c +msgid "The message with components to convert into a view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.from_message:12 +#: b159c65de392440fac77f0ec9989f160 +msgid "The timeout of the converted view." +msgstr "" + +#: ../../api/ui_kit.rst:0 +#: 28a3de2a47e54084b6f9a9b85e58ffda +#: cebca2833179445fb4e661e106d5cc43 +#: bdf962475cee47d4ae16bdb523f4bdd4 +#: f4f15b52c843401587586464af1f15be +msgid "Returns" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.from_message:15 +#: 64c266a59d7f48e683effda66301b9a2 +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.from_message:17 +#: 9718cb2e8075430da95c8d900f3ed7d8 +msgid ":class:`View`" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.add_item:1 +#: d149c73fdd87423abab34ae033ad3bb2 +msgid "Adds an item to the view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.add_item:4 +#: 651c40af34754b2cbca1243c29182544 +msgid "The item to add to the view." +msgstr "" + +#: ../../api/ui_kit.rst:0 +#: 024152e81dad464c8dea98a5986784a2 +#: acf1210671c64fe0a94869a2ec5777fd +#: a8beb6c0b45f41f3802af4f176357b18 +msgid "Raises" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.add_item:7 +#: 0c2448b08bed49c9b3a36391e2dfe223 +msgid "An :class:`Item` was not passed." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.add_item:8 +#: 98c9ab34af564e9bb33dff8527ada782 +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.on_error:14 +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.on_timeout:6 +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.stop:4 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.add_item:10 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.clear_items:4 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.disable_all_items:7 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.enable_all_items:7 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_check_failure:9 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_error:18 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_timeout:6 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.remove_item:7 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.stop:6 +#: 06d7048de769474a8bb1a6d4a2dc4250 +#: 8a6327ab096844d5ab16d2316f29be99 +#: df7ded422fee4a2f97fa22d4a7adac87 +#: 0f024bf23b354403841f7dde8d71621a +#: fe97129bcb4d4e258ff0beb4c6390702 +#: 3c90e45f56914ab3a3afc07c95abbe60 +#: e8a673c7ef7448448155a519934deb7a +#: f0b9b386cb7f440d9ded8cbb48862408 +#: c0e5fc96f0134c3ca7023b6236f2a3fd +#: 5ca2db4b948a4526bbe2f7733e9e1540 +#: c28cd0a90c6243f48951aebe91f5a89c +#: 14e8aec6cbaf4828aec5b04bd5b670b0 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.remove_item:1 +#: 0fab940276ef4a7dae31257c2ac244a7 +msgid "Removes an item from the view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.remove_item:4 +#: 59807342ce744d8d886b5e2235ab0e2b +msgid "The item to remove from the view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.clear_items:1 +#: 3b8def86b7f849908a1d6f20d2c80e17 +msgid "Removes all items from the view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.get_item:1 +#: 23615972dcdb414abf5f848a9a2ee1ee +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.get_item:4 +#: cbb9b6731f96427fb3201cdf6793994c +msgid "The custom_id of the item to get" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.get_item:7 +#: 98fa144afc194f7d8515bd447103d0a2 +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.get_item:8 +#: 3d6d6e176c7f414092ad530cfe34fc1b +msgid "Optional[:class:`Item`]" +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.item.Item.callback:1 +#: ../../../discord/ui/item.py:docstring of discord.ui.item.Item.callback:1 +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.callback:1 +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.on_error:1 +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.on_timeout:1 +#: ../../../discord/ui/select.py:docstring of discord.ui.item.Item.callback:1 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.interaction_check:1 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_error:1 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_timeout:1 +#: e983730f42794becb4c575857dd306d4 +#: 1a6fca5291324410a90c948c1a5ba32b +#: 24255cea69ed481396a70f77f164a517 +#: 34fbdd6619144a00b71dc4a9dfbdf301 +#: 69e9487f1d3f4f93adcadb433feb339b +#: e969a0150e5149c3b6be69868a5dcd77 +#: 770fffa13a5f46cca1d7d0a054cb695f +#: 8b341b66e04245dd9e4f5a2f1f5e69eb +#: cca85a1077c94196a7736c41aeb0a7f5 +msgid "|coro|" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.interaction_check:3 +#: 21ac5f9f249141399e37682106a8d163 +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.interaction_check:6 +#: a5732571b1b646038917e1dd222eb895 +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.interaction_check:9 +#: cac332ec85fd4e678581cb07369b113e +msgid "The default implementation of this returns ``True``." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.interaction_check:11 +#: 6dd6d3e0de674b37b56463799d4e5796 +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.interaction_check:15 +#: a6e651afda894717a3c7eeb4b0efc534 +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.interaction_check:19 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_check_failure:6 +#: 1a432a43d45d41dd97862b1f0f19af7e +#: 79b0908f8b1e4c90a0dbb2d347d1dd8c +msgid "The interaction that occurred." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.interaction_check:22 +#: 44b3331c42c24dd0871d7b6a7ac96dbe +msgid "Whether the view children's callbacks should be called." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_timeout:3 +#: 0bb24bab4e6440df876e7c91b96d1b76 +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_check_failure:1 +#: 27d3ccf10dd24da88cdb7c2a3974f10c +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_error:3 +#: 0d75dddb92724f969f33febce6cfc3c3 +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.on_error:5 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_error:6 +#: 99e74ef3f5f9466680a35e8deda8f23c +#: 875e47bef4214d1c8f6c288059a65b3b +msgid "The default implementation prints the traceback to stderr." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.on_error:8 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_error:9 +#: 2238043a3f944ee984d06ec6486cb852 +#: 93edd4d9bd60459aa302fa40cea76916 +msgid "The exception that was raised." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_error:12 +#: 5709e63245134c1cb16bcce2366bfb46 +msgid "The item that failed the dispatch." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.on_error:11 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.on_error:15 +#: 24dd9c6954ba4b6f8baae26063abdfe1 +#: 93c2f8cbaba342cb942380efba1bcd38 +msgid "The interaction that led to the failure." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.stop:1 +#: a29f8a3d5bdb4aec85165d9368bcf74a +msgid "Stops listening to interaction events from this view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.stop:3 +#: d55bc70ac28e4e31bcdca08c3436896c +msgid "This operation cannot be undone." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.is_finished:1 +#: acc1711d1e2247a99930ff1d6dc94787 +msgid "Whether the view has finished interacting." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.wait:4 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.is_dispatching:4 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.is_finished:4 +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.is_persistent:7 +#: ff0aea3ebb2f44c0874d3d169b0fc412 +#: 3dd17f55957b46f69f70d89163d80c06 +#: 5e86d04d3f744d8e85483af1cc8e54f3 +#: f3f660e1e53145d7adcbd25a47dc519d +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.is_dispatching:1 +#: 201608b51af64b808fe79c226b6a3ff4 +msgid "Whether the view has been added for dispatching purposes." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.is_persistent:1 +#: a7c94233f3944c7f91a2fddae3d48713 +msgid "Whether the view is set up as persistent." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.is_persistent:3 +#: af57e2f1c3d241c79c75bc007dc6f9e6 +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.wait:1 +#: a350e14ae6094bf9a45da3bba4581ba1 +msgid "Waits until the view has finished interacting." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.wait:3 +#: 12f9450397a54aaebb6c26b3063d3ffa +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.wait:6 +#: c95bfa514bbd4d9590e3220c31c0c6c5 +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.disable_all_items:1 +#: 314de3c4bde54717b2849331287e748e +msgid "Disables all items in the view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.disable_all_items:4 +#: 4072920264ba4042a24a4149853585d3 +msgid "A list of items in `self.children` to not disable from the view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.enable_all_items:1 +#: bf174030a36b4632b1cf6e1fc5fe4038 +msgid "Enables all items in the view." +msgstr "" + +#: ../../../discord/ui/view.py:docstring of discord.ui.view.View.enable_all_items:4 +#: 156efa1c1fbf4918af0b9e99b8099feb +msgid "A list of items in `self.children` to not enable from the view." +msgstr "" + +#: ../../../discord/ui/item.py:docstring of discord.ui.item.Item:1 +#: 20e96e2aa54a45bfa5ad1c493abb7dd9 +msgid "Represents the base UI item that all UI components inherit from." +msgstr "" + +#: ../../../discord/ui/item.py:docstring of discord.ui.item.Item:3 +#: 9a2765dfcfb646e084e717be3bed4b85 +msgid "The current UI items supported are:" +msgstr "" + +#: ../../../discord/ui/item.py:docstring of discord.ui.item.Item:5 +#: 0b1b92a5722e4ab398df7f16d1135628 +msgid ":class:`discord.ui.Button`" +msgstr "" + +#: ../../../discord/ui/item.py:docstring of discord.ui.item.Item:6 +#: b7356742ae8c4acebf71b6dc048626a3 +msgid ":class:`discord.ui.Select`" +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.Button.view:1 +#: ../../../discord/ui/item.py:docstring of discord.ui.Item.view:1 +#: ../../../discord/ui/select.py:docstring of discord.ui.Select.view:1 +#: 82ecd677a8ae42efab9547d6e0c64ca6 +#: 718197200d854b84879705c60c0d53e8 +#: eece3a9744f2405a8e83f30be0252a22 +msgid "The underlying view for this item." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.item.Item.callback:3 +#: ../../../discord/ui/item.py:docstring of discord.ui.item.Item.callback:3 +#: ../../../discord/ui/select.py:docstring of discord.ui.item.Item.callback:3 +#: 055cf67df1e94d0592bbc5d22013c323 +#: c8cd5c6c52b2432086a54d8ebaf9dade +#: e3934636086a444ea2d8e67a258834cb +msgid "The callback associated with this UI item." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.item.Item.callback:5 +#: ../../../discord/ui/item.py:docstring of discord.ui.item.Item.callback:5 +#: ../../../discord/ui/select.py:docstring of discord.ui.item.Item.callback:5 +#: 94fcbdc6f4a7448fbbebfa233bf60049 +#: 253657b63da14170bec87bc80bc4c38a +#: 30a9c108e9d24604ac60bf1e911af72d +msgid "This can be overridden by subclasses." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.item.Item.callback:8 +#: ../../../discord/ui/item.py:docstring of discord.ui.item.Item.callback:8 +#: ../../../discord/ui/select.py:docstring of discord.ui.item.Item.callback:8 +#: c4a0d0cb7af54912ad4f4e1cfb4aff78 +#: 2dfbae61c770488cbbe415c1fe433949 +#: 9083cdfe2ae24b2f950208892462f7bb +msgid "The interaction that triggered this UI item." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.Button:1 +#: d3ed8c14fbc14d40be6691f7709cfe09 +msgid "Represents a UI button." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.Button.style:1 +#: ../../../discord/ui/button.py:docstring of discord.ui.button.Button:6 +#: 3e0672a1b2d64d418a64a8f5033f2572 +#: 5f26973a49434bcf9f88e06a44a7629c +msgid "The style of the button." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.Button:9 +#: bc22a9734365447c827b37fcf29a072c +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.Button.url:1 +#: ../../../discord/ui/button.py:docstring of discord.ui.button.Button:13 +#: 47abb7d1e6094637a97fa3df6a95a8e8 +#: f2929e3d104a48f08a200c52f438e072 +msgid "The URL this button sends you to." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.Button.disabled:1 +#: ../../../discord/ui/button.py:docstring of discord.ui.button.Button:16 +#: 1800abfd6ac44f59ae3181e5274b405c +#: 2eb02a2f95694738aa23bf512070f586 +msgid "Whether the button is disabled or not." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.button.Button:19 +#: 3aa00fa1b0524f57b5984d7f80d72c47 +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.Button.emoji:1 +#: ../../../discord/ui/button.py:docstring of discord.ui.button.Button:22 +#: 74f13428fd0a40f39ee7531329565abf +#: 3faa2a41847245938c5f2b330a599f40 +msgid "The emoji of the button, if available." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.Button.sku_id:1 +#: ../../../discord/ui/button.py:docstring of discord.ui.button.Button:25 +#: bf020129ab2a4825b8dfff6074481348 +#: e113ed73331e4e739300825d1691dd3f +msgid "The ID of the SKU this button refers to." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.Button.custom_id:1 +#: e6884781decb43808438d3e9817dd29b +msgid "The ID of the button that gets received during an interaction." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.Button.custom_id:3 +#: 47b62faa29564d4f9cc2e549f6863c4d +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "" + +#: ../../../discord/ui/button.py:docstring of discord.ui.Button.label:1 +#: 24753a72351f419db69690e215d59991 +msgid "The label of the button, if available." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:1 +#: b77915704f4243b096bd2422d12bbb91 +msgid "Represents a UI select menu." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:3 +#: 97252e0d347f4d1f99a112d6313bfe29 +msgid "This is usually represented as a drop down menu." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:5 +#: a8c107f041ed4021944056e98e4b13ee +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:11 +#: 3c3698117004495d830d4610d318dff0 +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:22 +#: 177b62b01c754dd780a7a3d22484d19d +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:29 +#: 4eebabd7f0d44d08a9418e9bb1f45933 +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:37 +#: 16f0527ad7e44487bb43ccfda1c635eb +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:41 +#: 6f486dcced0f4699b0055a1ecd5b20fc +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.Select.disabled:1 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select:45 +#: 796771ff82554675a187cca6828acb7c +#: 6ccb04df725844a182a2639c2457b4b5 +msgid "Whether the select is disabled or not." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.Select.custom_id:1 +#: a925d6a693154f52a7d0daad0c744686 +msgid "The ID of the select menu that gets received during an interaction." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.Select.min_values:1 +#: 7fd54b986674467abbb28a2ced73f7d5 +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.Select.max_values:1 +#: 3d4f7caeeeee4bf9849176d0b17c48b8 +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.Select.channel_types:1 +#: 9e37bef3ace54b26a73d62ad34fee227 +msgid "A list of channel types that can be selected in this menu." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.Select.options:1 +#: d7b6d5871f744324b100f604ccaa833a +msgid "A list of options that can be selected in this menu." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.add_option:1 +#: d623f3b744a14701a12c06831d410d96 +msgid "Adds an option to the select menu." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.add_option:3 +#: 0e6d15c2f7ae4c29986e7dd0f1154f23 +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.add_option:7 +#: 0abfcec6e5a4408a803463cec892a147 +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.add_option:11 +#: 067e5b5806b14e759abb23e9b4e860a9 +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.add_option:15 +#: 760c50e112a04650a33bf2c56834b14f +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.add_option:19 +#: 042ab23dcae24d1389ceba8d72659509 +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.add_option:23 +#: 27eb750afa664a6ea5cf41996fc3cacc +msgid "Whether this option is selected by default." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.add_option:26 +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.append_option:7 +#: 7eff0916811d4ee2b31c189597562605 +#: e190a9601c2e43eb88aaeb92ae48a1a1 +msgid "The number of options exceeds 25." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.append_option:1 +#: 21ff2a9da99b4440929eb12965b39a31 +msgid "Appends an option to the select menu." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.select.Select.append_option:4 +#: c84b351523dc43f8916def7991ada61a +msgid "The option to append to the select menu." +msgstr "" + +#: ../../../discord/ui/select.py:docstring of discord.ui.Select.values:1 +#: b886031b28ca473eb760ef8253f0f94c +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal:1 +#: b9270d5d3b734251840a9f06eb712027 +msgid "Represents a UI Modal dialog." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal:8 +#: d1f45a3b27da4ba69428076fe7aa9191 +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal:11 +#: 3534571d450444f3b728e0d7629b67a7 +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal:15 +#: d3eb5f8c8d2e48efad25d189c53c8702 +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.Modal.title:1 +#: 0dfdf29800e044d89a49e207c803d984 +msgid "The title of the modal dialog." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.Modal.children:1 +#: 06dd349526264f8a9df66fcb7980af2a +msgid "The child components associated with the modal dialog." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.Modal.custom_id:1 +#: 686f5e94a69c4dec802fd25dc3c06607 +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.callback:3 +#: e78cf6c4472c4a7480c4d9b0b79dd7bf +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.callback:7 +#: 4d2a53d8fa0a403eb48b376ee949adf4 +msgid "The interaction that submitted the modal dialog." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.add_item:1 +#: 2027446701754f3794b31d4a61853116 +msgid "Adds an InputText component to the modal dialog." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.add_item:4 +#: 698b0ffc9e8a48dd9571951f9059c7aa +msgid "The item to add to the modal dialog" +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.remove_item:1 +#: c4180d38f8514641b975d5b03834cdd5 +msgid "Removes an InputText component from the modal dialog." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.remove_item:4 +#: d745be688d5c42638330608e48ad46a2 +msgid "The item to remove from the modal dialog." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.stop:1 +#: 10c0de82d08242399b35eb6d50cae8b4 +msgid "Stops listening to interaction events from the modal dialog." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.wait:1 +#: 844abb1d49a849aa83ab65a5d6348a36 +msgid "Waits for the modal dialog to be submitted." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.on_error:3 +#: 39116ddd5b794673b34f99da06860ff1 +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "" + +#: ../../../discord/ui/modal.py:docstring of discord.ui.modal.Modal.on_timeout:3 +#: 716ac8fecc0a4170a9381cec6a9e2ef9 +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:1 +#: 7cc19a1bcc8d474fb7b13e76fe9325ac +msgid "Represents a UI text input field." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.InputText.style:1 +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:6 +#: 46ab89f240c04a70b1772095a8585e87 +#: 391f2a60ad1a446b9b869244f8074585 +msgid "The style of the input text field." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.InputText.custom_id:1 +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:9 +#: 53336a0409494b719bad7895bab5d8e3 +#: 7dd47d92ba824a4d802daaecff316b4a +msgid "The ID of the input text field that gets received during an interaction." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:12 +#: 484601a95ea846b98aac3f5c46029167 +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:16 +#: bd55b842a60843b5a8cf3c66d215464b +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:20 +#: df92d651e5fa4be1bdc8bcae6e21e348 +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:24 +#: e01a7fc394d841cda09f68b1b136d1f1 +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.InputText.required:1 +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:28 +#: 584df796ba3345878a51cb7cbbd2ad12 +#: 3c95c7168cee4a3ca835e439caf1363f +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:31 +#: 4b3080c9570045559a3b3f095cd7ede9 +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.input_text.InputText:35 +#: 2f957dcccb3d47ae8f08c48419ea39a1 +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.InputText.label:1 +#: 53bbbf9910f6434a86d331c806dc2485 +msgid "The label of the input text field." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.InputText.placeholder:1 +#: 8532b6f3c3b54fa1adac3f290721896e +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.InputText.min_length:1 +#: 0841d9930482419a831cb90ca1d54c5f +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.InputText.max_length:1 +#: 6369ccce3bbe48e2ac99040cf9f3a39b +msgid "The maximum number of characters that can be entered." +msgstr "" + +#: ../../../discord/ui/input_text.py:docstring of discord.ui.InputText.value:1 +#: 7eef7bc7f5434d39baab02325cc1ee35 +msgid "The value entered in the text field." +msgstr "" diff --git a/docs/build/locales/api/utils.pot b/docs/build/locales/api/utils.pot new file mode 100644 index 0000000000..abc245ba15 --- /dev/null +++ b/docs/build/locales/api/utils.pot @@ -0,0 +1,905 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/utils.rst:6 +#: b2f28caecc924db59cc0bfda2cf725bb +msgid "Utility Functions" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.find:1 +#: e551a85abadc4f54a50aee8720846873 +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.find:6 +#: 9281f3d427c24c5199324b441b758af9 +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.find:9 +#: 8e363292f30e4a8c8001b4f2a413d3f5 +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:0 +#: ../../api/utils.rst:0 +#: 1c60fdf432a34262b02af7df598af358 +#: 8cd9a4a6430f4d4083e18c8cf19fcf48 +#: f8bf8feea079450998152dcff00e95c1 +#: 050571d8ce744379a07e80a62aa94870 +#: 35c87733e7a44f0abc2df0b1b7ea12be +#: ac91098994644d18b800c34e375c9751 +#: 6a62a020e98a4607844e6a1d92754354 +#: b2eaf3d8463e41408acf895a2e2016b6 +#: 201c050fc14d44f0810c776b20c676a1 +#: ab4317ac344e484ab6269743deb00536 +#: 4182382f67e146d09cff1cbee0f070a5 +#: 55701d63ab734c498871b0f9b16d1c6d +#: 5f476066bcaf4eae9d5ca625db8badcf +#: 4b7d6b239eb844b0a07455620184eb3e +#: 39fbbccdd8e84cfbb3dd88b8836b653e +#: 8a406056f674402fbda55a5b21a97010 +#: b2325f4789474a608227307565f07ab8 +#: e235bd384d1b429d8285ad37f2d4a591 +#: 7a0f3e4603c446ee80192ad6a4c2a275 +#: d084c891f79846a089b9181a6952a853 +#: 94c84324850542b18825d9ad059adfca +#: 966fc85ec97e4462a08892e3238a8de7 +#: b4007756f3b14b119341325d85618f45 +msgid "Parameters" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.find:13 +#: 9fa7a6562c90425ba95278c8fb52c572 +msgid "A function that returns a boolean-like result." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.find:15 +#: bf625ed56ac94e4e9c16375a29c802e4 +msgid "The iterable to search through." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:0 +#: ../../api/utils.rst:0 +#: c287aafc3232425da8ccd5cca5f25e2d +#: 392e00c2a71444519c80974c8388009c +#: 737183e407f044cfbdeb3520b0664458 +#: ae19383e27b04626a84993ee6c1dc6c2 +#: 6284d5d5ec2c4d81b0867bef1a730df0 +#: 02dcab3cde5943e6b6bb51bb073c78d3 +#: 2b2c738b3ccb483f9981028c7a67eb93 +#: b240a7e64248402482220648f8d25d89 +#: 8c58ff1ae8594e3885fc52f7276a6393 +#: 17bce3950d8d41f999cfc959de1c8005 +#: 54a28def4381478084624d76e12f9f45 +#: eb0e0c983f3c4751858bc3209d71caf8 +#: 77e1c55771274774bc9154f8b83f65fc +#: abf23af895704f009e6e57170df2e2c3 +#: 74261c6f68334a9c9832b03ab14c173c +#: f43529e1bd0a4b11aa3c197db4892dee +#: 2eb1e3111512438984551edfa1d65489 +#: 3c6d52d4b8354e06b6ce0fcf3b086c85 +#: eaf3c063f00646c9a476d69b6683b0ac +#: 7b6ea48218734b5d9fdac096eb1869e9 +#: cf3a47a3633248deb7dd10cf5aabac09 +#: bfc10ea03c514b9788b46e71d6bb66fd +#: b91f8eeb2b9144e8ae6b7ef21d93a779 +msgid "Return type" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.find:18 +#: ../../../discord/utils.py:docstring of discord.utils.get:40 +#: ../../../discord/utils.py:docstring of discord.utils.sleep_until:17 +#: b44d8109461742229a137bc4ba3bceef +#: f5452727e7f94436b7f9a74b23e539ab +#: 1f9579e8c87641de83f52a1e20a4f328 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:1 +#: 1bf4fedf587c4b5fbebab4a690e1e45d +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:5 +#: 7e04bf3fc16d4bdd8184628cad06f709 +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:9 +#: e17e9bba8fca4009a6e42a4491469d8a +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:12 +#: 8ce8eccaa5d54963817ec2ccbfcd4897 +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:16 +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:28 +#: 3924fb9efa21466e8ad1606af419115d +#: 3521bfb272664038a752ad0c4215b894 +msgid "Examples" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:17 +#: ebf141cbc71a4423aa0f9536eaa183a4 +msgid "Basic usage:" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:23 +#: 6eb8c1d8a594429bbe9089eaa7e1ac0a +msgid "Multiple attribute matching:" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:29 +#: e122d883c8ba4dc9a17922e005f6f3a0 +msgid "Nested attribute matching:" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:36 +#: ece83686d52643cdb6c8406fde3c7285 +msgid "An iterable to search through." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get:38 +#: fe5bcc80273940e1a3c9d8a61010ca49 +msgid "Keyword arguments that denote attributes to search with." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:1 +#: ../../../discord/utils.py:docstring of discord.utils.sleep_until:1 +#: 813a458483fc4657bb6de6015318ea4c +#: 047a5517f469416aab2b765c3711e2c9 +msgid "|coro|" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:3 +#: 6059a0ee37c84b7c968bbb3180cd4061 +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:7 +#: 99c21646a64544a7a66635fe89a62488 +msgid "The object to use the get or fetch methods in" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:10 +#: 722b7174a36e40d9ad7f4158e4dec713 +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:13 +#: d12701e421f14168a8c064b63bbca7d1 +msgid "The ID of the object" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:16 +#: bebeace681de4c4b82947227d8b175ce +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:0 +#: ../../api/utils.rst:0 +#: 5e2662c472244430a1c5f927e8ad5742 +#: 2cada1fbf84b404fb2628ac3f35b19ed +#: 80cac2a2e81441b287f204bf5131b09d +#: fa6b89a60707475d9f9f29fe605228b4 +#: 7fd927630bce466fb5d388f8d11fcdb4 +#: 410c4260d88e4f388018236761fc0965 +#: c9e6df7e45324f84a24e0117930a36a1 +#: c2f878aa2d944761ba684104b753f875 +#: e4958f5419174efea8ba08cb566b5fe0 +#: 5a9fd330b31e4c7c8844cdf8c620430b +#: 1fec765e695e4742b8b12fe2c089354f +#: 6a6845d4e22b436ca97dfac93491f478 +#: c1a779448b8c416f9893dcbbbc8b8ae1 +#: b9b2c90b77b84eb5805166bc365f005b +#: 96d038e7361c4ea69e5d5fb8389f92dd +#: 8035ef1de15d4808923a8f8d047577bc +#: 36f7538b818747bba0d09bfdca701d0c +#: 2518caf557d74fe89605eb9ccea011f7 +msgid "Returns" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:19 +#: 44457c74e11f4bcb86593baff8be9dab +msgid "The object found or the default value." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:0 +#: 30b0356fd64d4d41b7a8e2cad0506d17 +msgid "Raises" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:22 +#: f118d1f7f46440f8b25a14d07b483c94 +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:23 +#: 044578fd72984f17b794e0b1b3b98deb +msgid "Invalid ID for the object" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:24 +#: a32ef12495724e3592521d9a0b9e1a9a +msgid "An error occurred fetching the object" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:25 +#: 8cf54e47d9784ec687e61aee0ab3215c +msgid "You do not have permission to fetch the object" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:29 +#: 10c9649c25a64cd0a556bf2a290e0a61 +msgid "Getting a guild from a guild ID: ::" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.get_or_fetch:33 +#: 78c2fa52a132456abfb980a83613441d +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:1 +#: fe4a3d1e945e470898618bbdafc75294 +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:5 +#: 6922f1e7d23c4cdca00cb7eb5a3f919f +msgid "The client ID for your bot." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:8 +#: 53556372d4e94d1fb9ab93f8b9843b8a +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:12 +#: 96730f42a5cf4cba83bbb44013b202c2 +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:15 +#: 45c5f11bfe894ccaadeefd066064da1f +msgid "An optional valid redirect URI." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:18 +#: cd3dfb289ce14729873225317a503d8f +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:18 +#: 0c9e2a41e0514b69a182b945cf09782e +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:23 +#: a58d963b26244f65946d3ce5d9507396 +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:23 +#: 33c3ea449b084bbba0bac77189221864 +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:28 +#: dddb7780a58c4d02a9e33a83610456f6 +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_markdown:21 +#: ../../../discord/utils.py:docstring of discord.utils.escape_mentions:18 +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:36 +#: ../../../discord/utils.py:docstring of discord.utils.oauth_url:29 +#: ../../../discord/utils.py:docstring of discord.utils.remove_markdown:19 +#: ../../../discord/utils.py:docstring of discord.utils.resolve_invite:8 +#: ../../../discord/utils.py:docstring of discord.utils.resolve_template:10 +#: 365ce5216faf447abc535b71d88ddd14 +#: 35c97cbad62a46f6bbbcc1e7cd22ec91 +#: 9590c8c38e8b4cf78813d5435267d058 +#: 1691932c989c44919f5464baf2015706 +#: 983c0fcb3ba3401e9e63e6128fb8cc0d +#: 7f98ae082d164224a29428f14d1e0e6d +#: 00e022b285884d4caddb3d3d92874d00 +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.remove_markdown:1 +#: 744cadce5cf74df4b0bff0d86815d9bd +msgid "A helper function that removes markdown characters." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.remove_markdown:6 +#: dd119c77246d4c808920c17ba3cd4e62 +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.remove_markdown:10 +#: 4f53660c7b22469a88a4b9d71b7e3b7e +msgid "The text to remove markdown from." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.remove_markdown:13 +#: a8a0bc5695a34e19b9e67a672ebbc601 +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.remove_markdown:18 +#: a07ce7398e2448098358b434ba711f00 +msgid "The text with the markdown special characters removed." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_markdown:1 +#: 8dfc3e36bdd74417ac27356ec9ecb8d8 +msgid "A helper function that escapes Discord's markdown." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_markdown:4 +#: 8d7409e0a4bb46fa8923de1e64781442 +msgid "The text to escape markdown from." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_markdown:7 +#: c185975ffa2e45ba87bba442cd8de2cc +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_markdown:14 +#: 671aab37aa2840b3ae919cb1ca5d756f +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_markdown:20 +#: 114cb57eb6be46778579ab942ac8a33c +msgid "The text with the markdown special characters escaped with a slash." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_mentions:1 +#: 92d7cc35f363403b9589b8ca920d471e +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_mentions:5 +#: 211f6b0061a04ff0b830caab837a2a42 +msgid "This does not include channel mentions." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_mentions:9 +#: 3bc32d1196534e289a79d7d33bbf3888 +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_mentions:14 +#: 49f4649faee743348413613de50a095a +msgid "The text to escape mentions from." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.escape_mentions:17 +#: d5330c7ee270424fad80aca4a9bf2687 +msgid "The text with the mentions removed." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_mentions:1 +#: bfa4bf501e754a7a8e564daf92173adc +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_mentions:6 +#: 2b8d9969221f4e3b842ecd4c5b0ff7ed +msgid "The string to get user mentions from." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_mentions:9 +#: ff66d05ec8364c5bb85c870a70b62b85 +msgid "A list of user IDs found in the string." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_channel_mentions:10 +#: ../../../discord/utils.py:docstring of discord.utils.raw_mentions:10 +#: ../../../discord/utils.py:docstring of discord.utils.raw_role_mentions:10 +#: b7adc5671b74425aa0dc7620d4e36e60 +#: 7683abc8d79f4cff8f52ada8f6f537fe +#: bf95fb3638ae4162a3ede56e570d575d +msgid "List[:class:`int`]" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_channel_mentions:1 +#: a1bdaec1c08143d09c3070b44e4546db +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_channel_mentions:6 +#: ef551f719496417da562512dee9448b1 +msgid "The string to get channel mentions from." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_channel_mentions:9 +#: bbe74131d518497b942a440880a52043 +msgid "A list of channel IDs found in the string." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_role_mentions:1 +#: 090aaefa36ea42ce8ac9a82def9de7c9 +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_role_mentions:6 +#: aad51dd511f94d5faf5c31f04e4975a3 +msgid "The string to get role mentions from." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.raw_role_mentions:9 +#: 27df55b1abed40ad926dbd266a1b38ba +msgid "A list of role IDs found in the string." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.resolve_invite:1 +#: 0b0a46fc6d8148818f7321a47619a716 +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.resolve_invite:4 +#: 7852632e3bfc4c818c1f732dabda5b61 +msgid "The invite." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.resolve_invite:7 +#: 7f73d202fc844dd3bdcdd567127959e0 +msgid "The invite code." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.resolve_template:1 +#: 2cdcdcf9d2bf4ffd9559d511ef27090d +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.resolve_template:6 +#: 9a9b237ba8764f16a2735e97b8ba92cd +msgid "The code." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.resolve_template:9 +#: 382208b003a849349169f0693d92fe85 +msgid "The template code." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.sleep_until:3 +#: 759a5b88a9474bde911dc404a88a4c7d +msgid "Sleep until a specified time." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.sleep_until:5 +#: 498fcacad5e542c9b535af7c5ac323bb +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.sleep_until:10 +#: 356a2d3a17414064a0332ba1c9110db4 +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.sleep_until:14 +#: 46cdf4f783574bbd845beea1f3778f06 +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.utcnow:1 +#: b2522dd48dfa4bea8fcd24de4d79178d +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.utcnow:3 +#: be409753e4dc466f8c77ca040ecaeccb +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.utcnow:8 +#: 683514a7b0d641748f3c0d70b7009595 +msgid "The current aware datetime in UTC." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.snowflake_time:8 +#: ../../../discord/utils.py:docstring of discord.utils.utcnow:9 +#: 3d3d51edb6044a099f7629a77d8811e9 +#: 56bd424aabf44587a6ffcec02aaa5af0 +msgid ":class:`datetime.datetime`" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.snowflake_time:1 +#: db52e7d27432444ebc061c6347543444 +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.snowflake_time:4 +#: 1445cceebae94da79f69c7ec2c82b3b8 +msgid "The snowflake ID." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.snowflake_time:7 +#: 050dbdb6689b438184c22d7a4a9c4e1d +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.parse_time:1 +#: 7ddbe7752a5e4bbb8c60ae498b445f46 +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.parse_time:4 +#: 87b7502a035c4f7a94b7b1d26819abef +msgid "The timestamp to convert." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.parse_time:7 +#: c723db34011f49828d3bb12fed23d6a9 +msgid "The converted datetime object." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.parse_time:8 +#: aa502e7ed02045ffa2fd6ab5aec5825c +msgid "Optional[:class:`datetime.datetime`]" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:1 +#: c3e3a912c4c747749a63ac1951adc0cd +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:3 +#: 014018350bde44a1af3b87f0a256c312 +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:6 +#: 47c889fce51d4655894d69995fd09e64 +msgid "Style" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:6 +#: 9d872289da7647aa939a4249ed2116fc +msgid "Example Output" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:6 +#: 04d70e88eed741e8b7baec36dedd45a4 +msgid "Description" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:8 +#: d9773363dfdd4110be3202594b90deac +msgid "t" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:8 +#: 01f669f9d718485dabce66ae18c650d8 +msgid "22:57" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:8 +#: 4505dbbdb65643d689966d6ad5241fe9 +msgid "Short Time" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:10 +#: 7e56e826b4c54267b72e5e1333ce0835 +msgid "T" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:10 +#: 1db4a09a55cd497685f2e7e43eb40b7e +msgid "22:57:58" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:10 +#: e2d7da40ee0a4cefb235c71f5059c1ba +msgid "Long Time" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:12 +#: 0398eefcdaa9424e8095fc7c978adb69 +msgid "d" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:12 +#: 44d935830a894d798035c30178c37847 +msgid "17/05/2016" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:12 +#: 88dc24f2daf64b9b82ab2b5ccc55ef52 +msgid "Short Date" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:14 +#: c9ee5decc37b48bcb25bd130c3d5dc5f +msgid "D" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:14 +#: 3c3e68c2c7b34fa8975ca83d45c6e0d0 +msgid "17 May 2016" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:14 +#: 4dab2a15edd0492e8a71438ceb43b912 +msgid "Long Date" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:16 +#: 5efb87fd0d8744eb878c558c2f961a3c +msgid "f (default)" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:16 +#: a0b3a00fe113498a930293b0366f9ac8 +msgid "17 May 2016 22:57" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:16 +#: cebb638af4a44e89b22972425a3e8afc +msgid "Short Date Time" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:18 +#: 3e3fe2959acc44be92e90ac97ccb20f0 +msgid "F" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:18 +#: 59f32996a6ea4df6b6b3f171f6204b5e +msgid "Tuesday, 17 May 2016 22:57" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:18 +#: 5d1bb8a7e0e94646aa89baef02aa1b35 +msgid "Long Date Time" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:20 +#: 36677a24a28c4e50908c73cdfc0ce8cb +msgid "R" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:20 +#: 2ef4165bf158419caff2c9444a4a275d +msgid "5 years ago" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:20 +#: b4009f9e19a74f9c9c43a0d25e49b637 +msgid "Relative Time" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:23 +#: 8f6bdcb0e1b746d294b046b91e82acfa +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:29 +#: 7a8890fe32364076971c15c65e42d0af +msgid "The datetime to format." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:32 +#: 752d22d96de1489489a0e1045d3f1702 +msgid "The style to format the datetime with." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.format_dt:35 +#: 1247f6c9467c4399a21d45c6c2540b8f +msgid "The formatted string." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.time_snowflake:1 +#: 3dbe398f94684d7d81111c3a9d78ddee +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.time_snowflake:3 +#: 4f0a375b5445437c9b32c94bb126d2eb +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.time_snowflake:6 +#: fd7692997b8d4147ae031cc74d728ea2 +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.generate_snowflake:5 +#: ../../../discord/utils.py:docstring of discord.utils.time_snowflake:10 +#: 707b6da896314b699199545f50ffaa4c +#: 156dc943215f43459e046968ed3d56f3 +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.time_snowflake:14 +#: 4d4b4aed7951406c98672889e6af4aff +msgid "Whether to set the lower 22 bit to high or low." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.generate_snowflake:9 +#: ../../../discord/utils.py:docstring of discord.utils.time_snowflake:17 +#: 685eec1e29a2446e99fd2c65c95ed67e +#: 36df0fad6db443f498326d3435c79e77 +msgid "The snowflake representing the time given." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.generate_snowflake:10 +#: ../../../discord/utils.py:docstring of discord.utils.time_snowflake:18 +#: 1592ca8f639d49108573be44e12cd05c +#: f921d097fcff48d2ba649bf347797916 +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.generate_snowflake:1 +#: c8903060dda24558a54ef44d79166e0a +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.basic_autocomplete:1 +#: 342ee272ba1a47d28edeb42756e01b5e +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.basic_autocomplete:5 +#: 548784abce704512a534212ed4f89380 +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.basic_autocomplete:8 +#: 71b0b09a76194f82a93177616dd8e775 +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.basic_autocomplete:12 +#: 42efe68651a145729d12aa25efb1c936 +msgid "A wrapped callback for the autocomplete." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.basic_autocomplete:13 +#: 62cb574c35064e82b913901dea277846 +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.basic_autocomplete:15 +#: 3701cd6df81947f6b20b79fcfdf29842 +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.basic_autocomplete:18 +#: ../../../discord/utils.py:docstring of discord.utils.filter_params:12 +#: 38fdef3a74ae45a48840ee240fd21411 +#: f0afb50f77a84f8a8f6c19c3c315c4c4 +msgid "Example" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.as_chunks:1 +#: 94bfe37178034b48a425cb2ffe69a1cd +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.as_chunks:7 +#: 640eef2dc9a746c299d6db0ada4512c9 +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.as_chunks:10 +#: 2262035739314e6d8569f13a615f7cf5 +msgid "The iterator to chunk, can be sync or async." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.as_chunks:13 +#: 1625a9682d7245ecb50b94b93e94221b +msgid "The maximum chunk size." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.as_chunks:16 +#: e3de94aceeb44a3aafdddf7c05d7465c +msgid "A new iterator which yields chunks of a given size." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.as_chunks:17 +#: 3648eed64c0e442d8e3e1df5cea6d046 +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.filter_params:1 +#: c36eedeb288e42c78bc4a987d84c2d5d +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.filter_params:4 +#: d88520e24b1d4208890200ce4d45cbe8 +msgid "The initial parameters to filter." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.filter_params:7 +#: 8f56edb34ffa4871b090fe88f83da282 +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.warn_deprecated:1 +#: 8da4e468cec14bc380a9febfd1ecb5f6 +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.warn_deprecated:5 +#: e3d8c023dd1c4350ac0fbd6bf2429a05 +msgid "The name of the deprecated function." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.deprecated:5 +#: ../../../discord/utils.py:docstring of discord.utils.warn_deprecated:8 +#: 1aba31edeed24fc0bf925b49f4d01770 +#: ed5919ff292b4888b37ac2b10a02a9e3 +msgid "A recommended alternative to the function." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.deprecated:8 +#: ../../../discord/utils.py:docstring of discord.utils.warn_deprecated:11 +#: b9b3be6c3207442c804878da48136de5 +#: 5b13e7161cf943cab770cdf8f1dbc614 +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.deprecated:12 +#: ../../../discord/utils.py:docstring of discord.utils.warn_deprecated:15 +#: a626227cb070430481695b7033d08037 +#: 0d693d37c2264cc7b13fe7d0cfabc551 +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.deprecated:16 +#: ../../../discord/utils.py:docstring of discord.utils.warn_deprecated:19 +#: f683b72936684971a741eb6883ee293c +#: 99f204a0f2054cc1ba92951549f7fbb6 +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.deprecated:20 +#: ../../../discord/utils.py:docstring of discord.utils.warn_deprecated:23 +#: c47d7142272b415fb0e9cc38033dabb9 +#: ae34e1033c72447ba27713944dacffcb +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.warn_deprecated:26 +#: a7e969196e094149b160e9b2d531f047 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.deprecated:1 +#: efa18c465579446cbbcd9b510d81a062 +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.deprecated:23 +#: c062d6ae6db141b5ba8ffe616b229d28 +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "" + +#: ../../../discord/utils.py:docstring of discord.utils.deprecated:28 +#: f8e97d5772924b948068e5d0a2b93af1 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr "" diff --git a/docs/build/locales/api/version_info.pot b/docs/build/locales/api/version_info.pot new file mode 100644 index 0000000000..19645209d0 --- /dev/null +++ b/docs/build/locales/api/version_info.pot @@ -0,0 +1,42 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/version_info.rst:4 +#: e2693c05b8734ff3bd738ea8e3f79b49 +msgid "Version Related Info" +msgstr "" + +#: ../../api/version_info.rst:6 +#: 0e23d91f6e6a4d3da6ff964b98836926 +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "" + +#: ../../api/version_info.rst:10 +#: 655eab73191943599a3ac9db5642e146 +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "" + +#: ../../api/version_info.rst:12 +#: 4331afd1ca6f4c91ac3258eaf4901282 +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "" + +#: ../../api/version_info.rst:17 +#: a03a04703c6647bc83580f977672decf +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "" diff --git a/docs/build/locales/api/voice.pot b/docs/build/locales/api/voice.pot new file mode 100644 index 0000000000..3ff8d5c81f --- /dev/null +++ b/docs/build/locales/api/voice.pot @@ -0,0 +1,1049 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/voice.rst:4 +#: d7b0a6618d484ba1b7adda020e2d5f7c +msgid "Voice Related" +msgstr "" + +#: ../../api/voice.rst:7 +#: e1136ab1790544e081feafd9f400987d +msgid "Objects" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:1 +#: ec3682ebcd66478c91ba6f769605c2bd +msgid "Represents a Discord voice connection." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:3 +#: 7f911d83faff403797bc9208eca7a850 +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:8 +#: 36a29fc8e1be46c1a5352da439a5ecbf +msgid "The voice connection session ID." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMAudio:0 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:0 +#: ae85be689738478c8c55931c8bfabb80 +#: 6920c629202a446eb012541840b29852 +#: eee0ca9ed52f4b2bb028227099beabf7 +#: 9c79837399e6407aa5eed5ce9856233c +#: 2fcfffeabaf7443ebf721c1610289eb3 +#: dc52e60ff0b643c18a5be52a79f3a6d7 +msgid "type" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:10 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:16 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:22 +#: 964fa49cd5a840778b2d0de9f6e4cefe +#: 793cf2c355174fd7997308d4d9a965ec +#: 8aa94617d01a4f03b9a588e904a22916 +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:14 +#: c8eec95e8f044116ab027b3ebdd05b77 +msgid "The voice connection token." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:20 +#: 4ce8872157ad499c94e8f82c673b159a +msgid "The endpoint we are connecting to." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:26 +#: 918a8f624381475a95a7078b155dff74 +msgid "The voice channel connected to." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:28 +#: d71979b351204fd49b0e0e85dc0cc9c6 +msgid ":class:`abc.Connectable`" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:32 +#: 459ead7dba7b415d956100716e15ad0f +msgid "The event loop that the voice client is running on." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:34 +#: d9b30661623f430c953f825b8cbba403 +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient:38 +#: 26feab966bfa4f1fad07f094b7edee5a +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:0 +#: ../../api/voice.rst:0 +#: 771c2db901254eee9b8b03d63009dc7c +#: fb01f37a3ce2458bb7237088803d269a +#: f4deaf0307e544339f4fcaac7b0558bc +#: e4c505fd25a34b1aaf027a23ce478576 +#: ac4f165d6599452db25226ff0a7e7d7f +#: fab43f55cb8d46c18309ff5fddc61816 +#: b660228e1b894281802c261ae32d2654 +#: 5abdb5e4ddf34de2babfca2950a76dd4 +#: 7f35660d885a4fcebc23c4570f774ee8 +#: 52330df6b9d74b889c44ecd31ad0bc37 +#: 95bd3ccff86b423f850c85a5c16d83be +#: b9921e9cbf8f4e13b9611c85e2c50035 +#: 097916a2827d4169afabc5b5f61c309f +#: 0a1db135ede34233a02cc2111512a49f +#: b0cff60b27144f489fb963f023b9288d +#: 6475a382392d403e94c6c2d0e49e5aaa +#: 77a01818697c49a09c752278468a1f99 +#: 69d41da7ec2e48caa0398ba00f33e5fd +#: 71a09c9337f54d45b2723985acaf9fd5 +#: 2456beac41954a5e95e27b81e6120484 +msgid "Parameters" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.VoiceClient.guild:1 +#: 1b19524198b745bd85d0277ffff05c3b +msgid "The guild we're connected to, if applicable." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.VoiceClient.user:1 +#: 0ae00dbd951449cab37e06a27e8fe724 +msgid "The user connected to voice (i.e. ourselves)." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.VoiceClient.latency:1 +#: 51d4b8a5a0ee4c83adc7d042188795dc +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.VoiceClient.latency:3 +#: 480ab595bf334146ba4cf867b73467e4 +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.VoiceClient.average_latency:1 +#: 69cfcf62fc9b4036877b01ad9bf6de19 +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:1 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.probe:1 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.disconnect:1 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.move_to:1 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.connect:1 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.disconnect:1 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_server_update:1 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_state_update:1 +#: cca2eef9de4c41988818f576564c4e3a +#: 0124a63448a04d09bceabbe0a56e9ad4 +#: 2b2f5a6a6de94ee699bb6965bf262bd0 +#: 036633cf1fdc42ba93a48b21ba9acb09 +#: b4b9fb6ef0894b0b95bc06faa3e8c620 +#: 21a0e341554c4244a49b0b723301f8fc +#: 386aa5eafc2b4c1b83f7f87bd8c9c87b +#: 15f431251e504476916f5401b3eabcf0 +msgid "|coro|" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.disconnect:3 +#: be3fe67562924e85984c23095c2faca1 +msgid "Disconnects this voice client from voice." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:0 +#: ../../api/voice.rst:0 +#: 0683fdfd1bb2405aa95b2b4b2c0bbd1a +#: 4ff780af4f2d4047832ca6fd2fb69c1d +#: 234ab6e89ed44bf299fd9a9b6c03740e +#: 842f6f1f3a3c4b6fbcea7bd6791fd09e +#: 06d93b1e976b437e847218ce968f0293 +#: d880fe4362264a78b055f8853042db4d +#: f2b636d7a9e24d8e8b49f78d1b2e4900 +#: ea83c92fc5ad425f90ecc0e31baf3f2f +#: 2646ac699d59498f8a95fbdc8a0d9239 +#: fa5bcb9db5c84928996fa5c02addb075 +#: 8771b3930fbe4b44b28b7e32de6036ca +#: c79a00961d4842a8acb4b23dd0a780d1 +#: 1e6cefcdd84e40e9a18bfcce7bb99d64 +#: a0e56fae902348afaa3d88522fc6a165 +#: c9d8428298034204a7ab4ea957d0f6e1 +#: b3d3d728afd3400c96992e02f0d272f7 +#: 07b51b94b0f44720be2a13ca0086ab66 +#: f2a653c8141d46fdbe33cb351ba19af8 +#: feb84d9eed6c4e908e12e23157aa4670 +#: 52372051be784eec985737e4b1a63e48 +#: 170782bc8dac49cf85c15f8bd820fdce +#: 3151fce786ad4f619809a9c3b0f9280f +#: 4da06b8539464fd7914552d93cc91452 +#: 6fbacc9e2b784528a38eaa2d676bbddd +#: ee9592f37b57465499c3033adfcf68f4 +#: 58475ca4bf0f412399121be3c74b7050 +#: 11a61da9e14a4eac83035d9762df668a +#: 221f54b949984748ab0ba4335a5489d0 +#: d3ee0127c9a94ee183118b00b3885b54 +#: 6e566ab77b634a078605db6e2267b8e7 +msgid "Return type" +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.load_opus:34 +#: ../../../discord/player.py:docstring of discord.player.AudioSource.cleanup:7 +#: ../../../discord/player.py:docstring of discord.player.FFmpegAudio.cleanup:7 +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer.cleanup:7 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.disconnect:7 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.move_to:9 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.pause:4 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.resume:4 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.send_audio_packet:15 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.stop:4 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.cleanup:11 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.connect:21 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.disconnect:11 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_server_update:14 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_state_update:14 +#: 729b005c366f4f4c822b8bc5e2c466e6 +#: fc569a544ec14408a5b129a075fe4692 +#: 2f5356a8850141ef89065109e7ae2978 +#: 785db422570a4def861b61e7bb64a738 +#: ae57b387bc984feab8f549402dd26036 +#: b9398b8c3baf4badaaaf3efe5a013c04 +#: 27ab56fb42554bcb96724dbd580097da +#: 72a72023fec44b2b8eafea45739fe0d3 +#: e232bb429cf140b3819b63938f75afaa +#: 4ab12054d12a4439898aeda79a0ffa04 +#: b914d46b053b4af4a12e99411ae4111f +#: 6a64640d3165434a8b13b147a92f5bec +#: 9a9bff1263ae418c8ae68c2e23e0b3f7 +#: 61534759588043399e891c911b5f3db3 +#: 0ebe6629f33548aca669b37b29a40845 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.move_to:3 +#: eeefd3d7363a4f8aa22085b12b874163 +msgid "Moves you to a different voice channel." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.move_to:6 +#: 69a8eb0817b44122afedbee3993cb7c1 +msgid "The channel to move to. Must be a voice channel." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.is_connected:1 +#: a86c97c8ba4b4ccf88f5143cc8aaf141 +msgid "Indicates if the voice client is connected to voice." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.is_opus:4 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.is_opus:4 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio.is_opus:4 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.is_connected:4 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.is_paused:4 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.is_playing:4 +#: 767c2c6c49084e0caa82953c0237857d +#: 93a9aeb391524022b9bfb3b3a425106b +#: 28146b1e321f4406b70404110817a8d4 +#: 3b701c385cb547a6a11c23abdb4d3c10 +#: 53c368e1a52442cf8c4569c2730cb2b6 +#: 28552688575c4203b74fcd559f72956d +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:1 +#: 57fc8c271dcf4672a13c0d09af0bc893 +msgid "Plays an :class:`AudioSource`." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:3 +#: 6604a136571448a2b914b46492771b17 +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:6 +#: 298919aaef5348af8a476707b4450545 +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:11 +#: d3139e51c8ee42158ddcb51791fa2885 +msgid "The audio source we're reading from." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:14 +#: 38aa862e64a848fb9737c3be39577ce1 +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:19 +#: f15d43596eda4ec0b7250dc97d4b689c +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:19 +#: af1ade50379d4cd49b29f986f921795b +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:23 +#: 70a489db9279448f8f1e8eb85633e140 +msgid "If False, None is returned and the function does not block." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:0 +#: ../../api/voice.rst:0 +#: d007fcbd8757434b91652320071c7a09 +#: 1a1842ba50904c8e90560e0e2311f5e2 +#: 5b7803a2e1d247959c819a77e6831756 +#: 3876e4149e7941698b0637877bbf309a +#: 07b869f2652f4453880532931e0146b8 +#: 4a531e0220044095ab49b23d02bed1e5 +#: 1b7d21b2367044c79adb064f19e07f07 +#: cecb7dc4cdef46e082ef7c10e8821e55 +#: 97e4eeebc8584766b8472cc2fb858209 +#: 7e5e1c4e93574828be02e609a6ff2ef5 +msgid "Raises" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:28 +#: 9b4977b2920e46ef89d6fa086eed6796 +msgid "Already playing audio or not connected." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:29 +#: 2c32184f081e4d3091dc8b7027c90f34 +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:30 +#: e2707b00b2434be5ab663ddbaa2b1c97 +msgid "Source is not opus encoded and opus is not loaded." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.play:32 +#: bf26224880174deca44c625c5d7338ae +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.unpack_audio:1 +#: f504c11b5df84968beb921a3ecfefcfe +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.unpack_audio:4 +#: c0870bc727bc4716abb4c5cec379c3fc +msgid "You must be connected to receive audio." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.unpack_audio:9 +#: 4035b1908df1464298c43f79d47c7880 +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.start_recording:1 +#: 22fb81c7c5d74f0098058bea9d24f593 +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.start_recording:9 +#: 42a99458681a4c63a75ff3bae3d4a57d +msgid "A Sink which will \"store\" all the audio data." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.start_recording:12 +#: 9e56273896d04fe18541e1faae58f269 +msgid "A function which is called after the bot has stopped recording." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.start_recording:15 +#: 127ca437b79e49ec827c36b61535fe39 +msgid "Args which will be passed to the callback function." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.start_recording:17 +#: 345367535c76470281d0aebec874d6fb +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.start_recording:21 +#: 0129914a84dd42f78a94558d9c6d78b2 +msgid "Not connected to a voice channel." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.start_recording:22 +#: c67a79b83ac64d21ac3835a3cba3003e +msgid "Already recording." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.start_recording:23 +#: a9cf5b332ce2468589c4b7661294abcf +msgid "Must provide a Sink object." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.stop_recording:1 +#: 603f2190da994c9299b2bdfa9d7daab8 +msgid "Stops the recording. Must be already recording." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.stop_recording:6 +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.toggle_pause:6 +#: 1d0feb804c5f4998a3a3b6ef09938280 +#: 3cffc9df03e94ceea9d7f785d5186ee9 +msgid "Not currently recording." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.toggle_pause:1 +#: b6aff79c184a48ebbed06c780190ebf4 +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.is_playing:1 +#: f78d41db49fc4152b00c5f70257e56ec +msgid "Indicates if we're currently playing audio." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.is_paused:1 +#: 76ef11546be5411a9f6964c8fd40fc02 +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.stop:1 +#: 078a6c259afe4409a4475f652b0e7f88 +msgid "Stops playing audio." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.pause:1 +#: 2216d420fd7c49c891491be2adb1896f +msgid "Pauses the audio playing." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.resume:1 +#: 73455b7f90e845ee9744e8c4eda03f86 +msgid "Resumes the audio playing." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.VoiceClient.source:1 +#: ccad892b561941b9be6b0247b7d092dc +msgid "The audio source being played, if playing." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.VoiceClient.source:3 +#: 6eb8859de16c4f2fa84d7d41983cceba +msgid "This property can also be used to change the audio source currently being played." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.send_audio_packet:1 +#: 7f2243ca2fe440b791ce4cc95fd94958 +msgid "Sends an audio packet composed of the data." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.send_audio_packet:3 +#: dde0285d86d1429084b5817343862b06 +msgid "You must be connected to play audio." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.send_audio_packet:6 +#: 98badc5455d34bafb986af7ffbac9a2d +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.send_audio_packet:9 +#: 4a3d7f4095d54101b9925170f9af6e54 +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.send_audio_packet:12 +#: 08803b6e20e1411fab86e349e2e8e49a +msgid "You are not connected." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceClient.send_audio_packet:13 +#: 1ca03a935f684bf1a08536d41c8a9612 +msgid "Encoding the data failed." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol:1 +#: f2844a86f9fd4343a918929c51912b97 +msgid "A class that represents the Discord voice protocol." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol:3 +#: ae6cf4d84a8a4d8bbb01dc5d80f0bc2d +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol:6 +#: accd8a733e4b4bc2b22d8f2839ff52ac +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol:9 +#: df53f4cee6ed47d69868708c84cbdb80 +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol:14 +#: fa32e0685f39406384e72c7b9144baf1 +msgid "The client (or its subclasses) that started the connection request." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol:17 +#: e16ec818f25d4fddad575fd8d76afe2c +msgid "The voice channel that is being connected to." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_state_update:3 +#: 6d96f84aee2a482e9e9ad8b2ab7cce78 +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_state_update:7 +#: 1539ca4620934988956683793045c8fc +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_state_update:7 +#: 48bd947053204f28b7732886369ed779 +msgid "The raw `voice state payload`__." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_server_update:3 +#: 687e709bbbf0455399519510c189eb8a +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_server_update:7 +#: 6f7c2101abd34c3f8d08dba198616b24 +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.on_voice_server_update:7 +#: 56fb90b544e34e0da1dcbdcb68f8ee40 +msgid "The raw `voice server update payload`__." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.connect:3 +#: 15f758c06e8545c5a207dd1ef50fdd20 +msgid "An abstract method called when the client initiates the connection request." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.connect:5 +#: f3d9bcfb8fe844868a6a188fbbbb86c4 +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.connect:9 +#: 6a93faa7b4814d8c8b06035acd8d27cd +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.connect:15 +#: 52fae36523ff4d64827f5ceb1a73e433 +msgid "The timeout for the connection." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.connect:18 +#: 63d7b7f77e3246d49c17215bf8b2ae7d +msgid "Whether reconnection is expected." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.disconnect:3 +#: 31402a8e837b49688a5441ed8cde2d8f +msgid "An abstract method called when the client terminates the connection." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.disconnect:5 +#: 661b5828612c4f76a98e93330261ea1a +msgid "See :meth:`cleanup`." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.disconnect:8 +#: 1ad7a2bd10dc4be5b03c46f6238ba93b +msgid "Whether the disconnection was forced." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.cleanup:1 +#: 62bf494b5c6748648e9814c9a0e0e749 +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.cleanup:3 +#: c99b55f1341a43eebc7180bc5b921ece +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "" + +#: ../../../discord/voice_client.py:docstring of discord.voice_client.VoiceProtocol.cleanup:6 +#: 454e51becc6b4aa98fd1b2b08c39ab38 +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource:1 +#: 6564199ed4364bd892d670b97afa2ecd +msgid "Represents an audio stream." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource:3 +#: cf25724172b4441abf2ff2192b8f32e5 +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource:8 +#: 50ac8d94d685498fbdad97a65885518b +msgid "The audio source reads are done in a separate thread." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.read:1 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.read:1 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio.read:1 +#: ../../../discord/player.py:docstring of discord.player.PCMAudio.read:1 +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer.read:1 +#: 43f562d474ac4f259f5972023ab8ed5e +#: 67765f2befd54922806d108acabf11dc +#: 675add47c72f4f398833a67d9f40191d +#: e8e10259edc64c879644f1a9b201db6e +#: 9da1fbf002de4b63875e3031da399d50 +msgid "Reads 20ms worth of audio." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.read:3 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.read:3 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio.read:3 +#: ../../../discord/player.py:docstring of discord.player.PCMAudio.read:3 +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer.read:3 +#: 622981fd3609493ab6b287bc25e013ef +#: 2d1d2696964848d29041d7ec229c47ea +#: e3a40f1afe8b4883b1c536cf435e7293 +#: 58f4c65835214f0080d92cb708c5d81b +#: 2b98519b39494c03b8c9200db1d6a6cf +msgid "Subclasses must implement this." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.read:5 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.read:5 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio.read:5 +#: ../../../discord/player.py:docstring of discord.player.PCMAudio.read:5 +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer.read:5 +#: 328fd72ba7f5414bbe2da58a9d00b5df +#: ef4ae5ce12c34064887e8328ae00b0a7 +#: 028b3a5cfc9d4c03be777fa025bbe90e +#: 491f29403af749d29f65817e991ad0d8 +#: b76c8c55963741aab1253004def750a9 +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.read:8 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.read:8 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio.read:8 +#: ../../../discord/player.py:docstring of discord.player.PCMAudio.read:8 +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer.read:8 +#: a029ad04c1064ffda7caf9582997d2d0 +#: 48d370c95fa84a8d9de06c098830922e +#: 88f35ac8d9da447cb483a6b809e12c79 +#: ce3e1975fc974db2a114fe56549b6bc1 +#: 810791910e94420d82963ba06eef394b +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:0 +#: ../../api/voice.rst:0 +#: 6d76efb6ea404cfc981cd37f90e8a27a +#: 2f7252b244004532b0e908a77d38f6b8 +#: a6c6108c14654afc85fa299bd2e2d9d9 +#: d96374d07b1e4b93abdc3984aa2338a8 +#: a5945b62e8394839b7db89093a2c291d +#: dee8f0cd7c114339a6b21b0ebfe53d19 +#: d98c0854b3da4474b294f6d01aa940ab +#: 0a9acaf5f7ce499198d57d6632bf9596 +msgid "Returns" +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.read:13 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.read:13 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio.read:13 +#: ../../../discord/player.py:docstring of discord.player.PCMAudio.read:13 +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer.read:13 +#: 799b9590449a4eddb9fa665c3767dff4 +#: 0e2bd56840a142639a45c2d166f1fce2 +#: 371829d959f044f3ab0a82196195c124 +#: d98131655fe1461c83ac202b820ea844 +#: aa1dffcc093e4cd4a6794116ff9b5c9a +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.read:14 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.read:14 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio.read:14 +#: ../../../discord/player.py:docstring of discord.player.PCMAudio.read:14 +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer.read:14 +#: febad82c34014a1f9680a5e84ccb5ccc +#: 2305960da46f48f6a95b6593d34c1aac +#: 22df61c5286d495faaeabfccc2cfebb1 +#: edb97626a1724e93b55584e44a7e4a44 +#: c886363fbf8a470a99ad6a99bc3760a8 +msgid ":class:`bytes`" +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.is_opus:1 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.is_opus:1 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio.is_opus:1 +#: 6d11292606384b7aa2726296be6efa43 +#: f933a708c92045868a9caa15f8015d92 +#: 441627e81b294f4e9712c623a70d3e00 +msgid "Checks if the audio source is already encoded in Opus." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.cleanup:1 +#: ../../../discord/player.py:docstring of discord.player.FFmpegAudio.cleanup:1 +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer.cleanup:1 +#: 29e9300bf3e24bcfb0045c59fbaf93ac +#: a6544280b0d94cf092b8461e4608eee8 +#: bbac2762b28c49e18fe322f9591280b4 +msgid "Called when clean-up is needed to be done." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.AudioSource.cleanup:3 +#: ../../../discord/player.py:docstring of discord.player.FFmpegAudio.cleanup:3 +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer.cleanup:3 +#: 1b31cd5b6fa44ef8b1ed95d966efcddf +#: 557038e96505404694c861b87a5076af +#: 6d8eb37aadee4ea8ad39f10c48e9956f +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMAudio:1 +#: 454c3a56198942dd91cabdbdac97d3e4 +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMAudio:5 +#: 3044964ce61e4da5a28ead256611eb9a +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMAudio:7 +#: d92892017cd542f78639516b8b416117 +msgid ":term:`py:file object`" +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegAudio:1 +#: fce50d418e1a49a4bb5c684f1e1ac753 +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegAudio:3 +#: b29e6aec2cbf4e37a9f46fcab1071fa1 +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:1 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:1 +#: 2b8ab32191da45798a3bea06b09cad1e +#: 6bfee17debc94240a86d9d31ee71e75a +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:3 +#: 7abcb38cf7144b9a8a0a350e7c64fc27 +msgid "This launches a sub-process to a specific input file given." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:18 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:7 +#: 91b78b16596942698136b40beb390887 +#: 40161dae93a5444592d3b38086c0bbd5 +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:11 +#: e1f5be3b142f4c60996984791631220f +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:43 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:16 +#: b18d98307af54783b5509b299f373832 +#: ee979d778a514578afa221436f337ae6 +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:46 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:19 +#: f5acb595a683400e9c9246fb48d1b253 +#: 21ce334995aa4931bcc3071260ba9289 +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:50 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:23 +#: ef5575dc64624e11a2c1919f793f55d6 +#: 374ca46ede85471e8c4796af9955f286 +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:54 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:27 +#: 452e450be3f544b7bbb5e50227089276 +#: 66021a8ed46e44e0ad3a8d872261a124 +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:57 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:30 +#: b8cd968276cf470896aa34aaa8858222 +#: 79971e5fc9e6447cb18c13317097b842 +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:60 +#: ../../../discord/player.py:docstring of discord.player.FFmpegPCMAudio:33 +#: 732d7e069def4da7a6802b95b9c16ff7 +#: cfe616123f1744e89d7e549cdae8baa1 +msgid "The subprocess failed to be created." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:3 +#: 9dc5129d03a44f96a1113824ad234006 +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:7 +#: 1eb0937b784c4f5a8744e7c5d6627f73 +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:22 +#: 4097804468e6405b98c9e9a7b816e268 +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:27 +#: 6012d88e487c49daa51b2a8bf0029b6b +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:30 +#: c6bb03f73f714f3696b1d71832aa6dd7 +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:30 +#: c802b41b6d7c4883b9a394014bcc25c0 +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio:38 +#: 09a411b1eaf34bc69f3bfbeb340af7d3 +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:3 +#: 35f1693ec571498197d28d5d66518671 +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:7 +#: 41e640e3d8f14aa0a4cc4e58026ee763 +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:9 +#: e38b99fa71bc4e8492387ca26352a623 +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:16 +#: a2d8c7a8d4774b2f9fb7fd738de46c8d +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:19 +#: e14ec376d42c48c681eb7482ec2bbc94 +msgid "An instance of this class." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:20 +#: 91039cd3f1a646fd93a389dc3e904682 +msgid ":class:`FFmpegOpusAudio`" +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:22 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.probe:16 +#: 3053ad3525814d9b9594f43d09f6897f +#: db6a307d1e144376a9adfd32cd860429 +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:23 +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.probe:17 +#: e0336172704945ea9e77c9f6e061ce96 +#: 6cc842547fd3432eba8e2eee96e8c792 +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:26 +#: 15fd471b8f1d4008b6dcecbdd944d531 +msgid "Examples" +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:27 +#: 5bb31401509a4000a5ac24d2e4fccdcd +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:32 +#: 24863a6c90b147e3b3513066b31da439 +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.from_probe:38 +#: 5f3cfac1b6574d86a3845b06726769ea +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.probe:3 +#: aa8415fa4b594f4ea8734411049ff2fe +msgid "Probes the input source for bitrate and codec information." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.probe:6 +#: 07a37479b48e47c2942cbb79eabfe372 +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.probe:8 +#: c1a1cca3f2da464795bf0e0b01c1e012 +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.probe:10 +#: 23cde3d76b3a4182bfe7f7d9b665280c +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.probe:13 +#: 00c5fe83aed044d5ae6120952dda1239 +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.FFmpegOpusAudio.probe:14 +#: 4546934e84b647eeaab2d6b3fb42f1fe +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer:1 +#: e96c63f1e2ae4283862ed283aa007033 +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer:3 +#: 73a707c638464a5e95fc9ad86306f669 +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer:7 +#: 35d32bf867b441eba8a6e6873210647c +msgid "The original AudioSource to transform." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer:10 +#: 5a7f62f4887b41f892643cd0f9875629 +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer:14 +#: b25b8f369b194c0588eff0b0bc4b849d +msgid "Not an audio source." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.player.PCMVolumeTransformer:15 +#: 04045b3895c64369adf33b5585c7a5d4 +msgid "The audio source is opus encoded." +msgstr "" + +#: ../../../discord/player.py:docstring of discord.PCMVolumeTransformer.volume:1 +#: 3618db04a8bf4ade8f80c7f6badc6dcb +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "" + +#: ../../api/voice.rst:51 +#: ed47d49eed814b809c78cc4bb0732cac +msgid "Opus Library" +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.load_opus:1 +#: 22e8938e9f34444eb6d6894735b125b8 +msgid "Loads the libopus shared library for use with voice." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.load_opus:3 +#: afe64cf940e5486696ce22d97e7f0a0e +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.load_opus:6 +#: e0503cede5cf472bb7f490681eae194b +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.load_opus:9 +#: 15797ca758624cdd9e5a2bf2903b9c1b +msgid "This function propagates the exceptions thrown." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.load_opus:13 +#: afe43f95849942968874292393a7fcc5 +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.load_opus:20 +#: 1a73eb3b82294411b6413c19cc7f2dac +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.load_opus:25 +#: cb3839f007134b0494f90eceb2d946e7 +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.load_opus:31 +#: 327817cde81f4049bd3f39b9d09ab729 +msgid "The filename of the shared library." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.is_loaded:1 +#: e8dbd72423d7404eb8cc41395b1aca77 +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.is_loaded:4 +#: ac6afe44563847638f4fd78ddaf09561 +msgid "This must return ``True`` for voice to work." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.is_loaded:6 +#: bd1e2285c4c64e288ecf523960eb60ef +msgid "Indicates if the opus library has been loaded." +msgstr "" + +#: ../../../discord/opus.py:docstring of discord.opus.is_loaded:7 +#: 7e7adaac9a18484590ca895cd62bf0f4 +msgid ":class:`bool`" +msgstr "" diff --git a/docs/build/locales/api/webhooks.pot b/docs/build/locales/api/webhooks.pot new file mode 100644 index 0000000000..0f7887abaa --- /dev/null +++ b/docs/build/locales/api/webhooks.pot @@ -0,0 +1,1396 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../api/webhooks.rst:4 +#: 9e237853b6974d7a8ff25dfe852a6d11 +msgid "Webhook Support" +msgstr "" + +#: ../../api/webhooks.rst:6 +#: 33c0738132ee4d2cb28a05405a8c229b +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:1 +#: 54762879672a46deade9460a7b561492 +msgid "Represents an asynchronous Discord webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:3 +#: 6130f4c50d5c45348a4b8700b8749b08 +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:6 +#: 2802a4be3d954ea6ac5ed96edb9a9ee4 +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:11 +#: dc823f1bd57a4d748871bf198faff87f +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:14 +#: f867b6076f3b414b863f2e50bcd71f69 +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:26 +#: ec565b094bc14d95b4f18fd1cf8b70d4 +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:32 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:9 +#: dc8818835a2a415e91e864c41617c1f6 +#: 0f99b9ceb45740a89e4a7bc12c91e1be +msgid "Checks if two webhooks are equal." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:36 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:13 +#: 57e5d2ff7e674b70b1cf5a365d0aea05 +#: 603bc49aeff04503875d0e8b59b50e85 +msgid "Checks if two webhooks are not equal." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:40 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:17 +#: a29f89c3884241678664d1eee50c1e62 +#: f67c6e3c0c584db6b9a8f1fa014acd8a +msgid "Returns the webhook's hash." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:42 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:19 +#: e2c2d969ba244d58ae00978769243829 +#: 2f5354a5e28d48a18d49b336417b9908 +msgid "Webhooks are now comparable and hashable." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:47 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:24 +#: 9ce39e01859943ada5b04b9feca0629d +#: 3ed2fd63f3bd469a8e02a4173568af01 +msgid "The webhook's ID" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:0 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:0 +#: 05226483bba4422686ebd5e1759e03eb +#: 867fb1d0956c45a688a9bccd4d0e39d2 +#: fcd7cc29aa6642c69b150c09448a7cc2 +#: a175b7d3b082438481a88e170e3b56ee +#: f89922b9fe28493d8b9865e2221e51c6 +#: c62c2bc7e9dc40df90d661c4f5495935 +#: ef7491e47bbe4bc6a92a3f236a1243b5 +#: 8ec37bba20ef472bbd5212b0e31c1f90 +#: 072b763bd6954d3887f1377e27a1cf78 +#: 9ee22664aca94669b7f1f42eee35554d +#: 7f6a88023911415b9572f52fd6745bf6 +#: 977e58a364e54f12a0e7ab82f7953c1e +#: f3f076cd019940dbac5d2fde2b488ffb +#: d78e692debe24339a7306250c641697d +#: 1c5ffd2d40474cd69c8be7d2369fa2bd +#: d7094652b36144c0bfebb152aa3641a5 +#: a7888f4831c04a9d8543768f6e1124bc +#: 399c74a3ba7a4edf8f85c0dbfa06b384 +msgid "type" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:49 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:26 +#: 8b68ef30b943469eb2d5429f2eb295e0 +#: 184ca03bc9b9433d9d4dddb9314f7e79 +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:53 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:30 +#: 9d87af4b6a0a46fab4c6bae84cf5672d +#: 23d4eb2113df49e59ec53bb2ab1ec13d +msgid "The type of the webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:57 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:34 +#: bbca3d9eb4cb4108a6ce498ea4c5e5c4 +#: 6528be88792745c6af85081b08b61ae2 +msgid ":class:`WebhookType`" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:61 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:38 +#: 1953f318f067447d92c2841b3eee95f0 +#: 46f8d685eb114e3a8bafa7a33030f297 +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:64 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:89 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:41 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:66 +#: 9fe496235d7840c398a8639d961be6d3 +#: b51554387f2146e2a8d4785717942922 +#: 5649761eac8c4357bf37e0ee72ed10a8 +#: 39cd7a6cc7614da0951dcb4fd2941973 +msgid "Optional[:class:`str`]" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:68 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:45 +#: 002478d171954c4db75c0f7a56587338 +#: 3d66f509729149c8bbac1ca7158b6d1d +msgid "The guild ID this webhook is for." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:70 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:76 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:47 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:53 +#: c32911d397be4cf89ac379159b2f6d57 +#: 5d430eaf86a048df9dec47af3be3b9b3 +#: 34f98475bb884d7a8a4d349034bec7ac +#: 1b1adc2b50f9480baf153d1c675d23cf +msgid "Optional[:class:`int`]" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:74 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:51 +#: 5df24bb44a7644778c46c75edf333f6f +#: f66a9b011d8744dab4f5db75a3354512 +msgid "The channel ID this webhook is for." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:80 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:57 +#: 4219fda06ac7415fafeabc7dc92505fa +#: cedfbbf319e24b1eaf5c66b0d7c90479 +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:83 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:60 +#: 86343165e9814a6f82275ef89a1bf72b +#: dbf3fdf8db6f4a6aaa23cdd208067234 +msgid "Optional[:class:`abc.User`]" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:87 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:64 +#: 1b3eba38201c4dcb92a79961d72806c3 +#: 8bc7666887ed4603a6232806b47a4c2d +msgid "The default name of the webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:93 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:70 +#: b53f00434bb847d8a9a05f1842e7e1eb +#: e84cc4c1e7a6427c9575f5db957431f4 +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:98 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:75 +#: 1e87802b937d4ba987fbf4449c3ddd65 +#: d52a790cb9e7434e88c6340f52a355a2 +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:102 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:79 +#: 4334d13ae69f4f6bb91c758ff189fa68 +#: 6b7f2c1f04ab47fbaccb2d8da7fe625b +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook:107 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:84 +#: 2834bba8c9944769b38d885305df7bba +#: 8de51b6d44fa4737ab540ddd87c185e5 +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "" + +#: ../../api/webhooks.rst:0 +#: 8d2ed0e6e1f04493bea6cde65a3b803e +#: 65d278375a114be1ad47244bad120056 +#: aeac642079b24da39a55b480d7f11f21 +#: fca3bbdeba264d51b10896fc9ba953ab +#: 89516d3e3b6e4664bc4cb33c0a15da00 +#: c1637efd86d14f01a5ab87bf13ff0a9a +#: 4b8e494f55ce467a83a0dcf8564c7128 +#: b6ec5afcc4844a89a37ff06b1fce8728 +#: dd2dadd1bc354860a8d3bfd963efa172 +#: 65b91ca4c67a4c6e9e223bd4baa39cb6 +#: bab986faa9b84b6eab3766e5dc4f65be +#: 2a6dbf19fec0401da878f409a1223406 +#: eaa61028dd334053a6054d950e115f67 +#: ecefa989d6bf4423817f8af3a9760b04 +#: ff360a3fe64d475c8bb0223c151e15b2 +#: 5a1d6647cea44a9d9b3b953b03be20a7 +#: 729868ab3cdb4d64b21427008b0e502a +#: bb88186e3c324dc9ae129eed893ed95a +#: 81a7bc9a0f9b44f096f6bc43e2b732df +#: baac432c9cbe4b4dafaea5b2e243ef22 +#: 4741bbc19cc448e7a02b3f14ab40082c +#: e2fc7b85f0a54cf2bc9583210cbc562a +#: 47f64a1ccedb412d84512fcc3de54af9 +#: b9fbe6d21b144e38a3b8bddecb0cd260 +#: 2a7ce2d14e6f4d43b8c18dff80d69818 +#: 8d70d5eaacf6471eb3976571a766f5ac +msgid "Parameters" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.Webhook.url:1 +#: ../../../discord/webhook/sync.py:docstring of discord.SyncWebhook.url:1 +#: 80def0fef9c746b99c1c6e318bf3e746 +#: 018110b6f40d477fb9910915d427bea0 +msgid "Returns the webhook's url." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.partial:1 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.partial:1 +#: 8a221f21eb4f46038c4abbfa44db1805 +#: 7060f29dd7d1487eb9d7de8d9442330e +msgid "Creates a partial :class:`Webhook`." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.partial:4 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.partial:4 +#: 4255bef48a8b4c979d2947ded336c0a0 +#: 0592a0870448481e81add88499153b79 +msgid "The ID of the webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.partial:7 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.partial:7 +#: c26ef7a4a733461089c7cc53d5264381 +#: b4570f53785d4f84b44fbd4766c2c1a4 +msgid "The authentication token of the webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.from_url:7 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.partial:10 +#: 169396a9a2a44033b16911dd71982574 +#: 6ba95c33a1c147bcae02dd0fb1ad126f +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.from_url:7 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.partial:10 +#: 5d12b915f2fe409e9134257c1fce1245 +#: 0392881964294df0adb890e3948ef49a +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.from_url:14 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.partial:17 +#: 4059598390a3493db4f0464693630d6f +#: f56210d48c314e5ea934feb4104820be +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.from_url:14 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.partial:17 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.from_url:13 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.partial:16 +#: 16b667fd36e34ab399f839558bbc75ad +#: e533e1fc79ea4a9d894e7d4a9696bd95 +#: 064c5bda421e4afe8052ed60c0c4571e +#: b89e527c039d4ac4bfb0a83251f0555f +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "" + +#: ../../api/webhooks.rst:0 +#: 9ec5fe0284294ee9a5fd8a662fc09e1d +#: bbb70b8fcf224bc2921b14e7a306d2f9 +#: 1d8bc33d958e4f5badb9f73b71839d26 +#: a69a2f45e4084666a57a753f4330b119 +#: be0a1ab8a2254c6fbb9f6bbbc1297311 +#: bfbbab2561944cb7815d1807ed46bbf4 +#: 6e5d965f5a2349cfb6a0986aa9c2b95c +#: a5c71bce8be04ac48397306b296e5072 +#: 741af853c2694404a8ef56d3c940e9cf +#: b3acc75316bb4d99b9aaf08576b709ec +#: 3b3abc39ee1844b0bb02a7aafaee63e2 +#: 12571487fd124a6eb98a51b7920fe0e0 +#: bfccb2081a444eabb4f9950ff32a1f1c +#: ca07b32fc1e442589857078a4fc9fcdd +msgid "Returns" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.from_url:20 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.partial:23 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.from_url:17 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.partial:20 +#: 5ef04c727fa84405952bca3ed5f64830 +#: 36c2aaac7c1c430ab6e86cbec6344fd5 +#: 36f56ffb485d46158134af3f3b72d49e +#: a9420415c08a419f937591ef861c05bd +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "" + +#: ../../api/webhooks.rst:0 +#: aa5695c654474111925b8ffa2a2c9e8b +#: ef9b57f90dde4f56a2ccfe907ae6f69a +#: a4b300f6a3534ff4b69575c05386db6f +#: 0061f3f374b842f89f81294919e7b332 +#: 1c93c2d555534835830b25ff5e8de975 +#: b7c09fab2c2a41bbbdccb0e3bd1c1551 +#: cac2e021160d479aa7aadb818c8ac8e2 +#: e4cbe6ca2eb842c8a8500ec39b672a77 +#: 3524ae7c70fe448da373ac18c91541b4 +#: 6699173541df4cf0b2d64dc1b9e32155 +#: 0e582d4c476141f2a5dfb615c6d02191 +#: 29a4d73f6f654bdb95f59cdb8283b986 +#: fd3f5c1073b64aef85851f24f370d2a7 +#: d7c1fa42b71d435e943f6847ae61ff6d +#: 829bc489f8b4466ca10e8cb4aba00216 +#: 21a35e447c374a698149c8cee0fb0f2e +#: 41dc47e592ff45e9804d032c9de5487c +#: 3a0de5cee95f4f069e27cab0d5bd36ad +#: 17f68472dcba42fe8f0af144bff7693b +#: 6543b487b51f491093b0a7518bdaff2b +#: 5e09707da35846aea09a89d60f3c1644 +msgid "Return type" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:21 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.from_url:22 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.partial:25 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.from_url:19 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.partial:22 +#: 6abca8c4a9b04a5886c172663749bb17 +#: 601902981989407daf93c9fcbb016b17 +#: 059596f78a2a4bc9a8f8dc47c0d72545 +#: 0ccfcf6854e942f9b2da580aab110e81 +#: a0f0f04098a04adb95f6e6abc687ad8f +msgid ":class:`Webhook`" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.from_url:1 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.from_url:1 +#: 7149d5e4edae46c987d2af3fcb4ebd5f +#: 62db58ad3bb54bedaf637267dc5a1fee +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.from_url:4 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.from_url:4 +#: 7c5b01df522d472f80c1a9f78fa193e0 +#: 4f9eae91845a4c379810ccd3aad3cc56 +msgid "The URL of the webhook." +msgstr "" + +#: ../../api/webhooks.rst:0 +#: 735b30610b2d466fbc18d717607b17af +#: d518bcc0541b4feb921292e91cf26a84 +#: 3a5fb2ca5abe4ff9a7d5135aa47cb20d +#: 28e9e782dcad43c79f853109d7b92168 +#: 636efb42801a4e0ab427b4b82d656c51 +#: fcb19d9c341241e4bf05a85eca2c35fa +#: 63a102f3ac9b44338a3a33437fe21c10 +#: a319616061d3489dbd1dd48a4fee5c2d +#: c8082c50852f4964a1162bc2b99d28b7 +#: 44a3c53d49f14587bd21ab912ce74102 +#: a4b28b0d5cbc42bc82da2d2681de25c1 +#: eb44bdd7071642c4a7ccb7218511163e +#: f80dfcc52ab24a2faf78d0c8ae0f3e45 +#: e9c9c989994a48a696dd689ad339f5bb +#: 43431d37eb44432ab097b3c8bd6eebaa +#: 783798e7c763484396703d61f4209dbc +#: 8846e8c581084bd88c4286cea6adbada +#: 3080f4116f3e474a964564620d33d546 +#: 595a6c1517874a3ca096bfc82e4eb846 +#: 897b5cd4992649b8a43bef0460638485 +msgid "Raises" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.from_url:24 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.from_url:21 +#: fd13911f4fb04a6a8c733764abc6c038 +#: 022c94d40db7432aa9cf6f59be93c970 +msgid "The URL is invalid." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:1 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete_message:1 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:1 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:1 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:1 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:1 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:1 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.delete:1 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:1 +#: fdac30d2f8df4bb79aeba08a36bff1af +#: a07e1c7805a6456eb5fae0f8e1d4e9a7 +#: d750fbe688d34b7aa89e230293149b20 +#: 98db0506d8664e9883d7d98092812915 +#: 99fc496d0ac84fd1b6254e9e641ae26a +#: 5b3ab39649904daa96a5df16fe43ada9 +#: 65809090934a42c385643aa8161f76c5 +#: 3c670e77e3014641b345ff9edcb30e48 +#: 5abfca86c9ce4e8ba1b1400f5b041625 +msgid "|coro|" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:3 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch:1 +#: 06063b46c8fa47e5aa54f5814933d47a +#: c00659f5b83642ed863a181fe19bf563 +msgid "Fetches the current webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:5 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch:3 +#: 128848745b104f83b614d254f783f575 +#: fd68769bc4214fb9b2ab6cb849349357 +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:11 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch:7 +#: d8056223bc7b452588e155d2a25a0e6a +#: d017065daedf4887aaa434a7884526ba +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:11 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:22 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:16 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete:9 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:18 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch:12 +#: d2c9412a9a9540379a2cf7e75301ed37 +#: a5e2023263e54bc9b57bc000f2d35cb6 +#: 7bc22bff719a48868bb779b991673888 +#: a4d0c0aa071342de89544bd3e9a7b773 +#: a3b0757465ff40988f39230e3583ac71 +#: 2678d85a6195438ead791df56aba8df8 +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:20 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch:16 +#: f0d7a0df843d452d9308fe6926d375e4 +#: 273850f6ead544f3b039a7fc9a36a66b +msgid "The fetched webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:23 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch:19 +#: 1042ce16b0744e7eb7b3e2ba09d38b89 +#: 9581e77c1dfb4ff891ce35b50293fd58 +msgid "Could not fetch the webhook" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:24 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch:20 +#: ac9d6dc8a5e94357a2e6169cb134288a +#: be725566b076491d86a4709022702a7c +msgid "Could not find the webhook by this ID" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:20 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch:25 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete:16 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch:21 +#: 2b80475f32b64b1cb7d4b297023aeabe +#: 4fb58470918e432bbeb2fc2fe82f1a7f +#: 95dfabf235cb4b9aaf48598815661b67 +#: 99bdd9cfc74e4f4c8aa76af7a2ece6f9 +msgid "This webhook does not have a token associated with it." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:3 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete:1 +#: b98fb63484e64e238162e965364b8f0e +#: fa3754c578994f009aeddfcebd10e908 +msgid "Deletes this Webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:6 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete:4 +#: cd9be7a2d2974b00948398efa1c82331 +#: 41d7fe3477004c43900875770aa5e2b1 +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:6 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete:4 +#: d1cc11d81a834d5684d1741fa4437b2e +#: b038db542f144f3495620fc573cdad90 +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:11 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:22 +#: 4cde6ae633004199abdcb5396fe41a15 +#: 1044d0d698e040529c945421e1302e6e +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:17 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete:13 +#: eddf95f3a67e4642bc193431f42deb08 +#: 45efc6b25d14483b87436e3ecf9fd1f6 +msgid "Deleting the webhook failed." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:18 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:29 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete:14 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:26 +#: ee60ed9a009c4fa09656abd081f253cf +#: 536f14d418644251b5ff1b7e5ec01288 +#: e1f647d0018b4547ad3f3ba402104247 +#: 3b285a7aeb9f427daeb7bd5e53ff5a86 +msgid "This webhook does not exist." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete:19 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete:15 +#: 85e69036989b4731be5731dfcd41306a +#: 71f5a227d7c44b61a6eef981e23dddc5 +msgid "You do not have permissions to delete this webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:3 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:1 +#: a670d75bf6e24f2ab26632be661e51c2 +#: 89935539aa134092ac26de7c313688be +msgid "Edits this Webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:6 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:4 +#: a6532d34b6a9471cac961393098701e6 +#: e242bdfc90f84563bb08b4a578fe643a +msgid "The webhook's new default name." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:9 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:7 +#: bf637234fa6c42e8b1aa7f77b6d274d2 +#: beac2aa1cdaf423b85631336044144f5 +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:12 +#: 31a547df48b649ea82615ac1728ab8e3 +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:12 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:10 +#: 5b3c6db14fb245dfb10e78a5d84c0838 +#: 4f9bd57c61d94fd3a99ab909c3c3191a +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:17 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:13 +#: 6bdcdf3cdaae445cbdfd9515165491ee +#: a2237b9b7cf84433bed33ef1d5ea7785 +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:17 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:13 +#: 493fa2a1bfc14309912031da714d1d75 +#: e92ca34e199847288c58367a4b032e09 +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:28 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:25 +#: 4f747bf4be1a48ebb06ecc3d8dbf1852 +#: 7b3a47d8d38b48809a95ebfc7dc82b14 +msgid "Editing the webhook failed." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:30 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:27 +#: a968a18c0a7541e08b3c4153b1a98a97 +#: eb556b3e565e4e8090be3be7eecbde0b +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit:32 +#: 42d37765dc084fecb1b5885e6b7e4abe +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:3 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:1 +#: 04fff9e0abfb46a4904b63e06103f1ba +#: d7b2819abc7d4e308bec9e2c19ab9261 +msgid "Sends a message using the webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:5 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:3 +#: c5e799be8ade40e995feec52b7c333a0 +#: e939b3c1c0d244ec8c03f29cbd41840e +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:7 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:5 +#: e72113abad1b4144aa87980fa08569cd +#: 1b6688110e8b417d9bee52af7467dbb0 +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:10 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:8 +#: 0831d821492945b0a04d2f131a91cf8c +#: 63ec2bb4d5414b35bd9c625c36c49c81 +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:15 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:13 +#: 0a8bf2ad589c441980181bba4eb1bfa1 +#: da60f05732dc43f5958cf2351d73c9bd +msgid "The content of the message to send." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:18 +#: 497b38600d5b47be9c1ede2086ce1e43 +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:24 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:21 +#: 75fd2675f2e44032be336c27e95f0425 +#: 329f894d60e8418babd0615535838d79 +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:28 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:25 +#: 415ad7a79b724742b603af8dfd4a1d34 +#: ed3035289e594e30a8faada7130a8ad3 +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:33 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:30 +#: 57b92cca2540465fa3d09723f5190ae3 +#: bdec6f4cafa148e3918db01822d37174 +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:36 +#: d3e1180ae6b24785be8cca3925c9f1d5 +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:36 +#: 2073461bc84348999d9dc4844da44c6f +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:31 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:44 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:21 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:22 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:33 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:14 +#: b3a137449ab44e4aae5afd8b4c86108b +#: d67be620b0914c15b92a79cd02cb6319 +#: d5da797dde68461daf15dbe5cbc015df +#: 7c6e08154ecc4ca69dc4a064b23455ef +#: 7c30236d94224488a57c2332448cb6e6 +#: 3362b95bd934419c9251381914e90628 +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:36 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:47 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:26 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:25 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:36 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:17 +#: f80272a359f441769b153488a3dec6eb +#: 8d9cff7ca166417db59a8343a80ea9f0 +#: 34064a7e9e464392a61a70d956a57dfb +#: 9f5ad9e7cee54181848d2e2db990f038 +#: 27765acd077d4a3b9e30f2fa38359bd7 +#: 7b7808e744a04aadb3d5e42c0f305be7 +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:51 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:40 +#: 7964d458be5e410b8d83db53a682494d +#: 7c09cfd88d8a4109851ed05a46ae1e58 +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:55 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:44 +#: 33169aeae0d04196aaa9cdba77c5523a +#: 4129e6e69a744c9f9011157faafde27a +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:59 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:48 +#: 5ad6432e50fc4f0b8637b5f042754c8c +#: 38548540ca534e32b82858dc7e869d49 +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:59 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:48 +#: a46016c132a14ba9a0b18b8a658f78d0 +#: 25a24ffcb57243e3a6aac660e58f40df +msgid "Controls the mentions being processed in this message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:64 +#: 5ace0f92a6434f1d842e58de5574440d +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:64 +#: a2103cbca1a146e8b97c4431646b37c6 +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:72 +#: 1091b11fcf1a4d4da35ba6893f4e8510 +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:72 +#: cb9cb046f73843b5a03fe43fd7beb042 +msgid "The thread to send this webhook to." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:77 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:58 +#: 7a187519aa2940c9905505a4d17452f9 +#: ce59182ca5ae46a7aa023fb15a759cff +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:77 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:58 +#: cec0156f9702482e87281e9c7d4b5888 +#: 66b29f938d6744b793c75e144a609c1b +msgid "The name of the thread to create. Only works for forum channels." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:82 +#: ba1f4ffdfcad4ef7b7b25ce1bcdec3a8 +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:82 +#: e8959512ab2c4d488d564a97603a1a45 +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:87 +#: 2e5f0ac61f574217a527c43908d96ed6 +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:91 +#: 37f414a7bd1b4e68b81070bd20ade192 +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:91 +#: dc0e0acf8e3b475f9037531ba1341c62 +msgid "The poll to send." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:96 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:66 +#: e0b22d0c21d741aa88a1390bece4595d +#: 198202cf1d9c4722873b76551c23a666 +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:97 +#: df72ee848bf246b3b47dd71ddf117195 +msgid "Optional[:class:`WebhookMessage`]" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:99 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:69 +#: bfbf2157a6bb43c4b27470ab17ae6444 +#: 7f8a38b849e445d6ba889e6cd458100e +msgid "Sending the message failed." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:100 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:70 +#: bcb74264d1f94f878a08026994728ba7 +#: 14297b15634c4d1c8e59a5505bef80ae +msgid "This webhook was not found." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:101 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:71 +#: 57e9e2c90b6345d78dbd1c5a212a020a +#: 288565c3281349929137c3cbd84263c1 +msgid "The authorization token for the webhook is incorrect." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:102 +#: 1a57e7a87a114e19b05434cb16f239d9 +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:103 +#: d0ae47fd31c846c989dafd4048aca5c0 +msgid "The length of ``embeds`` was invalid." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.send:104 +#: 24d33e686b2541a7991efe6371d53143 +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.Webhook.avatar:1 +#: ../../../discord/webhook/sync.py:docstring of discord.SyncWebhook.avatar:1 +#: fb5c67f696704406ada2e50fc20c3b5a +#: b698d80096f7403ba6c9c5f4f56f8cc4 +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.Webhook.avatar:3 +#: ../../../discord/webhook/sync.py:docstring of discord.SyncWebhook.avatar:3 +#: cd4bafd5cdd748e68418c0fe6a77903f +#: aa7e7e77e9a6417bbcad10b68769112a +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.Webhook.channel:1 +#: ../../../discord/webhook/sync.py:docstring of discord.SyncWebhook.channel:1 +#: ec155bb383b3493db6d592f118ef175d +#: b0e5df787afd4134a9f27c14cfa0806f +msgid "The text channel this webhook belongs to." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.Webhook.channel:3 +#: ../../../discord/webhook/async_.py:docstring of discord.Webhook.guild:3 +#: ../../../discord/webhook/sync.py:docstring of discord.SyncWebhook.channel:3 +#: ../../../discord/webhook/sync.py:docstring of discord.SyncWebhook.guild:3 +#: 49f080cdd3004ec4a04e580041816ff8 +#: 022253ecc6494569a37a64e3989de332 +#: c66385e00fac41c189ea7d82d85d0db9 +#: fd82aac7debd473aa87a4ac0207e9c07 +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.Webhook.created_at:1 +#: ../../../discord/webhook/sync.py:docstring of discord.SyncWebhook.created_at:1 +#: 2bb647713cb24bc2b8fc3564e3c354d3 +#: 51ccbb8f14b1435a9cddb90967145461 +msgid "Returns the webhook's creation time in UTC." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:3 +#: 3ebd689f276a43cab2c962219ed428bd +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:8 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch_message:6 +#: fe03e2f34f3949aebe2b2c2aeb8f376a +#: c416c824f58646938cc10f1ce57ed672 +msgid "The message ID to look for." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete_message:14 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:11 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete_message:12 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch_message:9 +#: 54c1624e152d44a1b49022a5be33c6ed +#: c5e6600bf7394a67aa8724a86d9a8276 +#: 1b801aa3da694b1fb0a41e006f67db48 +#: d3b17fa5d4074e1db1ae04d6532cc0b1 +msgid "The ID of the thread that contains the message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:14 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch_message:12 +#: 764b8caa264548efafbde9aa61f2bd13 +#: 6ab628d937b6459aafb88ff400bca888 +msgid "The message asked for." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:15 +#: 3d4d1bd7b0fd48aaaccf3c7f3168d80d +msgid ":class:`~discord.WebhookMessage`" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:17 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch_message:15 +#: adc0d8e7494b4b28a27689f4642a99bf +#: 7207fe3b68f64f8a8c140da81aa900da +msgid "The specified message was not found." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:18 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch_message:16 +#: e527d204d3684032bdc3fc71333dcb56 +#: c26879650f5d433c814783394ac3ecf4 +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:19 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch_message:17 +#: 3b2a515c5b8448499ac19916bebbd377 +#: 92494eb4200f4da19d323bc789631de0 +msgid "Retrieving the message failed." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.fetch_message:20 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:58 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:40 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch_message:18 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:35 +#: 1776e8cab52642f6a978d91bbf648938 +#: 15d7ddb34d114f7a99c69037b8bc39fa +#: 5b05a764b5944c69861df40833dc56b8 +#: 4d11b05888b04d598188a4d96d126217 +#: c26a2b16d5d94bd3a65a5149327152aa +msgid "There was no token associated with this webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.Webhook.guild:1 +#: ../../../discord/webhook/sync.py:docstring of discord.SyncWebhook.guild:1 +#: 52d58c37da744b78934404b08a05d5ef +#: cd00141236a54abb9ac3b84eae0a578b +msgid "The guild this webhook belongs to." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.BaseWebhook.is_authenticated:1 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.async_.BaseWebhook.is_authenticated:1 +#: c46e8899998c48fdbcc590fa47717cef +#: 53da81ecbe5a4d4bb63f4b4f776c0d41 +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.BaseWebhook.is_partial:1 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.async_.BaseWebhook.is_partial:1 +#: b6d6fa1f6451445c81ef826852a24c77 +#: d39d405809f54a778e5db34e04b3fc95 +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:3 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:1 +#: c1b9dd3681ee4a8584c4cd79ed1d4977 +#: c7eadbacb5ac4096b9b9bada91e833d2 +msgid "Edits a message owned by this webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:5 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:3 +#: 9971472f245b415aaadbb8956285f297 +#: 3eefa1a227ea4f96b8d847a3a507fd6e +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:10 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:7 +#: 2d67b9ca76344875adb757cf10cd8511 +#: 8af6785c98bc455e81d47c71f41501d8 +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:14 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:9 +#: 5a82c8e80c41438cae3f995cf46fe2d6 +#: a9e4ea6e61aa408ea880bd28b50cb2f8 +msgid "The message ID to edit." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:17 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:11 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:12 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:4 +#: 1bc930d388a74891b13d38e6263f9603 +#: ed34e4fc95fb47acbc1577c836be845a +#: 7cbd742ce2934ba58758ac9b9bd76dad +#: 9271f9c8ad084cebb3ed15f2dc0c2dc9 +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:20 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:14 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:15 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:7 +#: 20312965a9b94e4fadbed393402e9263 +#: eaf9bef906a241228685837428b088e2 +#: 85dd5e157ee54e66a6e28d78c61dc7bd +#: d8f2037a79c5458fba497be4b8086130 +msgid "A list of embeds to edit the message with." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:23 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:17 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:18 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:10 +#: a427e1e0136e41efaf57f2ffdb117ca2 +#: 75f6749124da45c898b2058893bbcf1b +#: b9494426284345ffbacd4b90e110c519 +#: 76fc68e7bd934eaf8fd9d73f92e66aa4 +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:27 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:32 +#: 6db59c19de404a34aa15bd6d90797c9b +#: 1261a847eaa24dc5a94da52ea090d093 +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:31 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:21 +#: ec50809a68e94bfcad75d7052dd6e7e9 +#: d973a268394c4f73b7f8296b53b752a4 +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:36 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:26 +#: 2c367cdfe97d4ad0ab9138716b92addd +#: 0648f797465242acbb5ad4fdefade223 +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:42 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:38 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:29 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:21 +#: e35ae8c47975407d87c8b79a106b96f8 +#: 67a35408e50b4bed92ac9a3f9e48eea7 +#: cb74411660504cafa28540cb949c8383 +#: 8a2bb7cfd1b6467c9c7274a714affc32 +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:46 +#: 18109d101eef4900888ecf232da08764 +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:46 +#: 1f6dedbbd77046aba39f88c90128c87e +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:53 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:33 +#: c8e07f2912274c8690eea158d709400e +#: 3ffcd5e8c19c43a893c62a8a241bb38e +msgid "The thread that contains the message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:56 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:48 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:63 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:25 +#: 0e58b4588c244b2795b9a25162938b69 +#: ba994c7eba3048d7a5330aa66e6223a2 +#: 13349759eb4d4dd8802d0bed0cb95c2b +#: 67c4905f360444e286aa49fcfa2b1b10 +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:59 +#: c6dc3ee101f54698aeca7d6697305461 +msgid "The newly edited webhook message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:60 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:52 +#: de7030ddb3b642eab991d82d5465c6f6 +#: d23329b2f76a4159a4087965b502de6e +msgid ":class:`WebhookMessage`" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:62 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:54 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:36 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:31 +#: d84d5cea09fe494b9d14bf275d256589 +#: 2911c1f972ab4f1288075c647b177fe6 +#: 6071f2c259c143f7bbd0333a204b45d3 +#: 6b5a68c2d6384ab18f5c9c56e376ce4d +msgid "Editing the message failed." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:63 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:55 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:37 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:32 +#: 97fab4294de84554a109d5cd2c95a4bd +#: ad39ad3511944866a16078d24a752fd5 +#: 614c1f2626bb459b86310fb14a6766a5 +#: e85aed7299274aa8a607ea5efecdcd76 +msgid "Edited a message that is not yours." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:64 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:56 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:38 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:72 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:33 +#: d13931c4ffe84322bebc37b53d758401 +#: 05ce44d9433040619f0f644b8b548189 +#: 6eac1c3b7292418d9bdc9468d9fd736b +#: 5cf2e6a486c747f695d24c1dd923ea49 +#: 0ee40fbeeaed44cd89a5c938b564313c +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:65 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:57 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:39 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:73 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:34 +#: e8b9d1bf3500443ca1d1f7af7e64ab46 +#: b3eab12f8e87462abedbcfa904a6e147 +#: 4fc8b66942cb4839b20e5560afa7501e +#: 434643453fe94810856e9d1711091f11 +#: efe8437bf03e4fe99966973bbda26d5e +msgid "The length of ``embeds`` was invalid" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.edit_message:66 +#: 2edea985551c4f80a4872296178d9704 +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete_message:3 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete_message:1 +#: 5c9da7d28dce4982bb84fd12dbbcecb0 +#: 15dea039ddd742c2811ae0ba4a4022a6 +msgid "Deletes a message owned by this webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete_message:5 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete_message:3 +#: db8c1747493a459087e6b3b081ac0d5e +#: d5c47868890b4d0cafffe8e6d913036b +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete_message:11 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete_message:9 +#: 234aadd0447949f7ab7b01771bb782e7 +#: 6d1658d87fd344908d39bdff91044acb +msgid "The message ID to delete." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete_message:17 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.delete:12 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete_message:15 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.delete:10 +#: f107745635884aef9d7b126413adaca2 +#: cf6413728c3f4601bd518d470cd6aa52 +#: 08193ea844e54abdbec4d40e9e9ec844 +#: 091a2a3956304512919d443b2dfc9323 +msgid "Deleting the message failed." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete_message:18 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete_message:16 +#: 9be5c7332c714e99ba44b7e8ea204674 +#: 922e88d327a343d08e8a5cea1070c9c1 +msgid "Deleted a message that is not yours." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.Webhook.delete_message:20 +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.delete:14 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete:18 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.delete_message:18 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.delete:12 +#: 56f1e679fe0149e591ce572cd88e0d1a +#: b41bf4df2b96442ca315d4798262ea41 +#: 8e0ca3a0c65c4e00a88b8200783d8b3f +#: 28f726448b1a4165867a73648669ed22 +#: c46e105b902f43849250fbc1da24ed70 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage:1 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage:1 +#: d71174eb01124078b8485ecf5425ec05 +#: 50e22ee16b5848178dc9b232382ae7e0 +msgid "Represents a message sent from your webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage:3 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage:3 +#: 1c655677226f4830aedb23fb6f1837a8 +#: c733980eb8534faf99bb803c964524c3 +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage:6 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage:6 +#: 33093f55fb9f4195a31a391a774f446b +#: 8da32e9c443f44618a2d11ad25586f60 +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:3 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:1 +#: a2e790bc16394691bb3ba3168ece42f6 +#: 8d76438ac0a449f096840bc580b21c7a +msgid "Edits the message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:32 +#: 465ce5ddd21b444aadbfef12107dcd6c +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:42 +#: 40f8551587c84121952e24867cb7b103 +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:42 +#: bbe0cec8d8fd472a8414d1f64c871ac9 +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.edit:51 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:28 +#: 0d4acea514904c8b82ce6ba49a8d5093 +#: ea51e461eb4b4e72921bd90176465112 +msgid "The newly edited message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.delete:3 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.delete:1 +#: 1512b9e2d2e74beea6be22bd4a805a28 +#: 16f52ca9ace24fb38a6dd193b112cc64 +msgid "Deletes the message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.delete:6 +#: 243b13bacd334531b0be3088f532d8cd +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.delete:10 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.delete:8 +#: aba4600cb0384affabc1e3f706cd8796 +#: 96b6ad26e0cc4979923a463e329f90b3 +msgid "You do not have proper permissions to delete the message." +msgstr "" + +#: ../../../discord/webhook/async_.py:docstring of discord.webhook.async_.WebhookMessage.delete:11 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.delete:9 +#: f04e4a0b1cbf4f3daade0da691833e50 +#: b83c32c0775b4ad2903f16caa49b75cf +msgid "The message was deleted already." +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:1 +#: cc1d33c5b8a84a29876ee006017500e9 +msgid "Represents a synchronous Discord webhook." +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook:3 +#: d85dc67cc7ae41b887606e9f7b9836e0 +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.from_url:7 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.partial:10 +#: b9c19a7dc665479f9dd4388f7783d712 +#: 840907faec8c45c0952ebfdb3349d390 +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:23 +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch:17 +#: 4d5326bd667b4df2bebe23caaa5cc701 +#: be82f96debd24cffb17feed64f30b7e9 +msgid ":class:`SyncWebhook`" +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit:22 +#: e975ac9571684c7395ba098a454e852b +msgid "The newly edited webhook." +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:16 +#: f39da5d0640d48a48876001d0283dff5 +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:53 +#: 99c8f76e0bc64453945947d86b5cd9c4 +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:53 +#: f63e656d3dc04732bf975f2c2a580042 +msgid "The thread to send this message to." +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:67 +#: 4df5c9ff55674ecfa020102b402e3263 +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.send:74 +#: 785676d5bd474edb981f1c1aedd4a3e0 +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch_message:1 +#: a709c1c1f25a4ac4a42ce45594910a31 +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.fetch_message:13 +#: 09f5ec74a83d4d6e94100ebb8ed78e9d +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhook.edit_message:44 +#: 6a516df32c234c288fde2ccfabba3553 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.edit:29 +#: 0b0928b5ee704cc3b030ef3abee75509 +msgid ":class:`SyncWebhookMessage`" +msgstr "" + +#: ../../../discord/webhook/sync.py:docstring of discord.webhook.sync.SyncWebhookMessage.delete:4 +#: a6721a5618a04f06a9461c10e2957767 +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "" diff --git a/docs/build/locales/changelog.pot b/docs/build/locales/changelog.pot new file mode 100644 index 0000000000..6d9de8d777 --- /dev/null +++ b/docs/build/locales/changelog.pot @@ -0,0 +1,1970 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../changelog.md:1 +#: 538c3900cdf645fb81a5016feccfc3f1 +msgid "Changelog" +msgstr "" + +#: ../../changelog.md:3 +#: 59b7befcb03e461784d4c83ce3619000 +msgid "All notable changes to this project will be documented in this file." +msgstr "" + +#: ../../changelog.md:5 +#: 219721d277fe48a5bba5899c9aa17a84 +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "" + +#: ../../changelog.md:9 +#: caecfc688ef04c74afa24c4ffba6275d +msgid "[Unreleased]" +msgstr "" + +#: ../../changelog.md:11 +#: 65e6b786129440299583dbd277d24b45 +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "" + +#: ../../changelog.md:13 +#: b32d85acd95341dfb2e580a11f6272ca +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "" + +#: ../../changelog.md:15 +#: ../../changelog.md:58 +#: ../../changelog.md:165 +#: ../../changelog.md:425 +#: ../../changelog.md:498 +#: ../../changelog.md:553 +#: ../../changelog.md:569 +#: ../../changelog.md:637 +#: ../../changelog.md:738 +#: ../../changelog.md:827 +#: e8cf33c496dc4074adbbcfbbce555d76 +#: e8cf33c496dc4074adbbcfbbce555d76 +#: e8cf33c496dc4074adbbcfbbce555d76 +#: e8cf33c496dc4074adbbcfbbce555d76 +#: e8cf33c496dc4074adbbcfbbce555d76 +#: e8cf33c496dc4074adbbcfbbce555d76 +#: e8cf33c496dc4074adbbcfbbce555d76 +#: e8cf33c496dc4074adbbcfbbce555d76 +#: e8cf33c496dc4074adbbcfbbce555d76 +#: e8cf33c496dc4074adbbcfbbce555d76 +msgid "Added" +msgstr "" + +#: ../../changelog.md:17 +#: 73f8d143b51e4d75ba380e16b08e6dcb +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "" + +#: ../../changelog.md:19 +#: dd48eb67d9264c6f9c8c34eff1f8dc21 +msgid "Added the following `AppInfo` attributes: `approximate_guild_count`, `approximate_user_install_count`, `custom_install_url`, `install_params`, `interactions_endpoint_url`, `redirect_uris`, `role_connections_verification_url`, and `tags`. ([#2520](https://github.com/Pycord-Development/pycord/pull/2520))" +msgstr "" + +#: ../../changelog.md:23 +#: c3f3b5baaf6d4bf3a3deaa582d1444a1 +msgid "Added `Member.guild_banner` and `Member.display_banner` properties. ([#2556](https://github.com/Pycord-Development/pycord/pull/2556))" +msgstr "" + +#: ../../changelog.md:26 +#: ../../changelog.md:129 +#: ../../changelog.md:255 +#: ../../changelog.md:406 +#: ../../changelog.md:452 +#: ../../changelog.md:529 +#: ../../changelog.md:668 +#: ../../changelog.md:770 +#: ../../changelog.md:877 +#: 6f3f624eef944b38a861d712cf1c2dd3 +#: 6f3f624eef944b38a861d712cf1c2dd3 +#: 6f3f624eef944b38a861d712cf1c2dd3 +#: 6f3f624eef944b38a861d712cf1c2dd3 +#: 6f3f624eef944b38a861d712cf1c2dd3 +#: 6f3f624eef944b38a861d712cf1c2dd3 +#: 6f3f624eef944b38a861d712cf1c2dd3 +#: 6f3f624eef944b38a861d712cf1c2dd3 +#: 6f3f624eef944b38a861d712cf1c2dd3 +msgid "Changed" +msgstr "" + +#: ../../changelog.md:28 +#: dd5ffa5028be44a282b2ac8924972f1f +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "" + +#: ../../changelog.md:31 +#: 9fe0dfdfa63e4ad4b9c4e4043aef28b3 +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "" + +#: ../../changelog.md:34 +#: ../../changelog.md:591 +#: 5b535d4b52244097b05ec474ea2121c6 +#: 5b535d4b52244097b05ec474ea2121c6 +msgid "Deprecated" +msgstr "" + +#: ../../changelog.md:36 +#: effae79d201c4ca0a0e3943743dfc1b5 +msgid "Deprecated `AppInfo.summary` in favor of `AppInfo.description`. ([#2520](https://github.com/Pycord-Development/pycord/pull/2520))" +msgstr "" + +#: ../../changelog.md:39 +#: ../../changelog.md:89 +#: ../../changelog.md:297 +#: ../../changelog.md:412 +#: ../../changelog.md:462 +#: ../../changelog.md:480 +#: ../../changelog.md:491 +#: ../../changelog.md:519 +#: ../../changelog.md:545 +#: ../../changelog.md:558 +#: ../../changelog.md:601 +#: ../../changelog.md:615 +#: ../../changelog.md:622 +#: ../../changelog.md:630 +#: ../../changelog.md:678 +#: ../../changelog.md:784 +#: ../../changelog.md:890 +#: ../../changelog.md:927 +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +#: 25748af9e8d041dc8b2c9e7a88663f4f +msgid "Fixed" +msgstr "" + +#: ../../changelog.md:41 +#: 8b40273b3f334953b36d4e726019a6d1 +msgid "Fixed `EntitlementIterator` behavior with `limit > 100`. ([#2555](https://github.com/Pycord-Development/pycord/pull/2555))" +msgstr "" + +#: ../../changelog.md:43 +#: 9ac720e03f6142e4ac4e0b6de0379c55 +msgid "Fixed missing `stacklevel` parameter in `warn_deprecated` function call inside `@utils.deprecated`. ([#2500](https://github.com/Pycord-Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:45 +#: e2f55b08f081473c867e0e027c8cf264 +msgid "Fixed the typehint in `ConnectionState._polls` to reflect actual behavior, changing it from `Guild` to `Poll`. ([#2500](https://github.com/Pycord-Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:48 +#: 2fb12f31fbda4dd38ac5d75d20c470af +msgid "Fixed missing `__slots__` attributes in `RawReactionClearEmojiEvent` and `RawMessagePollVoteEvent`. ([#2500](https://github.com/Pycord-Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:51 +#: 15b4372aa41846c2bfe24bd729e63048 +msgid "Fixed the type of `ForumChannel.default_sort_order`, changing it from `int` to `SortOrder`. ([#2500](https://github.com/Pycord-Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:53 +#: 7869c915b3f14f07a5bf3a4475157805 +msgid "Fixed `PartialMessage`s causing errors when created from `PartialMessageable`. ([#2568](https://github.com/Pycord-Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:56 +#: 2ea9c95bdc934b7bbbe972ad30512eb5 +msgid "[2.6.0] - 2024-07-09" +msgstr "" + +#: ../../changelog.md:60 +#: ee1185f07728432d90acac5a21dbec45 +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "" + +#: ../../changelog.md:62 +#: d88667c6f5dd4c8789c7f597cbcc5b58 +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "" + +#: ../../changelog.md:64 +#: 9e482633187e4f5c8fa1c1970503e1e5 +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "" + +#: ../../changelog.md:66 +#: 73f8d143b51e4d75ba380e16b08e6dcb +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "" + +#: ../../changelog.md:68 +#: 479db9f659c0426e8a65b42d3e86c344 +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "" + +#: ../../changelog.md:70 +#: f56f60d027c34c1c96d0aae7504b6cfb +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "" + +#: ../../changelog.md:72 +#: f9988dfe7b23484b9ba4809f9bb95d74 +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "" + +#: ../../changelog.md:74 +#: 9ac720e03f6142e4ac4e0b6de0379c55 +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "" + +#: ../../changelog.md:76 +#: a8616b9a932f4606b85de797fc499ba7 +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "" + +#: ../../changelog.md:78 +#: 1c4f1fdcf05c43aba319d2e797df1b3e +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "" + +#: ../../changelog.md:80 +#: 44550f6f16534a32aae326204a92f827 +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "" + +#: ../../changelog.md:82 +#: fc13286743f845d19a7cab16bf48759f +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "" + +#: ../../changelog.md:83 +#: 90ea693eff9d4606a4c04da0d022efe1 +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "" + +#: ../../changelog.md:85 +#: b0e2a36ec1474943ac739d3a17c79296 +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "" + +#: ../../changelog.md:86 +#: 1acba6757cf74da68c1302cbed5100b5 +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "" + +#: ../../changelog.md:91 +#: 7ae94f40f23e4016ad3583ccfa6c742c +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "" + +#: ../../changelog.md:93 +#: 4b405ed8d3174be9b4285624ed111389 +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "" + +#: ../../changelog.md:96 +#: 21ab8865343f4f4a95f4e6fb558290f9 +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "" + +#: ../../changelog.md:98 +#: 9d69c269ed79425ab60e09f9b5e2ee4b +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "" + +#: ../../changelog.md:100 +#: 7c13dbe9d92449f4b9c00b812d03c2df +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "" + +#: ../../changelog.md:102 +#: e2f55b08f081473c867e0e027c8cf264 +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "" + +#: ../../changelog.md:104 +#: 8b40273b3f334953b36d4e726019a6d1 +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "" + +#: ../../changelog.md:106 +#: 384fcb271c8a4306af44212e2fe7c84d +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "" + +#: ../../changelog.md:108 +#: ef1005168cfb44b6b8f2055793ee601d +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "" + +#: ../../changelog.md:110 +#: 7869c915b3f14f07a5bf3a4475157805 +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "" + +#: ../../changelog.md:112 +#: 2ca84f4587674ad0afe6b33699c76e45 +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "" + +#: ../../changelog.md:114 +#: 878001efd2cc45dead2ee90071cecf01 +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "" + +#: ../../changelog.md:116 +#: ab1ed3f8483145bea5b24fad05b5648f +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "" + +#: ../../changelog.md:118 +#: 55d4ea1bd82340bcb8c23812b5179448 +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "" + +#: ../../changelog.md:120 +#: 447daa976adc419590670e36e28bb3e7 +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "" + +#: ../../changelog.md:122 +#: 6861ca06f105483bbc97a0928b422c0a +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "" + +#: ../../changelog.md:124 +#: 0fe082c072ae49f581e23f1910056ed8 +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "" + +#: ../../changelog.md:126 +#: af74ad39a1b34e1fa81b9328b1540ea5 +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "" + +#: ../../changelog.md:131 +#: c07af9a4c1fd4892ae280f8510c5161f +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "" + +#: ../../changelog.md:133 +#: 552325d759394d788ef5af5370590ced +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "" + +#: ../../changelog.md:135 +#: 3131b38385834d42af1359ccf1b8e9e8 +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "" + +#: ../../changelog.md:137 +#: 38abe22de33943b2b3ff6091e2c3779f +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "" + +#: ../../changelog.md:139 +#: b9cb2502b6574133b0e491e40833d831 +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "" + +#: ../../changelog.md:141 +#: 8824c580ff8d4c56916af84ce8747115 +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "" + +#: ../../changelog.md:144 +#: effae79d201c4ca0a0e3943743dfc1b5 +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "" + +#: ../../changelog.md:146 +#: e81f05b83a034f228f9c15b92cb49ffc +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "" + +#: ../../changelog.md:149 +#: 0edc039bb53f4074aa6c2ef293fea3ec +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "" + +#: ../../changelog.md:152 +#: ../../changelog.md:290 +#: ../../changelog.md:538 +#: ../../changelog.md:779 +#: cb54f87243e542f6bdc3742c26311fa6 +#: cb54f87243e542f6bdc3742c26311fa6 +#: cb54f87243e542f6bdc3742c26311fa6 +#: cb54f87243e542f6bdc3742c26311fa6 +msgid "Removed" +msgstr "" + +#: ../../changelog.md:154 +#: 3d4304bdaaab400c8603287757c112a5 +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "" + +#: ../../changelog.md:157 +#: 313a2244ebdf459f93aaf6f06a33ba51 +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "" + +#: ../../changelog.md:160 +#: 4d2440e51f8346a5894152a1e3ac6351 +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "" + +#: ../../changelog.md:163 +#: 6a0c9c7b35c54520a5ae4547c8382a6e +msgid "[2.5.0] - 2024-03-02" +msgstr "" + +#: ../../changelog.md:167 +#: 60a5bb23d20a46b29897ff0b90b12c68 +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "" + +#: ../../changelog.md:169 +#: 41d21b3f7d62487ab79ebdd02c96a138 +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "" + +#: ../../changelog.md:171 +#: 7556f2bd45294900b546bcc8bc4cc855 +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "" + +#: ../../changelog.md:174 +#: f83032a1921645c2b52208a2cd0d80f5 +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "" + +#: ../../changelog.md:176 +#: 3dc5ef7302d8499f8f3b37132cad769a +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "" + +#: ../../changelog.md:178 +#: b26f8600ddae4ee7adf165d713c4c520 +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "" + +#: ../../changelog.md:180 +#: 4c1d702a0fd34e05b931d0149b6d2e88 +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "" + +#: ../../changelog.md:182 +#: c424e9e7177746638415ee55b969a529 +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "" + +#: ../../changelog.md:184 +#: 40bb9fff0d8f40258b28fc994bd31db7 +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "" + +#: ../../changelog.md:187 +#: af0b802a69904f288b90a992f9990483 +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "" + +#: ../../changelog.md:189 +#: 15c6731b295e4b0b8cd7e1340c6ea545 +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "" + +#: ../../changelog.md:192 +#: 07bdc41bd4bd46c58757b555174359fc +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "" + +#: ../../changelog.md:195 +#: cb7c3646df2f43cda8a3b34f6d418af1 +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "" + +#: ../../changelog.md:198 +#: 9d551823bcc84935a681e5d58adf5111 +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "" + +#: ../../changelog.md:200 +#: c3f3b5baaf6d4bf3a3deaa582d1444a1 +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "" + +#: ../../changelog.md:202 +#: 6b5e8bebd67e407cb1bac3eba6d5726b +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "" + +#: ../../changelog.md:205 +#: 00f359112aa840c6816d75ab0587ad80 +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "" + +#: ../../changelog.md:208 +#: b21a35a76bac4e2d9ae6a07c7a3a696a +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "" + +#: ../../changelog.md:210 +#: 74a9e9832d4c4a6fa8734778209c65e4 +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "" + +#: ../../changelog.md:212 +#: f2ec2163c71c48b9a21d3bd75fff5064 +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "" + +#: ../../changelog.md:214 +#: 85eb170585cb42f598e263c7b60a31e0 +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "" + +#: ../../changelog.md:216 +#: 7959cb02aa124f1b82dc5adbc03e84c5 +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "" + +#: ../../changelog.md:218 +#: ade46dafe4b44075b82a661d0516635f +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "" + +#: ../../changelog.md:220 +#: 62effd5e105647abaa72932b226b2ce3 +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "" + +#: ../../changelog.md:223 +#: 343032650b214f1eb5ffe747555db443 +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "" + +#: ../../changelog.md:225 +#: 42ed7327fefc4b54872053b06dc3d128 +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "" + +#: ../../changelog.md:227 +#: 72df647a50374daa932d83ec54fadbce +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "" + +#: ../../changelog.md:229 +#: dddf1b7b1aba48dfb0f3282e4d0658a2 +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "" + +#: ../../changelog.md:231 +#: 3b2c11ddd69145ff9b65a168d5f20f04 +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "" + +#: ../../changelog.md:233 +#: 199637891bab425183cc270c18b0a5db +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "" + +#: ../../changelog.md:236 +#: 4620d311330a4c04b6b2b7b4de078652 +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "" + +#: ../../changelog.md:238 +#: 90293effcc9a4c0cbe82b4d50f4e2604 +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "" + +#: ../../changelog.md:240 +#: f1c971d407c9454c85b3b93e5be66b65 +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "" + +#: ../../changelog.md:242 +#: 4f80fa16c23e41c19ad5f98cb4764338 +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "" + +#: ../../changelog.md:244 +#: 5a3c464362f34da28e03de42a50c57e9 +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "" + +#: ../../changelog.md:246 +#: 4d570b6175b846b7b096d02a18bf1053 +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "" + +#: ../../changelog.md:248 +#: 6e961ffbbb9c4e43a860891df7ed6fa5 +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "" + +#: ../../changelog.md:250 +#: ee841b6b671d4856b893970d196abd64 +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "" + +#: ../../changelog.md:252 +#: 2608a06bd147422aa67260fc397061b3 +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "" + +#: ../../changelog.md:257 +#: 62c9fe1681134e18a42748c961355bce +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "" + +#: ../../changelog.md:260 +#: 3f5b3c8765174ac6aaefd7493e389482 +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "" + +#: ../../changelog.md:262 +#: 13ea43a34662409ebbeff058009c3b87 +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "" + +#: ../../changelog.md:264 +#: f55ea4e73a9c4391a525b1222242d5f5 +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "" + +#: ../../changelog.md:266 +#: 67638ee2ed544e56b98bc22db8fea02a +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "" + +#: ../../changelog.md:269 +#: 97745879546247a08a47059715774c5b +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "" + +#: ../../changelog.md:271 +#: 7088fa09f41846e5892a329b6bcd8349 +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "" + +#: ../../changelog.md:275 +#: ef5d6a731203421cbcc58f074cd546f0 +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "" + +#: ../../changelog.md:278 +#: 64963eb32d2d4c1c9c9ffee138a09b38 +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "" + +#: ../../changelog.md:281 +#: 89f503d44fe24e02b7b7b79a544e6188 +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "" + +#: ../../changelog.md:283 +#: 56adce95538e45d49665b92cda9b9641 +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "" + +#: ../../changelog.md:285 +#: 3bab78924e3d402698ce98a72ddc2c78 +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "" + +#: ../../changelog.md:287 +#: ca59a473432d434ca872411f9c66003d +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "" + +#: ../../changelog.md:292 +#: 4e49791b54b244ee933a82f9e04437e2 +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "" + +#: ../../changelog.md:294 +#: ca26e991f22d4e3d8c6e230f0539ed50 +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "" + +#: ../../changelog.md:299 +#: 0b59939241624a3193186fcb744f65f7 +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "" + +#: ../../changelog.md:302 +#: 1d99b367a7c04345a26271b2bf0023e2 +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "" + +#: ../../changelog.md:304 +#: 7ed9c8e2674b4eea8e16efe2e7916c19 +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "" + +#: ../../changelog.md:307 +#: 26359420acd84d13b7ec8078c585de73 +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "" + +#: ../../changelog.md:309 +#: 579b45e396024f64912f08f8cfca16ec +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "" + +#: ../../changelog.md:311 +#: 18befe9e39544595a7a2036d48d19470 +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "" + +#: ../../changelog.md:313 +#: 084a586848d74bfeb5f2ceba591293d0 +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "" + +#: ../../changelog.md:315 +#: 83b3c68f47754e73ab88708fc8a2ffb2 +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "" + +#: ../../changelog.md:317 +#: a3a4c596689748fe814636d674727419 +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "" + +#: ../../changelog.md:319 +#: 1b761f69f40f462b8e4ef9190b7fc1d6 +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "" + +#: ../../changelog.md:322 +#: fae4d3fe283e4ea396db05e19418ce5d +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "" + +#: ../../changelog.md:324 +#: eaf24d26663f4e6380db8ad8f0172cbe +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "" + +#: ../../changelog.md:326 +#: 84c4af7114434feaa1fecfd718dc694c +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "" + +#: ../../changelog.md:328 +#: 47c28724914e4fc9a18709531f47c88d +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "" + +#: ../../changelog.md:330 +#: 1e8ecddada0440e8b28a3c9be07f3423 +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "" + +#: ../../changelog.md:332 +#: a148a83edd1f4f7b845a87b1a987c516 +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "" + +#: ../../changelog.md:334 +#: 1aa560acbffb489b9c0495cf0b24c36e +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "" + +#: ../../changelog.md:336 +#: 1770b0d4e2994906acfa30119c7eb482 +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "" + +#: ../../changelog.md:338 +#: df13f489e5fa4cc48904626e021c027d +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "" + +#: ../../changelog.md:340 +#: 269b54a1fd2744a7866a615c72ace4a8 +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "" + +#: ../../changelog.md:342 +#: 86b89f547c6b4a358f432cf4d398f640 +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "" + +#: ../../changelog.md:345 +#: 2fb12f31fbda4dd38ac5d75d20c470af +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "" + +#: ../../changelog.md:347 +#: 2b542989e4474b1497f08ac6f19f99ed +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "" + +#: ../../changelog.md:349 +#: b5e55bb544e94272b3397bbc0e072ec3 +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "" + +#: ../../changelog.md:351 +#: 3de52ce55e8b41e2a5815592bb6257ec +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "" + +#: ../../changelog.md:353 +#: 8fa8ea140ced4a4fa64c9d534c7f71d0 +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "" + +#: ../../changelog.md:355 +#: cc7d5fa68e994d34aa693f5bb2f1ffd0 +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "" + +#: ../../changelog.md:357 +#: c17344409e9f492a8fd6b8c55ed614aa +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "" + +#: ../../changelog.md:359 +#: 12ea4e48fc584a9c87ef676eeacfcd07 +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "" + +#: ../../changelog.md:361 +#: 9c6fac01828f43d9a61aee72f31c1792 +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "" + +#: ../../changelog.md:363 +#: 7327cd43427e488999e090c78cac0b79 +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "" + +#: ../../changelog.md:365 +#: d458144f63124e12a6e0d9f8f9cb952b +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "" + +#: ../../changelog.md:367 +#: 8f18e8d005b1496387f152f3df8662b7 +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "" + +#: ../../changelog.md:369 +#: d15ec1bf07934c9d86604965290c99bf +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "" + +#: ../../changelog.md:371 +#: 2eb6e57c0a364efd86ffa8096f540133 +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "" + +#: ../../changelog.md:373 +#: 5b2283d5d5e640999855ad3042fc5e6b +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "" + +#: ../../changelog.md:375 +#: d3b786079fea46bc8786e6b5154c03ed +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "" + +#: ../../changelog.md:377 +#: b25e60c5a037415e80243abad7f9df8f +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "" + +#: ../../changelog.md:379 +#: c5f685e545da4356aeb4de2f2f183a84 +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "" + +#: ../../changelog.md:381 +#: 17ed8177c40a476fb48f4d90f37837c7 +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "" + +#: ../../changelog.md:383 +#: 5114e2e8307349088415bbbee6af60e4 +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "" + +#: ../../changelog.md:385 +#: 25663b9a9dd74370984ab38a6e476f27 +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "" + +#: ../../changelog.md:388 +#: 2541f029d7454ba394deb4a01dde2485 +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "" + +#: ../../changelog.md:390 +#: c9faa78167bc4750a0684c8cbbd64895 +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "" + +#: ../../changelog.md:392 +#: 1658273ee130473d997c5e510ecbc0fa +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "" + +#: ../../changelog.md:394 +#: d8a3e43d20754ef092f3f8d19b138f0d +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "" + +#: ../../changelog.md:397 +#: 099b69ec664541e0a8052975795d65e4 +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "" + +#: ../../changelog.md:399 +#: 80ef1c27fc7b4fa48c2db376d01949dd +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "" + +#: ../../changelog.md:401 +#: 8ef80de7fad747f88bcdb50c5d39b51b +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "" + +#: ../../changelog.md:404 +#: b4456318b5c84fd28244fb8d7f496360 +msgid "[2.4.1] - 2023-03-20" +msgstr "" + +#: ../../changelog.md:408 +#: c8c94e0963114de48a89fd2659fc7763 +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "" + +#: ../../changelog.md:414 +#: abf8d94bacef493cb4fe23a98730bc28 +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "" + +#: ../../changelog.md:416 +#: 2cdfa2779b0e4b8f9ab4144401a89802 +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "" + +#: ../../changelog.md:419 +#: aaf94f670e8340a5b177fe6ae162358b +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "" + +#: ../../changelog.md:423 +#: c101984320c34ce99992f9fe847e0e88 +msgid "[2.4.0] - 2023-02-10" +msgstr "" + +#: ../../changelog.md:427 +#: 617814850e83401ebf06752624c50095 +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "" + +#: ../../changelog.md:430 +#: 7fd8831246324c0ba80b842014371a93 +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "" + +#: ../../changelog.md:432 +#: b33dbeef25f54b92a273ab153577e67e +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "" + +#: ../../changelog.md:436 +#: dd48eb67d9264c6f9c8c34eff1f8dc21 +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "" + +#: ../../changelog.md:440 +#: f5ee939eced64359a65e9e63f4c50556 +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "" + +#: ../../changelog.md:442 +#: ee535bdbc1cd4d558c6fa469a5b0d528 +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "" + +#: ../../changelog.md:444 +#: fa69515bb7074d55a6b5abe0177aac95 +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "" + +#: ../../changelog.md:446 +#: 17096d6218ec43a3bbef7cb4f25eead2 +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "" + +#: ../../changelog.md:449 +#: 9f7c5aed80f847d0ba8cec2331f54a86 +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "" + +#: ../../changelog.md:454 +#: 571ca9ff303e4bd994e1179a0cadb5b3 +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "" + +#: ../../changelog.md:456 +#: 464da00a553d4cfa9819fc2f0f8e848f +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "" + +#: ../../changelog.md:459 +#: 39533606d2e9446793b556a39247934e +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "" + +#: ../../changelog.md:464 +#: 416058062bb045498b964ebab56acb3a +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "" + +#: ../../changelog.md:468 +#: 8818ab33e8604db2877b20c041af6723 +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "" + +#: ../../changelog.md:470 +#: 9fe0dfdfa63e4ad4b9c4e4043aef28b3 +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "" + +#: ../../changelog.md:473 +#: ea5b04755aae4a53a625348b5d5f945d +msgid "[2.3.3] - 2023-02-10" +msgstr "" + +#: ../../changelog.md:475 +#: a66717a0773c4de7be264d65696be04e +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "" + +#: ../../changelog.md:478 +#: aeae11c1ec9e4f4ca20b998880bc4e5b +msgid "[2.3.2] - 2022-12-03" +msgstr "" + +#: ../../changelog.md:482 +#: c49932aeab584576ad0d13c3a8073143 +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "" + +#: ../../changelog.md:484 +#: 7b22f35de99640918b24cf129a8708a1 +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "" + +#: ../../changelog.md:486 +#: b940bd229d2b4e6891eec2561e8e815c +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "" + +#: ../../changelog.md:489 +#: 1b92099482524c32940e7b2962f78c68 +msgid "[2.3.1] - 2022-11-27" +msgstr "" + +#: ../../changelog.md:493 +#: 25bce91323db4cbea6c7e706497a5fbb +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "" + +#: ../../changelog.md:496 +#: eeb4225156bc403cb9430c14142f0030 +msgid "[2.3.0] - 2022-11-23" +msgstr "" + +#: ../../changelog.md:500 +#: 1f69a42547d7413d81ac3be425763eca +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "" + +#: ../../changelog.md:502 +#: faba5859b8964373ba18f34a5830b58a +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "" + +#: ../../changelog.md:503 +#: b5eceae1a70b4eb08fd9c86ed7d3e253 +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "" + +#: ../../changelog.md:506 +#: 99a675fe67cf47bd8552026dcb0d7680 +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "" + +#: ../../changelog.md:508 +#: ee8b90ba67724d46a3efd5335b0a029a +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "" + +#: ../../changelog.md:510 +#: 0d7ed354cec246a1884bb62b4a30455b +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "" + +#: ../../changelog.md:512 +#: 3d7339c7a4b34b419ca2b385c99b2160 +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "" + +#: ../../changelog.md:514 +#: d92eb373bc624dffac6f0e1dc5e5fc95 +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "" + +#: ../../changelog.md:516 +#: 2a37ee55e00e4e68b43bcf62c0b6c16b +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "" + +#: ../../changelog.md:521 +#: b96a634b3523470b9c6321bfe1d0d386 +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "" + +#: ../../changelog.md:523 +#: cc90297f0d5b47c7b04fcc3561b2ee44 +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "" + +#: ../../changelog.md:525 +#: 6b8dca9744d84dd1afaf7c1f2c36bbc2 +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "" + +#: ../../changelog.md:531 +#: 90671804020b41aba86f0d541ac50a3e +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "" + +#: ../../changelog.md:534 +#: 7421d3fe662f4595af3381037136c502 +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "" + +#: ../../changelog.md:540 +#: 160d0b3650564e17b6e25a2cf3bebf73 +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "" + +#: ../../changelog.md:543 +#: a11bd7aede7844c6b417faeae902549d +msgid "[2.2.2] - 2022-10-05" +msgstr "" + +#: ../../changelog.md:547 +#: c79e6592f08f41d387a756efa462ff76 +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "" + +#: ../../changelog.md:551 +#: 804d49d35a1a4950bb1844cb14422c04 +msgid "[2.2.1] - 2022-10-05" +msgstr "" + +#: ../../changelog.md:555 +#: 96fc9a6acc3d412eb0e4fe8e93e6bce4 +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "" + +#: ../../changelog.md:560 +#: 8a3332dafa3c405198ec6819e0e4d90a +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "" + +#: ../../changelog.md:562 +#: cdff853f73034e329f46051f2eee14d5 +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "" + +#: ../../changelog.md:564 +#: 6e43909d03324ff994e8e0c5521b4ab8 +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "" + +#: ../../changelog.md:567 +#: 7c216775f43c4a4283eada7e4c5566be +msgid "[2.2.0] - 2022-10-02" +msgstr "" + +#: ../../changelog.md:571 +#: 887646ff61cc484c8fb5a1b77f4705b3 +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "" + +#: ../../changelog.md:573 +#: 1cab4dd437fc47059e14c6622b309200 +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "" + +#: ../../changelog.md:575 +#: 628dc16b78d7462d9e752a6fd5c34f0d +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "" + +#: ../../changelog.md:577 +#: 62fc2f7a9b7647efb0eaeabe6e18b131 +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "" + +#: ../../changelog.md:579 +#: 86674d77e2244a8f9a2273474845bc45 +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "" + +#: ../../changelog.md:581 +#: eaa5c0bba1a24094995e8bb0a52b7ca0 +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "" + +#: ../../changelog.md:583 +#: f3da627f546c4aebadcf3322597750da +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "" + +#: ../../changelog.md:585 +#: a38f4867cf0f404abe8d1ad795209e2d +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "" + +#: ../../changelog.md:587 +#: 26da248bd5434e7680514324dcafcc7b +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "" + +#: ../../changelog.md:593 +#: baabee44115f413aa4b2ab853daa0515 +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "" + +#: ../../changelog.md:596 +#: b2bc78f7cb2248968d7778e804059d3a +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "" + +#: ../../changelog.md:603 +#: f1a6ff967fae4e4ab7aaa03fb71040ee +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "" + +#: ../../changelog.md:606 +#: e24fad332ee74561882cb0fe5683d373 +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "" + +#: ../../changelog.md:608 +#: 1658154957934f93aea580480a93f06d +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "" + +#: ../../changelog.md:610 +#: 8f96626aeee2407ead9a59ec45dabc1a +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "" + +#: ../../changelog.md:613 +#: 2dd2c8f954934bb593bf96a65aaf49ce +msgid "[2.1.3] - 2022-09-06" +msgstr "" + +#: ../../changelog.md:617 +#: f97d21f188914b99a02eddf404a430d9 +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "" + +#: ../../changelog.md:620 +#: 20f3c230725b4f879eaf13fe8fab8861 +msgid "[2.1.2] - 2022-09-06" +msgstr "" + +#: ../../changelog.md:624 +#: 020eedc585cf44a2858529c8d43b6b54 +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "" + +#: ../../changelog.md:628 +#: 439fb1afd83545f8b5d955600ad11510 +msgid "[2.1.1] - 2022-08-25" +msgstr "" + +#: ../../changelog.md:632 +#: e74d531343704a3faafa44b907a76e3f +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "" + +#: ../../changelog.md:635 +#: d08ad13239c7439cbbd09aae4a16c23d +msgid "[2.1.0] - 2022-08-25" +msgstr "" + +#: ../../changelog.md:639 +#: a86271dbc38645919c2c274f65be4447 +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "" + +#: ../../changelog.md:641 +#: 59b42b5316384e81b6ef5f2cfeee36ff +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "" + +#: ../../changelog.md:643 +#: 790b53c72a3f4db5a92d35f0bf430bfc +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "" + +#: ../../changelog.md:646 +#: 1acff13e3a664d0bb3d8a584de44f9fe +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "" + +#: ../../changelog.md:649 +#: 5a44482095724e8c854fb0dac8a1b688 +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "" + +#: ../../changelog.md:651 +#: f384ae7bd39d4645a038b219cc5e3d41 +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "" + +#: ../../changelog.md:653 +#: 84fd56364f2e426f8059ab543cf8fa9f +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "" + +#: ../../changelog.md:655 +#: 116daae4f3be479d91f71c1dfb2e158e +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:657 +#: aa264304900847509610971067c61d13 +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:659 +#: f3a1898c5fb94d22ad268c1b80c06956 +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:661 +#: 6bbb2d7903f94ccf928e6d4a39d6181c +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:663 +#: bf536e2d15b34745aa6202fefc7ecb86 +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:665 +#: e9a5cb929d2a400996754846071ec5b6 +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "" + +#: ../../changelog.md:670 +#: c7cf6d82811f4e0ba66b43ed62394be3 +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:673 +#: 682dcf307b394f4ca5b2553b815c3fdf +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "" + +#: ../../changelog.md:675 +#: 1656bec918854d6297b74bb1e35a904f +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "" + +#: ../../changelog.md:680 +#: a16756bd1a69469ab4a723abc6249124 +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "" + +#: ../../changelog.md:682 +#: 22c69d421a4e44b5a09e1885e5b1db36 +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "" + +#: ../../changelog.md:684 +#: 43a5393c21bc440c8ada7fe235818b31 +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "" + +#: ../../changelog.md:686 +#: c18c8cdfbd014c69bef54df5485b077e +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "" + +#: ../../changelog.md:688 +#: ef4e07eeca0e4f6dab9c34646800eb9c +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "" + +#: ../../changelog.md:690 +#: 74ba25ff24a7407f928e6a503cd7731a +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "" + +#: ../../changelog.md:692 +#: 42f99fb9ec3c420883afd8002c0674b7 +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "" + +#: ../../changelog.md:695 +#: dfdb859c67e84007954866826f1092dd +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "" + +#: ../../changelog.md:697 +#: fe6004afac3c4280b63fe9d2117f045d +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "" + +#: ../../changelog.md:699 +#: 203cde94f8b84494a4910014cfd9cb86 +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "" + +#: ../../changelog.md:701 +#: 885263a2dea84a019d8ff1bf6fe28a1e +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "" + +#: ../../changelog.md:703 +#: f409a2d1bf8941ad8e5dd38c6fa02f97 +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "" + +#: ../../changelog.md:705 +#: db74b72ec1cb4f2ca20c8ec590aecc57 +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "" + +#: ../../changelog.md:707 +#: 48cc76eeeb3045a58736326078a0219d +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "" + +#: ../../changelog.md:709 +#: e8f97a297155469dad5bf1c0065f7248 +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "" + +#: ../../changelog.md:711 +#: 753591c9db444d1583e1ca24ba55377c +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "" + +#: ../../changelog.md:714 +#: 6f46f75334964b6e803da39b08058134 +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "" + +#: ../../changelog.md:716 +#: f8eb486c25734047862d39115603e056 +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "" + +#: ../../changelog.md:718 +#: 98838fe24b00482b90f84b4aeef38bdf +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "" + +#: ../../changelog.md:721 +#: 1a3f1825ed6940388193b1ef07b1dc76 +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "" + +#: ../../changelog.md:724 +#: ../../changelog.md:731 +#: 4b8d0071a17948a789b4a3850b4cfd3e +#: 4b8d0071a17948a789b4a3850b4cfd3e +msgid "Security" +msgstr "" + +#: ../../changelog.md:726 +#: 595d6f7ff4074370b90bec1e9625132b +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "" + +#: ../../changelog.md:729 +#: 0cd65ab173c0451bb9ae1ba3fb40b232 +msgid "[2.0.1] - 2022-08-16" +msgstr "" + +#: ../../changelog.md:733 +#: ee4dccbc90654cbcb8d0c05f33e124bd +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "" + +#: ../../changelog.md:736 +#: 97414cf074d2496da5acf484c69838a0 +msgid "[2.0.0] - 2022-07-08" +msgstr "" + +#: ../../changelog.md:740 +#: f926a09ced2d481492984936a41f6dc7 +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "" + +#: ../../changelog.md:742 +#: 1ecb7fa75dff41449dde4615b6e710bf +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "" + +#: ../../changelog.md:744 +#: 59e7463435234e16866270f9f67f3107 +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "" + +#: ../../changelog.md:746 +#: 825af1ddcde1480883171e981e1da9cb +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "" + +#: ../../changelog.md:748 +#: 98bfc9d190a748579e55cb74c092cc50 +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "" + +#: ../../changelog.md:750 +#: 63e71264efce40bc9ac3f7f177759671 +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "" + +#: ../../changelog.md:752 +#: 583f0a83c644415fbd248eee5f5d8fc5 +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "" + +#: ../../changelog.md:754 +#: 03269af61aef4530b0588510928b25ab +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "" + +#: ../../changelog.md:756 +#: d30d886bcbdc4227805bd6ddb03ba9ae +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "" + +#: ../../changelog.md:758 +#: eaf48b5278cf458da58e8d6c74d872d5 +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "" + +#: ../../changelog.md:760 +#: 618f1139d2854adb9498024de569eae4 +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "" + +#: ../../changelog.md:762 +#: da574ae3b081432787fabf3ce7643b08 +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "" + +#: ../../changelog.md:764 +#: bcd876b3c5524167af08b9c49fc9461d +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "" + +#: ../../changelog.md:765 +#: 8963ace1487b41d689eaed24f1cbf62f +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "" + +#: ../../changelog.md:767 +#: 8768c70fc00d4e31b7a80d6b00075daa +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "" + +#: ../../changelog.md:772 +#: ee060919f00041db8b5be55cafb2c8c8 +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "" + +#: ../../changelog.md:774 +#: dc5c99a601e643378a95fd67cc096a3a +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "" + +#: ../../changelog.md:776 +#: 8c2807db86ce44949802e774add43122 +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "" + +#: ../../changelog.md:781 +#: 32f1c00be9d246c9bbd61f553109e4a9 +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "" + +#: ../../changelog.md:786 +#: 1eee8306295b44818cb2b0ba52d0cc16 +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "" + +#: ../../changelog.md:788 +#: c7e8ed3ea27249a3ba3139f4749fe67f +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "" + +#: ../../changelog.md:790 +#: 138b4b66eaaa464cbd8b470b39dfe3cf +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "" + +#: ../../changelog.md:792 +#: 83f10b99afb54627877654d2f7d13542 +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "" + +#: ../../changelog.md:794 +#: f5ed697972464eef896be8d20a91d41f +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "" + +#: ../../changelog.md:796 +#: 718f4fb72ad84abbb9e6433b4106c70a +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "" + +#: ../../changelog.md:798 +#: 3af4499fd5724a2bbab36758855eefba +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "" + +#: ../../changelog.md:800 +#: df77a6f8c2884f96a9ead31c3040ff3a +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "" + +#: ../../changelog.md:802 +#: 879a1e7ca8194078b8b54e0d9399b4b4 +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "" + +#: ../../changelog.md:804 +#: 2e5cc67d0f334713aa04357850b3b8d6 +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "" + +#: ../../changelog.md:806 +#: 980b8f6131b547259c6e3243f776160f +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "" + +#: ../../changelog.md:808 +#: 1579cb6ca4374946ae9d2aa00c6a2a05 +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "" + +#: ../../changelog.md:810 +#: 1addb165c9c3437ca5dca418e2638d46 +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "" + +#: ../../changelog.md:812 +#: d4ea2324cedb4d729a6e016ed9914ed1 +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "" + +#: ../../changelog.md:814 +#: d965df96de2444d2a3da4bac5f41fa32 +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "" + +#: ../../changelog.md:816 +#: a426447d83a0416b82a2ad38cf28f165 +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "" + +#: ../../changelog.md:818 +#: 8f82c1560e2a4beca1d49b51032693c7 +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "" + +#: ../../changelog.md:820 +#: 169dd0974f7f4141bb15b782abd500b7 +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "" + +#: ../../changelog.md:822 +#: 448ef13918d4482281df46bd975272f7 +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "" + +#: ../../changelog.md:825 +#: dbcf3c4d21c14c479387995847602e95 +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "" + +#: ../../changelog.md:829 +#: 71808897a05a4d3791bc6f9dac867d50 +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "" + +#: ../../changelog.md:831 +#: 1666cc8af144493294f14e435b91e247 +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "" + +#: ../../changelog.md:833 +#: 64598eb221be468cb4460731ecb291b8 +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "" + +#: ../../changelog.md:836 +#: 65fefed9ae734de68d3bf2484df13eee +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "" + +#: ../../changelog.md:838 +#: e51f6c5505f84ed69127a68178587f84 +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "" + +#: ../../changelog.md:840 +#: 3b7406b62a0941a398ac7fdd33ea2a0b +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "" + +#: ../../changelog.md:842 +#: 35ae30f3f43e476885400ce345466da2 +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "" + +#: ../../changelog.md:845 +#: 6d7c1c2574e84c82aa22abf622baf28d +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "" + +#: ../../changelog.md:847 +#: e7e85506316f4046a79bf1bee7c0213e +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "" + +#: ../../changelog.md:849 +#: 20413647edf3450886b175cd2f53edc2 +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "" + +#: ../../changelog.md:851 +#: d29d910018724595a72b329b086dae1b +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "" + +#: ../../changelog.md:853 +#: 3f5d50f736184fe7a6b787749d53834d +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "" + +#: ../../changelog.md:855 +#: 715f3642c43e4b818b36ac879254a1ad +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "" + +#: ../../changelog.md:857 +#: 18a0ab7cdda64c26a907d972cd3cc5bf +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "" + +#: ../../changelog.md:860 +#: a1b658522e74433b8248a8632c132c83 +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "" + +#: ../../changelog.md:862 +#: 45b48efa33e2445ea77ca5d350cbc1f7 +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "" + +#: ../../changelog.md:864 +#: 9201af3619a241128b9361d32485948e +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "" + +#: ../../changelog.md:866 +#: bd0157bc4b0f4b8f8628064afc16fae9 +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "" + +#: ../../changelog.md:868 +#: 6e19fe31455347129e5a8bc95d7b3572 +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "" + +#: ../../changelog.md:870 +#: 99861fea2ef74154a4150f91fa8eef16 +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "" + +#: ../../changelog.md:872 +#: 0a54f2b4c9764c26a62124a36810df1f +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "" + +#: ../../changelog.md:874 +#: 99d5ef66098a46d3a923357f8a26c740 +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "" + +#: ../../changelog.md:879 +#: 3fc4ac26224f413589a65d539f172b72 +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "" + +#: ../../changelog.md:881 +#: c6ba3c12853545738f571c0366063c82 +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "" + +#: ../../changelog.md:883 +#: 916c6e9e2e524421870ac2ad12af1c1b +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "" + +#: ../../changelog.md:885 +#: 8d7dea175fb24794a355b13007c92e01 +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "" + +#: ../../changelog.md:887 +#: eb953d6d30db42809fb6a250571f29b1 +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "" + +#: ../../changelog.md:892 +#: 0a9c258c97ff43d290fc0293f47f9978 +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "" + +#: ../../changelog.md:894 +#: 6a79d4a32b634bd3a7b74c101fa54a7e +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "" + +#: ../../changelog.md:896 +#: 05aa589e0a9a469d96f811423c1b3bd2 +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "" + +#: ../../changelog.md:898 +#: 3da23a6d6d4b4324a36f0b33cc59f82e +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "" + +#: ../../changelog.md:900 +#: d463353b612449e89a9a7015a794e5e2 +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "" + +#: ../../changelog.md:902 +#: 15b4372aa41846c2bfe24bd729e63048 +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "" + +#: ../../changelog.md:904 +#: 7d105926ee684e439657e29d1a57156a +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "" + +#: ../../changelog.md:906 +#: 54b42e8bc31145a9a8831d96c1c7a836 +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "" + +#: ../../changelog.md:908 +#: 5797d5a4023d458aa6eaefe95fdcbe70 +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "" + +#: ../../changelog.md:910 +#: 98b7cc4cbd3b4529bd64539cdc0166e7 +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "" + +#: ../../changelog.md:912 +#: 89cd1c71990c439c8187661846e4817c +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "" + +#: ../../changelog.md:914 +#: 6a993686d0f6440f9058ad662abc3eb7 +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "" + +#: ../../changelog.md:916 +#: fec7f8bc5c1c40638b2c7541a613f3b3 +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "" + +#: ../../changelog.md:918 +#: 1b22b1b48af64ab082e28d5be38e9470 +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "" + +#: ../../changelog.md:920 +#: 109809acf2d545559ad5bd7c1d9d668d +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "" + +#: ../../changelog.md:922 +#: c648e6fc6f44425195f326fb578e61d3 +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "" + +#: ../../changelog.md:925 +#: 7de5791d77fa4367bcc58a2b9db9f7dc +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "" + +#: ../../changelog.md:929 +#: 681f7f806d614707ae86fcc2e8c3042e +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "" + +#: ../../changelog.md:968 +#: c3d9893dfd4c43e1af3405c2b96d7e8a +msgid "Older Versions" +msgstr "" + +#: ../../changelog.md:970 +#: f2ab2347b52c49258384ff69cb70c6ce +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "" diff --git a/docs/build/locales/cogs.pot b/docs/build/locales/cogs.pot new file mode 100644 index 0000000000..3893a687de --- /dev/null +++ b/docs/build/locales/cogs.pot @@ -0,0 +1,112 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../cogs.rst:7 +#: c8ac825e6b994a9aa60b3bcbe6c34043 +msgid "Cogs" +msgstr "" + +#: ../../cogs.rst:9 +#: 2f754881bfc94c2998a3ae81ef02f86b +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "" + +#: ../../cogs.rst:11 +#: 9107f5b551204d178a48c1f69d6cbba5 +msgid "The gist:" +msgstr "" + +#: ../../cogs.rst:13 +#: f173fd127aeb4f5abadc830d73d74ffb +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "" + +#: ../../cogs.rst:14 +#: 5cfe1bcf770d4bf59444548582bd4859 +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "" + +#: ../../cogs.rst:15 +#: 321f3f7b3a1d413790527b3d7b821138 +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "" + +#: ../../cogs.rst:16 +#: 77021c1918474cfcb90679c1faeb4f6f +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "" + +#: ../../cogs.rst:17 +#: b1c663eca3844c198e4539ce53c4c756 +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "" + +#: ../../cogs.rst:20 +#: 9e5fcbbf6d574ef796df6335903ce9bc +msgid "Quick Example" +msgstr "" + +#: ../../cogs.rst:22 +#: 2026f5d8c0ae400980fc4ddc47d46d2a +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "" + +#: ../../cogs.rst:47 +#: bd6a08fc260d4f339594086965422dae +msgid "A couple of technical notes to take into consideration:" +msgstr "" + +#: ../../cogs.rst:49 +#: 16d111580cb940cdb64948e7ed41192a +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "" + +#: ../../cogs.rst:50 +#: 202723f7a4984aba9f44561f14721b3c +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "" + +#: ../../cogs.rst:51 +#: fbcb39ba8b6f4e43b17b48546e9b9348 +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "" + +#: ../../cogs.rst:54 +#: 29313ee75df44d1a9e587cf204e86eea +msgid "Cog Registration" +msgstr "" + +#: ../../cogs.rst:56 +#: 934a0af7f99a4fa39afbc59c69c7a904 +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "" + +#: ../../cogs.rst:62 +#: fab3613b468549498b33327e5bb3bf81 +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "" + +#: ../../cogs.rst:65 +#: 0961f63000044a2ebc4c847b0c2a4c5b +msgid "Using Cogs" +msgstr "" + +#: ../../cogs.rst:67 +#: c63e277a7d6d4e788a85d37fadc395d5 +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "" diff --git a/docs/build/locales/discord.pot b/docs/build/locales/discord.pot new file mode 100644 index 0000000000..492fe09b58 --- /dev/null +++ b/docs/build/locales/discord.pot @@ -0,0 +1,201 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../discord.rst:6 +#: 33e43ca11bae43869384b9a001d402c5 +msgid "Creating a Bot Account" +msgstr "" + +#: ../../discord.rst:8 +#: 3e751380298444d89e24a9b137569b63 +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "" + +#: ../../discord.rst:10 +#: a009330b55dd40a884d07ebe7e8352a6 +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "" + +#: ../../discord.rst:12 +#: ../../discord.rst:66 +#: bb20d2b0e2524050ab13ce5fd4a482ca +#: 138839594467417c9675ccdf255cc4bb +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "" + +#: ../../discord.rst:13 +#: ../../discord.rst:67 +#: 209f0e33c5f34083972973ce750ad6db +#: a0e135fa837f4998a28119f05ceb6af2 +msgid "Navigate to the `application page `_" +msgstr "" + +#: ../../discord.rst:14 +#: 8c4ca040e8b048b8b8ce6fc7a59af681 +msgid "Click on the \"New Application\" button." +msgstr "" + +#: ../../discord.rst:16 +#: 4e50539b117d483bb8eb9759d23a2539 +msgid "The new application button." +msgstr "" + +#: ../../discord.rst:19 +#: 52b1dfecf4d848d88c423e85bf047e23 +msgid "Give the application a name and click \"Create\"." +msgstr "" + +#: ../../discord.rst:21 +#: 988abcf0f00347ef842e50b52ecba727 +msgid "The new application form filled in." +msgstr "" + +#: ../../discord.rst:24 +#: 35ed8c8ca0f14f7baa654c2f03c3ba78 +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "" + +#: ../../discord.rst:26 +#: 061a88735e9d40ad82c8de617ae95c2d +msgid "Click \"Yes, do it!\" to continue." +msgstr "" + +#: ../../discord.rst:28 +#: 3a47c4b483f740c3b4009c9aba483465 +msgid "The Add Bot button." +msgstr "" + +#: ../../discord.rst:30 +#: d1f8406f0481452aa310463424432f3c +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "" + +#: ../../discord.rst:32 +#: 36fc0348a1294783bf756b3b0c9a2355 +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "" + +#: ../../discord.rst:35 +#: 01d0a7156bbd466ea4bf21c6bf0913a6 +msgid "How the Bot User options should look like for most people." +msgstr "" + +#: ../../discord.rst:38 +#: ddc3c7c497f84a098fa8c5cfba4fd530 +msgid "Copy the token using the \"Copy\" button." +msgstr "" + +#: ../../discord.rst:40 +#: 426cb6a680fa41499bd38d4ae7819100 +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "" + +#: ../../discord.rst:44 +#: 129caf4fb8bb46f0bc98b6b92e7bca8f +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "" + +#: ../../discord.rst:49 +#: d429905610504813999425db219641c2 +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "" + +#: ../../discord.rst:51 +#: 818ab0f6513e4ff3b471954ebecf6dfc +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "" + +#: ../../discord.rst:55 +#: 0f49e12494fd4e018447b1bba17bc382 +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "" + +#: ../../discord.rst:60 +#: 0052dd2bf92f4c989bfab9b2ce496602 +msgid "Inviting Your Bot" +msgstr "" + +#: ../../discord.rst:62 +#: 3cfb9a2d30924b95bccc6eaac0f84223 +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "" + +#: ../../discord.rst:64 +#: bf66ea40eeee44b3af812f949c00c78b +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "" + +#: ../../discord.rst:68 +#: 2001c08cb12c4281918a3f464d52a876 +msgid "Click on your bot's page." +msgstr "" + +#: ../../discord.rst:69 +#: 99b77c0d8af94410b1f4693baf7185bb +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "" + +#: ../../discord.rst:71 +#: bb51cd2efd3a48a98ce9a2521a48e9c2 +msgid "How the OAuth2 tab should look like." +msgstr "" + +#: ../../discord.rst:74 +#: f3c6ed7d8baf44d184bcf20d581b054f +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "" + +#: ../../discord.rst:76 +#: 8ffd745846934f7ca86dedb218dcebd2 +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "" + +#: ../../discord.rst:79 +#: 750d4f736cfa4a4998c8ad41361d6d2b +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "" + +#: ../../discord.rst:81 +#: 9c76f59e0e924ca6a418399e8b78beae +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "" + +#: ../../discord.rst:83 +#: 8338660304a84ac98f834d371fa8aee8 +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "" + +#: ../../discord.rst:85 +#: 6e7943e8fbc5422a838dfee812ed741d +msgid "The permission checkboxes with some permissions checked." +msgstr "" + +#: ../../discord.rst:88 +#: cb8beb1bc6bc416b96d88850c1f12815 +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "" + +#: ../../discord.rst:93 +#: 4e365dc410804016a5a0858c3201d95b +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "" + +#: ../../discord.rst:95 +#: 76f2e35cf05545138dcec93407f45af6 +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "" diff --git a/docs/build/locales/ext/bridge/api.pot b/docs/build/locales/ext/bridge/api.pot new file mode 100644 index 0000000000..f6e420812d --- /dev/null +++ b/docs/build/locales/ext/bridge/api.pot @@ -0,0 +1,707 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../ext/bridge/api.rst:4 +#: 6fa316d9035a4819abf06d5ae0850304 +msgid "API Reference" +msgstr "" + +#: ../../ext/bridge/api.rst:6 +#: 1a9c41e32afc4f6c9827f80b27baa9a6 +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "" + +#: ../../ext/bridge/api.rst:10 +#: 606ed0684e934b9da103e40b3af328cb +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "" + +#: ../../ext/bridge/api.rst:17 +#: 80e0f4c32fba4a9186acd1dd80023cb7 +msgid "Bots" +msgstr "" + +#: ../../ext/bridge/api.rst:20 +#: bc31060dab2848688f900873f58824d8 +msgid "Bot" +msgstr "" + +#: ../../../discord/ext/bridge/bot.py:docstring of discord.ext.bridge.bot.Bot:1 +#: 850dd85571d6439399b7f0a0340472e1 +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "" + +#: ../../../discord/ext/bridge/bot.py:docstring of discord.ext.bridge.bot.Bot:3 +#: 34f98446e5144990aba7a0cd2abf6a62 +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "" + +#: ../../ext/bridge/api.rst:0 +#: daf51d42250a4b68a63ce4a569ff39d8 +#: 485704f10e284a189c55eacd55ea3968 +#: 3a31bead22ec46cfab167528f73388b2 +#: 3e6ba5715e114d6fae10fa8ce19898f4 +#: 530632fafabb426d8c56d3caece3f7b2 +#: bb06477aff3d4ac398c2b90dfc77b732 +#: 5492abf2718b4206b9d9d7d5f287fca0 +#: 3cf8dd9f30944cd5ada56237da8290df +#: c4851b106cef42399e6a64f61c78fd3e +#: 2893cea81e8f4c3c99c350ae184b88ad +#: 864d918f2bc34eba95e43108295e2471 +#: fe14b112db024067910f4c9edd3a2966 +#: 0936a9c30a344f258129933949a2fe06 +#: be224dfe5e9f4390b28f0c12baedd70e +#: 95d1ec3d0f144201a711952e040146be +#: fcee5fb1439849cb91efe93d9ca99a9e +#: 08bff09c730c4b5bb565bdaf3e105965 +#: d414290a24964ae2827a233b80f9d820 +#: 2712df298b134b468aa30aa758768e1d +#: ecc99c5f64b747e49d92d73c86da310a +#: ecc99c5f64b747e49d92d73c86da310a +msgid "Parameters" +msgstr "" + +#: ../../../discord/ext/bridge/bot.py:docstring of discord.ext.bridge.bot.BotBase.add_bridge_command:1 +#: 22b7c6d14796429fb28865fbed90ee9e +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "" + +#: ../../../discord/ext/bridge/bot.py:docstring of discord.ext.bridge.bot.BotBase.bridge_command:1 +#: d20cb8aae77c4788bf65f2a78f61b172 +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "" + +#: ../../ext/bridge/api.rst:0 +#: a01549abab034ce9aada5ab30d72a4ca +msgid "Returns" +msgstr "" + +#: ../../../discord/ext/bridge/bot.py:docstring of discord.ext.bridge.bot.BotBase.bridge_command:4 +#: 81f3afc0052540ee82f717b2768752eb +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "" + +#: ../../ext/bridge/api.rst:0 +#: 59d0f08676f541b5b40d4eb3830146af +#: 648fa6421bf940e5b202bd6565384518 +#: 5ba572703a4e4af88ec233bfad6f0c14 +#: 145bd739c2fe4aff906e41e5bcc428ad +#: e198af69a1d8498ea9d0efdb944c67b4 +#: 7f5fa723e8af44a78f11ee8eb2f6ff67 +#: cb3f7e3974f148e19e43b78db36e24e6 +#: c102617394d14eb786c58ca83d415312 +msgid "Return type" +msgstr "" + +#: ../../../discord/ext/bridge/bot.py:docstring of discord.ext.bridge.bot.BotBase.bridge_command:6 +#: 7c4ef82e00da4b50a94fd04a73b7f9e9 +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "" + +#: ../../../discord/ext/bridge/bot.py:docstring of discord.ext.bridge.bot.BotBase.bridge_group:1 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.bridge_group:1 +#: 2c6205c46bcb426b9704199b6cc54bf4 +#: cdfc2954c8984d69b6de2a61ed0884ff +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "" + +#: ../../../discord/ext/bridge/bot.py:docstring of discord.ext.bridge.bot.BotBase.bridge_group:4 +#: 707c2ec5657142f58d78b7c9667c251e +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "" + +#: ../../ext/bridge/api.rst:36 +#: da27d30dccd247caae719c36f0098a25 +msgid "AutoShardedBot" +msgstr "" + +#: ../../../discord/ext/bridge/bot.py:docstring of discord.ext.bridge.bot.AutoShardedBot:1 +#: 642e409bd50148c39b57d779a5e53e72 +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "" + +#: ../../ext/bridge/api.rst:44 +#: 3ecf92ca4a444ddcb8cb77d32bd0251d +msgid "Event Reference" +msgstr "" + +#: ../../ext/bridge/api.rst:46 +#: ca9c771601074ca7b1f674a8805fdcdf +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "" + +#: ../../ext/bridge/api.rst:51 +#: c2782ddd3e0647b296bf2254f882d589 +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "" + +#: ../../ext/bridge/api.rst:55 +#: ../../ext/bridge/api.rst:67 +#: ../../ext/bridge/api.rst:77 +#: e899524679a1438fb1615fb8fe418aff +#: ffa1a0bd33ce45888d7e9b6b0304db8a +#: e098ee37ebf04ac493756d6f20633bc4 +msgid "The invocation context." +msgstr "" + +#: ../../ext/bridge/api.rst:57 +#: 90261a604f954587a3fe4112c77c9c8e +msgid "The error that was raised." +msgstr "" + +#: ../../ext/bridge/api.rst:62 +#: ad460825d379451b99f7a1106384c367 +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "" + +#: ../../ext/bridge/api.rst:64 +#: fc46a91034124a9dba3517b0e7d02a96 +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "" + +#: ../../ext/bridge/api.rst:72 +#: be6a86f6768d467d8415e4fd7403792c +msgid "An event that is called when a command has completed its invocation." +msgstr "" + +#: ../../ext/bridge/api.rst:74 +#: acaa45c6fcbb4bbaa212789fe3d0a1a0 +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "" + +#: ../../ext/bridge/api.rst:81 +#: 93ed9e62cb4d424eb61036785e8f42b7 +msgid "Commands" +msgstr "" + +#: ../../ext/bridge/api.rst:84 +#: e2aeb6f20c00463b99f145618ad57950 +msgid "BridgeCommand" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand:1 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:1 +#: a0c6dbe8972d4ad4ae67079c14bf9e8d +#: 7f6eb99fd9284122b01c9373d31e4126 +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand:4 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:4 +#: 3ed668f86ee448458bf66c209f08687c +#: f096041bd94348b8809ae058ce510c72 +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand:7 +#: 200935417b504aaebb24dd1a99bfcaa4 +msgid "Parent of the BridgeCommand." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand:10 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:8 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup.command:4 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.bridge_command:4 +#: 7f6dd7f8a2ee460b99a72804e8aea788 +#: 484e0bd2743e4f18a5f09ffcb1c749d9 +#: f9f0d50c11aa402ea2a874490f653e3b +#: f0f21d359a4a48ea86df915710a12562 +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand:15 +#: f37ea5004f7d46b79174fffb4bbe6dfb +msgid "The slash command version of this bridge command." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand:0 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:0 +#: c199030b71784af6aa7369b62ea3c70a +#: 530c706f8f2d4cde86d4b9959a708cf9 +#: 0dcaa4de42d7417ab675d15d95c0545e +#: fcd3136ef9a54e679fb18bae06554cee +#: 3233f6d67e434cb4930d286b1cedbf93 +#: 695ca16e39234b53a145ba1a621e6ef6 +msgid "type" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand:17 +#: cbc6f859d39248e7a83d97cd457b250e +msgid ":class:`.BridgeSlashCommand`" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand:21 +#: 2f51e8a9edc4443f9d679a119e619cf5 +msgid "The prefix-based version of this bridge command." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand:23 +#: e63578c4dc7f46c89c6203e32b68347d +msgid ":class:`.BridgeExtCommand`" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.BridgeCommand.name_localizations:1 +#: 191eaf3d235142118f52b1abb1b5cb13 +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.BridgeCommand.name_localizations:4 +#: 201f3f3932184f08a7790734fe0c0df9 +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.BridgeCommand.description_localizations:1 +#: 9000d83f46db48c88492fd4b3d99c08b +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.BridgeCommand.description_localizations:4 +#: 664bc2c5a41e47f7b116b97ca69052f3 +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.add_to:1 +#: b3a675d4098741a9b1cae5c41f38c6e9 +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.add_to:4 +#: ae52f8a5e5d4453bb3cbb37559232e97 +msgid "The bot to add the command to." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeExtContext.delete:12 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.add_to:7 +#: 927e81b21d1f42ca92a240294c3af3ee +#: 89a3b017daba4d45b6db08bfd3046c9b +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.error:1 +#: c48326d91a0342ecb10271b42baf00ab +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.error:3 +#: f6d650ad1c6f44ba94471825a2363aef +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.error:8 +#: df78c1bea8514032ad90b19418a581e1 +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.error:12 +#: 83b35fe23ddd442b8b4ed5835267be7e +msgid "The coroutine to register as the local error handler." +msgstr "" + +#: ../../ext/bridge/api.rst:0 +#: a2b73e3775c045e7a5f824ee24cf0092 +#: 41965c0d21844dfa8e47f852e6d14b56 +#: 2ed336ac83374dbab238cdfaae50a01b +#: 5bb2b8d65a0c4d5d93576c19239e7330 +msgid "Raises" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.after_invoke:13 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.before_invoke:13 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.error:15 +#: 6b619def53b84a94af6ad1abb1e294fe +#: ad1c8992416b44389487ffb94fa63520 +#: bd351550f69a4824a31d1028f2f9d016 +msgid "The coroutine passed is not actually a coroutine." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.before_invoke:1 +#: 035eaa995b2348dcaab9e35ed861a5c1 +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.before_invoke:3 +#: bef6d6b4b0fb43fc923b5777b3bff7bc +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.before_invoke:7 +#: 7d6d731c61084aeabd82697f41f21a56 +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.before_invoke:10 +#: 7e4e42913fa342cd92afead956d25c58 +msgid "The coroutine to register as the pre-invoke hook." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.after_invoke:1 +#: 6e32363e7d914b69b7f319b7f1472e4f +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.after_invoke:3 +#: 9d8cd8a28f2e47deb002d8312d3a351b +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.after_invoke:7 +#: 94e3d86c469f48e9a68759fa1e7cf54d +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommand.after_invoke:10 +#: 3721ef9b30b5455cb9d3e7201a173f6c +msgid "The coroutine to register as the post-invoke hook." +msgstr "" + +#: ../../ext/bridge/api.rst:92 +#: cfe096223cd243a497dd1834b89a6210 +msgid "BridgeCommandGroup" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:13 +#: 0f525e459e0749eda68c2f757c2b4b7c +msgid "The slash command version of this command group." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:15 +#: d5f80ea868be4479b31c15d7c145a257 +msgid ":class:`.SlashCommandGroup`" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:19 +#: 6ee6e20458ca445b83f5a44bb94c21cd +msgid "The prefix-based version of this command group." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:21 +#: 501cd7140e8f448bb10ec476988ea419 +msgid ":class:`.ext.commands.Group`" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:25 +#: 0aaeec7bdf1f444392d736e0edaa40dd +msgid "List of bridge commands in this group" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:27 +#: c5d8310ad9cf403f8de8dc56d6bf3c26 +msgid "List[:class:`.BridgeCommand`]" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:31 +#: 6da69d8c508343b4862328abf6d1d42b +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup:33 +#: 3c0f50029ec14982b2c178a7a22b62de +msgid "Optional[:class:`.SlashCommand`]" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup.walk_commands:1 +#: 737188b67b894eaf9961484f4cd68c2b +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup.walk_commands:0 +#: be375185d935402f9bece4e8479efc7d +msgid "Yields" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup.walk_commands:3 +#: ab1ffcf146a34b59b7be85e9fc72e879 +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup.walk_commands:6 +#: e2ad6ebfe5824570a21d38811de1a22e +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeCommandGroup.command:1 +#: a8e41674d62e47c884b4b94285c8c79e +msgid "A decorator to register a function as a subcommand." +msgstr "" + +#: ../../ext/bridge/api.rst:100 +#: 85c6676b73cd4e3598474888a69220ee +msgid "Decorators" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.bridge_command:1 +#: 0ea58971f2c64f7384ea418f5e94e192 +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.bridge_group:4 +#: cb885a3f5922444ca8d68724b2adb497 +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.map_to:1 +#: 54e3f1a6164142ada5b4642e8008c3f2 +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.map_to:4 +#: d21ac3819ede416f8f28497cd60b5369 +msgid "The new name of the mapped command." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.map_to:7 +#: 192392e47e3f47bebb2f929f1f778892 +msgid "The new description of the mapped command." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.map_to:11 +#: 09a8c314d2334ca2a33f0ccae64de705 +msgid "Example" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.map_to:23 +#: d8cba8f60cac4e78b72ecefd5e198a09 +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.guild_only:1 +#: 8748247655d94525be995419809f53cc +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.guild_only:4 +#: 7e61ec9dd3b545c785883dd2349fb166 +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.is_nsfw:1 +#: 96dc0b24c06542e580f588b6df02e7c8 +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.is_nsfw:4 +#: c8d25c4b9711421cb1eee1d8f1f6e7c3 +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.is_nsfw:8 +#: 061033f4c75446c3a6b9fa17e864fc13 +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.has_permissions:1 +#: 24bf1747781640e4af98e4808495d17e +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.has_permissions:5 +#: 36a8f1cc8cd048fda5579993cf4f1d0f +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.has_permissions:9 +#: 02a8d1d690944a72b8679c14f57ae747 +msgid "An argument list of permissions to check for." +msgstr "" + +#: ../../ext/bridge/api.rst:120 +#: 3d796982686f494da2668a0e0a9544d6 +msgid "Command Subclasses" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeExtCommand:1 +#: 68ab0eb1255f4b6dbc35bd39a029ff61 +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeExtGroup:1 +#: f99dd00f0e1f43a484a58f999c68ca01 +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeSlashCommand:1 +#: c12038ebec8d4aceae4cc60ed8ba17bb +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeSlashGroup:1 +#: b0e79ad4368c482fadf8d443f9584918 +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "" + +#: ../../ext/bridge/api.rst:131 +#: 57393fd3d3f242b4a5a8386b55b8818a +msgid "Context" +msgstr "" + +#: ../../ext/bridge/api.rst:134 +#: 45b8f55c8a7c450aadf96ee2bc5d0bf2 +msgid "BridgeContext" +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext:1 +#: 72208e8dc06d49b48ffb951c4a7c0dc5 +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext:5 +#: a0c5063715dc4110a62fc98f24680696 +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of typing._overload_dummy:1 +#: f30c4ce6aa1b461f8f83a8c6f0b97652 +msgid "Helper for @overload to raise when called." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.defer:1 +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.edit:1 +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.reply:1 +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.respond:1 +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeExtContext.delete:1 +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeOption.convert:1 +#: 9cbe5a9cbe914b528ad81f23a4ad5481 +#: de66e4aa5b244b38acf315ebadaa5346 +#: 12f4cce4c9d24748b98e3746f8edba6a +#: 47958ab3fa804196bbed67e7d4128770 +#: 9eeff2bc29d04f65a81322028a9e98bb +#: 0ce390d55fbb4f518af7dbde2a8fc4b4 +msgid "|coro|" +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.respond:3 +#: d1ad409f80644b6994ba2e04cd0d70c6 +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.reply:6 +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.respond:8 +#: d4ce5e66006147babe02bdf635472c9f +#: 21394f711ded49cdb6a23566b0a7cd53 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.reply:3 +#: ecb38c12b5cb45f2b63ee4759b9a72ab +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.defer:3 +#: e284edacef264148b98fd65cf5832a4f +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.defer:10 +#: 6b331c393af24345a6dc904dd6177bd9 +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.edit:3 +#: 62c545f510f84f8090befb9f0a37c7b1 +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeContext.edit:8 +#: 829993f931c34774b02a374bee1d885f +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.BridgeContext.is_app:1 +#: cc361c83e8314be5b9c5fcc6f9d9f97a +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "" + +#: ../../ext/bridge/api.rst:143 +#: 832d7d0bc0914c3c8099fcd557339b87 +msgid "BridgeContext Subclasses" +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeApplicationContext:1 +#: edb2d387c93c49179b7615dd26d27b36 +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeExtContext:1 +#: ac8e72c3de8f4997993a1a37cc9da2b8 +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeExtContext.delete:3 +#: f87476695de442659103636aadd364ae +msgid "Deletes the original response message, if it exists." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeExtContext.delete:6 +#: c61014534796459d833957ad39ce0cc2 +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "" + +#: ../../../discord/ext/bridge/context.py:docstring of discord.ext.bridge.context.BridgeExtContext.delete:9 +#: bfea474cbf854303b371c49f389e86a6 +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "" + +#: ../../ext/bridge/api.rst:162 +#: be07208f849b4f75afd5cb572c0a4830 +msgid "Option" +msgstr "" + +#: ../../ext/bridge/api.rst:165 +#: 0b5ee756992f4209aeb8020d1f811b80 +msgid "BridgeOption" +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeOption:1 +#: 545f31dcbb4e4ab0ac92bc0c8e7e6b47 +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeOption.convert:3 +#: 761f4405d509432f87a2ac1b2dabf7ed +msgid "The method to override to do conversion logic." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeOption.convert:5 +#: 5c1ade82f7f841f08a5dbb10b20be098 +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeOption.convert:10 +#: 8bef3e5908644772b4ee25277a02cfe4 +msgid "The invocation context that the argument is being used in." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeOption.convert:13 +#: b947563417964b228a845d5f06eb65af +msgid "The argument that is being converted." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeOption.convert:16 +#: 93ae6d03448d48ce990b117e1505ec77 +msgid "A generic exception occurred when converting the argument." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeOption.convert:17 +#: 7854a83f22984d88ab55a993d5060ea2 +msgid "The converter failed to convert the argument." +msgstr "" + +#: ../../../discord/ext/bridge/core.py:docstring of discord.ext.bridge.core.BridgeOption.convert:19 +#: 2fb1f6d9385a42efa294143acd847528 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr "" diff --git a/docs/build/locales/ext/bridge/index.pot b/docs/build/locales/ext/bridge/index.pot new file mode 100644 index 0000000000..a5fe2b4d26 --- /dev/null +++ b/docs/build/locales/ext/bridge/index.pot @@ -0,0 +1,32 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../ext/bridge/index.rst:4 +#: 8e92a85fefad410e8daabe8f96d6df34 +msgid "discord.ext.bridge" +msgstr "" + +#: ../../ext/bridge/index.rst:8 +#: 23a5963c0d484144bd55d09400c808b6 +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "" + +#: ../../ext/bridge/index.rst:12 +#: beb89b26b2aa4547affecbb8e5d4f488 +msgid "Example usage:" +msgstr "" diff --git a/docs/build/locales/ext/commands/api.pot b/docs/build/locales/ext/commands/api.pot new file mode 100644 index 0000000000..a527fa034a --- /dev/null +++ b/docs/build/locales/ext/commands/api.pot @@ -0,0 +1,8978 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../ext/commands/api.rst:4 +#: 4725cf896a744071a08446633365c2de +msgid "API Reference" +msgstr "" + +#: ../../ext/commands/api.rst:6 +#: 80776e20ff0c4322aace15ec8c0d27bd +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "" + +#: ../../ext/commands/api.rst:10 +#: 81068d91f0c1448f8317c7dfcba703f9 +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "" + +#: ../../ext/commands/api.rst:16 +#: 17dbf825697944a89c41e5c4af4e2602 +msgid "Bots" +msgstr "" + +#: ../../ext/commands/api.rst:19 +#: a29e93a50d3b476bbe0cccd138a4d696 +msgid "Bot" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:1 +#: b469b90375a14a8b986f7b1b8a67a72d +msgid "Represents a discord bot." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:3 +#: 4d17f20fad654fb4babd30e58d852b6c +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:7 +#: 7d6d6af71a314aceb2ec965318f05bc3 +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:12 +#: 11f3decf6af545119f242d17e4ea02d9 +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:16 +#: 1197743250b64d25b9534197e3b19dd9 +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:24 +#: fd93e34dd8834b20bc344422cf70e68a +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:29 +#: 78f9a5eccd1e4f9eb8008ffe838f1c23 +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:37 +#: b786a1a7cee643dabc413b882de33d09 +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:47 +#: c98aa001a62745c3a90ffa2e14f5a30a +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.store_url:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:0 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:0 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:0 +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown:0 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:0 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group:0 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadBoolArgument:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadColourArgument:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadFlagArgument:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadLiteralArgument:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadUnionArgument:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingAnyRole:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingPermissions:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingRole:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotFound:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotReadable:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CheckAnyFailure:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandInvokeError:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandOnCooldown:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandRegistrationError:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ConversionError:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.EmojiNotFound:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ExpectedClosingQuoteError:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildNotFound:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildStickerNotFound:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.InvalidEndOfQuotedStringError:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MaxConcurrencyReached:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MemberNotFound:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MessageNotFound:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingAnyRole:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingFlagArgument:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingPermissions:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredArgument:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredFlag:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRole:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.PartialEmojiConversionFailure:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.RoleNotFound:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ThreadNotFound:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.TooManyFlags:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UnexpectedQuoteError:0 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UserNotFound:0 +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:0 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:0 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:0 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:0 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:0 +#: c68d85257a5e4af6bd219a6159648c77 +#: f147a85e13784370a831501af464a220 +#: ed2d367aaec844adb55fb898bbffac16 +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 108b348c252b4fc789b680c4989870da +#: 54a780ec9c5b4270b61cb1c40f28ae63 +#: 99c61ff23a9f43c1a74a3608cf5bc810 +#: 1448a02e23c546f4aa4a5072438e16fb +#: d6182d5081b04a73b45cdab6770e7195 +#: de6c28dbc55944cba7b85d7aa7fcbd63 +#: b010c0c3b0fa454a90311a3446f9c49b +#: bb7a8a01292b449d92d4b82befbce7c0 +#: 8ea34deeeeef47bea5ed8bf17d465dd5 +#: 723b2bd90f97499ba5dc2f350d048982 +#: 6704eed5f747450d8dfdeaeec60cbbd4 +#: e0d28de49a3749f3948e2f460a2bc193 +#: e20543c5f090466484011ef7bf9cb1c9 +#: 49345f7753d447cf9094bb2cdecd0929 +#: e81e864ce6e74c53a1da0ea0da311d4b +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +#: 6d8c11bb47b2404baadf295e73360b7c +msgid "type" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.is_owner:18 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:51 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:69 +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.can_send:4 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:97 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:22 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:30 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:49 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:86 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:97 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:112 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:121 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:129 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.can_run:15 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.is_on_cooldown:8 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group:18 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group:25 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin:15 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandRegistrationError:18 +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:48 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:18 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:24 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:9 +#: 276711c2a624419c9122929d2b0cdce4 +#: f9b93a380a284e189dc49fa48f348b9d +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: 028c17ce435547ffae49bfe544b27746 +#: af2f1296905749558682b61c1f7363ae +#: e56be582fd2f43eb94adef4955c9abc0 +#: af2f1296905749558682b61c1f7363ae +#: 8eca1380293a4e09adb2fe3078136d93 +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: 8eca1380293a4e09adb2fe3078136d93 +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: 8eca1380293a4e09adb2fe3078136d93 +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +#: af2f1296905749558682b61c1f7363ae +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:55 +#: a5c952c8f62649ff98c795f04e8a9a37 +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:59 +#: 4e41dd2f6e474b968c86fe917f45284f +msgid "Optional[:class:`.HelpCommand`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.Bot:63 +#: 7fa36f820e74436d9d890ec066f529db +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:0 +#: ../../ext/commands/api.rst:0 +#: f49495cd4b3f496f96f84ac8aa1f87e4 +#: 2a95458e7d8643c2ba53f80511c7fd97 +#: c30960c78b1a46e2ab2904693f41c626 +#: fb6332a28a1242f5bede4ea1b4001c1a +#: 558e0cf6198b497cbdb8d7560555cc5b +#: 31bcf378e11c4b7ab87c5037821c6bda +#: c6adc9c02e9a4ce6b1595ac2630bf3b0 +#: 1801dd137def4a99846c6e603f11be1f +#: 024cbb8ca69e4f12a98419f0192bae96 +#: 798fa21ae55f4282b4274758b25d4a83 +#: 183496d428a34f7fa249dc88301f8431 +#: 3bc1086271a94765a82ebba9760e62e2 +#: 812d0fca4d1549339fe98076a893d054 +#: e532d59c72474f99b0c1ce7c2be358e2 +#: 0d64926e9bea4ccd8315b15fc036fc4a +#: 746d82f9ccbd40149262634a1f669cd2 +#: 563e5536890b484ba2cbd0130f1fd9b2 +#: e42e172090a0442eba2ac0f76facbcb5 +#: 0aeb5e483b864662a2c92eebe6f73d99 +#: ca919f2f99a9425793383e7999f3af1c +#: 108b930bfc3f4ea6bd10cbaf29718687 +#: 57fb1651bc2740c48fe01620a1aed31e +#: 942d8503487448198ea61a6b6e8305d0 +#: 49e2026dab654b5ca1a75e1ff2ccedc9 +#: 8ff0aa5a5bb6453aa531130a984ee93d +#: 4f4b773ec13f47708179d77079b9f6f2 +#: 775f4dd1f7fb4a1b9380f86b62fb8056 +#: 261e22506dc44e6484564a98a9ec4011 +#: 3f6507abd3334942a24533f0ac0406f9 +#: 188381798d224cf9b16d6f04651426d2 +#: 9e65520881584d7680f63c943351a497 +#: 4d9ef44a16e243bbb935cce7d88c9077 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: cd224adfd8e945a795b92654c0537e46 +#: 634b9b9ff2e24fdd91b9e3cd5b880d80 +#: 5b1a773778e843eea6be076e295ca033 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 440b7315543740c799170efcdd4c8f0e +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: e979a2cb64c144f08aaf2803550cb543 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 102f67d17332471589053ba459ce6673 +#: 3dbc0c3d62ea4dd1817205318f484376 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 0376d1f3354048868ddfbd60acc27c3f +#: 37a692f9433046b2adc05d7f464911ab +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: d18243f289de4f3aa562ec83d726eb9c +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +#: 3750ee9874a649329aece5d76398dd35 +msgid "Parameters" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.after_invoke:1 +#: baeb56b4ff064e6aa001a5ea8f1091bf +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.after_invoke:9 +#: 32289ec6ecad415fbc1716cd28bb27a1 +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.after_invoke:16 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.after_invoke:12 +#: 1f4414f19cb245d88c190908023d9ac8 +#: 25b3652c08d44d8393ec6f0711deff0e +#: 25b3652c08d44d8393ec6f0711deff0e +msgid "The coroutine to register as the post-invoke hook." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:0 +#: ../../ext/commands/api.rst:0 +#: 630f4288af604d4dbc8e4177a7f21fac +#: 9deb4f77a61449abb51bd5c6b99a742f +#: 0257c75535174994a013c404eed4de3d +#: 2650f6c238e74f72b4357fd0f3649d83 +#: 77dbba5eef11464da6e6d8561993d040 +#: 85f893142dbc4e559193fbceb66e29f8 +#: fd688e2c9468425f8650382857f2fe9a +#: 0aaa7547a84144fc98f8383462258a5d +#: 227204ee62a54c638c2f8b9a91f21145 +#: db8e0299f4d5440f9756cf07c76ff3d2 +#: 3a49aabda5f543efb7eef2d44dc0035e +#: 081141882b5340b1a80561ca9111ae72 +#: 3cf4e4f8fc3944a4b6b9f023fcb9e6e1 +#: 00e100a89db949b995244b5d7ea5c0e0 +#: 0d7bea2ab09344bda3df67dcce3ccdeb +#: 5f1237616e624c018af062a4d89f032c +#: e20c74a6209b4f6ba2e2c83d146ec9b9 +#: 1604d3c4c756481bb44124fe1ee7d611 +#: b49c0073b56340ec9b78c3636e71e85c +#: db7ea1055966404583fc0cb0b2c4d74f +#: 2d00ed43b7e24723b1c4d6801312bdce +#: f601fd2e0ec94ce3a040c5466afdf390 +#: 65b2a4bfdd9f4cc8b834d6d484ef0034 +#: fd1ed033251349feb65a4373c39a3112 +#: b3afb24572e449de8c461403f5864f56 +#: bd10f9d638b347be80279e61dbb6e087 +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 7ae1c7e45ccf4e3583a54ff7c5d20a74 +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +#: 4518277f66b34d9ea6be92e3704fe30a +msgid "Raises" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.after_invoke:19 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.before_invoke:18 +#: ../../../discord/client.py:docstring of discord.client.Client.event:13 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.after_invoke:15 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.before_invoke:15 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.error:11 +#: 2cb6dbd6878a4f67b5005054d4f2340f +#: 9824f3f114b94bd7a2ba929d2afe59d4 +#: 7c6f3f25c6eb4f608a6c686dd14b8cad +#: d8c011efa50c47929c394609e419d093 +#: d8c011efa50c47929c394609e419d093 +#: d8c011efa50c47929c394609e419d093 +#: d8c011efa50c47929c394609e419d093 +#: d8c011efa50c47929c394609e419d093 +#: d8c011efa50c47929c394609e419d093 +msgid "The coroutine passed is not actually a coroutine." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.before_invoke:1 +#: ce34b808e8804ba09dcdbdd5e43f819b +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.before_invoke:9 +#: b71fb7de34de469fb20971cf6703e7c3 +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.before_invoke:15 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.before_invoke:12 +#: 148cdbf1c8ed4fb8b616c3fd3c815e8d +#: ff1c1be395074d0bb084578f9648eed3 +#: ff1c1be395074d0bb084578f9648eed3 +msgid "The coroutine to register as the pre-invoke hook." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check:1 +#: 30a3ced0836b40dabba33773003dc2bd +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check:7 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check_once:13 +#: e5ff436d190a46d49314f31d064db949 +#: 095a14ed7b60432a89818371f06efc90 +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check:12 +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check_once:18 +#: ../../../discord/client.py:docstring of discord.client.Client.event:16 +#: ../../../discord/client.py:docstring of discord.client.Client.listen:11 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_listener:15 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.change_presence:16 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.when_mentioned_or:8 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.before_invoke:11 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_any_role:22 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_permissions:21 +#: 587e23d4697f4a4f94f960f265e6d788 +#: 123407d31ff24dd999888399d8c675ba +#: 34a0e26f2a9f4d4dadfcba125b8d60d8 +#: 6a9a9b160ee24cf4bfd1c63a997e9b6d +#: 2f0dc352e6954dfd855ac44d79767155 +#: 6e75c57ecbba458cbf5f3669a2924ab2 +#: d64565eb8c0f49fabf5ba8ebd0408016 +#: d64565eb8c0f49fabf5ba8ebd0408016 +#: d64565eb8c0f49fabf5ba8ebd0408016 +#: d64565eb8c0f49fabf5ba8ebd0408016 +msgid "Example" +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check_once:1 +#: bf4f1977d6504fd5aa739b28dc3f3390 +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "" + +#: ../../../discord/bot.py:docstring of discord.bot.BotBase.check_once:8 +#: acbeb7009e4c42fb9f128986d2327e71 +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.command:1 +#: 61aae0b994f947b8a1853fda41ee0156 +#: 66c60cbf615a4450a0177eb8da660fe0 +#: 66c60cbf615a4450a0177eb8da660fe0 +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:0 +#: ../../ext/commands/api.rst:0 +#: 3befc35084eb4ca69d1eae3463158861 +#: dfe2da6e0d804d72b6ac73f14963c8f2 +#: 8e90d2f15b4941d98f8df75ea6d1f6f7 +#: 98009cff8e324960b08e4c96846a22ab +#: ad5f35b147574d30a0a839258b537e52 +#: 63cdadc9d8aa4bfabd4c2ebf92943762 +#: e7bb28eb3fa44f87a1b2e6c2b6fd300f +#: 6913a08768f04878a8aae3849f2adbcb +#: 2fccd0b36926425aa78d42b9de69dd3f +#: 5112301599a2461ab64d607e13e31a0c +#: a7e906d78e604e498c0790b35695e171 +#: f4e36f6415c74fc8a5a3d6a231c6612a +#: b6a1edaf8c42494ba5a9e62d8f3d7a0a +#: d0d2c521ec0e46899e9c57882edc2983 +#: 40cd0e3b914a4a93ba95b1043d54fb57 +#: 21b6898829444dfdb4d7580f4b8e8d68 +#: 60a9892afb20420f98ee9221fe525e3e +#: ec9b0c7dd290456795aee20a50830ab1 +#: 00966068ccb2456abc827d903250b689 +#: 581f5bcbba424fdf8b15bcd0b8dc5711 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: ae1200f79d0048e199cda9ddbb154333 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 6a9df72d6343436e8a5d6be1812ec065 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 3e6b25fcdbcd450dba91025338af56fb +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 6d76557cfaf549eb9bbc18d2a380ba49 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +#: 21f49b5974d544ffa30d029b89640d48 +msgid "Returns" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.command:4 +#: 230236e4038a412abf293a0551512e31 +#: f2b7b7f29eb2477e9258c08e49fb3a95 +#: f2b7b7f29eb2477e9258c08e49fb3a95 +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:0 +#: ../../ext/commands/api.rst:0 +#: bf756d9820a94075834d33924e09e0e2 +#: c9bc8a557c184c6d9f063626b67cc4cd +#: ba9d73b43cc14b0c8711857654f83f62 +#: 3c9ab793d144498097bcfd76a5b53eac +#: dd1387feedaf4788a91e66c7120bb6bf +#: 05d8c3f799b246739284dcbebc3d5739 +#: e33db6d356e34de5945d286505e336fa +#: 45ea3bdc5022438c98fa1d50fa047386 +#: 8ad6c4547b91438cac30d78cc6b56789 +#: 5c50e685ec2041e597da308a07641a2c +#: 4c5fd8c24f5b4ad28a6e1aae56787d18 +#: 844194587e244cf2b26a421da5ef2919 +#: 83f96d62a16b4d479ab2c81dd1f136f5 +#: 410437ffc3e04b40a383df209d8b16f3 +#: cd347a646db3434e925a1c1ee2047412 +#: 13f3ffb767a74f8e9e764aa5a74a089a +#: 631a53d5fb644b1dbbe93c6614a7c4f2 +#: b45285c94435415aa6a5322e8781abbd +#: 5636ea5552c544f5b61e1173aabbd424 +#: efde8f14120541b68759499f509605ce +#: f4e246fdf7f2458baa9253a36a4045e0 +#: 123b5e5640914f0c8b4e3046caba82cd +#: 747e9c0cdf2f4e9bb919c9dc427e2cc2 +#: 9014a07ae4274d518383c0faced251e7 +#: 0d5178bf994b44cf926dcc67b591b256 +#: cc0179f647c24dc9a5287080d1c62d99 +#: 198305646666451196d990dc353636ba +#: 0e729c9e43cf4805bafb0bab9cc41897 +#: aa13bf25f19340fc931e80e3daed2919 +#: 55536d0434d84487aa4b5a9de46e940b +#: b46102d67b324fd8a3c1c4ae247fa8b3 +#: 6cbefb296dbe48689f75969f7d94f823 +#: 378dd7f9c2a64e0189299a60058beda8 +#: 3bcb056fb2e14a0fb068215205695ca6 +#: 853376070e4546b989f18c50a2d9817b +#: df0dfaebe66b4cf0840971e222e3f126 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: 83f34d28e50d49638d87349d48d2369e +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: 10722e3a6685409b8ad039a73479cf66 +#: 53e94d21edab4737b42673ee97fdb49c +#: fc5da63fdcca41d5a4742949f05235c9 +#: 09d2baeccc6b4e50adbfb853f2ddf881 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: 33ed8c12d23741c6880f5a1831375fdf +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: c34bb5212e8843d885c20cbf2eb7d819 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: 9d778ca7356943e294915c2454341f4a +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: 3c4a3dc146ea4ead9cbc60eaff2e0088 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: 9d5d85b51d48428ba902d02b951bcffb +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: 77e4fafb7b5f4845b9d186a0206d03e2 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +#: fc5da63fdcca41d5a4742949f05235c9 +msgid "Return type" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.command:5 +#: 0fac82441bda46b2857b66cc3d6fc1ab +#: 44da924bb9b14d1e8a47ed370ae96009 +#: 44da924bb9b14d1e8a47ed370ae96009 +msgid "Callable[..., :class:`Command`]" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:1 +#: 25ca5d10c25a43ab825740b2fb2874e4 +msgid "A decorator that registers an event to listen to." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:3 +#: 6ced4d446c2447a7b3f807c6868b6598 +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:5 +#: 58e8a1624b6b47c18cba15aa21150688 +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:9 +#: bd32e11d29e74bd6b0f29d4020cbd2b9 +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.event:25 +#: 84c8e89006cc4917a75cff6dd4a7be7f +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.group:1 +#: b4303f71de864e7e98b980bd33ef7d84 +#: 2d92005457764c1c8814201cecd4d501 +#: 2d92005457764c1c8814201cecd4d501 +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.group:4 +#: fd3c8f26e2e64cbc919c3e72c8975e46 +#: dc51e15c515241e1b7db18a0e7ddfb03 +#: dc51e15c515241e1b7db18a0e7ddfb03 +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.group:5 +#: cdd278087924410f940c85c590d6565c +#: ffe6eb92b0224834b83f3814c9c5df5f +#: ffe6eb92b0224834b83f3814c9c5df5f +msgid "Callable[..., :class:`Group`]" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:1 +#: 439a5983b3e34e9ab7954fa7b9042e7d +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:5 +#: 2401d9783e7d4182918ca052d3e803b3 +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:7 +#: 5e016ce55c294e638a73a097f5997136 +msgid "The function being listened to is not a coroutine." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:8 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_listener:11 +#: e21be3ea4d0446efaa81b5acd1c28fdd +#: 55915adcdcbc4935b1637428f964dfbb +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:29 +#: f56714807dea497f8cc547c870355a4c +msgid "Would print one and two in an unspecified order." +msgstr "" + +#: ../../../discord/client.py:docstring of discord.client.Client.listen:35 +#: 65dec0b829f94471a23a32db5dbbedb1 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.activity:1 +#: ee245e9df3564ff19f3c70e347412642 +msgid "The activity being used upon logging in." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.activity:3 +#: 533f9a9e3798459b9be6f604992915b5 +msgid "Optional[:class:`.BaseActivity`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.add_application_command:1 +#: 965049efae4b4ed685004789480c0f4d +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.add_application_command:3 +#: a65c13c994b94c719a718b96e4e93521 +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.add_application_command:9 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.add_command:10 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.add_command:10 +#: 38bbdb3e941a4af0b99ed4c90132372c +#: 3ec982cd2dee46bfbf4f020d2e46a906 +#: 20ea5167076042deabb0d765a6285277 +#: 20ea5167076042deabb0d765a6285277 +msgid "The command to add." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.add_application_command:12 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.invoke_application_command:10 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:26 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:55 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.add_check:10 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.on_application_command_error:14 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.remove_check:12 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_listener:12 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_view:20 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.before_identify_hook:18 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.clear:8 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.connect:18 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.delete_invite:16 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.login:14 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.on_error:15 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.remove_listener:10 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.run:28 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.start:11 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_until_ready:6 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:24 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:26 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.unload_extension:27 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.close:6 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.invoke:10 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.on_command_error:14 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.process_commands:21 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.add_command:16 +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.trigger_typing:8 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reinvoke:27 +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.reset:4 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.add_check:10 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.remove_check:11 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.reset_cooldown:7 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.update:9 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.add_command:16 +#: 63f22bb531d541109902fec69dcfcbfc +#: 7dbaac0f1ff047cbad5ca6c2242d4dc4 +#: 5f1082c1e4e04874900a56140fe3d2cc +#: 0017e074dd134426b570354c2504b7db +#: bb305a7b77fe4ff9a8e70816d97d46ae +#: 62d9613a1121411c960009687e8cc328 +#: 7d0a457d06344339819fc176a73566c2 +#: 2955a6e82aa6427ea4129e090d9e0e1a +#: d2e6da7f13ae45be9d21b97011a05d14 +#: 7e4abed9dc9d44818dc910ae2bb0e976 +#: db30e1b1f2df4726842b6713f2dc4d6c +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: e03239f359674e139b092cf33b2fc6b8 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +#: af9c896fbca541199d50ed6f9311ec05 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.add_check:1 +#: ca5a955495a14c66abb490d1030e0cd0 +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.add_check:5 +#: 90a3747872a741d39fb20a4e62affa2c +msgid "The function that was used as a global check." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.add_check:7 +#: 6434458ce10745d6a4d2a97b9da6450d +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:1 +#: 611c86c2efb64169bc1e0f178722f5f2 +msgid "Adds a \"cog\" to the bot." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:3 +#: 9dc96a6bb3b84a9d9242c5e1d477d2c4 +msgid "A cog is a class that has its own event listeners and commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:7 +#: 5a7030646e2649debc2d67517dff7e24 +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:11 +#: ff50388be9f44e8da25ecebf5b0a0b70 +msgid "The cog to register to the bot." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:14 +#: da93463a84aa47688b8cdfcd1763e98c +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:14 +#: 3076fac6693049dca8d5d9f83410f565 +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:20 +#: 3a5615d016404f33be6f8b2e7c7b8789 +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:21 +#: 2ea43d18eb7849e2babe871b171547ab +msgid "An error happened during loading." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.add_cog:22 +#: c3e4756dc3be4e039b57e146c8ee4b70 +msgid "A cog with the same name is already loaded." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.add_command:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.add_command:1 +#: d4bd8f7f9afe4890b60e3c7608d4a53d +#: 892271b7879440eba8bad74a82d01f99 +#: 892271b7879440eba8bad74a82d01f99 +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.add_command:3 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.add_command:3 +#: db096b0658f14eb398b8c0901a0bb4a8 +#: 6e7cfb1130eb428fbd9da148ceb6848a +#: 6e7cfb1130eb428fbd9da148ceb6848a +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.add_command:6 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.add_command:6 +#: 881af903b3834288bf30777981226c3d +#: d005cfa388ba4c9c93b28569e45a9895 +#: d005cfa388ba4c9c93b28569e45a9895 +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.add_command:13 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.add_command:13 +#: 7c9098b1dbc6448dbaf83869211f25a2 +#: 4058311b664443489c2bdcf7ccdf0294 +#: 4058311b664443489c2bdcf7ccdf0294 +msgid "If the command or its alias is already registered by different command." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.add_command:14 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.add_command:14 +#: 523abcff2f2e4510b53afb5e45c51c91 +#: 0624e7fcbdab454e8a678d05ead1d15a +#: 0624e7fcbdab454e8a678d05ead1d15a +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_listener:1 +#: 02bd817bbaf44c34a50afab9bf939469 +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_listener:4 +#: 034fe8fbfb664caba055dda25a8d01f2 +msgid "The function to call." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_listener:7 +#: 4894173aaabd439d9e19b2422e82fb53 +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_listener:10 +#: 88019ec42e9b4afe90bf593a2293878b +msgid "The ``func`` parameter is not a coroutine function." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_view:1 +#: d05412d810f4441fa9fc55ed14abaccb +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_view:3 +#: 31f9b3425c8846d0bf9819c936651f8f +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_view:9 +#: 9b1f1c7e6e204527b0b7f0e584cc5c50 +msgid "The view to register for dispatching." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_view:12 +#: e571a3cbd785484d976fd3b2fd0a4cde +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_view:17 +#: e785ad522f2841a0bae2684ff1da2749 +msgid "A view was not passed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.add_view:18 +#: 41cdd2c26f04437d9e50356565bbe005 +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.allowed_mentions:1 +#: 01a7d56f6fc64da79e759f8199be445b +msgid "The allowed mention configuration." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.application_command:1 +#: 4d61bc9673774eaf9ec7b47ed96bb05c +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.application_command:6 +#: 2322bb50ae2547e7b1a75b809b816a29 +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.application_command:8 +#: fa1dea0535a34d4f970b6c1933b766d6 +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.application_flags:1 +#: 3891c47a359a4c85b46a4ce0c7583dcf +msgid "The client's application flags." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.application_id:1 +#: b16cae8c17764094ab2a6221966688d1 +msgid "The client's application ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.application_id:3 +#: 3805665860b74387aaf8deeb87f400fd +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.invoke_application_command:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.is_owner:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.on_application_command_error:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.application_info:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.before_identify_hook:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.change_presence:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.connect:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_dm:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.delete_invite:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_channel:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_skus:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_stage_instance:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_sticker:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_template:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_user:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_webhook:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_widget:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_or_fetch_user:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.login:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.on_error:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.start:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_until_ready:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.close:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_context:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_prefix:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.invoke:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.on_command_error:1 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.process_commands:1 +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.fetch_message:1 +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.pins:1 +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:1 +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.trigger_typing:1 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:1 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reinvoke:1 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reply:1 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.send_help:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GameConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content.convert:1 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.run_converters:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.__call__:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.can_run:1 +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.convert:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.filter_commands:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.on_help_command_error:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.prepare_help_command:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_bot_help:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_cog_help:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_error_message:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_group_help:1 +#: 25dea9a1072d49a4a52f17e137de72c3 +#: ed13365273a643888369cf52b1e8fb1a +#: 236578d5657f4b75a93140c452d6f243 +#: d878c81f64ca41a3ba4b287fe6201669 +#: 78993876a1f6444389ced7ccf1897b45 +#: 649c19de56d047de904a5b185d87a42c +#: 5718794be4e14211ae9436403f12609e +#: 5b000a6fdae3492da6ed60fb279a55dd +#: 4221da88b8e04f5daa5831179d2c8102 +#: e3601a366188485199c64c569dddce15 +#: 84206d2ae0324e83b7a28e37d5dc1140 +#: 41de831c34ab4a10a10e0efcf817263c +#: a429f06c46d147308e50e9a00d3c0ebc +#: b29f0f791885488596a5ff1ec37ba539 +#: b42983e9e7764522bb4f34f045ad1da5 +#: 52ecf1b64db9436094a380bfd867b180 +#: eb09d3aeb7ee496982cd2147e719a780 +#: 40abc24f54c34f2298f5012fb5ee7aff +#: 5978a98a88184e328613785e29a04c93 +#: e377492e6ddb4255aa4fe483b4e6eadb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 8d5d8cf44a1143208772382e441a15f3 +#: fe4bb802cda24bcca261d0efa60e2fc0 +#: d424f44f65dc4c50bc16b509389106d6 +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +#: 62c513a80a3c4ec5b566f2dfe95621cb +msgid "|coro|" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.application_info:3 +#: 58bce22f218c4d7e972f6d8603a932db +msgid "Retrieves the bot's application information." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.application_info:5 +#: 20ac1c8e924e4a74bfc8271a895ac046 +msgid "The bot's application information." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.application_info:6 +#: ddd2ee7b903d4405b001c528caddc533 +msgid ":class:`.AppInfo`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.application_info:8 +#: 4bebc8aa589942539aac4fc7cb39bcb0 +msgid "Retrieving the information failed somehow." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.before_identify_hook:3 +#: 37dcfe79744144d6b82955792c13e62b +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.before_identify_hook:7 +#: d04199f41dda4861a2bb97a9ceccc58a +msgid "The default implementation sleeps for 5 seconds." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.before_identify_hook:12 +#: 6ddc40ac88e94492a8be6d87f1e5473f +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.before_identify_hook:15 +#: 968a4b1e18b74b5fbbaafcd5a53b8e19 +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.cached_messages:1 +#: e212e868790742248ba3a8d76f5ea528 +msgid "Read-only list of messages the connected client has cached." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.change_presence:3 +#: 1a5853c1b8704ad5b75e31c63d16a5fe +msgid "Changes the client's presence." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.change_presence:6 +#: 51fcf3308e2d482c8ccfe51009f5ae62 +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.change_presence:9 +#: c6e5a0e37494498da3615b0e041001e2 +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.change_presence:13 +#: 1b5a4b8162af4194b8d525d26a63f617 +msgid "If the ``activity`` parameter is not the proper type." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.change_presence:22 +#: 8ce0e28322c74e469822ed7531e3c682 +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.clear:1 +#: e22dd1f501464842b709455fd8d77a6d +msgid "Clears the internal state of the bot." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.clear:3 +#: 15885728217642229cd612c0fcb9525e +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.close:3 +#: cbfb9a74a2ec448fa8ac94b59aac9515 +msgid "Closes the connection to Discord." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.cogs:1 +#: ef290ef0d76a4205bca66cab42c47b0a +msgid "A read-only mapping of cog name to cog." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.commands:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.commands:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.GroupMixin.commands:1 +#: 585e5854876b422d856c9a7d7f4f3745 +#: 23309f092f064da6afced5088b16900c +#: 23309f092f064da6afced5088b16900c +msgid "A unique set of commands without aliases that are registered." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.connect:3 +#: 8e0bc55d2ece473b911a77a7184ef59c +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.connect:9 +#: 6d7f1882aea04a02a4ef6b80ced08594 +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.connect:15 +#: 669921a33c214d4aa713229f40eea540 +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.connect:16 +#: 61b4497757cd4290acbdefb487ebd4aa +msgid "The WebSocket connection has been terminated." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_dm:3 +#: af3102965b034ed883227ac3904af51c +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_dm:5 +#: 84eb1de364fb4f44af43a334a3f0a7bc +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_dm:11 +#: 26efd0e745864817a629901f9d4274e0 +msgid "The user to create a DM with." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_dm:14 +#: a5eed69dc19842e7be8ca4132ff21f2a +msgid "The channel that was created." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_dm:15 +#: ca7c03d41e78401bb047c80cf470d632 +msgid ":class:`.DMChannel`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:1 +#: 32894198e43c44e6be5d31d30af3a30d +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:7 +#: c37bcf8a3fcc4623a52e5842e62a1bf5 +msgid "The name of the group to create." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:10 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:10 +#: 70182e1186984166914ebe5256fd2312 +#: 39b074dd62fe4a2c9593642d30d91cab +msgid "The description of the group to create." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:13 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:13 +#: 46500bc4b09146558d44dcee21047fca +#: 3daecf48b7c64c31b108f8dd881ff771 +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:17 +#: 3e5a4860a9d1483cb61b40ce198e5fee +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.create_group:19 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:17 +#: e95710966abe488e8ce4970bd2f35160 +#: 7afd9a7e1abf445c9185ee1392202fd6 +msgid "The slash command group that was created." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:3 +#: 583248c24e104f60a8d7b44b63a93d8b +msgid "Creates a :class:`.Guild`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:5 +#: 480ab82fc12b401f8b75d5ac50648a04 +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:8 +#: 751a75562aa647628af12ff17756d819 +msgid "The name of the guild." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:11 +#: 75d40bc85a17414a943100275453e7b5 +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:15 +#: 7ca63a3c7aca436ca90a0d584ad7a2bb +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:15 +#: 46ee421067d246aeabd1ba31f8c97032 +msgid "The code for a template to create the guild with." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:20 +#: 4312ec6459c5431e9821af9fc31fb0d5 +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:22 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:26 +#: 97536bb06f8049b5837ac583ff2dce33 +#: c91fefbf98ca4abfadde5d5caadb9dc1 +msgid ":class:`.Guild`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:24 +#: fe6c3f12bfb54bee919c57282004f16c +msgid "Guild creation failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.create_guild:25 +#: 76f88cf22b1d4c1ba41c3a09a320adf1 +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.delete_invite:3 +#: 0149655ae5be40f8b70d5d69362b94f0 +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.delete_invite:5 +#: 12997acdfb41427eafde4adf144e6b6d +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.delete_invite:9 +#: 16bd71de63f54315b81153e65c2efa00 +msgid "The invite to revoke." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.delete_invite:12 +#: 3b8ea28dfd4b4aa6aae2fba880397f50 +msgid "You do not have permissions to revoke invites." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.delete_invite:13 +#: 9ce1620b29d14465babd2e9ef51f9c80 +msgid "The invite is invalid or expired." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.delete_invite:14 +#: 0e1b8d18fdd444df8b1e1bc2bfd61746 +msgid "Revoking the invite failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.emojis:1 +#: f053fc31a26848abb5f0b22c31bba150 +msgid "The emojis that the connected client has." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:1 +#: 55996a99ae5a4b76bcf2980286829ff0 +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:6 +#: 59b671a29aec481bb8db91eb772084d7 +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:9 +#: fc74e3fd9066451da15dbb859f393f0b +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:12 +#: a8980247c8994cc6a3315e3acd06b88b +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:17 +#: d2f6b335c5d149edb5739256c2d0ac02 +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:22 +#: 4468fb7df14b42d6b759894e1d023b0e +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:27 +#: 103afa9d7a7c469186412d2b0f7fd59d +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:30 +#: f7befb3d512042b89e8a107e5a39f44f +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.walk_application_commands:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_all_channels:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_all_members:0 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.walk_commands:0 +#: ../../../discord/ext/commands/cog.py:docstring of discord.ext.commands.cog.Cog.walk_commands:0 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.walk_commands:0 +#: db580d1226264744a222ffee4584ffd4 +#: 1ac0e449c2064ee3872b93131ef5099f +#: acdddbfef28f4deeba67e1c0eeae3126 +#: acdddbfef28f4deeba67e1c0eeae3126 +#: acdddbfef28f4deeba67e1c0eeae3126 +#: e2d006ad6c904920bebc27cd7a383901 +#: acdddbfef28f4deeba67e1c0eeae3126 +#: acdddbfef28f4deeba67e1c0eeae3126 +#: acdddbfef28f4deeba67e1c0eeae3126 +#: acdddbfef28f4deeba67e1c0eeae3126 +msgid "Yields" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:34 +#: 22f913aa3bef434cb525ae9ec6673c3b +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:36 +#: dcca79b2fa794e09b838c1ab709d75b9 +msgid "Retrieving the entitlements failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:37 +#: 295caaa8c9a047a1a1ee5c2029093ff0 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:39 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:40 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:35 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:42 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:37 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check_any:20 +#: 3321eb8445bb48ffb68d9cb74a155012 +#: c41d42eda335471399cd63c006bb2131 +#: 1713b7f68ab24b69904742961b2e7c20 +#: 1713b7f68ab24b69904742961b2e7c20 +#: 1713b7f68ab24b69904742961b2e7c20 +#: 1713b7f68ab24b69904742961b2e7c20 +msgid "Examples" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:40 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:41 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:36 +#: 9c43804aa1e84f4db26daf70ceda2518 +#: 94bc24f4c61e41b5964c4a1322f961f1 +#: c44882f2d2fa4e16be22d009df4a9e97 +msgid "Usage ::" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:46 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:41 +#: 843417dafe404d64bc7fa228cb7035a1 +#: 30d73cc7fe64490fa9bc06ee689bd9ca +msgid "Flattening into a list ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:52 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.entitlements:50 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:46 +#: f3a460b6dbc644f1a519e478316d2ace +#: 890c3220aa92482a88d9eb963d89a73f +#: 828a83477bcd4a6481593e689e4c7a6e +msgid "All parameters are optional." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.extensions:1 +#: 8e4eb4c3e9b145dba548425d3c8bd29d +msgid "A read-only mapping of extension name to extension." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_application:1 +#: 97276bbeae3c4082aa2038967c3d1a7e +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_application:5 +#: c1b69445d0ac4ea887666dd2f395ccab +msgid "The application ID to retrieve information from." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_application:8 +#: d55c33490ff042be856a57e1e3950e4e +msgid "The application information." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_application:9 +#: e7a5155c45d6429799f5a97c8dfa4bc0 +msgid ":class:`.PartialAppInfo`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_application:11 +#: fd59854a364349e9be47834da22da297 +msgid "An application with this ID does not exist." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_application:12 +#: b599a77bcabf40d6aa2b743085912ee5 +msgid "Retrieving the application failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_channel:3 +#: f979de9b2d7e43efb9fcc960cc1168f5 +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_channel:7 +#: 1b2978a016b84e08a0154c5e484807fb +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_channel:11 +#: 88777b1026884b65845244f98566ac70 +msgid "The channel from the ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_channel:12 +#: 27fa5ae581504a6a9713f76e82cc767c +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_channel:14 +#: 7325a3b3e22f45189185a1fbd5628349 +msgid "An unknown channel type was received from Discord." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_channel:15 +#: 9235f18a77de465ab639f9dedb10cb0b +msgid "Retrieving the channel failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_channel:16 +#: f1d9c0f459c0447fb1203723387ced8f +msgid "Invalid Channel ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_channel:17 +#: 9410d10bcdb94e0b9d7c7f7c89b65810 +msgid "You do not have permission to fetch this channel." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:3 +#: de71bd64cf04416ea9bf2abe61ff72ef +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:7 +#: edb1ce0678394fe9a6f1189463300018 +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:12 +#: c79ec39844b242ddab93abb4013a80bb +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:15 +#: f3271bc911514fa7805b7c965fb3840d +msgid "The guild's ID to fetch from." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:18 +#: 3b20121f198d4f388ed94fe5e12cdba9 +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:18 +#: 732356fbef43429eb694993f26d59533 +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:25 +#: a3f16751f69144a3b4797e7f1b235a0c +msgid "The guild from the ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:28 +#: a68501f7e36b4401a713f42b2c3a2f1e +msgid "You do not have access to the guild." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guild:29 +#: 7b41d7287cd448e680bd03c2ebdf67a0 +msgid "Getting the guild failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:1 +#: 22fe20229852494988db210ec83c4f4d +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:5 +#: 4f617e895bd74f44b301bbfdc7c4d06b +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:10 +#: 183ae9d745be416ebb36824adc018c25 +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:13 +#: 5e0f42cbfd094760b0f8d936646ebd13 +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:19 +#: f76547af39e240eda917471e6066d68f +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:24 +#: cb18e3313c264059aed626e8ca209206 +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:29 +#: bc466b15258f4b2aa8ac9a96e0f937d7 +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:31 +#: 15f4a4f866324c7ba489cd589b442544 +msgid "Getting the guilds failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_guilds:32 +#: 75ee4f3a774e4d8f987a57c3125133f5 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:3 +#: ff98e5f070514ea2b279d2d1f6472a4f +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:7 +#: 7fde0851174d4b20815dc8e56fc1e221 +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:12 +#: 7069a208e047405292e67ba908588d72 +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:15 +#: 7eb4713ed1164e76849f0cee607b077d +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:20 +#: 009f29d2f1774d75a283c895fcc1c121 +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:20 +#: a05f7b7813ee445883dbc3cbb934d233 +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:26 +#: e450c21618cc4c59822e7eca956eb52f +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:26 +#: 1b421bdc1a804a888d03595605dccbc8 +msgid "The ID of the scheduled event to be associated with the event." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:28 +#: 0a8572f3c1154620828f50adc2fc3755 +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:34 +#: 67ada2da2c8f457abcdfe820c35edb34 +msgid "The invite from the URL/ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:35 +#: f4512599faea4485b636174c2e95a371 +msgid ":class:`.Invite`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:37 +#: ae0ccbddaeb4447b81059e5f08572ab7 +msgid "The invite has expired or is invalid." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_invite:38 +#: 7fa0a78b22de41ed8f3547cbc22044fd +msgid "Getting the invite failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:3 +#: d96e9f2b7e40438c9c764c153268da08 +msgid "Retrieves all available premium sticker packs." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:7 +#: be5f3a4b0acc431c9d9094685b52c871 +msgid "All available premium sticker packs." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:8 +#: d46c4e3e7bd0488c971b6236c132c575 +msgid "List[:class:`.StickerPack`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_premium_sticker_packs:10 +#: 6be215fce77e413fbf525b18952eacf9 +msgid "Retrieving the sticker packs failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:3 +#: 97b00444639641fc920ebe9efab0d1ba +msgid "Fetches the bot's role connection metadata records." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:7 +#: afcef3e1573241dda22efc2bc8eb0113 +msgid "The bot's role connection metadata records." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_role_connection_metadata_records:8 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:12 +#: f85d9e595c1d4f359d02d7b2baf0b555 +#: 1c6038fbd90940a99452e42246965fcd +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_skus:3 +#: 1d947818db1f4e21a9a1a157a728523a +msgid "Fetches the bot's SKUs." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_skus:7 +#: d7510512f1274c79ad9b92b41e15793a +msgid "The bot's SKUs." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_skus:8 +#: a17b32aff2164b37be4992da3fa602b3 +msgid "List[:class:`.SKU`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_stage_instance:3 +#: ff7eb61902374a9b9694a60b27e0b35f +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_stage_instance:8 +#: 29afd240aa184ce2b8ed8ec77aaba1e9 +msgid "The stage channel ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_stage_instance:11 +#: 0c2c6ce8c1be4ce989544e552be5a9c0 +msgid "The stage instance from the stage channel ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_stage_instance:12 +#: b7086bac74e049e7aaf21d056f2891b3 +msgid ":class:`.StageInstance`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_stage_instance:14 +#: fa27d36619154f23b87e1454acdd2c5f +msgid "The stage instance or channel could not be found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_stage_instance:15 +#: 34b64cf26dd147618b0f7319a1740988 +msgid "Getting the stage instance failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_sticker:3 +#: f4fa9ab7c1a24513b89988310ac21c10 +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_sticker:7 +#: 29648dc231984792ae7aa4469ac255e8 +msgid "The sticker you requested." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_sticker:8 +#: f61c55e61f634f758236b63c220ed5c0 +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_sticker:10 +#: fc7eb527b8b34720a79877daef24b860 +msgid "Retrieving the sticker failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_sticker:11 +#: 5174684b72234a59aef76d140423d20d +msgid "Invalid sticker ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_template:3 +#: ba25538202404ece8e0799e24cc225e8 +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_template:6 +#: 7b26287c2057457497765948aa0f9c14 +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_template:9 +#: adcdc3cfb5d64c07946c55aa2e3b0466 +msgid "The template from the URL/code." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_template:10 +#: 2973bc0fd60c44818c36d29ab2bd1156 +msgid ":class:`.Template`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_template:12 +#: e4b1d12659f942f3bce704baf2b2f6d6 +msgid "The template is invalid." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_template:13 +#: d65929c5b5a04a258026ede0724fc4df +msgid "Getting the template failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_user:3 +#: 71afe2141b384fa5b9855d506b0f85f8 +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_user:9 +#: 63caafa99b464ecba062135b46365975 +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_user:13 +#: 50a668aa170c4373aac97fc0a8a14b8a +msgid "The user's ID to fetch from." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_user:16 +#: 0647be848cbd4b258ebcc87840b89635 +msgid "The user you requested." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_user:17 +#: c908af689e304ea3bd9f626173a93765 +msgid ":class:`~discord.User`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_user:19 +#: f567052fb055456c8ad1fbc3829b2ea3 +msgid "A user with this ID does not exist." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_user:20 +#: 0fa0e89be2e041a6a5cb91ce3b84f051 +msgid "Fetching the user failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_webhook:3 +#: 9b847aa5ea2b4c86b5f64749b6132bcd +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_webhook:5 +#: c5cc8c5449904509b773a938723d081b +msgid "The webhook you requested." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_webhook:6 +#: e9b26972e0e8420a861e3228ac815486 +msgid ":class:`.Webhook`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_webhook:8 +#: ab91f98f4cbf49a19efa88ac091db2db +msgid "Retrieving the webhook failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_webhook:9 +#: 4755f27ecf194457b272d0eb7a579cf4 +msgid "Invalid webhook ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_webhook:10 +#: b6b0773a5d794264aad31f84bb06e24d +msgid "You do not have permission to fetch this webhook." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_widget:3 +#: 2f3d59f28dd84376becd6c9687f23b72 +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_widget:7 +#: a56e920a963d4c6180465244f8ea2461 +msgid "The guild must have the widget enabled to get this information." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_widget:10 +#: 35b8312d608f4df0bea14aedb684366f +msgid "The ID of the guild." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_widget:13 +#: efeb960cd7004534adc71634f17ed0cd +msgid "The guild's widget." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_widget:14 +#: ce6c7c941e4d42699364e7e4595e5773 +msgid ":class:`.Widget`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_widget:16 +#: 167e8f21acd347249d24f6d8970351f4 +msgid "The widget for this guild is disabled." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.fetch_widget:17 +#: 7f5a896385554d7ea4671665ba911293 +msgid "Retrieving the widget failed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_all_channels:1 +#: 85ef0a2cbac449e680f8f39698ec1a9c +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_all_channels:3 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_all_members:3 +#: 72d83d8cefd0467bbfcf9ddc6b6a47cf +#: c91d10a08ad54d2980f75fb326863880 +msgid "This is equivalent to: ::" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_all_channels:11 +#: 32d5a41f29ab4eab83ff4181703345a6 +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_all_channels:15 +#: 9860d3eda1264a0c8df1f138ffe0bb12 +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_all_members:1 +#: 9dfe9cfdde67409dbe4f8f536a632605 +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_all_members:9 +#: af882d2cbfb6416a9e8ae82fe4d00b7d +msgid ":class:`.Member` -- A member the client can see." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:1 +#: beeb38432c18467199e1986a4a5a5802 +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:7 +#: c33347ffc3c742ffa39ad2da8713137b +msgid "The qualified name of the command to get." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:10 +#: 2f30620e074f4420a037b25f8352a23a +msgid "The guild ids associated to the command to get." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:13 +#: b6355726cccf49c08342b8e9bbe0f50f +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:16 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.get_command:14 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.get_command:14 +#: 8075abb274e04650a70502fe718d48e1 +#: 8075abb274e04650a70502fe718d48e1 +#: 8075abb274e04650a70502fe718d48e1 +#: 8075abb274e04650a70502fe718d48e1 +msgid "The command that was requested. If not found, returns ``None``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_command:17 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.remove_application_command:12 +#: a0421f9c994a4d42b5d1d086df607ef7 +#: a0421f9c994a4d42b5d1d086df607ef7 +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:3 +#: 211fd50ce0b145a58e93f891f7e62aac +msgid "Returns the invocation context from the interaction." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:5 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:5 +#: 5ff022119a8143e9b08a979f66a6e2a0 +#: 5ff022119a8143e9b08a979f66a6e2a0 +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:9 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:9 +#: 976de055999f46f58eea47f454eaef7a +#: 976de055999f46f58eea47f454eaef7a +msgid "The interaction to get the invocation context from." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:12 +#: 0802b984866b410088e3bb08e945ee73 +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:17 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_context:22 +#: 3b38ccebb4774f71be6c3c835dd6d70e +#: 3b38ccebb4774f71be6c3c835dd6d70e +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_application_context:19 +#: 31df93db9f4145448a26c7500326286c +msgid ":class:`.ApplicationContext`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:3 +#: 1557cc6eb4f447ad9db07037606871a3 +msgid "Returns the autocomplete context from the interaction." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:12 +#: 42a5b4ca86ee472ca7a3804eace741a7 +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:17 +#: ca667b8dd303434b96f15be6e466fa15 +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_autocomplete_context:19 +#: 75759b0976f74cb6b002eed64c030ee9 +msgid ":class:`.AutocompleteContext`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_channel:1 +#: 54305eefde134b89aedcd1a998ec40c6 +msgid "Returns a channel or thread with the given ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_channel:4 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_emoji:4 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_guild:4 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_message:7 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_or_fetch_user:6 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_stage_instance:6 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_user:4 +#: abb8574be99a40e3abe788514c73ab7a +#: abb8574be99a40e3abe788514c73ab7a +#: abb8574be99a40e3abe788514c73ab7a +#: abb8574be99a40e3abe788514c73ab7a +#: abb8574be99a40e3abe788514c73ab7a +#: abb8574be99a40e3abe788514c73ab7a +#: abb8574be99a40e3abe788514c73ab7a +msgid "The ID to search for." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_channel:7 +#: 107b87ee058841a9966abb7b7ccf4fcb +msgid "The returned channel or ``None`` if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_channel:8 +#: 7f38faba9ead4fa386a53e29f69d7559 +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.get_cog:1 +#: b4d2e92605154bebadcedcbf79765885 +msgid "Gets the cog instance requested." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.get_cog:3 +#: bb4e1d06781a402ab963ee718abec1bc +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.get_cog:6 +#: 5ecdd5ca3b364d2bb11d4214a316a07a +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.get_cog:11 +#: ceac76e5ab5e40dea8f50d62ced7e0f9 +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.get_cog:12 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:62 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.HelpCommand.cog:10 +#: 076958fd76f448899e7a5f907e409cea +#: 076958fd76f448899e7a5f907e409cea +#: 076958fd76f448899e7a5f907e409cea +msgid "Optional[:class:`Cog`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.get_command:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.get_command:1 +#: d555628fb6a74c5697817061624609d9 +#: d555628fb6a74c5697817061624609d9 +#: d555628fb6a74c5697817061624609d9 +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.get_command:4 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.get_command:4 +#: 77d72aaabce64e60a149d21b1319d604 +#: 77d72aaabce64e60a149d21b1319d604 +#: 77d72aaabce64e60a149d21b1319d604 +msgid "This could also be used as a way to get aliases." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.get_command:6 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.get_command:6 +#: 3f540ff7c6ba442abc0635a2ce276025 +#: 3f540ff7c6ba442abc0635a2ce276025 +#: 3f540ff7c6ba442abc0635a2ce276025 +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.get_command:11 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.get_command:11 +#: d9354bca6a4948efb9716c2410e9413a +#: d9354bca6a4948efb9716c2410e9413a +#: d9354bca6a4948efb9716c2410e9413a +msgid "The name of the command to get." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.get_command:15 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:56 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:81 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:103 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.get_command:15 +#: 98d36fa1cabf419197df81cba05fdb4e +#: 98d36fa1cabf419197df81cba05fdb4e +#: 98d36fa1cabf419197df81cba05fdb4e +#: 98d36fa1cabf419197df81cba05fdb4e +#: 98d36fa1cabf419197df81cba05fdb4e +#: 98d36fa1cabf419197df81cba05fdb4e +msgid "Optional[:class:`Command`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_context:3 +#: 7b7c1555a358410c85f6ef2538a9156b +msgid "Returns the invocation context from the message." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_context:5 +#: c65ae05ccc974f74b5932810e2ba0643 +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_context:8 +#: 5291ea7e7d094bb28812eed968557647 +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_context:14 +#: 8b35a61c7ba94b27a0c920be2cbc9a74 +msgid "The message to get the invocation context from." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_context:17 +#: 4106c84ada9b403a9888f3aca451fac7 +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_context:24 +#: a560748f69f04cf0a14045b10804954e +msgid ":class:`.Context`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:3 +#: 7b604a1feb4d46a2bca090967d256ef8 +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:7 +#: b60a51ab863e464eb9c454fdae9c6a22 +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:13 +#: e6a978a1641c44a283815caa0a1909c8 +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:16 +#: 500100e533c44af7b7407da993c87eb1 +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:19 +#: f817262ce5e64a8590082a8280041694 +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.get_desynced_commands:22 +#: ab7dff05807644ed96e2b974b63dff7e +msgid "List[Dict[:class:`str`, Any]]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_emoji:1 +#: 85c87b8fec81465c9020b141be856fb8 +msgid "Returns an emoji with the given ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_emoji:7 +#: 157f1b3c941147a19ce8edf840834d4a +msgid "The custom emoji or ``None`` if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_emoji:8 +#: 1c0cbebe556443ec8b777892bbb413ca +msgid "Optional[:class:`.Emoji`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_guild:1 +#: 3c43e6dcda3848efb665d49d3cb97ad1 +msgid "Returns a guild with the given ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_guild:7 +#: 0351a20e8ffe40e09099eb75e30dc93d +msgid "The guild or ``None`` if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_guild:8 +#: 4df5d4e82b5c432789f6a9477c590bd3 +msgid "Optional[:class:`.Guild`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_message:1 +#: ce8c96bbbff74f8bbd3ebd9b88d31149 +msgid "Returns a message the given ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_message:3 +#: 560f12cac3994e419d298070a28577bf +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_message:10 +#: 3faa4e73ac324172bd8e447ab0a92e16 +msgid "The returned message or ``None`` if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_message:11 +#: 29a148422678430dbb20acdb70e8f5cb +msgid "Optional[:class:`.Message`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_or_fetch_user:3 +#: 275a6d7b15584cc595412689b620e5d8 +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_or_fetch_user:9 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_user:7 +#: a0ddffa324eb4f69b621dc78d6085347 +#: a0ddffa324eb4f69b621dc78d6085347 +msgid "The user or ``None`` if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_or_fetch_user:10 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_user:8 +#: 6750b7f88cee434d86d97c6e26df794e +#: 6750b7f88cee434d86d97c6e26df794e +msgid "Optional[:class:`~discord.User`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_partial_messageable:1 +#: e430c83c877c4c3cab0b0160e4441a7c +msgid "Returns a partial messageable with the given channel ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_partial_messageable:3 +#: 0906235be1c847718975e2d5950d3263 +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_partial_messageable:9 +#: 20f68ab6445a4e1eb3d21d94d48d56f5 +msgid "The channel ID to create a partial messageable for." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_partial_messageable:12 +#: f4cbce994233498eb9c3f7ab43945ed7 +msgid "The underlying channel type for the partial messageable." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_partial_messageable:15 +#: 448098dfa06645d1a21f0383e872fb66 +msgid "The partial messageable" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_partial_messageable:16 +#: 0c8f5fc1798148dc82d346f118df8ac8 +msgid ":class:`.PartialMessageable`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_poll:1 +#: 6a88dea154924ac58b40c4ab9e98a394 +msgid "Returns a poll attached to the given message ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_poll:4 +#: 4ad781ecc41c4c0fa34cdc928810b164 +msgid "The message ID of the poll to search for." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_poll:7 +#: b3004ecd7bfe478c89204898761a7aa8 +msgid "The poll or ``None`` if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_poll:8 +#: 6070523df32e409d9b1fac2a8f96b3b4 +msgid "Optional[:class:`.Poll`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_prefix:3 +#: 05cce8cd9a4d41cb865b62006f90c2f3 +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_prefix:7 +#: c7ba4ac424cc4ca19751b328abfe0998 +msgid "The message context to get the prefix of." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_prefix:10 +#: 4715b82f27524b18bb0212b3bd49ff25 +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.get_prefix:12 +#: 23e4ab83cc1a4d03a15a745646a517a6 +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_stage_instance:1 +#: 19d360590711420b85975a29897dd4da +msgid "Returns a stage instance with the given stage channel ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_stage_instance:9 +#: c1c509ff2b7c46abbd81eba5db015104 +msgid "The stage instance or ``None`` if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_stage_instance:10 +#: 8afa09e8ce9f483187ee524cfbbb7769 +msgid "Optional[:class:`.StageInstance`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_sticker:1 +#: f3c2837e8008408bbf23da1bb066e7e6 +msgid "Returns a guild sticker with the given ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_sticker:7 +#: 36b40417971b4043b37fd64a140e398f +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_sticker:10 +#: 1d52b076ff9e4c908e00cd5a15c2ab81 +msgid "The sticker or ``None`` if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_sticker:11 +#: 72554f8103de4c6e9cb6a9beaf5e0b7d +msgid "Optional[:class:`.GuildSticker`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.get_user:1 +#: ba4b9a4cd1454d8f96be7a8f51de1611 +msgid "Returns a user with the given ID." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.guilds:1 +#: 3c6ffdbfdb4345c6a359147783febc67 +msgid "The guilds that the connected client is a member of." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.intents:1 +#: 209488a932bb47e0931fac3e4d09609c +msgid "The intents configured for this connection." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.invoke:3 +#: 3075bea48f2a4ca8852df93b0bd3498d +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.invoke_application_command:7 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.invoke:7 +#: 0f638f48f50f4c09993a064ea83cd283 +#: 0f638f48f50f4c09993a064ea83cd283 +msgid "The invocation context to invoke." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.invoke_application_command:3 +#: 6e5ba81f8ba047ec86c62d502cf47bce +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.is_closed:1 +#: 90e5eaa0acd44e75b0f81269d2e4704d +msgid "Indicates if the WebSocket connection is closed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.is_closed:4 +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.is_ready:4 +#: f2d2ffb4c5de4294b00e0d6960df1d3d +#: f2d2ffb4c5de4294b00e0d6960df1d3d +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.is_owner:3 +#: 118afb096dbb49fc99f4fa1d450cc94b +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.is_owner:6 +#: 0188040002234e448bfcefb5879da6d0 +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.is_owner:9 +#: ea92aef62ae14860a92b74b19f31e2fd +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.is_owner:14 +#: 75f037142b784ca0b0280584acb209a7 +msgid "The user to check for." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.is_owner:17 +#: 0518f3bb4aa1444db2ac2032b93b409a +msgid "Whether the user is the owner." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.is_ready:1 +#: 041173496c8247cf8d05c7ccbbfb734f +msgid "Specifies if the client's internal cache is ready for use." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.is_ws_ratelimited:1 +#: d06516a48e6c46c6a3e32f6409bc7f1b +msgid "Whether the WebSocket is currently rate limited." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.is_ws_ratelimited:3 +#: 247b66b1c7ac49109fc876742bb3aa13 +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.latency:1 +#: cd244fd94faf4a6d80340bdcbf4fa037 +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.latency:3 +#: 68a27c5f06f046589b9966084c427b86 +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:1 +#: 73ca6be9f6c44ea39c1efce5ee47bf23 +msgid "Loads an extension." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:3 +#: f6a4fbb9fd74467f9c879de246769ffa +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:6 +#: 975e840eaee14b4dbee8a00ddbbeda2f +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:10 +#: 3b164d7e34d1453b97c0f38f3f312a3f +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:14 +#: 8e89d87054594008abe505c84310338c +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:19 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:12 +#: 7f2cff7a3dcb41ef859adebe2c9703ac +#: 7f2cff7a3dcb41ef859adebe2c9703ac +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:19 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:12 +#: 85cb40e2b8f843238e36491f437ae881 +#: 85cb40e2b8f843238e36491f437ae881 +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:27 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:20 +#: 318cf231125c4652934e2e3dcd11f3b4 +#: 318cf231125c4652934e2e3dcd11f3b4 +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:27 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:20 +#: e772cf6937df4d08811f8b5aca62ed7e +#: e772cf6937df4d08811f8b5aca62ed7e +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:34 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:27 +#: 3cecd5dac3b1428186b2006eed2a09ea +#: 3cecd5dac3b1428186b2006eed2a09ea +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:34 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:27 +#: f8f0294e84b04031843107316a63aa39 +#: f8f0294e84b04031843107316a63aa39 +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:45 +#: c16f13ff56c14c05b160e177859de1d9 +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:51 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:44 +#: 236d07f9e65049aead2c01b2e184cb28 +#: 236d07f9e65049aead2c01b2e184cb28 +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:53 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:22 +#: 52b9fd3899444591860e9ea100e5b710 +#: 52b9fd3899444591860e9ea100e5b710 +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:54 +#: a427a8d14c11445e824427e908258a19 +msgid "The extension is already loaded." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:55 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:23 +#: 94d3b957e1c145fba0c65ca08b4a9e7d +#: 94d3b957e1c145fba0c65ca08b4a9e7d +msgid "The extension does not have a setup function." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extension:56 +#: 02cb58ade4144bd090d000ee9512e4e5 +msgid "The extension or its setup function had an execution error." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:1 +#: fc5ee1b90ff04683b6a6a0a44d25f634 +msgid "Loads multiple extensions at once." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:3 +#: 8dbd82d2722b4abe982887f6fbd463cb +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:7 +#: c6dc0ea347054e669a9fceb19b14f3df +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:38 +#: c4b1636eec6a4b959f385ec831af35b9 +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:46 +#: dff67721c328405f993460604610704e +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:47 +#: e26df7023d3e44de9392d0ee2666de5b +msgid "A given extension is already loaded." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:48 +#: 9f8a6c8de9054e5d8f785f7013ff5426 +msgid "A given extension does not have a setup function." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.load_extensions:49 +#: c7ee960eb3ed48cfa6219da68eda0e8a +msgid "A given extension or its setup function had an execution error." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.login:3 +#: 0cd5999f08474ec09e84b3a0fcf53f6a +msgid "Logs in the client with the specified credentials." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.login:6 +#: a83e8afd3b9a4df1aca1563503e19a4f +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.login:10 +#: 4a7aece89b5d4b57b8a98d40cd1eb652 +msgid "The token was in invalid type." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.login:11 +#: 96d7271f109c4e388ec84a0bd84841ed +msgid "The wrong credentials are passed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.login:12 +#: a224ce433d9d407eada620bbe58b79fb +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.message_command:1 +#: 06aaa4a06f1643458bac9277ab9c0586 +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.message_command:7 +#: 7d14b3bdf9634d46bdca6fcd9a21b9e3 +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.message_command:9 +#: 3a1f259101664820b1fdf332b5ba0384 +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.on_application_command_error:3 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.on_command_error:3 +#: 66802051ce734e8097ec34d915787746 +#: 66802051ce734e8097ec34d915787746 +msgid "The default command error handler provided by the bot." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.on_application_command_error:5 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.on_command_error:5 +#: 1cfd6552a76b4aa8a505f6638f251018 +#: 1cfd6552a76b4aa8a505f6638f251018 +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.on_application_command_error:8 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.on_command_error:8 +#: 2bccaf197b874b678e4c7e0f4392290a +#: 2bccaf197b874b678e4c7e0f4392290a +msgid "This only fires if you do not specify any listeners for command error." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.on_error:3 +#: edd24076077248e7b2b4b2ed5ab4d44f +msgid "The default error handler provided by the client." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.on_error:5 +#: 0109e81b10394bdb842f6887198636a4 +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.persistent_views:1 +#: 373aeb873c344d82970e4a032b9ac217 +msgid "A sequence of persistent views added to the client." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.polls:1 +#: a6ba0d7629694f7f82906545519f7701 +msgid "The polls that the connected client has." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.private_channels:1 +#: 2a456fe204bb49ccba1c8ef998f0cc07 +msgid "The private channels that the connected client is participating on." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.private_channels:5 +#: ceac0cfc384647d298f39f12c0acf7ed +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:3 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.process_commands:3 +#: 7182196090184bd2924a20549adf2d46 +#: 7182196090184bd2924a20549adf2d46 +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:7 +#: ba527e37463647ce8c5432016f29f78c +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:11 +#: 50c7c9cad8cf4f289847762194b48a53 +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:18 +#: cb839530614640e8968e100adf2228d8 +msgid "The interaction to process" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.process_application_commands:21 +#: ff06c0ebce444f51a73fe1ee516f7264 +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.process_commands:7 +#: 6804d4b7ab9c43949f7ebec022a2b5e5 +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.process_commands:11 +#: f62bf245cd8e481981dfd17614caa216 +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.process_commands:14 +#: 2d7cb9beeb8349dd9c7fa0501f057e21 +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.BotBase.process_commands:18 +#: c4b59976df7f42f0a3c51d4f2e358b52 +msgid "The message to process commands for." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:3 +#: 164fb90b104045e89d7c1f0414020a3e +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:7 +#: 78e53cdddda540b9a21a7fd370ac3b07 +msgid "The command to register." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:10 +#: 608b9bb60d2140218c03a6ef164385a0 +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:14 +#: dad7c61d72ce47a992ed88b6a217b991 +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:18 +#: 4e1b3e10ead548c8804fdc8b0a1b2664 +msgid "The command that was registered" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_command:19 +#: 91dfc7d1b4eb4a6086d3b32f16fd9469 +msgid ":class:`~.ApplicationCommand`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:3 +#: 62e8f2e9cd354bfaa1251489d46acd96 +msgid "Register a list of commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:8 +#: c5082ea44ddf4a65ab929232d45ea410 +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:11 +#: af5a7516da5e45ec8955283376c7ce27 +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:15 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:30 +#: 4fae560ecd074d41a1539bb3058d9c8e +#: 4fae560ecd074d41a1539bb3058d9c8e +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:20 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:35 +#: c70634c2e0434418a3a5d78525171060 +#: c70634c2e0434418a3a5d78525171060 +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:24 +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:52 +#: d41fd7f478444437aa26d461b53c89b0 +#: d41fd7f478444437aa26d461b53c89b0 +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.register_commands:27 +#: 9bd42b0833e541da9ea21e3253f0f1e1 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:1 +#: f5bfe1db4bd748fbabc1c2d748a1ad3d +msgid "Atomically reloads an extension." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:3 +#: e00b1c26b7c541efad26075cc3da1773 +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:9 +#: 7397c9310acb4dc49acf1b6efd3fc08b +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:14 +#: 918b442226fd4dcab9ff66a48716b0ea +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:14 +#: 4f400cab8da54866b5de772471327cbc +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:21 +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.unload_extension:25 +#: 84cf47932ab94200b27422be14d0bf12 +#: ce093ca8e94b492b9baae5fe63c4e335 +msgid "The extension was not loaded." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.reload_extension:24 +#: b6163285297844998306e8645322884b +msgid "The extension setup function had an execution error." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.remove_application_command:1 +#: a1ef0b2b55144410b778bb7ffb8be5b9 +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.remove_application_command:7 +#: e62f5010bdd14887b34428f27772f090 +msgid "The command to remove." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.remove_application_command:10 +#: 36c1c6930d5745a4b82db78c7cc5dae2 +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.remove_check:1 +#: 8c096a18316e4395b5a8c99d778633a6 +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.remove_check:6 +#: d836f1015d2f4872921e7e2bd23cfd08 +msgid "The function to remove from the global checks." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.BotBase.remove_check:8 +#: 52505a1773da45cd96132292f234668a +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.remove_cog:1 +#: 4bce31052eae454cb922019dfa00224e +msgid "Removes a cog from the bot and returns it." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.remove_cog:3 +#: 70dceeec61a3451a9e1f6bc70fbcfa91 +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.remove_cog:6 +#: 4d06c08c84414815a3913eec615e16e7 +msgid "If no cog is found then this method has no effect." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.remove_cog:9 +#: af1036bce59746d093abd81aab79b1d0 +msgid "The name of the cog to remove." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.remove_cog:12 +#: e9f40ae4bcf146d9abae3c78d57f5fd5 +msgid "The cog that was removed. ``None`` if not found." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.remove_cog:13 +#: 7e9562f29ff24c168294ced809e39c48 +msgid "Optional[:class:`.Cog`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:1 +#: 72e56541aba94b5094116625bae069d9 +#: 72e56541aba94b5094116625bae069d9 +#: 72e56541aba94b5094116625bae069d9 +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:4 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:4 +#: e1f8b4c4d35e4ad8b57c3d018b6f4174 +#: e1f8b4c4d35e4ad8b57c3d018b6f4174 +#: e1f8b4c4d35e4ad8b57c3d018b6f4174 +msgid "This could also be used as a way to remove aliases." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:7 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:7 +#: d399c8aa90334ed29d8c347beafa631d +#: d399c8aa90334ed29d8c347beafa631d +#: d399c8aa90334ed29d8c347beafa631d +msgid "The name of the command to remove." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:10 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:10 +#: 6edfdbe1280e4cf398df37fe2792d8ee +#: 6edfdbe1280e4cf398df37fe2792d8ee +#: 6edfdbe1280e4cf398df37fe2792d8ee +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:12 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.remove_command:12 +#: 99f6a7ad97a24341a814e6f291e294d2 +#: 99f6a7ad97a24341a814e6f291e294d2 +#: 99f6a7ad97a24341a814e6f291e294d2 +msgid "Optional[:class:`.Command`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.remove_listener:1 +#: 89237b2df8894f028c8d6fe4b723ac9e +msgid "Removes a listener from the pool of listeners." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.remove_listener:4 +#: 4126c6c0ad9d41f98850f0a0daf3d13f +msgid "The function that was used as a listener to remove." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.remove_listener:6 +#: 04dcea9827704258a9e40aebaabf81cb +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.run:1 +#: d770bb73dbb7401f974c801b9884b9d2 +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.run:4 +#: 7cf3c2253ef341fd9ea4cd589e8a8f24 +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.run:8 +#: 81da8969b71546b2b65729eae997a16f +msgid "Roughly Equivalent to: ::" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.run:20 +#: 4e683fc6fb4d4a70936b85ea61e72a74 +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.slash_command:1 +#: dd492beae05f4a8d8cb809e7edef441e +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.slash_command:7 +#: 802ce9a737a9484c896d16f372e3b6de +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.slash_command:9 +#: 108e23f4f6284ab29c327401bf146ddc +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:1 +#: 7634d59aa45e4d26b2c565151cc3782e +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.group:7 +#: 737591a4772a41f6bdeea4dd51546778 +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.start:3 +#: d76b1fe4d76f4ca69d1a0ade53afc1ce +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.start:5 +#: 76b5f1a0b02348759deca85bc9662056 +msgid "An unexpected keyword argument was received." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.status:1 +#: 63ac3c15418f4a8ab3731229e8c99da7 +msgid "The status being used upon logging on to Discord." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.stickers:1 +#: 1538eaf30f75407ab466133776dbc71e +msgid "The stickers that the connected client has." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.store_url:1 +#: e5d3eb89db9845c5aec24b89323f4b32 +msgid "The URL that leads to the application's store page for monetization." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:37 +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:45 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.store_url:5 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:10 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:79 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadBoolArgument:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadColourArgument:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotFound:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandRegistrationError:12 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.EmojiNotFound:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ExpectedClosingQuoteError:9 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildNotFound:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildStickerNotFound:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.InvalidEndOfQuotedStringError:10 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MemberNotFound:12 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MessageNotFound:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.PartialEmojiConversionFailure:12 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.RoleNotFound:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ThreadNotFound:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UnexpectedQuoteError:9 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UserNotFound:12 +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:11 +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:23 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.HelpCommand.invoked_with:10 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:49 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:56 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_not_found:14 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_command_signature:8 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.remove_mentions:6 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:22 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:16 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:23 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:48 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_command_signature:8 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_ending_note:6 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_opening_note:9 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:13 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:19 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:34 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 +msgid ":class:`str`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:3 +#: 56dee18f303b43e79e6b6a77a2eadd69 +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:8 +#: 2ab7c2937ad74760b370b73a6a8ba2ca +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:20 +#: 76d41f32c4ba46cfbd8dd7155cf5bd05 +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:27 +#: 952a63d7ebec443ea612b0602057c526 +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:39 +#: e8fe7f09dcf84062a21c87edb848005f +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:43 +#: 8f87ec3068be415190fee8343946adbf +msgid "Whether to register guild commands. Defaults to True." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.sync_commands:46 +#: f5a29066bc064defbb80514c03a3f884 +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.unload_extension:1 +#: d3b66c696d4c429fa2944c1d45bf4f3e +msgid "Unloads an extension." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.unload_extension:3 +#: 9a66a37183ff460ab14866054d375aeb +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.unload_extension:6 +#: a598066c3fe44c7f8e0e5489ed9659e1 +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.unload_extension:12 +#: b32f49db4c9e4716a586f8f433a8babb +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.unload_extension:17 +#: b8bc526bb85d4212b18245588c6d2774 +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.unload_extension:17 +#: 38ab1a9d45e54b7f9b7a2df37263d789 +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.cog.CogMixin.unload_extension:24 +#: 59b51e51c9d8441c8b1d6fa796ed8885 +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:3 +#: 25ed7845b9674200a5ba81f4ea0a431d +msgid "Updates the bot's role connection metadata records." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:8 +#: fa964cb583594724886c942b50bbb257 +msgid "The new metadata records to send to Discord." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.update_role_connection_metadata_records:11 +#: 896b8eabc98b4e468b4e0d752178c9b5 +msgid "The updated role connection metadata records." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.user:1 +#: 65f4a38703104a058b05302678b5631e +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.user_command:1 +#: b2b91e77f7d741618fea041bc44a2047 +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.user_command:7 +#: b1b309bd09ac4f3cba07626e0d84770e +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.user_command:9 +#: 43ff330447974841a60b8ce9ff1babcc +msgid "Callable[..., :class:`UserCommand`]" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.users:1 +#: 85e2b097c0464c2983971f8c305ef6db +msgid "Returns a list of all the users the bot can see." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.voice_clients:1 +#: abdc4c41e9c546b2b961ef5395b29fcf +msgid "Represents a list of voice connections." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.Bot.voice_clients:3 +#: 165917f65ed0449492cc9106a1860d96 +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:3 +#: 15de8e6d9e4640ca8681f96393db605e +msgid "Waits for a WebSocket event to be dispatched." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:5 +#: f30e7c279c614fe78d5d370ebee54379 +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:9 +#: 7ffe4d5b36924c5fbf56359a276435bf +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:14 +#: 68218290695e4d94a40a0dfa0e6f0eb7 +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:19 +#: 891286b54b444d3e857a3e11ebd36f2c +msgid "This function returns the **first event that meets the requirements**." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:22 +#: 53489b7bb49642c6be5938b4b13c4a5d +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:26 +#: 6b6eeb0f83914b9cade3cb77db136009 +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:30 +#: cdaf56492bf840f6bd28460c4343513a +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:34 +#: a9dae933ab7e444fa98d09fc664439ac +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:39 +#: c18ac7e53ef548b3b012fd24da33f00e +msgid "Raised if a timeout is provided and reached." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:43 +#: 1efb0f90994a4d09b084d196cd2dbd19 +msgid "Waiting for a user reply: ::" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_for:57 +#: fec96c30c379416b9f9c0ee73ed2280d +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.client.Client.wait_until_ready:3 +#: 4e183d241d704c97af61ff44652e8970 +msgid "Waits until the client's internal cache is all ready." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.walk_application_commands:1 +#: e5f1e9c359cb4fd1a94239b501fb3078 +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.bot.ApplicationCommandMixin.walk_application_commands:3 +#: 8cf9700f44cb4982999c7f0e06fae9a7 +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.walk_commands:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.walk_commands:1 +#: 1456f4943caa4b34a8e69f60b5a07808 +#: 1456f4943caa4b34a8e69f60b5a07808 +#: 1456f4943caa4b34a8e69f60b5a07808 +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.walk_commands:3 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.walk_commands:3 +#: 49f59fb863cd4209bd0f1f4182299127 +#: 49f59fb863cd4209bd0f1f4182299127 +#: 49f59fb863cd4209bd0f1f4182299127 +msgid "Duplicates due to aliases are no longer returned" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.core.GroupMixin.walk_commands:6 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin.walk_commands:6 +#: c046361221d6494fa948452872c5775c +#: c046361221d6494fa948452872c5775c +#: c046361221d6494fa948452872c5775c +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "" + +#: ../../ext/commands/api.rst:53 +#: 083f5bc33dcb4586af8062833c6e2a40 +msgid "AutoShardedBot" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.AutoShardedBot:1 +#: c43ed20f7e3248c99243a25c12d9b7c9 +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "" + +#: ../../ext/commands/api.rst:61 +#: 0a9ee6adf3384fd2af3d470e981358f8 +msgid "Prefix Helpers" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.when_mentioned:1 +#: 4c8b697e316940b296c4ff16559692be +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.when_mentioned:3 +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.when_mentioned_or:3 +#: 94c1395e027c46d6ade3d6e434844537 +#: 94c1395e027c46d6ade3d6e434844537 +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.when_mentioned:9 +#: 871ad9b1ab9946a18c415864a779a250 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.when_mentioned_or:1 +#: 23b7b72806634d609c92fb1e70fe4ad1 +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.when_mentioned_or:5 +#: 846bfc51b4944ad4983ff4d1d99850c1 +msgid ":func:`.when_mentioned`" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.when_mentioned_or:15 +#: c8eceea9e53d45cc97cfcbb42398acb9 +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "" + +#: ../../../discord/ext/commands/bot.py:docstring of discord.ext.commands.bot.when_mentioned_or:26 +#: c5b60bd7da7b4768b14a994651830b23 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr "" + +#: ../../ext/commands/api.rst:70 +#: 607f676f879e46c0bbd010f553a05c6b +msgid "Event Reference" +msgstr "" + +#: ../../ext/commands/api.rst:72 +#: abda3f19786e42ea95de290e49493db7 +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "" + +#: ../../ext/commands/api.rst:77 +#: 9d47bcf3bdba46c0aee61570b0c50c1c +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "" + +#: ../../ext/commands/api.rst:81 +#: dcb78c0a90ce4197baba03a1963d4490 +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.convert:8 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.on_help_command_error:12 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.prepare_help_command:16 +#: ../../ext/commands/api.rst:83 +#: ../../ext/commands/api.rst:95 +#: ../../ext/commands/api.rst:105 +#: 08d36c605612426784eaf9ec301a665e +#: 08d36c605612426784eaf9ec301a665e +#: 08d36c605612426784eaf9ec301a665e +#: 08d36c605612426784eaf9ec301a665e +#: 08d36c605612426784eaf9ec301a665e +#: 08d36c605612426784eaf9ec301a665e +msgid "The invocation context." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.on_help_command_error:15 +#: ../../ext/commands/api.rst:85 +#: 7db908c9bd4146148c671612f1a21c16 +#: 7db908c9bd4146148c671612f1a21c16 +msgid "The error that was raised." +msgstr "" + +#: ../../ext/commands/api.rst:90 +#: 347da799cd5c46d494faa3a6db00ab44 +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "" + +#: ../../ext/commands/api.rst:92 +#: c7110a45e2cb48e1b8de37062089a003 +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "" + +#: ../../ext/commands/api.rst:100 +#: c0b551f9b80642cab7f482a5e253ccb0 +msgid "An event that is called when a command has completed its invocation." +msgstr "" + +#: ../../ext/commands/api.rst:102 +#: e6df0f94dea4459b991e737d795fa1ac +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "" + +#: ../../ext/commands/api.rst:111 +#: 281bd859cfe442f290d3af15260bf4b3 +msgid "Commands" +msgstr "" + +#: ../../ext/commands/api.rst:114 +#: 2bc62b679dc241c8bbdad200cd956713 +msgid "Decorators" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.command:1 +#: 708aede471434da3975092e896c74818 +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.command:4 +#: c63fd729dfb8408dafe13dc7810919fa +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.command:9 +#: e53325d7f3aa42c8a94797b99ede0e96 +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.command:14 +#: a0a1831b938245e4bc643705c843a97f +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.command:18 +#: 2dee1730ac3e4b508e2d0151bdc7b6fc +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.command:21 +#: 8750c06b578949b2bec301ab09966274 +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.command:24 +#: 2164945e8ddc44eea1067cd31fd4dbee +msgid "If the function is not a coroutine or is already a command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.command:26 +#: 578d8eb6b02947ff986b9f8f510ecdca +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.group:1 +#: 55c95dbeda95432bbc44c8e8b1bbfb82 +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.group:3 +#: 0bdb03a91ab2407e8b5340be7023af87 +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.group:6 +#: 7fb2f6d0e28b47be902cbe75c475e17f +msgid "The ``cls`` parameter can now be passed." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.group:15 +#: 9e786b12bf0e42e587114de4fa12b997 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr "" + +#: ../../ext/commands/api.rst:123 +#: be8eaaf347484952b041ca7193bfde75 +msgid "Command" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:1 +#: b2740c0e271c45ffa31ee9e4ef9110d9 +msgid "A class that implements the protocol for a bot text command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:3 +#: 38d70fc6a98e49428906980496be477e +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:8 +#: fea00179db634bc3b5280d608f1aaf46 +msgid "The name of the command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:14 +#: 74f8737bef614b73b50cc19b5b1fedcc +msgid "The coroutine that is executed when the command is called." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:16 +#: 724c19721b204ffcb58a102838f26c9c +msgid ":ref:`coroutine `" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:20 +#: 9cbe2b0ec42e48bc9b35c83c82e2940a +msgid "The long help text for the command." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:50 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:63 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:90 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:22 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:28 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:34 +#: 2fa587e86d45443b9e8de44d3a40adb3 +#: 2fa587e86d45443b9e8de44d3a40adb3 +#: 1cae6d584b4042669667b6b5b19e8ca7 +#: 2fa587e86d45443b9e8de44d3a40adb3 +#: 2fa587e86d45443b9e8de44d3a40adb3 +#: 2fa587e86d45443b9e8de44d3a40adb3 +msgid "Optional[:class:`str`]" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:26 +#: b746e9e3fb354ee1a6d3769b00a98e29 +msgid "The short help text for the command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:32 +#: dd8d8fc9f64e45ef87981bb7bc7471f4 +msgid "A replacement for arguments in the default help text." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:38 +#: 42fc2c295e1243b79b516d3c03109b96 +msgid "The list of aliases the command can be invoked under." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:40 +#: cf54b9762201480cab2c561bc2d887c4 +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:44 +#: 0a79f1e290f24adc8156b6f1bd32b74e +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:53 +#: f54613a1d2e0437eb1091031a27cd79a +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:56 +#: 3df23d8b3d4345098f4d4afd3baff1e2 +msgid "Optional[:class:`Group`]" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:60 +#: d8e1092e543f43618448013b2110ca43 +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:66 +#: 8244542dc8084a9da29dd9ff51c67359 +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:73 +#: 94ebb1d8ffa74c098316e5fc504e71fd +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:77 +#: 145735dc029546e0a341c7629552a704 +msgid "The message prefixed into the default help command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:83 +#: 9e57d5cbe57144f392610c29de2f9c85 +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:90 +#: 14cac0f6a6ae461ab7fe5343e0f7f3d0 +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:101 +#: 093e94bdc8a74603b4cfab983620c699 +msgid "The subcommand that was invoked, if any." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:107 +#: b9e5bf62202047d7a0dbd96c11552eb8 +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:116 +#: 4d59accdbe704484b8e291b9fa4bcffd +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:125 +#: f1dc7aea853f496cb8f912346dbd74ba +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:133 +#: acbffbc6ee1a4eae9845e9c260ca365f +msgid "A dict of user provided extras to attach to the Command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:136 +#: da23aa9c2f1b457c89b393dc1ce8d53d +msgid "This object may be copied by the library." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:65 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:35 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:138 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin:9 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:44 +#: bc8667441e1444d0897a7803d2b26f77 +#: bc8667441e1444d0897a7803d2b26f77 +#: bc8667441e1444d0897a7803d2b26f77 +#: bc8667441e1444d0897a7803d2b26f77 +#: bc8667441e1444d0897a7803d2b26f77 +msgid ":class:`dict`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:142 +#: 349fc1bcfd9746f7be16678892cd7ec9 +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command:143 +#: 8f08e59bec544f6fa289612f427d41a9 +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.after_invoke:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.after_invoke:1 +#: 90e414e8d0b44cd79cab048aefdf6405 +#: 90e414e8d0b44cd79cab048aefdf6405 +#: 90e414e8d0b44cd79cab048aefdf6405 +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.after_invoke:3 +#: d32e1cac49544fd5ae400c1fba138334 +#: d32e1cac49544fd5ae400c1fba138334 +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.after_invoke:7 +#: 51aa7afdb49f4da6ac20b1dcf6b57e06 +#: 51aa7afdb49f4da6ac20b1dcf6b57e06 +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.after_invoke:9 +#: 19f8492ddfb9427abc3cde521480b85d +#: 19f8492ddfb9427abc3cde521480b85d +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.after_invoke:17 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.before_invoke:17 +#: 7ae4c11caa124e808c7fb7b202116f45 +#: 7ae4c11caa124e808c7fb7b202116f45 +#: 7ae4c11caa124e808c7fb7b202116f45 +#: 7ae4c11caa124e808c7fb7b202116f45 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.before_invoke:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.before_invoke:1 +#: 855503b6108245fcb68107267c49085e +#: 855503b6108245fcb68107267c49085e +#: 855503b6108245fcb68107267c49085e +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.before_invoke:3 +#: cf73320a95f4476b80a6f070ab5b02e3 +#: cf73320a95f4476b80a6f070ab5b02e3 +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.before_invoke:7 +#: 06e921e2b2fb4c21a72f500bd46a2810 +#: 06e921e2b2fb4c21a72f500bd46a2810 +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.before_invoke:9 +#: 40fdc1fda7b94b879512d0e996f8258d +#: 40fdc1fda7b94b879512d0e996f8258d +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.error:1 +#: e84346f5de634da79e860d51d22db014 +#: e84346f5de634da79e860d51d22db014 +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.error:3 +#: f38c35e1e73e491699c0f0ddb73663c7 +#: f38c35e1e73e491699c0f0ddb73663c7 +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.error:8 +#: 23a93b3beb964d8cbe69ad9ff6b02688 +#: 23a93b3beb964d8cbe69ad9ff6b02688 +msgid "The coroutine to register as the local error handler." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.error:13 +#: 20f06aa013104c82b4b355c39d43a727 +#: 20f06aa013104c82b4b355c39d43a727 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.add_check:1 +#: ad8decf8dfa04986bacfea9596033dc8 +#: ad8decf8dfa04986bacfea9596033dc8 +msgid "Adds a check to the command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.add_check:3 +#: ade7620bbb9c4a79a2272aa1abd4ec09 +#: ade7620bbb9c4a79a2272aa1abd4ec09 +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.add_check:8 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.add_check:6 +#: 94e53b88c7864946aa8238fa03858fcf +#: 94e53b88c7864946aa8238fa03858fcf +#: df2ebe85b1c24e0994ef469c4abbb696 +msgid "The function that will be used as a check." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.remove_check:1 +#: c9b66986248346dba1791fd1cb802588 +#: c9b66986248346dba1791fd1cb802588 +msgid "Removes a check from the command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.remove_check:3 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.remove_check:3 +#: 03c21e4d038949829e3d40810fc4b45d +#: 03c21e4d038949829e3d40810fc4b45d +#: 765ac029ae7e480ab864cfded7dc1d08 +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.remove_check:9 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.remove_check:9 +#: dc6b6d44452748f48fb47d44228fb6fa +#: dc6b6d44452748f48fb47d44228fb6fa +#: 53d65f268cfb4a8ba97bcd294871ec32 +msgid "The function to remove from the checks." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.update:1 +#: 2d740adac15a4ca48c6960d4946687a2 +#: 2d740adac15a4ca48c6960d4946687a2 +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.update:3 +#: 3420696530994c2dbd03cb86dbc54b25 +#: 3420696530994c2dbd03cb86dbc54b25 +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.__call__:3 +#: a94a96db6cea4071aed07dc63c09457a +msgid "Calls the internal callback that the command holds." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.__call__:7 +#: 06e2104d086e4245b4d7953660649bc0 +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:27 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.__call__:19 +#: 71c24cc891e04432849002e8709dfdf0 +#: 71c24cc891e04432849002e8709dfdf0 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.copy:1 +#: 6cd1c8a959c040b78e73444a59627b2c +msgid "Creates a copy of this command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.copy:3 +#: 1db5a8f7327d4ba1a4f75c7409af2b59 +msgid "A new instance of this command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.copy:4 +#: c0493f185aa540c18c9db1724fd3fb0e +msgid ":class:`Command`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.clean_params:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.clean_params:1 +#: 422208602e70468a8cc4695ddaf9285c +#: 422208602e70468a8cc4695ddaf9285c +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.clean_params:4 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.clean_params:4 +#: 697abd5fedc04c189332444f2135a9ac +#: 697abd5fedc04c189332444f2135a9ac +msgid "Useful for inspecting signature." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.full_parent_name:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.full_parent_name:1 +#: 512c2c1ea4184e77bfd168579929e201 +#: 512c2c1ea4184e77bfd168579929e201 +msgid "Retrieves the fully qualified parent command name." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.full_parent_name:3 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.full_parent_name:3 +#: c3494ed24b134e688ac5f49b5eb047d7 +#: c3494ed24b134e688ac5f49b5eb047d7 +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.parents:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.parents:1 +#: b6e4c6ca7e85435f9351a14cbf9b2bcb +#: b6e4c6ca7e85435f9351a14cbf9b2bcb +msgid "Retrieves the parents of this command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.parents:3 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.parents:3 +#: 21ee38bff0764697b17dd22c2db5ed96 +#: 21ee38bff0764697b17dd22c2db5ed96 +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.parents:5 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.parents:5 +#: 5eedd15d7f0045a89807cee976a97cc0 +#: 5eedd15d7f0045a89807cee976a97cc0 +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.root_parent:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.root_parent:1 +#: e65c9a5c570a416f969edeec9068e39a +#: e65c9a5c570a416f969edeec9068e39a +msgid "Retrieves the root parent of this command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.root_parent:3 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.root_parent:3 +#: 2f1f6da9123b4f4aa3d0a56f508f3e3b +#: 2f1f6da9123b4f4aa3d0a56f508f3e3b +msgid "If the command has no parents then it returns ``None``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.root_parent:5 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.root_parent:5 +#: 6521e09bdf944e6db9d3f60cbe90b65f +#: 6521e09bdf944e6db9d3f60cbe90b65f +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.qualified_name:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.qualified_name:1 +#: bcf9477a72ac4c729bb905cfcb4e2405 +#: bcf9477a72ac4c729bb905cfcb4e2405 +msgid "Retrieves the fully qualified command name." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.qualified_name:3 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.qualified_name:3 +#: d070d67e1ecf455b8dfd8194fa5d3e29 +#: d070d67e1ecf455b8dfd8194fa5d3e29 +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.is_on_cooldown:1 +#: 30141c30cc364576aac449f316b52da0 +#: 30141c30cc364576aac449f316b52da0 +msgid "Checks whether the command is currently on cooldown." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.is_on_cooldown:4 +#: 6e7a91b24b664b699c0791b676c4aaac +#: 6e7a91b24b664b699c0791b676c4aaac +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.is_on_cooldown:7 +#: b4eff87099ad4ac9852614c8f3eb7862 +#: b4eff87099ad4ac9852614c8f3eb7862 +msgid "A boolean indicating if the command is on cooldown." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.reset_cooldown:1 +#: 8a5495bda5cb470183ef2086755ce0f0 +#: 8a5495bda5cb470183ef2086755ce0f0 +msgid "Resets the cooldown on this command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.reset_cooldown:4 +#: ca312cee971a438abb381bf66fb2cbff +#: ca312cee971a438abb381bf66fb2cbff +msgid "The invocation context to reset the cooldown under." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.get_cooldown_retry_after:1 +#: 51fa09d7f11f43a1b781787a52ce8436 +#: 51fa09d7f11f43a1b781787a52ce8436 +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.get_cooldown_retry_after:6 +#: 45878d40a5fa4890ad42de0e8e9edc6e +#: 45878d40a5fa4890ad42de0e8e9edc6e +msgid "The invocation context to retrieve the cooldown from." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.get_cooldown_retry_after:9 +#: fdf38ba24dc14b689ad1e1eab70c6c1d +#: fdf38ba24dc14b689ad1e1eab70c6c1d +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown:13 +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.get_retry_after:9 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.get_cooldown_retry_after:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandOnCooldown:22 +#: 34090bfda6e1409eb479e3b919bede99 +#: 34090bfda6e1409eb479e3b919bede99 +#: 34090bfda6e1409eb479e3b919bede99 +#: 34090bfda6e1409eb479e3b919bede99 +#: 34090bfda6e1409eb479e3b919bede99 +msgid ":class:`float`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.has_error_handler:1 +#: 3970666bdb78497b8d5a65197482a7bc +#: 3970666bdb78497b8d5a65197482a7bc +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.cog_name:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.cog_name:1 +#: a5a5f0ae305348feb8f1456838a1ee4a +#: a5a5f0ae305348feb8f1456838a1ee4a +msgid "The name of the cog this command belongs to, if any." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.short_doc:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.short_doc:1 +#: a359e8b0858f4bff80df0d29205d3ab0 +#: a359e8b0858f4bff80df0d29205d3ab0 +msgid "Gets the \"short\" documentation of a command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.short_doc:3 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.short_doc:3 +#: 8f95d0a88a984f439e3dadb59ef199aa +#: 8f95d0a88a984f439e3dadb59ef199aa +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Command.signature:1 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.Group.signature:1 +#: 0c0b9317fcac46ecae100cfc277bf9f6 +#: 0c0b9317fcac46ecae100cfc277bf9f6 +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.can_run:3 +#: cc5fd641e6244884961560f59e53c689 +#: cc5fd641e6244884961560f59e53c689 +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.can_run:7 +#: 3950bda5fbf14e40adee997651342820 +#: 3950bda5fbf14e40adee997651342820 +msgid "Checks whether the command is disabled or not" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.can_run:11 +#: a6de3b877d0e4c7a991b4259bdb1f086 +#: a6de3b877d0e4c7a991b4259bdb1f086 +msgid "The ctx of the command currently being invoked." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.can_run:14 +#: ff73ac563b12400cbce6a1ad1f8c9d09 +#: ff73ac563b12400cbce6a1ad1f8c9d09 +msgid "A boolean indicating if the command can be invoked." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Command.can_run:17 +#: 076a8f5c048c40b2bcc438d5a1ea5158 +#: 076a8f5c048c40b2bcc438d5a1ea5158 +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "" + +#: ../../ext/commands/api.rst:142 +#: 29f1aee053a242acbeb1f2c4aecfe1da +msgid "Group" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group:1 +#: 65da7b12e7ed47018fbcd2ff170d1f42 +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group:4 +#: 44ff4fdaef554c62906b9c12c2cd9e96 +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group:9 +#: cd807d5e802148398e05f6c146d7f48a +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group:22 +#: 91d77491c49d418ebb264e030f237dc4 +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group.copy:1 +#: b43b4fa9017b4d8f854052a65d37b34b +msgid "Creates a copy of this :class:`Group`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group.copy:3 +#: bc8bbf36168a464287d18919b8ea1f56 +msgid "A new instance of this group." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.Group.copy:4 +#: 479727513b454596af0d83565a93505c +msgid ":class:`Group`" +msgstr "" + +#: ../../ext/commands/api.rst:167 +#: 843f0ae741c841bfa76f1b6f1d03c365 +msgid "GroupMixin" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin:1 +#: b31eb1a7344948f0a4b726060f32dcc5 +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin:6 +#: 01122ecc57164cf2a9d1668806c98ec7 +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.GroupMixin:13 +#: b98c3fc6b795488fbf03190087b1ed2e +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "" + +#: ../../ext/commands/api.rst:184 +#: e2038f767482430fba55bbdb2a1b9bb1 +msgid "Cogs" +msgstr "" + +#: ../../ext/commands/api.rst:187 +#: 4b29b920e0514019815c861364b806d7 +msgid "Cog" +msgstr "" + +#: ../../../discord/ext/commands/cog.py:docstring of discord.ext.commands.cog.Cog.walk_commands:1 +#: 1456f4943caa4b34a8e69f60b5a07808 +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "" + +#: ../../../discord/ext/commands/cog.py:docstring of discord.ext.commands.cog.Cog.walk_commands:3 +#: b0889f2d31ab45d59206aac0730ee26b +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "" + +#: ../../../discord/ext/commands/cog.py:docstring of discord.ext.commands.cog.Cog.get_commands:1 +#: e903471dee0946f698493b70bbd6bfff +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "" + +#: ../../../discord/ext/commands/cog.py:docstring of discord.ext.commands.cog.Cog.get_commands:1 +#: 10b1036c1fb04d5fadf115fd0156dc7d +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "" + +#: ../../../discord/ext/commands/cog.py:docstring of discord.ext.commands.cog.Cog.get_commands:5 +#: c8f8940e1a334d72ace74656658dc636 +msgid "This does not include subcommands." +msgstr "" + +#: ../../../discord/ext/commands/cog.py:docstring of discord.ext.commands.cog.Cog.get_commands:6 +#: 4eef2169b57545a39732b35f19317928 +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "" + +#: ../../ext/commands/api.rst:195 +#: 9ffc5edca62a4591b776577d4c3be17a +msgid "CogMeta" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:1 +#: 6d3498e089d64e64bd39b02748feed7a +msgid "A metaclass for defining a cog." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:3 +#: 818b7abc0e4e4c92ad300745b12e67f3 +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:7 +#: 14bca144e04f49f2b6a2ffa5bd12bb21 +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:24 +#: 8541d72ae9d240c5853b5b012bac5870 +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:35 +#: 4d0773ce7be443b3b02b0723cfa9ee2a +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:41 +#: dbc8e995b5204e4b90abebe755df26d2 +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:49 +#: 005387bb127242fc80381666a6e1faf3 +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:69 +#: e654676f10784a318be772baf59e50ac +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "" + +#: ../../../discord/cog.py:docstring of discord.cog.CogMeta:74 +#: f873bb0240304b34b00b4783ad8f63aa +msgid "Optional[List[:class:`int`]]" +msgstr "" + +#: ../../ext/commands/api.rst:205 +#: 3ba5cbee70fb46a8a7289027a30c1154 +msgid "Help Commands" +msgstr "" + +#: ../../ext/commands/api.rst:208 +#: a9b0e1487f8544b8bd6c8377c81509ad +msgid "HelpCommand" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:1 +#: 3728d038715e49f5a3791584fce2a04c +msgid "The base implementation for help command formatting." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:5 +#: 4bf99b5a33634da38019379fa568c795 +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:9 +#: 57d8ce635a7c4dfd85c2969ac2a3326d +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:14 +#: 8c76b92e97954a5fb2a3b8af6e6cc3db +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:17 +#: 92aebe5e9b4d4fecaa3da5db20b743c7 +msgid "Optional[:class:`Context`]" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:21 +#: 28d3ba87fb3143faafc7eb87f9d151bf +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:28 +#: 1ec7123c827d411a81fe0bee61f34a24 +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:29 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:35 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:34 +#: 308cf1e234b44a168f5eb03f15d8e8be +#: 308cf1e234b44a168f5eb03f15d8e8be +#: 308cf1e234b44a168f5eb03f15d8e8be +msgid "Optional[:class:`bool`]" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand:39 +#: 1ccdbf4b50b44ab0b1fd37f54bd29a43 +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.add_check:1 +#: c57ad58f60af400783c843a1cebeb8b7 +msgid "Adds a check to the help command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.remove_check:1 +#: 54b841f106a3437e9947dfc91d5d0e84 +msgid "Removes a check from the help command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_bot_mapping:1 +#: 59fa9d80d1b34f4bb1a23eb82603def1 +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.HelpCommand.invoked_with:1 +#: fe94b765ac834e9bb6aa25e17682999d +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.HelpCommand.invoked_with:4 +#: bad68c0718fe4f8dbbd049e0bb78b35a +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.HelpCommand.invoked_with:9 +#: 9605ca58dc7540ba809f5b9944de8e93 +msgid "The command name that triggered this invocation." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_command_signature:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_command_signature:1 +#: 9d4ac7ff40e040b3b6a9aeb703e66c99 +#: 9d4ac7ff40e040b3b6a9aeb703e66c99 +msgid "Retrieves the signature portion of the help page." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_command_signature:4 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_command_signature:4 +#: b3103498c74f46489696da57302a113e +#: b3103498c74f46489696da57302a113e +msgid "The command to get the signature of." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_command_signature:7 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_command_signature:7 +#: 0870226ae3fd45bbb1d7b250eedd749c +#: 0870226ae3fd45bbb1d7b250eedd749c +msgid "The signature for the command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.remove_mentions:1 +#: a2e753b9567a47f8bc8fa70e5ad3c66d +msgid "Removes mentions from the string to prevent abuse." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.remove_mentions:3 +#: 1ba0ed368b63426894a070cbaab0c580 +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.remove_mentions:5 +#: 818a2ecc265d46fca2d1e230a5e1256f +msgid "The string with mentions removed." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.HelpCommand.cog:1 +#: 6733db68c82649d2ad2b96e2b5b0606a +msgid "A property for retrieving or setting the cog for the help command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.HelpCommand.cog:3 +#: f0a6d3eda29d4e77884be9d27dc414c3 +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.HelpCommand.cog:7 +#: bd2865c7de154f0393060ce06ec5c389 +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.HelpCommand.cog:9 +#: b572e133ce4f4e49afc52d6cf5f868fc +msgid "The cog that is currently set for the help command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_not_found:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:1 +#: a9b1544b7406441bbc26c947190156a5 +#: a9b1544b7406441bbc26c947190156a5 +msgid "|maybecoro|" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_not_found:3 +#: 11b6366f06024bc18f31f51384b84719 +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_not_found:6 +#: 870b0c00321c4963b624a270b9ec77ad +msgid "Defaults to ``No command called {0} found.``" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_not_found:9 +#: a7682b9639e94a5f8c68412a2d7a34bd +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_not_found:13 +#: f966be26463f407884dbcda0640ec7c1 +msgid "The string to use when a command has not been found." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:3 +#: 90f61b1e8c2b42159ea4d0f65e3ab6be +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:6 +#: 04095c7b194645cc8c006f273579b8b7 +msgid "Defaults to either:" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:8 +#: bd93202046e7474bbfd1271fb5aebfa7 +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:9 +#: 2f9dbb03410e41b39b38db1520d17207 +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:10 +#: 1bd86a8162e147a2b78964b23a6da060 +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:11 +#: d742621c65014debaf4e6ef8da190d11 +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:14 +#: c7f990e681054582bab785f391126075 +msgid "The command that did not have the subcommand requested." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:17 +#: de81605a27384dbb9bfee27cb9f993c6 +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.subcommand_not_found:21 +#: bf836e28f2c04c2cb1c3ceb955a4c816 +msgid "The string to use when the command did not have the subcommand requested." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.filter_commands:3 +#: 8cdeecd1f78a45a490d0b086b59dbfea +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.filter_commands:5 +#: c3c2bdabbbf04ae289fa869f1aac253a +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.filter_commands:9 +#: 2e41bb491bbf4887818e70951501c8c3 +msgid "An iterable of commands that are getting filtered." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.filter_commands:12 +#: e8074b04eb1b465ca6f97d8caa66f96c +msgid "Whether to sort the result." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.filter_commands:15 +#: f82defb618954648af121dc1a4a87f4f +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.filter_commands:20 +#: 9f05a77eef2445268d540b4f9653f322 +msgid "A list of commands that passed the filter." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.filter_commands:21 +#: 0722f1eb0d854e748d5363eedae8ec27 +msgid "List[:class:`Command`]" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_max_size:1 +#: 1d7ab689f36d49ea84a4187da695f2cd +msgid "Returns the largest name length of the specified command list." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_max_size:4 +#: b0df17a168244fc881783a67405bc86d +msgid "A sequence of commands to check for the largest size." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_max_size:7 +#: 638a8223116c44afbc70a3490dc30977 +msgid "The maximum width of the commands." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown:7 +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.get_tokens:9 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MaxConcurrencyReached:9 +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:42 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:12 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:42 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_max_size:8 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:25 +#: 36db3ba452e247c3ad141758bb50a822 +#: 36db3ba452e247c3ad141758bb50a822 +#: 36db3ba452e247c3ad141758bb50a822 +#: 36db3ba452e247c3ad141758bb50a822 +#: 36db3ba452e247c3ad141758bb50a822 +#: 36db3ba452e247c3ad141758bb50a822 +#: 36db3ba452e247c3ad141758bb50a822 +#: 36db3ba452e247c3ad141758bb50a822 +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.get_destination:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_destination:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_destination:1 +#: 11d5736edd904be0909712cba6262a08 +#: 11d5736edd904be0909712cba6262a08 +#: 11d5736edd904be0909712cba6262a08 +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.get_destination:3 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_destination:3 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_bot_help:11 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_cog_help:11 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:10 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_error_message:6 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_group_help:11 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_destination:3 +#: 221263475094489f990e402ae86805f6 +#: f8c115ff7057440482dceb4d05d3c394 +#: 221263475094489f990e402ae86805f6 +#: 0da023124b764228803413e8e928ba2e +#: 4c8415699f38454caa3f28ff7645e137 +#: 0fff7255071443deb952fb069385e343 +#: 221263475094489f990e402ae86805f6 +#: 221263475094489f990e402ae86805f6 +msgid "You can override this method to customise the behaviour." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.get_destination:5 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_destination:5 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_destination:5 +#: 7463ee9371c746469ce380c3c6a9f69b +#: 7463ee9371c746469ce380c3c6a9f69b +#: 7463ee9371c746469ce380c3c6a9f69b +msgid "By default, this returns the context's channel." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.get_destination:7 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_destination:7 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_destination:7 +#: d4a4dc4660df41218b1ef139ba681fc6 +#: d4a4dc4660df41218b1ef139ba681fc6 +#: d4a4dc4660df41218b1ef139ba681fc6 +msgid "The destination where the help command will be output." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.get_destination:8 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.get_destination:8 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_destination:8 +#: 22ac12821be84e64abe4208c66e428ca +#: 22ac12821be84e64abe4208c66e428ca +#: 22ac12821be84e64abe4208c66e428ca +msgid ":class:`.abc.Messageable`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_error_message:3 +#: ecf08844becf48199a5aba387a75a395 +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_error_message:8 +#: 91bb9645a42e40298a5fa110a0f0f035 +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_bot_help:15 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_cog_help:15 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:14 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_error_message:13 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_group_help:15 +#: bb2b8cf7f8da4ab498331b3d6bfb0f42 +#: bb2b8cf7f8da4ab498331b3d6bfb0f42 +#: 1a16d349e6b147ea8072bbe46e99443b +#: 145f3f00a2854c308de39ac9f2935d3d +#: 44d8a4471f8d46199d03cf08d9d852fb +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_error_message:16 +#: f7931984f74a4af5a0f13a3131100e8f +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.on_help_command_error:3 +#: 62a23463e67743778ff5b5ffda0e1cb5 +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.on_help_command_error:5 +#: 2b2100cd275e4909a0cc009c6a3d63d9 +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.on_help_command_error:8 +#: f9b68e3eab0e4186b0e12bab0d4c59e5 +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_bot_help:3 +#: b1bcd236de8d485e97c9dcf3a2b6c09c +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_bot_help:6 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_cog_help:6 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:5 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_group_help:6 +#: 8733bb9051b04e2f91d902a402af6929 +#: 2d550440e5cf4edc8ced1cacaeea627b +#: d2912db2232849caa145cdcedd335057 +#: 92cd46fd01884b549196ce7d6f3affaf +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_bot_help:17 +#: b39a59a79b09468a9c8275ebfce85a16 +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_bot_help:21 +#: 02dcb1f0bd02493bbe5ae9e872616207 +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_cog_help:3 +#: a828d648b1ea4065b69f360aaf334a2e +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_cog_help:17 +#: 0fca5ad2726a4da3aa2b4cd57bc85212 +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_cog_help:22 +#: 98ac7e67a5fa4e958a227fe3594c0796 +msgid "The cog that was requested for help." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_group_help:3 +#: 27ac13aaf6a54dcd9614dba2b03d98c9 +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_group_help:17 +#: 8bc4bcfb9f3141838dbe400cd555c11c +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_group_help:22 +#: 481ed9cbfcfe4d5c945aedb7f564be2e +msgid "The group that was requested for help." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:3 +#: 55e69ff04387467396ff5f080c4b729c +msgid "Handles the implementation of the single command page in the help command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:16 +#: 15230ebc88374c4696b38f30fd9070a2 +msgid "Showing Help" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:19 +#: e5bdf0c519cc42b5ba11a16bd65b33aa +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:22 +#: 3491b2a4d9d74002b8ead57973164b4f +msgid ":attr:`Command.help`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:23 +#: 0d6cc8451c074f339f08d2ea9ff6f289 +msgid ":attr:`Command.brief`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:24 +#: fd4e0a0770cb4dd583602d3067e81b24 +msgid ":attr:`Command.short_doc`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:25 +#: 76ce4a6e88d444ecbad32de75bc5fe22 +msgid ":attr:`Command.description`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:26 +#: 20889f14e1744f53bf91b3810fd8bf36 +msgid ":meth:`get_command_signature`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:28 +#: 3049f2cecc1b439da3d78baacd2005e2 +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.send_command_help:32 +#: 0a14d7e642ed4889b30688b6c0048821 +msgid "The command that was requested for help." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.prepare_help_command:3 +#: 404a74fe43794d0fbed34f5c3d1ea920 +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.prepare_help_command:8 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_ending_note:3 +#: 85592828042a4467a6777ebda074bc0c +#: 85592828042a4467a6777ebda074bc0c +msgid "The default implementation does nothing." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.prepare_help_command:12 +#: ea87701788ad4a47b061de81d0fe4850 +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.prepare_help_command:19 +#: 210b8f6390bb4dc69b4eadd6b4ddfc9b +msgid "The argument passed to the help command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:3 +#: 11a8f56569d6415181816fa4eefa4fb6 +msgid "The actual implementation of the help command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:5 +#: b6cdc3d230bc4daca9399775d44f4ce2 +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:8 +#: 3f473bec01bb44ac91e8ff68715f11e9 +msgid ":meth:`send_bot_help`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:9 +#: 80edd5df25254ff99b0ad02aa9274411 +msgid ":meth:`send_cog_help`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:10 +#: eb6bdd4d05734e8991acd54e5104d075 +msgid ":meth:`send_group_help`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:11 +#: 6dee8753a3564294b028a06230aeb65f +msgid ":meth:`send_command_help`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:12 +#: 3c5f3d8e5cbe4e5aaa7c3f131a3045de +msgid ":meth:`get_destination`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:13 +#: 39474771f7684d45b5373b17b69f2f6e +msgid ":meth:`command_not_found`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:14 +#: f3c5d3d6839c4af5ba7d4184930ea80f +msgid ":meth:`subcommand_not_found`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:15 +#: d5005de494d94770b7117858517d4bad +msgid ":meth:`send_error_message`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:16 +#: 83cbfb0f715e49a2a63f2b66d6fc98ff +msgid ":meth:`on_help_command_error`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.HelpCommand.command_callback:17 +#: 05293fc84d7d40f29448138536a0d84d +msgid ":meth:`prepare_help_command`" +msgstr "" + +#: ../../ext/commands/api.rst:216 +#: 280052a3bfce4f8a8146f4f398509707 +msgid "DefaultHelpCommand" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:1 +#: 9de62005f62e44ff9931e1d9a2f0d6a2 +msgid "The implementation of the default help command." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:3 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:3 +#: 98cc93d14ebe483c8ea65f00dd5b35bb +#: 98cc93d14ebe483c8ea65f00dd5b35bb +msgid "This inherits from :class:`HelpCommand`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:5 +#: 2d8f18b9ac2a4f7ebcfbc98885b666e5 +msgid "It extends it with the following attributes." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:9 +#: df8735e1f5c348a88ce9829e4c3bd4da +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:16 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:7 +#: ad75381379ab48acb3057dc68b6c4a37 +#: ad75381379ab48acb3057dc68b6c4a37 +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:22 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:27 +#: fcb81f11c0f146b49699484d0ce0f808 +#: fcb81f11c0f146b49699484d0ce0f808 +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:33 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:38 +#: bdb32d5c391a4020a14aa9e04df4dfb3 +#: bdb32d5c391a4020a14aa9e04df4dfb3 +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:36 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:41 +#: 3ed75e87187148e5b3a2193a292ef53b +#: 3ed75e87187148e5b3a2193a292ef53b +msgid "Optional[:class:`int`]" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:40 +#: ca0e9178e75445c5bc4e6128b058880c +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:46 +#: 0ccd0499465045b780f7a265704d5d53 +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:53 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:45 +#: 506d95ebb9664f17a10381534561613a +#: 506d95ebb9664f17a10381534561613a +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:60 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:52 +#: 1ad02dd72b1b4b84a48ebbb3b20dcf54 +#: 1ad02dd72b1b4b84a48ebbb3b20dcf54 +msgid "The paginator used to paginate the help command output." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand:62 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:54 +#: eb7ca19c2ce740f49eafb5aa2225772f +#: eb7ca19c2ce740f49eafb5aa2225772f +msgid ":class:`Paginator`" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.shorten_text:1 +#: 94814d7b6a2f4e74a8ef24ccfb43fc0b +msgid "Shortens text to fit into the :attr:`width`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content.convert:19 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.get_ending_note:4 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.shorten_text:5 +#: ea5d814f698e427c927fe26e57311142 +#: ea5d814f698e427c927fe26e57311142 +#: ea5d814f698e427c927fe26e57311142 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.get_ending_note:1 +#: d2d8ce0a6f2947739d49d1a3d2b80967 +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:1 +#: 561ce69694644ee584ffcd113fb09369 +msgid "Indents a list of commands after the specified heading." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:3 +#: 02d98ac7859f4ade9548622bb854fc31 +msgid "The formatting is added to the :attr:`paginator`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:5 +#: d1c297d5dfe44c07ab17475943a517cf +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:11 +#: dacbb4c5af9145caac90d727d81893c0 +msgid "A list of commands to indent for output." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:14 +#: 9a760df2465e482a9ccab7abd60204a4 +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:18 +#: cd7322b48f414511b8f0e5a791f99e01 +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.send_pages:1 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.send_pages:1 +#: 604e96dc969d4a16ab5e5513a0590f96 +#: 604e96dc969d4a16ab5e5513a0590f96 +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.add_command_formatting:1 +#: 0c64282ae9a7447db39ab64e33fb73aa +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.DefaultHelpCommand.add_command_formatting:4 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_command_formatting:4 +#: 56429d0375c84befb1b01caa55354f47 +#: 56429d0375c84befb1b01caa55354f47 +msgid "The command to format." +msgstr "" + +#: ../../ext/commands/api.rst:225 +#: b08b39dd303f4219b5448e9c41960424 +msgid "MinimalHelpCommand" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:1 +#: 782cc545def54629a84441b98b842142 +msgid "An implementation of a help command with minimal output." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:13 +#: 0d0161510712488bba1af85693fb13c1 +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand:20 +#: 2a3d9de0455d454db86f48ea4fce0bee +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_opening_note:1 +#: bf9bfcfccb6d4729ab5e79ca296f4be7 +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_opening_note:3 +#: 89825549a52b49f0b61ce22ede84a59b +msgid "The default implementation returns ::" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_opening_note:8 +#: 1b33ab9eb24c4202a2d0f6d49d35944e +msgid "The help command opening note." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_ending_note:1 +#: c7be250c990b40f894b42471edbb3f04 +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.get_ending_note:5 +#: 73dd495170d14ddb8230ad7b4b9fde74 +msgid "The help command ending note." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:1 +#: dc6008496d7f47f98cba8124a45e9fd8 +msgid "Adds the minified bot heading with commands to the output." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:3 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:3 +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_subcommand_formatting:3 +#: 7b8dc415474a458294ed699b814d8908 +#: 7b8dc415474a458294ed699b814d8908 +#: 7b8dc415474a458294ed699b814d8908 +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:5 +#: 173c5382465042adb49b12d09c20a4e9 +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:9 +#: 6bbc75e158a44e9ab07b181c71107a32 +msgid "A list of commands that belong to the heading." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:12 +#: 812ae0735d0048639c1084356979556a +msgid "The heading to add to the line." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_subcommand_formatting:1 +#: 432e24a0d5014f5f9fd67c74acc6e33c +msgid "Adds formatting information on a subcommand." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_subcommand_formatting:5 +#: 8680c6a80a314ee4867833116e05da47 +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_subcommand_formatting:9 +#: 36593ac4e6934eb69a5ebb891697a668 +msgid "The command to show information of." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:1 +#: ab5863e544b64f7b87d3f984d5c394d4 +msgid "Adds the formatting information on a command's aliases." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:5 +#: db40888f62d34d5aaba4d8576d27cbf4 +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:8 +#: 57236ac0df9640058e87d6c99e2af3e6 +msgid "This is not called if there are no aliases to format." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:11 +#: 9c56559714724ad8804be05c5188648a +msgid "A list of aliases to format." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.MinimalHelpCommand.add_command_formatting:1 +#: ef842cc9007e4bf4967e22877b29c9b3 +msgid "A utility function to format commands and groups." +msgstr "" + +#: ../../ext/commands/api.rst:234 +#: e087918d096d4026ae2a63986aa52427 +msgid "Paginator" +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:1 +#: f4b68527e826465aa64533fd9b28a338 +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:7 +#: 198c467dbad64882b4699ce2063dc523 +msgid "Returns the total number of characters in the paginator." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:11 +#: 528352da5fe14198a01e6fef61626b57 +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:17 +#: 457c0e8dfeaa4f79955f96a9ebe8f605 +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:23 +#: ef009d5cd2d84fce81fd6b4f1782cb73 +msgid "The maximum amount of codepoints allowed in a page." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator:31 +#: 3bd1178464ce48e4bd3fd97e62c20268 +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator.clear:1 +#: f2fe538d81054b20bc5330048409a978 +msgid "Clears the paginator to have no pages." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator.add_line:1 +#: a889ff4c34e14afb871b9789e307a078 +msgid "Adds a line to the current page." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator.add_line:3 +#: 46f22c4041284ea785c2e00a9d318648 +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator.add_line:7 +#: f0def295b6fd46abb95f378c74fd8d1b +msgid "The line to add." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator.add_line:10 +#: 5c5acb52ec8841aa917643fcee21679e +msgid "Indicates if another empty line should be added." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator.add_line:13 +#: 9b7fe0db24cc4c3ea3a7265e7dbe6695 +msgid "The line was too big for the current :attr:`max_size`." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.help.Paginator.close_page:1 +#: c7e11f385ddf48978184752e980418d2 +msgid "Prematurely terminate a page." +msgstr "" + +#: ../../../discord/ext/commands/help.py:docstring of discord.ext.commands.Paginator.pages:1 +#: a117c5b0ea474b4391c3709d34b040dc +msgid "Returns the rendered list of pages." +msgstr "" + +#: ../../ext/commands/api.rst:242 +#: 32059f72f8f54d26835e62adf60c9b0d +msgid "Enums" +msgstr "" + +#: ../../ext/commands/api.rst:247 +#: e4a49416872d4ff8938b8ee02ce3e083 +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "" + +#: ../../ext/commands/api.rst:251 +#: ede6efcacb2449b4bae045591438d616 +msgid "The default bucket operates on a global basis." +msgstr "" + +#: ../../ext/commands/api.rst:254 +#: b2dfdaa7dd0d4c73af1575cec0eb30a2 +msgid "The user bucket operates on a per-user basis." +msgstr "" + +#: ../../ext/commands/api.rst:257 +#: 5b9ba9dc86144fd78ff0344a4e94c378 +msgid "The guild bucket operates on a per-guild basis." +msgstr "" + +#: ../../ext/commands/api.rst:260 +#: 50a3c2d61733481f855ca57326ac580d +msgid "The channel bucket operates on a per-channel basis." +msgstr "" + +#: ../../ext/commands/api.rst:263 +#: e2627dc43a1646aaaaea2f01d1ee3f45 +msgid "The member bucket operates on a per-member basis." +msgstr "" + +#: ../../ext/commands/api.rst:266 +#: 42fba9ff10cd483cb92dc22f6fa9eb97 +msgid "The category bucket operates on a per-category basis." +msgstr "" + +#: ../../ext/commands/api.rst:269 +#: 2d885b860c264455889f5e4443d092f5 +msgid "The role bucket operates on a per-role basis." +msgstr "" + +#: ../../ext/commands/api.rst:277 +#: 3697effeb84b450380a6217332bf7ed3 +msgid "Checks" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:1 +#: 8f81b5584b3b4d4fa4663b09d276fa5a +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:4 +#: 3c2d00f8a23041ec9335281080bf4edc +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:9 +#: 4f5494b1e3554410800f085bfbffbf9c +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:14 +#: 3d1a87c8862542469116e77863535058 +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:30 +#: 9e93c35970eb43ecbdeb837dfcff73da +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:33 +#: 5c3b4dcd8381445fabe4944d88c6c1e8 +msgid "The ``predicate`` attribute was added." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:38 +#: 0bcd317d5e9f4e9e91ca1b060403a727 +msgid "Creating a basic check to see if the command invoker is you." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:50 +#: dd48570384ea4a05aac75e08169fd0f8 +msgid "Transforming common checks into its own decorator:" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:65 +#: 02a2a5184ec947eaaf5460150b287c2c +msgid "The predicate to check if the command should be invoked." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_any_role:15 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_guild_permissions:8 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_permissions:9 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_role:15 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check:68 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check_any:21 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:27 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dynamic_cooldown:29 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.guild_only:9 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_any_role:19 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_guild_permissions:11 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_permissions:18 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_role:25 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.is_owner:10 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.max_concurrency:24 +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: d1219c96be1d44378e6cc2e7e6537aaa +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: d1219c96be1d44378e6cc2e7e6537aaa +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: d1219c96be1d44378e6cc2e7e6537aaa +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: 641aba9d9e1242ee81b39f49ea575ac7 +#: 9624b70cfbee4ca3af484bcf68e4e8ab +#: 9624b70cfbee4ca3af484bcf68e4e8ab +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check_any:1 +#: 649033939727472cbd4f8a6f09454810 +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check_any:4 +#: 5e230c760ea048268aa0056ae3f03f4e +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check_any:9 +#: e990ee703a2549a897471de430a1da05 +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check_any:14 +#: 4a7b81eca1c3484fba8cf44b85ba6fdc +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check_any:18 +#: 0a3c24e60414491ba64d3853fc673029 +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.check_any:23 +#: e375d514f6dc4418ab45510e055e9919 +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_role:1 +#: 81ea5857330741739c83ed3dc41dde4e +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_role:4 +#: ca512848d2bb4648a0bdb9addbf84a42 +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_role:7 +#: 393358caeb1f4b51b551ddb9b959abef +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_role:9 +#: 78c59b4d3b6349ba846bc6eb0826344b +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_role:12 +#: 8452153ef43340fba093ab84f4df5a56 +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_role:18 +#: b03d3b707fb44779acdfb64a04c67537 +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_role:22 +#: 5cca5ffe93f440dd85df9dc52292045e +msgid "The name or ID of the role to check." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_permissions:1 +#: 72a7042c5b714f9a82015a2f50305e10 +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_permissions:4 +#: b36c2e278059410ebb228e8102743974 +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_permissions:7 +#: bf44a1aa790e4c76b7585d4744c49ade +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_permissions:10 +#: b65895b130444cd3b829c68a0599c012 +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_permissions:13 +#: 46edcac0a3e6496ea9e80f35ca24f270 +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_permissions:16 +#: a4c609c072e54e3f84a6a00d7843380a +msgid "An argument list of permissions to check for." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_guild_permissions:1 +#: 93b6336c75374f4d84a059524c59dff7 +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_guild_permissions:4 +#: 6b5b1ee1f906410abcadc2b79fc8dad4 +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_any_role:1 +#: 7c5a4039354e4b71b6f01196a16a2740 +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_any_role:5 +#: 6fc2639d3bfe40a3983045e6959bd1a5 +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_any_role:7 +#: 5da254078bdc405689d63c4229f9bf8e +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_any_role:13 +#: 35ade017b87c4fe4b05145ddc2f2f201 +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.has_any_role:17 +#: a94c7b20e99a4d3d8b7b90aa74e6271c +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_role:1 +#: ab9f894a18c44d9e9a4899949d10abcd +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_role:4 +#: 8ef5c87638f942bf8deadf8ebbd596d5 +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_role:10 +#: 94f6e1f2bbe042f7b4d946ecfa351b19 +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_permissions:1 +#: 31696f0d12c64bcba9fe56a3e1a6e3c0 +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_permissions:4 +#: 649ad7d58605463aba43ee78c2fe92ca +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_guild_permissions:1 +#: 6e1dea28f1e242dcb89ac9f27aba156f +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_any_role:1 +#: 504a86050e164f1cbc2ef3dfab214b6e +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_any_role:4 +#: 85b5f7bf08514667a71efb8c49f1dcf8 +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.bot_has_any_role:10 +#: ac715be0bb8a4b75b4be55e531a54809 +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:1 +#: e9dbbf29266342019191e100cc14b33e +msgid "A decorator that adds a cooldown to a command" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:3 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dynamic_cooldown:8 +#: a718cc3afe304175996a7f319afead4a +#: a718cc3afe304175996a7f319afead4a +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:9 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dynamic_cooldown:14 +#: 1a5e6e01b634462489aa2c9b72d75c8e +#: 1a5e6e01b634462489aa2c9b72d75c8e +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:12 +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dynamic_cooldown:17 +#: 4149b91a8b9b4f4ebcb203d68f34a4c2 +#: 4149b91a8b9b4f4ebcb203d68f34a4c2 +msgid "A command can only have a single cooldown." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:15 +#: f571532f4e36472da1ad4894c98e70f2 +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:18 +#: 3c9e0cce40ef4459b3b93b81f9112985 +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:21 +#: 768f7ee582bb422f8b4f95c93a20d22f +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:21 +#: 2dcd9030125648b1b302cd76f6a181e4 +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.cooldown:23 +#: 2f0d5a5a8e65496d84352249b0582557 +msgid "Callables are now supported for custom bucket types." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dynamic_cooldown:1 +#: 6094d0e28a9c4019a165562f2964df1c +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dynamic_cooldown:3 +#: 079f58510a774037972396f8a7e81087 +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dynamic_cooldown:22 +#: 672cd5f2ef144f6fbad1395b2f5c0b95 +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dynamic_cooldown:26 +#: 593c7a5e5b1d4edda83dc41a14a274cd +msgid "The type of cooldown to have." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.max_concurrency:1 +#: fa44abacc86b4549a649aa49b5b6ac82 +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.max_concurrency:3 +#: e94f4d66c33a4a8095e7fbf8d1a92968 +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.max_concurrency:11 +#: a11c0e11f70d46c9993cbeeadecc0979 +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.max_concurrency:14 +#: a412433be92548c09349f173e0f21567 +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.max_concurrency:18 +#: 4606a73966d64b4a90a6cdd92f2e88aa +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.before_invoke:3 +#: f5e756aa4e554e66a3257a5129c4ef4b +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.after_invoke:3 +#: f74267b631a5439eb0c212f5feded4e0 +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.guild_only:1 +#: 6e1c6fc4c43844059652d7bf1c1d21d5 +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.guild_only:5 +#: 51b7f083cf344183970934ed917e18fc +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dm_only:1 +#: 887a1905103842a688e15cf1b6ee6216 +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.dm_only:5 +#: 590b200bb7aa4c1080ac46793bed34f7 +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.is_owner:1 +#: 887311557f434bafa7caf9d0257629cb +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.is_owner:4 +#: caeb6f7d083e49cab51f2b82ee02f9ee +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.is_owner:6 +#: c1106d33034b4444bbbcbf91375f5fcc +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.is_nsfw:1 +#: 1b423666d7694ad387cc429489d03abe +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.is_nsfw:3 +#: fba7938014474c98afff1432159e3000 +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: ../../../discord/ext/commands/core.py:docstring of discord.ext.commands.core.is_nsfw:10 +#: 7588f10840c442aea15f191eac9ae20c +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "" + +#: ../../ext/commands/api.rst:339 +#: a1663529490742deab91241c83f67df8 +msgid "Cooldown" +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown:1 +#: f693cf1699b84066aad9b40c50de702a +msgid "Represents a cooldown for a command." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown:5 +#: a8e6375201964283838d7bebb18fd640 +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown:11 +#: 9922824a0cb34709ac41ec5fb31849e8 +msgid "The length of the cooldown period in seconds." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.get_tokens:1 +#: d95a9dfdb80445d98472f84997e7fc9a +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.get_tokens:4 +#: 94930446a5ce4847b1c683389d552a57 +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.get_tokens:8 +#: 37c64c1f6261438891a797a6a574ac89 +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.get_retry_after:1 +#: ebc6225bfbf4471ea8705b0813f0c2ca +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.get_retry_after:4 +#: e762ab85aab44884be1d2bd769467a1e +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.get_retry_after:8 +#: c6cf86ab00b84adbb67edd54f9fac287 +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.update_rate_limit:1 +#: e116ae67c1cd4dc285f47b3476ee09be +msgid "Updates the cooldown rate limit." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.update_rate_limit:4 +#: fe6e90f08c66469ea5d5f007bd8444b2 +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.update_rate_limit:8 +#: 451125af000a49a4a8a75a4da1012f89 +msgid "The retry-after time in seconds if rate limited." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.update_rate_limit:9 +#: 337ae2421ec549f8afa675182a9a8eab +msgid "Optional[:class:`float`]" +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.reset:1 +#: c37c3555b58b45a7804186ddaefded8d +msgid "Reset the cooldown to its initial state." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.copy:1 +#: b701fd3d4965415e8b93f8b7254478ba +msgid "Creates a copy of this cooldown." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.copy:3 +#: 958e6160c5d34c63afa9f3c9414d1927 +msgid "A new instance of this cooldown." +msgstr "" + +#: ../../../discord/ext/commands/cooldowns.py:docstring of discord.ext.commands.cooldowns.Cooldown.copy:4 +#: dac0d660be9a427495f6cbf44647e95d +msgid ":class:`Cooldown`" +msgstr "" + +#: ../../ext/commands/api.rst:347 +#: 4942dd8081954a83978bfc1c1e8ae392 +msgid "Context" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:1 +#: 2a57cbae1bfa4447b0bc2a09e3f4f878 +msgid "Represents the context in which a command is being invoked under." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:3 +#: 8032257bdf734e74b87c614d3237173a +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:7 +#: e0c4816bb06d4bd2a34987e6818214c2 +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:11 +#: df100d3bf6124f60895f455a7f705170 +msgid "The message that triggered the command being executed." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:13 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reply:9 +#: e1bc43a7b22b49f7bb9f4ba8e292f620 +#: 6c79017c8b06446498c3190155904db2 +msgid ":class:`.Message`" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:17 +#: 6004a27f6c4540209779e671c47e15e3 +msgid "The bot that contains the command being executed." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:19 +#: 7e00bcb1f585437696837bdd6b95547f +msgid ":class:`.Bot`" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:23 +#: 708802b8cfb84541895d3b8f333bd922 +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:27 +#: 1b9289e73d8242c7ba23ba6e1e013dde +msgid ":class:`list`" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:31 +#: 44a48bb25cec474f9ee80bd4f8294ad8 +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:39 +#: d8ba277419e4447db3c9c9a0f367840b +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:44 +#: 87b4052a2fbc4a99b8faca40162e548e +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:48 +#: 35b629babfae442680af8ef790c77862 +msgid "The prefix that was used to invoke the command." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:54 +#: 010aa10818794f5e9150e284ed0e5d53 +msgid "The command that is being invoked currently." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:60 +#: 12b1f3d1af694899946545d0df78f3c7 +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:67 +#: 2d3c6624565f41f183a437ef5099cc50 +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:70 +#: 23c2f761a59c4f3bb5fdb60ddbd0b33b +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:74 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingPermissions:10 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingPermissions:10 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.TooManyFlags:17 +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:17 +#: 9205feec771a4b34b5d819ac90529941 +#: 9205feec771a4b34b5d819ac90529941 +#: 9205feec771a4b34b5d819ac90529941 +#: 9205feec771a4b34b5d819ac90529941 +#: 9205feec771a4b34b5d819ac90529941 +msgid "List[:class:`str`]" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:78 +#: 5bb9c8cd59e1402ea7fcc3bc6401b70e +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:85 +#: 269228517d874a2984924a4675897cfc +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context:94 +#: 7f645d52858449aa8a2efd0f66f235b4 +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:1 +#: 61fb3dc224d44b0783c3b04b7fea1ddd +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:3 +#: 89afaf721f6643aab53272b5f881dec9 +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:6 +#: 51ebc16f2d4d414a99faa0ae6bcf7601 +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:11 +#: eaf31d1fd11746ff859caaec64b90ca1 +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:16 +#: 57b793e910ca43faadaa044dc537fe87 +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:21 +#: f1761b940ade4a788c4e8430b8edaf05 +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:28 +#: 53fb69e1b6954079bd5f2985c156bf5b +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:32 +#: 83b8d6805ef1420b87d97e31bc10efdf +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:34 +#: 9510fd4d07914ac0a5d62b96ad673bbc +msgid "You do not have permissions to get channel message history." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:35 +#: 4355deb6fa9d4bdfb104c171c05cdabd +msgid "The request to get message history failed." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:36 +#: b2ded6cd5eef4474a03a58b81418e0fd +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.history:47 +#: 1cad16da9e4a4a039e1c0be9c6789df6 +msgid "Flattening into a list: ::" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:1 +#: 36d6064ff8644307a143e9643a73d3b1 +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:3 +#: 186d34907d0f42f0be28a22e9c5d48f6 +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:9 +#: 03c747a982a54571968a3331429f7a20 +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "" + +#: ../../../discord/abc.py:docstring of discord.abc.Messageable.typing:12 +#: a48fc9f9ab9846158116f6d2cd0dee5b +msgid "Example Usage: ::" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:3 +#: 0c5cca1e94144653989d617b781dc61a +msgid "Calls a command with the arguments given." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:5 +#: 3c31d3de30834b32ad5f1b70ba33922b +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:10 +#: ba95aa92309b4ac1bdcb9344fcd4f787 +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:14 +#: c027a3c528604f43b1436b5cfa0640c5 +msgid "You must take care in passing the proper arguments when using this function." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:18 +#: 721b6a15a25543cebe7d83e0ffac4465 +msgid "The command that is going to be called." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:21 +#: 99d44329ceb947579cd3bce2c2cf2aa6 +msgid "The arguments to use." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:23 +#: 63e53520af0043749b354138ad9211a1 +msgid "The keyword arguments to use." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.invoke:25 +#: 05c7de921b3f4b9c9df3814555cc5fd1 +msgid "The command argument to invoke is missing." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reinvoke:3 +#: c7fe99da5385412abfc8c220108ef77c +msgid "Calls the command again." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reinvoke:5 +#: 04d502dbc692422eaceb397b4b6ad11a +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reinvoke:10 +#: 1cdff60fefdc4f86b552f02bd81be288 +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reinvoke:17 +#: 075d311288124d9996697486ed5104e7 +msgid "Whether to call the before and after invoke hooks." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reinvoke:20 +#: 203459acad88404ab30cd45897df3052 +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reinvoke:25 +#: 2f6aa4215b0a4936bb6bacfb0d2b72af +msgid "The context to reinvoke is not valid." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.Context.valid:1 +#: e537426c5a4243f3980cb0e87280d9c6 +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.Context.clean_prefix:1 +#: 78c10dddc1524e24aa3ad63f554c414f +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.Context.cog:1 +#: fd2658097cc24f7db5314f08ca902c2c +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "" + +#: ../../docstring of discord.ext.commands.Context.guild:1 +#: 3b3b16de997e4e54877d2d70b173cfe2 +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "" + +#: ../../docstring of discord.ext.commands.Context.channel:1 +#: 40a2b9fd266f44c69a5de1c7ee7ed5ff +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "" + +#: ../../docstring of discord.ext.commands.Context.author:1 +#: dd56849813db4c7299d6a6f2757ca297 +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "" + +#: ../../docstring of discord.ext.commands.Context.me:1 +#: a3c47787a8d44d61ba8043b2dcfd58ab +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.Context.voice_client:1 +#: a3ce24b8f1b54cb7bad801cd08901ef2 +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.send_help:3 +#: b801313d2d364c268100784609b70816 +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.send_help:6 +#: 45cea76cc29a4eb1b767fc7c489a81e5 +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.send_help:9 +#: e49a64b80a234858915386f65ba97580 +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.send_help:14 +#: 2d8cd3a7d42f4f7faf846ef88b04a2e5 +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.send_help:18 +#: 13a046373ec84445af9a1a75a3426873 +msgid "The entity to show help for." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.send_help:21 +#: 68525271233843f89cac1a272fb172f9 +msgid "The result of the help command, if any." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.can_send:1 +#: 2f8ba1ce6e854c78bb794c8d818a52fc +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.can_send:3 +#: caa6e97a4c40413b818721112e133895 +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.can_send:6 +#: c9c33719233542fc9ab097fbef9946b7 +msgid "An invalid type has been passed." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.fetch_message:3 +#: 39474d78af2f441d818ba1b7ccdeccd0 +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.fetch_message:6 +#: 680a3c9536194ffd9086dc8f20207694 +msgid "The message ID to look for." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.fetch_message:9 +#: 3f227eccd4324618943ec343072814bf +msgid "The message asked for." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.fetch_message:10 +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:100 +#: 2f6f2c77fe9f49d6af547d8b4d988847 +#: 2f6f2c77fe9f49d6af547d8b4d988847 +msgid ":class:`~discord.Message`" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.fetch_message:12 +#: cfef24f3237e4958816a5a01baa12172 +msgid "The specified message was not found." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.fetch_message:13 +#: 93b6c7c33ef84abfa0fba2952731ae42 +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.fetch_message:14 +#: 87417e86a48a426f9a94bb355a04bab5 +msgid "Retrieving the message failed." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.pins:3 +#: c0f7203f91234dcf9b71d4aa08c2743e +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.pins:7 +#: 5897281b37544f1ab20f5339ce9ab3ed +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.pins:11 +#: 7bad27e461a740d299b8c4bd148fd4e3 +msgid "The messages that are currently pinned." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.pins:12 +#: e8b1b5f758104e489149fdbb07deeafb +msgid "List[:class:`~discord.Message`]" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.pins:14 +#: 46fce97e3e2044b9812605b7371e03c5 +msgid "Retrieving the pinned messages failed." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reply:3 +#: 666fc58fd984426b9fc3697183d98530 +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:99 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reply:8 +#: 07908514f89544cd8fadb56e8b84c9ea +#: 07908514f89544cd8fadb56e8b84c9ea +msgid "The message that was sent." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:102 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reply:11 +#: 44cfdba165a2496f86c393e4ff002312 +#: 44cfdba165a2496f86c393e4ff002312 +msgid "Sending the message failed." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:103 +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reply:12 +#: 1baacf7f645a4a3e98b1d53ae7e82fa4 +#: 1baacf7f645a4a3e98b1d53ae7e82fa4 +msgid "You do not have the proper permissions to send the message." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.ext.commands.context.Context.reply:13 +#: dd5c11c9c7f04d8da2c0fcf683585cbd +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:3 +#: 233e5db05eb849cc92f9a5d67a3c1cb0 +msgid "Sends a message to the destination with the content given." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:5 +#: 401b162816dd4269983af2a0953407c2 +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:9 +#: fc1fb167cc7c4368938fbc342518f479 +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:14 +#: a67e87cd5c8d44fdb709013d4ff36929 +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:20 +#: a59873e3c70548c5a2419384906c6096 +msgid "The content of the message to send." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:23 +#: c4b9c97ff6d14d1bb9ea552fb6386908 +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:26 +#: 75e503161f364fa5a593ca4873cec071 +msgid "The rich embed for the content." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:29 +#: ce1d5306f02a4b228235ba11840ae1da +msgid "The file to upload." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:32 +#: 657cdc05b2744bf99bd70c4f327ae6a6 +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:35 +#: 5dedce0b1ad64c5f98413e459d91b5d9 +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:39 +#: 9e1547829fc343e9a1b366baf07c9b31 +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:39 +#: 4210f7e257dd4a96af7c38683f665d88 +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:44 +#: a634d6f1d80b454f9468298d1ddef3d6 +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:49 +#: 8e05171456134fe3b53ec51198be752f +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:49 +#: 310aceb3d63846e8a3c93bc70dea8dbe +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:59 +#: db923c5ea4f34a8ab38cd7fd07aa8f96 +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:59 +#: e35ba87b49314f98b33ba3227b02d2e0 +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:68 +#: 1124d9197c524ad5b4c48f4a10574a39 +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:68 +#: e5ea147dab2a42f9a952890a2690940b +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:73 +#: 23c9f13fa7754faf8b1ab81a09dc4688 +msgid "A Discord UI View to add to the message." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:76 +#: 3ad8c72fa9314999b37d175de732583d +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:76 +#: 1ee790371a76498aac1fa3332d7a306a +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:81 +#: c01e8fe8d227480387cf8df951050189 +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:81 +#: 8e58570511c14eba84fb64fefa25077d +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:86 +#: 30c1bd01caa44c0693f3a649d876db8b +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:89 +#: 4a4c60e54808412797081f64973c2198 +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:89 +#: 8007bf6be7b3451e82b1bb3047cfe9cd +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:94 +#: e4817933749f49f39bff7308c3294a2f +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:94 +#: 29bd5583d5a045a7903518ab2ed3337d +msgid "The poll to send." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.send:104 +#: 92fd7f8bda8f4e59a6add001c2ae563e +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.trigger_typing:3 +#: 7e981ac3a20345ffb61daf4c3509de80 +msgid "Triggers a *typing* indicator to the destination." +msgstr "" + +#: ../../../discord/ext/commands/context.py:docstring of discord.abc.Messageable.trigger_typing:5 +#: b663ff6e5f654ad88fa62051626ab64d +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "" + +#: ../../ext/commands/api.rst:365 +#: 6129e2344292447d859948329c263665 +msgid "Converters" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter:1 +#: 646dda467a2949ffb2a6f2b4d12b9da9 +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter:4 +#: 736c189e21924d62b1bca6145d56aaa5 +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter:7 +#: b09220a3e54145b982ce91fd4028ad9c +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GameConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter.convert:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content.convert:3 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: 2b33792d59994112b5f8ae2f18cdd1e9 +msgid "The method to override to do conversion logic." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GameConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter.convert:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content.convert:5 +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +#: 9d9f9443ace94d45aff747a2a2a753af +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GameConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter.convert:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content.convert:10 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: 8e1557a164a24dd18a9d3e3d7524d840 +msgid "The invocation context that the argument is being used in." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GameConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter.convert:13 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content.convert:13 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +#: 28f8742b518343c0a0621906d8c7afa4 +msgid "The argument that is being converted." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GameConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter.convert:16 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content.convert:16 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +#: 4d5298f99ee649468bc32cbb48858423 +msgid "A generic exception occurred when converting the argument." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GameConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter.convert:17 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content.convert:17 +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +#: e5f482e53ee44aa2a15113dc1e1e41de +msgid "The converter failed to convert the argument." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Converter.convert:19 +#: c601cdd1c13e49e1995ff8a62823953d +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter:1 +#: 0e92c7b2d8f147b69988c8e009418b69 +msgid "Converts to a :class:`~discord.Object`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter:3 +#: 727747e448be408ca7871bda57d10222 +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter:6 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter:6 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter:6 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter:6 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter:6 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:6 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter:7 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter:6 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter:6 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter:6 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: 8908a3f472604dd1b17e67bf4cce1a98 +msgid "The lookup strategy is as follows (in order):" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter:9 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter:7 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter:7 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter:8 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +#: 81bc7f6190a44dfdad07b950eef59a75 +msgid "Lookup by ID." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter:10 +#: afdd2a4d0f1840cfad2fbddc72f9d667 +msgid "Lookup by member, role, or channel mention." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ObjectConverter.convert:19 +#: 76bd5224cbd7404a82a7e1a65a2ba7e7 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:1 +#: 742769f030bb4786b80dbd891805017e +msgid "Converts to a :class:`~discord.Member`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter:5 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter:3 +#: 437a2f3b32a94663b8596fabd903f9b8 +#: 437a2f3b32a94663b8596fabd903f9b8 +#: 437a2f3b32a94663b8596fabd903f9b8 +#: 437a2f3b32a94663b8596fabd903f9b8 +#: 437a2f3b32a94663b8596fabd903f9b8 +#: 437a2f3b32a94663b8596fabd903f9b8 +#: 437a2f3b32a94663b8596fabd903f9b8 +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter:9 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter:9 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter:9 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:9 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter:9 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter:11 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter:9 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter:8 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter:9 +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: 2f289a0b34b94af6b7788cb39ee945d5 +msgid "Lookup by mention." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter:9 +#: 0d48779a2f444266936b946c2049cc49 +#: 0d48779a2f444266936b946c2049cc49 +msgid "Lookup by name#discrim" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:11 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter:12 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter:10 +#: cb41bf47efbc46a88f1fb382c99df3a8 +#: cb41bf47efbc46a88f1fb382c99df3a8 +#: cb41bf47efbc46a88f1fb382c99df3a8 +#: cb41bf47efbc46a88f1fb382c99df3a8 +#: cb41bf47efbc46a88f1fb382c99df3a8 +#: cb41bf47efbc46a88f1fb382c99df3a8 +#: cb41bf47efbc46a88f1fb382c99df3a8 +#: cb41bf47efbc46a88f1fb382c99df3a8 +#: cb41bf47efbc46a88f1fb382c99df3a8 +msgid "Lookup by name" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:12 +#: 24bf57716efe420eb9723a91f138c0b1 +msgid "Lookup by nickname" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:14 +#: 4cf7868345df4c21a983edab41b1b0d9 +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter:17 +#: 5e76492d4be6488b995dabf985898d99 +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MemberConverter.convert:19 +#: 8d06743c4aaf4e759f2e26bec639327d +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter:1 +#: 412f9a2fbaf94008a49dc5d7e0485240 +msgid "Converts to a :class:`~discord.User`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter:3 +#: 974a011359994de7af1c409ba415d6b6 +msgid "All lookups are via the global user cache." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter:12 +#: 9f3a5094c8b04217b84085255960e9cf +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter:15 +#: 3bee8790498d44a396c4c3893cf43aa0 +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.UserConverter.convert:19 +#: 18ca02cf99df44a79e77275819dfec4b +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter:1 +#: 2a032d08244340bfa4dc4be912b4932c +msgid "Converts to a :class:`discord.Message`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter:7 +#: bfabc815487148ad94863e1ac2f8634f +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter:8 +#: d5024e9b27bc4c5bbac52cc20e642175 +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter:9 +#: 32e249ca19b74aa09bfbd282a5f9c214 +msgid "Lookup by message URL" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter:11 +#: 2abe1582bd5341d5bf25227a0bc0cb70 +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.MessageConverter.convert:19 +#: f69d6050db19450db3668e8de5bcfd6f +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter:1 +#: ae67fe03686c4532bdc49de9b2070f16 +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter:5 +#: d924d7ff07ac42489f5c1ce537fa7b03 +msgid "The creation strategy is as follows (in order):" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter:7 +#: 85bdb7294d554afbabc5e1eb19bc11c3 +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter:8 +#: 8a6d3c3213c644568d162301e0ce3fe6 +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter:9 +#: 76454ca185ae45b1bd5cb22ac59e1909 +msgid "By message URL" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialMessageConverter.convert:19 +#: d9900b47bbf7468e8ac55515c260f4ca +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter:1 +#: 2cfea3fb0254411fb0b6754daa3ce282 +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter:10 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter:9 +#: 34555afe05c64c22ba65fa8c467758fb +#: 34555afe05c64c22ba65fa8c467758fb +msgid "Lookup by name." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildChannelConverter.convert:19 +#: 1196b93dbf1843f9871f472f0fdaa174 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter:1 +#: 6c443151bd9b488ea48551a8364f6d33 +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter:12 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter:12 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter:12 +#: 4ea1417c2e794a5e9f8755ffbf256902 +#: 4ea1417c2e794a5e9f8755ffbf256902 +#: 4ea1417c2e794a5e9f8755ffbf256902 +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.TextChannelConverter.convert:19 +#: 9acb0ac5aac34aa78efac7c13d4a1331 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter:1 +#: 8ccdd108a7064b83aca8e4ab62fd305a +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.VoiceChannelConverter.convert:19 +#: 2096498a3b5340ad90200fbfb19632ff +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter:1 +#: 20f52a031cab406dab1a51afced52432 +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.StageChannelConverter.convert:19 +#: a929e67bd3d04b41a0dabcb8512f778a +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter:1 +#: a83f903ad1b34ad487fb7a4a03dc5b27 +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.CategoryChannelConverter.convert:19 +#: 2623771c36a040caab45e6a378ce74e0 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter:1 +#: 172a64bd6247459f9b5b43137b24c5bc +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ForumChannelConverter.convert:19 +#: 0de36a5f0a2b41c1b482db1e3a98f017 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter:1 +#: b779ed1feb044884a3e36e41011028ba +msgid "Converts to a :class:`~discord.Invite`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter:3 +#: fce31dd1ef1141ddbd7d7502bcab8a40 +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter:5 +#: 77f0d4a2234e4ddf85645b0da2eac317 +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.InviteConverter.convert:19 +#: bc6ce10d467f4390ac66c2d5d0ca23ca +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter:1 +#: 6b7a74325383465caf8f1f009428b33b +msgid "Converts to a :class:`~discord.Guild`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter:6 +#: fd52a4dd3bc0463c896b76e00dde8a04 +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildConverter.convert:19 +#: 39ab7f0b8b79427689539f5cef19c853 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter:1 +#: 7c2bee80870241ea9d20251d3217dc89 +msgid "Converts to a :class:`~discord.Role`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter:3 +#: 61d67e8d54b04821a028d8ab39e6c98a +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter:12 +#: 08b6aa908bb64dcea42329171a14f5c2 +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.RoleConverter.convert:19 +#: 45e204c610ee43ed950dcc22b1ecac5d +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GameConverter:1 +#: f68137599ad141848aea62797bd0b069 +msgid "Converts to :class:`~discord.Game`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GameConverter.convert:19 +#: 7dbcdc21d90f448b9d1efd11e118645f +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:1 +#: f4e87a79041a451c801d3b6c0c26393c +msgid "Converts to a :class:`~discord.Colour`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:3 +#: bd1d31daa2fe4f7ba99d73ef48a4d20a +msgid "Add an alias named ColorConverter" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:6 +#: 7e8e22e6115f449b8de9d66de21770ea +msgid "The following formats are accepted:" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:8 +#: 2975fccff559428e99d149e8fd618d24 +msgid "``0x``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:9 +#: fd078f70f7a1418a97ecd2b2d1bd1084 +msgid "``#``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:10 +#: c278ff33210c42e2a6f842916a54f37c +msgid "``0x#``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:11 +#: d94660f553f04addb931a9aedf36734c +msgid "``rgb(, , )``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:12 +#: b6271dd49d2b4d08b612c7f8ad362306 +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:14 +#: a3a933b8465e4e2aac98efb09e3792ff +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:16 +#: d8013b78f4674f15b973ba505866fe32 +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:19 +#: 0fe40cd0acb149afb058b8a72858a814 +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter:22 +#: 678c8011b29a497caae665ce41559203 +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ColourConverter.convert:19 +#: 4633cc38f1954c9fb988d94796c138e8 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter:1 +#: 5fe8c3fcda8a4f62af280c4d6ab3397a +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter:3 +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter:3 +#: b0e0e871ab064289a32c66c40214fd9e +#: b0e0e871ab064289a32c66c40214fd9e +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter:9 +#: b07065acb83c45b486baabdf63179771 +msgid "Lookup by extracting ID from the emoji." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter:12 +#: c4d58c4ef0a6423da6a5e5b6eb0d6be9 +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.EmojiConverter.convert:19 +#: 97ae2776efac4d31b3a7edda0567ced5 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter:1 +#: a6e1bbb66c634ba882343850f5060099 +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter:3 +#: 42c767df989a4c90b5d6b441a08d7df2 +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter:5 +#: 07638781992545e39720fcaf86933a79 +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.PartialEmojiConverter.convert:19 +#: 1e63c68c4f734c36b2b9f66fcf8eece7 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter:1 +#: ce9f0c4726d04dee89258a89147f1c84 +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter:3 +#: 790b28ad496d47d8ba6e1763d3ee0ad1 +msgid "All lookups are via the local guild." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.ThreadConverter.convert:19 +#: 9fd932f95910427882b21cd8049861b0 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter:1 +#: e61870d441594fc08984aae236b3c1da +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter:8 +#: f6697785b6e9452dbb7a1e3d2e50e6c1 +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.GuildStickerConverter.convert:19 +#: e659cc67ce3f47b49647be349da570fc +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:1 +#: 26b5eaad74174413ad5f62f07c19e04e +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:4 +#: 222b174f45a6491685b454e0ca7ac505 +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:8 +#: cd20087853094691a18a67dfa932b7e7 +msgid "Whether to clean channel mentions." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:14 +#: 3d7a283473d84c54be777d237ce9b0ea +msgid "Whether to use nicknames when transforming mentions." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:20 +#: cad7e9188975461bab6898228488e849 +msgid "Whether to also escape special markdown characters." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.clean_content:26 +#: ac08fe2514bd4811b892d04d1aaee218 +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Greedy:1 +#: 693ad27846404f11a8c7dcd918b18571 +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Greedy:5 +#: 65c82b1d226e4019830193c66d7b71fb +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Greedy:8 +#: eea47d9f94744e9b917b9d652e66a173 +msgid "For example, in the following code:" +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Greedy:16 +#: 8d160e434a7f4a6ab63e90f02f9906c0 +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.Greedy:19 +#: 4c73772c707a41a8bca1bc1d45003b4f +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.run_converters:3 +#: b8cb297c3d1e4c6590617210c3e66258 +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.run_converters:5 +#: 76a8a32516ab489385eead76873a3063 +msgid "This function does the same work that the library does under the hood." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.run_converters:10 +#: 26189e1dade84d1695feb50b0f581be0 +msgid "The invocation context to run the converters under." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.run_converters:13 +#: 7d0cc1620d474215b3792c80011ca01c +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.run_converters:16 +#: 3b33275cf8bc4265ad0e767e85abf029 +msgid "The argument to convert to." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.run_converters:19 +#: 70f697fdaf9e420197d1e7b68bacadd4 +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.run_converters:22 +#: ca628a1c253c4ef09eba37baf33c7df8 +msgid "The resulting conversion." +msgstr "" + +#: ../../../discord/ext/commands/converter.py:docstring of discord.ext.commands.converter.run_converters:25 +#: c0ae70d2dde14c5ba5ea30a0e9ffeca6 +msgid "The converter failed to convert." +msgstr "" + +#: ../../ext/commands/api.rst:438 +#: 1e2749402e7849088fc29daf98fe46aa +msgid "Flag Converter" +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter:1 +#: ebf35e6c9cc74dfea31978fe12ef8441 +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter:3 +#: 9cd13fd1f8fa45eb928cd329ee9c0b6b +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter:12 +#: e2322223de744e58bfd011edac6861bc +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter:18 +#: d315ec7b9ea34fa69b128dc9251defe2 +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter:22 +#: 5cbcd48f9c6a4f3a946cb7f7d31ace3a +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter:25 +#: b288c7ce85f543eab6734e8f8af233ad +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.get_flags:1 +#: b88d014bc2fe4314b4cfc532d2b4a53d +msgid "A mapping of flag name to flag object this converter has." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.get_flags:4 +#: 71f48457a02b4dd6aed21b6792ad8e49 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.convert:3 +#: c80c9b5b801e4b62a57251824320bace +msgid "The method that actually converters an argument to the flag mapping." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.convert:5 +#: eff33f3c050c4e038d09a2a9bdcc8efa +msgid "The flag converter class." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.convert:11 +#: 76a247e0e011404e9c25960694f09952 +msgid "The argument to convert from." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.convert:14 +#: 818f36c5b4cb490aae6b80095dff1b0f +msgid "The flag converter instance with all flags parsed." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.convert:15 +#: e3615b359fd44a1fa52dd21c0878e6b9 +msgid ":class:`FlagConverter`" +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.convert:17 +#: 7c7a50f6b7434393951a3c121025f908 +msgid "A flag related parsing error." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.FlagConverter.convert:18 +#: 5e97f1db6bc948e9afa242cbf64fbbc2 +msgid "A command related error." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:1 +#: 45e7a4bb9a3f4ced97c9384d6f7b1df7 +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:3 +#: 56adcf6a1e7e4dba975c4276d615605d +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:9 +#: 0fd508502b6142d693389cf1f8ef3d9e +msgid "The name of the flag." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:15 +#: 9fd4ac94309f4005a49ca8a1845f8f02 +msgid "The aliases of the flag name." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:21 +#: ba6fbc2b3b924e09b4847d09c9265c3f +msgid "The attribute in the class that corresponds to this flag." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:27 +#: 42585df2efea4584b149b8afaf0017da +msgid "The default value of the flag, if available." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:29 +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:35 +#: b755efe3ab02421ebf20dd845a99ba63 +#: b755efe3ab02421ebf20dd845a99ba63 +msgid "Any" +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:33 +#: e380378a9b484f9a97ae7cd84cef8d0b +msgid "The underlying evaluated annotation of the flag." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:39 +#: 994cd4022bc249d6a975fc2c6d060ef9 +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.Flag:46 +#: 9bcc7c0f11ce42f68c9b4e442b1bd117 +msgid "Whether multiple given values overrides the previous value." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.Flag.required:1 +#: 639c1e5bc42f4c34b75f3a1d21ac5f49 +msgid "Whether the flag is required." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.Flag.required:3 +#: ed39444a85a541809414f9fb64c50751 +msgid "A required flag has no default value." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.flag:1 +#: 361b8bfe96934487a49fe9586d484562 +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.flag:5 +#: 88f1bd71d9cf4cb09270bb77151b8277 +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.flag:8 +#: a6bcfd20152f405a86597c00bed08f64 +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.flag:11 +#: 80b9750cb95441f4b9f8e74b1ebc5ce1 +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.flag:16 +#: 1301032487f84c4b983ffd5cc18cd69f +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.flag:21 +#: 9d12431a536a41a196ca323965285a01 +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "" + +#: ../../../discord/ext/commands/flags.py:docstring of discord.ext.commands.flags.flag:25 +#: 739a359756dd4d95bcbb386fc201f629 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr "" + +#: ../../ext/commands/api.rst:451 +#: 9f12f5caa99e439489d62576052ce36d +msgid "Exceptions" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandError:1 +#: de8054c7a89f40cc9c628cd008ed4c08 +msgid "The base exception type for all command related errors." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandError:3 +#: e3a7a1c8784e4b0391cba40b4b86bc07 +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandError:5 +#: 28c66f1b65264ecbb347abcc7549e452 +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ConversionError:1 +#: 775da09f3b11433c96643d4bd6880d60 +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandNotFound:7 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ConversionError:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MaxConcurrencyReached:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UserInputError:4 +#: c1628f75af2142f1a0c57e3232afa38b +#: c1628f75af2142f1a0c57e3232afa38b +#: c1628f75af2142f1a0c57e3232afa38b +#: c1628f75af2142f1a0c57e3232afa38b +msgid "This inherits from :exc:`CommandError`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ConversionError:7 +#: 5f5b0fab620946b7b1c3c64f32df513d +msgid "The converter that failed." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ConversionError:9 +#: fbe4c703f5a84067985a716e2052e9dc +msgid ":class:`discord.ext.commands.Converter`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandInvokeError:7 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ConversionError:13 +#: 59bc4fd8d04e4eec9b78caa9b9dcee7d +#: 59bc4fd8d04e4eec9b78caa9b9dcee7d +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandInvokeError:10 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ConversionError:16 +#: a7b6a5d248994baa9f94e2df8562e74b +#: a7b6a5d248994baa9f94e2df8562e74b +msgid ":exc:`Exception`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredArgument:1 +#: 14e0a4d933194585bdad3d9f70b27f50 +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadArgument:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadLiteralArgument:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadUnionArgument:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredArgument:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.TooManyArguments:4 +#: 165ab37adc89428e90ff4df2f0b80314 +#: 165ab37adc89428e90ff4df2f0b80314 +#: 165ab37adc89428e90ff4df2f0b80314 +#: 165ab37adc89428e90ff4df2f0b80314 +#: 165ab37adc89428e90ff4df2f0b80314 +msgid "This inherits from :exc:`UserInputError`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredArgument:8 +#: be98043a63b449a988de52a1b8df47d6 +msgid "The argument that is missing." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadLiteralArgument:12 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadUnionArgument:10 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredArgument:10 +#: ac767ecf96d642aeac005e669fd48fea +#: ac767ecf96d642aeac005e669fd48fea +#: ac767ecf96d642aeac005e669fd48fea +msgid ":class:`inspect.Parameter`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ArgumentParsingError:1 +#: 99f048e71ece48c19ae6f915f5dcee0e +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ArgumentParsingError:3 +#: 197972f134b643a4bcc356605c847a4f +msgid "This inherits from :exc:`UserInputError`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ArgumentParsingError:5 +#: 19a270dea6a84fb4b01280520155719c +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UnexpectedQuoteError:1 +#: c6f44123c0d8446688a895b2dab96f02 +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ExpectedClosingQuoteError:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.InvalidEndOfQuotedStringError:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UnexpectedQuoteError:3 +#: 71e587d424b0450b9e26f4c4abad9240 +#: 71e587d424b0450b9e26f4c4abad9240 +#: 71e587d424b0450b9e26f4c4abad9240 +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UnexpectedQuoteError:7 +#: 452b63fa0e564a6ab5468150309d0422 +msgid "The quote mark that was found inside the non-quoted string." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.InvalidEndOfQuotedStringError:1 +#: bc59593a8a08405c86a2f64f83389d40 +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.InvalidEndOfQuotedStringError:8 +#: 1f7b37cfa2b44800b2a62fc6b846c7a0 +msgid "The character found instead of the expected string." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ExpectedClosingQuoteError:1 +#: 302d5d1597f04b16a58937bcc46bebba +msgid "An exception raised when a quote character is expected but not found." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ExpectedClosingQuoteError:7 +#: 8fcd7001236a4867b6766ec2fa48fa79 +msgid "The quote character expected." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadArgument:1 +#: 1407890e0c744feaa93d64791a0ceb59 +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadUnionArgument:1 +#: 3f5ca23837a541c288466959940aa1ab +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadLiteralArgument:10 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadUnionArgument:8 +#: bfb5f51c531d44e49c5ae964e7432593 +#: bfb5f51c531d44e49c5ae964e7432593 +msgid "The parameter that failed being converted." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadUnionArgument:14 +#: 885d985954d94bcfa4bd9e86dbbade74 +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadUnionArgument:16 +#: a50f4bbb339542909f100b744c975ce5 +msgid "Tuple[Type, ``...``]" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadLiteralArgument:22 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadUnionArgument:20 +#: e17c717ab6224038bba2f6a093d6be4e +#: e17c717ab6224038bba2f6a093d6be4e +msgid "A list of errors that were caught from failing the conversion." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadLiteralArgument:24 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadUnionArgument:22 +#: 9cfe57c2d101467d87400e0d145a2c08 +#: 9cfe57c2d101467d87400e0d145a2c08 +msgid "List[:class:`CommandError`]" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadLiteralArgument:1 +#: d65d70b1132a4bbaa0c1c0e749f7278b +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadLiteralArgument:16 +#: 94ba1f40a50347beb65c73d6279c02d7 +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadLiteralArgument:18 +#: e563d171b653419bb5ebffa44618706e +msgid "Tuple[Any, ``...``]" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.PrivateMessageOnly:1 +#: 4accdd8a5de0454d836bcb7a601d2249 +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingAnyRole:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingPermissions:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingRole:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingAnyRole:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingPermissions:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRole:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.NoPrivateMessage:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.NotOwner:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.PrivateMessageOnly:4 +#: dbb9cfa723ce4683a0356453833bc9c9 +#: dbb9cfa723ce4683a0356453833bc9c9 +#: dbb9cfa723ce4683a0356453833bc9c9 +#: dbb9cfa723ce4683a0356453833bc9c9 +#: dbb9cfa723ce4683a0356453833bc9c9 +#: dbb9cfa723ce4683a0356453833bc9c9 +#: dbb9cfa723ce4683a0356453833bc9c9 +#: dbb9cfa723ce4683a0356453833bc9c9 +#: dbb9cfa723ce4683a0356453833bc9c9 +msgid "This inherits from :exc:`CheckFailure`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.NoPrivateMessage:1 +#: 96608eb292b948cbac864b16f33f6e05 +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CheckFailure:1 +#: 03237b06950349af8b5877c3b0865393 +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CheckFailure:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandInvokeError:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandOnCooldown:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.DisabledCommand:3 +#: 21521951fe3645c599f43042bd74017f +#: 21521951fe3645c599f43042bd74017f +#: 21521951fe3645c599f43042bd74017f +#: 21521951fe3645c599f43042bd74017f +msgid "This inherits from :exc:`CommandError`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CheckAnyFailure:1 +#: fdf4dcd227e148228e21d1948cb2676a +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CheckAnyFailure:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.NSFWChannelRequired:3 +#: e51c110bd8cb4f13b2f0dc5eb781134e +#: e51c110bd8cb4f13b2f0dc5eb781134e +msgid "This inherits from :exc:`CheckFailure`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CheckAnyFailure:9 +#: 4ff5239ba6b048c492f5196098784413 +msgid "A list of errors that were caught during execution." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CheckAnyFailure:11 +#: e6eef43806f64b449d040306cc418c6c +msgid "List[:class:`CheckFailure`]" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CheckAnyFailure:15 +#: 72280e5b7a9247358710cf411d55e66f +msgid "A list of check predicates that failed." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CheckAnyFailure:17 +#: 9c95362945e54d249dfb1f53c01df57a +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandNotFound:1 +#: 6d3a08a8839845fca30e84b8a4b306e2 +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandNotFound:4 +#: 4e2fbed34f904d2f803049cdfda27e2a +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.DisabledCommand:1 +#: 9f86073a221845eea8f7c391b8bdde72 +msgid "Exception raised when the command being invoked is disabled." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandInvokeError:1 +#: 7075cb5d93a942a884908449fe8754c4 +msgid "Exception raised when the command being invoked raised an exception." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.TooManyArguments:1 +#: 52d12ffa6eeb41e2880bed34a9b4bbce +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UserInputError:1 +#: 7eed2c49b4da49a0b1895c22914b4e6c +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandOnCooldown:1 +#: 7e037c297ba143e4805430b144f46bbb +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandOnCooldown:7 +#: ee6083fa81ee4a83874d43c623041852 +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandOnCooldown:10 +#: 2fd7d25d75794561a8a2d78143ec44fa +msgid ":class:`.Cooldown`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandOnCooldown:14 +#: 9fc0412e234440a194944d2b45b92fe2 +msgid "The type associated with the cooldown." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandOnCooldown:16 +#: 3cb421159c314fb4adf5e168945317ab +msgid ":class:`BucketType`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandOnCooldown:20 +#: 8d2ea9a9b813410eac680f92f1b344f6 +msgid "The amount of seconds to wait before you can retry again." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MaxConcurrencyReached:1 +#: ec430b1c0a9549cfad0cdde9485394d1 +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MaxConcurrencyReached:7 +#: f686fa32c5764e62b8b8bd10fc099503 +msgid "The maximum number of concurrent invokers allowed." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MaxConcurrencyReached:13 +#: 6410e5d4f966442db39c50132e842e6c +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MaxConcurrencyReached:15 +#: 8adb54bbebb74a19816d333471507599 +msgid ":class:`.BucketType`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.NotOwner:1 +#: ca0fc435abf24248bb4790c352b24822 +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MessageNotFound:1 +#: c9e4459728ac4cc6a27b56a6defdcf14 +msgid "Exception raised when the message provided was not found in the channel." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadBoolArgument:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadColourArgument:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadInviteArgument:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotFound:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotReadable:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.EmojiNotFound:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildNotFound:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildStickerNotFound:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MemberNotFound:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MessageNotFound:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.PartialEmojiConversionFailure:4 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.RoleNotFound:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ThreadNotFound:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UserNotFound:4 +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +#: cafbbd3a5904470cbe7817bdf3a418bf +msgid "This inherits from :exc:`BadArgument`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MessageNotFound:9 +#: 919b214d6e7b45fca37e039161972510 +msgid "The message supplied by the caller that was not found" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MemberNotFound:1 +#: 53aa71c340174d789b45ad3fd9260c8d +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MemberNotFound:10 +#: 7bb3f96e98cb461d8a0c7ce08b497005 +msgid "The member supplied by the caller that was not found" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildNotFound:1 +#: ea7ce6eabe934c1fad2a3c1988cebefa +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildNotFound:9 +#: 01925b74dade4730a5bcefbfa11d69dd +msgid "The guild supplied by the called that was not found" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UserNotFound:1 +#: c7c19e3d8c6c4893b5f8b6e9867b16f5 +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.UserNotFound:10 +#: 0f431bc819e74530801b87d339ec4ada +msgid "The user supplied by the caller that was not found" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotFound:1 +#: f6b591356c80408192207ebfbb8ebfe1 +msgid "Exception raised when the bot can not find the channel." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotFound:9 +#: 5921dca926fc477e9a91b1d7696c508f +msgid "The channel supplied by the caller that was not found" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotReadable:1 +#: 9fa4e65ac9814e07b00cfd524eeca282 +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotReadable:10 +#: a38283be5eb8407680d6eb16d0fee127 +msgid "The channel supplied by the caller that was not readable" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ChannelNotReadable:12 +#: 36582766bdc1404fba01c7e34a7d291e +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ThreadNotFound:1 +#: 43052fa171924f6998cf30a4408d2d3c +msgid "Exception raised when the bot can not find the thread." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.ThreadNotFound:9 +#: 1dea63fd1bb84e059219eae7f81fd40d +msgid "The thread supplied by the caller that was not found" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadColourArgument:1 +#: 05e8d50caba64b2184fbf03a21b366f9 +msgid "Exception raised when the colour is not valid." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadColourArgument:9 +#: 66b2891f3b2f48619d3d939bc9bcee37 +msgid "The colour supplied by the caller that was not valid" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.RoleNotFound:1 +#: ed0be8e86e444e4e8c850511fc8e48c5 +msgid "Exception raised when the bot can not find the role." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.RoleNotFound:9 +#: 11a097db73c2490497cb7b7429cb7d40 +msgid "The role supplied by the caller that was not found" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadInviteArgument:1 +#: cd6ec6e8aa3345b5968634efb9fdbfb6 +msgid "Exception raised when the invite is invalid or expired." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.EmojiNotFound:1 +#: dbfafb99d9924e058e9f4085e51b4e85 +msgid "Exception raised when the bot can not find the emoji." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.EmojiNotFound:9 +#: 79c87d5b8880428daee4e62770468475 +msgid "The emoji supplied by the caller that was not found" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.PartialEmojiConversionFailure:1 +#: af44f3e759ca46c0ae4b639c71e28277 +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.PartialEmojiConversionFailure:10 +#: 6c1c2df0327a441bbe1c96a50ba39d49 +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildStickerNotFound:1 +#: e43d76903cc749c78ccd3ca87300ebfa +msgid "Exception raised when the bot can not find the sticker." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.GuildStickerNotFound:9 +#: cb6279d6304e4c069ce89ef37082f364 +msgid "The sticker supplied by the caller that was not found" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadBoolArgument:1 +#: a815b02a064846279adc4f121cc2b07f +msgid "Exception raised when a boolean argument was not convertible." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadBoolArgument:9 +#: 2982ea51ace646d8bd8c2fd76d7f9b7c +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingPermissions:1 +#: f7c1e866271f4a6284aee4c6711c27d7 +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingPermissions:8 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingPermissions:8 +#: 5ada78a870114789b2525dfb7258f469 +#: 5ada78a870114789b2525dfb7258f469 +msgid "The required permissions that are missing." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingPermissions:1 +#: 17bbff2318d343aab6e8abf37d823b00 +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRole:1 +#: 69a44f4ec8e946ff86107a955100b0dc +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingRole:9 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRole:9 +#: 464aff7b7d6d4edab7c5c9f1d4b1390e +#: 464aff7b7d6d4edab7c5c9f1d4b1390e +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingRole:12 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRole:12 +#: 495f17f5f821498f8c20b5437e881ce8 +#: 495f17f5f821498f8c20b5437e881ce8 +msgid "Union[:class:`str`, :class:`int`]" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingRole:1 +#: ea6884c4574d42039894bd8eda813eeb +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingAnyRole:1 +#: b51a7d82c7ae471c9e0927f161646b60 +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingAnyRole:10 +#: bb3b944232324fe987d73d6df70499d0 +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingAnyRole:13 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingAnyRole:13 +#: 4800e7486dea463f9b780669f880aaee +#: 4800e7486dea463f9b780669f880aaee +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingAnyRole:1 +#: 91d8c29682f5470aaaa17fdd9e54ab7c +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BotMissingAnyRole:10 +#: 03dff160785045fdafd78a2d6dc2ec69 +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.NSFWChannelRequired:1 +#: cdd99306574d42fbbdca211e043eb448 +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.NSFWChannelRequired:8 +#: 03481b87678a41ab8f534266523f04e3 +msgid "The channel that does not have NSFW enabled." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.FlagError:1 +#: 397619a293eb4871a61c96cf18d8966c +msgid "The base exception type for all flag parsing related errors." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.FlagError:3 +#: 4df1966bd2224d8097e05de8614e0ae1 +msgid "This inherits from :exc:`BadArgument`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadFlagArgument:1 +#: ad1d800328234006bb717f17aaabd02d +msgid "An exception raised when a flag failed to convert a value." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadFlagArgument:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingFlagArgument:3 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredFlag:3 +#: 91798d8c295b4e5a95ae65bc3717c132 +#: 91798d8c295b4e5a95ae65bc3717c132 +#: 91798d8c295b4e5a95ae65bc3717c132 +msgid "This inherits from :exc:`FlagError`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadFlagArgument:9 +#: 3169dff1f74241f4b187f32057eee70a +msgid "The flag that failed to convert." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.BadFlagArgument:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingFlagArgument:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredFlag:11 +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.TooManyFlags:11 +#: 53f5b703a1754889b6501bc0bb13587d +#: 53f5b703a1754889b6501bc0bb13587d +#: 53f5b703a1754889b6501bc0bb13587d +#: 53f5b703a1754889b6501bc0bb13587d +msgid ":class:`~discord.ext.commands.Flag`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingFlagArgument:1 +#: b2fb965c7465456f99ebd4e00ac3e6b8 +msgid "An exception raised when a flag did not get a value." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingFlagArgument:9 +#: 51f3abb37a5e4994ba35116283b2a5b8 +msgid "The flag that did not get a value." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.TooManyFlags:1 +#: 41386efb30914b5190300d75a9841355 +msgid "An exception raised when a flag has received too many values." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.TooManyFlags:3 +#: 81da839939ae4de9ac168277a8d393b3 +msgid "This inherits from :exc:`FlagError`." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.TooManyFlags:9 +#: 22360e7ef17a43adafe941a0a99e9cea +msgid "The flag that received too many values." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.TooManyFlags:15 +#: 523b4c7b89a04e638cbca478a4086147 +msgid "The values that were passed." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredFlag:1 +#: 8ecebd5789744f5eb9e9fb41f2de3718 +msgid "An exception raised when a required flag was not given." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.MissingRequiredFlag:9 +#: 7eb7e6f4248e4600b9881f494de33f37 +msgid "The required flag that was not found." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandRegistrationError:1 +#: 33517164ec0241ad90d22b66b1bb6681 +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandRegistrationError:4 +#: f911fded08e14082a434d5415f49a0dc +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandRegistrationError:10 +#: 944edaa1770a49f09cb67186b72b3a46 +msgid "The command name that had the error." +msgstr "" + +#: ../../../discord/ext/commands/errors.py:docstring of discord.ext.commands.errors.CommandRegistrationError:16 +#: c786264a69f741c6abc2b1c87a4bc9e7 +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "" + +#: ../../ext/commands/api.rst:602 +#: 6437c792279b485bbe8d09df28d18259 +msgid "Exception Hierarchy" +msgstr "" + +#: ../../ext/commands/api.rst:606 +#: 6ccb8ffddb0e484bb2823ab2ad38df23 +msgid ":exc:`~.DiscordException`" +msgstr "" + +#: ../../ext/commands/api.rst:607 +#: cd13764d1d8e432d8b1e3d0814e8d01b +msgid ":exc:`~.commands.CommandError`" +msgstr "" + +#: ../../ext/commands/api.rst:608 +#: 74dd05d87e664d6d95e7431e0ee657a2 +msgid ":exc:`~.commands.ConversionError`" +msgstr "" + +#: ../../ext/commands/api.rst:609 +#: cbd5441518e842c8996b1af7e7cf5866 +msgid ":exc:`~.commands.UserInputError`" +msgstr "" + +#: ../../ext/commands/api.rst:610 +#: c4e241c2d65c47c081ffdb98d83bbdb9 +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:611 +#: 549d8f93ab4d49b2be2af635f5b5ded4 +msgid ":exc:`~.commands.TooManyArguments`" +msgstr "" + +#: ../../ext/commands/api.rst:612 +#: 34fa2ca053544615886a62a4fb15cf9e +msgid ":exc:`~.commands.BadArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:613 +#: ebd1c85ac0d74fc3911f70d08f47aee6 +msgid ":exc:`~.commands.MessageNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:614 +#: 8be5ab33fc4d4805b9734dd6928d9f94 +msgid ":exc:`~.commands.MemberNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:615 +#: e06c986c07094e5f9040701bd22424c3 +msgid ":exc:`~.commands.GuildNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:616 +#: 3412788dfaee4dfdb7576009a8022e55 +msgid ":exc:`~.commands.UserNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:617 +#: 7c3e338f517048f490ef9d7352a5816b +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:618 +#: 69dbf7468138443090ca532bdab29342 +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr "" + +#: ../../ext/commands/api.rst:619 +#: 9c632c188fe549fab83e69867e4cf5dc +msgid ":exc:`~.commands.BadColourArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:620 +#: 1a5d869d53b249ee83a6a9608181feed +msgid ":exc:`~.commands.RoleNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:621 +#: 0e23b8b1753a47ad914a2f634f6c5a75 +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:622 +#: babc7a4834054c0f9eb01b4b1d64f977 +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:623 +#: ba36f4798dc34d64909d605b8a5e4453 +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:624 +#: 63a02aeefdfb490780e73b6dd9505648 +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr "" + +#: ../../ext/commands/api.rst:625 +#: 97151bf22296452995480b2439c01b71 +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:626 +#: 6d98af8c8f5c4c40a636637cd679c60c +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:627 +#: ff88bf5dee89418ab1bde698b5775a02 +msgid ":exc:`~.commands.FlagError`" +msgstr "" + +#: ../../ext/commands/api.rst:628 +#: 4b6702835e9b4ff1bcf15e4941476819 +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:629 +#: d7c035251022468babb19b341ea436d7 +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:630 +#: 575fc9981e8c4eb2910b06750b0fe36b +msgid ":exc:`~.commands.TooManyFlags`" +msgstr "" + +#: ../../ext/commands/api.rst:631 +#: b2cce1d15e71410daf628c5a6949389b +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr "" + +#: ../../ext/commands/api.rst:632 +#: df0b5dadeb2d44b081075aa573d01645 +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:633 +#: 40e1173bc57148c28a96e7f0c80d4d4b +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:634 +#: 1e2d26f63bb043598bc4fa594a8ed65a +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr "" + +#: ../../ext/commands/api.rst:635 +#: 0656fa3277af4737ac155d5dc3703193 +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr "" + +#: ../../ext/commands/api.rst:636 +#: 89c3c6a87e704b4c841cb49e5cafa5a8 +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr "" + +#: ../../ext/commands/api.rst:637 +#: cd335c6f525a4e138f33c86be1ad5095 +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr "" + +#: ../../ext/commands/api.rst:638 +#: a55562b662b14287a9e30435a4f8c089 +msgid ":exc:`~.commands.CommandNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:639 +#: ee6a30f21bcb4f52a759629ba49d364e +msgid ":exc:`~.commands.CheckFailure`" +msgstr "" + +#: ../../ext/commands/api.rst:640 +#: e14ded2b37b246ef958773e93c8ea54d +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr "" + +#: ../../ext/commands/api.rst:641 +#: 73f3258338c7444bbabffe3ce0af02a7 +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr "" + +#: ../../ext/commands/api.rst:642 +#: 13a9d422fc834b23b13c7bf1b953553c +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr "" + +#: ../../ext/commands/api.rst:643 +#: 4f5ddbcf5b784ba1839dd46e27544112 +msgid ":exc:`~.commands.NotOwner`" +msgstr "" + +#: ../../ext/commands/api.rst:644 +#: 79464ba408914e209155f9a2243560f7 +msgid ":exc:`~.commands.MissingPermissions`" +msgstr "" + +#: ../../ext/commands/api.rst:645 +#: c8f7675df7144f5b87ea91e17c7150d3 +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr "" + +#: ../../ext/commands/api.rst:646 +#: 59945fa448824e41ac8f29db56a05d04 +msgid ":exc:`~.commands.MissingRole`" +msgstr "" + +#: ../../ext/commands/api.rst:647 +#: 0d9c0b55f5da4d48a7004cce52e8da65 +msgid ":exc:`~.commands.BotMissingRole`" +msgstr "" + +#: ../../ext/commands/api.rst:648 +#: 8f8fc0b9b36d4cd5b9bfe96cab259c5a +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr "" + +#: ../../ext/commands/api.rst:649 +#: 31f9f0b532764958b15cd54bc163cfcd +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr "" + +#: ../../ext/commands/api.rst:650 +#: cb8ef5fc8c4f408587530e3e3dcfd8eb +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr "" + +#: ../../ext/commands/api.rst:651 +#: 1b82bb11d2024000bcd5bdd37bec251e +msgid ":exc:`~.commands.DisabledCommand`" +msgstr "" + +#: ../../ext/commands/api.rst:652 +#: 27d038f16ba1480eb3090e9ffdf4e253 +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr "" + +#: ../../ext/commands/api.rst:653 +#: f967b74af44a404586c877989e180bbd +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr "" + +#: ../../ext/commands/api.rst:654 +#: 03326f2822f449699fb31a42b80628b5 +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr "" + +#: ../../ext/commands/api.rst:655 +#: 68e91270b3d54214bc9d6f05ae905658 +msgid ":exc:`~.ClientException`" +msgstr "" + +#: ../../ext/commands/api.rst:656 +#: 74f572dd584c4c7ead229a600acc880a +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr "" diff --git a/docs/build/locales/ext/commands/cogs.pot b/docs/build/locales/ext/commands/cogs.pot new file mode 100644 index 0000000000..e9cbf8215f --- /dev/null +++ b/docs/build/locales/ext/commands/cogs.pot @@ -0,0 +1,217 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../ext/commands/cogs.rst:6 +#: 7d8a14b96db54be3b73b46f1162cfd57 +msgid "Cogs" +msgstr "" + +#: ../../ext/commands/cogs.rst:8 +#: 41ef7d4debd54cab990dc125e2249c37 +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "" + +#: ../../ext/commands/cogs.rst:10 +#: a21a197b686a425399b4053a1c4a3b4c +msgid "The gist:" +msgstr "" + +#: ../../ext/commands/cogs.rst:12 +#: 761abe3bf60b4bde8cbdf6e3a55371be +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "" + +#: ../../ext/commands/cogs.rst:13 +#: 9517e5384a094f2bb1f431d2ce713ac6 +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "" + +#: ../../ext/commands/cogs.rst:14 +#: d21d904b74eb4e89a2a4bc661d4aa00f +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "" + +#: ../../ext/commands/cogs.rst:15 +#: e5459a2d0d6141ec8145b7ae5ba0600a +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "" + +#: ../../ext/commands/cogs.rst:16 +#: eccd2572c7734092aacd752b4ae72121 +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "" + +#: ../../ext/commands/cogs.rst:18 +#: df03b5d52bef49abb33191f556a196d9 +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "" + +#: ../../ext/commands/cogs.rst:21 +#: 9629417da52d4bc796c9f2d88f7c0d3c +msgid "Quick Example" +msgstr "" + +#: ../../ext/commands/cogs.rst:23 +#: 398644f0c77043148ebb2331f2c41a7d +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "" + +#: ../../ext/commands/cogs.rst:48 +#: af7c9e23c9e34661b1978bd16b5f5d2f +msgid "A couple of technical notes to take into consideration:" +msgstr "" + +#: ../../ext/commands/cogs.rst:50 +#: 14622d4a1d7947e89b70882dd6311e88 +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "" + +#: ../../ext/commands/cogs.rst:51 +#: a3e030dda8d84fdfa20ac0b4745d3e66 +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "" + +#: ../../ext/commands/cogs.rst:52 +#: b8b3cbe90a264a4c9664e7c55cfa033a +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "" + +#: ../../ext/commands/cogs.rst:55 +#: b00093673c624886896e49bc30d483b5 +msgid "Cog Registration" +msgstr "" + +#: ../../ext/commands/cogs.rst:57 +#: f133cc0e24b84376a8df459fb95e2fd2 +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "" + +#: ../../ext/commands/cogs.rst:63 +#: d6b663ac6c7e419780246e450051d1e4 +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "" + +#: ../../ext/commands/cogs.rst:65 +#: 72947ff2c39045ffa1c88c854d997425 +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "" + +#: ../../ext/commands/cogs.rst:72 +#: 21e748a565fa4b6a8a19aab2ccdad567 +msgid "Using Cogs" +msgstr "" + +#: ../../ext/commands/cogs.rst:74 +#: c33c65a090bb4cbba543946df62d8476 +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "" + +#: ../../ext/commands/cogs.rst:109 +#: 70ea1a2dc1f346e89f071b2a90daaa32 +msgid "Special Methods" +msgstr "" + +#: ../../ext/commands/cogs.rst:111 +#: 0be6debcef404ea9b950aeec82453364 +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "" + +#: ../../ext/commands/cogs.rst:113 +#: 24f5ccc99dff448bb57383ef47388bce +msgid "They are as follows:" +msgstr "" + +#: ../../ext/commands/cogs.rst:115 +#: 97d2ba6b9f644b8a8b1aac7ade166884 +msgid ":meth:`.Cog.cog_unload`" +msgstr "" + +#: ../../ext/commands/cogs.rst:116 +#: 992d9055babe4cd68c4802a454c0db57 +msgid ":meth:`.Cog.cog_check`" +msgstr "" + +#: ../../ext/commands/cogs.rst:117 +#: 22aae6ba82674e9f94b09e54c316c361 +msgid ":meth:`.Cog.cog_command_error`" +msgstr "" + +#: ../../ext/commands/cogs.rst:118 +#: b6a3156bc70c4a838f82be1bac2547f3 +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr "" + +#: ../../ext/commands/cogs.rst:119 +#: 738a0b7b5afa4502a5cd77c2799c6038 +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr "" + +#: ../../ext/commands/cogs.rst:120 +#: ac053e4b875445869f0d9a05f14ab202 +msgid ":meth:`.Cog.bot_check`" +msgstr "" + +#: ../../ext/commands/cogs.rst:121 +#: a82d2f25c8ec483c92e1692eff3ddb39 +msgid ":meth:`.Cog.bot_check_once`" +msgstr "" + +#: ../../ext/commands/cogs.rst:123 +#: 4ce764c85d3742cf82684298f7449053 +msgid "You can visit the reference to get more detail." +msgstr "" + +#: ../../ext/commands/cogs.rst:128 +#: 9d637060d66d49269866dc85d2f23b23 +msgid "Meta Options" +msgstr "" + +#: ../../ext/commands/cogs.rst:130 +#: e314efe09f51456391d68e01b94401e2 +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "" + +#: ../../ext/commands/cogs.rst:137 +#: 05e7b018ab0a462390d00af651d0cd48 +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "" + +#: ../../ext/commands/cogs.rst:140 +#: 53da0f2c6f8c48a8a2b89433afd2a30e +msgid "Inspection" +msgstr "" + +#: ../../ext/commands/cogs.rst:142 +#: 0dc059e5db484b5e8b1b035f344b7519 +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "" + +#: ../../ext/commands/cogs.rst:145 +#: 4913166c56a642bb8af6e4b6fb34e4c2 +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "" + +#: ../../ext/commands/cogs.rst:151 +#: 6f5856e1cd37414cb4b8f70288f9bed1 +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "" + +#: ../../ext/commands/cogs.rst:155 +#: 81b21d41a70242aa98044d585561b21c +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "" diff --git a/docs/build/locales/ext/commands/commands.pot b/docs/build/locales/ext/commands/commands.pot new file mode 100644 index 0000000000..0afa8a047f --- /dev/null +++ b/docs/build/locales/ext/commands/commands.pot @@ -0,0 +1,1006 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../ext/commands/commands.rst:6 +#: 2eb0da10d5464bf79c53ce786a7cbae8 +msgid "Commands" +msgstr "" + +#: ../../ext/commands/commands.rst:8 +#: e4214a427a3348428cd35bc578a9b0cc +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "" + +#: ../../ext/commands/commands.rst:13 +#: 9b47c6f1429d4c33b0c9b05ef9488102 +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "" + +#: ../../ext/commands/commands.rst:16 +#: 4d13402b19da4759b264517f6a201364 +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "" + +#: ../../ext/commands/commands.rst:19 +#: 9dc0a8568bbf47dca6c89b0bde20afdf +msgid "For example, in the given command definition:" +msgstr "" + +#: ../../ext/commands/commands.rst:27 +#: 5de5e8c8225c420d9b6f525df5ed59f0 +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "" + +#: ../../ext/commands/commands.rst:33 +#: f4adfe7d30a24a849a8b343dcf007477 +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "" + +#: ../../ext/commands/commands.rst:35 +#: 81eceea83b70446d842cb4c33d5c0872 +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "" + +#: ../../ext/commands/commands.rst:39 +#: c49bb2d2b689445e84e7f2fb85af7a2b +msgid "Essentially, these two are equivalent: ::" +msgstr "" + +#: ../../ext/commands/commands.rst:57 +#: 89a15da928b045c180932fca669b2337 +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "" + +#: ../../ext/commands/commands.rst:60 +#: 4672db0e89d94b759ed873937a925b0d +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "" + +#: ../../ext/commands/commands.rst:70 +#: d17bed7a62ff4323921ff5b2caaf4273 +msgid "Parameters" +msgstr "" + +#: ../../ext/commands/commands.rst:72 +#: 97ae07f056144eb48fb0139175734dd7 +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "" + +#: ../../ext/commands/commands.rst:75 +#: 93a623991c8d401a890de01634ff9d10 +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "" + +#: ../../ext/commands/commands.rst:78 +#: fa4304f52a0e41f2a371397e47fcce9b +msgid "Positional" +msgstr "" + +#: ../../ext/commands/commands.rst:80 +#: e883e4a474714e48a6aeb726eeadc3dc +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "" + +#: ../../ext/commands/commands.rst:89 +#: 8cf8d9493b1041559256e087ef413a4a +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "" + +#: ../../ext/commands/commands.rst:93 +#: 23f921048feb424090895504e729b98c +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "" + +#: ../../ext/commands/commands.rst:97 +#: 3ab21401c05843bd9b1455e46d69b18c +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "" + +#: ../../ext/commands/commands.rst:101 +#: b38c6f36a4984b1383dc229230a04be3 +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "" + +#: ../../ext/commands/commands.rst:110 +#: 69e2937645db4001991a3a19cd1b3808 +msgid "Variable" +msgstr "" + +#: ../../ext/commands/commands.rst:112 +#: 308d1f46baa648118a4492116a1e0e50 +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "" + +#: ../../ext/commands/commands.rst:122 +#: 19b4063c5f5e4147acd5ff0877eb603f +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "" + +#: ../../ext/commands/commands.rst:125 +#: 1760c96b472641e3bbca0de1f872745c +msgid "For example, on the bot side:" +msgstr "" + +#: ../../ext/commands/commands.rst:129 +#: 675386608fb74796ad09e212c7122bf2 +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "" + +#: ../../ext/commands/commands.rst:133 +#: 29ebb86baa1740099c73ca8546bc0ade +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "" + +#: ../../ext/commands/commands.rst:138 +#: 67c020b1c65944dda2ed2652d0ae7c58 +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "" + +#: ../../ext/commands/commands.rst:142 +#: 6b8c16edb4a1403da128255ee43f1238 +msgid "Keyword-Only Arguments" +msgstr "" + +#: ../../ext/commands/commands.rst:144 +#: 6f25d36da8be4318b7517f46553f1e21 +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "" + +#: ../../ext/commands/commands.rst:156 +#: 38db3e0ed2f348e0bb7d6801c86317fa +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "" + +#: ../../ext/commands/commands.rst:158 +#: 9fe6edffe03e4084b0258a60580b7419 +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "" + +#: ../../ext/commands/commands.rst:162 +#: c37edc09abe943d6b3ae7043d3503481 +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "" + +#: ../../ext/commands/commands.rst:166 +#: 481826d85cb845e08e2af89f17e5a0f9 +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "" + +#: ../../ext/commands/commands.rst:172 +#: 67c96f9d17044584a1553ae412eb8f49 +msgid "Invocation Context" +msgstr "" + +#: ../../ext/commands/commands.rst:174 +#: 90307116bb3c4e2380082d039bfa0a72 +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "" + +#: ../../ext/commands/commands.rst:176 +#: df6777a0ac024b7fb5d7c9c767d880d6 +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "" + +#: ../../ext/commands/commands.rst:179 +#: 04404ff085ff4a2f8f0b30ed463cccad +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr "" + +#: ../../ext/commands/commands.rst:180 +#: 4b015547e4cf4589bb40234602d7d7d2 +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr "" + +#: ../../ext/commands/commands.rst:181 +#: 93a632c429f142a28542853f69bf1bc5 +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr "" + +#: ../../ext/commands/commands.rst:182 +#: d5b8d8fc811d40dcae3b834e512c565d +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr "" + +#: ../../ext/commands/commands.rst:184 +#: dd42fc20238e42f1a0ee1c45bb01bcb1 +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "" + +#: ../../ext/commands/commands.rst:188 +#: 9323b08475884e81a24402b57d0e4f64 +msgid "Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:190 +#: 94093319a7b54fdfa6e31db0dca531fc +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "" + +#: ../../ext/commands/commands.rst:194 +#: 3c6b6053a7ff41ddb294cc3bdf33c5f4 +msgid "Converters come in a few flavours:" +msgstr "" + +#: ../../ext/commands/commands.rst:196 +#: 03037c0bbd2c4d4f8763155062d78123 +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "" + +#: ../../ext/commands/commands.rst:198 +#: 98c76a42c234410a8ed70b5be84229be +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "" + +#: ../../ext/commands/commands.rst:200 +#: 4da775ab6c054ad0860c7bef0330ca3b +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "" + +#: ../../ext/commands/commands.rst:205 +#: ff55ecdf59f047bcaaef30853af31630 +msgid "Basic Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:207 +#: c3456b954e774e7a8f35ed7fe291cd85 +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "" + +#: ../../ext/commands/commands.rst:209 +#: 324d460f3f8b4c7dbce5f75874dbc256 +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "" + +#: ../../ext/commands/commands.rst:218 +#: 3fae99b42a2f443d874be5482fa0e936 +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "" + +#: ../../ext/commands/commands.rst:221 +#: 3740f2a511be4ca58de8ede0336e0615 +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "" + +#: ../../ext/commands/commands.rst:233 +#: e173cfce78a641fa8c1e3ec388743ef1 +msgid "bool" +msgstr "" + +#: ../../ext/commands/commands.rst:235 +#: 2b509e4de4e44b74bcccc8bc76160457 +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "" + +#: ../../ext/commands/commands.rst:247 +#: 99b4ee76fbdf4bfe8318bf4634fd1e86 +msgid "Advanced Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:249 +#: 1dd87e5eb49442b5b2b8be597b97e9a6 +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "" + +#: ../../ext/commands/commands.rst:252 +#: 06673a8c2e984113aa51eb9bebd30c13 +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "" + +#: ../../ext/commands/commands.rst:256 +#: 3acb0b6c3c3b45d7947a41f55264d0ea +msgid "An example converter:" +msgstr "" + +#: ../../ext/commands/commands.rst:271 +#: 319ff0abdddd44abb73c9c4df69ea757 +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "" + +#: ../../ext/commands/commands.rst:285 +#: 4eb7fe42c4cf4cc49381b065a3f6d608 +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "" + +#: ../../ext/commands/commands.rst:301 +#: 313d06a63c464db6bc50a9417e7fc09e +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "" + +#: ../../ext/commands/commands.rst:305 +#: 762af1541599441dbe658f34ed6d88e9 +msgid "Inline Advanced Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:307 +#: d2d137d0557a462faad7c955183cab1b +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "" + +#: ../../ext/commands/commands.rst:310 +#: 579183b09bd04a0fac0e147c369c8f6f +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "" + +#: ../../ext/commands/commands.rst:336 +#: 9ae2c2bc6bcc4522a18ac8423feb315c +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "" + +#: ../../ext/commands/commands.rst:363 +#: 3131fccf4fad41828e2b2b27b42bcc45 +msgid "Discord Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:365 +#: b4c52244c9be419fab06827b57f495f3 +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "" + +#: ../../ext/commands/commands.rst:368 +#: 137f5ef96f53464c8a251cc4118b1308 +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "" + +#: ../../ext/commands/commands.rst:376 +#: 57184e3586fc42288c7c5f42ccf466b1 +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "" + +#: ../../ext/commands/commands.rst:380 +#: 3ef3174367f14f4aa3154ceba29fd202 +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "" + +#: ../../ext/commands/commands.rst:382 +#: f06b9b69f544438f98c0d86a14a56473 +msgid ":class:`Object` (since v2.0)" +msgstr "" + +#: ../../ext/commands/commands.rst:383 +#: ../../ext/commands/commands.rst:412 +#: 03938a54fa284120b0e6bd437416f4db +#: fc8b4340e84844c6845fd5b5cc6ae6d3 +msgid ":class:`Member`" +msgstr "" + +#: ../../ext/commands/commands.rst:384 +#: ../../ext/commands/commands.rst:414 +#: b5c11ba0502a4e51815954014a35ff1b +#: 2ed2e5e8c91c422e8df4d374c103c019 +msgid ":class:`User`" +msgstr "" + +#: ../../ext/commands/commands.rst:385 +#: 0f89da062de548ac8d36018cbaa52c6e +msgid ":class:`Message` (since v1.1)" +msgstr "" + +#: ../../ext/commands/commands.rst:386 +#: 9016f8974d594cca9e58ca054892ea95 +msgid ":class:`PartialMessage` (since v1.7)" +msgstr "" + +#: ../../ext/commands/commands.rst:387 +#: a50044b9a37c4977b4d659c5e91ec9fb +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr "" + +#: ../../ext/commands/commands.rst:388 +#: ../../ext/commands/commands.rst:422 +#: 24a187d6918f41e3931a19cd1358794c +#: aad4ae0d99db4541a9c2f8c026d8fb39 +msgid ":class:`TextChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:389 +#: ../../ext/commands/commands.rst:424 +#: 1721b9a57a6a4aae8ea61ddb939d062a +#: dcf70ccb30684fba934a549b90af7d76 +msgid ":class:`VoiceChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:390 +#: 1eecfbb240364ef39e7e60d8f3b89d43 +msgid ":class:`StageChannel` (since v1.7)" +msgstr "" + +#: ../../ext/commands/commands.rst:391 +#: ../../ext/commands/commands.rst:428 +#: b788f3bdc63245029e6611c29fda9078 +#: f87fe6cf01774f82b54da0bc6ef3271c +msgid ":class:`CategoryChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:392 +#: ../../ext/commands/commands.rst:430 +#: 44e5f88bb2bd43fc8d51b66475fdb05c +#: 59e1e1a2f9b348ba922ebca969831825 +msgid ":class:`Invite`" +msgstr "" + +#: ../../ext/commands/commands.rst:393 +#: cccd4ef2cc3443b98d13104f83a7990b +msgid ":class:`Guild` (since v1.7)" +msgstr "" + +#: ../../ext/commands/commands.rst:394 +#: ../../ext/commands/commands.rst:434 +#: cc025777e0c641e193733daff072b0a5 +#: 1ec8a898c9914345aca3d9abd69c13b3 +msgid ":class:`Role`" +msgstr "" + +#: ../../ext/commands/commands.rst:395 +#: ../../ext/commands/commands.rst:436 +#: d6e648eab28640d58ef49d32b79f77c8 +#: 2024345e0b124791866b632b87ada241 +msgid ":class:`Game`" +msgstr "" + +#: ../../ext/commands/commands.rst:396 +#: ../../ext/commands/commands.rst:438 +#: c3c6a678814a43ad8823e8ea97fc0f3b +#: 3345d10003a643f89ce0e50c4017ea99 +msgid ":class:`Colour`" +msgstr "" + +#: ../../ext/commands/commands.rst:397 +#: ../../ext/commands/commands.rst:440 +#: 60107320d7654b6a9154ea6e51181a3d +#: dd3916f6d6e54dfbb9f2094c34b320b8 +msgid ":class:`Emoji`" +msgstr "" + +#: ../../ext/commands/commands.rst:398 +#: ../../ext/commands/commands.rst:442 +#: e4ff43d5b0184c3dafc1e721adc80b5d +#: a741c083d4934dddb1ec2bd513f5680c +msgid ":class:`PartialEmoji`" +msgstr "" + +#: ../../ext/commands/commands.rst:399 +#: 1704896317af4edcbd8a20f03b096c52 +msgid ":class:`Thread` (since v2.0)" +msgstr "" + +#: ../../ext/commands/commands.rst:401 +#: 1dd242e642794a8ebfe2fb8cbb66e299 +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "" + +#: ../../ext/commands/commands.rst:404 +#: bdba697f4265483b83a9c31e3fb5698c +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "" + +#: ../../ext/commands/commands.rst:408 +#: 5c905d9d5e334e4a86ef7617d6db7a41 +msgid "Discord Class" +msgstr "" + +#: ../../ext/commands/commands.rst:408 +#: 67fdd7c779ec4d64b19aa85130bdb445 +msgid "Converter" +msgstr "" + +#: ../../ext/commands/commands.rst:410 +#: 069bf03bc858444a95904e15c00d8e56 +msgid ":class:`Object`" +msgstr "" + +#: ../../ext/commands/commands.rst:410 +#: 84c08b9c121f42128c829bba6e5d4625 +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:412 +#: 9316e8d30b654f4aa42f06854d6d2ab3 +msgid ":class:`~ext.commands.MemberConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:414 +#: 221d879af97f45bfb7c10ab47c5bbae7 +msgid ":class:`~ext.commands.UserConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:416 +#: 13e666233a2d4531ad53d8f63a8a7341 +msgid ":class:`Message`" +msgstr "" + +#: ../../ext/commands/commands.rst:416 +#: b2390c1a4b124b0e9485bb81b6be4d88 +msgid ":class:`~ext.commands.MessageConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:418 +#: 7c8c0614d60b4ac59697cebf6e90353c +msgid ":class:`PartialMessage`" +msgstr "" + +#: ../../ext/commands/commands.rst:418 +#: 45477fb6f9234e8e8f5a9787b75c83c7 +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:420 +#: 2a6dcd1fbe804287a6ac3cbdf06832fc +msgid ":class:`.GuildChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:420 +#: fdd4a6c2755c4cadbd4ce5e39a476355 +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:422 +#: 10eabd39fe9d427ca1e1f7eda0ae18eb +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:424 +#: 0779f3bcaa7d414f8f5bb2394e2208c0 +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:426 +#: 5f746a3119ff4dffb44d34a44a4b09f6 +msgid ":class:`StageChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:426 +#: d62ca9d8eec0480f86cfe4a7b3c0af64 +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:428 +#: b114fc4054654e0eb90cbac0547fe194 +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:430 +#: d758ba3981ab4eaeb71713c2fca6b1e2 +msgid ":class:`~ext.commands.InviteConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:432 +#: ed840f87331e46c4945db51a5cb8387c +msgid ":class:`Guild`" +msgstr "" + +#: ../../ext/commands/commands.rst:432 +#: 9f4e5c7b9add4e79b211760f4951e5c2 +msgid ":class:`~ext.commands.GuildConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:434 +#: 61c50c3976884ca0827c47e686f0fc79 +msgid ":class:`~ext.commands.RoleConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:436 +#: e7f1471e45bf4680857187d2bbcca54f +msgid ":class:`~ext.commands.GameConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:438 +#: 0aa621d4ffe54212a2995e0e467fcdb0 +msgid ":class:`~ext.commands.ColourConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:440 +#: 3be8dd3c867f4dd2b8a034b26f5a2bca +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:442 +#: bd131a47e41e42469043bfe18d7bfe1e +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:444 +#: 3b482c8f6eec4e688855568dc22e21b1 +msgid ":class:`Thread`" +msgstr "" + +#: ../../ext/commands/commands.rst:444 +#: 427ca932915b4160b892e09aaba9632b +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:447 +#: c2aa82fcf8b4403893fb5e8656e7de53 +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "" + +#: ../../ext/commands/commands.rst:464 +#: 0b2af3c5e1b14c40a8dc5b2f2b8f7a87 +msgid "Special Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:466 +#: d77ff9d9366546aaa0386b97b392a6c7 +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "" + +#: ../../ext/commands/commands.rst:471 +#: 8e2d4b7f44e24d65aed8dae238908d5a +msgid "typing.Union" +msgstr "" + +#: ../../ext/commands/commands.rst:473 +#: e4d4b494d9aa4143b810ce61ef9e260e +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "" + +#: ../../ext/commands/commands.rst:485 +#: d4e822131ed34ddaa15e3d339e4c7232 +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "" + +#: ../../ext/commands/commands.rst:490 +#: d09570daaf804f8c82c2bbde59e088c5 +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "" + +#: ../../ext/commands/commands.rst:493 +#: 3a590d16bb51472fbe1cfa2980c9f65e +msgid "typing.Optional" +msgstr "" + +#: ../../ext/commands/commands.rst:495 +#: 8362c9e7126d47c49332ae4b67b20dbc +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "" + +#: ../../ext/commands/commands.rst:499 +#: ../../ext/commands/commands.rst:547 +#: b9723a06f2f940b89af2ddb90dd6b3f8 +#: acd3e73ab332454c88ae1f945d276569 +msgid "Consider the following example:" +msgstr "" + +#: ../../ext/commands/commands.rst:512 +#: f4027d15748e45cfabfe3b021ce5fe6e +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "" + +#: ../../ext/commands/commands.rst:517 +#: 3dd8f48f74554d1ca649179f2cd6802b +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "" + +#: ../../ext/commands/commands.rst:520 +#: 708fb1c0594f44959957cd8151e7fa27 +msgid "typing.Literal" +msgstr "" + +#: ../../ext/commands/commands.rst:522 +#: a7e116a5932c429db1da9943a1832665 +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "" + +#: ../../ext/commands/commands.rst:534 +#: 49bda5647fa94357af6826cb98a2109c +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "" + +#: ../../ext/commands/commands.rst:538 +#: 9875bef593fe4a81b69a31d1cde619a2 +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "" + +#: ../../ext/commands/commands.rst:541 +#: 900a1bd1b7b040c7918bcd96141e219f +msgid "Greedy" +msgstr "" + +#: ../../ext/commands/commands.rst:543 +#: dc6419905b4c42f392d5297e10403aa1 +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "" + +#: ../../ext/commands/commands.rst:556 +#: 9ca09d5845224050b1ba70c540a4d691 +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "" + +#: ../../ext/commands/commands.rst:560 +#: 57eebac9d1114112b17e1b5b9a0221b8 +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "" + +#: ../../ext/commands/commands.rst:562 +#: c8fc91d2357f439cae4e9c538d7b653e +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "" + +#: ../../ext/commands/commands.rst:563 +#: 70ebeea864744098a0fe0e3e814c8a3e +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "" + +#: ../../ext/commands/commands.rst:564 +#: 9377041e060c46218b4a1f1f08ce9a88 +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "" + +#: ../../ext/commands/commands.rst:566 +#: 3b7168cd7fb949c58a321e4fc9b6d170 +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr "" + +#: ../../ext/commands/commands.rst:568 +#: 23c4ca604a5b4f7e8686bee24d5be9d9 +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "" + +#: ../../ext/commands/commands.rst:582 +#: 6fb3cc84a76d43809fd0d3a93f54a13d +msgid "This command can be invoked any of the following ways:" +msgstr "" + +#: ../../ext/commands/commands.rst:592 +#: 8af43a82e1eb487cb004540c857d9ab1 +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "" + +#: ../../ext/commands/commands.rst:595 +#: 802179685fdb4ac1adb5d926cb493c60 +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "" + +#: ../../ext/commands/commands.rst:601 +#: cd8e0c725cea4d518ac24bfbda7f8f61 +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "" + +#: ../../ext/commands/commands.rst:607 +#: acf73775f5cc4276abfecdcc82e43ec6 +msgid "FlagConverter" +msgstr "" + +#: ../../ext/commands/commands.rst:611 +#: debdef48375c43fca3d1da0d3a7ce781 +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "" + +#: ../../ext/commands/commands.rst:614 +#: 3b966e812c1c428bb30a92f10bcde540 +msgid "For example, the following code:" +msgstr "" + +#: ../../ext/commands/commands.rst:631 +#: 52518462957f45708676f99d1f50305f +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "" + +#: ../../ext/commands/commands.rst:635 +#: 107af728a5b74d11837998b7ce303131 +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "" + +#: ../../ext/commands/commands.rst:640 +#: 1d843dcb7fd94078aa969a0468f5e39b +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "" + +#: ../../ext/commands/commands.rst:645 +#: a3840ce333d14d5ba23224f900541479 +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "" + +#: ../../ext/commands/commands.rst:655 +#: 3d27dfa303ee4e8ea2f0e4e3be0c0baf +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "" + +#: ../../ext/commands/commands.rst:659 +#: 68bab2dab4884032ae4373ac62a556fc +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "" + +#: ../../ext/commands/commands.rst:680 +#: c3bf2a623f5648ab8aa15e111502969f +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "" + +#: ../../ext/commands/commands.rst:684 +#: ed1aeaf64e074b11b91bcc233a505165 +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "" + +#: ../../ext/commands/commands.rst:689 +#: 1ffb1e24952f41ff8806882dd4a0d913 +msgid "typing.List" +msgstr "" + +#: ../../ext/commands/commands.rst:691 +#: 737132d99ad74d6ea4e7b93155b9053c +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "" + +#: ../../ext/commands/commands.rst:693 +#: 71dfe029bdd44663a9c4c0a6a2e67965 +msgid "For example, augmenting the example above:" +msgstr "" + +#: ../../ext/commands/commands.rst:715 +#: 35e687a664834729a0fd8e46ab8a3809 +msgid "This is called by repeatedly specifying the flag:" +msgstr "" + +#: ../../ext/commands/commands.rst:720 +#: 8b29c4c6720648d38f2a568216ddfb9e +msgid "typing.Tuple" +msgstr "" + +#: ../../ext/commands/commands.rst:722 +#: 885f6f663dfb47b4a25f4c3cc0a703d8 +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "" + +#: ../../ext/commands/commands.rst:736 +#: 843f4bf315a34e7cae7e40f5ee256109 +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "" + +#: ../../ext/commands/commands.rst:740 +#: 40f2697e104e445c9fcc969725c14d4e +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "" + +#: ../../ext/commands/commands.rst:751 +#: 9db24b481c4d46e2bfa6afe2add40360 +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "" + +#: ../../ext/commands/commands.rst:756 +#: ba0ee993018246da96bd9c3e81676795 +msgid "typing.Dict" +msgstr "" + +#: ../../ext/commands/commands.rst:758 +#: a8ae009b053846efa18a133112ab62a1 +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "" + +#: ../../ext/commands/commands.rst:765 +#: bc61f9d1ddef4471be4891bddb9c09fa +msgid "Error Handling" +msgstr "" + +#: ../../ext/commands/commands.rst:767 +#: bf56a9433566476cb8376ca10f51d027 +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "" + +#: ../../ext/commands/commands.rst:770 +#: 2a05152d6bf84317ab95ae2560b075bb +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "" + +#: ../../ext/commands/commands.rst:774 +#: ef55bb05708d4afcbde2b1e63982f33d +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "" + +#: ../../ext/commands/commands.rst:790 +#: 963d52d0558e4331b43c492f46fa70d7 +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "" + +#: ../../ext/commands/commands.rst:794 +#: 80c197d18789467fb4a077f7dd6d612a +msgid "Checks" +msgstr "" + +#: ../../ext/commands/commands.rst:796 +#: 6385fb377ffb43d087b788f62480b7f8 +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "" + +#: ../../ext/commands/commands.rst:800 +#: 90ab3c4a75024d579205f055a8794bb7 +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "" + +#: ../../ext/commands/commands.rst:803 +#: a6623c48167943e79f6a8b60f467d264 +msgid "Return ``True`` to signal that the person can run the command." +msgstr "" + +#: ../../ext/commands/commands.rst:804 +#: 0dea62b4176043998aefe9cac5132676 +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "" + +#: ../../ext/commands/commands.rst:805 +#: 87ac00a762c44d85aa555a32c00abbc2 +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "" + +#: ../../ext/commands/commands.rst:807 +#: ab29e9a85151443fba8fc98d3c272a56 +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "" + +#: ../../ext/commands/commands.rst:810 +#: bf9b734bf41d496a8cab527d2f5982a8 +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "" + +#: ../../ext/commands/commands.rst:824 +#: 78a6e2319b784e57b1564ecf7e34b49f +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "" + +#: ../../ext/commands/commands.rst:841 +#: fec2c90754cb4ca19551a1fca47dae06 +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "" + +#: ../../ext/commands/commands.rst:851 +#: 731344d1c242492384f42d6376ad3b07 +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "" + +#: ../../ext/commands/commands.rst:867 +#: 0a3c34ae9c0d4b6392a9b04d5d36f5dc +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "" + +#: ../../ext/commands/commands.rst:869 +#: edec23dfc5b3498caef57c62a9315264 +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "" + +#: ../../ext/commands/commands.rst:887 +#: 9447373776c540b194831a3f6b7d4f5d +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "" + +#: ../../ext/commands/commands.rst:913 +#: cef95191baf442dea17daa9019db6a10 +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "" + +#: ../../ext/commands/commands.rst:916 +#: 30ab1860927f45f6a807fbfb9a671bed +msgid "Global Checks" +msgstr "" + +#: ../../ext/commands/commands.rst:918 +#: d6aa174f32114ba5bec3c650983fce91 +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "" + +#: ../../ext/commands/commands.rst:921 +#: 864c9abc219b4f689672f5e30a68d47b +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "" + +#: ../../ext/commands/commands.rst:923 +#: 1ea11f45d1814ec8912e90d0390ef694 +msgid "For example, to block all DMs we could do the following:" +msgstr "" + +#: ../../ext/commands/commands.rst:933 +#: 3a2a1fb8a3cf4b48b42209cf4f80bb61 +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "" diff --git a/docs/build/locales/ext/commands/extensions.pot b/docs/build/locales/ext/commands/extensions.pot new file mode 100644 index 0000000000..6c54c918ac --- /dev/null +++ b/docs/build/locales/ext/commands/extensions.pot @@ -0,0 +1,97 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../ext/commands/extensions.rst:6 +#: 11a3dae9fe1c4db2baffa8e52bb87925 +msgid "Extensions" +msgstr "" + +#: ../../ext/commands/extensions.rst:8 +#: 3fc6d3b82099427188caf088434f07d8 +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "" + +#: ../../ext/commands/extensions.rst:11 +#: bff72545dea84615898459176c227829 +msgid "Primer" +msgstr "" + +#: ../../ext/commands/extensions.rst:13 +#: a5c7cefb93c340738086ceb82d719d19 +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "" + +#: ../../ext/commands/extensions.rst:15 +#: b37c970baeb94c608f23fae4c5d6d128 +msgid "An example extension looks like this:" +msgstr "" + +#: ../../ext/commands/extensions.rst:17 +#: 5cd7440657e24c0fb0725a2812f35088 +msgid "hello.py" +msgstr "" + +#: ../../ext/commands/extensions.rst:30 +#: 30f94a1e54d9426fad010da9c908c02e +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "" + +#: ../../ext/commands/extensions.rst:32 +#: 1795f2297a5041ac844add5bfcc88d3f +msgid "Cogs" +msgstr "" + +#: ../../ext/commands/extensions.rst:35 +#: 7c01406819564f4ca4a2656c49cb2f0f +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "" + +#: ../../ext/commands/extensions.rst:39 +#: 98dd5e13250045039e1a563db8bfea2f +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "" + +#: ../../ext/commands/extensions.rst:42 +#: 489bef81f93f4304b279bdd12bfc9338 +msgid "Reloading" +msgstr "" + +#: ../../ext/commands/extensions.rst:44 +#: 650562a4f9b2420788d14c656036f668 +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "" + +#: ../../ext/commands/extensions.rst:50 +#: e9fb9d0f34b842d1a12b88b29236c81b +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "" + +#: ../../ext/commands/extensions.rst:53 +#: bd94882163b141b38360855852e799d3 +msgid "Cleaning Up" +msgstr "" + +#: ../../ext/commands/extensions.rst:55 +#: bb55f99d145d43c6b21bc41ff14e7f14 +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "" + +#: ../../ext/commands/extensions.rst:57 +#: 7d0766fd4f7542b09453f795836c0ad3 +msgid "basic_ext.py" +msgstr "" diff --git a/docs/build/locales/ext/commands/index.pot b/docs/build/locales/ext/commands/index.pot new file mode 100644 index 0000000000..4729cbef7d --- /dev/null +++ b/docs/build/locales/ext/commands/index.pot @@ -0,0 +1,27 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../ext/commands/index.rst:4 +#: 411aa48dd0464f02b4c2121068b0fa3b +msgid "discord.ext.commands" +msgstr "" + +#: ../../ext/commands/index.rst:6 +#: 65489e71ff11461f87742161290cc9c6 +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "" diff --git a/docs/build/locales/ext/pages/index.pot b/docs/build/locales/ext/pages/index.pot new file mode 100644 index 0000000000..ec4a6a37c5 --- /dev/null +++ b/docs/build/locales/ext/pages/index.pot @@ -0,0 +1,1257 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../ext/pages/index.rst:4 +#: 2437ba416cf848d9a3d8222dc9eb281b +msgid "discord.ext.pages" +msgstr "" + +#: ../../ext/pages/index.rst:8 +#: 5cdbc5387d524c98acf4e627941314f8 +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "" + +#: ../../ext/pages/index.rst:10 +#: 1bdddfae47c249d2b2299c043a10b84d +msgid "Example usage in a cog:" +msgstr "" + +#: ../../ext/pages/index.rst:292 +#: 9e46b970fe514e50ada40895294dd205 +msgid "API Reference" +msgstr "" + +#: ../../ext/pages/index.rst:295 +#: 5d9b9cc1f79549f38b8a4d3b2f0be4c8 +msgid "Page" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page:1 +#: bd25b5c331004759a671ad50a0fb4b41 +msgid "Represents a page shown in the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page:3 +#: ae8bacdd6f74434091d786f43b97b4e3 +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "" + +#: ../../ext/pages/index.rst:0 +#: 697e50f1545c45f4b9e7370baba6fb36 +#: 9a2b6c56e51f47e6b866350220f8c0f6 +#: 1ed97b7d592d457e91f0607e776a78d6 +#: 5d0da1f34118460c8f4eddf4eedb0437 +#: beac103455d843ac836e933650a4dd62 +#: 063bbc6f3e424780b3fca294ca70043c +#: 001d8bed52f640e6b65faeb5e57cd564 +#: ac20d3e78ca94a39857c8376d4001b92 +#: 99a76d768ef6423e9a3952a8dec21a78 +#: 422220e75757468b9e523551808c390d +#: 5526f25c16e840daa4ff844390a50843 +#: c11dd90c56d64c83a8bbac2e2b0f341e +#: 6a04ca7a36094db29f14c6fe2ce8b176 +#: df1997f923f64977a58153c7935dca20 +#: 6bf63b66304d4c34b3dee842785b34c1 +#: 341e6342cd654d72a002d8bc1bbf025a +#: c6df38aa49414da5a6de205f703db624 +#: 655fc98117b74364b87cb5d49111b23f +#: 13ad2f1d0c7641d59bec5738903ebd38 +#: 6e0c755cc95c460dacb7bb287f7856fc +#: 0e9e89efe9e643c3acc962e0648c89a5 +#: 34ba1e0e3f634a529e2461c1c8d10b16 +#: 4ebe1f73ecfe4d27aff3c7e8aca24bfd +#: 09ddd6dd6d764f9d8afa0a4291730274 +#: 4c13c6d74aac47ba8b3ab6fc503d4c08 +#: c1d3f802b5e54055a23682050656d600 +#: d5bca9a9f4e3404884791ef3d4aca196 +#: f2a2b2cd04354ce2b4dbcb6e77dd1bd1 +#: 5a2d03e908f5498ca371e47073d60077 +#: 148f4b586e154d7b9784cf4e6149b19c +#: 0ee33849feaa4e1c9b968a1b176c4840 +#: 075fafed1a384290b249cd03322da598 +#: dbf01b3b2c5841ba9be4972edf38c752 +#: 5d6bf83ea6804891811293d85965e471 +msgid "Parameters" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page:6 +#: 11cf6e703d674e4b84c439e1aa100391 +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page:9 +#: 838dc022445d4c7288ddb26f9b9e7b79 +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page:12 +#: 7863a87aab514116a1c91370164c4eff +msgid "A list of local files to be shown with the page." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page:15 +#: d9743329c81241099f5684a505c85dd2 +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page.callback:1 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.interaction_check:1 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton.callback:1 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorMenu.callback:1 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_error:1 +#: 0ac477cf619c420fafdaac5b6a1fbd18 +#: cfc9f4305077455fad6922d274bc383d +#: 0e2e6db2218f41dc81c2bbdf0354cbe4 +#: b2df49c3af9a4c74bb099b83349ddcfc +#: 5d024d19341544b2a7a40d0969eef03e +msgid "|coro|" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page.callback:3 +#: 00e243c7a32046b3bb334815364cd744 +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page.callback:6 +#: a43956ce2cc443b4a7dc593c11685574 +msgid "The interaction associated with the callback, if any." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page.update_files:1 +#: 14dc2bbbfd654ccea6ef76d9d586e887 +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "" + +#: ../../ext/pages/index.rst:0 +#: be696f9851b549dc9e9ac50b6f55f198 +#: 5f9e2f91dd6f4ddf8aba9945c851a7d0 +#: 89185399683243b8a8161ef2321fb944 +#: 2b3e3b8a6018461984a424487aa9e6ab +#: 4cee4928e1df4606b6ef905abbd63533 +#: df303e968a55460b84813fa21867fc46 +#: 7fae07446dae40adbe93cfc309708f70 +#: d4e5702bc04a4bc4b7641557751fde48 +#: aeb2988a559840d3ba83ac47b72253f7 +#: 550c48f6c2e1423ba8c77b021dbb3dcd +#: e5bcc53a42f240c9b5ff34f27d6f0bc4 +#: 2aef4bef743e42c6b10dc7dc409dddee +#: 44df48e0960e411391d8959fd9d11450 +#: b17d3a717a7c43bfbf6a28db9c9e8847 +#: 371cb60b44484310bd22f6a9197741e9 +#: 0df6b7d0cf984f17843c219c54453fdd +#: 20aa4fd3a1ba4a329e930300f1bfec70 +#: 08830e24540a4075a566ce6b6055bf58 +#: 1f00671156554ebb8b1e8e178a7e76bb +#: 38bb18eb66264addb0e210e066903922 +#: abda4ea8404f4fd1b6ff60b850d9f36b +#: a97d7cfc0d8547fba1a07c473d6aa220 +#: 68cd1cac42dd4ab384b9d993fd5b3d3d +#: 8b422ca21de24735a81d7c356e107d08 +#: 4d583655849d4c3eae271f096ea6e32a +#: d5396ed79c0a49578511de018e0b2963 +#: 1562ad6d689b4e78a93104700ab3429f +msgid "Return type" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Page.update_files:5 +#: c00ec830bb5c410f8a62d21db42e50e4 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.Page.content:1 +#: ffe769a89ef340cd91dac029ddf8a270 +msgid "Gets the content for the page." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.Page.embeds:1 +#: 4a20614242ff49c98c15934b6aacaea9 +msgid "Gets the embeds for the page." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.Page.custom_view:1 +#: 734b759d6f34415790c449280122f7c0 +msgid "Gets the custom view assigned to the page." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.Page.files:1 +#: c7ec9a0c9bf34cc8831e0cedb813b560 +msgid "Gets the files associated with the page." +msgstr "" + +#: ../../ext/pages/index.rst:303 +#: 35d41aaa665649e88470e1f4d3913ae4 +msgid "Paginator" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:1 +#: fd8a1d163c3a4ee1945a7434adfec3b8 +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:4 +#: 8cda8ae5c6884250afa6014ccd2d1518 +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:28 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:9 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:8 +#: c1ef75e202bf43d089126729e2fbfa5a +#: 9db02074d9c94a49bb0521fec4c63a78 +#: 9862f559cf4d46f7a8dddfd90b6913db +msgid "Whether to show disabled buttons." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:31 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:12 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:11 +#: 20144622344a4ac6a82ba99b28691461 +#: 7bae99044a5a4aa9ab38e9546c5f3427 +#: 9f7169cd5e0841edb66e3b4afc357032 +msgid "Whether to show the page indicator when using the default buttons." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:15 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:14 +#: 7350d44eca9e4b60ba03f3756966c84d +#: 87d7b2f7eda64012b345e45181b5aa9a +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:18 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:20 +#: c80991802f7749b7997151be89ffe3ac +#: 48cdaafe961448ea8435a914b65d59b1 +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:34 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:22 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:17 +#: bfd67da67dc84a2db829bcfb79ae099d +#: 899bfeaaf84b4233aa6a174ab45803d0 +#: dea0f3e5ef3c4c6ea0067ef707954f13 +msgid "Whether only the original user of the command can change pages." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:37 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:25 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:24 +#: cf4e82cd445643499f51a23de19eea56 +#: 779b82d3374f4bab948e1fe6d9fedd84 +#: f55070f9c63b4f438d22e271d923e292 +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:40 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:28 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:27 +#: a97270c704f840a79d3a26539fa11c44 +#: 9d80446d78c74078828826d8fad283fd +#: 7c8f9e0762e4471a8f475ad877770d3f +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:43 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:31 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:30 +#: b521eded949b46f39de788085cad3ac5 +#: 3d89ab0ca1ca4ddf95a66e1052b1416b +#: 359dca5b47f9408b86cc5b913f19ae1a +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:46 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:34 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:33 +#: d4e55005744346dfa8bec1e681ba7b61 +#: 28f65f81ba3a46e6aae6abe2d4ff3ef1 +#: 98a9d82f780e433d8df62c12f3ba9583 +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:37 +#: 4d2ba455eeef4ae0be01901805d02dde +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:52 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:42 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:39 +#: b4dd779623cc447686e75ded05b049d5 +#: 7cfd82ebd0c3445fbc2e87f9cc91d6c9 +#: 060cb092dcd84afbab1654c4a673ae40 +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:55 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:45 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:42 +#: 53a7f7e412d544caa4ea3554dfcd74c2 +#: fcff089de6814bc8b2b2bbd270418f40 +#: 61407496e9e345548b4662bf9c3f4420 +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:59 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:49 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:46 +#: a606dd1d1de94ab685aa1d8ce6e80fb8 +#: 554037abcf4f47588ac9452c56ce0e92 +#: 3724bfedfe9d4166b773ce52f6f96b10 +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:55 +#: 756df0e58bf4427d9c783f16cb3c0e4e +msgid "The page group select menu associated with this paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:0 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton:0 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorMenu:0 +#: 3bf364dda08e4407b362896b9f58c12d +#: 0018653201484c08a1efb39a95e5496a +#: 95024e9505d948148493ddafe8b895de +#: db10884582044f4e9c0b780d876ae769 +#: 10fc8a4ebd814531a213613eb9c1a227 +#: cf1fd8809876457cad8b65bb8ecdff62 +#: 5ab60fb665a04f979c0831942086c3de +#: 370e4876a6f44d2fb97522e2d6436744 +#: 6463e465ccd0446d997680daed481da6 +#: 25f5deaf82234969896d2ff9af594576 +msgid "type" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:57 +#: b4c0337d404a45e8892fe156cc9bd943 +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:61 +#: f93be253c778483880b98ed031460760 +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:63 +#: bf99cdb634044fbdaa3eb8afab3539a1 +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:67 +#: ebe7495d7a554db8911766d9a94dda30 +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:70 +#: 9427ff2e436a432290830b7a5ed07653 +msgid "Optional[:class:`int`]" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:74 +#: ce115ee07db249d3b02b2739d39dfb9f +msgid "A zero-indexed value showing the current page number." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:76 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:82 +#: cd1000c6b1654d0f856cdf9321d03a5c +#: 2ac3cef8cda94569a45f9c40a7419fcf +msgid ":class:`int`" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:80 +#: a3dcbf307b9f4881923e5a7270193d27 +msgid "A zero-indexed value showing the total number of pages." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:86 +#: 4e8469fd89304c68966aad2f8bc27030 +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:88 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update_buttons:4 +#: 603b801b380945289ad846d62a25d0f3 +#: 6f163c5ef9af46fb96941b6d6f597e70 +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:92 +#: b8fbd37143be495fa07f7afd6e225bee +msgid "The user or member that invoked the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:94 +#: a193d3a3f88146cdbc98453f06ba4224 +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:98 +#: 3434a6aec3d144e28ca23d5691b76c64 +msgid "The message the paginator is attached to." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator:100 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.respond:25 +#: be60611a1e5f4142bc4e8c2825ad0bce +#: 249266a0e6c24ccdbd83f6d3b93049b7 +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:1 +#: 02e566c042de48b1841f604571514d29 +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:4 +#: 429d25bcb3884adca03177c1cf56439d +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:36 +#: b3c853535a3147128ef4397cfa4c2631 +msgid "A custom view whose items are appended below the pagination components." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:50 +#: da4ea72df96a4fbe99896196a3b51693 +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update:54 +#: 32cf976654204696bcf4a6210302ffe3 +msgid "The initial page number to display when updating the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.on_timeout:1 +#: 0a8139d4555647b2bb348dabbddcbc6e +msgid "Disables all buttons when the view times out." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.cancel:10 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.disable:10 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.on_timeout:4 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.page_action:7 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.add_item:10 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.clear_items:4 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.disable_all_items:7 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.enable_all_items:7 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_check_failure:9 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_error:18 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.remove_item:7 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.stop:6 +#: 68e2cc93f0e6490b8f2f6cee4790cba9 +#: 718868e38cac43a586cfbd4a6305d236 +#: c2fbf9bef8224850b4afa5ea4c5afbc2 +#: e63b8fb4db3b4bee81d67b79af441412 +#: 3c63f3adb2364adead3012e035129ebc +#: a7be2bff8d9e4794b701800978b38389 +#: 128c5298c9494f91a4b3f649fa6df996 +#: 948ff3860b7449e189966372f0999657 +#: 1b99936247fa444d8f760ffecb3bfbeb +#: 73506917c2ae4d10839ac863f15c0649 +#: b6e8b71f2e914b7aa52f4bf5895f9498 +#: e7e7b98e6e7b4408b492675432ece6e4 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.disable:1 +#: 8d470e192c8f45a28576b5da00104921 +msgid "Stops the paginator, disabling all of its components." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.disable:4 +#: 1c19001e498d4934b264501cf3f195de +msgid "Whether to disable components added via custom views." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.disable:7 +#: e09e9f0034204fa084519c19526ececf +msgid "The page content to show after disabling the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.cancel:1 +#: 385f026c4c984195899345daeff900dc +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.cancel:4 +#: d92a2abb21bd49f0b1a6c02cb2f1b83a +msgid "Whether to remove components added via custom views." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.cancel:7 +#: 5ced813a67dd4e249de76fa20d2cbfe4 +msgid "The page content to show after canceling the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.goto_page:1 +#: 273705cd08924bcc81e0fb7eb24ab41f +msgid "Updates the paginator message to show the specified page number." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.goto_page:4 +#: 86705ad6d652450a8187cf631ecc4aef +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.goto_page:4 +#: 8e4069b66dfd41f9a73acb1874a5723d +msgid "The page to display." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.goto_page:8 +#: a05df0eb26fa4b9ebaf18d70d4d979f2 +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.goto_page:12 +#: b46a6169ff5b433981d54d5239460cc7 +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "" + +#: ../../ext/pages/index.rst:0 +#: 23d2d513e75249be834c3da0e3806faf +#: 433ab35ccdc34f8a8721f26b0e699f02 +#: 60cad8cd26d448e497604cad7a23855a +#: 9d3a83013ff043eda39a19a8533e2db2 +#: 071b3f2f83194ecb863f34a81f2b7318 +#: 5b58697a956a4cf4a58ce5a800e4deb1 +#: afe45ade9581404fbe8fb11422546746 +#: 7194b0de3a6c48f09395740786c65dfe +#: b76f2a1bbef34d9e922ff8ccd944e554 +msgid "Returns" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.goto_page:16 +#: 395be673321547f88323e638d86c0bbf +msgid "The message associated with the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.goto_page:17 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:35 +#: b6dcdd3d4ca34722a9e4b56af3acc19c +#: 1e69c14db8ce48d48ba9c2d633221880 +msgid ":class:`~discord.Message`" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.interaction_check:3 +#: 9bde443dec424572b5043c1a1666c470 +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.interaction_check:6 +#: 1ab2878c6df045968a80c9a6132ff611 +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.interaction_check:9 +#: 74ea1075550e4bfead0fa3cc3dedbcf3 +msgid "The default implementation of this returns ``True``." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.interaction_check:11 +#: 327caaf61c324a10a0dfaf64d5f4e77b +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.interaction_check:15 +#: 504f795f741c495fab7278de056195c6 +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.interaction_check:19 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_check_failure:6 +#: 62c2722e6b6a40fd8c8a215d7cb11a21 +#: 616d5c00eb544301af1b0d00548c865e +msgid "The interaction that occurred." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.interaction_check:22 +#: cf58c9c3031c44dcbcc4d6428b2e79ca +msgid "Whether the view children's callbacks should be called." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.interaction_check:23 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.wait:8 +#: c5464d8a113b4293be79478ba33f200d +#: 607f9270f774451e96d48d6a223876de +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.add_menu:1 +#: 3cb43fceb24a4303a7740545bbb7404d +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.add_default_buttons:1 +#: abdf9feeb622435d94c856d8fcc2d2ff +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.add_button:1 +#: 16033ccfd3734326b67553524cb67b97 +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.remove_button:1 +#: ac7bec46e3714d67afca04109440ae90 +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update_buttons:1 +#: 4658b4a4f750447183ee2ecd2cbaadfe +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update_buttons:3 +#: c2d8bc65b789479db1e60116d49bab98 +msgid "The dictionary of buttons that were updated." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.update_custom_view:1 +#: 638eaa550f0547419dffb949d7e9ceb6 +msgid "Updates the custom view shown on the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.get_page_group_content:1 +#: 997aaa398a3a43b6b53b595557fe623b +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.get_page_group_content:5 +#: d51ced468afd49acbb4cf1d506cd4f1c +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.get_page_content:1 +#: 0ee5e3fd03144afb81fc1a6c6c12210b +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.get_page_content:5 +#: a0ccbe1c8fc4425295588d16116d15d6 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.page_action:1 +#: 5de60ff973594979bbbebf60e8de1154 +msgid "Triggers the callback associated with the current page, if any." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.page_action:4 +#: 12777550042c4fc88db802149be1f8c1 +msgid "The interaction that was used to trigger the page action." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:1 +#: d38f6b90fb214fd2a38c0598a305e9a6 +msgid "Sends a message with the paginated items." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:4 +#: abf2c08783684a009f6acb497aefbc07 +msgid "A command's invocation context." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:7 +#: 6b819a6920f04efdbefbc83eff28faaa +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:10 +#: 9630cacaacc24ddcb6ffc7702609685e +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:13 +#: 867846727c0943ff80115b0482336ac1 +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.edit:17 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:20 +#: fba3e242c89c4eefab5d66255b0cf54b +#: 65b0b09d70bf4e49b640609c5e99a404 +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:28 +#: 060f7bfa5d004b3d86d6a1c172bba770 +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.edit:25 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:31 +#: f202d710e2904f8a8f758be7d1f8e13f +#: 669ef73d878345249fe2920dcef25bb4 +msgid "If set, deletes the paginator after the specified time." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.send:34 +#: ac39d8da08a34f0dae55de6f23200c09 +msgid "The message that was sent with the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.add_item:1 +#: 0d286971aaf84f359ea3f2b868341679 +msgid "Adds an item to the view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.add_item:4 +#: b596145e148445798536949956fec5b6 +msgid "The item to add to the view." +msgstr "" + +#: ../../ext/pages/index.rst:0 +#: db25be38ef7749eab275cfcf7ce4fb30 +#: b67cd9be980a4fdf8e179a3825ce7070 +#: 9f2e580e981742ac800ab0c0ffa636e3 +msgid "Raises" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.add_item:7 +#: 799eb95c1d8f40df9edcf9e5b694789e +msgid "An :class:`Item` was not passed." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.add_item:8 +#: e69d7b97a3c8409c8efd81ad1626f25d +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.clear_items:1 +#: f7b8e5d7c4304348abcbfbc505545cf3 +msgid "Removes all items from the view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.disable_all_items:1 +#: 1a4ac6f032f5427aab3f14952bb0a9ae +msgid "Disables all items in the view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.disable_all_items:4 +#: 115ed036dbed4b93bf59511d61482bc4 +msgid "A list of items in `self.children` to not disable from the view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.edit:1 +#: db376aa4460347ecaa0cc6a71294ed64 +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.edit:5 +#: d041a66736ff473ea7a033d2a180a519 +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.edit:8 +#: 698e3ece2a734f139df7af407e051dc5 +msgid "The message to edit with the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.edit:11 +#: 8eb175cbee9947f89eee0e3239a53d93 +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.edit:28 +#: 441faf97de83480f8e9acd0688378a8c +msgid "If set, changes the user that this paginator belongs to." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.edit:31 +#: b9b96a33a4134ec08e531b25ce552a7b +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.edit:32 +#: bde2084b48ec4c9787e78682dcc81fb5 +msgid "Optional[:class:`discord.Message`]" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.enable_all_items:1 +#: 5529aa1751fe48a1aac3071120fe5b99 +msgid "Enables all items in the view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.enable_all_items:4 +#: b115fab8e9f441ae97058262b47e4eeb +msgid "A list of items in `self.children` to not enable from the view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.from_message:1 +#: fb9fe3622ae9490eba53b40685382759 +msgid "Converts a message's components into a :class:`View`." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.from_message:3 +#: a5239e55bd5d43f5831e3e995120db1d +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.from_message:9 +#: 5e13e4d3661642fd8e02726cc001660a +msgid "The message with components to convert into a view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.from_message:12 +#: 1830d4b99a8e451d8fc931733f8bfd68 +msgid "The timeout of the converted view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.from_message:15 +#: 9bc9774d4bd74c418de1d9b36c3c5c8a +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.from_message:17 +#: 086f552dd0d342c290385bf3bdf985ab +msgid ":class:`View`" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.get_item:1 +#: b2a30fc2dab449648d3ccac33a6713a4 +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.get_item:4 +#: 39c8c0f1510244288c5734268ff2ecfc +msgid "The custom_id of the item to get" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.get_item:7 +#: d3278dd56b5e4104b98070ea85764693 +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.get_item:8 +#: 49f9aab462e146199bb0ad2eb8987e74 +msgid "Optional[:class:`Item`]" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.is_dispatching:1 +#: 1d7e2b0e1c18422c9227cbe351a94a36 +msgid "Whether the view has been added for dispatching purposes." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.is_dispatching:4 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.is_finished:4 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.is_persistent:7 +#: 47016b19dd1741b1a063b2f5068dd3ec +#: e528916f3a854bc58c88136808c5e02c +#: 7ebc8aa9eb5a4749b302688f0898a9bc +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.is_finished:1 +#: 37860b521c8143f3833fb4beb0a1a2ea +msgid "Whether the view has finished interacting." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.is_persistent:1 +#: 8fcb089aef584d57b8d0165e8a22048e +msgid "Whether the view is set up as persistent." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.is_persistent:3 +#: b1fe671c39f5430baade51f464b8eaf2 +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_check_failure:1 +#: 26ea98091eed4b37a02e4fb299ce6413 +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_error:3 +#: de6e9c49e57d45b2a3a59296cd5da7c8 +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_error:6 +#: bf46d9fcc45d4f1b885a743615cbd049 +msgid "The default implementation prints the traceback to stderr." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_error:9 +#: 955a74f46d014b4db4a84da5f9e43c02 +msgid "The exception that was raised." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_error:12 +#: f882a5d3e3cb47b1bcf9d7c720cf97d7 +msgid "The item that failed the dispatch." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.on_error:15 +#: 0eaa94893f944a62a87305a25f22ee07 +msgid "The interaction that led to the failure." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.remove_item:1 +#: cb2bb9fa0f2d4adf8ae284983f41b8eb +msgid "Removes an item from the view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.remove_item:4 +#: 13af2b65c7a6448b89c506d4b733b44a +msgid "The item to remove from the view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.stop:1 +#: cd3fd1e5c76042c8896020ad68e3d6ed +msgid "Stops listening to interaction events from this view." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.stop:3 +#: da2a7c40b68548eea51cd5f66cd11ea1 +msgid "This operation cannot be undone." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.wait:1 +#: a7fd726fe8824da08c1ef4726cb85e56 +msgid "Waits until the view has finished interacting." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.wait:3 +#: 2c6c8756f7ad4b758c243288a6f448be +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.view.View.wait:6 +#: 3c69a4b00f914f128f11aa2b8240d061 +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.respond:1 +#: 5a13e5a534e2484180375a59f828dadf +msgid "Sends an interaction response or followup with the paginated items." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.respond:4 +#: da2b82bc0dac4e5e9ffff1e289a0efc3 +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.respond:8 +#: f5d2bd10e4864a64b7bb4175916dc97c +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.respond:8 +#: a5b209f9e41c40668aa22f24ab3cc043 +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.respond:13 +#: a5a9d6f0eeae435e85be10f33420ae78 +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.respond:17 +#: 050718b89ecc46ca8d2bc5eb98e6e72c +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.respond:21 +#: 095ca86d10b7456e90419b5b5023b0d3 +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.Paginator.respond:24 +#: bd17bd959c86463c8dc7581e9843ad82 +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "" + +#: ../../ext/pages/index.rst:312 +#: 20630bd0e40b4eeaa17398c49bc9c715 +msgid "PaginatorButton" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton:1 +#: 9d89624578c7499fb29f824d9a4a0336 +msgid "Creates a button used to navigate the paginator." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton:4 +#: ef90e083b4c24a29b99dc4bbe2197f46 +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton:8 +#: d839761b333045e49f5c7ae824615764 +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton:12 +#: e3c16ce4afa94d8099e73c3985fde852 +msgid "The emoji shown on the button in front of the label." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton:15 +#: 33acfd60dff04f368d4eced4ccde5acd +msgid "Whether to initially show the button as disabled." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton:18 +#: 629096497ac84fc69a4ff620e40e46ff +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton:23 +#: 5161e3d1f2ea4042bcf7f389c9cb86fe +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton:26 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorMenu:12 +#: 65b16c206cc54c01a115ae6dd829d2c1 +#: f24f43ef85fc4fa49db3873d9f486199 +msgid ":class:`Paginator`" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorButton.label:1 +#: 19fef157664f4c64a9b773232fe202e6 +msgid "The label of the button, if available." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorButton.emoji:1 +#: 9b573729b4a841b88ca87d1314759096 +msgid "The emoji of the button, if available." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorButton.style:1 +#: e095e568418b49cdbbac418b65bddc4a +msgid "The style of the button." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorButton.disabled:1 +#: 73ee32fb4f884db8a2baaec52956a4ff +msgid "Whether the button is disabled or not." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton.callback:3 +#: b2dbc527cb194711bb5c77bedc10c1e1 +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorButton.callback:6 +#: 9b2955fae778492b859452b34a58b65a +msgid "The interaction created by clicking the navigation button." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorButton.custom_id:1 +#: cd80cb2731d3486b84b9c1a19aed382d +msgid "The ID of the button that gets received during an interaction." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorButton.custom_id:3 +#: 57fd2e9ba90f45fc9504e7438dbe787f +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorButton.sku_id:1 +#: c87c8240e5dd4ff69d19866fc6522c5f +msgid "The ID of the SKU this button refers to." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorButton.url:1 +#: dda9b3885e0a4250979ffbca77e592f9 +msgid "The URL this button sends you to." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorButton.view:1 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorMenu.view:1 +#: 779b1ffc73854c80b1b87b3fb7b03228 +#: b3dc3a0e33de4930b09c6128690cc85b +msgid "The underlying view for this item." +msgstr "" + +#: ../../ext/pages/index.rst:321 +#: bbee89d0c8f54cddb8d204dce6e729bd +msgid "PaginatorMenu" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorMenu:1 +#: 11ee7599b2af45e69b577929e02558da +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorMenu:4 +#: 93f0b0f5f5344cd7917004ed6c17ade5 +msgid "The placeholder text that is shown if nothing is selected." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorMenu:9 +#: 733bbd198a724ff89d849e17bb4464ef +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.add_option:1 +#: fd0f251caa31466f86f28a963b80e74e +msgid "Adds an option to the select menu." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.add_option:3 +#: 0ef246583a96465ab9a2662925dea262 +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.add_option:7 +#: 7debbe68aa84435e8200d7e2981cd202 +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.add_option:11 +#: 08e93f8f2b6b4e2e9bc8a54af7e9cabf +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.add_option:15 +#: c8c94a6f3925491fbdbfc616e9f7a4bb +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.add_option:19 +#: 03aca7b4fad14c57a7cec8d245b4958b +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.add_option:23 +#: e73c3cef480d411881ff3001d10f64f4 +msgid "Whether this option is selected by default." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.add_option:26 +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.append_option:7 +#: 8aa241191edb441496f0c1bd02fe0da0 +#: 39baed4852504458b9d8d46f72c39a2a +msgid "The number of options exceeds 25." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.append_option:1 +#: bafa80d0afd248d4b54b80365d46b82a +msgid "Appends an option to the select menu." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ui.select.Select.append_option:4 +#: 2d8599f9eca74a0cb9cc8f88c0406158 +msgid "The option to append to the select menu." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorMenu.channel_types:1 +#: 97d6790260324dad936de6871ef37839 +msgid "A list of channel types that can be selected in this menu." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorMenu.custom_id:1 +#: d75ecd6ec9e44825a919ca427b5ec5e4 +msgid "The ID of the select menu that gets received during an interaction." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorMenu.disabled:1 +#: 4ca8076e7aa84cf0959662de2d2070a3 +msgid "Whether the select is disabled or not." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorMenu.max_values:1 +#: 89964f8198b14cc49d9b7ab8b6b5b5c1 +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorMenu.min_values:1 +#: 63d719dbf42149e1ad7e9107549a1c8e +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorMenu.options:1 +#: 6323c7b02d2242bfaec760b147775d6d +msgid "A list of options that can be selected in this menu." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorMenu.placeholder:1 +#: 2360c22bf0db488ea313baf24fc77930 +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.PaginatorMenu.values:1 +#: 1a9c671416ff416a8098e527e4238487 +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorMenu.callback:3 +#: f77011c86cae47989890beafa1381460 +msgid "The coroutine that is called when a menu option is selected." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PaginatorMenu.callback:6 +#: b46da7fdc2e2499f8b9c9229a1d4258e +msgid "The interaction created by selecting the menu option." +msgstr "" + +#: ../../ext/pages/index.rst:330 +#: 729faa6949a64481845ce15d9de049be +msgid "PageGroup" +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:1 +#: 0f19f3e8fcae4dd2b7871b731090eeb4 +msgid "Creates a group of pages which the user can switch between." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:3 +#: ddf81666476e43c1b66bac8ad7016d82 +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:7 +#: ecc0ed43087e49ce9f6bc57ac582a2cb +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:11 +#: f44c1d50fe2241ae90bd68f0b86bc490 +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:14 +#: 618c8dc7c14745af8932b5e444a46f47 +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:18 +#: 6233ba31ec5d4ae6a3e21fea5df4fd03 +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:21 +#: 406c3c7333924c1a928efb524d4d59b3 +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:24 +#: 640d81823b8945488f29aa310f7b50fe +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "" + +#: ../../../discord/ext/pages/pagination.py:docstring of discord.ext.pages.pagination.PageGroup:49 +#: a0d57e1edeaa4012830f0df83c584427 +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "" diff --git a/docs/build/locales/ext/tasks/index.pot b/docs/build/locales/ext/tasks/index.pot new file mode 100644 index 0000000000..11580d8fb6 --- /dev/null +++ b/docs/build/locales/ext/tasks/index.pot @@ -0,0 +1,530 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../ext/tasks/index.rst:4 +#: 59da74174e4c4214b076a3810bb95fe7 +msgid "discord.ext.tasks" +msgstr "" + +#: ../../ext/tasks/index.rst:8 +#: 3ac09d081ea348e789447c5199809ff0 +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "" + +#: ../../ext/tasks/index.rst:10 +#: 8db3c338d0cb4abfb5af02b5480fa3a1 +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "" + +#: ../../ext/tasks/index.rst:11 +#: 436e65611b4a47c4996463b1bd23c9e5 +msgid "What do I do if the internet goes out?" +msgstr "" + +#: ../../ext/tasks/index.rst:12 +#: 3e307085fe7c497c92cedd058ea8917f +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "" + +#: ../../ext/tasks/index.rst:14 +#: 555b5e79b7f74c039e7bf6b0dc625f26 +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "" + +#: ../../ext/tasks/index.rst:17 +#: e46a6ded9da3444a8831a4322b89eec3 +msgid "Recipes" +msgstr "" + +#: ../../ext/tasks/index.rst:19 +#: d1eb26160af441c3ad80b0ddacfb1db5 +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "" + +#: ../../ext/tasks/index.rst:38 +#: a7a08f1d572b44eda5576c51da81582f +msgid "Adding an exception to handle during reconnect:" +msgstr "" + +#: ../../ext/tasks/index.rst:61 +#: 16a5fd6c73024a8aa67e2197954b283c +msgid "Looping a certain amount of times before exiting:" +msgstr "" + +#: ../../ext/tasks/index.rst:77 +#: 5ec06169ced54b6690469d8b3aacb90c +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "" + +#: ../../ext/tasks/index.rst:102 +#: 4d5885d1008d4e288360ef1cc770187f +msgid "Doing something during cancellation:" +msgstr "" + +#: ../../ext/tasks/index.rst:136 +#: 784d60950fd842b88251fa1b9ad96b6b +msgid "API Reference" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop:1 +#: 0d9e3d92282d42b39abe6bda09a6c1a5 +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop:3 +#: 94f3800cced04f77866012b145727c45 +msgid "The main interface to create this is through :func:`loop`." +msgstr "" + +#: ../../ext/tasks/index.rst:0 +#: eda2eba72cd74d40a81fb96a622558f1 +#: 0430760556bc454eb496f803a14cbe47 +#: 4652ba98dd17419892fcd50a56a420d0 +#: bef7bd65f8fd40808f7c4a269ed9d7c9 +#: 224eb1ea4d464d899b6db853b26a2846 +#: 91965bac6d654b3e8109e274bdc46bfd +#: 6f12894246604c7eab1521c1bd45ca57 +#: 6c4c3d6ae0cf4dd3bf9a90b9939d1d43 +#: 7b563966d82a4f03b7d409731c7032b5 +#: cabe2bc452c248be884063fac80d1ad0 +#: 761a207eac3447b899de047d9e5ebf7b +msgid "Parameters" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.after_loop:1 +#: 8cf7f115e3e94e6491cfb5cdff90f8d1 +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.after_loop:3 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.before_loop:6 +#: d4f8de6e87f64f9bbc7b4f305e1986cf +#: ac000acd3f5743c1a5679fd61466b379 +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.after_loop:7 +#: 8cb871d1f5da49e79441d574f90ac13c +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.after_loop:12 +#: 73c64e4f2eeb4b0eaa468253fe8ab317 +msgid "The coroutine to register after the loop finishes." +msgstr "" + +#: ../../ext/tasks/index.rst:0 +#: 27b88dc7486040678f313ebaed311309 +#: a6b9eae8aff44f3ca7bd392a1f0ef0a0 +#: e37d85d7fd3a46cfb5ba0faec8cc2057 +#: 88dd06b54a304b18aaafa8828477df67 +#: 4f0346fd2f594d87bc6a71fc5f3aaf36 +#: 95e660541beb4b44a8764bd93c54a94e +#: eb4160d3b1904ad7b6fb4a90b73082a8 +msgid "Raises" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.after_loop:15 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.before_loop:12 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.error:14 +#: 34a7b1d07fa947eca3999296e8c0e55a +#: a665cd72f12f444e93e63d177913e3a4 +#: 369596d73e694c09aa9e9476267a53bd +msgid "The function was not a coroutine." +msgstr "" + +#: ../../ext/tasks/index.rst:0 +#: 54b3c2d1fd1b471b83c462abaeeedee8 +#: 6b16812b4e8d43a48dfc08003424686b +#: 0da50f3c0c5e4d7bb6fb2b2b8a3138a3 +#: bf5eae97450b4e40bd2157395afa650e +#: c236bd9da41742fa9c9399bd38e4aa90 +#: 07d97a21eac140af8f4d536dcb062e2e +#: 7d90def94e9b4721b355b5c6568e8e6f +#: 3f67b80a7be749d6b9e06e40040ba69e +#: ffc3e9102ad84c3c9424d446574b2b0c +#: a2407e90429149a79db1b5ee278a1dc9 +#: 33d39f515aa24c48a28b1f3c05edef44 +#: 8de254edf5c84d599fb5c37d26253ec0 +#: df4b78673a4946d18d2e5d56973c31a1 +msgid "Return type" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.after_loop:17 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.before_loop:14 +#: 2576cec782cf4d21bc6d4cd68fb2044e +#: 809ce216769e456b858d7830388f6963 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.before_loop:1 +#: 29ffc9a0452f4bb7b0c6d26b12bad850 +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.before_loop:3 +#: 27da0e08409c41898200b30e74fb4894 +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.before_loop:9 +#: b0c7be8d4ce84d3baa6bcd24027bee2b +msgid "The coroutine to register before the loop runs." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.error:1 +#: afec46798b8b440ba38c4fd62fa80fd4 +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.error:3 +#: c93726b33b2343148524f006e53e436b +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.error:5 +#: 7a8a6183c0dd4264a404dd9e7330321c +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.error:11 +#: a60614b72b074d8fb36796b2656d2ae9 +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.error:16 +#: db7c90536e494551a78eae3eb557d085 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.seconds:1 +#: 5e6767c4d5274c98af777dc1798705a9 +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.minutes:1 +#: cb3c8e59e3ae41ff90f25ab50b2291d2 +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.hours:1 +#: 4ec44806924247d389a4222760d17398 +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.time:1 +#: a4a728fad7b744f1b572a3c1b2d900f2 +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.current_loop:1 +#: 46a26f5c4f654551917d4052c697d446 +msgid "The current iteration of the loop." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.next_iteration:1 +#: 67cc28bb7d7f41fd98f5537ff865fd59 +msgid "When the next iteration of the loop will occur." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.__call__:1 +#: a9bf7898d326412dad82fa5a15f28684 +msgid "|coro|" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.__call__:3 +#: c3c46c7036f341b1b90e0abea8f5f616 +msgid "Calls the internal callback that the task holds." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.__call__:8 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.restart:9 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.start:4 +#: f99f14954e59457eaabda6d178089525 +#: 0eea72ae5aa84c54b46185aa5c361739 +#: 376b8508bb68448e9350e524f6d32325 +msgid "The arguments to use." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.__call__:10 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.restart:11 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.start:6 +#: 1da985900f1b4aed8d9b0c3917920ca7 +#: 1906741e1b214e448dd86dbd7128b436 +#: 185f83c525344b5fb287ea076b7886c5 +msgid "The keyword arguments to use." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.__call__:12 +#: 13e340d01db24b0eaf05daf96be094de +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.start:1 +#: 921266d2dbea49ed8cf049cea79b9eec +msgid "Starts the internal task in the event loop." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.start:8 +#: 619644ebbe9a4476af9a5564d1028373 +msgid "A task has already been launched and is running." +msgstr "" + +#: ../../ext/tasks/index.rst:0 +#: cf40520758d644df9ddec49a8aa57320 +#: f20f33b463e44af88836838ef51a6e54 +msgid "Returns" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.start:10 +#: 2de78bd7b1a447518ddece14601b9e87 +msgid "The task that has been created." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.start:11 +#: e309e5aef21247378016668a451c034d +msgid ":class:`asyncio.Task`" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.stop:1 +#: b0ed2c9ed3794b04aa76ffa817151a2d +msgid "Gracefully stops the task from running." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.stop:3 +#: 728c248aab564a90a3260107d51aba61 +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.stop:10 +#: 455bbbc49062472e84be47a8520c7a7e +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.stop:14 +#: 3adfd1fe09014389a8d77c57bc6a9a33 +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.cancel:1 +#: 3a18cece246a4010a6ab25de921042cc +msgid "Cancels the internal task, if it is running." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.add_exception_type:16 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.cancel:4 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:29 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.restart:13 +#: cc431f5256bc4e699afe36a16bb35452 +#: 5871f9579cb5482a9eb81da12f4cdd26 +#: 2efbe31b3fd64b6eacee66fb02b272aa +#: a83424395d0f4d8d8ebfd708aebfb3b9 +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.restart:1 +#: a7de1ec471ef4af788957432e6df3502 +msgid "A convenience method to restart the internal task." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.restart:5 +#: f8b7b414464243bb80406dcbb475f87b +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.add_exception_type:1 +#: 327d247dc3704dcca9f385d5d879e03c +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.add_exception_type:3 +#: d0ccc7fae84244f58ab340407c73bbf1 +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.add_exception_type:7 +#: 979bf5b73dcf4870a3d33b8e994c371d +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.add_exception_type:11 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.remove_exception_type:4 +#: d46fb346a0d249eebdb303ea7b661ab3 +#: 162db15291784b0fa4b3654019ca5aa4 +msgid "An argument list of exception classes to handle." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.add_exception_type:14 +#: 5fb93a77f12e4138a319bd0fa837a848 +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.clear_exception_types:1 +#: 9567edfad8a444f6a38c8cd8ad6697dd +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.clear_exception_types:7 +#: 714a51591f9143eab9a0a994136f1368 +msgid "This operation obviously cannot be undone!" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.remove_exception_type:1 +#: f0710a79660c4be0a5d577ed8a840729 +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.remove_exception_type:7 +#: 4ca4d3d9ff2346e2a6b79c8ed24ef34c +msgid "Whether all exceptions were successfully removed." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.remove_exception_type:8 +#: afcf8b92eb0a4e10990054ad284c53d7 +msgid ":class:`bool`" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.get_task:1 +#: e1d9e16237bb4547af60a9877b90b088 +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.get_task:4 +#: 260dd2e1b8ad4da5a5a7f29ab8f540ef +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.is_being_cancelled:1 +#: 9f7395681a764732af43ed770788b329 +msgid "Whether the task is being cancelled." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.is_being_cancelled:4 +#: ca525c4cd84243e7a6954afd8c4177ca +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.failed:1 +#: b07983af01e44e859cff333049533f23 +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.is_running:1 +#: afea19295c07476b9c661c3c4877faa0 +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:1 +#: 83530989bb114f24b7e77d873f86ceff +msgid "Changes the interval for the sleep time." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:6 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:5 +#: c79687228d5f4b14a5b5cf8eedf1d2f2 +#: 9d539eda63744ec18b6422108e8dcc3f +msgid "The number of seconds between every iteration." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:9 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:8 +#: 643036f81e8548148226f98ad662f662 +#: faab724401534ba891a54abd1063b632 +msgid "The number of minutes between every iteration." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:12 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:11 +#: 6e09adb27be8418588dfd743e748f717 +#: 25e739b47679456d9706cd47304e9978 +msgid "The number of hours between every iteration." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:15 +#: 5c6fb443b2604b33af94b201f8b258d8 +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:15 +#: 6224d70d5fda4bd78858977a37bf9607 +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:23 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:22 +#: b3b725baac894dc4aec2325b26106b6f +#: 318ff42090a54ee6ba110b06461a5d2e +msgid "Duplicate times will be ignored, and only run once." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:26 +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:40 +#: d34550bdeb504b4ba94cd33934a387ac +#: b9bff9f275424b10b9b4b4a745dc7f96 +msgid "An invalid value was given." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.Loop.change_interval:27 +#: 622a6c84602644b581053d78b1619f3a +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:1 +#: d1cde6f36bb94fa8a109a7406e99305c +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:14 +#: 2730a5b0e80a4bb78a3110623b108393 +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:14 +#: 4957f25f5de04866a15143387272931f +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:18 +#: e4cdfd5e2c074237adb1bc9479a240c4 +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:27 +#: c959854a17704c0c9357e7e7922da117 +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:31 +#: 3adeed780b7b4670b41253cc6354e85a +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:36 +#: 7e644a647eaa4981aad624c207683f5a +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:41 +#: 1b6f0ce5942646378838dbe0ab4fe0a0 +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "" + +#: ../../../discord/ext/tasks/__init__.py:docstring of discord.ext.tasks.loop:43 +#: 3dd1e6ebb48849edb09bcd60b72c860c +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr "" diff --git a/docs/build/locales/faq.pot b/docs/build/locales/faq.pot new file mode 100644 index 0000000000..ea6ef50322 --- /dev/null +++ b/docs/build/locales/faq.pot @@ -0,0 +1,527 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../faq.rst:7 +#: 42c694dc6243417398dfda77b5d62118 +msgid "Frequently Asked Questions" +msgstr "" + +#: ../../faq.rst:9 +#: aadc6d39fd624f2a9caf5a3afaed39f7 +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "" + +#: ../../faq.rst:14 +#: f1deeae5e8ec4fa1a960f38a3506f17e +msgid "Coroutines" +msgstr "" + +#: ../../faq.rst:16 +#: 0d979a5f910e4b458a5e259f76d88293 +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "" + +#: ../../faq.rst:19 +#: 73708e0cc4d54d139990aafd94812778 +msgid "What is a coroutine?" +msgstr "" + +#: ../../faq.rst:21 +#: 1e95db0d82644800b67bcc3db6e722a3 +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "" + +#: ../../faq.rst:26 +#: ffd553a66e4f4313b68911d1727daed8 +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "" + +#: ../../faq.rst:29 +#: 5e4c81ff3a0d48aca229db1d69f5868b +msgid "Where can I use ``await``\\?" +msgstr "" + +#: ../../faq.rst:31 +#: efa3ec603fe54b8fab857ce490ec3cb6 +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "" + +#: ../../faq.rst:34 +#: c826e0a3d9684b32be75af0a16e6c9e0 +msgid "What does \"blocking\" mean?" +msgstr "" + +#: ../../faq.rst:36 +#: f740f2b4ae774915aa7baafaa04b69f4 +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "" + +#: ../../faq.rst:41 +#: 87e4373c7de24a56af1623cc126c63f1 +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "" + +#: ../../faq.rst:45 +#: 0f6c774e82c54d809d7eab2e5343db1f +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "" + +#: ../../faq.rst:54 +#: b4f3d4ffd28b4499abc2b803cceef267 +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "" + +#: ../../faq.rst:59 +#: e745924d9a314b659d522d7e2908f735 +msgid "Consider the following example: ::" +msgstr "" + +#: ../../faq.rst:75 +#: 75b3be6463eb414996f8e998c3901719 +msgid "General" +msgstr "" + +#: ../../faq.rst:77 +#: 486e6101fbaf473ca14a3f2a2d156634 +msgid "General questions regarding library usage belong here." +msgstr "" + +#: ../../faq.rst:80 +#: 61cea3fbaefe441589ee75c6ef47044e +msgid "Where can I find usage examples?" +msgstr "" + +#: ../../faq.rst:82 +#: 75110bb3b99547c4a0785fa8b5306634 +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "" + +#: ../../faq.rst:86 +#: 4debeae373084131a5142dda06bdf003 +msgid "How do I set the \"Playing\" status?" +msgstr "" + +#: ../../faq.rst:88 +#: c1ed0473c08a4f2d84bfe7c3c0668879 +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "" + +#: ../../faq.rst:90 +#: ed575ddcf47c4421a518efbfab76cdcf +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "" + +#: ../../faq.rst:94 +#: 205690eee5334303a093ae89a20b2115 +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "" + +#: ../../faq.rst:96 +#: 1e3e9fad12604c21b0f70d73f8b72520 +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "" + +#: ../../faq.rst:98 +#: 4bcfe431e4b94a3bbb4f442963b89f41 +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "" + +#: ../../faq.rst:101 +#: e078b8a7823f45e5bb41baca9e0c9c88 +msgid ":class:`Game`" +msgstr "" + +#: ../../faq.rst:102 +#: 60eaac3fd0ec4801ae0764d3422c333c +msgid ":class:`Streaming`" +msgstr "" + +#: ../../faq.rst:104 +#: 53c37fa6b2ff42e6bb7ab64e48bdcfeb +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "" + +#: ../../faq.rst:113 +#: 445f9e722bfe4fc5bbf9640c49fbcbc5 +msgid "How do I send a message to a specific channel?" +msgstr "" + +#: ../../faq.rst:115 +#: fed233889a0040e3a7044530689843b4 +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "" + +#: ../../faq.rst:121 +#: efdd5354470e487c8e4a4ededb220e73 +msgid "How do I send a DM?" +msgstr "" + +#: ../../faq.rst:123 +#: 7c73470058c540b7b6211dde4dd78c89 +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "" + +#: ../../faq.rst:128 +#: d942a2a29c834b23a7228600a3ac8947 +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "" + +#: ../../faq.rst:133 +#: dd32f32169e44c28840bcc496597f50e +msgid "How do I get the ID of a sent message?" +msgstr "" + +#: ../../faq.rst:135 +#: 0537432c7b8c475e8dd7fcd295387b35 +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr "" + +#: ../../faq.rst:142 +#: d5d5efa3a769462896d5f4ae71592c82 +msgid "How do I upload an image?" +msgstr "" + +#: ../../faq.rst:144 +#: a27fec8be055451191c60ff0dac0389e +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "" + +#: ../../faq.rst:146 +#: ab655cc9b8db425c8a9883536ae60fd7 +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "" + +#: ../../faq.rst:149 +#: b581efc9510c4249a68da678b8f19a5a +msgid "If you want to upload an image it's as simple as: ::" +msgstr "" + +#: ../../faq.rst:153 +#: daff6be6e19b4749a1021c8240a8c2c6 +msgid "If you have a file-like object you can do as follows: ::" +msgstr "" + +#: ../../faq.rst:158 +#: c3b8713a8aef46fda35e6ac17b5e32d0 +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "" + +#: ../../faq.rst:166 +#: 15d211e0a15e4e9fb1ca3873ea167290 +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "" + +#: ../../faq.rst:183 +#: 5cbb9695485342d8ad7cb81efe8a1c9d +msgid "How can I add a reaction to a message?" +msgstr "" + +#: ../../faq.rst:185 +#: a465b71cb0bb4d93a0b93a90d4a5908e +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "" + +#: ../../faq.rst:187 +#: 5945a133b4f04ee2a5756ad1d92a69ea +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "" + +#: ../../faq.rst:189 +#: 4b2c00f729364d54ae46abe524019f69 +msgid "``'👍'``" +msgstr "" + +#: ../../faq.rst:190 +#: a16f06193ba143b7bf99419f710cc7b3 +msgid "``'\\U0001F44D'``" +msgstr "" + +#: ../../faq.rst:191 +#: 3b675c057f77434183fe3ba30d93d2bf +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "" + +#: ../../faq.rst:193 +#: ../../faq.rst:209 +#: ../../faq.rst:285 +#: ../../faq.rst:301 +#: ../../faq.rst:321 +#: d619f977a1fc4114ae22961529c04ae9 +#: 7466bd3209ed4da6a1db6c319e409d98 +#: 8a59ed4e66c942a0abc4d59c6b33ad77 +#: 4af31f34d79f4b15bdcd9f9c0ecb638d +#: 2ac40c17e7e146adaf2e1882a0895624 +msgid "Quick example: ::" +msgstr "" + +#: ../../faq.rst:199 +#: 50d17ed090ff4403a93ddb3e8e6fcf2c +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "" + +#: ../../faq.rst:202 +#: 83b6da571d72418b976c492e3fe88640 +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "" + +#: ../../faq.rst:206 +#: 2025e4eb563846b6ab9ca3c36bfbaf22 +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "" + +#: ../../faq.rst:226 +#: 8348ea888c9c4f998ce1b608a36687ab +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "" + +#: ../../faq.rst:228 +#: 31fd3ba1351f47edaf088f8a1ca132d0 +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "" + +#: ../../faq.rst:232 +#: 3a6dc9b3a9e3440eb71e0ebd4f935de7 +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "" + +#: ../../faq.rst:237 +#: c759400dc1344921970c74fdf5a861e2 +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "" + +#: ../../faq.rst:252 +#: a29ad71864ee45478c2585ea1682ce88 +msgid "How do I run something in the background?" +msgstr "" + +#: ../../faq.rst:254 +#: fc7a63eea1d941e0ba8fc931ce98d69b +msgid "`Check the background_task.py example. `_" +msgstr "" + +#: ../../faq.rst:257 +#: e123c76a03bc4bba94c4ea7823059d30 +msgid "How do I get a specific model?" +msgstr "" + +#: ../../faq.rst:259 +#: c6ea38dff8ef49dbb15674cda4f76fee +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "" + +#: ../../faq.rst:262 +#: df8275f393d74fd2b8aecc522b3b028d +msgid ":meth:`Client.get_channel`" +msgstr "" + +#: ../../faq.rst:263 +#: 1b0bd9baafff48ab8d9b51392f87cb88 +msgid ":meth:`Client.get_message`" +msgstr "" + +#: ../../faq.rst:264 +#: a4fdecfa549c4af29c85a2ac6af0adb8 +msgid ":meth:`Client.get_guild`" +msgstr "" + +#: ../../faq.rst:265 +#: e8a1b227e0bc4c4ca6ecab9de950fa39 +msgid ":meth:`Client.get_user`" +msgstr "" + +#: ../../faq.rst:266 +#: fa1ef088ffd649e7be0756077ebb5204 +msgid ":meth:`Client.get_emoji`" +msgstr "" + +#: ../../faq.rst:267 +#: ce6bba09a863412085379af1b86f43f4 +msgid ":meth:`Guild.get_member`" +msgstr "" + +#: ../../faq.rst:268 +#: cdb641bf33ca4081af71f6fbab38c7ef +msgid ":meth:`Guild.get_channel`" +msgstr "" + +#: ../../faq.rst:269 +#: 52c8ef2610ed40df9d821bd9b72f52c0 +msgid ":meth:`Guild.get_role`" +msgstr "" + +#: ../../faq.rst:271 +#: 4432c4bdbd43488497d53d09fb757cea +msgid "The following use an HTTP request:" +msgstr "" + +#: ../../faq.rst:273 +#: c33931c8a1d94df2977b7d2400e795ff +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr "" + +#: ../../faq.rst:274 +#: 6c4aeb1c43744304964e174c90155da8 +msgid ":meth:`Client.fetch_user`" +msgstr "" + +#: ../../faq.rst:275 +#: 61dbda6f00104881bebe25d22bd0b9b6 +msgid ":meth:`Client.fetch_guilds`" +msgstr "" + +#: ../../faq.rst:276 +#: 82be9a6851bb47969a025ac8a83842cd +msgid ":meth:`Client.fetch_guild`" +msgstr "" + +#: ../../faq.rst:277 +#: 22c47fa480604e00a1331d55158290d6 +msgid ":meth:`Guild.fetch_emoji`" +msgstr "" + +#: ../../faq.rst:278 +#: 280a399aea224f21b4982931f9634884 +msgid ":meth:`Guild.fetch_emojis`" +msgstr "" + +#: ../../faq.rst:279 +#: 880bae3974c640258ffbc8c38ee6b023 +msgid ":meth:`Guild.fetch_member`" +msgstr "" + +#: ../../faq.rst:282 +#: 64a069b8f1fc43fdb461eb1f0b6353cb +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "" + +#: ../../faq.rst:296 +#: 117011a3c921470791e0fb9ae1a99887 +msgid "How do I make a web request?" +msgstr "" + +#: ../../faq.rst:298 +#: a81d38db11e34929840d202e3e39e014 +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "" + +#: ../../faq.rst:308 +#: f7fcd1f2851748b496f550b00027a817 +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "" + +#: ../../faq.rst:311 +#: 33bfccbec5e44bd8875eb5535d5c4ba7 +msgid "How do I use a local image file for an embed image?" +msgstr "" + +#: ../../faq.rst:313 +#: 4ac20ca08166409b95cd618f3a9d247f +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "" + +#: ../../faq.rst:316 +#: 5a4543d51c054078a317ba9eb73ece9b +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "" + +#: ../../faq.rst:329 +#: cea3d47022ad45399532475aed28dad2 +msgid "Is there an event for audit log entries being created?" +msgstr "" + +#: ../../faq.rst:331 +#: d54188f6cfa34ff5b4f3cb79d04113eb +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "" + +#: ../../faq.rst:334 +#: af9b163a1a404649b60bc68e4aa18658 +msgid "Commands Extension" +msgstr "" + +#: ../../faq.rst:336 +#: f6b5f936ec2246b3b2f804b9f0228f76 +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "" + +#: ../../faq.rst:339 +#: 60e1562627864406bfd930e966f3834b +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "" + +#: ../../faq.rst:341 +#: eb6e93a1f5a745df9633622c9c43befd +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "" + +#: ../../faq.rst:350 +#: 3d9bcd5624e048a095c6660f92687fb8 +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "" + +#: ../../faq.rst:360 +#: a7c7415a26b048a2a5f6604066be146a +msgid "Why do my arguments require quotes?" +msgstr "" + +#: ../../faq.rst:362 +#: 86911130df094c728d135487c8732c02 +msgid "In a simple command defined as: ::" +msgstr "" + +#: ../../faq.rst:368 +#: 1c0677bdf38b4842829596fafcbef588 +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "" + +#: ../../faq.rst:375 +#: 200e58391f9f4db0a074373036d54117 +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "" + +#: ../../faq.rst:378 +#: c4f3a0dc111f45358fccaa11113f345f +msgid "How do I get the original ``message``\\?" +msgstr "" + +#: ../../faq.rst:380 +#: 9fe189d10192426288f5ea7ef96c203e +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "" + +#: ../../faq.rst:383 +#: ../../faq.rst:395 +#: 8a369aaa0965425abecf4147f8627866 +#: 2bca210db4524a3dab85438e7d12f2b3 +msgid "Example: ::" +msgstr "" + +#: ../../faq.rst:390 +#: fe8cf520d18b47a6bc64e350dced6b0b +msgid "How do I make a subcommand?" +msgstr "" + +#: ../../faq.rst:392 +#: e03e295bf8864bb3954ff5b558e7aae0 +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "" + +#: ../../faq.rst:406 +#: 293c6bec61af42d7803ffc3d3ab42a5a +msgid "This could then be used as ``?git push origin master``." +msgstr "" diff --git a/docs/build/locales/index.pot b/docs/build/locales/index.pot new file mode 100644 index 0000000000..6fca0e585f --- /dev/null +++ b/docs/build/locales/index.pot @@ -0,0 +1,191 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../index.rst:56 +#: ../../index.rst:60 +#: +#: 1ae15d13e49e44768f60bb75339fb69c +msgid "Extensions" +msgstr "" + +#: ../../index.rst:76 +#: ../../index.rst:80 +#: +#: 30bc87e216894f4ca6d37b14ef86b21a +msgid "Meta" +msgstr "" + +#: ../../index.rst:7 +#: 7fc8556a3c244b458a25c25a5ec92149 +msgid "Welcome to Pycord" +msgstr "" + +#: ../../index.rst:12 +#: 4ad40217636e4ea08273187545470d23 +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "" + +#: ../../index.rst:15 +#: b378fc99d4c141dd97f197490dde92ab +msgid "**Features:**" +msgstr "" + +#: ../../index.rst:17 +#: 00058e2c4cc84c8ab75c1f6d7915c284 +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "" + +#: ../../index.rst:18 +#: ba4ca36f397c470fa8c8e234f2c88d3f +msgid "Sane rate limit handling that prevents 429s" +msgstr "" + +#: ../../index.rst:19 +#: 37d28cc78859419a8292b5090a8efac4 +msgid "Command extension to aid with bot creation" +msgstr "" + +#: ../../index.rst:20 +#: 556e9957abda4f25a3d69dee87f1837d +msgid "Easy to use with an object oriented design" +msgstr "" + +#: ../../index.rst:21 +#: 63f872203a0b43b6b3b684ece5914978 +msgid "Optimised for both speed and memory" +msgstr "" + +#: ../../index.rst:24 +#: 2c529eccd4504d0e86c33655ca4ae1a3 +msgid "Getting started" +msgstr "" + +#: ../../index.rst:26 +#: 50a6a38e25a64cf6ba6381a0ae25e90a +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "" + +#: ../../index.rst:28 +#: 92ba20faa97b437f8261d25de1b656a3 +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "" + +#: ../../index.rst:29 +#: f9e28131715c4adebadaf8a6ccf4f55b +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "" + +#: ../../index.rst:30 +#: 77536c2f950248ee8fa18138f87209a4 +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "" + +#: ../../index.rst:33 +#: f9c95f56efb342749419b9eeb721f4ea +msgid "Getting help" +msgstr "" + +#: ../../index.rst:35 +#: d1616e0cba47453b9c703e0a8b07058e +msgid "If you're having trouble with something, these resources might help." +msgstr "" + +#: ../../index.rst:37 +#: 9177146fde574ce68ecdeaea6fca6e28 +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "" + +#: ../../index.rst:38 +#: f25dd5b1ebe841e3b8cd1ab6172faf6f +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "" + +#: ../../index.rst:39 +#: e606ff613d8548c59c9ca71612631ded +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "" + +#: ../../index.rst:40 +#: d89cb6709ae14999b87f6d88c57e64c3 +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "" + +#: ../../index.rst:43 +#: 09f8c18f270041028f7b6f370dd5d3fd +msgid "Manuals" +msgstr "" + +#: ../../index.rst:45 +#: ed1dadd279c6469a9a1403832b305b90 +msgid "These pages go into great detail about everything the API can do." +msgstr "" + +#: ../../index.rst:48 +#: 4691c3605db047e498071d6a80fce420 +msgid "Core API" +msgstr "" + +#: ../../index.rst:58 +#: 2920375629e14ee1891696ce1bc731b7 +msgid "These extensions help you during development when it comes to common tasks." +msgstr "" + +#: ../../index.rst:70 +#: 1ef1dffc6e3842f6bdcc182b12d3dc72 +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr "" + +#: ../../index.rst:71 +#: 29fc201ddcdd4490a1e82730319fb2c1 +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr "" + +#: ../../index.rst:72 +#: 2c32c8ad6b5344bfb22eab4dc65b2c14 +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr "" + +#: ../../index.rst:73 +#: b4294d6dd2fd4cceac15a54b6be747b8 +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr "" + +#: ../../index.rst:78 +#: 773f591cbcf94787aca8dd94e5e8d039 +msgid "If you're looking for something related to the project itself, it's here." +msgstr "" + +#: ../../index.rst:90 +#: da2f2c3d8bed495b8fe6f80aaea8d710 +msgid ":doc:`changelog` - The changelog for the library." +msgstr "" + +#: ../../index.rst:91 +#: 0e9ae46626d24e70acd686105a1dc885 +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr "" + +#: ../../index.rst:92 +#: aafdb614bd4a4f07bbc4219638635ab1 +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr "" + +#: ../../index.rst:93 +#: 0e9145aa11f846389286e01855c75217 +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr "" diff --git a/docs/build/locales/installing.pot b/docs/build/locales/installing.pot new file mode 100644 index 0000000000..82075ae96a --- /dev/null +++ b/docs/build/locales/installing.pot @@ -0,0 +1,162 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../installing.rst:8 +#: b987cf7921b843929fe5cce90461619d +msgid "Installing Pycord" +msgstr "" + +#: ../../installing.rst:10 +#: ff6116c1f1bd4a8ea4084082816c256f +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "" + +#: ../../installing.rst:14 +#: 99384c0e85ae44dfb29c6ffd64d07c15 +msgid "Prerequisites" +msgstr "" + +#: ../../installing.rst:16 +#: 45a4a81029114e39967f1a217892cee4 +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "" + +#: ../../installing.rst:23 +#: 3315ef6314374d80b289a31a9319565c +msgid "Installing" +msgstr "" + +#: ../../installing.rst:27 +#: 3bfcb21ea1394d478638fa54953b05af +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "" + +#: ../../installing.rst:31 +#: d3de67df16fb4a36a5a1bd15ad340bb0 +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "" + +#: ../../installing.rst:35 +#: bfb05c0721a546f1bd0444d6eedcb567 +msgid "You can get the library directly from PyPI: ::" +msgstr "" + +#: ../../installing.rst:39 +#: 7dfc0ffce098447881eddb3cbdcd90bd +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "" + +#: ../../installing.rst:44 +#: e815f26d5d194fbeb3b185e9960f01a0 +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "" + +#: ../../installing.rst:55 +#: bd4a16413b354b5f849723217b8c9da6 +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "" + +#: ../../installing.rst:59 +#: b3effdad7bf24b5387a42b48c1eea265 +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "" + +#: ../../installing.rst:61 +#: 874d8e468b3c425b892c4bbe45c64165 +msgid "`libffi `_" +msgstr "" + +#: ../../installing.rst:62 +#: 15d34551532b42cbbfcce1f27c282ac7 +msgid "`libnacl `_" +msgstr "" + +#: ../../installing.rst:63 +#: d4350b9dc07b4c2d9ed7155d3229cac1 +msgid "`python3-dev `_" +msgstr "" + +#: ../../installing.rst:65 +#: 133137400c01499f9368503dab246762 +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "" + +#: ../../installing.rst:71 +#: 647fb6f3c4294493bf010cc4b38918ae +msgid "Remember to check your permissions!" +msgstr "" + +#: ../../installing.rst:74 +#: 1505dc98348743daa96c3e2a8bb4e35f +msgid "Virtual Environments" +msgstr "" + +#: ../../installing.rst:76 +#: 2a79ff807f0440f9b29b38e5e8f34fe7 +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "" + +#: ../../installing.rst:81 +#: 2707c58339d8492cb4643fde3924e0c4 +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "" + +#: ../../installing.rst:83 +#: b4a38a361f9d4b029b782bc0991071f1 +msgid "However, for the quick and dirty:" +msgstr "" + +#: ../../installing.rst:85 +#: 875aa9044a994c748e89365a4319d53d +msgid "Go to your project's working directory:" +msgstr "" + +#: ../../installing.rst:92 +#: d3ee92e529f5468d861804a69cf06872 +msgid "Activate the virtual environment:" +msgstr "" + +#: ../../installing.rst:98 +#: 1fe5cd4ed06d4dd0bdc9c107663b7623 +msgid "On Windows you activate it with:" +msgstr "" + +#: ../../installing.rst:104 +#: fd63a39a2e324067bff700957152f4a8 +msgid "Use pip like usual:" +msgstr "" + +#: ../../installing.rst:110 +#: 4b0ca73ad69c4a339a72a3dd4405c3ef +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "" + +#: ../../installing.rst:113 +#: f05aab80a33a45088869a4951f8eff63 +msgid "Basic Concepts" +msgstr "" + +#: ../../installing.rst:115 +#: 122378e2443b4f5e9c3109ad7e84a78c +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "" + +#: ../../installing.rst:119 +#: 24eaab1e93fb4abc8f263c716591e584 +msgid "A quick example to showcase how events work:" +msgstr "" diff --git a/docs/build/locales/intents.pot b/docs/build/locales/intents.pot new file mode 100644 index 0000000000..b24f3e5b9d --- /dev/null +++ b/docs/build/locales/intents.pot @@ -0,0 +1,392 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../intents.rst:8 +#: 75e14bb6db424110a692aa2cd4639e74 +msgid "A Primer to Gateway Intents" +msgstr "" + +#: ../../intents.rst:10 +#: 12572facd77841d0a3f7bd1e9884b154 +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "" + +#: ../../intents.rst:12 +#: 5a94afb1d1a1416989b479d118f6a4a5 +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "" + +#: ../../intents.rst:14 +#: 1cfd25d23d9f4e8491e82d8bb9b68e85 +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "" + +#: ../../intents.rst:17 +#: 0d970b5b7ab64fccbaaee82e527c2a3c +msgid "What intents are needed?" +msgstr "" + +#: ../../intents.rst:19 +#: 122975cc28fd4dab917064a2f7ccebff +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "" + +#: ../../intents.rst:21 +#: a65b273def1046c7b65710253bad3f0b +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "" + +#: ../../intents.rst:37 +#: e934525a0f6645da864f9b80eb9ea2ed +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "" + +#: ../../intents.rst:39 +#: c4ad8729a94941c3b16889552f5f9209 +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "" + +#: ../../intents.rst:58 +#: f9bc373e5fcb4379ac7b5af6226d2549 +msgid "Privileged Intents" +msgstr "" + +#: ../../intents.rst:60 +#: 084441efe6e14d238bc031fbb2077af6 +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "" + +#: ../../intents.rst:62 +#: ba192e3588fd436991ddc6df5a0be29c +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "" + +#: ../../intents.rst:64 +#: 7f9e6a87118d4705a72fdf89a9e622e9 +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "" + +#: ../../intents.rst:65 +#: 240499007567459bb815409d6a108b33 +msgid "Navigate to the `application page `_." +msgstr "" + +#: ../../intents.rst:66 +#: 6800ad0726084ce5825c2afe9909a5b6 +msgid "Click on the bot you want to enable privileged intents for." +msgstr "" + +#: ../../intents.rst:67 +#: 676cd6606ae849a9adf0c09ac3e14a7a +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "" + +#: ../../intents.rst:69 +#: 65ddb4294bc34218ba019def7b995202 +msgid "The bot tab in the application page." +msgstr "" + +#: ../../intents.rst:72 +#: 57a29f0a7a764de69acc3572872e2162 +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "" + +#: ../../intents.rst:74 +#: 5251197e52da45ee88ae2e853d6e00eb +msgid "The privileged gateway intents selector." +msgstr "" + +#: ../../intents.rst:79 +#: 9c9f674714544275a3c7370700b19f52 +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "" + +#: ../../intents.rst:83 +#: ce58e8892c1f49708cb8427dc7a7665d +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "" + +#: ../../intents.rst:87 +#: 9ad34707ff6d44ff86c8385a25781b07 +msgid "Do I need privileged intents?" +msgstr "" + +#: ../../intents.rst:89 +#: de22bd22b4b5407da0e11b458e9617a5 +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "" + +#: ../../intents.rst:94 +#: ca193929461d41cca72bfe5ada2a8f9f +msgid "Presence Intent" +msgstr "" + +#: ../../intents.rst:96 +#: 0738b2d90ea74556a09a241d4512f0ec +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "" + +#: ../../intents.rst:97 +#: 6d59b966ccb941e1abf45501c67feb64 +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "" + +#: ../../intents.rst:102 +#: 7bf42da8054d486abd314edf3f3bf1d5 +msgid "Member Intent" +msgstr "" + +#: ../../intents.rst:104 +#: efdea7ea60cb48cea740b6c8579a4504 +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "" + +#: ../../intents.rst:105 +#: e5a9f0b0b4314506904e9b9750b73c98 +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "" + +#: ../../intents.rst:106 +#: c5a426a1754b42eda309676e96d5f71a +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "" + +#: ../../intents.rst:107 +#: e72edc0eb2124f3f9183e99d969a6908 +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "" + +#: ../../intents.rst:108 +#: 89f7b1c662b44246a76cf2cfd4e1bf99 +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "" + +#: ../../intents.rst:113 +#: d799b87ac06946669822ed2f80906606 +msgid "Message Content Intent" +msgstr "" + +#: ../../intents.rst:115 +#: 72f6bd3f0926471997e55218bebadebf +msgid "Whether you have a message based command system using ext.commands" +msgstr "" + +#: ../../intents.rst:116 +#: 5df81944be2d480186a72f1051f7b9b3 +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "" + +#: ../../intents.rst:117 +#: 4fd03b2ae3864027b6c2cdbffbe2fd10 +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "" + +#: ../../intents.rst:120 +#: d77097d463244e978486284a0a82b5f8 +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "" + +#: ../../intents.rst:125 +#: f1941c0d0c024fcb88ba0ee6184a7255 +msgid "Member Cache" +msgstr "" + +#: ../../intents.rst:127 +#: e4434f4e55db44869097da7ab2589c35 +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "" + +#: ../../intents.rst:129 +#: 6237e37074dd42ffa6459b8cf0fa60f2 +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "" + +#: ../../intents.rst:131 +#: 8f41bd98a383407e92e095abb76160bd +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "" + +#: ../../intents.rst:133 +#: b098cb161f504488abfcc7e48f268754 +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr "" + +#: ../../intents.rst:134 +#: 23e367c3f1ae47e8b618ac65d105e0be +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr "" + +#: ../../intents.rst:135 +#: 4fee7e831515409f94373f65d89358c4 +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr "" + +#: ../../intents.rst:136 +#: fa4dcc39755a4d229ce380d1577de71a +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr "" + +#: ../../intents.rst:137 +#: 7651c7bab1bb4d0094fbc5aec6c803ec +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "" + +#: ../../intents.rst:138 +#: 4a6277fc39224dd9988f0054738ef3a7 +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "" + +#: ../../intents.rst:140 +#: ee4c86c48cf74afb8e772a5dc97a5636 +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "" + +#: ../../intents.rst:145 +#: fd996e8047be424f9d03c9a477a19b3f +msgid "Retrieving Members" +msgstr "" + +#: ../../intents.rst:147 +#: b7cb072db6df40afa12a82f220fd6d5f +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "" + +#: ../../intents.rst:149 +#: bbdba0ac52d34da493c65f9758c955fc +msgid ":meth:`Guild.query_members`" +msgstr "" + +#: ../../intents.rst:150 +#: 1b5717712ae342f2abf045d036fd0c50 +msgid "Used to query members by a prefix matching nickname or username." +msgstr "" + +#: ../../intents.rst:151 +#: 25ea63172c5d4a16b4380d91d3aab4c2 +msgid "This can also be used to query members by their user ID." +msgstr "" + +#: ../../intents.rst:152 +#: 71a28a7071f14074b993c5b4173362ac +msgid "This uses the gateway and not the HTTP." +msgstr "" + +#: ../../intents.rst:153 +#: 67813d09e1154ebd81e601d7af5108ed +msgid ":meth:`Guild.chunk`" +msgstr "" + +#: ../../intents.rst:154 +#: a6315e5ea5674a2682d2d071c3eb0c1c +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "" + +#: ../../intents.rst:155 +#: 29830a31762842fbb9e025144cdefc05 +msgid ":meth:`Guild.fetch_member`" +msgstr "" + +#: ../../intents.rst:156 +#: bf6d1ac04997420f918c48b490a2d38b +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "" + +#: ../../intents.rst:157 +#: 58bf92443c3449ec83725d931bb66d9b +msgid ":meth:`Guild.fetch_members`" +msgstr "" + +#: ../../intents.rst:158 +#: da5d0a17a5f04b87aee337c3787beb95 +msgid "used to fetch a large number of members through the HTTP API." +msgstr "" + +#: ../../intents.rst:160 +#: f07f8ed6abd84630ad3414dcfcd29f50 +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "" + +#: ../../intents.rst:163 +#: d479cb036ff8488ca3f504749f838150 +msgid "Troubleshooting" +msgstr "" + +#: ../../intents.rst:165 +#: 3cf14432784b4e5ca9943e44ab5ed952 +msgid "Some common issues relating to the mandatory intent change." +msgstr "" + +#: ../../intents.rst:168 +#: a333e864e6ec40fa99a9ad691896a11c +msgid "Where'd my members go?" +msgstr "" + +#: ../../intents.rst:170 +#: daf2dc3baf2b4b0a9deb476725b4f4e1 +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "" + +#: ../../intents.rst:172 +#: bc4a5819d2e4419987f38df992cf6fef +msgid "For example:" +msgstr "" + +#: ../../intents.rst:188 +#: 623319a3fecc44f3bee7330669c72206 +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "" + +#: ../../intents.rst:190 +#: ee80456fc4d5418a83a0bd2970b1eac8 +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "" + +#: ../../intents.rst:192 +#: 0d209c1487054921a620382f0c42d77a +msgid "There are a few solutions to fix this." +msgstr "" + +#: ../../intents.rst:194 +#: 7f126ed28f1a46df8fb6acee617b41b5 +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "" + +#: ../../intents.rst:196 +#: 822035ac34364402a1d6cfe355570145 +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "" + +#: ../../intents.rst:198 +#: a10b1e8e13124c33b7ef00a961e3f5fa +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "" + +#: ../../intents.rst:200 +#: 16e6d47aa0e1453c926396a4d3faf04d +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "" + +#: ../../intents.rst:202 +#: 5e64bebe24f8478d99b4af3ae572b396 +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "" + +#: ../../intents.rst:204 +#: 456af39b458d4c57b7e6ade2540f59b7 +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "" diff --git a/docs/build/locales/logging.pot b/docs/build/locales/logging.pot new file mode 100644 index 0000000000..ff00183317 --- /dev/null +++ b/docs/build/locales/logging.pot @@ -0,0 +1,52 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../logging.rst:7 +#: 11eccc080359468a86bef8d45358f539 +msgid "Setting Up Logging" +msgstr "" + +#: ../../logging.rst:9 +#: 369e2bcd67d0413dbca92403fa9b2ff6 +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "" + +#: ../../logging.rst:18 +#: 15f27810b12a4d01bcb0243e98a20df4 +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "" + +#: ../../logging.rst:22 +#: 6bd5cec9518243649ead4496c45f036e +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "" + +#: ../../logging.rst:26 +#: 303ae7d601af46d2bead5ad7ae3a1ab9 +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "" + +#: ../../logging.rst:39 +#: 7ec89923962d4f878759e0a19dfffcc9 +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "" + +#: ../../logging.rst:45 +#: dc5471669f9240fba325278270e16118 +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "" diff --git a/docs/build/locales/migrating_to_v1.pot b/docs/build/locales/migrating_to_v1.pot new file mode 100644 index 0000000000..cdf1798eae --- /dev/null +++ b/docs/build/locales/migrating_to_v1.pot @@ -0,0 +1,2565 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../migrating_to_v1.rst:6 +#: 05d2ff2da0bf4a26b3d502e09d78f50e +msgid "Migrating to v1.0" +msgstr "" + +#: ../../migrating_to_v1.rst:8 +#: 08a114e33514430eaac09e99fae0b271 +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "" + +#: ../../migrating_to_v1.rst:11 +#: 3fcb6833d08c48378f58cda01ad7c2c9 +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "" + +#: ../../migrating_to_v1.rst:14 +#: 29d8d0562ff047b6872ce1a4b2292eed +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "" + +#: ../../migrating_to_v1.rst:18 +#: a3a80bf8b8a54fd4a764a3266f73d6bf +msgid "Python Version Change" +msgstr "" + +#: ../../migrating_to_v1.rst:20 +#: 01478e23f1264f16be197f066be1b7c9 +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "" + +#: ../../migrating_to_v1.rst:25 +#: fbcf913efbc2403eb6a6ebbc4ee19855 +msgid "Major Model Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:27 +#: c1ddcfd6e5564ca495d5aab4d29e3eed +msgid "Below are major model changes that have happened in v1.0" +msgstr "" + +#: ../../migrating_to_v1.rst:30 +#: ab7eeee841a345c0a6fc69854509b783 +msgid "Snowflakes are int" +msgstr "" + +#: ../../migrating_to_v1.rst:32 +#: 86f1da0714544984bbc6cb9c9b02d5d1 +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "" + +#: ../../migrating_to_v1.rst:34 +#: ../../migrating_to_v1.rst:254 +#: 726778b710c04e76978dff7b349cf252 +#: 925613332baf474794a7ea8ba3760111 +msgid "Quick example: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:46 +#: 92094b94ad5e4c96bb4103624ff1e7ed +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "" + +#: ../../migrating_to_v1.rst:50 +#: 6bf6aae7d7a24e108f113412fa3c039f +msgid "Server is now Guild" +msgstr "" + +#: ../../migrating_to_v1.rst:52 +#: afd49bf9015d443187ca1a42f24d59a2 +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "" + +#: ../../migrating_to_v1.rst:56 +#: cd47980922e44b96aa22fa8238a42998 +msgid "A list of changes is as follows:" +msgstr "" + +#: ../../migrating_to_v1.rst:59 +#: ../../migrating_to_v1.rst:95 +#: ../../migrating_to_v1.rst:869 +#: 9e94073e377e4f0e982b3de50c7f9206 +#: 6cb5196bb0504400af83d4731274d8be +#: 6b67d4e97b6d4c8694c2e8da96a76517 +msgid "Before" +msgstr "" + +#: ../../migrating_to_v1.rst:59 +#: ../../migrating_to_v1.rst:95 +#: ../../migrating_to_v1.rst:869 +#: eb2dcd846f054ca58906e7e4b49a54c5 +#: a331664e22074b3a87583500ac143465 +#: 0ee0a1495d2d41beaa51cd3784372563 +msgid "After" +msgstr "" + +#: ../../migrating_to_v1.rst:61 +#: 13f32d70cf83477f82296124e4cdcb90 +msgid "``Message.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:61 +#: 848d312489e0445ca918844f862eea2f +msgid ":attr:`Message.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:63 +#: ee989678780a439e8e869ab5863db5a9 +msgid "``Channel.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:63 +#: 903a4bed805f45d2bd606304c5c55ff8 +msgid ":attr:`.GuildChannel.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:65 +#: 21084db1e16941c6a730d938e56f5732 +msgid "``Client.servers``" +msgstr "" + +#: ../../migrating_to_v1.rst:65 +#: ../../migrating_to_v1.rst:233 +#: bf57f40e45224fb6b17b85631e1cd610 +#: c0744923b6ad4866b1d44b17f03192dc +msgid ":attr:`Client.guilds`" +msgstr "" + +#: ../../migrating_to_v1.rst:67 +#: 945daa4c554640b1855029d249c5b8d7 +msgid "``Client.get_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:67 +#: 68cfaa3d9fbe461eb7dfd5fff7c06c5c +msgid ":meth:`Client.get_guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:69 +#: 875c2ef6561f4509b9ff0b5f4f20e0ad +msgid "``Emoji.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:69 +#: 3c37d605a0764fecb6891d6570e0f59c +msgid ":attr:`Emoji.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:71 +#: 29f06211fc3a451080147b3fa1b63ecf +msgid "``Role.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:71 +#: 45a2673f1722437da461561f91d40dc4 +msgid ":attr:`Role.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:73 +#: 96b745ba395d4504a3ddd38f88ec7104 +msgid "``Invite.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:73 +#: fc9f937fe96f42a4a27286ebb0ff422c +msgid ":attr:`Invite.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:75 +#: 5d3f552e24a347648b4ed8d1faa3ec4b +msgid "``Member.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:75 +#: 096b13e7789940b39edb3afc84270347 +msgid ":attr:`Member.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:77 +#: 0314f6751297469f921e125c6e6a0bc8 +msgid "``Permissions.manage_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:77 +#: affd96346b0b4e01bcbde35265580bea +msgid ":attr:`Permissions.manage_guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:79 +#: 5e44ec077a944f84b7e8d3f99ac23868 +msgid "``VoiceClient.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:79 +#: dbdf10d3e3e3429f8c02921f1ca1b843 +msgid ":attr:`VoiceClient.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:81 +#: 9316c0bac15449e49e73ddb4a78e2fc2 +msgid "``Client.create_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:81 +#: 2d48655041c44ee38f073c15d1f36a9b +msgid ":meth:`Client.create_guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:87 +#: 011af788cddf4c26aa243f725dcdd5e5 +msgid "Models are Stateful" +msgstr "" + +#: ../../migrating_to_v1.rst:89 +#: c999a05b88fe4eedbc6371c77cef842c +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "" + +#: ../../migrating_to_v1.rst:92 +#: e9b15496d50c4ec0a05adf9442bde7a4 +msgid "A list of these changes is enumerated below." +msgstr "" + +#: ../../migrating_to_v1.rst:97 +#: 94e795e1da494a64b0c0bc866ae68c15 +msgid "``Client.add_reaction``" +msgstr "" + +#: ../../migrating_to_v1.rst:97 +#: 8bea368aaa4d4177909d013637a2829d +msgid ":meth:`Message.add_reaction`" +msgstr "" + +#: ../../migrating_to_v1.rst:99 +#: 8db0940f543543059a77cf8df0b81c5d +msgid "``Client.add_roles``" +msgstr "" + +#: ../../migrating_to_v1.rst:99 +#: 9a303369f600474aadc221234b1c1a1c +msgid ":meth:`Member.add_roles`" +msgstr "" + +#: ../../migrating_to_v1.rst:101 +#: fd21c1b2c3e34b429c1cf07bd8756eff +msgid "``Client.ban``" +msgstr "" + +#: ../../migrating_to_v1.rst:101 +#: b6a7d155d4784c9193fad59b72a6ae3a +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr "" + +#: ../../migrating_to_v1.rst:103 +#: 8ea042cb92df473c872e8bd49c658d33 +msgid "``Client.change_nickname``" +msgstr "" + +#: ../../migrating_to_v1.rst:103 +#: ../../migrating_to_v1.rst:171 +#: ../../migrating_to_v1.rst:187 +#: ../../migrating_to_v1.rst:195 +#: ea928f7105be4ba58ae0cf4fafee9a56 +#: aa792784735d4bdba990f4c81103bdf8 +#: de31911786464ca6ba77fd0a83061978 +#: 74f3be9c3add4f368f86a690fc5d1472 +msgid ":meth:`Member.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:105 +#: 0e56f79feaf942f2b47ef31533e852be +msgid "``Client.clear_reactions``" +msgstr "" + +#: ../../migrating_to_v1.rst:105 +#: c677bd80cb794404a16dd85913b026fd +msgid ":meth:`Message.clear_reactions`" +msgstr "" + +#: ../../migrating_to_v1.rst:107 +#: 405430deafd44706b1d2ccfdc7adffef +msgid "``Client.create_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:107 +#: 8197239135d4498c987d70feeb74230e +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr "" + +#: ../../migrating_to_v1.rst:109 +#: e078594a079a4fc7afe2da419064f075 +msgid "``Client.create_custom_emoji``" +msgstr "" + +#: ../../migrating_to_v1.rst:109 +#: f2a7d3500a6843ce8571812144dbcdd1 +msgid ":meth:`Guild.create_custom_emoji`" +msgstr "" + +#: ../../migrating_to_v1.rst:111 +#: 8b7d857db2c04131b45dcc292a87350d +msgid "``Client.create_invite``" +msgstr "" + +#: ../../migrating_to_v1.rst:111 +#: a60b083866944e07b48eb011fcded1fd +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr "" + +#: ../../migrating_to_v1.rst:113 +#: 6897002f63c34b1aa54f7db07bcaca52 +msgid "``Client.create_role``" +msgstr "" + +#: ../../migrating_to_v1.rst:113 +#: 725a519d0f244b5da03b8c093fb489cc +msgid ":meth:`Guild.create_role`" +msgstr "" + +#: ../../migrating_to_v1.rst:115 +#: d4ab86d5c94f4605910cea8cf12e4106 +msgid "``Client.delete_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:115 +#: d0908cd8ea9b403f9d6de25b14807e11 +msgid ":meth:`abc.GuildChannel.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:117 +#: efd47808372b4129adcb9edaaba93f37 +msgid "``Client.delete_channel_permissions``" +msgstr "" + +#: ../../migrating_to_v1.rst:117 +#: 6b38d46ef27f48cfba916a202e9e100e +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr "" + +#: ../../migrating_to_v1.rst:119 +#: 5c12aa9ffd114e83b757f7a014de636b +msgid "``Client.delete_custom_emoji``" +msgstr "" + +#: ../../migrating_to_v1.rst:119 +#: 9a1c29f1279b41f2b999cb7904b381c2 +msgid ":meth:`Emoji.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:121 +#: ebf7d015a5b14213a5eaee0813f0ffb1 +msgid "``Client.delete_invite``" +msgstr "" + +#: ../../migrating_to_v1.rst:121 +#: b4e1fb2064484dfabf7352cad2f466e9 +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr "" + +#: ../../migrating_to_v1.rst:123 +#: adc92ae100614899b29e8676b7a1ef5e +msgid "``Client.delete_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:123 +#: 51be51cd47d649ae9efc2cc87a9affb2 +msgid ":meth:`Message.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:125 +#: 5db9f035ef83430a89b58e8ec64f50be +msgid "``Client.delete_messages``" +msgstr "" + +#: ../../migrating_to_v1.rst:125 +#: 8eb231dcf1534abb83d85ffe5e117d32 +msgid ":meth:`TextChannel.delete_messages`" +msgstr "" + +#: ../../migrating_to_v1.rst:127 +#: 7655a15760eb4237aad379eee0dfe37b +msgid "``Client.delete_role``" +msgstr "" + +#: ../../migrating_to_v1.rst:127 +#: d1111acf427b4f1886208654311f7c6a +msgid ":meth:`Role.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:129 +#: 9fab1feb27fc4216b4672fb8d6b1c6d4 +msgid "``Client.delete_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:129 +#: b44734280874458eafaaa518cb0ce20f +msgid ":meth:`Guild.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:131 +#: fcc22c5f49c4431c94ce4b63152e9590 +msgid "``Client.edit_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:131 +#: ../../migrating_to_v1.rst:169 +#: 93122c34f2a241d5acb80ac8a27f3c4f +#: e04c8bcd4136405b9c220ca7cc7d1e94 +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:133 +#: 7b6e8997079445cb8147f3d3d23e1191 +msgid "``Client.edit_channel_permissions``" +msgstr "" + +#: ../../migrating_to_v1.rst:133 +#: cf899de66e4d48f6a029c40b2d6c2003 +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr "" + +#: ../../migrating_to_v1.rst:135 +#: 5103bd1efa634efb98de457fd1af2c92 +msgid "``Client.edit_custom_emoji``" +msgstr "" + +#: ../../migrating_to_v1.rst:135 +#: 20888f79720b4d519397d484a767dd0d +msgid ":meth:`Emoji.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:137 +#: 38060dbbe60044ac904147be01829edd +msgid "``Client.edit_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:137 +#: 8dbe5754dd5d4f08839579fe2437035f +msgid ":meth:`Message.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:139 +#: fae4deadcb5c4faab066509db2b40df8 +msgid "``Client.edit_profile``" +msgstr "" + +#: ../../migrating_to_v1.rst:139 +#: 91cd7eb6ec4a484a929c0065a1c1be12 +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr "" + +#: ../../migrating_to_v1.rst:141 +#: ec1708f42e1b4837b199eb03aa6d0802 +msgid "``Client.edit_role``" +msgstr "" + +#: ../../migrating_to_v1.rst:141 +#: ../../migrating_to_v1.rst:173 +#: 7a3c12cb8dfb41bf955590556e87f472 +#: 2ca2af0b09124e90a2f0d31328f8e1d6 +msgid ":meth:`Role.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:143 +#: 5c59f45214844d8381809ca387bfc230 +msgid "``Client.edit_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:143 +#: 2db144ee0f7b4fffa9fd39e1ca3238ae +msgid ":meth:`Guild.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:145 +#: dbee023d8b504910a06bd022ff49933d +msgid "``Client.estimate_pruned_members``" +msgstr "" + +#: ../../migrating_to_v1.rst:145 +#: fd3396dc423045bab0ceca5f4316dd7a +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr "" + +#: ../../migrating_to_v1.rst:147 +#: ../../migrating_to_v1.rst:327 +#: ea5522c34eaf4037834c736733e6c0f5 +#: f8ab0d799f99475cb3ac68107b5033e1 +msgid "``Client.get_all_emojis``" +msgstr "" + +#: ../../migrating_to_v1.rst:147 +#: 3f799da829b84af9b77c1eb7e280d747 +msgid ":attr:`Client.emojis`" +msgstr "" + +#: ../../migrating_to_v1.rst:149 +#: 85a7cbed901245c1a33ff023c25ec644 +msgid "``Client.get_bans``" +msgstr "" + +#: ../../migrating_to_v1.rst:149 +#: b01d0c956dcc43b1a204501308966016 +msgid ":meth:`Guild.bans`" +msgstr "" + +#: ../../migrating_to_v1.rst:151 +#: 35c46218094b4f62bd661e0c8c5c9f39 +msgid "``Client.get_invite``" +msgstr "" + +#: ../../migrating_to_v1.rst:151 +#: 4167a66028c4468698d060ea2c5d2ab3 +msgid ":meth:`Client.fetch_invite`" +msgstr "" + +#: ../../migrating_to_v1.rst:153 +#: fa438a74ea2b486eb04f95af7fa5f014 +msgid "``Client.get_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:153 +#: 5bf6ea90b56a434ab46dc6b403c513ab +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr "" + +#: ../../migrating_to_v1.rst:155 +#: a19cc4a9328042938def362716827d73 +msgid "``Client.get_reaction_users``" +msgstr "" + +#: ../../migrating_to_v1.rst:155 +#: ../../migrating_to_v1.rst:493 +#: 0aeff23f2d644390a344002dc788bf88 +#: 350c6a6c4c384a2b90bb54dedbb75987 +msgid ":meth:`Reaction.users`" +msgstr "" + +#: ../../migrating_to_v1.rst:157 +#: a66f58f3ec2740b6a6a82a49e167c3d7 +msgid "``Client.get_user_info``" +msgstr "" + +#: ../../migrating_to_v1.rst:157 +#: a8a6c6c74f714667b21fd9bc30bc6925 +msgid ":meth:`Client.fetch_user`" +msgstr "" + +#: ../../migrating_to_v1.rst:159 +#: 0a14f4f2c56e49cd8f365edb1f82c378 +msgid "``Client.invites_from``" +msgstr "" + +#: ../../migrating_to_v1.rst:159 +#: 67cdab68e2bb4467a38adcb61049dc23 +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr "" + +#: ../../migrating_to_v1.rst:161 +#: 7c03320da8d242f992b1573330ce8b7d +msgid "``Client.join_voice_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:161 +#: 0d44d955e09a43b199a05191d5900ba8 +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr "" + +#: ../../migrating_to_v1.rst:163 +#: 27881100eed84bf7b795c126be68f1a6 +msgid "``Client.kick``" +msgstr "" + +#: ../../migrating_to_v1.rst:163 +#: 94e0f7141cda45ae903c35aa6a69c35d +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr "" + +#: ../../migrating_to_v1.rst:165 +#: 3b984ccf21c145a7ad6a39a55f951f37 +msgid "``Client.leave_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:165 +#: cc54c4b806da43aaada0c9bb0aff3fe0 +msgid ":meth:`Guild.leave`" +msgstr "" + +#: ../../migrating_to_v1.rst:167 +#: 46e93cb3d74148509eaba7bcba6d3773 +msgid "``Client.logs_from``" +msgstr "" + +#: ../../migrating_to_v1.rst:167 +#: 9db5389e5ae84620869db55173736111 +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr "" + +#: ../../migrating_to_v1.rst:169 +#: 12d4e4d1daf04ec3ba27607b30bcbf9c +msgid "``Client.move_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:171 +#: f5b76a01d47a4e5d8031370a4d864786 +msgid "``Client.move_member``" +msgstr "" + +#: ../../migrating_to_v1.rst:173 +#: b9787931f9a0423b97f79701c74670f6 +msgid "``Client.move_role``" +msgstr "" + +#: ../../migrating_to_v1.rst:175 +#: 5c8fdd44558b4ca7a1bff8d6380fa123 +msgid "``Client.pin_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:175 +#: 0c34b268afcc48caaee11aaf50000804 +msgid ":meth:`Message.pin`" +msgstr "" + +#: ../../migrating_to_v1.rst:177 +#: 2d28dfd9a6d64279a5e2b700a3e68bcc +msgid "``Client.pins_from``" +msgstr "" + +#: ../../migrating_to_v1.rst:177 +#: de48b36586f04dbabbbed5b57bdc119c +msgid ":meth:`abc.Messageable.pins`" +msgstr "" + +#: ../../migrating_to_v1.rst:179 +#: 09aeb1072a5644b68615c67361062d68 +msgid "``Client.prune_members``" +msgstr "" + +#: ../../migrating_to_v1.rst:179 +#: 6802632e0c70420aba56713487e598f2 +msgid ":meth:`Guild.prune_members`" +msgstr "" + +#: ../../migrating_to_v1.rst:181 +#: 17170c5bcff34c0e9539a8eea220a74f +msgid "``Client.purge_from``" +msgstr "" + +#: ../../migrating_to_v1.rst:181 +#: d36ebb5d874648cc85d51b970a233a74 +msgid ":meth:`TextChannel.purge`" +msgstr "" + +#: ../../migrating_to_v1.rst:183 +#: 13be010f52b34321918e1696c8383852 +msgid "``Client.remove_reaction``" +msgstr "" + +#: ../../migrating_to_v1.rst:183 +#: 29aa2125f7a34ccfa54c4372872b7f43 +msgid ":meth:`Message.remove_reaction`" +msgstr "" + +#: ../../migrating_to_v1.rst:185 +#: 06fd7f80d1634176804ee99ef6ae311a +msgid "``Client.remove_roles``" +msgstr "" + +#: ../../migrating_to_v1.rst:185 +#: f9648fd1303a4d0aaf94af88c0d1ea8f +msgid ":meth:`Member.remove_roles`" +msgstr "" + +#: ../../migrating_to_v1.rst:187 +#: 4a8077b6aac245ae80a7d0c20ad2eca1 +msgid "``Client.replace_roles``" +msgstr "" + +#: ../../migrating_to_v1.rst:189 +#: 82070de88db3450382a6e8b64b0638b5 +msgid "``Client.send_file``" +msgstr "" + +#: ../../migrating_to_v1.rst:189 +#: ../../migrating_to_v1.rst:191 +#: 21b5cb332c3140118eea23a5db6c5918 +#: 5a9ebc5464ae436a878e4068f6380ee5 +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr "" + +#: ../../migrating_to_v1.rst:191 +#: 44ae95f930be41b6a6594c20c055e7d4 +msgid "``Client.send_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:193 +#: c760774b209f42b1b2d308fde2e7aba5 +msgid "``Client.send_typing``" +msgstr "" + +#: ../../migrating_to_v1.rst:193 +#: 04926c93000d411b812f6983e5f467a5 +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr "" + +#: ../../migrating_to_v1.rst:195 +#: b11c308b2aeb41b287e1cc0bd595959b +msgid "``Client.server_voice_state``" +msgstr "" + +#: ../../migrating_to_v1.rst:197 +#: b1b87fd6d1274c8bb1e5442c9df56101 +msgid "``Client.start_private_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:197 +#: 610cb6f98f2845af9066ca0bde6716fc +msgid ":meth:`User.create_dm`" +msgstr "" + +#: ../../migrating_to_v1.rst:199 +#: a11d9f52701b407d8d2335f74dbbfcea +msgid "``Client.unban``" +msgstr "" + +#: ../../migrating_to_v1.rst:199 +#: 031a1c0155c44f0ca8f9b5132954bc1e +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr "" + +#: ../../migrating_to_v1.rst:201 +#: 5c196c6af2fd45daadf86d1dc9704580 +msgid "``Client.unpin_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:201 +#: 08494bd8ab9c4acb9673ef7581383b31 +msgid ":meth:`Message.unpin`" +msgstr "" + +#: ../../migrating_to_v1.rst:203 +#: d2cf551969f646918ce0e788d35b6e5e +msgid "``Client.wait_for_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:203 +#: ../../migrating_to_v1.rst:205 +#: aeb94dbd878040e18cd6830187c6c850 +#: 202dc8001ca4408aa742db9ad98ce404 +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr "" + +#: ../../migrating_to_v1.rst:205 +#: 4ca6e12c3be449439cfa64b0df3c5e3d +msgid "``Client.wait_for_reaction``" +msgstr "" + +#: ../../migrating_to_v1.rst:207 +#: 28b6320bfed6413d998a266242586173 +msgid "``Client.wait_until_login``" +msgstr "" + +#: ../../migrating_to_v1.rst:207 +#: 5424bd2db4c04063adeb15efa0b596ee +msgid "Removed" +msgstr "" + +#: ../../migrating_to_v1.rst:209 +#: 2b683045f0154326bbe09da63799050c +msgid "``Client.wait_until_ready``" +msgstr "" + +#: ../../migrating_to_v1.rst:209 +#: 969b537044544ccd96e09e7bb393f9a4 +msgid "No change" +msgstr "" + +#: ../../migrating_to_v1.rst:213 +#: b833197c9eda40ceb1f0458d1dbdc1b0 +msgid "Property Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:215 +#: 96fb89d21cfc4269b3340e8bf24c3ff3 +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "" + +#: ../../migrating_to_v1.rst:217 +#: db5e4c126dc6483597ae4b448fd25a01 +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "" + +#: ../../migrating_to_v1.rst:219 +#: 9e67c72b4a5447c1bcdf5fe2e5c844ee +msgid ":meth:`Role.is_default`" +msgstr "" + +#: ../../migrating_to_v1.rst:220 +#: 49bacae9ae944b169775bac1e871de18 +msgid ":meth:`Client.is_ready`" +msgstr "" + +#: ../../migrating_to_v1.rst:221 +#: f1ed0e382f1945588d162fb5af03420f +msgid ":meth:`Client.is_closed`" +msgstr "" + +#: ../../migrating_to_v1.rst:224 +#: ece133f97cff4d0dad36e052438c7a64 +msgid "Dict Value Change" +msgstr "" + +#: ../../migrating_to_v1.rst:226 +#: 7cd0083e51a84abb9055eb5f10b5f4f1 +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "" + +#: ../../migrating_to_v1.rst:228 +#: 8a5302be472945d2b648830639c97007 +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "" + +#: ../../migrating_to_v1.rst:231 +#: 39186001d0b9465fb4fe28855a9402eb +msgid "The following views were changed to a list:" +msgstr "" + +#: ../../migrating_to_v1.rst:234 +#: cb1e36effc2d4f3f89ce30bc609fc2e9 +msgid ":attr:`Client.users` (new in v1.0)" +msgstr "" + +#: ../../migrating_to_v1.rst:235 +#: 4e04941d05bb4c6baf35ec2c3333cde9 +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr "" + +#: ../../migrating_to_v1.rst:236 +#: 64adbb946f4d4c8dab5bd36915a526f9 +msgid ":attr:`Guild.channels`" +msgstr "" + +#: ../../migrating_to_v1.rst:237 +#: e4ff974617fb4c86a225769bec0d2b9c +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr "" + +#: ../../migrating_to_v1.rst:238 +#: 39239d0c77204068bb8730a9672a929b +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr "" + +#: ../../migrating_to_v1.rst:239 +#: e5a4c980d3ed471ea95c02e62c8ab392 +msgid ":attr:`Guild.emojis`" +msgstr "" + +#: ../../migrating_to_v1.rst:240 +#: 5098e9b55b9f4fc4a7456fd18644e798 +msgid ":attr:`Guild.members`" +msgstr "" + +#: ../../migrating_to_v1.rst:243 +#: fc819b1aa6a743ddbf0cb3fc9d8f8380 +msgid "Voice State Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:245 +#: 4208d2bddf8d4a58a07a51fdd2a08b0e +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "" + +#: ../../migrating_to_v1.rst:248 +#: d77f52311c20468597ad6cae9b443580 +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "" + +#: ../../migrating_to_v1.rst:251 +#: 95db5960ec01462d8b943bc47a492b11 +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "" + +#: ../../migrating_to_v1.rst:267 +#: 6db07e90c3b340d28b008cc0078339c8 +msgid "User and Member Type Split" +msgstr "" + +#: ../../migrating_to_v1.rst:269 +#: 5a79efb82b2642fda44762a3c85a558d +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "" + +#: ../../migrating_to_v1.rst:273 +#: 6419a01d88174ef6a777c54e617e0404 +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "" + +#: ../../migrating_to_v1.rst:280 +#: 5bf8ba5e79d54e13b799945973a41880 +msgid "Channel Type Split" +msgstr "" + +#: ../../migrating_to_v1.rst:282 +#: 45a2593f472643d6a19e40a147888513 +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "" + +#: ../../migrating_to_v1.rst:285 +#: dc8f4981304946ff88e31e42f80a2a29 +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "" + +#: ../../migrating_to_v1.rst:287 +#: f550804ce1204cb2b636820acf1af973 +msgid ":class:`TextChannel` for guild text channels." +msgstr "" + +#: ../../migrating_to_v1.rst:288 +#: 8f4c1f0b78cb48889fa2a2d2fc3cc260 +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr "" + +#: ../../migrating_to_v1.rst:289 +#: 19b50d1fe9fb49e59fce3623f1f447ac +msgid ":class:`DMChannel` for DM channels with members." +msgstr "" + +#: ../../migrating_to_v1.rst:290 +#: e6f2c36a649a4de483721010dfb6b395 +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr "" + +#: ../../migrating_to_v1.rst:292 +#: f9f1dcdab18c4ef7b8a1869e026589aa +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "" + +#: ../../migrating_to_v1.rst:294 +#: c16783ba48b64517a3c6fd00e76880e5 +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "" + +#: ../../migrating_to_v1.rst:296 +#: a08dd7257a9a418cbdd428cfe61d8255 +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr "" + +#: ../../migrating_to_v1.rst:297 +#: ab147f4fc32e4a128bd8a3ac4c39cfc5 +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr "" + +#: ../../migrating_to_v1.rst:299 +#: e3e9a8d1db9b472da8d40eb0f0a67f26 +msgid "So to check if something is a guild channel you would do: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:303 +#: b3383f30092b4653a41adedacbf9d65d +msgid "And to check if it's a private channel you would do: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:307 +#: 03625cafc46e403db8b3dc9d11450f0e +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "" + +#: ../../migrating_to_v1.rst:311 +#: 7ac3cf11adc9479c8bf2ad730811c516 +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "" + +#: ../../migrating_to_v1.rst:315 +#: 2d828c5926924c8f86e32794b479d977 +msgid "Miscellaneous Model Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:317 +#: cc198061f9b64c929962944acf543124 +msgid "There were lots of other things added or removed in the models in general." +msgstr "" + +#: ../../migrating_to_v1.rst:319 +#: fd469142924b4fd7a3b4921523036b46 +msgid "They will be enumerated here." +msgstr "" + +#: ../../migrating_to_v1.rst:321 +#: e9404c8e82e3482fab8d708ea362e99a +msgid "**Removed**" +msgstr "" + +#: ../../migrating_to_v1.rst:323 +#: 9462ce20bfef475e93af420b16f85ca2 +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr "" + +#: ../../migrating_to_v1.rst:325 +#: 0cc0d2cfe0da43c493b34b540b4af4a8 +msgid "Use a token and ``bot=False``." +msgstr "" + +#: ../../migrating_to_v1.rst:329 +#: 1390977a01694002a12fd426db34ce2f +msgid "Use :attr:`Client.emojis` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:331 +#: d40f8bd32e1e49ab90022f5188a954b2 +msgid "``Client.messages``" +msgstr "" + +#: ../../migrating_to_v1.rst:333 +#: d72282cc08364496b2ca23a1c5c981b7 +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:335 +#: 36216d86592e4d5d88a6c5964e07858d +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "" + +#: ../../migrating_to_v1.rst:337 +#: 612b385adaf749f1a4f052e1dab81603 +msgid "Use :meth:`Client.wait_for` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:339 +#: aa636de7e20142d993f176264467d788 +msgid "``Channel.voice_members``" +msgstr "" + +#: ../../migrating_to_v1.rst:341 +#: f2ddce14d7014b77aa99274280ab8085 +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:343 +#: c7cbd4c6cc2e44ffbb1e374f16e3ca14 +msgid "``Channel.is_private``" +msgstr "" + +#: ../../migrating_to_v1.rst:345 +#: af2e0b9e82fe451d8e968fd44078eecc +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:346 +#: 8ff877a7d0494dc6885840c9a9af926d +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "" + +#: ../../migrating_to_v1.rst:348 +#: 2c690055e6e84005bc23d6e022f6d0fe +msgid "``Client.accept_invite``" +msgstr "" + +#: ../../migrating_to_v1.rst:350 +#: 3ed5021249ef44a3aaf415eb444809fd +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "" + +#: ../../migrating_to_v1.rst:352 +#: 2f00496bbdbb43b5bb4f3c2959b5a36c +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "" + +#: ../../migrating_to_v1.rst:354 +#: d9cc44a13d7d4d68b6284345d21ad0b2 +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "" + +#: ../../migrating_to_v1.rst:357 +#: cc7ab25609f64d84ad2e7ead99fd4740 +msgid "``Message.edited_timestamp``" +msgstr "" + +#: ../../migrating_to_v1.rst:359 +#: c279877dabcf4c55a054fdd2f3bb1859 +msgid "Use :attr:`Message.edited_at` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:361 +#: 37c351618c12422c9a87f21796f1a45e +msgid "``Message.timestamp``" +msgstr "" + +#: ../../migrating_to_v1.rst:363 +#: 4fa300b20b3345a6ba9b288a4465cc4c +msgid "Use :attr:`Message.created_at` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:365 +#: 2eb7618a262b47cb90ce5652125b2366 +msgid "``Colour.to_tuple()``" +msgstr "" + +#: ../../migrating_to_v1.rst:367 +#: f834ba8e5c954537bfd16b57228fbb7c +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:369 +#: d6bfb84091fc4d72b69ac916cb1579dd +msgid "``Permissions.view_audit_logs``" +msgstr "" + +#: ../../migrating_to_v1.rst:371 +#: 10465e08fdd24e06a15519f0ed384032 +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:373 +#: 04e56cd829e1486ab65d3b92fc39852d +msgid "``Member.game``" +msgstr "" + +#: ../../migrating_to_v1.rst:375 +#: 846418d5f6814e27a4e9ac9f835a9c9f +msgid "Use :attr:`Member.activities` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:377 +#: d08bcf48a20046708bfd6f085c9a0b7d +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "" + +#: ../../migrating_to_v1.rst:379 +#: 625da8eb89cc4472912ff9ba5a136d65 +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "" + +#: ../../migrating_to_v1.rst:382 +#: 1d7540080ea24244a8583392ea4b5af6 +msgid "**Changed**" +msgstr "" + +#: ../../migrating_to_v1.rst:384 +#: 64a5c7f0e72b471988d21597f4240121 +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr "" + +#: ../../migrating_to_v1.rst:385 +#: 54bd91c8c6884da59346bba5e163c898 +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr "" + +#: ../../migrating_to_v1.rst:386 +#: c98a7b8d27c4406a819e2b4e8ecd688c +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr "" + +#: ../../migrating_to_v1.rst:387 +#: 32d1ba30b24045379f0dd4138ec8dab6 +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr "" + +#: ../../migrating_to_v1.rst:389 +#: 4cbc420538d8497a9acfd60c569bc87d +msgid "**Added**" +msgstr "" + +#: ../../migrating_to_v1.rst:391 +#: 14dadba990844c66a56441cea7741e86 +msgid ":class:`Attachment` to represent a discord attachment." +msgstr "" + +#: ../../migrating_to_v1.rst:392 +#: 5c834b00f5c741f0a0023eb764f35852 +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr "" + +#: ../../migrating_to_v1.rst:393 +#: 2e0e1b0db23640338188a19254667a01 +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr "" + +#: ../../migrating_to_v1.rst:394 +#: 679c97019b704cb9a55160c05ab8d03a +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr "" + +#: ../../migrating_to_v1.rst:395 +#: ddafe9fedca0419eb5210bd1d23c3358 +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr "" + +#: ../../migrating_to_v1.rst:396 +#: 0e7db41ddde4453eae7d065d60eb2ef5 +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr "" + +#: ../../migrating_to_v1.rst:397 +#: 3343b58250264ea1a3edd8a2ae90ec1d +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr "" + +#: ../../migrating_to_v1.rst:398 +#: 0e5f8bbd9111437c94d828d8aa4abf28 +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr "" + +#: ../../migrating_to_v1.rst:399 +#: 84147ba1e8c547daa2038b9984ac64d5 +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr "" + +#: ../../migrating_to_v1.rst:400 +#: f8dbf611354144578256e71473ef5556 +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr "" + +#: ../../migrating_to_v1.rst:401 +#: 03fd7a8161a349ad9afa53e366917cb3 +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr "" + +#: ../../migrating_to_v1.rst:402 +#: b4e50029b4bd433fa6d5fbd8afe42d3a +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr "" + +#: ../../migrating_to_v1.rst:403 +#: 894c9d25dce5446e941cf54a226c64b5 +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr "" + +#: ../../migrating_to_v1.rst:404 +#: 0e1a13e6497a4994984adf71ac3d018d +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr "" + +#: ../../migrating_to_v1.rst:405 +#: bb959e7f5430417babe1bf43e7073351 +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr "" + +#: ../../migrating_to_v1.rst:406 +#: df5dce28532c4ea7bd6c75e1535ad238 +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr "" + +#: ../../migrating_to_v1.rst:407 +#: 47388b4ae3ee45f9945824b02d116a3e +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr "" + +#: ../../migrating_to_v1.rst:408 +#: c6443ea78c7646d58a81f4f6021f48b1 +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr "" + +#: ../../migrating_to_v1.rst:409 +#: 8d298003d6194b059a7e22e9caf69fed +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr "" + +#: ../../migrating_to_v1.rst:410 +#: 01bfca795c93402594ec5e740adbf1f5 +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr "" + +#: ../../migrating_to_v1.rst:411 +#: 3a3b4ed3653e44859829df298d331289 +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr "" + +#: ../../migrating_to_v1.rst:412 +#: 0f551cce961242699bfc7f5ff1a08858 +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr "" + +#: ../../migrating_to_v1.rst:413 +#: 64342a1e3ab94a9caf4fdea4cddf74a7 +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr "" + +#: ../../migrating_to_v1.rst:418 +#: 93483cd0b11742a5be6a2630fcadfd6c +msgid "Sending Messages" +msgstr "" + +#: ../../migrating_to_v1.rst:420 +#: 4a7d41fa39074e78af801e0ccb92fc52 +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "" + +#: ../../migrating_to_v1.rst:423 +#: ../../migrating_to_v1.rst:1077 +#: a95df90801f5424ba3ffc944daf822d2 +#: 635b9e52c62b40be95e8f1251bc4cecf +msgid "Basically: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:431 +#: 75b25b7eecf34fbb90e4c65fce5225ab +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:436 +#: 0ef5563378af41de874e269e1cd5b715 +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "" + +#: ../../migrating_to_v1.rst:445 +#: 8443012316c74ad193cb170f3e814f1d +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:457 +#: 0d4c2304e5664095afccfa5ed96747d3 +msgid "Asynchronous Iterators" +msgstr "" + +#: ../../migrating_to_v1.rst:459 +#: 77bd460a27e14dddb3ce6500b4c9320a +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "" + +#: ../../migrating_to_v1.rst:461 +#: a3a3f79370b2492c86b4affcf4a5c94f +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "" + +#: ../../migrating_to_v1.rst:464 +#: 5d5f83816f9d44b5b3707a7e7475ab04 +msgid "This allows you to iterate over it like normal: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:469 +#: 1fc400dcbe254cfab5aed6427460356b +msgid "Or turn it into a list: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:475 +#: 7326483343ea4cf691a3711031f4643e +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:481 +#: 3b65f1ee651543878ac2a4feadf18d68 +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "" + +#: ../../migrating_to_v1.rst:484 +#: 0dcb16850ed4472d94ac1a873afd2c49 +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:489 +#: c335fa3d422745b6bc51f91e811acc63 +msgid "The following return :class:`AsyncIterator`:" +msgstr "" + +#: ../../migrating_to_v1.rst:491 +#: 02e5d9e1999645289ffd7e3664d02f8b +msgid ":meth:`abc.Messageable.history`" +msgstr "" + +#: ../../migrating_to_v1.rst:492 +#: 0d5fbee7dd1246b8ab9958162096803d +msgid ":meth:`Guild.audit_logs`" +msgstr "" + +#: ../../migrating_to_v1.rst:498 +#: ../../migrating_to_v1.rst:924 +#: a06857ff194c4c8d9879e9d48b66a4e0 +#: f19b1d3c85b14c5090e82a7e8f4abf7e +msgid "Event Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:500 +#: 73a83837fbd74e929cce57fb5a3e4a0f +msgid "A lot of events have gone through some changes." +msgstr "" + +#: ../../migrating_to_v1.rst:502 +#: efb7fb2ba44c497993cbd45815884179 +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:504 +#: ../../migrating_to_v1.rst:568 +#: 44ad88423637441a84457439a0f40c90 +#: 05be7cd79c304f8d8d3938d10271bd25 +msgid "Before:" +msgstr "" + +#: ../../migrating_to_v1.rst:506 +#: 3e26664afda3432e979887340292fd4e +msgid "``on_server_join``" +msgstr "" + +#: ../../migrating_to_v1.rst:507 +#: bfca7cb48a0443a59641d34c4f77414e +msgid "``on_server_remove``" +msgstr "" + +#: ../../migrating_to_v1.rst:508 +#: 3b758973e78446e0b64fb4ac24b283ac +msgid "``on_server_update``" +msgstr "" + +#: ../../migrating_to_v1.rst:509 +#: 225ab365b80f46b4b6abc2d218692712 +msgid "``on_server_role_create``" +msgstr "" + +#: ../../migrating_to_v1.rst:510 +#: f2d40c3b31a248ec84a7838fd269c021 +msgid "``on_server_role_delete``" +msgstr "" + +#: ../../migrating_to_v1.rst:511 +#: 12325851acf84556be5553ad3e8a02b0 +msgid "``on_server_role_update``" +msgstr "" + +#: ../../migrating_to_v1.rst:512 +#: 2b2b76f5b5c14c57bf4a72304d9a1f42 +msgid "``on_server_emojis_update``" +msgstr "" + +#: ../../migrating_to_v1.rst:513 +#: 253c9805a2664e738602b6e2a7eb24f7 +msgid "``on_server_available``" +msgstr "" + +#: ../../migrating_to_v1.rst:514 +#: ccf36e9aa1a34a34a0ca1cfcda1a8129 +msgid "``on_server_unavailable``" +msgstr "" + +#: ../../migrating_to_v1.rst:516 +#: ../../migrating_to_v1.rst:574 +#: 164f5c204a764a6e89e9a9ac4f131f4d +#: b27e082641724727b1d09366a780883d +msgid "After:" +msgstr "" + +#: ../../migrating_to_v1.rst:518 +#: 80efc076afd748cd8e9bb0346e68c204 +msgid ":func:`on_guild_join`" +msgstr "" + +#: ../../migrating_to_v1.rst:519 +#: 1c025ced74894b8f90770059394c1cf7 +msgid ":func:`on_guild_remove`" +msgstr "" + +#: ../../migrating_to_v1.rst:520 +#: 18b24e3e47de485ea172d04fcd65894e +msgid ":func:`on_guild_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:521 +#: 54318d6c483b4fb9a15ca23092016794 +msgid ":func:`on_guild_role_create`" +msgstr "" + +#: ../../migrating_to_v1.rst:522 +#: ee473486cb6b437db292bff45960be1e +msgid ":func:`on_guild_role_delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:523 +#: 357b45fa893b42919c27663616c68c61 +msgid ":func:`on_guild_role_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:524 +#: 850177a045774335bdb609cca813b4ba +msgid ":func:`on_guild_emojis_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:525 +#: a3c14e69548442f290c0fe2965ab9932 +msgid ":func:`on_guild_available`" +msgstr "" + +#: ../../migrating_to_v1.rst:526 +#: 1265b1a2ee624cba8173434262b3965e +msgid ":func:`on_guild_unavailable`" +msgstr "" + +#: ../../migrating_to_v1.rst:529 +#: 1586e1d1ad2f4516bf02ffd5c9d0de6f +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "" + +#: ../../migrating_to_v1.rst:531 +#: ../../migrating_to_v1.rst:543 +#: ../../migrating_to_v1.rst:555 +#: ../../migrating_to_v1.rst:615 +#: ../../migrating_to_v1.rst:928 +#: 6da4ff8098aa4351a5c83d1ffcc4f1d1 +#: 5e096ef003564027843e2cf77fd49905 +#: c58eac28c0944f9ea8c790dcb2b6fdae +#: 43cd0c51ff7c4ecb97667690a1b6ef3a +#: b07d66fff1a5420480498608ba884ffe +msgid "Before: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:535 +#: ../../migrating_to_v1.rst:547 +#: ../../migrating_to_v1.rst:559 +#: ../../migrating_to_v1.rst:627 +#: ../../migrating_to_v1.rst:934 +#: ../../migrating_to_v1.rst:1159 +#: 4eb11e4ee15f433b860e24da2cc52f5b +#: f2d06097e5364ac494727a51843f9e15 +#: f7e16601163143e5a5c386382d1cc530 +#: 708ade3f91f04892bdda6c045520adb8 +#: 1e2d99c8a53d4b3b84555fbdaa0098c0 +#: 6c20b982c40b44939fc9ee44f1a8ca76 +msgid "After: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:539 +#: 82b7c550dae34853ad149374be9cf35e +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "" + +#: ../../migrating_to_v1.rst:541 +#: 90c71970e4fb4650bac2f5b2665f3cfd +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "" + +#: ../../migrating_to_v1.rst:551 +#: da4b663442e04f998d838b3c8ed930fa +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "" + +#: ../../migrating_to_v1.rst:553 +#: c620f04df9154f268e6a50f4fc4c8cf3 +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "" + +#: ../../migrating_to_v1.rst:563 +#: b807f0e4fb744ae4870db96a8d91ad1e +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "" + +#: ../../migrating_to_v1.rst:566 +#: 7f1c9df9cef94f68a806bffba429bc72 +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "" + +#: ../../migrating_to_v1.rst:570 +#: 10ca24d1b78447019a505aaac5426f39 +msgid "``on_channel_delete``" +msgstr "" + +#: ../../migrating_to_v1.rst:571 +#: 080299c8597a427c80b2a16b424c478c +msgid "``on_channel_create``" +msgstr "" + +#: ../../migrating_to_v1.rst:572 +#: 91599eaf8d5e4aa7a6d54059f6b57a6e +msgid "``on_channel_update``" +msgstr "" + +#: ../../migrating_to_v1.rst:576 +#: 728a95daa9f7443c8d84b1f211fe1501 +msgid ":func:`on_guild_channel_delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:577 +#: b7dd268376e24a2f846d016c0f255cc3 +msgid ":func:`on_guild_channel_create`" +msgstr "" + +#: ../../migrating_to_v1.rst:578 +#: b68cb8d115c64182aef5f9aceba2f926 +msgid ":func:`on_guild_channel_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:579 +#: c514f86a93154c86994195c5d0bed7b0 +msgid ":func:`on_private_channel_delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:580 +#: 8b1b2f3c7e2d467d80cb240928e09f05 +msgid ":func:`on_private_channel_create`" +msgstr "" + +#: ../../migrating_to_v1.rst:581 +#: 8ced5d5e429840069ac52377edb7fa72 +msgid ":func:`on_private_channel_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:583 +#: 048baf8067854cdc9c7c9a67627a5fd9 +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "" + +#: ../../migrating_to_v1.rst:590 +#: c5c36d2cf4b24d558b3cfdfcae63e51f +msgid "Voice Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:592 +#: 639e1a05cfca400fa757212f628b7c79 +msgid "Voice sending has gone through a complete redesign." +msgstr "" + +#: ../../migrating_to_v1.rst:594 +#: 79fd4850356c40629b03c961b1774211 +msgid "In particular:" +msgstr "" + +#: ../../migrating_to_v1.rst:596 +#: 5110a9d33fb1423fa9c54bd7542a90d2 +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "" + +#: ../../migrating_to_v1.rst:597 +#: 0a1d45d0024b47369c5d41a7f1c69496 +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "" + +#: ../../migrating_to_v1.rst:598 +#: 94a1e1a0b2d948289e9ad1e5bdf9f884 +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "" + +#: ../../migrating_to_v1.rst:599 +#: d028a9d1d35b4e28ab709ca6b30e3748 +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "" + +#: ../../migrating_to_v1.rst:601 +#: 7a16c3f9a33a4f63bed56cc2fc51aa11 +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr "" + +#: ../../migrating_to_v1.rst:603 +#: dd63ad95e21f4ac2bd5ef9a2d44c25d7 +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "" + +#: ../../migrating_to_v1.rst:605 +#: 98ea76b951774246a1de6b99ea446da8 +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:607 +#: 32e6ad132d7c47be9e9cd27c81a2256d +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "" + +#: ../../migrating_to_v1.rst:609 +#: b7d478040bea4896b140e306ba5ac50b +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "" + +#: ../../migrating_to_v1.rst:611 +#: 1042d8cec0524ee48bfc23030609a2d6 +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "" + +#: ../../migrating_to_v1.rst:613 +#: 5c7eb0c9618c461da50a08ad3798b31b +msgid "Basically:" +msgstr "" + +#: ../../migrating_to_v1.rst:637 +#: c05b1ad0d2cd4b11b5cdb43038c54e2f +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "" + +#: ../../migrating_to_v1.rst:640 +#: 8a538c1130dc436992090e73e6aab004 +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:645 +#: 99ca270b30804d3fb23482708242605d +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "" + +#: ../../migrating_to_v1.rst:647 +#: e3aacf3b65c94ba6a7e9ac42d6e11242 +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "" + +#: ../../migrating_to_v1.rst:648 +#: fd913cc4554d469cb2710f36f3187313 +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "" + +#: ../../migrating_to_v1.rst:649 +#: fc59acabd7e447c2ae887dc918a1edf5 +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "" + +#: ../../migrating_to_v1.rst:651 +#: 4a9f6035023e4b759c02c7b2afed9a7e +msgid "This includes changing voice regions etc." +msgstr "" + +#: ../../migrating_to_v1.rst:657 +#: 44f1d6863c1e44e88f69f9d70c4ef390 +msgid "Waiting For Events" +msgstr "" + +#: ../../migrating_to_v1.rst:659 +#: ac2497871ce4455e92504c02e2f85915 +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "" + +#: ../../migrating_to_v1.rst:663 +#: f25f38d107d140319f0043e3ccd1fd47 +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "" + +#: ../../migrating_to_v1.rst:665 +#: c26f16a7656d47d29bdb6d38ba686340 +msgid "For example, to wait for a message: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:676 +#: c5124534816c42f592f1902f246de487 +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "" + +#: ../../migrating_to_v1.rst:679 +#: ef6869db7dfa468eab3e1414dddd8b28 +msgid "For example, to wait for a reaction: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:685 +#: d1e874e26d094947b75a21620a0bef4b +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "" + +#: ../../migrating_to_v1.rst:702 +#: 731714a9d67b47b5ac49c21865774415 +msgid "Upgraded Dependencies" +msgstr "" + +#: ../../migrating_to_v1.rst:704 +#: a0425b5ad3e64f05b5e23ed9323cdc1c +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "" + +#: ../../migrating_to_v1.rst:706 +#: 51740f4309a2436cb62226d8d85fd887 +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "" + +#: ../../migrating_to_v1.rst:711 +#: 2294a5360bd44948bb46d8a1fb7ab6fd +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "" + +#: ../../migrating_to_v1.rst:713 +#: d80a9eea20cf47dcbfaa9f7e35b2eb18 +msgid "``aiohttp.get``" +msgstr "" + +#: ../../migrating_to_v1.rst:714 +#: 5b2fcfa101f542c09f9978040e42f279 +msgid "``aiohttp.post``" +msgstr "" + +#: ../../migrating_to_v1.rst:715 +#: f452afc6a8bc441dbd4599ced672e757 +msgid "``aiohttp.delete``" +msgstr "" + +#: ../../migrating_to_v1.rst:716 +#: ff32585353ed484aaf798b70578d10b1 +msgid "``aiohttp.patch``" +msgstr "" + +#: ../../migrating_to_v1.rst:717 +#: f29e27af477743bb8b34e521d293553c +msgid "``aiohttp.head``" +msgstr "" + +#: ../../migrating_to_v1.rst:718 +#: 6895169f2ac44a9fb250ac23831e7745 +msgid "``aiohttp.put``" +msgstr "" + +#: ../../migrating_to_v1.rst:719 +#: 3926a1bb14794fc2b781f8388a6340a8 +msgid "``aiohttp.request``" +msgstr "" + +#: ../../migrating_to_v1.rst:721 +#: 52d8ed3a00fd4f198e643262691a0758 +msgid "It is recommended that you create a session instead: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:727 +#: ff34c1c48eee41ada64ebf3ac237280a +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "" + +#: ../../migrating_to_v1.rst:731 +#: 5dc3438852f24fb187cee1eb39823cf6 +msgid "Sharding" +msgstr "" + +#: ../../migrating_to_v1.rst:733 +#: 22fee65c18c245ad92f61d38e350e931 +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "" + +#: ../../migrating_to_v1.rst:735 +#: 3adb6bc4dfa7469aab5ca3df23d33bed +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "" + +#: ../../migrating_to_v1.rst:737 +#: 494082dd3a8a45f68190588a71f0380d +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "" + +#: ../../migrating_to_v1.rst:739 +#: 91d9563cdce4401b85eb7d5952e81086 +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "" + +#: ../../migrating_to_v1.rst:742 +#: 7a92820e2e064495bb1c29175a50e6ed +msgid "Usage is as simple as doing: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:746 +#: 31d4cfddbb834783a532a0bd4ca61a72 +msgid "instead of using :class:`Client`." +msgstr "" + +#: ../../migrating_to_v1.rst:748 +#: 2a45112531d1449eaa539f71951b5f7f +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "" + +#: ../../migrating_to_v1.rst:751 +#: 0f8d9aa5dfae43f491ba1bf8fa6e92be +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "" + +#: ../../migrating_to_v1.rst:759 +#: 40d3205bd2b045d0b71112efcbf3f549 +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "" + +#: ../../migrating_to_v1.rst:762 +#: d9a5985bc3c84c72a00ee4f368bea021 +msgid "Connection Improvements" +msgstr "" + +#: ../../migrating_to_v1.rst:764 +#: 66d45ba4e6de47fb8a308e38a2de5926 +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "" + +#: ../../migrating_to_v1.rst:766 +#: 7e8c57cfd8b747dea99a46fc6aab8dad +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr "" + +#: ../../migrating_to_v1.rst:770 +#: af171ea6a44c4eb0a6ac3b1dffde1857 +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr "" + +#: ../../migrating_to_v1.rst:776 +#: 290461c03fbf40a7ae66eb7fe258b751 +msgid "Command Extension Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:778 +#: 285f3b1bc4d746edb66e0bb3331a2ad6 +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "" + +#: ../../migrating_to_v1.rst:782 +#: 54a972125952485d9f8ddcbbec3bd632 +msgid "Context Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:784 +#: 717f2cec8bc042e4a9854286efbac788 +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "" + +#: ../../migrating_to_v1.rst:786 +#: 06979fb694e64cf5a84f92191a22a93a +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "" + +#: ../../migrating_to_v1.rst:800 +#: 63f0eaa0d7a5426782ca5b0d8937ee7d +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "" + +#: ../../migrating_to_v1.rst:806 +#: e4d3262fccaf46348b94da432e16430a +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "" + +#: ../../migrating_to_v1.rst:808 +#: 6be6a39f6cf6437d98fea51d2f9445da +msgid "**New Shortcuts**" +msgstr "" + +#: ../../migrating_to_v1.rst:810 +#: fddb63ad14994840b26862fd62c99646 +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr "" + +#: ../../migrating_to_v1.rst:811 +#: 7e11740529834443b5e001f4b212d850 +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr "" + +#: ../../migrating_to_v1.rst:812 +#: c69a20d95b9240ee9e6653b2016111e5 +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr "" + +#: ../../migrating_to_v1.rst:813 +#: cda911fe3ed942a596bf62e21c3c9203 +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr "" + +#: ../../migrating_to_v1.rst:814 +#: 6d25f3e72c83417a994d1478e91ab48c +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr "" + +#: ../../migrating_to_v1.rst:816 +#: 3f1992c3e51f440383c92c4ed8763407 +msgid "**New Functionality**" +msgstr "" + +#: ../../migrating_to_v1.rst:818 +#: 6ca3137248eb468ca054a8b34c2f23da +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr "" + +#: ../../migrating_to_v1.rst:820 +#: e18dafeddb844b20bf307436e8dfdce9 +msgid "This is useful for bypassing cooldowns." +msgstr "" + +#: ../../migrating_to_v1.rst:821 +#: f88d749068fe43119fa54e48f7fc6fdd +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr "" + +#: ../../migrating_to_v1.rst:822 +#: 7b512fb184ea40de80bfd8306a439755 +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr "" + +#: ../../migrating_to_v1.rst:824 +#: 1ab773b999044ccd95814808410767d5 +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "" + +#: ../../migrating_to_v1.rst:827 +#: cda91e2c85124e59a4a8214b82fd0c3a +msgid "Subclassing Context" +msgstr "" + +#: ../../migrating_to_v1.rst:829 +#: 1f64d32eea034e8eaa435e786a42bb2d +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "" + +#: ../../migrating_to_v1.rst:832 +#: 3281b69da3e94834b4201581ece2db2e +msgid "For example, if you want to add some functionality to the context:" +msgstr "" + +#: ../../migrating_to_v1.rst:841 +#: 6161661d05de4e589638ecce448f047d +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "" + +#: ../../migrating_to_v1.rst:851 +#: 6e443877b4434dcbaec136025efd3369 +msgid "Now inside your commands you will have access to your custom context:" +msgstr "" + +#: ../../migrating_to_v1.rst:862 +#: 8503aa2ca91c496b9300e31b8e827ad4 +msgid "Removed Helpers" +msgstr "" + +#: ../../migrating_to_v1.rst:864 +#: d36927bade34457086107fb9c4b3d3f9 +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "" + +#: ../../migrating_to_v1.rst:866 +#: 7bb8008204224bce8ba8e13ed1e80694 +msgid "For a full list of changes, see below:" +msgstr "" + +#: ../../migrating_to_v1.rst:871 +#: 874a5ba3779a4d8c96ef07996275c06b +msgid "``Bot.say``" +msgstr "" + +#: ../../migrating_to_v1.rst:871 +#: ../../migrating_to_v1.rst:873 +#: 17ba17ef146b431b898fa91702d109e2 +#: 3026d352aa3049c5b74c1ac5222b7034 +msgid ":meth:`.Context.send`" +msgstr "" + +#: ../../migrating_to_v1.rst:873 +#: ee27f36d1b2846cfb547f5cb9d2540ca +msgid "``Bot.upload``" +msgstr "" + +#: ../../migrating_to_v1.rst:875 +#: 7484c6a90d4646ddb36ab0d31070d0cc +msgid "``Bot.whisper``" +msgstr "" + +#: ../../migrating_to_v1.rst:875 +#: 02ef5a5351f4402ba6b044568a7c8fec +msgid "``ctx.author.send``" +msgstr "" + +#: ../../migrating_to_v1.rst:877 +#: 7ee1fadc67734315b264ff59a07f24bf +msgid "``Bot.type``" +msgstr "" + +#: ../../migrating_to_v1.rst:877 +#: 8f299e3adb2847ffa794e94be31373f2 +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr "" + +#: ../../migrating_to_v1.rst:879 +#: 95809e3221234cb3b884dcb0de4e64d8 +msgid "``Bot.reply``" +msgstr "" + +#: ../../migrating_to_v1.rst:879 +#: 2c2c944602f84df2b32fa84e36cfe33a +msgid "No replacement." +msgstr "" + +#: ../../migrating_to_v1.rst:883 +#: f6a7fbadb0da48c08367ff0fcda8e31b +msgid "Command Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:885 +#: 20a7906e511c4cb190d4861534cca13d +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "" + +#: ../../migrating_to_v1.rst:888 +#: bfb080ca3c604a39a3fb06a78bfd4e5f +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "" + +#: ../../migrating_to_v1.rst:891 +#: 512908aca81f4c8fa6a737b6cc7e55fd +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:894 +#: ff1555c5f5ff49d7907f8d700516a693 +msgid "Command instances have gained new attributes and properties:" +msgstr "" + +#: ../../migrating_to_v1.rst:896 +#: d35fd07ccb584166bbaf3b527b2bab86 +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr "" + +#: ../../migrating_to_v1.rst:897 +#: 7b0323a2c33d48d480591f93d667eb6c +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr "" + +#: ../../migrating_to_v1.rst:898 +#: 96906e117b634f49bfcd23abe048dd17 +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr "" + +#: ../../migrating_to_v1.rst:900 +#: b567aa827d33419684c2e31370cb3ba1 +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "" + +#: ../../migrating_to_v1.rst:902 +#: 09c93e87f21143ef883ebd133fec141c +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "" + +#: ../../migrating_to_v1.rst:904 +#: ecab4d18d394470d8b425624e232b2cf +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "" + +#: ../../migrating_to_v1.rst:907 +#: 15bf276c256e4d9eb233d44849813257 +msgid "Check Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:909 +#: d6e916c5dd2a4afcb0d9721c0afafcfa +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "" + +#: ../../migrating_to_v1.rst:911 +#: d1c87ef2f2ad4853866a1bada5a211c8 +msgid "Along with this change, a couple new checks were added." +msgstr "" + +#: ../../migrating_to_v1.rst:913 +#: e63059a9bef24dc59f1def488e39338d +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr "" + +#: ../../migrating_to_v1.rst:914 +#: c1bcf86648bf49d6be2eda9cac2b8996 +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr "" + +#: ../../migrating_to_v1.rst:916 +#: 5649ecc5d44d499cae4334eeef850000 +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "" + +#: ../../migrating_to_v1.rst:917 +#: 8fab6bde3c4d4c0eb2f0d3393f4bae29 +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "" + +#: ../../migrating_to_v1.rst:919 +#: 83cc31526f314335983a8b180dcac697 +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr "" + +#: ../../migrating_to_v1.rst:921 +#: bc84973dc2024308834175f683bc2106 +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "" + +#: ../../migrating_to_v1.rst:926 +#: 3155a125d1b44571a1d222aaa46f09d2 +msgid "All command extension events have changed." +msgstr "" + +#: ../../migrating_to_v1.rst:940 +#: 525b0059e0e74e58955f03ba7ca7bcb5 +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "" + +#: ../../migrating_to_v1.rst:945 +#: fb4efa1d13f54ff7a5a558e6c8bb6b13 +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "" + +#: ../../migrating_to_v1.rst:950 +#: 8be35639009845c2ba7e870eed8789e4 +msgid "HelpFormatter and Help Command Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:952 +#: 0c9b00898be3410f8ae07000636749c3 +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "" + +#: ../../migrating_to_v1.rst:954 +#: 24d138b1770e4f17aa48b94777253ffd +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "" + +#: ../../migrating_to_v1.rst:956 +#: 60281936a03a4fecbc9927fe81bfc80a +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "" + +#: ../../migrating_to_v1.rst:958 +#: f79e515d8f184b57a5de04ae7368b39d +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr "" + +#: ../../migrating_to_v1.rst:959 +#: 05299dfeb65b4b4bb1f6bb711903e479 +msgid "Called when the user requested for help with the entire bot." +msgstr "" + +#: ../../migrating_to_v1.rst:960 +#: 0a16847a732b4a33bb9c46fbd429a86c +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr "" + +#: ../../migrating_to_v1.rst:961 +#: 6c1b0bb7432643fe9882de314453af35 +msgid "Called when the user requested for help with a specific cog." +msgstr "" + +#: ../../migrating_to_v1.rst:962 +#: e9f39f7388ff451e9a42bb5a6e5453f6 +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr "" + +#: ../../migrating_to_v1.rst:963 +#: 0e621712f43c4a40997b4b9cf205fdfb +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "" + +#: ../../migrating_to_v1.rst:964 +#: 77786b71f5ac4549994e33f787876d80 +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr "" + +#: ../../migrating_to_v1.rst:965 +#: bbec26d0bd544503a4f36050954dbf65 +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "" + +#: ../../migrating_to_v1.rst:966 +#: 3fd95879c0b4442aa6fc292595cb92ad +msgid ":meth:`.HelpCommand.get_destination`" +msgstr "" + +#: ../../migrating_to_v1.rst:967 +#: 663877b824494a57a242b013c9031390 +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "" + +#: ../../migrating_to_v1.rst:968 +#: c7a7f2315f884483a626a2ece68e73fa +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr "" + +#: ../../migrating_to_v1.rst:969 +#: 0bf3df49be06494a9717e43302a0becc +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "" + +#: ../../migrating_to_v1.rst:970 +#: 709ad40da26b4676b4211bf0b610f665 +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr "" + +#: ../../migrating_to_v1.rst:971 +#: cbfdf9b0bbef47d3b0f8ec54dd2584c3 +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "" + +#: ../../migrating_to_v1.rst:972 +#: eb5e38cfbab8442fa9229e0b543e6134 +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr "" + +#: ../../migrating_to_v1.rst:973 +#: 956e387c59d940dbb5cfea61c9a41b76 +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "" + +#: ../../migrating_to_v1.rst:974 +#: bb66812909bb4b8ba1255a3f40e37248 +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "" + +#: ../../migrating_to_v1.rst:975 +#: 37ab407ddd2240208b1c40ef8a5a93b7 +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr "" + +#: ../../migrating_to_v1.rst:976 +#: 871ad537f58f4ffc84aba6124b74a2ba +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "" + +#: ../../migrating_to_v1.rst:977 +#: 3baa287475f145a88daa190c9d376d60 +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr "" + +#: ../../migrating_to_v1.rst:978 +#: 98cf89ef2de44735a950a1ff98a633a4 +msgid "A coroutine that is called right before the help command processing is done." +msgstr "" + +#: ../../migrating_to_v1.rst:980 +#: 3e8046f2a2d74cabb513a61f9b8a768b +msgid "Certain subclasses can implement more customisable methods." +msgstr "" + +#: ../../migrating_to_v1.rst:982 +#: 7ed5712265a9430f8cf494eca8c6bc7b +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "" + +#: ../../migrating_to_v1.rst:984 +#: 7416bfc025324b03bb6149314c91e927 +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "" + +#: ../../migrating_to_v1.rst:986 +#: 606b9af1346e400da08be6121fedfe43 +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "" + +#: ../../migrating_to_v1.rst:988 +#: cce8cea9431c4addbba7a553c99c85f1 +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "" + +#: ../../migrating_to_v1.rst:1005 +#: fc2d755d59074231b2d341e37fc6eda1 +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "" + +#: ../../migrating_to_v1.rst:1008 +#: fe160abf5fbc47ae841b183aba015fcd +msgid "Cog Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:1010 +#: 05d6024f34aa48d0980fb0e8ecbccb47 +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "" + +#: ../../migrating_to_v1.rst:1012 +#: 1a7bfb167f9b4a08a7b31f72efb1f489 +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "" + +#: ../../migrating_to_v1.rst:1014 +#: 5c63bb2ba59d4b54aa7df8c8bb3c6640 +msgid ":meth:`.Cog.cog_unload`" +msgstr "" + +#: ../../migrating_to_v1.rst:1015 +#: 10e27bc000c14d5cb00799e79420b488 +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "" + +#: ../../migrating_to_v1.rst:1016 +#: 6f56b325bc9e435c88c6e172de7196f1 +msgid ":meth:`.Cog.bot_check_once`" +msgstr "" + +#: ../../migrating_to_v1.rst:1017 +#: 5090d9b233f24f09af3d96bf1562c074 +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "" + +#: ../../migrating_to_v1.rst:1018 +#: f88a1a6b759d49bdbd404bc627bb8efe +msgid ":meth:`.Cog.bot_check`" +msgstr "" + +#: ../../migrating_to_v1.rst:1019 +#: 21f426a77fb74c21b52cb99613f2e192 +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "" + +#: ../../migrating_to_v1.rst:1020 +#: ab3b85086968449faa4fcc32b245c872 +msgid ":meth:`.Cog.cog_check`" +msgstr "" + +#: ../../migrating_to_v1.rst:1021 +#: c687c5c069164790849266ed50d9cdf0 +msgid "This registers a check that applies to every command in the cog." +msgstr "" + +#: ../../migrating_to_v1.rst:1022 +#: 104c27d7b5dd4311af8ed3a9d7b9edc8 +msgid ":meth:`.Cog.cog_command_error`" +msgstr "" + +#: ../../migrating_to_v1.rst:1023 +#: 3bad7c5764454cb796e64c6ef72a6429 +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "" + +#: ../../migrating_to_v1.rst:1024 +#: 81ddfc0d92a941c0b10e93e6193710a6 +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr "" + +#: ../../migrating_to_v1.rst:1025 +#: c1eeaf0c1338401a9c51c8260a9da67c +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "" + +#: ../../migrating_to_v1.rst:1027 +#: f6d60513b8a647f5856bdd734bf5d011 +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "" + +#: ../../migrating_to_v1.rst:1029 +#: 60f543f3a24e42b49b279240372c0e4d +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "" + +#: ../../migrating_to_v1.rst:1031 +#: 378561fce8524f1297e1b249ca0649db +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "" + +#: ../../migrating_to_v1.rst:1068 +#: 0ec7b2c5084449a995eb701700f5cf7e +msgid "Before and After Invocation Hooks" +msgstr "" + +#: ../../migrating_to_v1.rst:1070 +#: c4ef253feb744eea8dd3a08128d03059 +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "" + +#: ../../migrating_to_v1.rst:1073 +#: b824473c4f5c4178afa96810bba97280 +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "" + +#: ../../migrating_to_v1.rst:1075 +#: b442785647a8418cbd2b7f0d33cef3c8 +msgid "They are on a global, per-cog, or per-command basis." +msgstr "" + +#: ../../migrating_to_v1.rst:1092 +#: 430f182bcddc484ab78c334a7c6f8ab0 +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "" + +#: ../../migrating_to_v1.rst:1095 +#: b2e97f7402864e1ab40e32868e54096f +msgid "The per-command registration is as follows: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:1111 +#: f514a792cd464f7ca9ca3e467a2f0412 +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "" + +#: ../../migrating_to_v1.rst:1126 +#: a414472f93704bd79a6583fefac3de39 +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "" + +#: ../../migrating_to_v1.rst:1129 +#: 8857e26d53c844a38338ca128ea9bd81 +msgid "The invocation order is as follows:" +msgstr "" + +#: ../../migrating_to_v1.rst:1131 +#: 2e6f90c6abf34317884cbf3c169979bf +msgid "Command local before invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1132 +#: 6584654e12624974b751232c2816df42 +msgid "Cog local before invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1133 +#: 9fb11b92d3d34c788c97c8a520081179 +msgid "Global before invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1134 +#: bb82bf5fcc504e958d935b4f42f18f55 +msgid "The actual command" +msgstr "" + +#: ../../migrating_to_v1.rst:1135 +#: 7ac69893d3ff4078ba575835e76adfd4 +msgid "Command local after invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1136 +#: 33c959cee1514f7698b4d8e2ab036bc4 +msgid "Cog local after invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1137 +#: 7a799ee1e1f843238bce6b0a9c219178 +msgid "Global after invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1140 +#: a9a61f01258340fd99507b9580b79f48 +msgid "Converter Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:1142 +#: 9c1c9b09a3ce482eadeba27f3a62bea0 +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "" + +#: ../../migrating_to_v1.rst:1145 +#: 3f21ebec94cb4b04bfa061ee31043954 +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "" + +#: ../../migrating_to_v1.rst:1149 +#: 840e5bca05e444fa999f883b85bf9696 +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "" + +#: ../../migrating_to_v1.rst:1153 +#: bc16d3cb7261452a87e865880e5b5965 +msgid "Essentially, before: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:1165 +#: c4090e9a0b3d42848479e432afc500d0 +msgid "The command framework also got a couple new converters:" +msgstr "" + +#: ../../migrating_to_v1.rst:1167 +#: 0cb6f2bfb3fb4b778bd614701ce20b08 +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr "" + +#: ../../migrating_to_v1.rst:1168 +#: 3d3757364d9348cebd30cf5d98432dee +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr "" + +#: ../../migrating_to_v1.rst:1169 +#: 8168f2b9bd9c4fd2ad725246a1a15a21 +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "" + +#: ../../migrating_to_v1.rst:1171 +#: d8e61bfc29cb4d26a44c089dff96a017 +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr "" + +#: ../../migrating_to_v1.rst:1172 +#: 5c33a3bdd9094d41aa9e96d68a32b6b5 +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr "" diff --git a/docs/build/locales/migrating_to_v2.pot b/docs/build/locales/migrating_to_v2.pot new file mode 100644 index 0000000000..b9bbe5a3cb --- /dev/null +++ b/docs/build/locales/migrating_to_v2.pot @@ -0,0 +1,700 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../migrating_to_v2.rst:6 +#: d58f33617a294a0b8fabd528cbc4743b +msgid "Migrating to v2.0" +msgstr "" + +#: ../../migrating_to_v2.rst:8 +#: 153bece7c7174f058ebbfc29598ae8ef +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "" + +#: ../../migrating_to_v2.rst:10 +#: 6e734729277645468f41eed1268c7e32 +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "" + +#: ../../migrating_to_v2.rst:13 +#: 35cb11e0e37f44249f977d715944eb03 +msgid "Python Version Change" +msgstr "" + +#: ../../migrating_to_v2.rst:15 +#: 1cc77a0fd11041f5997f520bc7429e3f +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "" + +#: ../../migrating_to_v2.rst:20 +#: cad7a507189e4849a2ff38558129670e +msgid "Major Model Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:22 +#: f34f3b2ea9424eac92d4fce556d01a83 +msgid "Below are major changes that have happened in v2.0:" +msgstr "" + +#: ../../migrating_to_v2.rst:25 +#: 5462bf5a6ded4c0cb0f3241c509a79fd +msgid "Dropped User Accounts Support" +msgstr "" + +#: ../../migrating_to_v2.rst:27 +#: f08f487618354688b29ecc4568f49b57 +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "" + +#: ../../migrating_to_v2.rst:29 +#: db91e1eeaa3b45fd85133c748dd778dd +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "" + +#: ../../migrating_to_v2.rst:30 +#: a8991790eb864991a2c4a336fd0bb686 +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "" + +#: ../../migrating_to_v2.rst:31 +#: 62b88ba0d3b74ffbac4047e77cdad9b0 +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "" + +#: ../../migrating_to_v2.rst:32 +#: 35fa35b632bb4e78a8e22fbad61f36ed +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "" + +#: ../../migrating_to_v2.rst:33 +#: 6cee310291a141b4a77b7d2edcf6c046 +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "" + +#: ../../migrating_to_v2.rst:34 +#: 590a86bfab104d6197fea5b32b6ea4f9 +msgid "``Guild.ack``" +msgstr "" + +#: ../../migrating_to_v2.rst:35 +#: 1ac5f72b4de6473385e96f7163ac3063 +msgid "``Client.self_bot``" +msgstr "" + +#: ../../migrating_to_v2.rst:36 +#: 0d2048c3f634470db57d960269ce267e +msgid "``Client.fetch_user_profile``" +msgstr "" + +#: ../../migrating_to_v2.rst:37 +#: 196c370751334ee799f6a0d7b005d0b1 +msgid "``Message.call`` and ``ack``" +msgstr "" + +#: ../../migrating_to_v2.rst:38 +#: 175bae4371334bfdba4ee9b31104413d +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "" + +#: ../../migrating_to_v2.rst:39 +#: 2dd633c48aa0456e83f859255b4f1ee7 +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "" + +#: ../../migrating_to_v2.rst:40 +#: a50f5082ed78463c97d0273962fe0c15 +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "" + +#: ../../migrating_to_v2.rst:41 +#: bd7642d71ede4b97ba4dc650ff1c8594 +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "" + +#: ../../migrating_to_v2.rst:44 +#: 13121575476142a19c2dcb458a83f54f +msgid "Timezone-aware Time" +msgstr "" + +#: ../../migrating_to_v2.rst:46 +#: 349c6711be084ce1b90dd7a733b78ba0 +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "" + +#: ../../migrating_to_v2.rst:56 +#: 5fc136ad08d4421d9bbcdc16052f0690 +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "" + +#: ../../migrating_to_v2.rst:61 +#: da35e442c7704ec1afc688538581f915 +msgid "Asset Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:63 +#: c00065483b0342408ae50a9c51aa8c4e +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "" + +#: ../../migrating_to_v2.rst:65 +#: 4993a14d870149bda46b3f76e09442b0 +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "" + +#: ../../migrating_to_v2.rst:66 +#: ff3fcaeedc1c4e83b15a7b5a387f1630 +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr "" + +#: ../../migrating_to_v2.rst:67 +#: f5222d3512114fc28162f0c51869f55b +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "" + +#: ../../migrating_to_v2.rst:68 +#: 8fecd3253b0343979e5606bfcd199cda +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "" + +#: ../../migrating_to_v2.rst:69 +#: 2fe4f47843594fc4a5a867253a30b71a +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr "" + +#: ../../migrating_to_v2.rst:72 +#: ../../migrating_to_v2.rst:155 +#: a65a0103aace443ebb18e17b1721f2a5 +#: fc29ce511c4f469b97f92260dc276603 +msgid "Before" +msgstr "" + +#: ../../migrating_to_v2.rst:72 +#: ../../migrating_to_v2.rst:155 +#: 555d85f847b7406c83991fb44ffec3cf +#: 03cd95fabd374e4982e6da2ae545982a +msgid "After" +msgstr "" + +#: ../../migrating_to_v2.rst:74 +#: fe477cf46b8d44168a2b92ee73b01dc5 +msgid "``str(user.avatar_url)``" +msgstr "" + +#: ../../migrating_to_v2.rst:74 +#: f3f21f208f23475ebbfd8a685e8cd20e +msgid "``user.display_avatar.url``" +msgstr "" + +#: ../../migrating_to_v2.rst:76 +#: 477058ca0ed741de80cfe9998f853f9c +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "" + +#: ../../migrating_to_v2.rst:76 +#: 33c8991093324005b6d00b43b87289e1 +msgid "``user.display_avatar.with_size(128).url``" +msgstr "" + +#: ../../migrating_to_v2.rst:78 +#: ../../migrating_to_v2.rst:80 +#: 189fc37c8737439eae8f327b6a9a4caf +#: f4afdd26bd9b43829800ea2b9a929080 +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "" + +#: ../../migrating_to_v2.rst:78 +#: 09bd525e9d01437c925c7b72b240de22 +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "" + +#: ../../migrating_to_v2.rst:80 +#: 2421e8f8aef842b7b480595bdde17813 +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "" + +#: ../../migrating_to_v2.rst:82 +#: 957db552814a4fcfa62d129298d26d76 +msgid "``await user.avatar_url.read()``" +msgstr "" + +#: ../../migrating_to_v2.rst:82 +#: 81c8bc1f40d34a5ea0de03a6cc4ddd29 +msgid "``await user.display_avatar.read()``" +msgstr "" + +#: ../../migrating_to_v2.rst:84 +#: 6526cd7ec59c46cd8ea59e315663c759 +msgid "``str(emoji.url)``" +msgstr "" + +#: ../../migrating_to_v2.rst:84 +#: 311191130dbe4676acc34bcae2a919de +msgid "``emoji.url``" +msgstr "" + +#: ../../migrating_to_v2.rst:86 +#: 29237eab93d8458baf6e1eb56b08b6a6 +msgid "``str(emoji.url_as(size=32))``" +msgstr "" + +#: ../../migrating_to_v2.rst:86 +#: b98be13484434e5cada62d4908a280bc +msgid "``emoji.with_size(32).url``" +msgstr "" + +#: ../../migrating_to_v2.rst:88 +#: 7de06060f4094bbea3c7a105ab0c9a9a +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "" + +#: ../../migrating_to_v2.rst:88 +#: 78f397f39839421394d1c5fe64f497c7 +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "" + +#: ../../migrating_to_v2.rst:90 +#: 5759c26ddb754fbca00ffed8877cf100 +msgid "``str(sticker.image_url)``" +msgstr "" + +#: ../../migrating_to_v2.rst:90 +#: 6ce46f7b5fb2497aa5ac8d3adcb9c86a +msgid "``sticker.url``" +msgstr "" + +#: ../../migrating_to_v2.rst:92 +#: 129e5a5d23ce4e139433c8f25c3cc70e +msgid "``str(partialemoji.url)``" +msgstr "" + +#: ../../migrating_to_v2.rst:92 +#: c6e4151ff20145d695796cbe9da24db6 +msgid "``partialemoji.url``" +msgstr "" + +#: ../../migrating_to_v2.rst:96 +#: fd66d6f85fba4286bcbc431df0d5885f +msgid "Webhook Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:98 +#: f6a17bf9b0ee40e78bf3cce2beeb900e +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr "" + +#: ../../migrating_to_v2.rst:99 +#: f8c697ddb9984c8f9f346311722969ee +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "" + +#: ../../migrating_to_v2.rst:100 +#: 7ea01f8e7b5f4727aac7e16ef0cd0029 +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "" + +#: ../../migrating_to_v2.rst:125 +#: 08b6d061d37247f393b5b579f448a884 +msgid "Intents Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:127 +#: 4cf10c3081b342be80cce2f917c6ae68 +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr "" + +#: ../../migrating_to_v2.rst:136 +#: d048ab192df44c31abda5db5162c543a +msgid "Threads Introduced" +msgstr "" + +#: ../../migrating_to_v2.rst:138 +#: 62acc808e3b74755931d211e1648f7f0 +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "" + +#: ../../migrating_to_v2.rst:140 +#: 82444dda960a4d08a5f0dfc797d56d5e +msgid ":attr:`Message.channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:141 +#: cceda5a20b1e498a9550e428a9c32d0c +msgid ":meth:`Client.fetch_channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:142 +#: 11d3808d06cd43ab89db1f311a11e714 +msgid ":meth:`Guild.fetch_channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:143 +#: dcf0abfc1cd94904add6e0803477b2e1 +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr "" + +#: ../../migrating_to_v2.rst:144 +#: 1ea22b3863954a36839ad619c6dd923e +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr "" + +#: ../../migrating_to_v2.rst:145 +#: 413ced12374046308a10545c3c6844c9 +msgid ":meth:`Client.get_channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:150 +#: 248728e0a8be476781342a48226cf1f9 +msgid "Permission Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:152 +#: df3e0b1709ee45c9bb6330f79d891a01 +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "" + +#: ../../migrating_to_v2.rst:157 +#: 36d3d49660f042d18ec9657376085297 +msgid "``User.permissions_in``" +msgstr "" + +#: ../../migrating_to_v2.rst:157 +#: ../../migrating_to_v2.rst:159 +#: b8837ab04fef402282277085c9efbd73 +#: 71cfc7c63d664ccaae1a843441419313 +msgid "``abc.GuildChannel.permissions_for``" +msgstr "" + +#: ../../migrating_to_v2.rst:159 +#: 37649f96a7624d9686266d5fd1fed282 +msgid "``Member.permissions_in``" +msgstr "" + +#: ../../migrating_to_v2.rst:165 +#: 7820a53ce2684907add42dad55840b07 +msgid "Edit Method Behavior Change" +msgstr "" + +#: ../../migrating_to_v2.rst:167 +#: 7a4a212cbbec4644ba9b53a4008ab75a +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "" + +#: ../../migrating_to_v2.rst:172 +#: 59ea7ec3240a4469ad2abe9e44bf7949 +msgid "Positional-Keyword Argument Split" +msgstr "" + +#: ../../migrating_to_v2.rst:174 +#: 6053049fa5fc4d20886dfac6bf4fd578 +msgid "The following are now positional only:" +msgstr "" + +#: ../../migrating_to_v2.rst:176 +#: 43fabe138eba4d3fb009378200bfe950 +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr "" + +#: ../../migrating_to_v2.rst:177 +#: 459bad69b32446768e7d26b4967817b9 +msgid ":meth:`Guild.get_channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:178 +#: 13d9ce01f23b4fb4ba027f6ede16cfbd +msgid ":meth:`Guild.get_role`" +msgstr "" + +#: ../../migrating_to_v2.rst:179 +#: fe229c09af0f4ceb8edd4c153c1d7967 +msgid ":meth:`Guild.get_member_named`" +msgstr "" + +#: ../../migrating_to_v2.rst:180 +#: c881076e826f4d3b9889bd5b509b0a88 +msgid ":meth:`Guild.fetch_member`" +msgstr "" + +#: ../../migrating_to_v2.rst:181 +#: 93ae00ccb763451d92f3ee9e7ed24389 +msgid ":meth:`Guild.fetch_emoji`" +msgstr "" + +#: ../../migrating_to_v2.rst:182 +#: 0d36f7feac2d4176924c51db078a913b +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr "" + +#: ../../migrating_to_v2.rst:183 +#: e27310186c87475ab67a031c4691574a +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr "" + +#: ../../migrating_to_v2.rst:185 +#: 2ee707a46795467e9e6df7da265add6d +msgid "The following are now keyword only:" +msgstr "" + +#: ../../migrating_to_v2.rst:187 +#: 062710efb97c4720b5a7e58b86fde1bd +msgid ":func:`utils.oauth_url`" +msgstr "" + +#: ../../migrating_to_v2.rst:188 +#: eea08b1bd6734a30b2c92d7299cba30e +msgid ":meth:`Reaction.users`" +msgstr "" + +#: ../../migrating_to_v2.rst:193 +#: e3f925ae131b4acd9cdea9307a45fc05 +msgid "Event Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:195 +#: 714200329dee4e4097e8237ec16e7369 +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr "" + +#: ../../migrating_to_v2.rst:196 +#: d8ba5cf91fb3424b828cd351eec2bb89 +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "" + +#: ../../migrating_to_v2.rst:197 +#: af890060b9db4bd3b5db9ec638bca915 +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr "" + +#: ../../migrating_to_v2.rst:203 +#: 011fe28653e1494dba94196e0008d35e +msgid "Message.type For Replies" +msgstr "" + +#: ../../migrating_to_v2.rst:205 +#: 4c8e05c8a9254b19818c84eeadb8405b +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr "" + +#: ../../migrating_to_v2.rst:210 +#: 80cdf03553cc4032ba759cb3c7f223bc +msgid "Sticker Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:212 +#: f61fbeebe9fa42b2a81207ce5b7037dc +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "" + +#: ../../migrating_to_v2.rst:213 +#: 110d5715eeac49c1a35b31c104687053 +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "" + +#: ../../migrating_to_v2.rst:214 +#: 33cc3cee550349b3a1762abb3f912719 +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr "" + +#: ../../migrating_to_v2.rst:215 +#: cb1cb2db00304aa78cb67ff03f7fdbf4 +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "" + +#: ../../migrating_to_v2.rst:216 +#: f0ec13f6ef5d4f47b9c3b5ad6ea62568 +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "" + +#: ../../migrating_to_v2.rst:221 +#: 58ac4f1b472642d99c1de2da076798f4 +msgid "Type Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:223 +#: 5ff91b640d61419c98e454661c2555a6 +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:225 +#: 6b4d501cdb574b55874cd1b9e457fd5b +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr "" + +#: ../../migrating_to_v2.rst:226 +#: 79b14ad448324549a1a7aefdb54cf08c +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr "" + +#: ../../migrating_to_v2.rst:227 +#: 7ec87d2fb54a4e509758b8c568f3daf1 +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:228 +#: 2a940a15b16c4b1b8517e827b0000252 +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:229 +#: dd62eb7b65c74803b15e55ec9d4d7c1c +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:230 +#: 2950a9a2db8c40aaaa71fa66ed7eea22 +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:231 +#: 6042605d696a4d9f8bf7cd7974fac701 +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:232 +#: 565f1b3e8c434e9ab85c4bf37d1e9efb +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "" + +#: ../../migrating_to_v2.rst:233 +#: 3ddda62623514924997b841008198d37 +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:238 +#: 930df2cbf955481eb1a877cf8e03050a +msgid "Miscellaneous Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:240 +#: 6fec5b854b0745c38c67242a39a9793f +msgid "The following were removed:" +msgstr "" + +#: ../../migrating_to_v2.rst:242 +#: 40ed16f576bf4e33a1ffabb3d75aaaed +msgid "``Client.request_offline_members``" +msgstr "" + +#: ../../migrating_to_v2.rst:243 +#: 58f5cf0e14a34ca3a894772829bb1c77 +msgid "``Client.logout``" +msgstr "" + +#: ../../migrating_to_v2.rst:244 +#: c0b6a79d2f4544d0844c504857922323 +msgid "``ExtensionNotFound.original``" +msgstr "" + +#: ../../migrating_to_v2.rst:245 +#: 62ee75994acd4d22b1a7a5ace1025c97 +msgid "``MemberCacheFlags.online``" +msgstr "" + +#: ../../migrating_to_v2.rst:246 +#: 3983cbd1b5574ec896fc9356485962db +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "" + +#: ../../migrating_to_v2.rst:247 +#: 370a22e8de864b71ad4dcb71dafdf2f2 +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "" + +#: ../../migrating_to_v2.rst:248 +#: cc590a7140fb44ee9c702cff74cc8500 +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "" + +#: ../../migrating_to_v2.rst:249 +#: 16074adbde0f41aba9d9b4f33ef99c22 +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "" + +#: ../../migrating_to_v2.rst:251 +#: 463a4158aa8e434d998f4427a87a4822 +msgid "The following were renamed:" +msgstr "" + +#: ../../migrating_to_v2.rst:253 +#: 3eb3bb5ea6f54fb0ade89c6843a79913 +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr "" + +#: ../../migrating_to_v2.rst:254 +#: 6d4ff2d5c6b14b6ba59bbb56b5dfb34c +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "" + +#: ../../migrating_to_v2.rst:256 +#: 2841cee7328940b0bdf478e6b22d7263 +msgid "The following were changed in behavior:" +msgstr "" + +#: ../../migrating_to_v2.rst:258 +#: 9940c6e733ac43a48c38a684452cfda6 +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr "" + +#: ../../migrating_to_v2.rst:259 +#: 2a1eb29e586a4982a56d290de5d81bc6 +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr "" + +#: ../../migrating_to_v2.rst:260 +#: df130bcfe3854c2198f7bb599ae90555 +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr "" + +#: ../../migrating_to_v2.rst:261 +#: 68503c20570e4ba09236db24b4b00e42 +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr "" + +#: ../../migrating_to_v2.rst:263 +#: 501adddee1ee4e4e85c46a97a38f2a85 +msgid "The following were changed in types:" +msgstr "" + +#: ../../migrating_to_v2.rst:265 +#: 7188dea26ca54b5abe2a909093fecf51 +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr "" + +#: ../../migrating_to_v2.rst:266 +#: 4b171ce60d5a4b63a5d50250c99aeb41 +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "" + +#: ../../migrating_to_v2.rst:267 +#: 554778efab494d3c90fe80ee0c544ae9 +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr "" + +#: ../../migrating_to_v2.rst:268 +#: c7ac7216dc10467ca76368d84b4dd18c +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr "" + +#: ../../migrating_to_v2.rst:271 +#: 28bdbc53fe6f47a08e2bc5250288e48b +msgid "Parting Words" +msgstr "" + +#: ../../migrating_to_v2.rst:273 +#: 897fc3a6948a464bb6c7fd5db0185700 +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "" diff --git a/docs/build/locales/old_changelog.pot b/docs/build/locales/old_changelog.pot new file mode 100644 index 0000000000..fe58fc197b --- /dev/null +++ b/docs/build/locales/old_changelog.pot @@ -0,0 +1,3708 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../old_changelog.rst:10 +#: 29ce2db918fb41e8a9244bde1d1b9eea +msgid "Changelog" +msgstr "" + +#: ../../old_changelog.rst:12 +#: e7c24dc0811f4cf2b9c12cb7e77a849f +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "" + +#: ../../old_changelog.rst:16 +#: 111e8e373caa4879b99291201341d902 +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "" + +#: ../../old_changelog.rst:22 +#: f16bc17878ee42bea522f301f589b699 +msgid "v2.0.0" +msgstr "" + +#: ../../old_changelog.rst:23 +#: dccadc49e501411fa8b8937ad238fd42 +msgid "Fully deprecated/removed store channels" +msgstr "" + +#: ../../old_changelog.rst:24 +#: e29ccc70dc9440c49887a04fe64e75d5 +msgid "Buttons and Select Menus" +msgstr "" + +#: ../../old_changelog.rst:25 +#: 189374785cfa485889a515a57b0ccd8c +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "" + +#: ../../old_changelog.rst:26 +#: 8800248f6eeb4a04b6a7144853ecb6a8 +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "" + +#: ../../old_changelog.rst:27 +#: 2862fcc18cc746479c56e6b516ce52e3 +msgid "Voice receive API (:issue:`532`)" +msgstr "" + +#: ../../old_changelog.rst:28 +#: a2f7d6d326c54e5da6b53b8fc4745462 +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "" + +#: ../../old_changelog.rst:29 +#: 447a95c2a0b3472db32b67c0da2b3723 +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "" + +#: ../../old_changelog.rst:30 +#: dfe1a69b8b1d4980979a15f6fc56aed5 +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "" + +#: ../../old_changelog.rst:31 +#: d8255b78a1ab49d796de0c41db90f08f +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "" + +#: ../../old_changelog.rst:32 +#: c83088acf30846e183eee7cc8e4df23e +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "" + +#: ../../old_changelog.rst:33 +#: 2f6cb783181d4d3ead5b64730cd3e0ad +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr "" + +#: ../../old_changelog.rst:34 +#: 5c4e9fb3c3d5435381e6207d1d38624f +msgid "Application Command Localization (:issue:`1185`)" +msgstr "" + +#: ../../old_changelog.rst:35 +#: 0547cd04de9a40e3a9fa833bb41194a4 +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "" + +#: ../../old_changelog.rst:36 +#: b0d517b727da47ac987073f3fa8d4c91 +msgid "Forum channels (:issue:`1249`)" +msgstr "" + +#: ../../old_changelog.rst:37 +#: e618021b02844ae7845cfff40f70c879 +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "" + +#: ../../old_changelog.rst:38 +#: 288718c944264fbf94169e5124c6eb3d +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "" + +#: ../../old_changelog.rst:39 +#: 02f92fabeb084f9981cde73062908eca +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr "" + +#: ../../old_changelog.rst:40 +#: c5e3b745d4dd44078616eb00a0c6fa21 +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr "" + +#: ../../old_changelog.rst:41 +#: 582bbeed0431464f81d972fbc107665d +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "" + +#: ../../old_changelog.rst:42 +#: b3595562fbad439486d3dd882a01f055 +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "" + +#: ../../old_changelog.rst:43 +#: 0805e0b49bb04a6593fb829221f2e1a2 +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "" + +#: ../../old_changelog.rst:44 +#: ca53566b6b034dd3a42f4eeae20b4fe4 +msgid "User accounts (userbots) are no longer supported." +msgstr "" + +#: ../../old_changelog.rst:45 +#: 4d4aed3001174c05993cbe806861b9ea +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "" + +#: ../../old_changelog.rst:46 +#: ec4d6aaba5f5469f96c9db62a03308cd +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "" + +#: ../../old_changelog.rst:47 +#: f65369e1369348738cce934faf941169 +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "" + +#: ../../old_changelog.rst:48 +#: d4f8f3869289495db667736a1925bd92 +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "" + +#: ../../old_changelog.rst:49 +#: 9ee436e686fb4945b6d12762588bd7ad +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "" + +#: ../../old_changelog.rst:50 +#: 984193f100a74ce0bfbc5cbce8bc89fd +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "" + +#: ../../old_changelog.rst:51 +#: ae4168f2ccee4adebdf8328fe8fc2edf +msgid "Many method arguments now reject :class:`None`." +msgstr "" + +#: ../../old_changelog.rst:52 +#: 30c8c142c6924bcaa092b864d6d47407 +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "" + +#: ../../old_changelog.rst:53 +#: 7819f1eba4b64f6c9195987b52aa38d2 +msgid ":doc:`migrating_to_v2`" +msgstr "" + +#: ../../old_changelog.rst:58 +#: 3f1bdc6fe4c34020b43ac23b3b0fbe04 +msgid "v1.7.3" +msgstr "" + +#: ../../old_changelog.rst:61 +#: ../../old_changelog.rst:72 +#: ../../old_changelog.rst:84 +#: ../../old_changelog.rst:143 +#: ../../old_changelog.rst:216 +#: ../../old_changelog.rst:249 +#: ../../old_changelog.rst:302 +#: ../../old_changelog.rst:336 +#: ../../old_changelog.rst:362 +#: ../../old_changelog.rst:433 +#: ../../old_changelog.rst:484 +#: ../../old_changelog.rst:494 +#: ../../old_changelog.rst:509 +#: ../../old_changelog.rst:527 +#: ../../old_changelog.rst:612 +#: ../../old_changelog.rst:663 +#: ../../old_changelog.rst:673 +#: ../../old_changelog.rst:688 +#: ../../old_changelog.rst:702 +#: ../../old_changelog.rst:712 +#: ../../old_changelog.rst:748 +#: ../../old_changelog.rst:778 +#: ../../old_changelog.rst:820 +#: ../../old_changelog.rst:860 +#: ../../old_changelog.rst:879 +#: ../../old_changelog.rst:895 +#: ../../old_changelog.rst:915 +#: ../../old_changelog.rst:963 +#: ../../old_changelog.rst:980 +#: ../../old_changelog.rst:1017 +#: ../../old_changelog.rst:1053 +#: ../../old_changelog.rst:1105 +#: ../../old_changelog.rst:1149 +#: ../../old_changelog.rst:1215 +#: 544e311820a74571b148c112223905fa +#: 70c3ca9bce654a929c96e04fc09b4b8e +#: 81fd18a62df0458f9c29cf729ae7ca07 +#: 0cfe368e06df4e1ea7c150453f89de6e +#: 7cc0d22d8b2943e7aa79c455e015b3b6 +#: 50f297ce67c74677b1ee89c30fde8409 +#: 73fc735825794200af7a30630764db24 +#: 2d8a2079d07d471185fd771cd110e196 +#: 69eb18190cd849848afb4111eb0bb649 +#: 2dc4ae7f1672461b99cb21d7f4c1c44b +#: 68ce32f8aabb41649fc4afa11b3f0bf1 +#: 37d0810d51c84bf687249ea3a8ff8a85 +#: a26c3200a835429795617d743cd8e40f +#: dec246ccbf76406dbf2f4d6fb7752d72 +#: 23efacaa85b24de6ad0abd7fb71e2ac7 +#: 732ef6051bcb4804a5c9e79154c78279 +#: dceb88c2f12845d6aaba763f7a1eaa93 +#: fa8aa6eb723f40efb4fedb376fbd320e +#: b3fa3203990f4d0c98d2c93de388634e +#: 7c148660626547308b1391067e9ced02 +#: a67d46ada6074351bae4038c9b1130e7 +#: b4afbdf7fe6e4760ad70fe8db595e132 +#: 91bf4aa50b16483f889c8f3e912f0d24 +#: 78ed3243a842422cadbb88aaae754d02 +#: b365962e4ace4f4699a0e934d4285afc +#: 7817b4312a154f009dff55e432a858c7 +#: d4257b1c63b649d2bab2777f8f87974b +#: cd7f6bebae794a53828a66d9cbecafec +#: f94aa69bf4f9450dab1d250ecd1cbda4 +#: 30d3f7fc96194b079dc989af8254ccb4 +#: ef3d030669fc4e67885f6989dcbda763 +#: 17f17608af0a43cc962fac5db9cc8ddf +#: fed539cd2e6c4e53ba4aebc61df10f3c +#: 64872ef88d1e420a88cc9ff9eb89ced2 +msgid "Bug Fixes" +msgstr "" + +#: ../../old_changelog.rst:63 +#: 6ca55db8075543e7a1b66c20b429a1cb +msgid "Fix a crash involving guild uploaded stickers" +msgstr "" + +#: ../../old_changelog.rst:64 +#: cfd171a6935145399fbfef4808ac81de +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "" + +#: ../../old_changelog.rst:69 +#: 9672091320834fe6ac058962c3aa5a96 +msgid "v1.7.2" +msgstr "" + +#: ../../old_changelog.rst:74 +#: 2e33f45eaf364ff6ae5897c4cb0ee8f9 +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "" + +#: ../../old_changelog.rst:75 +#: eef74dc0c2004dcda8ec3f727fd1dfc2 +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "" + +#: ../../old_changelog.rst:76 +#: bfca0f9ab910467a9a338e39d99f9a47 +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "" + +#: ../../old_changelog.rst:81 +#: 8fadc2e021cf48a5ad82411499ee4e6d +msgid "v1.7.1" +msgstr "" + +#: ../../old_changelog.rst:86 +#: 4e0d3f0a012c447b8aac2b1968b76c1c +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "" + +#: ../../old_changelog.rst:91 +#: cd1b5fa5b2ad468b86553c173d4c0494 +msgid "v1.7.0" +msgstr "" + +#: ../../old_changelog.rst:93 +#: d8d582d95ca84387aa4eea41ca4be35d +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "" + +#: ../../old_changelog.rst:97 +#: f514144f70874e0aadb9bb45f85247df +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "" + +#: ../../old_changelog.rst:100 +#: ../../old_changelog.rst:179 +#: ../../old_changelog.rst:282 +#: ../../old_changelog.rst:376 +#: ../../old_changelog.rst:546 +#: ../../old_changelog.rst:725 +#: ../../old_changelog.rst:793 +#: ../../old_changelog.rst:909 +#: ../../old_changelog.rst:941 +#: ../../old_changelog.rst:974 +#: ../../old_changelog.rst:1003 +#: ../../old_changelog.rst:1030 +#: ../../old_changelog.rst:1066 +#: ../../old_changelog.rst:1126 +#: ../../old_changelog.rst:1172 +#: d9f378368bb5411da040252341ae2384 +#: 766d20e109394d4f9d97b5e570375d42 +#: c2770ae1af9b4102b8a693f993b1d639 +#: 9b63b5b3747040e0ba5f64a7c819bcf1 +#: 6d540400003c4c0d9a46efb8124d5831 +#: 226e4f2fbc514dd2b1792a6a22c75007 +#: 9f395f70c5344ef0b711c4248d8bacb3 +#: 111b5503166c49049c83def274c3d777 +#: dc35086399e943d6ae66d4137f6c7084 +#: 36bcd7cd8e4e45e2b1dce6ac93ce18e4 +#: e3502fe3e4524732aa20fa04e01c3807 +#: 2199902f33d7402e943e5681ed7282b2 +#: d56c88d569c24dddb1487157ed9d48a2 +#: 204e63c3290b4fc88a1d943da58066ad +#: 09ef2dfc185f422f85996a6f5f33bac0 +msgid "New Features" +msgstr "" + +#: ../../old_changelog.rst:102 +#: cedd57e50a544d078d8a0b35b0d75f6e +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "" + +#: ../../old_changelog.rst:103 +#: 5e33395ddbba452f8bcf51641c54d375 +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "" + +#: ../../old_changelog.rst:104 +#: c164b7c847854e1984bbf4a5f1b51a43 +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "" + +#: ../../old_changelog.rst:107 +#: 5cc73d7266f64ad2b25444b863bcadfa +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "" + +#: ../../old_changelog.rst:108 +#: ccc738ce09da485b855aa16e20ffce9a +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "" + +#: ../../old_changelog.rst:109 +#: 812fbc4313f64e119e328a6aa76a3340 +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "" + +#: ../../old_changelog.rst:110 +#: 1fc106925a21437ab39286fc0b6bb897 +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "" + +#: ../../old_changelog.rst:111 +#: b0dda7acf89d49c9a433fa44400f873f +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "" + +#: ../../old_changelog.rst:112 +#: 0814891c36484a8b9849b9383ebce5c9 +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "" + +#: ../../old_changelog.rst:113 +#: 5b67e06a18144728909532871f6393a1 +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "" + +#: ../../old_changelog.rst:114 +#: 12d1cb36dec44c0f8dd00640932e0a52 +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "" + +#: ../../old_changelog.rst:115 +#: 951a213cc0d54fa8900718b4672cc823 +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "" + +#: ../../old_changelog.rst:116 +#: 78c44b7870ef41bbb9fdc5dd63252540 +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "" + +#: ../../old_changelog.rst:117 +#: 20f2d55d2c804b4392f6b58947c58672 +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "" + +#: ../../old_changelog.rst:118 +#: d85f77a0ff1e4611a99dacd33f05c21f +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr "" + +#: ../../old_changelog.rst:119 +#: 702f43d65ece465487575d78c419ac9e +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "" + +#: ../../old_changelog.rst:120 +#: 3ff25179def1407ebd35a3c011824c9b +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr "" + +#: ../../old_changelog.rst:121 +#: 70a052b2ab1f4520a90e01cc2826ea34 +msgid ":class:`Attachment` is now hashable" +msgstr "" + +#: ../../old_changelog.rst:122 +#: a4a3979813124537b31ee23a7b23c0df +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "" + +#: ../../old_changelog.rst:123 +#: 46d57515a1e54630ae1104fd543b2348 +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "" + +#: ../../old_changelog.rst:124 +#: ec59b8cf7a244b4883752824029a444c +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "" + +#: ../../old_changelog.rst:125 +#: 031c607942bd4fc2b0c66042de6104c4 +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "" + +#: ../../old_changelog.rst:127 +#: c4a68d1e2d6543c18d128e4a66b6dc07 +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "" + +#: ../../old_changelog.rst:128 +#: 84fd9697528a48cc9bf3a5cb55796fb4 +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "" + +#: ../../old_changelog.rst:129 +#: c5d86802bf05408dadfb4255059ece4d +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "" + +#: ../../old_changelog.rst:130 +#: 78aaf837276a44d5a8800ebdbed9be31 +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "" + +#: ../../old_changelog.rst:131 +#: fcf45e879b0542a29ccbda9b59901a06 +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "" + +#: ../../old_changelog.rst:132 +#: df5a21f9817d4189a91741d6b656bddb +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "" + +#: ../../old_changelog.rst:133 +#: 8f436e824a9a4cc5af7798836754c156 +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "" + +#: ../../old_changelog.rst:134 +#: abbd3dc8948947978de1b77d2bdac71c +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "" + +#: ../../old_changelog.rst:135 +#: e99a1068890a49c797266cc7aeb0c602 +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "" + +#: ../../old_changelog.rst:136 +#: c1211e976016400fb43f0b462feceba0 +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "" + +#: ../../old_changelog.rst:137 +#: 123243ed7ee84d3998310f0ca9e7b82f +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "" + +#: ../../old_changelog.rst:138 +#: 636827aecb494e05a2af1ec75ec67e6a +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "" + +#: ../../old_changelog.rst:139 +#: d71729a1049043958652d4d8139727da +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "" + +#: ../../old_changelog.rst:140 +#: dc255f2941e443e2812b794838f177ee +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "" + +#: ../../old_changelog.rst:145 +#: 9332a09aee684f1298d02fdadc6fc63a +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "" + +#: ../../old_changelog.rst:146 +#: f531f587a2464eb798d1a5ca0712d24e +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "" + +#: ../../old_changelog.rst:147 +#: d9277f2c29684ef49943dfc37bdddddb +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "" + +#: ../../old_changelog.rst:148 +#: 85ad21fb2f0d4fb8aa0ad92b7552cc68 +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "" + +#: ../../old_changelog.rst:149 +#: 3dd3eed6338748a0ba5e20939c36b057 +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "" + +#: ../../old_changelog.rst:150 +#: 8c8032e680de4bd69727218940be575d +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "" + +#: ../../old_changelog.rst:151 +#: 5f8a582b40ba4651ab4a3a3e6d9ff9e9 +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "" + +#: ../../old_changelog.rst:152 +#: a16c3deda62c491b88a435437bca2e07 +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "" + +#: ../../old_changelog.rst:153 +#: bc4a79c3f87f48aca020f9fae6411585 +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "" + +#: ../../old_changelog.rst:154 +#: e435b0463f1c4ecea2f21931d11add5a +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "" + +#: ../../old_changelog.rst:155 +#: d2e9e738609e46fca22c4a72c38ab5b4 +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr "" + +#: ../../old_changelog.rst:156 +#: 923ab0d9634f444396e27e99e4b9daed +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "" + +#: ../../old_changelog.rst:157 +#: d063f4e02f6e43c7b3116c79cfcd49d3 +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "" + +#: ../../old_changelog.rst:158 +#: 83519cee41764612ac09fffed23374a2 +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "" + +#: ../../old_changelog.rst:159 +#: f0e378978cb844e1a9793bc89401d068 +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "" + +#: ../../old_changelog.rst:160 +#: ad6eaec69d6a46bf807c54cbbcd917f8 +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "" + +#: ../../old_changelog.rst:161 +#: e407952e9acf4614bcddeed1888af114 +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "" + +#: ../../old_changelog.rst:162 +#: 0890a4eebddc47a1afb61fdbe88177ed +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "" + +#: ../../old_changelog.rst:165 +#: ../../old_changelog.rst:232 +#: ../../old_changelog.rst:261 +#: ../../old_changelog.rst:317 +#: ../../old_changelog.rst:351 +#: ../../old_changelog.rst:461 +#: ../../old_changelog.rst:533 +#: ../../old_changelog.rst:636 +#: ../../old_changelog.rst:756 +#: ../../old_changelog.rst:783 +#: ../../old_changelog.rst:841 +#: aae073b86ab64b3cbeb8991af651aacf +#: 6577690b508a41508166de7f527309de +#: bacd8bb1f2e94851957735f5c9b966a2 +#: aecfd74254fe4380a3a35c820f199656 +#: 6033308e4fa246309f44ff2a9c62ff84 +#: 7cfe8c8e4f1348d18ba5b233fa4378a3 +#: 8cd36561ec9247c3a46aab2c0bc4091e +#: 2bc932f969fb46fb94ffea3585aef3b8 +#: 68b50c582bfe4c26a0062c99a16a67d1 +#: c30304010e0645a58629fa474ad0b4b0 +#: 58b8c638cd2b4c5ba356c542a0d06f16 +msgid "Miscellaneous" +msgstr "" + +#: ../../old_changelog.rst:167 +#: 35fffc7d076b4d19b1dd10d52e5db496 +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "" + +#: ../../old_changelog.rst:168 +#: df5892f7156f4180b4da7ce99de6d739 +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr "" + +#: ../../old_changelog.rst:169 +#: f0207d09b6d84eeaa788d0764ad4a492 +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "" + +#: ../../old_changelog.rst:174 +#: 0aad39ffee1d4bbda7c4079981f20f38 +msgid "v1.6.0" +msgstr "" + +#: ../../old_changelog.rst:176 +#: aade3a67e9144a09ba3a8238005289e1 +msgid "This version comes with support for replies and stickers." +msgstr "" + +#: ../../old_changelog.rst:181 +#: 2928d53ef45b434c83682851acf50607 +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "" + +#: ../../old_changelog.rst:182 +#: e6f0180fcc584243988623b515be2e6c +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "" + +#: ../../old_changelog.rst:183 +#: c634d09497db4b8a8dd4659697a34169 +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "" + +#: ../../old_changelog.rst:184 +#: 487e1ea4f8bb462c83de699ee87a299b +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "" + +#: ../../old_changelog.rst:185 +#: 68386202f673434c81178a580cfc7df5 +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "" + +#: ../../old_changelog.rst:186 +#: 2aae411c84b4485a993c927cf060261e +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "" + +#: ../../old_changelog.rst:187 +#: 1ecff6a8c9b14a77a2a81db467cbc54a +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "" + +#: ../../old_changelog.rst:188 +#: a8f0bca8b48744b69f02b6f6bd0721b5 +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr "" + +#: ../../old_changelog.rst:189 +#: dac39284d3074e7ba59db548b8c8b667 +msgid ":class:`MessageReference` can now be constructed by users." +msgstr "" + +#: ../../old_changelog.rst:190 +#: b0bfb30b94e14b8cb0af087bc2ad65f4 +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr "" + +#: ../../old_changelog.rst:191 +#: 6a70b57bd5924b9e877d0a0907816b13 +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "" + +#: ../../old_changelog.rst:192 +#: 0bfb977965f54138b22dc6eb96ce906c +msgid "Add support for role tags." +msgstr "" + +#: ../../old_changelog.rst:193 +#: 285ebc4e6c36414883976c65cd507a28 +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr "" + +#: ../../old_changelog.rst:194 +#: 641dcb68af10485ab00a1a78e1357ae5 +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr "" + +#: ../../old_changelog.rst:195 +#: e337f0d7eb544c79b188cfdb9c90a108 +msgid ":attr:`Role.tags` to get the role's tags." +msgstr "" + +#: ../../old_changelog.rst:196 +#: 6a1bd9baad6444f5936d6a146af104ce +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr "" + +#: ../../old_changelog.rst:197 +#: d1398588e32f405189c3c4d08b75d1e0 +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr "" + +#: ../../old_changelog.rst:198 +#: 6818919d47d941f08e4d5cf80eb0c39c +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr "" + +#: ../../old_changelog.rst:199 +#: 534dd8b0c9d940788b6e7a54ca6e470d +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "" + +#: ../../old_changelog.rst:200 +#: 425063d305364db4bed18f2edd6a998c +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr "" + +#: ../../old_changelog.rst:201 +#: e6d646912fff4191b37b21b18ea1a02e +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "" + +#: ../../old_changelog.rst:202 +#: 6abf71b2484c48f3978fa984c29f32aa +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "" + +#: ../../old_changelog.rst:203 +#: 1f32cadfd4d94390a15c72ee514efffc +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "" + +#: ../../old_changelog.rst:204 +#: 5e7226bc7687467b861346aec01d6697 +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "" + +#: ../../old_changelog.rst:205 +#: 92555425255045ff8cf2e71c4ab85097 +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "" + +#: ../../old_changelog.rst:206 +#: 41017b2db7404163ad8997334de5ce79 +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "" + +#: ../../old_changelog.rst:207 +#: 6f2ececf2d9343168654fb760827432c +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "" + +#: ../../old_changelog.rst:208 +#: 848cc6a5cbe640a8b408b8caefef26d6 +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "" + +#: ../../old_changelog.rst:209 +#: 72d5267029d440f684998b01499a2dd6 +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "" + +#: ../../old_changelog.rst:210 +#: cdf1e096672b47babfa4df007a6ecbdc +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "" + +#: ../../old_changelog.rst:211 +#: c814ab72983c487baac039d53c38f3cc +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "" + +#: ../../old_changelog.rst:212 +#: 4fb5464cd6af40b49786e2464c836abc +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "" + +#: ../../old_changelog.rst:218 +#: 8c04592e21c540eda4048de13a69dbdb +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "" + +#: ../../old_changelog.rst:219 +#: 1529d64a898648f78bded6a62c04bd72 +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "" + +#: ../../old_changelog.rst:220 +#: 1bd0a0d6cc5348c9baf970007cfa6a4e +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "" + +#: ../../old_changelog.rst:221 +#: aa405cd1adec434588c8b174ee19415e +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "" + +#: ../../old_changelog.rst:222 +#: e2785fae147943bbbd6f758ccacbec4d +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "" + +#: ../../old_changelog.rst:223 +#: dd9c5eeb1bb0474585b533b600c34c27 +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "" + +#: ../../old_changelog.rst:224 +#: a36177f33395415bae1711f1241d5ec5 +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "" + +#: ../../old_changelog.rst:225 +#: d8bb7ccaaee846a1b3cba95eb5f42d86 +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "" + +#: ../../old_changelog.rst:226 +#: 69870ecc5e7c426f9336aee1b2b7a9ca +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "" + +#: ../../old_changelog.rst:227 +#: 100101ec2d7042c081f28dc8fac3c53c +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "" + +#: ../../old_changelog.rst:228 +#: bb1dc29025e4457d920f0baedad19d38 +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "" + +#: ../../old_changelog.rst:229 +#: 22bfaf396de14606a0a5fbc847cda53c +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "" + +#: ../../old_changelog.rst:234 +#: 789ccf8b8d80433e9b1f9ba299607b22 +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "" + +#: ../../old_changelog.rst:235 +#: 558e6607bf3946dd821afee545260471 +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "" + +#: ../../old_changelog.rst:236 +#: b92d50d5a8b144af9e7bdfa05dd34bd4 +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "" + +#: ../../old_changelog.rst:237 +#: 40dc68da0cbd455b9d0e3158d8647ccd +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "" + +#: ../../old_changelog.rst:238 +#: 8193921eb69746278b513bd4ac55f810 +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "" + +#: ../../old_changelog.rst:239 +#: cdba632c741d4ab58fc5457382e27077 +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "" + +#: ../../old_changelog.rst:240 +#: 993a265e912348678e7c93c74432847b +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "" + +#: ../../old_changelog.rst:241 +#: 4413cf4b251e40f9a00fd23913c040f9 +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "" + +#: ../../old_changelog.rst:246 +#: 303eec99716d480fb54e5a806e51a743 +msgid "v1.5.1" +msgstr "" + +#: ../../old_changelog.rst:251 +#: 5494410b5e9c4b62bae3a9abb74ffbd9 +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "" + +#: ../../old_changelog.rst:252 +#: 74ce2df0dd1443b1ac401d14f6a92007 +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "" + +#: ../../old_changelog.rst:253 +#: ce45479ca5c74bf1920548413322cea2 +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "" + +#: ../../old_changelog.rst:254 +#: 4afa3f29da604adb98a6fe12f46b69cb +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "" + +#: ../../old_changelog.rst:255 +#: da46975d69d74dc3b57e29d8e97850e0 +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "" + +#: ../../old_changelog.rst:256 +#: b3ecbd42febb4cb9afb0fa4b7163cde4 +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "" + +#: ../../old_changelog.rst:257 +#: 63109f9ee740468d961c2f16bc142b49 +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "" + +#: ../../old_changelog.rst:258 +#: 29f60cb3c57041ebb2316de15cbf6a55 +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "" + +#: ../../old_changelog.rst:263 +#: fd3afa10f0534576aae22fb7687e5c2c +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "" + +#: ../../old_changelog.rst:264 +#: 008d9ba5556140e487bd230df7f70615 +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "" + +#: ../../old_changelog.rst:265 +#: 3af3c1b8488040ab95f8bf2ea817f44b +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "" + +#: ../../old_changelog.rst:266 +#: ab0d246b3d6441f0acae3214bf4f100b +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr "" + +#: ../../old_changelog.rst:271 +#: 10984e12183b4de9867d2f770baaa19b +msgid "v1.5.0" +msgstr "" + +#: ../../old_changelog.rst:273 +#: b76c31885c704edc89d161a7e64de356 +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "" + +#: ../../old_changelog.rst:276 +#: b12a35a1a68746ea84ab39ac90ba4fe0 +msgid "API Changes" +msgstr "" + +#: ../../old_changelog.rst:278 +#: 828d3ffb49484051aa3c2b5c47af7035 +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "" + +#: ../../old_changelog.rst:279 +#: 9e71a3ac992c4a76aa29bfe9012021e3 +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "" + +#: ../../old_changelog.rst:284 +#: 129e78967e4a4ba39e81263a7453cc12 +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "" + +#: ../../old_changelog.rst:285 +#: 3c204598b5a64286b395490b196dd65d +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "" + +#: ../../old_changelog.rst:286 +#: f23df9f9d1c74ff4be6ec0280dfc6d8c +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "" + +#: ../../old_changelog.rst:287 +#: a093c6e7570e49f0a51c6dd0af367d01 +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "" + +#: ../../old_changelog.rst:288 +#: e7a5419a7cd64d5b80c12db4afef1b50 +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "" + +#: ../../old_changelog.rst:289 +#: 133b840b129042b09d17ec6db4dea0d6 +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "" + +#: ../../old_changelog.rst:290 +#: 1df6243130b840a097e5e00f2f58157f +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "" + +#: ../../old_changelog.rst:291 +#: bc32a3280def41b18e47d984e92b5f31 +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "" + +#: ../../old_changelog.rst:292 +#: 0b9d301adb0e42deb749d5cec6ac499d +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "" + +#: ../../old_changelog.rst:293 +#: a66430bc45f94d669eb6867563e7eb32 +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "" + +#: ../../old_changelog.rst:294 +#: 941391c0a8c94d658cc28942e5788b32 +msgid "This seems currently unused API wise." +msgstr "" + +#: ../../old_changelog.rst:296 +#: 71cdcbf5761647899b9a3415af3b6697 +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "" + +#: ../../old_changelog.rst:297 +#: 392776121e374a24b86ed73162a6f615 +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "" + +#: ../../old_changelog.rst:298 +#: 42afab58d537482ca2c546afccc48f71 +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "" + +#: ../../old_changelog.rst:299 +#: ed8a5a80bf32438ea8c845855d6b9b90 +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "" + +#: ../../old_changelog.rst:304 +#: ../../old_changelog.rst:338 +#: 8c0934ceb78c4f1693ffe335151b2fa8 +#: bbe23bac78ca4dd28f187968bda5eea5 +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "" + +#: ../../old_changelog.rst:305 +#: ../../old_changelog.rst:339 +#: 424cc5829d774465a38c056fef25a32b +#: 01bd7be1c4304e208005be731ba4afd6 +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "" + +#: ../../old_changelog.rst:306 +#: ../../old_changelog.rst:340 +#: 9eaaa5136a534eef8985ae7b55a07932 +#: 5a400f231b0f431e88023cec102cc1f7 +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "" + +#: ../../old_changelog.rst:307 +#: ../../old_changelog.rst:341 +#: 88a01d4747cf40c680c7fe0fb9f3d1f2 +#: 60986dddc4514d5f8439bb750827cc8a +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "" + +#: ../../old_changelog.rst:308 +#: ../../old_changelog.rst:342 +#: d282047850f0430cbf53c5cc4102453e +#: b0334e961f684210a4a187503f27acd1 +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "" + +#: ../../old_changelog.rst:309 +#: ../../old_changelog.rst:343 +#: 08beeb46d8e34e25831effd28dedb269 +#: 830e4e03694c4a4d87822e6869a230a4 +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "" + +#: ../../old_changelog.rst:310 +#: ../../old_changelog.rst:344 +#: e5b9d4e38bc14f8fbfdde8181d940040 +#: 21306977bea14641b77f1a9ec1faabb6 +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "" + +#: ../../old_changelog.rst:311 +#: ../../old_changelog.rst:345 +#: b96344b6c603408dab9ca02983fffb11 +#: 16b3062f67904ff2ae561b2546794925 +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "" + +#: ../../old_changelog.rst:312 +#: ../../old_changelog.rst:346 +#: 4cd3dabc92e946b1a8eff43a8af84c68 +#: e3ff10a00de94a0b8ca18fb076c7da9d +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "" + +#: ../../old_changelog.rst:313 +#: ../../old_changelog.rst:347 +#: dac3191f3dbf46fe97c6c31f9a63ce5b +#: 14ffcd2aaf65405e87ca219d9dc793d1 +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "" + +#: ../../old_changelog.rst:314 +#: ../../old_changelog.rst:348 +#: 3c59a15f5ce145968f60fc22e8be33fc +#: 820a6a6dd5614720bc093ab09246e0df +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "" + +#: ../../old_changelog.rst:319 +#: 81ade28f767a448c8891d0c9f0af3fe5 +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "" + +#: ../../old_changelog.rst:320 +#: ../../old_changelog.rst:353 +#: 69a6f356a382470a93a0254e1ef839fb +#: 09f4349738e94800b64e5fac16700400 +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "" + +#: ../../old_changelog.rst:321 +#: 6eabb97dab2645f68a540785b651f41a +msgid "Gateway rate limits are now handled." +msgstr "" + +#: ../../old_changelog.rst:322 +#: 092d27363495423898dd836604163f0b +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "" + +#: ../../old_changelog.rst:323 +#: b90a6d56a2a74446a688034872c88075 +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "" + +#: ../../old_changelog.rst:324 +#: e199778b8c4e4710ae92fe337160ea38 +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "" + +#: ../../old_changelog.rst:325 +#: fd0018f1ecf249598ea84f0c89345276 +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "" + +#: ../../old_changelog.rst:326 +#: ../../old_changelog.rst:354 +#: 090948d9adb04e6d9f49c1bd6de23a65 +#: 4ae78861471e4898be05b97f358820b0 +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "" + +#: ../../old_changelog.rst:331 +#: 033fe6a2b5f746c2852bb7d920ccd40d +msgid "v1.4.2" +msgstr "" + +#: ../../old_changelog.rst:333 +#: acd09dc0788248c78f3b8710f895df5d +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "" + +#: ../../old_changelog.rst:359 +#: ecd8be61f7374c9792ac2215ceeed38c +msgid "v1.4.1" +msgstr "" + +#: ../../old_changelog.rst:364 +#: b1f8498cf82f4210a828c8ce83f34f49 +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "" + +#: ../../old_changelog.rst:365 +#: 166552fd8c854e6db3729c8ac07bf9f4 +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "" + +#: ../../old_changelog.rst:366 +#: e9f4a3a3be194fedbe32bd94edfc274c +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "" + +#: ../../old_changelog.rst:371 +#: 29499153bfa44529b388e924c3e35752 +msgid "v1.4.0" +msgstr "" + +#: ../../old_changelog.rst:373 +#: 36f10aae7b534b2c917cf9e84e44e9e8 +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "" + +#: ../../old_changelog.rst:378 +#: e1aab67a429f4ce29c6f384b1e142f65 +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "" + +#: ../../old_changelog.rst:379 +#: ad3114f5c85b4b8bbdcd4cb1d13e96a5 +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "" + +#: ../../old_changelog.rst:380 +#: d06782ffb1514f8a8d98c03346204e64 +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "" + +#: ../../old_changelog.rst:382 +#: dbdf73c2aa46481789f70a7cbc01a923 +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr "" + +#: ../../old_changelog.rst:383 +#: 96f37c68a624441e9309f88ab5f534aa +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "" + +#: ../../old_changelog.rst:384 +#: 46f506fad9c648458b50eba46a1f110a +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "" + +#: ../../old_changelog.rst:385 +#: a811e1c54bd941c1b27efe7f3383bfc1 +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "" + +#: ../../old_changelog.rst:386 +#: f5c40023553848668f6f445e7c2d024c +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "" + +#: ../../old_changelog.rst:387 +#: bea86a6578ae438cb36217e092c606e0 +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "" + +#: ../../old_changelog.rst:388 +#: 1964754bcbfb4fd3a7b8862154346b51 +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "" + +#: ../../old_changelog.rst:390 +#: b171f740fdf04ad68b61129a900ef24c +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "" + +#: ../../old_changelog.rst:391 +#: 81f61496186241f2844dc1b0ff8c8c4e +msgid "This adds :class:`Template` to read a template's information." +msgstr "" + +#: ../../old_changelog.rst:392 +#: f9851cb9d0114aabb6785ddd9e7bdb32 +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr "" + +#: ../../old_changelog.rst:393 +#: 97faa677b970448e86f167b5ed81de11 +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr "" + +#: ../../old_changelog.rst:394 +#: ec29d1106c08437ca9cfce3d5d13fb3b +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "" + +#: ../../old_changelog.rst:396 +#: c1e6e4b023734d0191da0a5c15900143 +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "" + +#: ../../old_changelog.rst:397 +#: 0e71c3d54bf64299a35f05a8e693ae24 +msgid ":class:`Integration` is used to read integration information." +msgstr "" + +#: ../../old_changelog.rst:398 +#: fc7ff73ee2af4046a4665f5fc77796e9 +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr "" + +#: ../../old_changelog.rst:399 +#: 7e2eb62f1c264d6891ceb855d4591dbc +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr "" + +#: ../../old_changelog.rst:400 +#: bfa5a4a346624ca79e54d3642d01bb5c +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr "" + +#: ../../old_changelog.rst:401 +#: a86a823956254da4b3b49a4c51004e95 +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr "" + +#: ../../old_changelog.rst:402 +#: 81278710074e4a90a19dfe08c9e09b2c +msgid ":meth:`Integration.delete` will delete an integration." +msgstr "" + +#: ../../old_changelog.rst:403 +#: bb332103d9ad4de7896c75c4f2d1edee +msgid ":meth:`Integration.sync` will sync an integration." +msgstr "" + +#: ../../old_changelog.rst:404 +#: f560a2e6b52c4de0929759c11f5e0979 +msgid "There is currently no support in the audit log for this." +msgstr "" + +#: ../../old_changelog.rst:406 +#: c1c8c4eae418422eb3dc6dde96d640e9 +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "" + +#: ../../old_changelog.rst:407 +#: cd8a55de2dd449698d0ad31ef8ccb437 +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "" + +#: ../../old_changelog.rst:408 +#: eb62216524a64245ac23e0629b972af4 +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "" + +#: ../../old_changelog.rst:409 +#: 039a71ed6eb34a948b59d222a94b32cb +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "" + +#: ../../old_changelog.rst:410 +#: f0bd2c690f1742bba6462fdc4463fe42 +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "" + +#: ../../old_changelog.rst:411 +#: d4758050bc2645fb8c70ea8b1afa8c3f +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "" + +#: ../../old_changelog.rst:412 +#: c08fbae6ca0948f18ffe72ea22e53ebd +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "" + +#: ../../old_changelog.rst:413 +#: 234a8225b8074e1f83c34d9083c5b753 +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "" + +#: ../../old_changelog.rst:414 +#: f3b7e6e6b34444f4a332e9f11b67dd70 +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "" + +#: ../../old_changelog.rst:415 +#: 5f219d25bbce4f43a26882f4829d5cd7 +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "" + +#: ../../old_changelog.rst:416 +#: e473f80e237243b6b58aa6a0ace7a203 +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "" + +#: ../../old_changelog.rst:417 +#: e769df0c96904de1a33f7a5f1c2bc25b +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "" + +#: ../../old_changelog.rst:418 +#: d1226b31f9d044e2bc454e19b6390d94 +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "" + +#: ../../old_changelog.rst:419 +#: 15224824df754488b5da3a5364f6884f +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "" + +#: ../../old_changelog.rst:420 +#: eb43cff3360b4d93a8c0e75b17bc7914 +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "" + +#: ../../old_changelog.rst:421 +#: 1079cadf86634cfda77479438891a867 +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "" + +#: ../../old_changelog.rst:422 +#: ca6f6d68f19e4b839a2ab54b42c82ae8 +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "" + +#: ../../old_changelog.rst:423 +#: caf2ddceb3b048579d1d0103efe59d0b +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "" + +#: ../../old_changelog.rst:424 +#: 455fce753998444894fd03d989221870 +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "" + +#: ../../old_changelog.rst:425 +#: 492a3ff96db34055ab5ef8db9d7aa0b3 +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "" + +#: ../../old_changelog.rst:426 +#: b0afabd305984420b30a41250862de60 +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "" + +#: ../../old_changelog.rst:427 +#: e7a39d7fd6b84ef3be0cc1a9274bfb96 +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "" + +#: ../../old_changelog.rst:428 +#: 9551966f0b6b4b28b4ecb97a1451bdf5 +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "" + +#: ../../old_changelog.rst:429 +#: f389ab47cdfd47d798d8b37185fc49a0 +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "" + +#: ../../old_changelog.rst:435 +#: c36502f015ad41568692c520d61ca1ae +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "" + +#: ../../old_changelog.rst:436 +#: e30308967add451eb9baa32dd3f6eb23 +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "" + +#: ../../old_changelog.rst:437 +#: 61ed117064c447c7a073299cbbaa6a8b +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "" + +#: ../../old_changelog.rst:438 +#: 4cc3e7b4c70e4318ad4e70383b01efdf +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "" + +#: ../../old_changelog.rst:439 +#: 3c22f73ec818468eb2d17ca5907b5134 +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "" + +#: ../../old_changelog.rst:440 +#: 65f57a68db644466bdc9e78e24c5e0b6 +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "" + +#: ../../old_changelog.rst:441 +#: bc0fef5abc41480e916541b2d5a928ea +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "" + +#: ../../old_changelog.rst:442 +#: 5c8a8eb5bcb84681afae247547662292 +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "" + +#: ../../old_changelog.rst:443 +#: 896991c98dbe4c8ea001881a52fe6ed2 +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "" + +#: ../../old_changelog.rst:444 +#: 06aba689796e43f9bd626e060d7a0c2b +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "" + +#: ../../old_changelog.rst:445 +#: adf9c5dfaf5f4c1da05edc7a0c233431 +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "" + +#: ../../old_changelog.rst:446 +#: 6251bac44c604c9892d13c7ef415983d +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "" + +#: ../../old_changelog.rst:447 +#: 114807e8b60c4ab98e3ec6e0517a08a8 +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "" + +#: ../../old_changelog.rst:448 +#: ab2cedd01cc64939aca8c9d9d1c858ea +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "" + +#: ../../old_changelog.rst:449 +#: 992b675d138e40d48549f9e054fb37ad +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "" + +#: ../../old_changelog.rst:450 +#: 3fbabe76f198438686c278bf714d8afc +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "" + +#: ../../old_changelog.rst:451 +#: 0824b83c8a7141138ed5ba9133150e03 +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "" + +#: ../../old_changelog.rst:452 +#: 52c5a989164a43c28b39046c79ba1e95 +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "" + +#: ../../old_changelog.rst:453 +#: cbd274196bba44189344f78bc604d638 +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "" + +#: ../../old_changelog.rst:454 +#: ee1c0df31a834546bb907abe74310265 +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "" + +#: ../../old_changelog.rst:455 +#: 21062660552d482e9794d4b19d8a22c0 +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "" + +#: ../../old_changelog.rst:456 +#: 5068af443e1344bfb7cb3ae05aa9a7ee +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "" + +#: ../../old_changelog.rst:457 +#: 6730fbacf35b42fda9028f1908c9e62d +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "" + +#: ../../old_changelog.rst:463 +#: b8cad1bdeea94d40980d3b5877e88912 +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "" + +#: ../../old_changelog.rst:464 +#: 2ccf186629b245aab640745b86c0b8a0 +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr "" + +#: ../../old_changelog.rst:465 +#: bc3f1514d06e4ffa82f5958440014458 +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "" + +#: ../../old_changelog.rst:466 +#: 420f662046664e3c955aa818b7e812f0 +msgid ":meth:`TextChannel.follow`" +msgstr "" + +#: ../../old_changelog.rst:467 +#: 95dde2dfd9a14a6eb12c6f7bb322987a +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr "" + +#: ../../old_changelog.rst:468 +#: dc69c22bc09149729c7646d3e156bea0 +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr "" + +#: ../../old_changelog.rst:470 +#: 9e322ad210b943b4bef06ecef48a9d40 +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "" + +#: ../../old_changelog.rst:471 +#: e47d6e04571341239630b3c4152906b9 +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "" + +#: ../../old_changelog.rst:472 +#: b220dd6ab8614755a7bb3c496a65e817 +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "" + +#: ../../old_changelog.rst:473 +#: f2d9b55aea0c4a8d94d05409d9956864 +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "" + +#: ../../old_changelog.rst:474 +#: aa1ce06a0a1b45058956deb9e7e9f435 +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "" + +#: ../../old_changelog.rst:475 +#: da36bfb601384d02aa09c58ae71a1ddd +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "" + +#: ../../old_changelog.rst:476 +#: 96474a8793a5431d8f05525da921444a +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "" + +#: ../../old_changelog.rst:481 +#: 3f9d816c70db4a8cac8f50f986ea272b +msgid "v1.3.4" +msgstr "" + +#: ../../old_changelog.rst:486 +#: 115d2cccd4bf4d719c0494b0bc53fa3a +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "" + +#: ../../old_changelog.rst:491 +#: 9e212adc90f74e0ca5276d672df60e19 +msgid "v1.3.3" +msgstr "" + +#: ../../old_changelog.rst:496 +#: 96b3769677394f6bbb5f9309011e3f39 +msgid "Change default WS close to 4000 instead of 1000." +msgstr "" + +#: ../../old_changelog.rst:497 +#: 942953724fa34529a1b25ae7973280d6 +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "" + +#: ../../old_changelog.rst:499 +#: 8696fa14b4bf4ed8bbda9716eda490c3 +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "" + +#: ../../old_changelog.rst:504 +#: 49b2fb2a70564e5f96322b3dbc59093c +msgid "v1.3.2" +msgstr "" + +#: ../../old_changelog.rst:506 +#: e633fa6bc66c46fba0bf95d625f0a1c9 +msgid "Another minor bug fix release." +msgstr "" + +#: ../../old_changelog.rst:511 +#: b1a8cbd06a6345db970bd23128ecf3eb +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "" + +#: ../../old_changelog.rst:512 +#: 0875870fba694dd4a10bc6b1bd3030eb +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr "" + +#: ../../old_changelog.rst:513 +#: 9513995a528f4cd2a3b151fee8bd9c72 +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "" + +#: ../../old_changelog.rst:514 +#: 3bfca67602ea47c3bf1994ea6c6e2f54 +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "" + +#: ../../old_changelog.rst:515 +#: f3d21c46aa5d4c35a8d69b69aa64e8a7 +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "" + +#: ../../old_changelog.rst:516 +#: a152a85726ae4833a9a158e081906066 +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "" + +#: ../../old_changelog.rst:517 +#: c414ff9f9afb45b4bac514eabfe33ec9 +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "" + +#: ../../old_changelog.rst:522 +#: 73688aae90b74dc6992957cda76afb91 +msgid "v1.3.1" +msgstr "" + +#: ../../old_changelog.rst:524 +#: fb7259a89de141518940ab53b7118c78 +msgid "Minor bug fix release." +msgstr "" + +#: ../../old_changelog.rst:529 +#: 1788832890e5432491707257ba361a1d +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "" + +#: ../../old_changelog.rst:530 +#: 7732c78edba24e769c63373ca655040c +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "" + +#: ../../old_changelog.rst:535 +#: 119c187b71124bf98999f351e134e1fc +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "" + +#: ../../old_changelog.rst:536 +#: ce43892559af4e9d9053f2a27444d1b1 +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "" + +#: ../../old_changelog.rst:541 +#: ef6b11460b9744f2b62136f8ffaaa66a +msgid "v1.3.0" +msgstr "" + +#: ../../old_changelog.rst:543 +#: 87ad557ce0c24885bdf43fc45061284c +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "" + +#: ../../old_changelog.rst:548 +#: aec2b98070ce401e8b1ca012e1bf6e45 +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "" + +#: ../../old_changelog.rst:549 +#: 820ea45ae93c4ba7b726d3bd44d84e75 +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "" + +#: ../../old_changelog.rst:550 +#: f4c00a233af340fcb0085afd7d1f51a9 +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "" + +#: ../../old_changelog.rst:551 +#: 1acf50835daa4c9d9a55815d3b08aed7 +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "" + +#: ../../old_changelog.rst:552 +#: 9259271a4d244d13b437f90beafd4e78 +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "" + +#: ../../old_changelog.rst:553 +#: df5c9d0093004697a88e8a558b2e6e93 +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "" + +#: ../../old_changelog.rst:554 +#: 40fe9267ccd2476ba620b3ca5f262197 +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "" + +#: ../../old_changelog.rst:555 +#: 42cb1397d3ac435fa5ed3b8ea81ad549 +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "" + +#: ../../old_changelog.rst:556 +#: 72379b04191642b3b238b05b7bb80548 +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "" + +#: ../../old_changelog.rst:557 +#: ed8974e34b6443dfa915e4490667e4b3 +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "" + +#: ../../old_changelog.rst:558 +#: 0d950e8c55dd4f8586e0127ea8115e7e +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "" + +#: ../../old_changelog.rst:559 +#: 0e5cb164e2ac4509b46c6457ce34548c +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "" + +#: ../../old_changelog.rst:560 +#: 6c1eac3232f14f6c9019ab7d740eb64d +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "" + +#: ../../old_changelog.rst:561 +#: 6583b46d10c949c29acb8848850598e8 +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "" + +#: ../../old_changelog.rst:562 +#: 62cc6137853f476ea15a032b8c8519b5 +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "" + +#: ../../old_changelog.rst:563 +#: 94d9d687d2da4e3b87fdfcb9fcd49664 +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "" + +#: ../../old_changelog.rst:564 +#: 31fdead7c6e8472989a0507d527e2932 +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "" + +#: ../../old_changelog.rst:565 +#: 5e307f47cbc04ed29b2209318a4bac63 +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "" + +#: ../../old_changelog.rst:566 +#: dec4a576e7e5419f82e093c7ec3f77c1 +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "" + +#: ../../old_changelog.rst:567 +#: 9ad042fd34ed4df5b81eaad3ca88574e +msgid "Note that integration support is not finalized." +msgstr "" + +#: ../../old_changelog.rst:569 +#: 3390e29cc66644e1a1a7e1df6f9367c5 +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "" + +#: ../../old_changelog.rst:570 +#: 3f3f481b58324d67a01ebe8d09a38658 +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "" + +#: ../../old_changelog.rst:571 +#: 7aa7360276774dcb9c5d42f0e008d0ed +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "" + +#: ../../old_changelog.rst:572 +#: 2d05339f79e64279a5ec781e0560da3e +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "" + +#: ../../old_changelog.rst:573 +#: f3dabdcb056142ee9f4d72efe16b599f +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "" + +#: ../../old_changelog.rst:574 +#: 341e2ad248ad4ea0bb805dfd999fcd4a +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "" + +#: ../../old_changelog.rst:575 +#: b767a74f1cd74a2782b619d528041130 +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "" + +#: ../../old_changelog.rst:576 +#: a85ffc6ba20f41808b72c7493ec31e68 +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "" + +#: ../../old_changelog.rst:577 +#: 6dc312fd30bd447e8842d34cc7d6d8a2 +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "" + +#: ../../old_changelog.rst:579 +#: 2688d9d068b241d4b680b0b5f47bb36d +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "" + +#: ../../old_changelog.rst:580 +#: 878aec6500b346dda36eb646a08ce091 +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "" + +#: ../../old_changelog.rst:581 +#: ccb2835d76a542bbbffee1e2b7ba0be9 +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "" + +#: ../../old_changelog.rst:582 +#: 7a8afdb6988d46028d717bed39558c6a +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "" + +#: ../../old_changelog.rst:583 +#: 67f65835c49c4cb288694b65171c8420 +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "" + +#: ../../old_changelog.rst:584 +#: 72dc3853313b490daa47774a7abb1d77 +msgid ":attr:`Permissions.manage_permissions`" +msgstr "" + +#: ../../old_changelog.rst:585 +#: 1b59de54f4a54fa7a0d4dedfe39d29d3 +msgid ":attr:`Permissions.view_channel`" +msgstr "" + +#: ../../old_changelog.rst:586 +#: 69de6d9d1c0b43bd94b03da2c1f5d5ee +msgid ":attr:`Permissions.use_external_emojis`" +msgstr "" + +#: ../../old_changelog.rst:588 +#: bcfef40f9a7842e680666eed8587d004 +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "" + +#: ../../old_changelog.rst:589 +#: 1a3a71d81ec84b11bca519c67ce653a9 +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "" + +#: ../../old_changelog.rst:590 +#: a4171f744d8d4df8a55fb17434885c93 +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "" + +#: ../../old_changelog.rst:592 +#: 96849cffb1bb45728aacf0318bb1f3d5 +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "" + +#: ../../old_changelog.rst:593 +#: 48089f96c59e43d6bde2e8e9957001fa +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "" + +#: ../../old_changelog.rst:594 +#: 632244af79b34909bae166762c227acf +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr "" + +#: ../../old_changelog.rst:595 +#: 42938be4bae043348325c04520fa440b +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr "" + +#: ../../old_changelog.rst:597 +#: 75fb67b0529b45a494728d4e50adcb6d +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "" + +#: ../../old_changelog.rst:598 +#: 0249ad2dd7254e5abbf6ee39d396afb7 +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "" + +#: ../../old_changelog.rst:599 +#: e8e5195b30cb44a38fce09912a709a63 +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "" + +#: ../../old_changelog.rst:600 +#: d92c3af3b4594da58fd1e4f5903d04a0 +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "" + +#: ../../old_changelog.rst:601 +#: 3447dec897544d1eb0752f24736dbec3 +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "" + +#: ../../old_changelog.rst:602 +#: 26adbcbe9c9a466eb657b4130478bf3b +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "" + +#: ../../old_changelog.rst:603 +#: cf3f836f411c4075806478bf81367997 +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "" + +#: ../../old_changelog.rst:604 +#: 92a2afd0235d4c4795512f9e78876cbd +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "" + +#: ../../old_changelog.rst:605 +#: 1464ac88f01e41519f1e26427404337e +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "" + +#: ../../old_changelog.rst:606 +#: ea0ee3d087de4b19a1480eeba4c1cbf0 +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "" + +#: ../../old_changelog.rst:607 +#: cd207ea2fa444c8bb6df15e75bb464c6 +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "" + +#: ../../old_changelog.rst:608 +#: 0176fb8ca8da4ae49df0066c2259639d +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "" + +#: ../../old_changelog.rst:609 +#: dec5bd3173924b8c8791325d5a6b520a +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "" + +#: ../../old_changelog.rst:614 +#: e00711a7903147f8a4bdb888b4309f0e +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "" + +#: ../../old_changelog.rst:615 +#: af1470c4fd594491a2691eff3036b15d +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "" + +#: ../../old_changelog.rst:616 +#: e7a27cebaf3c4cdebc99422fd53ea313 +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "" + +#: ../../old_changelog.rst:617 +#: 1380092aff0a4028b0b670b759dedc34 +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "" + +#: ../../old_changelog.rst:618 +#: dd8fdb4c46894258b8221c2301d13f9f +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "" + +#: ../../old_changelog.rst:619 +#: fdf595c42db94855a7f8af6853af630e +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "" + +#: ../../old_changelog.rst:620 +#: 1d13b9e881944ab4a495c23dc3f758b1 +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "" + +#: ../../old_changelog.rst:621 +#: 69b4c0416c7d463bbb78f21f2d5892c9 +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "" + +#: ../../old_changelog.rst:622 +#: 31c9120e4b424b23b5a66ed2e1c95f4e +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "" + +#: ../../old_changelog.rst:623 +#: 4c641a9e0d9646b5ad775f6256f23a25 +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "" + +#: ../../old_changelog.rst:624 +#: e06f6e77f0b1430eaaecc014a836da6d +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "" + +#: ../../old_changelog.rst:625 +#: 857422517b2b4b41894d102a976dc047 +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "" + +#: ../../old_changelog.rst:626 +#: 9e207f5368814e4288a6e4119d5dc297 +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "" + +#: ../../old_changelog.rst:627 +#: 84d1874e4cee4c7f9b303e5278c1b50b +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "" + +#: ../../old_changelog.rst:628 +#: a2a25fd5ddf54ff08304c4b8b0813b1c +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "" + +#: ../../old_changelog.rst:629 +#: 3acbd2f7dd194c469a00d357419ed4c3 +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "" + +#: ../../old_changelog.rst:630 +#: 3ff6e7201a974e6eaffb391ab860730d +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "" + +#: ../../old_changelog.rst:631 +#: 3e28fd66ff7e4bd3b1c292f90f0744d7 +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "" + +#: ../../old_changelog.rst:632 +#: 528ebdf1a85049beb1234830e27cac14 +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "" + +#: ../../old_changelog.rst:633 +#: f834745510e24753a8617ccae5bbe89d +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "" + +#: ../../old_changelog.rst:638 +#: d15af8d97136478a821a5156cee0fc2c +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "" + +#: ../../old_changelog.rst:639 +#: 51459269b79f432cb6f874ede7ffcc1e +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "" + +#: ../../old_changelog.rst:640 +#: 4b86965130d34abdb3aeb31b6e530a76 +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "" + +#: ../../old_changelog.rst:641 +#: a20556f4b00f4c64a9bf20b596ea3f31 +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr "" + +#: ../../old_changelog.rst:642 +#: 8fdd1fdd3b86431180b62640480972d1 +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "" + +#: ../../old_changelog.rst:643 +#: 9163af8a775746c1bf6fe13b8bcb57a7 +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "" + +#: ../../old_changelog.rst:644 +#: 3660b72fb04e4fed852510d1d705b550 +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "" + +#: ../../old_changelog.rst:645 +#: fe40aee844844a3eb90f5bdc47f33b18 +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "" + +#: ../../old_changelog.rst:646 +#: 88cf03e2442d4af8ae9a786809a507df +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "" + +#: ../../old_changelog.rst:647 +#: 9363c44d08cb418286b07eb677d89465 +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "" + +#: ../../old_changelog.rst:649 +#: 7baaea1f94bf40b78621647e39ce1cea +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "" + +#: ../../old_changelog.rst:650 +#: 01555fa74acb4b1c87546bf09b15cc86 +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "" + +#: ../../old_changelog.rst:651 +#: 659cb6b920e749608386e6443eba88fc +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "" + +#: ../../old_changelog.rst:652 +#: 7c4c03b56f104130a32b4f284d22b8ac +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "" + +#: ../../old_changelog.rst:653 +#: e22fffbbaab54a318b26af9e19ba64bf +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "" + +#: ../../old_changelog.rst:654 +#: 1152570e7c1b4aedb0b78ab5716f4d71 +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "" + +#: ../../old_changelog.rst:655 +#: cc57562641f246f8904d772a9acc0534 +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "" + +#: ../../old_changelog.rst:660 +#: 32772be63a074f9790a3980da071a0df +msgid "v1.2.5" +msgstr "" + +#: ../../old_changelog.rst:665 +#: 4cc02c6c550d41d88b70722e41d64eb9 +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "" + +#: ../../old_changelog.rst:670 +#: 8d35ee473cd74d738146ce2d657df952 +msgid "v1.2.4" +msgstr "" + +#: ../../old_changelog.rst:675 +#: 41d3f2674654483da67ade0a602276ee +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "" + +#: ../../old_changelog.rst:676 +#: 4f98a741acca4cc0b69676d9fa0cad61 +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "" + +#: ../../old_changelog.rst:677 +#: 8b1a995241694488990f879a2ab530a2 +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "" + +#: ../../old_changelog.rst:678 +#: ff84922259cf462092e0ba88f0dc84cc +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "" + +#: ../../old_changelog.rst:679 +#: 9e030c2cfc12478ead5e21db6a98de2d +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "" + +#: ../../old_changelog.rst:680 +#: 2137be9a8eb44ad2a4dffa760e0ca75b +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "" + +#: ../../old_changelog.rst:685 +#: 82095021bdb24fc69b5efeface54533d +msgid "v1.2.3" +msgstr "" + +#: ../../old_changelog.rst:690 +#: ec68a62956584222a654ac8c5a9f9a0e +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "" + +#: ../../old_changelog.rst:691 +#: 8b04ba4fa4b547f785775b36dec0dc32 +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "" + +#: ../../old_changelog.rst:692 +#: ff4a94f8937f40c4acf04c945d980e64 +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "" + +#: ../../old_changelog.rst:693 +#: fc15de482fa4497384fda408ce9eb801 +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "" + +#: ../../old_changelog.rst:694 +#: 49729c6a970b43f9a2a30357e74a6089 +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "" + +#: ../../old_changelog.rst:699 +#: bb0503ef74fd4792a5873fd76d5598e4 +msgid "v1.2.2" +msgstr "" + +#: ../../old_changelog.rst:704 +#: 716e108d5bf24ecf95ca6f914686e494 +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "" + +#: ../../old_changelog.rst:709 +#: b934da94e2344ef681e124d7d1acc9dc +msgid "v1.2.1" +msgstr "" + +#: ../../old_changelog.rst:714 +#: 5dd199bbfe5f41149d4bd595d3538b53 +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr "" + +#: ../../old_changelog.rst:715 +#: 8ff19fa9e07c40ad9f634f41bf898937 +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "" + +#: ../../old_changelog.rst:720 +#: e6704ee9107042a08dffa820a38e14d6 +msgid "v1.2.0" +msgstr "" + +#: ../../old_changelog.rst:722 +#: 6aea4acec2754d789c4fb155029ab536 +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "" + +#: ../../old_changelog.rst:727 +#: d535394e3da64337bf2f95f4c68328f5 +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "" + +#: ../../old_changelog.rst:728 +#: 85c89e00a1f945e8a29d2dc681191c42 +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "" + +#: ../../old_changelog.rst:729 +#: 13bf53570ca44168ad4671112320559a +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "" + +#: ../../old_changelog.rst:730 +#: 8248f8c75b7843d69b6281c6349a6b9f +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "" + +#: ../../old_changelog.rst:731 +#: d02833490c9b4a31bc76919404c42774 +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "" + +#: ../../old_changelog.rst:732 +#: e84966586c9041f38f710e179d706d7d +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "" + +#: ../../old_changelog.rst:733 +#: e9f825982b3b4b4a85a97392149ef455 +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "" + +#: ../../old_changelog.rst:734 +#: abed4b0434e14deb93b9dd7816bfe7de +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "" + +#: ../../old_changelog.rst:735 +#: 8496b053a08b4ac5a369cc182b2253bc +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "" + +#: ../../old_changelog.rst:736 +#: 5562dc76bbf64aa28462097f28ebb65c +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "" + +#: ../../old_changelog.rst:737 +#: 77e326b2fb344f3684cedea2385757f5 +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "" + +#: ../../old_changelog.rst:738 +#: 8bf0910d531845a8868bee944f1a1f5d +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "" + +#: ../../old_changelog.rst:739 +#: c421f16c853f4c87be81c7c4d285437f +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "" + +#: ../../old_changelog.rst:740 +#: 3f24421df24d43e19ef1b7e0f8e9f617 +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "" + +#: ../../old_changelog.rst:741 +#: 051a702716434442b559300f7df01184 +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "" + +#: ../../old_changelog.rst:742 +#: cd8f8bd80eb64fe4a61bca6213a0d5ff +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "" + +#: ../../old_changelog.rst:743 +#: e1bc5c5ca95b4a66a2af54d1a0c4b655 +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "" + +#: ../../old_changelog.rst:744 +#: ee4c308e720548e5887f73a475ecd9b4 +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "" + +#: ../../old_changelog.rst:745 +#: f8b3aa35188b4b769b94b8d944acb906 +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "" + +#: ../../old_changelog.rst:750 +#: 8489684e1bbe452197997495a510ea3a +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "" + +#: ../../old_changelog.rst:751 +#: 09aaedd0793f4211929dfe7ee220b854 +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "" + +#: ../../old_changelog.rst:752 +#: 0ee56aac67c2489dbf094a51c5ecacb8 +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "" + +#: ../../old_changelog.rst:753 +#: e23c198213a542dc9d721e6475e1d083 +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "" + +#: ../../old_changelog.rst:758 +#: f7139428b28445ef9b33ad6b98a91561 +msgid "Improve performance of all Enum related code significantly." +msgstr "" + +#: ../../old_changelog.rst:759 +#: e2246424bcee4c34b91a3d695a728244 +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "" + +#: ../../old_changelog.rst:760 +#: 5d0c60dee6294fd9bf9bfc4bfb24fc4a +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "" + +#: ../../old_changelog.rst:761 +#: d19671db972b4a59bcb9bd6cdf9ebe1d +msgid "Improve performance of message creation by about 1.5x." +msgstr "" + +#: ../../old_changelog.rst:762 +#: 695b0ea2545a42dc9392a56893983afa +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "" + +#: ../../old_changelog.rst:763 +#: 956196f49ddb41c0b9d766dd13e70869 +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "" + +#: ../../old_changelog.rst:764 +#: 1fb1306be3734d8a8cc9c3cbb28b1c32 +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "" + +#: ../../old_changelog.rst:765 +#: 57dfc225c4d747dabc04593be6a775bc +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "" + +#: ../../old_changelog.rst:766 +#: cb65af04b4424167832f294a215a3bcb +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "" + +#: ../../old_changelog.rst:767 +#: e8fd77c9bb994470be0943f0f9934948 +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "" + +#: ../../old_changelog.rst:768 +#: fa32af7c385f4619a38e56430455e39c +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "" + +#: ../../old_changelog.rst:769 +#: 173930a6d9d7411d89750308d6063f17 +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "" + +#: ../../old_changelog.rst:770 +#: 8d6edd72efa7463b94dd064b59aed6cd +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "" + +#: ../../old_changelog.rst:775 +#: 41ed6c2ff86942c9b2d84e519061a7f4 +msgid "v1.1.1" +msgstr "" + +#: ../../old_changelog.rst:780 +#: 3a1cca59f2a64cc8900bcacbd019e0ea +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "" + +#: ../../old_changelog.rst:785 +#: b12f94e65c8e4ce08def9bb978c1ff3a +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "" + +#: ../../old_changelog.rst:790 +#: 75aa7878d6b246e88deff82b4a20876e +msgid "v1.1.0" +msgstr "" + +#: ../../old_changelog.rst:795 +#: 8ab7c9fee26c4907b83ca46394742448 +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "" + +#: ../../old_changelog.rst:796 +#: 04b2abf983614f05a216bbd77df94480 +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "" + +#: ../../old_changelog.rst:797 +#: 9bcf0ad8d17744cca27a35403f513f68 +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "" + +#: ../../old_changelog.rst:798 +#: b96651c7fce843fe89cb3d648ab60b59 +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "" + +#: ../../old_changelog.rst:799 +#: 2001a7e7c471414b8989d983bc72bbf4 +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "" + +#: ../../old_changelog.rst:800 +#: 1633635822854cdfa4efe0bdccebc646 +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "" + +#: ../../old_changelog.rst:801 +#: c6827444aa8d42558a18478f91f50c8e +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "" + +#: ../../old_changelog.rst:802 +#: 0ed17c2355eb43409544365f442edc3f +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "" + +#: ../../old_changelog.rst:803 +#: b81605c12d0b42e08ed7b601c0cc3fc5 +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "" + +#: ../../old_changelog.rst:804 +#: 2efabecec4354b3ca7c2cd82767b15fc +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "" + +#: ../../old_changelog.rst:805 +#: bd0378f1e19a46bfb99e0e2c00faceb3 +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "" + +#: ../../old_changelog.rst:806 +#: 7484b113bed844c989ae6d3d5f65d654 +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "" + +#: ../../old_changelog.rst:809 +#: ../../old_changelog.rst:830 +#: ../../old_changelog.rst:849 +#: 35b01b73e8b7417c9e8fa9aea638facf +#: bf8f0a7614934e239dca8a71fe39d6ec +#: 353cdc2e00964c6581422a101ca734c2 +msgid "``discord.ext.commands``" +msgstr "" + +#: ../../old_changelog.rst:811 +#: ffd2e34478494424ac4f9327a0225566 +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "" + +#: ../../old_changelog.rst:812 +#: 6f878137716c4df285e94066ed200448 +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "" + +#: ../../old_changelog.rst:813 +#: 842f5c1614254efda86822631d02c9b7 +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "" + +#: ../../old_changelog.rst:814 +#: 9a8ef9fb89a7499ab26c19de62fba397 +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "" + +#: ../../old_changelog.rst:815 +#: 87ee843257764f64bc863742ed0773de +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "" + +#: ../../old_changelog.rst:816 +#: 429e9c8fbef245a1adf95b7c76946aab +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "" + +#: ../../old_changelog.rst:822 +#: ebd3614bab2947c39476b6f9f0fdbb7c +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "" + +#: ../../old_changelog.rst:823 +#: d3bc87e8e66b41ce88c83586755b025f +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "" + +#: ../../old_changelog.rst:824 +#: 6c29a5d920bf425d9e17bcd9caf6ddef +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "" + +#: ../../old_changelog.rst:825 +#: 33b74cc8d32e47d2a77a06276c2bea2e +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "" + +#: ../../old_changelog.rst:826 +#: 418b6c19665b49fa94e3aedd83f94831 +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "" + +#: ../../old_changelog.rst:827 +#: 0b53ec5cb17d4ae4af172df204660d94 +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "" + +#: ../../old_changelog.rst:832 +#: c8af3691fb4f4dd1b71fd245ac72f1b6 +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "" + +#: ../../old_changelog.rst:833 +#: 0135532f0d8d49d381044f61a378a082 +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "" + +#: ../../old_changelog.rst:834 +#: e37f77d54e1a41f0b3886188333e173c +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "" + +#: ../../old_changelog.rst:835 +#: 59f5f9999f4f4656b23266d2eca0c22f +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "" + +#: ../../old_changelog.rst:836 +#: 652d58ecab8b4ad7bd69e5b21a7d9e91 +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "" + +#: ../../old_changelog.rst:837 +#: a2408f1102374ce9a7900023527d6b92 +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "" + +#: ../../old_changelog.rst:838 +#: 4bb4d13b319243a0937382776d074fa6 +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "" + +#: ../../old_changelog.rst:843 +#: 0b23deb02adc4aeeb15b8200b8eee3be +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "" + +#: ../../old_changelog.rst:844 +#: 7c30dcc6e74f4dce9865b467a546eb30 +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "" + +#: ../../old_changelog.rst:845 +#: 6289d0fbbaf941f3bdaa2650470a73bb +msgid "The loop cleanup facility has been rewritten again." +msgstr "" + +#: ../../old_changelog.rst:846 +#: de0893f387314c98b9ccf4ad70eb9111 +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "" + +#: ../../old_changelog.rst:851 +#: 1a05f8c3fd874cbbbb8ef3c9529811c2 +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "" + +#: ../../old_changelog.rst:857 +#: e31e149cda4e45a2a081bae9c2d1d5d2 +msgid "v1.0.1" +msgstr "" + +#: ../../old_changelog.rst:862 +#: 826f500ba6ac4f399260c33ef472b0a2 +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "" + +#: ../../old_changelog.rst:863 +#: 86eb7d54cc7a48f39a734633bb49f38b +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "" + +#: ../../old_changelog.rst:864 +#: 9e1dfa5c70e54aa9a27ed50e063bc55c +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "" + +#: ../../old_changelog.rst:867 +#: f3afcd3c4aec443cb9fc3f1767d32626 +msgid "v1.0.0" +msgstr "" + +#: ../../old_changelog.rst:869 +#: 54eb6094804b480792bf4b19717bd001 +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "" + +#: ../../old_changelog.rst:876 +#: 8d34ca49e72b4d94977388e0f7d158c3 +msgid "v0.16.6" +msgstr "" + +#: ../../old_changelog.rst:881 +#: 400962b603c64113a9d06058fbc73ae2 +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "" + +#: ../../old_changelog.rst:882 +#: 4b339fa4be8c453fbbc89f9b4c5071c7 +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "" + +#: ../../old_changelog.rst:883 +#: acb73f781c9d4f7f98f2f615f1677140 +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "" + +#: ../../old_changelog.rst:884 +#: 5eb72f9c8d984c18b6a1430354385ca2 +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "" + +#: ../../old_changelog.rst:885 +#: b1422c0d343f4a179574e6193054b6a4 +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "" + +#: ../../old_changelog.rst:890 +#: e70e848d00374c13960322c33fde8d72 +msgid "v0.16.1" +msgstr "" + +#: ../../old_changelog.rst:892 +#: c180cea6662a4264b588bec807112bc0 +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "" + +#: ../../old_changelog.rst:897 +#: b2cc7c3696be4b4394aabe3e142d3c77 +msgid "Servers are now properly chunked for user bots." +msgstr "" + +#: ../../old_changelog.rst:898 +#: 10c1f4d7920140e0ba562707ad569b00 +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "" + +#: ../../old_changelog.rst:899 +#: 7f2844cf578e490d8a218bd8d6fac74d +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "" + +#: ../../old_changelog.rst:900 +#: 1a8cc223d9924645ae6ff30f128b281f +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "" + +#: ../../old_changelog.rst:901 +#: a039d224d6974fa5867fdf5681fd695d +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "" + +#: ../../old_changelog.rst:906 +#: 8af330c929144bd68d1a17c75f46d3fd +msgid "v0.16.0" +msgstr "" + +#: ../../old_changelog.rst:911 +#: 8091f41711624576ad0767c2b637d63a +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "" + +#: ../../old_changelog.rst:912 +#: 1705c9bfc0e7429eb76a0810f42ef216 +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "" + +#: ../../old_changelog.rst:917 +#: 14583ce007924f38a286e45cd3a4fb31 +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "" + +#: ../../old_changelog.rst:919 +#: 15635997b0f04a77a9f3030573821172 +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "" + +#: ../../old_changelog.rst:922 +#: 728676a982a647c39b781c1579c17ece +msgid "Discard null sequences in the gateway." +msgstr "" + +#: ../../old_changelog.rst:924 +#: 4bdff11f2ea7495b8ec5f790251839e4 +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "" + +#: ../../old_changelog.rst:931 +#: b5ae211062204c38a3ca1b4adf75921b +msgid "v0.15.1" +msgstr "" + +#: ../../old_changelog.rst:933 +#: 1b97fd47cef9458e902f1e7d44bfc9ca +msgid "Fix crash on duplicate or out of order reactions." +msgstr "" + +#: ../../old_changelog.rst:938 +#: b0ad980148da4251be1c8a66a86d2b33 +msgid "v0.15.0" +msgstr "" + +#: ../../old_changelog.rst:943 +#: ce44c839c7174c32baba66ed8a20239a +msgid "Rich Embeds for messages are now supported." +msgstr "" + +#: ../../old_changelog.rst:945 +#: 27cf820bba86470baa2910acb6c49c2e +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "" + +#: ../../old_changelog.rst:946 +#: 4eb4fb67f26a4cd384239ee9c0af46ea +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "" + +#: ../../old_changelog.rst:947 +#: 9d643a0f8f444c1284ac6ad8e48dbec0 +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "" + +#: ../../old_changelog.rst:948 +#: 56c72e2a3e174e28a99a188b4e755ba1 +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "" + +#: ../../old_changelog.rst:950 +#: ea8d96999a8343378f726ad441f4341b +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "" + +#: ../../old_changelog.rst:951 +#: 8e8f7d3e0144418b975ee9a8b005fc16 +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "" + +#: ../../old_changelog.rst:953 +#: 20af3ca42c4042dbb92f02fc67e7e1c1 +msgid "For the command extension, the following changed:" +msgstr "" + +#: ../../old_changelog.rst:955 +#: 37b31394101e4cb8b6eea54a1b6fb874 +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "" + +#: ../../old_changelog.rst:960 +#: 442dac8b6bdd457c8cd9d62ff3665891 +msgid "v0.14.3" +msgstr "" + +#: ../../old_changelog.rst:965 +#: c3530998896c4acb83acf3cc8be925dd +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "" + +#: ../../old_changelog.rst:966 +#: 86a9d9f30a0745fe86360577aedd4b87 +msgid "Fix incorrect buckets for reactions." +msgstr "" + +#: ../../old_changelog.rst:971 +#: 560438be2f9b4fcdbe36b8ee0504b8fb +msgid "v0.14.2" +msgstr "" + +#: ../../old_changelog.rst:976 +#: dc80ff37135b4e638c58f17db21e4c0a +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr "" + +#: ../../old_changelog.rst:977 +#: 036c24ac01ba4f4b9949c19a912d558e +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "" + +#: ../../old_changelog.rst:982 +#: 967b42b78c644c3ba5dfb034336345fd +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "" + +#: ../../old_changelog.rst:987 +#: b6ac064689a04e51aa6a216f3a73e91a +msgid "v0.14.1" +msgstr "" + +#: ../../old_changelog.rst:990 +#: 216db4481b16411e9087cb64de235a2e +msgid "Bug fixes" +msgstr "" + +#: ../../old_changelog.rst:992 +#: dea34ac8768d404e8d4c0ed5346385a4 +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "" + +#: ../../old_changelog.rst:993 +#: 8ee7413e096846a58cec819c52aafbaa +msgid "This was also breaking the documentation." +msgstr "" + +#: ../../old_changelog.rst:998 +#: cfa4214c5f9843b686f38bb36035f066 +msgid "v0.14.0" +msgstr "" + +#: ../../old_changelog.rst:1000 +#: 5c6e07e6e9bd4a68aac9624f93c9b0d2 +msgid "This update adds new API features and a couple of bug fixes." +msgstr "" + +#: ../../old_changelog.rst:1005 +#: a46b619fc5634974b2379c5508044120 +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "" + +#: ../../old_changelog.rst:1006 +#: 7b202e75cc344f8c93e39b8ae9dfa579 +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "" + +#: ../../old_changelog.rst:1007 +#: e114d8a07caa406fbea9b95b7639e24e +msgid "Add support for reactions." +msgstr "" + +#: ../../old_changelog.rst:1008 +#: 17b4e516a372462a894248bdaae7196e +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr "" + +#: ../../old_changelog.rst:1009 +#: ec1d2036de944e2ca87c72eaf49c4d7c +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr "" + +#: ../../old_changelog.rst:1010 +#: a9cdb1a7898147c09856109b3afdeb05 +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr "" + +#: ../../old_changelog.rst:1011 +#: 415943aaf1a344d8bd9444f5108f1730 +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr "" + +#: ../../old_changelog.rst:1012 +#: 163dfb606de84c07b42f4e20f84ce43e +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "" + +#: ../../old_changelog.rst:1013 +#: 6a80f05b4e52495ab40d3fc642df5199 +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr "" + +#: ../../old_changelog.rst:1014 +#: 80deeea814004f4ea369cc81d2ca32a0 +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr "" + +#: ../../old_changelog.rst:1019 +#: 13ef32142511430498c607b61b8ef3d9 +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "" + +#: ../../old_changelog.rst:1020 +#: fa4262a541934728a78a4ae11f86ce0d +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "" + +#: ../../old_changelog.rst:1025 +#: 3403b220243c449b9cb6566ddf645806 +msgid "v0.13.0" +msgstr "" + +#: ../../old_changelog.rst:1027 +#: 41def317528741cdbc678bf5b02de26a +msgid "This is a backwards compatible update with new features." +msgstr "" + +#: ../../old_changelog.rst:1032 +#: a74ce62b2e6e4a8096b8453816f12466 +msgid "Add the ability to manage emojis." +msgstr "" + +#: ../../old_changelog.rst:1034 +#: cc60ed7cc6334311841fc39f1c67e50f +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr "" + +#: ../../old_changelog.rst:1035 +#: c35562fa5ef94f54b2c81e85e6c9a612 +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr "" + +#: ../../old_changelog.rst:1036 +#: b37b6defec1f426d8dbae2e5555fe2f8 +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr "" + +#: ../../old_changelog.rst:1037 +#: d1b9b9154ef24517b09f2176f32297b7 +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "" + +#: ../../old_changelog.rst:1039 +#: 733e373db9354990a64b1ea25954dc70 +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "" + +#: ../../old_changelog.rst:1040 +#: dd744fd43f8d4112a29b84670b4215a6 +msgid "Add new statuses for :class:`Status`." +msgstr "" + +#: ../../old_changelog.rst:1042 +#: e4e1783642e048a6bfe64466a76f7262 +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr "" + +#: ../../old_changelog.rst:1043 +#: 60ea97fddecf40c29f2a2595cdab41ed +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr "" + +#: ../../old_changelog.rst:1044 +#: 26787e4212b34c03a73643d1bfe3e947 +msgid "Deprecate :meth:`Client.change_status`" +msgstr "" + +#: ../../old_changelog.rst:1046 +#: 1f82ba4f65334537a46ba82e0c424ca8 +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "" + +#: ../../old_changelog.rst:1047 +#: 1908df9cf4d944b08087da9543912ab3 +msgid "This method is subject for removal in a future API version." +msgstr "" + +#: ../../old_changelog.rst:1048 +#: 4da76a0effd2420a83e11fbd0a2d6466 +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "" + +#: ../../old_changelog.rst:1050 +#: 79e46a60e46340b9ba53dff7580df69c +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "" + +#: ../../old_changelog.rst:1055 +#: f4ccad2af9354f7e822fa4eb1c8c6407 +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "" + +#: ../../old_changelog.rst:1056 +#: c278c60270d248809f3de4f421b01ce5 +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "" + +#: ../../old_changelog.rst:1061 +#: 09089ecb9a4c485ea305e17c4c8aaf5d +msgid "v0.12.0" +msgstr "" + +#: ../../old_changelog.rst:1063 +#: 548138d84d244d6cb13573eda15480b7 +msgid "This is a bug fix update that also comes with new features." +msgstr "" + +#: ../../old_changelog.rst:1068 +#: 4fb4ccc6969d48ddbf04dac7b5cb3d6d +msgid "Add custom emoji support." +msgstr "" + +#: ../../old_changelog.rst:1070 +#: bc0add1c6f234e70aab5a0a8295898fe +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "" + +#: ../../old_changelog.rst:1071 +#: be55f48c53af4318a073657887abd338 +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "" + +#: ../../old_changelog.rst:1072 +#: c314bf2643094c1787d15951af04ef01 +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "" + +#: ../../old_changelog.rst:1073 +#: 5a77560e76aa48c393f0736a806f3da8 +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "" + +#: ../../old_changelog.rst:1074 +#: daad923c52ad4c8a95cb940b31fe6198 +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "" + +#: ../../old_changelog.rst:1076 +#: 42037256927f458ea5d8113abb5deb15 +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr "" + +#: ../../old_changelog.rst:1077 +#: 6aa8d6c507814dbfb0d634be8ef4b016 +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "" + +#: ../../old_changelog.rst:1078 +#: a82d1236076840f2bf52ec450c0e20f5 +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "" + +#: ../../old_changelog.rst:1080 +#: 911947e7229141a088ab2171f28636ef +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "" + +#: ../../old_changelog.rst:1082 +#: e907524158e84994ab1dbbc2bb3ab697 +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "" + +#: ../../old_changelog.rst:1083 +#: 5ec62ed7d6644f51aba581ee4a6c171a +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "" + +#: ../../old_changelog.rst:1084 +#: eef3dacce9de4505839cd23a6e5e6162 +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "" + +#: ../../old_changelog.rst:1085 +#: ea834cd3e65a4923ace4a327bef37247 +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "" + +#: ../../old_changelog.rst:1087 +#: 3a60bded23684c39b5a0d95c728b2231 +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "" + +#: ../../old_changelog.rst:1088 +#: 92dcafa9947b44fcb69ae818cbb7da70 +msgid "Add support for server verification levels." +msgstr "" + +#: ../../old_changelog.rst:1090 +#: 3ae021277e2f4c6d8e180c26122aabd6 +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "" + +#: ../../old_changelog.rst:1091 +#: 86cddb14909742c4b4b9c502f67e64f7 +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "" + +#: ../../old_changelog.rst:1092 +#: 4e9c1967b5d448b9b41956e12fdf9339 +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "" + +#: ../../old_changelog.rst:1093 +#: d952adee81134f4791bf96f953a856a9 +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "" + +#: ../../old_changelog.rst:1095 +#: de0e3204e21f42308471ec9171a49d8f +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "" + +#: ../../old_changelog.rst:1097 +#: ../../old_changelog.rst:1143 +#: 612442a7ef444152a01c8c35b6b59b78 +#: cc11234dd494498dbcc2ac2292afd82a +msgid "For the command extension, the following are new:" +msgstr "" + +#: ../../old_changelog.rst:1099 +#: df5ad0102466494cb0aa407c74f7875f +msgid "Add custom emoji converter." +msgstr "" + +#: ../../old_changelog.rst:1100 +#: 755231ea41e74dc0920ef97292b103e5 +msgid "All default converters that can take IDs can now convert via ID." +msgstr "" + +#: ../../old_changelog.rst:1101 +#: 4f43210f983e4946bf612c58539cfacd +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "" + +#: ../../old_changelog.rst:1102 +#: 6ab6a9a776994e95a127f0f4f9e50acb +msgid "Add a method to reset command cooldown." +msgstr "" + +#: ../../old_changelog.rst:1107 +#: 4ae80c7f355d4534a1800d1686becc7c +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "" + +#: ../../old_changelog.rst:1108 +#: 9d0f1a07415445d99e511a89ebdee3f3 +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "" + +#: ../../old_changelog.rst:1109 +#: b94d78af4b24432084b31c1e046262ce +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "" + +#: ../../old_changelog.rst:1110 +#: 4e726722251f4e6b91a5cf91bb1e3ff4 +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "" + +#: ../../old_changelog.rst:1111 +#: 41c519e1555548dca4647c24e0dddf47 +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "" + +#: ../../old_changelog.rst:1116 +#: 6009bde1262a46e98cd81b7df88ae0e5 +msgid "v0.11.0" +msgstr "" + +#: ../../old_changelog.rst:1118 +#: 29d469e953694d2d85cfe3c76b487eb1 +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "" + +#: ../../old_changelog.rst:1121 +#: bc91110fc66649c2b878133e17a53ffa +msgid "Breaking Changes" +msgstr "" + +#: ../../old_changelog.rst:1123 +#: 74e52d191bf54255a98e49529f6d6a9b +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "" + +#: ../../old_changelog.rst:1128 +#: 81fc15a59d1e4f98b01e3ac2447a2884 +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "" + +#: ../../old_changelog.rst:1129 +#: cbf12c55f7154c7c849b69eee42920ea +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "" + +#: ../../old_changelog.rst:1130 +#: 7fc8aeae055e442db7c287219c3f156e +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "" + +#: ../../old_changelog.rst:1131 +#: 7a7bf1da73674c18967856b59e02981a +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "" + +#: ../../old_changelog.rst:1132 +#: 7061315e254645aba3fa63deb99e539c +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "" + +#: ../../old_changelog.rst:1133 +#: 997b6e575c344a1b94ed7bac2212b1b0 +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "" + +#: ../../old_changelog.rst:1134 +#: ccc22857665f4ec5a669e2fe75fe53e1 +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "" + +#: ../../old_changelog.rst:1135 +#: 50c84becc3504eb093b46f6194db320a +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "" + +#: ../../old_changelog.rst:1136 +#: f4fac67b65a448d0bf8df8e1bc099e7f +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "" + +#: ../../old_changelog.rst:1137 +#: 2c1c212e7be84a268e065e6a7937c307 +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "" + +#: ../../old_changelog.rst:1138 +#: 61eaaf02c4cf42bfa1cf263abd19da02 +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "" + +#: ../../old_changelog.rst:1139 +#: fa99771ac2974dac8c6aeffd6df8a2ce +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "" + +#: ../../old_changelog.rst:1141 +#: 1b6c1efaaee449228e768fc73d46ade2 +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "" + +#: ../../old_changelog.rst:1145 +#: f78416bf2ab84700bf893df624c2c654 +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "" + +#: ../../old_changelog.rst:1146 +#: 97ecffb0fabf4b0496b24a9357af5757 +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "" + +#: ../../old_changelog.rst:1151 +#: 7c33d10e7dbb4be592efcce09234ff92 +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr "" + +#: ../../old_changelog.rst:1152 +#: b5115b6278bb42a484c152543f0b787e +msgid "Fix issue when removing roles out of order." +msgstr "" + +#: ../../old_changelog.rst:1153 +#: 6d07090496b041ae871a6fde98f220db +msgid "Fix bug where discriminators would not update." +msgstr "" + +#: ../../old_changelog.rst:1154 +#: 5dc4a0c238564b4899e51aa8b0bfd195 +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "" + +#: ../../old_changelog.rst:1156 +#: bdd8141d06d9471d917fec2a33e21e73 +msgid "For the command extension, the following bug fixes apply:" +msgstr "" + +#: ../../old_changelog.rst:1158 +#: fdc429cdfd3d444baf57d41d672b318c +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "" + +#: ../../old_changelog.rst:1159 +#: aa7cf80d36aa407e97cb2f2f460a0969 +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "" + +#: ../../old_changelog.rst:1160 +#: 4c3408206e6744159b43e1967ab96dec +msgid "Command names are no longer forced to be ``lower()``." +msgstr "" + +#: ../../old_changelog.rst:1161 +#: 5284256204e34c5395fc978a376ff4b0 +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "" + +#: ../../old_changelog.rst:1162 +#: 76a5b852278b46098efac4903316ecef +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "" + +#: ../../old_changelog.rst:1167 +#: d62df80546ab4f48920984081af2969e +msgid "v0.10.0" +msgstr "" + +#: ../../old_changelog.rst:1169 +#: 38b37e3f7dc3481ea5d7f7401a46865c +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "" + +#: ../../old_changelog.rst:1174 +#: 184a8fc86a784b18b834a0d449cda64d +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "" + +#: ../../old_changelog.rst:1175 +#: 85c4f564280148f0bf5ee9b4a129f78f +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "" + +#: ../../old_changelog.rst:1176 +#: 3002e45c216d4336bce5fae8a60dacc1 +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "" + +#: ../../old_changelog.rst:1177 +#: b53f0641a47b4f10b3323f3ad45ae616 +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "" + +#: ../../old_changelog.rst:1178 +#: 14b76fab0c254197bbcd7b536d314107 +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "" + +#: ../../old_changelog.rst:1179 +#: 8c523459e5aa4614ac5adf3ff969ca91 +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "" + +#: ../../old_changelog.rst:1180 +#: a6e4192a274b4c60b9232ff077f30af0 +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "" + +#: ../../old_changelog.rst:1181 +#: 071a551ad2844ca19303086993ce4a73 +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "" + +#: ../../old_changelog.rst:1182 +#: 7e29bae8ce1f4fd0aae1e442c713833d +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "" + +#: ../../old_changelog.rst:1184 +#: 8d07cc56b6cf42ba8712f3543ccb0a17 +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "" + +#: ../../old_changelog.rst:1185 +#: c7570f3e583b48eab10e6d9e4ef5d81b +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "" + +#: ../../old_changelog.rst:1186 +#: f8d754a0d6454f35893e27cde72fa22c +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "" + +#: ../../old_changelog.rst:1187 +#: ab731dea83b54524b4f182638d3d8c55 +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "" + +#: ../../old_changelog.rst:1188 +#: d27f27c4051543c4b321417eba8d4a1f +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "" + +#: ../../old_changelog.rst:1189 +#: e5b2082987f041f6898c95c48b6e129d +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "" + +#: ../../old_changelog.rst:1190 +#: 6549c2adb90742d7b58fb741ff74d15b +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "" + +#: ../../old_changelog.rst:1191 +#: 021d8a84ae334381a3263fa1f2d09b63 +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "" + +#: ../../old_changelog.rst:1192 +#: 51f18f0490444b5f865fb559f03c187f +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "" + +#: ../../old_changelog.rst:1193 +#: 8e5d05dca1804f358b539d1b267a10fa +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "" + +#: ../../old_changelog.rst:1194 +#: 026315e76b8d49cb87f01fe9f65d0337 +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "" + +#: ../../old_changelog.rst:1195 +#: f554bb1ace35445ab972d5661600ca5c +msgid "Add :attr:`Message.nonce` attribute." +msgstr "" + +#: ../../old_changelog.rst:1196 +#: eee11aa74e244b14858321e335417c16 +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "" + +#: ../../old_changelog.rst:1197 +#: 0a180ee3f16d46248ca77da117e661c5 +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "" + +#: ../../old_changelog.rst:1198 +#: 21926029e1a944248149a2bc300b285c +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "" + +#: ../../old_changelog.rst:1199 +#: e04b411ff2424852ad7e222373bca92a +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "" + +#: ../../old_changelog.rst:1200 +#: c5d78d3806974aeaa952776524993cbf +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "" + +#: ../../old_changelog.rst:1201 +#: 7b061a3cd1b2462c8ddacf5d5e564993 +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "" + +#: ../../old_changelog.rst:1202 +#: 61e04f1171664dcaa0e150be6b2819da +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "" + +#: ../../old_changelog.rst:1205 +#: 56eb11079208428080c8d73acd06fee0 +msgid "Performance Improvements" +msgstr "" + +#: ../../old_changelog.rst:1207 +#: 1412ab0e00154d83963273002bafb044 +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "" + +#: ../../old_changelog.rst:1208 +#: 9ac35842677c4b578d8bd5b41f5ec48b +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "" + +#: ../../old_changelog.rst:1209 +#: 01584faafc6a4daca4220d7c16a73c34 +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "" + +#: ../../old_changelog.rst:1210 +#: 5cba5de179a840d4bd057588237bce3b +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "" + +#: ../../old_changelog.rst:1212 +#: a67624475d8d400fae5d574258d7cc89 +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "" + +#: ../../old_changelog.rst:1217 +#: 36fe131c905e49599f23a59a57d99164 +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "" + +#: ../../old_changelog.rst:1218 +#: c574cf0726e342eeadbfca536471c333 +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "" + +#: ../../old_changelog.rst:1219 +#: 8875df9f7e5f4f8b9986b376b7384042 +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "" + +#: ../../old_changelog.rst:1220 +#: 35a32f8aa4214282a706e7a57c0f7320 +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr "" + +#: ../../old_changelog.rst:1221 +#: aaba9e94e0f24d4ebfde35a5a5967bcf +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "" + +#: ../../old_changelog.rst:1222 +#: 330455a4235b4ff3adc377c165c4d3f9 +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "" + +#: ../../old_changelog.rst:1223 +#: 351e7977d6f3450cb3416063e5697686 +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "" + +#: ../../old_changelog.rst:1224 +#: 4cc1e926917e4f3eac8869fc76f629fe +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "" + +#: ../../old_changelog.rst:1226 +#: d16221ec9071446b867806e6bd1d825d +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "" diff --git a/docs/build/locales/quickstart.pot b/docs/build/locales/quickstart.pot new file mode 100644 index 0000000000..ca25c22ae0 --- /dev/null +++ b/docs/build/locales/quickstart.pot @@ -0,0 +1,159 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../quickstart.rst:8 +#: 961453d1ff7c49cd835a14c6d0ab3edd +msgid "Quickstart" +msgstr "" + +#: ../../quickstart.rst:10 +#: aaaf8be026274369a3e225fb3bf44799 +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "" + +#: ../../quickstart.rst:14 +#: 1e5f765f4f064ee0aeaa6387f87e6bed +msgid "A Minimal Bot" +msgstr "" + +#: ../../quickstart.rst:16 +#: d5c114f0711040c290390f36be63e6cd +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "" + +#: ../../quickstart.rst:18 +#: ../../quickstart.rst:93 +#: fc7a9fd22cd347f08e3a12508390d564 +#: 2ef0ca47c35d4a87a66ecf37ac34fbee +msgid "It looks something like this:" +msgstr "" + +#: ../../quickstart.rst:22 +#: 520ed442525a4996bd636127f406a482 +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "" + +#: ../../quickstart.rst:47 +#: 95ff2f3f9d5842a290c9c7e89b3920ac +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "" + +#: ../../quickstart.rst:50 +#: 3b78d63a6d784262b92d80ed9872b73a +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "" + +#: ../../quickstart.rst:52 +#: 382e03b221d740539a10ad155d6bd918 +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "" + +#: ../../quickstart.rst:54 +#: 3283a09eaf8c4c878ee5577a73335bdd +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "" + +#: ../../quickstart.rst:55 +#: c72bea7252ac4c179de69189862e1a78 +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "" + +#: ../../quickstart.rst:58 +#: dc05281fbc104fe4b257989a749b7e82 +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "" + +#: ../../quickstart.rst:61 +#: 6ac70839985647e5900cc7f21b6bbad9 +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "" + +#: ../../quickstart.rst:64 +#: 33ca1efcf28847fb895d2362daf1186a +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "" + +#: ../../quickstart.rst:67 +#: b2c71e97a940471580d3f4945d6378bf +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "" + +#: ../../quickstart.rst:71 +#: 0596d852b90146c3840c0a8a8e0cfe91 +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "" + +#: ../../quickstart.rst:74 +#: 89abb694917744b9a594e0fb9b022367 +msgid "On Windows:" +msgstr "" + +#: ../../quickstart.rst:80 +#: 8709e14ab8c040309183ee3160b93866 +msgid "On other systems:" +msgstr "" + +#: ../../quickstart.rst:86 +#: 4e584c9aa1a546c2856e717010ae0a18 +msgid "Now you can try playing around with your basic bot." +msgstr "" + +#: ../../quickstart.rst:89 +#: 163b14974c4e4d0a9e0bdb92ff7b8974 +msgid "A Minimal Bot with Slash Commands" +msgstr "" + +#: ../../quickstart.rst:91 +#: db48cc63cf684402bad783f2c5780de4 +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "" + +#: ../../quickstart.rst:111 +#: a8aa579f1120475286a7b3d069fe0e45 +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "" + +#: ../../quickstart.rst:113 +#: 289772b489c049a69adedf02009b8d8f +msgid "The first line remains unchanged." +msgstr "" + +#: ../../quickstart.rst:114 +#: 2264f202f88040c2a1dca513124515c4 +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "" + +#: ../../quickstart.rst:116 +#: 278631486492429596b4e2210c31827d +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "" + +#: ../../quickstart.rst:119 +#: 746729bbf47a4af8868735ca63c93ba1 +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "" + +#: ../../quickstart.rst:121 +#: 16974282cb0344dabe07825bd33ac0e6 +msgid "Finally, we, once again, run the bot with our login token." +msgstr "" + +#: ../../quickstart.rst:124 +#: 2151937a4f9d499e8400498eb1a2ee47 +msgid "Congratulations! Now you have created your first slash command!" +msgstr "" diff --git a/docs/build/locales/version_guarantees.pot b/docs/build/locales/version_guarantees.pot new file mode 100644 index 0000000000..558341341e --- /dev/null +++ b/docs/build/locales/version_guarantees.pot @@ -0,0 +1,92 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../version_guarantees.rst:4 +#: fc77d7996f0e4fa6943e346e2024d85b +msgid "Version Guarantees" +msgstr "" + +#: ../../version_guarantees.rst:6 +#: eafd23556d684b68b8c379f59e025d96 +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "" + +#: ../../version_guarantees.rst:8 +#: 62326bdd6dc049c992db7b0e8231569c +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "" + +#: ../../version_guarantees.rst:12 +#: 5e7e62867b42403cad0054c07e206768 +msgid "The examples below are non-exhaustive." +msgstr "" + +#: ../../version_guarantees.rst:15 +#: 693f7c7b524042fea0ed8b964ab5fc20 +msgid "Examples of Breaking Changes" +msgstr "" + +#: ../../version_guarantees.rst:17 +#: e7ecac84084b485bbf3345040c9309d4 +msgid "Changing the default parameter value to something else." +msgstr "" + +#: ../../version_guarantees.rst:18 +#: 0c6bf4dc61c64b00aac027ab7a5935cd +msgid "Renaming a function without an alias to an old function." +msgstr "" + +#: ../../version_guarantees.rst:19 +#: 7768026a492e4b928e2302ca7a51821e +msgid "Adding or removing parameters to an event." +msgstr "" + +#: ../../version_guarantees.rst:22 +#: d78682c8e2a748eb943adbac3edfe909 +msgid "Examples of Non-Breaking Changes" +msgstr "" + +#: ../../version_guarantees.rst:24 +#: c6d8aca18b984144b34789f77d05a4ba +msgid "Adding or removing private underscored attributes." +msgstr "" + +#: ../../version_guarantees.rst:25 +#: c58dced83e23479ab768188c4718abf1 +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "" + +#: ../../version_guarantees.rst:26 +#: 60de17508ca2439a84c6574c1618a186 +msgid "Changing the behaviour of a function to fix a bug." +msgstr "" + +#: ../../version_guarantees.rst:27 +#: a2115ba8046345178ff42b59e41c8e82 +msgid "Changes in the documentation." +msgstr "" + +#: ../../version_guarantees.rst:28 +#: 977d5c241d33494b9178f82c1cbfe613 +msgid "Modifying the internal HTTP handling." +msgstr "" + +#: ../../version_guarantees.rst:29 +#: 68bb4e80257a4e9c85b670b2c5e78161 +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "" diff --git a/docs/conf.py b/docs/conf.py index 38958e6066..e0bdfa834a 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -18,7 +18,7 @@ old_changelog = os.path.join(os.path.dirname(__file__), "..", "CHANGELOG.md") new_changelog = os.path.join(os.path.dirname(__file__), "changelog.md") -with open(old_changelog) as f: +with open(old_changelog, encoding="utf-8") as f: changelog_lines = f.readlines() # Inject relative documentation links @@ -39,12 +39,12 @@ # Only write if it's changed to avoid recompiling the docs def write_new(): - with open(new_changelog, "w") as fw: + with open(new_changelog, "w", encoding="utf-8") as fw: fw.write(CHANGELOG_TEXT) try: - c_file = open(new_changelog) + c_file = open(new_changelog, encoding="utf-8") except FileNotFoundError: write_new() else: @@ -52,7 +52,6 @@ def write_new(): write_new() c_file.close() - # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. @@ -70,6 +69,8 @@ def write_new(): extensions = [ # "builder", "sphinx.ext.autodoc", + "sphinx.ext.autosectionlabel", + "sphinx.ext.autosummary", "sphinx.ext.extlinks", "sphinx.ext.intersphinx", "sphinx.ext.napoleon", @@ -89,6 +90,7 @@ def write_new(): always_document_param_types = True toc_object_entries_show_parents = "hide" +autosectionlabel_prefix_document = True ogp_site_url = "https://pycord.dev/" ogp_image = "https://pycord.dev/static/img/logo.png" @@ -99,8 +101,8 @@ def write_new(): # napoleon_attr_annotations = False extlinks = { - "issue": ("https://github.com/Pycord-Development/pycord/issues/%s", "GH-"), - "dpy-issue": ("https://github.com/Rapptz/discord.py/issues/%s", "GH-"), + "issue": ("https://github.com/Pycord-Development/pycord/issues/%s", "GH-%s"), + "dpy-issue": ("https://github.com/Rapptz/discord.py/issues/%s", "GH-%s"), } # Links used for cross-referencing stuff in other documentation @@ -115,6 +117,9 @@ def write_new(): .. |maybecoro| replace:: This function *could be a* |coroutine_link|_. .. |coroutine_link| replace:: *coroutine* .. _coroutine_link: https://docs.python.org/3/library/asyncio-task.html#coroutine +.. |gateway| replace:: |gateway_link|_ +.. |gateway_link| replace:: *gateway* +.. _gateway_link: https://discord.com/developers/docs/topics/gateway-events """ # Add any paths that contain templates here, relative to this directory. @@ -164,6 +169,8 @@ def write_new(): language = "en" gettext_compact = False +gettext_uuid = True +locale_dirs = ["locales/"] # Added locale directory # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: @@ -173,7 +180,7 @@ def write_new(): # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ["_build", "node_modules"] +exclude_patterns = ["_build", "node_modules", "build", "locales"] # The reST default role (used for this markup: `text`) to use for all # documents. @@ -204,6 +211,7 @@ def write_new(): nitpick_ignore_files = [ "migrating_to_v1", "whats_new", + "old_changelog", ] # -- Options for HTML output ---------------------------------------------- @@ -306,8 +314,8 @@ def write_new(): # A shorter title for the navigation bar. Default is the same as html_title. # html_short_title = None -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. +# The name of an image file (relative to this directory) to place at the top of +# the sidebar. html_logo = "./images/pycord_logo.png" # The name of an image file (within the static path) to use as favicon of the @@ -372,7 +380,7 @@ def write_new(): # Sphinx supports the following languages: # 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja' # 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr' -# html_search_language = 'en' +html_search_language = "en" # A dictionary with options for the search language support, empty by default. # Now only 'ja' uses this config value @@ -380,7 +388,7 @@ def write_new(): # The name of a javascript file (relative to the configuration directory) that # implements a search results scorer. If empty, the default will be used. -html_search_scorer = "_static/js/scorer.js" +# html_search_scorer = "_static/js/scorer.js" # html_js_files = ["custom.js", "settings.js", "copy.js", "sidebar.js"] @@ -391,13 +399,13 @@ def write_new(): latex_elements = { # The paper size ('letterpaper' or 'a4paper'). - #'papersize': 'letterpaper', + # 'papersize': 'letterpaper', # The font size ('10pt', '11pt' or '12pt'). - #'pointsize': '10pt', + # 'pointsize': '10pt', # Additional stuff for the LaTeX preamble. - #'preamble': '', + # 'preamble': '', # Latex figure (float) alignment - #'figure_align': 'htbp', + # 'figure_align': 'htbp', } # Grouping the document tree into LaTeX files. List of tuples @@ -472,4 +480,31 @@ def write_new(): r"https://discord.com/developers/docs/.*#", r"https://support(?:-dev)?.discord.com/hc/en-us/articles/.*", r"https://dis.gd/contact", + r"https://guide.pycord.dev/", + r"https://guide.pycord.dev/.*", + r"https://pycord.dev/", + r"https://pycord.dev/.*", + r"https://packages.debian.org/.*", +] + +linkcheck_anchors_ignore_for_url = [r"https://github.com/Delitefully/DiscordLists"] + +modindex_common_prefix = ["discord."] +# suppress_warnings = ['autosectionlabel.*'] +myst_enable_extensions = [ + "amsmath", + "attrs_inline", + "colon_fence", + "deflist", + "dollarmath", + "fieldlist", + "html_admonition", + "html_image", + "linkify", + "replacements", + "smartquotes", + "strikethrough", + "substitution", + "tasklist", ] +myst_links_external_new_tab = True diff --git a/docs/ext/bridge/api.rst b/docs/ext/bridge/api.rst index 75dfdb51de..66dbc56125 100644 --- a/docs/ext/bridge/api.rst +++ b/docs/ext/bridge/api.rst @@ -154,7 +154,7 @@ BridgeContext Subclasses .. attributetable:: discord.ext.bridge.Context -.. data:: discord.ext.bridge.Context +.. autoclass:: discord.ext.bridge.Context Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience. diff --git a/docs/locales/de/LC_MESSAGES/api/abcs.po b/docs/locales/de/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..d1eed931c1 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "Die einzigartige ID des Modells." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Returns" +msgstr "Returns" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/de/LC_MESSAGES/api/application_commands.po b/docs/locales/de/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..ee950c0b7a --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/de/LC_MESSAGES/api/application_info.po b/docs/locales/de/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..31922fca86 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/de/LC_MESSAGES/api/async_iter.po b/docs/locales/de/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..b322381f39 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Returns" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Return type" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/de/LC_MESSAGES/api/audit_logs.po b/docs/locales/de/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..05c56e27c2 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/de/LC_MESSAGES/api/clients.po b/docs/locales/de/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..e4b8f95258 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/de/LC_MESSAGES/api/cogs.po b/docs/locales/de/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..9449613e48 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Returns" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Return type" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/de/LC_MESSAGES/api/data_classes.po b/docs/locales/de/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..bc1c9d6327 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Returns" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/de/LC_MESSAGES/api/enums.po b/docs/locales/de/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..b12fa4f3a2 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/de/LC_MESSAGES/api/events.po b/docs/locales/de/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..3de9f161c1 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/de/LC_MESSAGES/api/exceptions.po b/docs/locales/de/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..1840bc94e8 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/de/LC_MESSAGES/api/index.po b/docs/locales/de/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..80efb62166 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/de/LC_MESSAGES/api/models.po b/docs/locales/de/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..9c71559652 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Returns" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/de/LC_MESSAGES/api/sinks.po b/docs/locales/de/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..c041d54623 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/de/LC_MESSAGES/api/ui_kit.po b/docs/locales/de/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..0e374cd9d7 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Returns" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/de/LC_MESSAGES/api/utils.po b/docs/locales/de/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..c59ea4f08e --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Returns" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/de/LC_MESSAGES/api/version_info.po b/docs/locales/de/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..a57036beac --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/de/LC_MESSAGES/api/voice.po b/docs/locales/de/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..ce04e5fda5 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Returns" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/de/LC_MESSAGES/api/webhooks.po b/docs/locales/de/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..c6f477ed90 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Returns" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/de/LC_MESSAGES/changelog.po b/docs/locales/de/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..29a1ffefe4 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/de/LC_MESSAGES/cogs.po b/docs/locales/de/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..d3b99d560a --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/de/LC_MESSAGES/discord.po b/docs/locales/de/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..1d84eae006 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviting Your Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "So you've made a Bot User but it's not actually in any server." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "If you want to invite your bot you must create an invite URL for it." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/de/LC_MESSAGES/ext/bridge/api.po b/docs/locales/de/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..c8f2bfa309 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/de/LC_MESSAGES/ext/bridge/index.po b/docs/locales/de/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..e7423367ec --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Beispiel Verwendung:" + diff --git a/docs/locales/de/LC_MESSAGES/ext/commands/api.po b/docs/locales/de/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..f94e10656c --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Die Verwendung von Präfix-Befehlen in Gilden erfordert die Aktivierung von :attr:`Intents.message_content`." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/de/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/de/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..b6bdcd19af --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/de/LC_MESSAGES/ext/commands/commands.po b/docs/locales/de/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..6e0198a0a9 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Befehle" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "Einer der attraktivsten Aspekte der Befehlserweiterung ist die einfache Definition von Befehlen und die Möglichkeit, Gruppen und Befehle beliebig zu verschachteln, um ein umfangreiches System von Unterbefehlen zu erhalten." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Die Verwendung von Präfix-Befehlen in Gilden erfordert die Aktivierung von :attr:`Intents.message_content`." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (seit v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (seit v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (seit v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (seit 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (seit v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (seit v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (seit v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/de/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/de/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..aefcfd5e04 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/de/LC_MESSAGES/ext/commands/index.po b/docs/locales/de/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..201036b377 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/de/LC_MESSAGES/ext/pages/index.po b/docs/locales/de/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..30b0c29ee7 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Returns" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/de/LC_MESSAGES/ext/tasks/index.po b/docs/locales/de/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..beb1ad9f67 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Raises" +msgstr "Raises" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Returns" +msgstr "Returns" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/de/LC_MESSAGES/faq.po b/docs/locales/de/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..5326557f7a --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/de/LC_MESSAGES/index.po b/docs/locales/de/LC_MESSAGES/index.po new file mode 100644 index 0000000000..5d0647120b --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Erweiterungen" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Willkommen bei Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord ist ein moderner, einfach zu bedienender, funktionsreicher und asynchroner API-Wrapper für Discord." + +msgid "**Features:**" +msgstr "**Eigenschaften:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "Moderne Pythonische API mit ``async``\\/``await`` Syntax" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Vernünftige Rate Limit-Handhabung, die 429s verhindert" + +msgid "Command extension to aid with bot creation" +msgstr "Befehlsverlängerung zur Unterstützung bei der Bot-Erstellung" + +msgid "Easy to use with an object oriented design" +msgstr "Einfach zu bedienen mit objektorientiertem Design" + +msgid "Optimised for both speed and memory" +msgstr "Optimiert für Geschwindigkeit und Speicher" + +msgid "Getting started" +msgstr "Erste Schritte" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Nutzen Sie die Bibliothek zum ersten Mal? Dies ist der Ort, an dem Sie loslegen können!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**Erste Schritte:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Arbeiten mit Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Beispiele:** Viele Beispiele sind in der :resource:`repository ` verfügbar." + +msgid "Getting help" +msgstr "Hilfe erhalten" + +msgid "If you're having trouble with something, these resources might help." +msgstr "Wenn Sie Probleme mit etwas haben, könnten diese Ressourcen helfen." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Probieren Sie zuerst die :doc:`faq` aus, sie hat Antworten auf alle gängigen Fragen." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Fragen Sie uns und bleiben Sie bei uns in unserem :resource:`Discord ` Server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "Wenn Sie etwas Konkretes suchen, probieren Sie den :ref:`index ` oder :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Melde Fehler im :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Anleitungen" + +msgid "These pages go into great detail about everything the API can do." +msgstr "Diese Seiten gehen sehr detailliert darauf ein, was die API kann." + +msgid "Core API" +msgstr "Kern API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "Diese Erweiterungen helfen Ihnen bei der Entwicklung, wenn es um allgemeine Aufgaben geht." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot Befehle Framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task Helfer" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - Ein Modul zur Seitenerweiterung" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - Ein Modul, das Slash-Befehle zu Prefixed-Befehlen überbrückt" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "Wenn Sie nach etwas suchen, das mit dem Projekt selbst zusammenhängt, dann ist es hier." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - Der Changelog für die Bibliothek." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - Die Version garantiert für die Bibliothek." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - Wie man von v0.x nach v1.x migriert." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - Wie man von v1.x nach v2.x migriert." + diff --git a/docs/locales/de/LC_MESSAGES/installing.po b/docs/locales/de/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..2f0e4d81c5 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Pycord installieren" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "Dies ist die Dokumentation für Pycord, eine Bibliothek für Python, die bei der Erstellung von Anwendungen hilft, die die Discord API verwenden." + +msgid "Prerequisites" +msgstr "Voraussetzungen" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "Für Windows-Benutzer sollte dieser Befehl verwendet werden, um die Betaversion zu installieren: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord dreht sich um das Konzept von :ref:`events `. Ein Event ist etwas, auf das Sie hören und dann reagieren. Zum Beispiel, wenn eine Nachricht passiert, erhalten Sie ein Event darüber, auf das Sie reagieren können." + +msgid "A quick example to showcase how events work:" +msgstr "Ein schnelles Beispiel, um zu zeigen, wie Events funktionieren:" + diff --git a/docs/locales/de/LC_MESSAGES/intents.po b/docs/locales/de/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..036ca6dbac --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/de/LC_MESSAGES/logging.po b/docs/locales/de/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..e9058e99e9 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Logging einrichten" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* protokolliert Fehler und Debug-Informationen über das :mod:`logging` Python-Modul. Es wird dringend empfohlen, dass das Logging-Modul konfiguriert ist, da keine Fehler oder Warnungen ausgegeben werden, wenn es nicht eingerichtet ist. Konfiguration des ``logging`` Moduls kann so einfach sein als::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Am Anfang der Anwendung platziert. Dies gibt die Protokolle von Discord sowie andere Bibliotheken, die das ``logging`` Modul verwenden direkt auf die Konsole aus." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "Das optionale ``level`` Argument gibt an, welche Ebene der Events geloggt werden soll und kann einer von ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO`` und ``DEBUG`` sein und wenn nicht angegeben, standardmäßig ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "Weitere erweiterte Setups sind mit dem :mod:`logging` Modul möglich. Zum Beispiel um die Protokolle in eine Datei namens ``discord.log`` zu protokollieren, anstatt sie auf die Konsole auszugeben, kann folgendes Snippet verwendet werden::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "Dies wird empfohlen, vor allem auf ausgedehnten Ebenen wie ``INFO`` und ``DEBUG``, da viele Ereignisse protokolliert sind und es den Stdout Ihres Programms verstopfen würde." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "Weitere Informationen finden Sie in der Dokumentation und Anleitung des :mod:`logging` Moduls." + diff --git a/docs/locales/de/LC_MESSAGES/migrating_to_v1.po b/docs/locales/de/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..ba2c21442b --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/de/LC_MESSAGES/migrating_to_v2.po b/docs/locales/de/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..41ef72997c --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/de/LC_MESSAGES/old_changelog.po b/docs/locales/de/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..21e169d5d4 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/de/LC_MESSAGES/quickstart.po b/docs/locales/de/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..21a2adf607 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Quickstart" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." + +msgid "A Minimal Bot" +msgstr "A Minimal Bot" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Let's make a bot that responds to a specific message and walk you through it." + +msgid "It looks something like this:" +msgstr "It looks something like this:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "There's a lot going on here, so let's walk you through it step by step:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." + +msgid "On Windows:" +msgstr "On Windows:" + +msgid "On other systems:" +msgstr "On other systems:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Now you can try playing around with your basic bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "A Minimal Bot with Slash Commands" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "As a continuation, let's create a bot that registers a simple slash command!" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Let's look at the differences compared to the previous example, step-by-step:" + +msgid "The first line remains unchanged." +msgstr "The first line remains unchanged." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Finally, we, once again, run the bot with our login token." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Congratulations! Now you have created your first slash command!" + diff --git a/docs/locales/de/LC_MESSAGES/version_guarantees.po b/docs/locales/de/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..1258e1e7e9 --- /dev/null +++ b/docs/locales/de/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Versionsgarantien" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." + +msgid "The examples below are non-exhaustive." +msgstr "Die folgenden Beispiele erheben keinen Anspruch auf Vollständigkeit." + +msgid "Examples of Breaking Changes" +msgstr "Examples of Breaking Changes" + +msgid "Changing the default parameter value to something else." +msgstr "Changing the default parameter value to something else." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renaming a function without an alias to an old function." + +msgid "Adding or removing parameters to an event." +msgstr "Adding or removing parameters to an event." + +msgid "Examples of Non-Breaking Changes" +msgstr "Examples of Non-Breaking Changes" + +msgid "Adding or removing private underscored attributes." +msgstr "Adding or removing private underscored attributes." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Adding an element into the ``__slots__`` of a data class." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Changing the behaviour of a function to fix a bug." + +msgid "Changes in the documentation." +msgstr "Changes in the documentation." + +msgid "Modifying the internal HTTP handling." +msgstr "Modifying the internal HTTP handling." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Upgrading the dependencies to a new version, major or otherwise." + diff --git a/docs/locales/en/LC_MESSAGES/api/abcs.po b/docs/locales/en/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..bf133d6e16 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/abcs.po @@ -0,0 +1,1245 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/abcs.rst:4 eba096c79e094bb18465d6e9ff3678cf +msgid "Abstract Base Classes" +msgstr "" + +#: ../../api/abcs.rst:6 ecffa9e27b0648238c9edfe6aa200df6 +msgid "" +"An :term:`abstract base class` (also known as an ``abc``) is a class that" +" models can inherit to get their behaviour. **Abstract base classes " +"should not be instantiated**. They are mainly there for usage with " +":func:`isinstance` and :func:`issubclass`\\." +msgstr "" + +#: ../../api/abcs.rst:10 bb28999fade743b6a174c2255757b009 +msgid "" +"This library has a module related to abstract base classes, in which all " +"the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "" + +#: 4741c9654bd94685b8e9999b040bceb8 discord.abc.Snowflake:1 of +msgid "An ABC that details the common operations on a Discord model." +msgstr "" + +#: 47bea6eba12a4be891c27a511774e540 discord.abc.Snowflake:3 of +msgid "" +"Almost all :ref:`Discord models ` meet this abstract " +"base class." +msgstr "" + +#: 68f54081d0324c8f9a60a03121228419 discord.abc.Snowflake:6 of +msgid "" +"If you want to create a snowflake on your own, consider using " +":class:`.Object`." +msgstr "" + +#: b48d28bcb8944448a302ec1728849ca1 discord.abc.Snowflake:11 of +msgid "The model's unique ID." +msgstr "" + +#: 066672777afe48e7b6b41fad1a12de64 0c86631d2d114c45bf1c165d105fb12e +#: 0ee679abcb1c4b25b364befb02132adb 16478c3543f84403bbfebe2cf3bdef50 +#: 1bafe7fad7964f38b1650c05822ee835 b5cc4d4d66184893b35a75a892c300f0 +#: d28c40e6890642de932360bf411ac494 d8eede98a7ca45ea915927dc318de4d7 +#: discord.abc.GuildChannel discord.abc.PrivateChannel discord.abc.Snowflake +#: discord.abc.User f6df80c3f3ae47f7be4d5ada55e8d6dd +#: f85ce9cfcafa43e8b2b80a84c7b8cc6c of +msgid "type" +msgstr "" + +#: 5fae1913d1234d4da3cd77b627a1f629 7d2cfbf10de24809b10f59e074b942c1 +#: discord.abc.GuildChannel:30 discord.abc.Snowflake:13 of +msgid ":class:`int`" +msgstr "" + +#: discord.abc.User:1 f476d58c613c4534abc37bc55a8f9d56 of +msgid "An ABC that details the common operations on a Discord user." +msgstr "" + +#: 19e8ddb2cda941c3a30ca8850cb2ede7 7ab357637db845ee9b87d385a8042b16 +#: 8befbe76d57647a3852a44b494c4ab44 aba0180fb52b4fa5a21ed6608a3565a3 +#: discord.abc.Connectable:4 discord.abc.GuildChannel:3 +#: discord.abc.Messageable:3 discord.abc.PrivateChannel:3 discord.abc.User:3 +#: fb6cfafebb154551983f5af556cf1207 of +msgid "The following implement this ABC:" +msgstr "" + +#: 1d9d8cc193684ade90b957be4d0ba02b 868d75a8b3c540dfaeff9ef186445cae +#: discord.abc.Messageable:10 discord.abc.User:5 of +msgid ":class:`~discord.User`" +msgstr "" + +#: 206eb8b27cea4ecb9819a39a3e676154 discord.abc.PrivateChannel:14 +#: discord.abc.User:6 f4d5f92d7c904e11abae69a42643ceb9 of +msgid ":class:`~discord.ClientUser`" +msgstr "" + +#: 3ac169cb9ed249fa97d87f2dda08a310 c347cd4097e847ffbe940543abd9a768 +#: discord.abc.Messageable:11 discord.abc.User:7 of +msgid ":class:`~discord.Member`" +msgstr "" + +#: 55dafc24f36c42108379ba9621534719 8fc2b8cbc76642b594d6aed520962c34 +#: c3f82876a05b42f6b9f142abd42d440c discord.abc.GuildChannel:11 +#: discord.abc.PrivateChannel:8 discord.abc.User:9 of +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "" + +#: 320a5745d7ef4dc3bddc68db57041ebc discord.abc.User:13 of +msgid "The user's username." +msgstr "" + +#: 3b698b51590948fa87fc4141683b8fb0 9d83050e55374544aac91208fd9717c2 +#: b9a9b156f455466c8b320984644c257e discord.abc.GuildChannel:17 +#: discord.abc.User:15 discord.abc.User:25 discord.abc.User:33 +#: e9af1898d3c64b1f96af932c9b217551 of +msgid ":class:`str`" +msgstr "" + +#: discord.abc.User:19 e78c45aef3ca431fbf8f309c887fc29f of +msgid "The user's discriminator." +msgstr "" + +#: 73dd772201aa4748b316068b05957002 discord.abc.User:23 of +msgid "" +"If the user has migrated to the new username system, this will always be " +"\"0\"." +msgstr "" + +#: 62a458c9df53441eb015ac21dbe34fa6 discord.abc.User:29 of +msgid "The user's global name." +msgstr "" + +#: discord.abc.User:37 f6f47d554883461dad161445c30916cf of +msgid "The avatar asset the user has." +msgstr "" + +#: 9c5bd5888cf448da93b8a0153a44b233 discord.abc.User:39 of +msgid ":class:`~discord.Asset`" +msgstr "" + +#: 881d7e60a8f54fbc984f3e9e4b366b02 discord.abc.User:43 of +msgid "If the user is a bot account." +msgstr "" + +#: 07229964898b4b1e9cefda4c38d26e2b 6803ab70e67446aba9dc35de91a33f48 +#: discord.abc.Messageable.can_send:4 discord.abc.User:45 of +msgid ":class:`bool`" +msgstr "" + +#: bef028b1be27469588e3b8c6d6ff28a9 discord.abc.User.display_name:1 of +msgid "Returns the user's display name." +msgstr "" + +#: discord.abc.User.mention:1 f4d6145bdb3f46f0b5b8abe16d25f8cd of +msgid "Returns a string that allows you to mention the given user." +msgstr "" + +#: 9695a64a7cd84cca8c68f3f8a6e63b4b discord.abc.PrivateChannel:1 of +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "" + +#: discord.abc.Messageable:8 discord.abc.PrivateChannel:5 +#: eb3f6696e98746a4b3bb06a7c593f16f f4e761a32f2b4fa293005967bb5b8876 of +msgid ":class:`~discord.DMChannel`" +msgstr "" + +#: 08b37c00170d4c158d05b2eac6301dc8 96b1ff47f3f74315b1a978afd462a4ab +#: discord.abc.Messageable:9 discord.abc.PrivateChannel:6 of +msgid ":class:`~discord.GroupChannel`" +msgstr "" + +#: 522ecffdca534152a4deb8b05e5f346d discord.abc.PrivateChannel:12 of +msgid "The user presenting yourself." +msgstr "" + +#: 492a04d7e12c4af4b00be2a3ea5fd3fe discord.abc.GuildChannel:1 of +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "" + +#: 5a75adff819f43ae87cfb42e1805b4a4 c8804dd897f849f48691c36fc620a3ec +#: discord.abc.GuildChannel:5 discord.abc.Messageable:5 of +msgid ":class:`~discord.TextChannel`" +msgstr "" + +#: 2ef9d2cfbbc042adaafadf244b6a5b53 a8e12520fc6a4be1bdbb3a81c26f9ee8 +#: c091a21e09614c85820c51243cc2bbd6 discord.abc.Connectable:6 +#: discord.abc.GuildChannel:6 discord.abc.Messageable:6 of +msgid ":class:`~discord.VoiceChannel`" +msgstr "" + +#: 5da78147f5344fbaad7a4001cc44040d discord.abc.GuildChannel:7 of +msgid ":class:`~discord.CategoryChannel`" +msgstr "" + +#: 488b0b469a564d86816765265e3b68ee 5b3700ea3b1849e6a06cf2af4caf90c3 +#: a982e135d8264dd3b151c14dd9a7cba1 discord.abc.Connectable:7 +#: discord.abc.GuildChannel:8 discord.abc.Messageable:7 of +msgid ":class:`~discord.StageChannel`" +msgstr "" + +#: 16d6633c0f3542a1a41e7948325fa027 discord.abc.GuildChannel:9 of +msgid ":class:`~discord.ForumChannel`" +msgstr "" + +#: 4448a57c2a004e7d90cb0fdcad86f569 discord.abc.GuildChannel:15 of +msgid "The channel name." +msgstr "" + +#: 55cf37366ce440999ab4cd6f6581a820 discord.abc.GuildChannel:21 of +msgid "The guild the channel belongs to." +msgstr "" + +#: discord.abc.GuildChannel:23 e12d19edd0734c218616a4df98ce6504 of +msgid ":class:`~discord.Guild`" +msgstr "" + +#: ad6bcb47ccfc49a2b921875096d086fc discord.abc.GuildChannel:27 of +msgid "" +"The position in the channel list. This is a number that starts at 0. e.g." +" the top channel is position 0." +msgstr "" + +#: 92a7be071e894a5082eb58bd4de4c891 discord.abc.GuildChannel.changed_roles:1 of +msgid "" +"Returns a list of roles that have been overridden from their default " +"values in the :attr:`~discord.Guild.roles` attribute." +msgstr "" + +#: 4d559a5b43c34293b208f473e162cd40 discord.abc.GuildChannel.mention:1 of +msgid "The string that allows you to mention the channel." +msgstr "" + +#: 40aba981504d4f568bee500d593152a9 discord.abc.GuildChannel.jump_url:1 of +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "" + +#: 3b4fdc22e96e4ac39a90773db776db85 discord.abc.GuildChannel.created_at:1 of +msgid "Returns the channel's creation time in UTC." +msgstr "" + +#: a709d1fb206e462c96fcfb98f7b1fabb discord.abc.GuildChannel.overwrites_for:1 +#: of +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "" + +#: ../../api/abcs.rst 3b20d94d071448afb0cbcba6c02e4d62 +#: 5e160138a0124ebfb2463589a38c520a 60a67e189f30413bb931557ae0d677e5 +#: 66c20e4761ee48f487e2336799758e70 697615a7dc374833a2a4dc54e612d578 +#: a397ed5dee4e403b968a341016bfaff6 ce1db15f4b774f6eb4047d5e0dc10eb7 +#: d0147bebe9a04d399c13c8a22b7256aa d939dcebd14648b9b876851182b079a2 +#: discord.abc.Messageable.history f599952a5df34d498f5b7113811451b4 of +msgid "Parameters" +msgstr "" + +#: 7b5be37d473945f980d080501395944e discord.abc.GuildChannel.overwrites_for:4 +#: of +msgid "The role or user denoting whose overwrite to get." +msgstr "" + +#: ../../api/abcs.rst 0becae8c7a3343bfa74ee70d0bcf63fa +#: 1d2679ae9f514304bd3579ef87f81507 2c633fc68b5748e1adfc9ec3aff4f8ed +#: 65b08451ad3a43d093e03f3f5e7a55c6 66f37f1f6ffc4532b5e7767864a5222b +#: 8101933b7aca44b491e77ce2b88e718e 8e507fe851d946d5a39bf30a61c1b560 +#: 9a9cab84cf46487ab80637c624490b36 c1807c81320a4c4a9eea27db6d535110 +#: ef49855ea26e49d18e9c5f14cd4d5a2b +msgid "Returns" +msgstr "" + +#: cbf2b10aa86a450aae949d4afbb72b83 discord.abc.GuildChannel.overwrites_for:8 +#: of +msgid "The permission overwrites for this object." +msgstr "" + +#: ../../api/abcs.rst 0c2690be6dc44bd99487721b1c473943 +#: 11a136a4062b498a8539ad8c06771df5 1da797b8dd684105852b0c651b5b1369 +#: 37f01e30f738487bbe95997ed7571b62 41f62d98c7404eabaebc4820fa6da3e6 +#: 6012b511381143e9ab71be1e7d0e2ec6 64aa35176668433594fbf6d7bb7a9b57 +#: 65da9d2f771749c6870d5bc0e175f919 6623b7471154462a8a89a38165cebaac +#: 7bcc922e527d44179d22772f6c16984f ae7e9663432d4aa99ce5152a8849b58b +#: bfd321f562164c8592b70e22b870cb1b d748e7f595124a2caf29f95f0c884c4e +#: discord.abc.Messageable.history f458fbadecb448e38f1f3085d9edc8a6 of +msgid "Return type" +msgstr "" + +#: discord.abc.GuildChannel.overwrites_for:9 e5ea510d86c149fcb18fa591625d5d07 +#: of +msgid ":class:`~discord.PermissionOverwrite`" +msgstr "" + +#: 90ad1cb5997e40b69c61f7457281e1de discord.abc.GuildChannel.overwrites:1 of +msgid "Returns all of the channel's overwrites." +msgstr "" + +#: 2bf4c5fafdf6429b84330957fb24ab01 discord.abc.GuildChannel.overwrites:3 of +msgid "" +"This is returned as a dictionary where the key contains the target which " +"can be either a :class:`~discord.Role` or a :class:`~discord.Member` and " +"the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "" + +#: discord.abc.GuildChannel.overwrites:7 f15eda417e19494ea604c6f5770c6a45 of +msgid "The channel's permission overwrites." +msgstr "" + +#: 55f132c1266245bcb389221b13679775 discord.abc.GuildChannel.overwrites:8 of +msgid "" +"Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], " +":class:`~discord.PermissionOverwrite`]" +msgstr "" + +#: 1db80abbda8a4911a7711ae56f513ab8 discord.abc.GuildChannel.category:1 of +msgid "The category this channel belongs to." +msgstr "" + +#: 5bbfc6c0820a44b3a0dd8f1df312d334 discord.abc.GuildChannel.category:3 of +msgid "If there is no category then this is ``None``." +msgstr "" + +#: discord.abc.GuildChannel.permissions_synced:1 +#: eeffa71045734b85965aeb971081f6a3 of +msgid "" +"Whether the permissions for this channel are synced with the category it " +"belongs to." +msgstr "" + +#: 1171e47cfc5a4f0791d740508bc37158 +#: discord.abc.GuildChannel.permissions_synced:4 of +msgid "If there is no category then this is ``False``." +msgstr "" + +#: 4fecc3795fa142dbb33ae3ca2d91327f discord.abc.GuildChannel.permissions_for:1 +#: of +msgid "" +"Handles permission resolution for the :class:`~discord.Member` or " +":class:`~discord.Role`." +msgstr "" + +#: cd4470a1d45d429a999e7b9f6ec55f49 discord.abc.GuildChannel.permissions_for:4 +#: of +msgid "This function takes into consideration the following cases:" +msgstr "" + +#: 1de0c73c6d9143b9956741d16b697ecd discord.abc.GuildChannel.permissions_for:6 +#: of +msgid "Guild owner" +msgstr "" + +#: c9503941e19b4afa99e57615839294ca discord.abc.GuildChannel.permissions_for:7 +#: of +msgid "Guild roles" +msgstr "" + +#: 750911e7b8c44983a5c47f0ac5a700a5 discord.abc.GuildChannel.permissions_for:8 +#: of +msgid "Channel overrides" +msgstr "" + +#: 528c11379a8d438ebb0b2de3e7891832 discord.abc.GuildChannel.permissions_for:9 +#: of +msgid "Member overrides" +msgstr "" + +#: discord.abc.GuildChannel.permissions_for:11 fc56ba9a38b84c8a875576b8cd474972 +#: of +msgid "" +"If a :class:`~discord.Role` is passed, then it checks the permissions " +"someone with that role would have, which is essentially:" +msgstr "" + +#: 38d1440864c84ffe9afa2a0b241b6135 discord.abc.GuildChannel.permissions_for:14 +#: of +msgid "The default role permissions" +msgstr "" + +#: b5684951350d41eb8b164a4b8ebd41d9 discord.abc.GuildChannel.permissions_for:15 +#: of +msgid "The permissions of the role used as a parameter" +msgstr "" + +#: b406f8eb396844c091af41fa29263d3d discord.abc.GuildChannel.permissions_for:16 +#: of +msgid "The default role permission overwrites" +msgstr "" + +#: 6dfa8f8d44de4c9286669355380503ec discord.abc.GuildChannel.permissions_for:17 +#: of +msgid "The permission overwrites of the role used as a parameter" +msgstr "" + +#: 8f5ce4ed137b4992bbba7cf650c6a546 discord.abc.GuildChannel.permissions_for:19 +#: of +msgid "The object passed in can now be a role object." +msgstr "" + +#: 538dd64346cf4fcabbbb3e054d8ae27e discord.abc.GuildChannel.permissions_for:23 +#: of +msgid "" +"The object to resolve permissions for. This could be either a member or a" +" role. If it's a role then member overwrites are not computed." +msgstr "" + +#: 2743b663c2604ac99153b71658dd7955 discord.abc.GuildChannel.permissions_for:28 +#: of +msgid "The resolved permissions for the member or role." +msgstr "" + +#: d160215e8fd0483b803e4feb607722fe discord.abc.GuildChannel.permissions_for:29 +#: of +msgid ":class:`~discord.Permissions`" +msgstr "" + +#: 00f7634217064d6295a6924fadd26f6d 0c2bd17b81764ad9b602a4bcf46e7adb +#: 53afb5db720048589629b816ddb03782 5516007d80a04f27b710e8e89440c211 +#: 68a664b278c7485c8e45e152218a4c8e 76535a41a98d42889332c5da6b2421a5 +#: 9321611b3f474e18a58779e48164f1d1 c2c158e15aff478c90ebe68ed8119565 +#: db09d175309e4f788bdd7945b1d9f0c6 discord.abc.GuildChannel.clone:1 +#: discord.abc.GuildChannel.create_invite:1 discord.abc.GuildChannel.delete:1 +#: discord.abc.GuildChannel.invites:1 discord.abc.GuildChannel.move:1 +#: discord.abc.GuildChannel.set_permissions:1 +#: discord.abc.Messageable.fetch_message:1 discord.abc.Messageable.pins:1 +#: discord.abc.Messageable.send:1 discord.abc.Messageable.trigger_typing:1 +#: fc11191cacf3443f913a5bd69d919a77 of +msgid "|coro|" +msgstr "" + +#: 8d7099b6e32a4784bfd22162bb7f12a4 discord.abc.GuildChannel.delete:3 of +msgid "Deletes the channel." +msgstr "" + +#: 9283174a29fe4cd3a999cbe16e91c338 discord.abc.GuildChannel.delete:5 of +msgid "" +"You must have :attr:`~discord.Permissions.manage_channels` permission to " +"use this." +msgstr "" + +#: c0a16afcdf024c34870bd9610e6ec5a7 discord.abc.GuildChannel.delete:8 of +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "" + +#: ../../api/abcs.rst 0e8239ac7ddc4e048eb60772728e419d +#: 31de3a885a3e42c387e130575ac07bf7 5448d7297cf24ec3b2d30012a69f357a +#: 72d120a0412a4abc8b158e77726150f2 989d13fe26cf462bafcec9e32b983161 +#: bc1f6f8dfabf4e2bbd3ad10f31bd169c c41fe790e3f04807b5d5eea4918ecbda +#: c4357f7a3367410786087828206f5204 c5942183ac1b422d874ef5456324b188 +#: cb61738138474c3093f076891a253869 discord.abc.Messageable.history +#: f18991acfb0a458899f3d2977c2c26ef of +msgid "Raises" +msgstr "" + +#: a49551604bb2441d8e393e9f3af5e9da discord.abc.GuildChannel.delete:12 of +msgid "You do not have proper permissions to delete the channel." +msgstr "" + +#: 63d9b0eca3194eed86f22730f97e7150 discord.abc.GuildChannel.delete:13 of +msgid "The channel was not found or was already deleted." +msgstr "" + +#: 9cd0a14d775240ffb2a793071bf27195 discord.abc.GuildChannel.delete:14 of +msgid "Deleting the channel failed." +msgstr "" + +#: 1556d0b7324e43e59611bd803079f548 2aadba38a10941c69fa83833c49a1a92 +#: 9208896e58034a57b97105d1329b9793 discord.abc.GuildChannel.delete:16 +#: discord.abc.GuildChannel.move:51 discord.abc.Messageable.trigger_typing:8 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: b8f02982c07e44c5bbb8db8be80671cd discord.abc.GuildChannel.set_permissions:3 +#: of +msgid "" +"Sets the channel specific permission overwrites for a target in the " +"channel." +msgstr "" + +#: 7dcca40512ec450194ea16cf8c9a7a4b discord.abc.GuildChannel.set_permissions:6 +#: of +msgid "" +"The ``target`` parameter should either be a :class:`~discord.Member` or a" +" :class:`~discord.Role` that belongs to guild." +msgstr "" + +#: 871aaa962e9b4e968d2de6add1cee24c discord.abc.GuildChannel.set_permissions:9 +#: of +msgid "" +"The ``overwrite`` parameter, if given, must either be ``None`` or " +":class:`~discord.PermissionOverwrite`. For convenience, you can pass in " +"keyword arguments denoting :class:`~discord.Permissions` attributes. If " +"this is done, then you cannot mix the keyword arguments with the " +"``overwrite`` parameter." +msgstr "" + +#: c620b3a1289d4243818bf61b2723c7b6 discord.abc.GuildChannel.set_permissions:15 +#: of +msgid "" +"If the ``overwrite`` parameter is ``None``, then the permission " +"overwrites are deleted." +msgstr "" + +#: 36fce7cdc7e14f338aade9cbe9b4867a discord.abc.GuildChannel.set_permissions:18 +#: of +msgid "" +"You must have the :attr:`~discord.Permissions.manage_roles` permission to" +" use this." +msgstr "" + +#: 6fc26ef2306144f6959be12618f1cd4b discord.abc.GuildChannel.set_permissions:22 +#: of +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "" + +#: 1c3537f7b30748c58ac9d43193c9f927 b3123c1220764f4a8b84f628beded5d3 +#: discord.abc.GuildChannel.set_permissions:25 +#: discord.abc.Messageable.history:39 of +msgid "Examples" +msgstr "" + +#: 7c968c31b8d04886bfe002b8e3bdae48 discord.abc.GuildChannel.set_permissions:26 +#: of +msgid "Setting allow and deny: ::" +msgstr "" + +#: discord.abc.GuildChannel.set_permissions:31 fb8414d061584b7588c4e86d1e578aca +#: of +msgid "Deleting overwrites ::" +msgstr "" + +#: 3defedc1bafe4560bc9af54a32898c5d discord.abc.GuildChannel.set_permissions:35 +#: of +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "" + +#: 485de860e7344ec187d3a688a62de855 discord.abc.GuildChannel.set_permissions:43 +#: of +msgid "The member or role to overwrite permissions for." +msgstr "" + +#: 8c40fdfce8134dc59ff5c6679a00d902 discord.abc.GuildChannel.set_permissions:46 +#: of +msgid "" +"The permissions to allow and deny to the target, or ``None`` to delete " +"the overwrite." +msgstr "" + +#: discord.abc.GuildChannel.set_permissions:50 e7f7d10378184b0aaa47718a1e093c10 +#: of +msgid "" +"A keyword argument list of permissions to set for ease of use. Cannot be " +"mixed with ``overwrite``." +msgstr "" + +#: 939f5bb4041f4e0b9fcdf458e14897dc discord.abc.GuildChannel.set_permissions:53 +#: of +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "" + +#: discord.abc.GuildChannel.set_permissions:56 f63a735d3a4d4034b9438307d367dc88 +#: of +msgid "You do not have permissions to edit channel specific permissions." +msgstr "" + +#: 6c0304de1eeb4b0e81657a73cb4e95a8 discord.abc.GuildChannel.set_permissions:57 +#: of +msgid "Editing channel specific permissions failed." +msgstr "" + +#: 494eb950335d4e05a041da8532184f22 discord.abc.GuildChannel.set_permissions:58 +#: of +msgid "The role or member being edited is not part of the guild." +msgstr "" + +#: 5778c3b54842442fac40cd6ba0c908d4 discord.abc.GuildChannel.set_permissions:59 +#: of +msgid "" +"The overwrite parameter invalid or the target type was not " +":class:`~discord.Role` or :class:`~discord.Member`." +msgstr "" + +#: b4e299b0812040b6839744affa65da33 discord.abc.GuildChannel.clone:3 of +msgid "" +"Clones this channel. This creates a channel with the same properties as " +"this channel." +msgstr "" + +#: 2f18c9d119994ab8a883fcf5443ea905 c779e7a36d1843dcbe3974bd0e3a4bdf +#: discord.abc.GuildChannel.clone:6 discord.abc.GuildChannel.move:7 of +msgid "" +"You must have the :attr:`~discord.Permissions.manage_channels` permission" +" to do this." +msgstr "" + +#: 360c43d24fa74755bda0102e63a76cff discord.abc.GuildChannel.clone:12 of +msgid "" +"The name of the new channel. If not provided, defaults to this channel " +"name." +msgstr "" + +#: b2f146eeab2f4f11807d42190f8a89cc discord.abc.GuildChannel.clone:16 of +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "" + +#: d367046630b7470d9c8d06bb32180838 discord.abc.GuildChannel.clone:19 of +msgid "The channel that was created." +msgstr "" + +#: de39b87932bf438db36166200b73139d discord.abc.GuildChannel.clone:20 of +msgid ":class:`.abc.GuildChannel`" +msgstr "" + +#: cb28f80aab9c490187e2c98c048c7820 discord.abc.GuildChannel.clone:22 of +msgid "You do not have the proper permissions to create this channel." +msgstr "" + +#: 250258f74b3c4ed08624a53468130d36 discord.abc.GuildChannel.clone:23 of +msgid "Creating the channel failed." +msgstr "" + +#: 4773012fadba4dbcb8942054ed8c5ad9 discord.abc.GuildChannel.move:3 of +msgid "A rich interface to help move a channel relative to other channels." +msgstr "" + +#: 9c635d863bd24468856063b882cad9c4 discord.abc.GuildChannel.move:5 of +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "" + +#: discord.abc.GuildChannel.move:12 e2c4c9ea9a9648518842d72f4c9c8dff of +msgid "" +"Voice channels will always be sorted below text channels. This is a " +"Discord limitation." +msgstr "" + +#: b882cc51a7ad474681af109780a81703 discord.abc.GuildChannel.move:17 of +msgid "" +"Whether to move the channel to the beginning of the channel list (or " +"category if given). This is mutually exclusive with ``end``, ``before``, " +"and ``after``." +msgstr "" + +#: discord.abc.GuildChannel.move:21 f53f0ae69f4e4c8493fb10007349ad2c of +msgid "" +"Whether to move the channel to the end of the channel list (or category " +"if given). This is mutually exclusive with ``beginning``, ``before``, and" +" ``after``." +msgstr "" + +#: bb849b4f9a6840e1b6342329b8447c97 discord.abc.GuildChannel.move:25 of +msgid "" +"The channel that should be before our current channel. This is mutually " +"exclusive with ``beginning``, ``end``, and ``after``." +msgstr "" + +#: discord.abc.GuildChannel.move:28 f166889e839547cfaef7ac191f9ebb72 of +msgid "" +"The channel that should be after our current channel. This is mutually " +"exclusive with ``beginning``, ``end``, and ``before``." +msgstr "" + +#: 3cb8ec6f605a4b6d8760ec5acaf9e5fe discord.abc.GuildChannel.move:31 of +msgid "" +"The number of channels to offset the move by. For example, an offset of " +"``2`` with ``beginning=True`` would move it 2 after the beginning. A " +"positive number moves it below while a negative number moves it above. " +"Note that this number is relative and computed after the ``beginning``, " +"``end``, ``before``, and ``after`` parameters." +msgstr "" + +#: 985bb6762b4846608c9fdee1eb2d3130 discord.abc.GuildChannel.move:38 of +msgid "" +"The category to move this channel under. If ``None`` is given then it " +"moves it out of the category. This parameter is ignored if moving a " +"category channel." +msgstr "" + +#: discord.abc.GuildChannel.move:42 e4f1bd9df7254ee79c53f425e8660c97 of +msgid "Whether to sync the permissions with the category (if given)." +msgstr "" + +#: acd13dc38b3a4b30bd06f2d26ef753ff discord.abc.GuildChannel.move:44 of +msgid "The reason for the move." +msgstr "" + +#: aa669646fb7f4579ab583200bde6fa6d discord.abc.GuildChannel.move:47 of +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "" + +#: 15f0f73fe34443ed9e6d76844242705f discord.abc.GuildChannel.move:48 of +msgid "You do not have permissions to move the channel." +msgstr "" + +#: a0847e6cc4554dd98733b963fc276acf discord.abc.GuildChannel.move:49 of +msgid "Moving the channel failed." +msgstr "" + +#: discord.abc.GuildChannel.create_invite:3 f02edcc48c864d91a36b513454558dd6 of +msgid "Creates an instant invite from a text or voice channel." +msgstr "" + +#: 34adcc82842045da90a6cfd749c610ea discord.abc.GuildChannel.create_invite:5 of +msgid "" +"You must have the :attr:`~discord.Permissions.create_instant_invite` " +"permission to do this." +msgstr "" + +#: 4eb6418694f1494283948d66ac960704 discord.abc.GuildChannel.create_invite:9 of +msgid "" +"How long the invite should last in seconds. If it's 0 then the invite " +"doesn't expire. Defaults to ``0``." +msgstr "" + +#: 07a8460c4fe9448bb3db83bcb6d018d3 discord.abc.GuildChannel.create_invite:13 +#: of +msgid "" +"How many uses the invite could be used for. If it's 0 then there are " +"unlimited uses. Defaults to ``0``." +msgstr "" + +#: 11951229c921453caee1f5675104dcba discord.abc.GuildChannel.create_invite:17 +#: of +msgid "" +"Denotes that the invite grants temporary membership (i.e. they get kicked" +" after they disconnect). Defaults to ``False``." +msgstr "" + +#: a86de9b685ad42ffa90d9ea0270d6cfd discord.abc.GuildChannel.create_invite:21 +#: of +msgid "" +"Indicates if a unique invite URL should be created. Defaults to True. If " +"this is set to ``False`` then it will return a previously created invite." +msgstr "" + +#: 171e94fa826649ab8ad94306ea899c77 discord.abc.GuildChannel.create_invite:26 +#: of +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "" + +#: 12fd38ebd4204bf78f629058406087af discord.abc.GuildChannel.create_invite:29 +#: of +msgid "" +"The type of target for the voice channel invite, if any. .. " +"versionadded:: 2.0" +msgstr "" + +#: 15724914e5a945fabdaef1bc755d3124 discord.abc.GuildChannel.create_invite:29 +#: of +msgid "The type of target for the voice channel invite, if any." +msgstr "" + +#: discord.abc.GuildChannel.create_invite:34 fa0b61268b8141998a559ae6c1c0c5f9 +#: of +msgid "" +"The user whose stream to display for this invite, required if " +"`target_type` is `TargetType.stream`. The user must be streaming in the " +"channel. .. versionadded:: 2.0" +msgstr "" + +#: dc382d48216649049091b622ec2e8f87 discord.abc.GuildChannel.create_invite:34 +#: of +msgid "" +"The user whose stream to display for this invite, required if " +"`target_type` is `TargetType.stream`. The user must be streaming in the " +"channel." +msgstr "" + +#: 1b1964c4a03941e3b7bce3f9c4f06ca3 discord.abc.GuildChannel.create_invite:40 +#: of +msgid "" +"The id of the embedded application for the invite, required if " +"`target_type` is `TargetType.embedded_application`. .. versionadded:: " +"2.0" +msgstr "" + +#: 6ba3482efdb746bca8e28039741a9af2 discord.abc.GuildChannel.create_invite:40 +#: of +msgid "" +"The id of the embedded application for the invite, required if " +"`target_type` is `TargetType.embedded_application`." +msgstr "" + +#: 521736117c4242fba055232291762b15 discord.abc.GuildChannel.create_invite:46 +#: of +msgid "" +"The scheduled event object to link to the event. Shortcut to " +":meth:`.Invite.set_scheduled_event` See " +":meth:`.Invite.set_scheduled_event` for more info on event invite " +"linking. .. versionadded:: 2.0" +msgstr "" + +#: b50d9e6892874d2aa4af1bdee1c3770a discord.abc.GuildChannel.create_invite:46 +#: of +msgid "" +"The scheduled event object to link to the event. Shortcut to " +":meth:`.Invite.set_scheduled_event`" +msgstr "" + +#: d7f1b2d7092744cb91950605410cae8e discord.abc.GuildChannel.create_invite:49 +#: of +msgid "" +"See :meth:`.Invite.set_scheduled_event` for more info on event invite " +"linking." +msgstr "" + +#: c1591d1610d248bd8ea0edea53adc715 discord.abc.GuildChannel.create_invite:55 +#: of +msgid "The invite that was created." +msgstr "" + +#: discord.abc.GuildChannel.create_invite:56 fb13c77b9ff04c5e974244df057a8dd4 +#: of +msgid ":class:`~discord.Invite`" +msgstr "" + +#: 281a37e3d83f4183b84745a5b3b39845 discord.abc.GuildChannel.create_invite:58 +#: of +msgid "Invite creation failed." +msgstr "" + +#: 0a2a328e0e6442da8b9d78b0bda608f3 discord.abc.GuildChannel.create_invite:59 +#: of +msgid "The channel that was passed is a category or an invalid channel." +msgstr "" + +#: 3cdf4ff1dff745a9ae74cb84b01e3d21 discord.abc.GuildChannel.invites:3 of +msgid "Returns a list of all active instant invites from this channel." +msgstr "" + +#: 871cbc7f5c6549e39dc2d06a60160091 discord.abc.GuildChannel.invites:5 of +msgid "" +"You must have :attr:`~discord.Permissions.manage_channels` to get this " +"information." +msgstr "" + +#: 16959e08182541d5868181d88d2d5db9 discord.abc.GuildChannel.invites:7 of +msgid "The list of invites that are currently active." +msgstr "" + +#: a19e94cde12044ef92a1a1fb63ab75e2 discord.abc.GuildChannel.invites:8 of +msgid "List[:class:`~discord.Invite`]" +msgstr "" + +#: c7dcbacf8a4f4680867ff28e5816f535 discord.abc.GuildChannel.invites:10 of +msgid "You do not have proper permissions to get the information." +msgstr "" + +#: 4be34f522adc4c8896cd32447b209027 discord.abc.GuildChannel.invites:11 of +msgid "An error occurred while fetching the information." +msgstr "" + +#: dc4c7ad0c8ad4feca3d041e12eb7d777 discord.abc.Messageable:1 of +msgid "" +"An ABC that details the common operations on a model that can send " +"messages." +msgstr "" + +#: discord.abc.Messageable:12 f001d854c2194b5f851170ae75cb56c6 of +msgid ":class:`~discord.ext.commands.Context`" +msgstr "" + +#: d4a798d4e25a4aff902d032b4d6d0f37 discord.abc.Messageable:13 of +msgid ":class:`~discord.Thread`" +msgstr "" + +#: b4dda8ab4def475190eb4024614c47fe discord.abc.Messageable:14 of +msgid ":class:`~discord.ApplicationContext`" +msgstr "" + +#: 8d2e215bc6854b1e8881b8e7b0be7886 discord.abc.Messageable.history:1 of +msgid "" +"Returns an :class:`~discord.AsyncIterator` that enables receiving the " +"destination's message history." +msgstr "" + +#: db7fe24b56174ba88b9125364a39bcef discord.abc.Messageable.history:3 of +msgid "" +"You must have :attr:`~discord.Permissions.read_message_history` " +"permissions to use this." +msgstr "" + +#: 3be41d26fe6c4db691d0f996edd896cd discord.abc.Messageable.history:6 of +msgid "" +"The number of messages to retrieve. If ``None``, retrieves every message " +"in the channel. Note, however, that this would make it a slow operation." +msgstr "" + +#: discord.abc.Messageable.history:11 e0043231e9594810ad87d803a3aff895 of +msgid "" +"Retrieve messages before this date or message. If a datetime is provided," +" it is recommended to use a UTC aware datetime. If the datetime is naive," +" it is assumed to be local time." +msgstr "" + +#: discord.abc.Messageable.history:16 ff0bf9e08202470aa16b177a95f3b0b4 of +msgid "" +"Retrieve messages after this date or message. If a datetime is provided, " +"it is recommended to use a UTC aware datetime. If the datetime is naive, " +"it is assumed to be local time." +msgstr "" + +#: 092c37264fd94af1837bac3590cc8eac discord.abc.Messageable.history:21 of +msgid "" +"Retrieve messages around this date or message. If a datetime is provided," +" it is recommended to use a UTC aware datetime. If the datetime is naive," +" it is assumed to be local time. When using this argument, the maximum " +"limit is 101. Note that if the limit is an even number, then this will " +"return at most limit + 1 messages." +msgstr "" + +#: 4165af23ce0140a68f19a493053730ba discord.abc.Messageable.history:28 of +msgid "" +"If set to ``True``, return messages in oldest->newest order. Defaults to " +"``True`` if ``after`` is specified, otherwise ``False``." +msgstr "" + +#: 330775df4db2489d90277342ad6022c7 discord.abc.Messageable.history of +msgid "Yields" +msgstr "" + +#: discord.abc.Messageable.history:32 e35f0d17cb834683a8458b8c6e4114fc of +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr "" + +#: 8349b412e06c40b48b2c0f6e024d4f2d discord.abc.Messageable.history:34 of +msgid "You do not have permissions to get channel message history." +msgstr "" + +#: af34c7e456e0477fbca5300f91c8e3e2 discord.abc.Messageable.history:35 of +msgid "The request to get message history failed." +msgstr "" + +#: 7ca3e15ee8da46e69208f4ceab5d85f5 discord.abc.Messageable.history:36 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr "" + +#: cc41fde924a646b2a66d6e1950f15cde discord.abc.Messageable.history:40 of +msgid "Usage ::" +msgstr "" + +#: 8fe09bfbadaa4e0d9f16f3d6de860f92 discord.abc.Messageable.history:47 of +msgid "Flattening into a list: ::" +msgstr "" + +#: 62bb3065f7c048abb84b05680ea83ed7 discord.abc.Messageable.history:52 of +msgid "All parameters are optional." +msgstr "" + +#: 9d11f981eddd4528981b271e6724cdbe discord.abc.Messageable.typing:1 of +msgid "" +"Returns a context manager that allows you to type for an indefinite " +"period of time." +msgstr "" + +#: 1ce571c393ad4909a237f0df41acf5ac discord.abc.Messageable.typing:3 of +msgid "" +"This is useful for denoting long computations in your bot. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "" + +#: 6d2c4668d8fc4cfda30eccbf8458acbf discord.abc.Messageable.typing:9 of +msgid "" +"This is both a regular context manager and an async context manager. This" +" means that both ``with`` and ``async with`` work with this." +msgstr "" + +#: 05520cdec2f14434a84fe4504e8ae4e3 discord.abc.Messageable.typing:12 of +msgid "Example Usage: ::" +msgstr "" + +#: 2d718f3d7f8a4088acdd3329b88a90e8 discord.abc.Messageable.send:3 of +msgid "Sends a message to the destination with the content given." +msgstr "" + +#: 873ac6c9a5b544c691bcf227c6664151 discord.abc.Messageable.send:5 of +msgid "" +"The content must be a type that can convert to a string through " +"``str(content)``. If the content is set to ``None`` (the default), then " +"the ``embed`` parameter must be provided." +msgstr "" + +#: 4a6a164da91543aabab378380a1a18dd discord.abc.Messageable.send:9 of +msgid "" +"To upload a single file, the ``file`` parameter should be used with a " +"single :class:`~discord.File` object. To upload multiple files, the " +"``files`` parameter should be used with a :class:`list` of " +":class:`~discord.File` objects. **Specifying both parameters will lead to" +" an exception**." +msgstr "" + +#: 71df7005611241afb3db54461fcbe060 discord.abc.Messageable.send:14 of +msgid "" +"To upload a single embed, the ``embed`` parameter should be used with a " +"single :class:`~discord.Embed` object. To upload multiple embeds, the " +"``embeds`` parameter should be used with a :class:`list` of " +":class:`~discord.Embed` objects. **Specifying both parameters will lead " +"to an exception**." +msgstr "" + +#: b9ee3ce694294708b4db54d1df7bd691 discord.abc.Messageable.send:20 of +msgid "The content of the message to send." +msgstr "" + +#: a00789ca06e84d5fa7a73478180f1ef2 discord.abc.Messageable.send:23 of +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: 906186ab0b7e4bd79159b563a30e5968 discord.abc.Messageable.send:26 of +msgid "The rich embed for the content." +msgstr "" + +#: discord.abc.Messageable.send:29 fe4e6add04cc42c1bb5d44e2fa610082 of +msgid "The file to upload." +msgstr "" + +#: a3c6608e1d1942a4b1be5b61abda01bd discord.abc.Messageable.send:32 of +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "" + +#: 11b9fd65f5ca4474a330776ef3c6de1a discord.abc.Messageable.send:35 of +msgid "" +"The nonce to use for sending this message. If the message was " +"successfully sent, then the message will have a nonce with this value." +msgstr "" + +#: 0face4ee444e42a3b407aac7ea0318a4 discord.abc.Messageable.send:39 of +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "" + +#: ba5de4a08a864d7984364e85ac5c6fa9 discord.abc.Messageable.send:39 of +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "" + +#: 7239324fe23047feaa25e23a03b6521b discord.abc.Messageable.send:44 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message we just sent. If the deletion fails, then it is " +"silently ignored." +msgstr "" + +#: 2c8173bcb34847058431ea4859c49300 discord.abc.Messageable.send:49 of +msgid "" +"Controls the mentions being processed in this message. If this is passed," +" then the object is merged with :attr:`~discord.Client.allowed_mentions`." +" The merging behaviour only overrides attributes that have been " +"explicitly passed to the object, otherwise it uses the attributes set in " +":attr:`~discord.Client.allowed_mentions`. If no object is passed at all " +"then the defaults given by :attr:`~discord.Client.allowed_mentions` are " +"used instead. .. versionadded:: 1.4" +msgstr "" + +#: a0a579827fe147f6a86010948fcf7967 discord.abc.Messageable.send:49 of +msgid "" +"Controls the mentions being processed in this message. If this is passed," +" then the object is merged with :attr:`~discord.Client.allowed_mentions`." +" The merging behaviour only overrides attributes that have been " +"explicitly passed to the object, otherwise it uses the attributes set in " +":attr:`~discord.Client.allowed_mentions`. If no object is passed at all " +"then the defaults given by :attr:`~discord.Client.allowed_mentions` are " +"used instead." +msgstr "" + +#: 9309ccd20be043ffa5aee6e61d6082ff discord.abc.Messageable.send:59 of +msgid "" +"A reference to the :class:`~discord.Message` to which you are replying, " +"this can be created using :meth:`~discord.Message.to_reference` or passed" +" directly as a :class:`~discord.Message`. You can control whether this " +"mentions the author of the referenced message using the " +":attr:`~discord.AllowedMentions.replied_user` attribute of " +"``allowed_mentions`` or by setting ``mention_author``. .. versionadded::" +" 1.6" +msgstr "" + +#: b4916e6a8e914fe9b0f1786b0a5b52df discord.abc.Messageable.send:59 of +msgid "" +"A reference to the :class:`~discord.Message` to which you are replying, " +"this can be created using :meth:`~discord.Message.to_reference` or passed" +" directly as a :class:`~discord.Message`. You can control whether this " +"mentions the author of the referenced message using the " +":attr:`~discord.AllowedMentions.replied_user` attribute of " +"``allowed_mentions`` or by setting ``mention_author``." +msgstr "" + +#: 26f39c2265e84ac1853fb843b86d9989 discord.abc.Messageable.send:68 of +msgid "" +"If set, overrides the :attr:`~discord.AllowedMentions.replied_user` " +"attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "" + +#: 401e6af57ea8422c89021bc656d1b595 discord.abc.Messageable.send:68 of +msgid "" +"If set, overrides the :attr:`~discord.AllowedMentions.replied_user` " +"attribute of ``allowed_mentions``." +msgstr "" + +#: 10915d3a739946e3a99a0a739b1588de discord.abc.Messageable.send:73 of +msgid "A Discord UI View to add to the message." +msgstr "" + +#: 8c86dff03f9a4a3fb7f2dcc83c7c6ad4 discord.abc.Messageable.send:76 of +msgid "" +"A list of embeds to upload. Must be a maximum of 10. .. versionadded:: " +"2.0" +msgstr "" + +#: 3910a221735f4f569868b11b1d1a8c98 discord.abc.Messageable.send:76 of +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "" + +#: 8235aade03164b52932298971f0f5907 discord.abc.Messageable.send:81 of +msgid "" +"A list of stickers to upload. Must be a maximum of 3. .. versionadded:: " +"2.0" +msgstr "" + +#: 963c1db27b8240dd92f403d36e2a18ba discord.abc.Messageable.send:81 of +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "" + +#: discord.abc.Messageable.send:86 f555e2676dea4bbc8de31ebb2fc36278 of +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: a8ffcca916894215a919fa2c72d7c55d discord.abc.Messageable.send:89 of +msgid "" +"Whether to suppress push and desktop notifications for the message. .. " +"versionadded:: 2.4" +msgstr "" + +#: 4648ba0d48fc42beb889718460aeeb32 discord.abc.Messageable.send:89 of +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "" + +#: discord.abc.Messageable.send:94 fd5dcbe211744affb08358b1a28785bb of +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: dc470e02b06b4622a2c6fd26976e2906 discord.abc.Messageable.send:94 of +msgid "The poll to send." +msgstr "" + +#: 59ad41ca439e4131bf64421a1ae40eef discord.abc.Messageable.send:99 of +msgid "The message that was sent." +msgstr "" + +#: 999c449e088140378a9aca3429066337 b2c842a4fe6f435fafe3c2b2a1e47515 +#: discord.abc.Messageable.fetch_message:10 discord.abc.Messageable.send:100 of +msgid ":class:`~discord.Message`" +msgstr "" + +#: 8b714ce1774145368992ec4a36dbc6b5 discord.abc.Messageable.send:102 of +msgid "Sending the message failed." +msgstr "" + +#: 00e3027c97ff4cba80129df3ba41816f discord.abc.Messageable.send:103 of +msgid "You do not have the proper permissions to send the message." +msgstr "" + +#: 5083bf05922c4f949f5e1a47bef0c2f4 discord.abc.Messageable.send:104 of +msgid "" +"The ``files`` list is not of the appropriate size, you specified both" +" ``file`` and ``files``, or you specified both ``embed`` and " +"``embeds``, or the ``reference`` object is not a " +":class:`~discord.Message`, :class:`~discord.MessageReference` or " +":class:`~discord.PartialMessage`." +msgstr "" + +#: d5c9d9a021c946059bda8a05bbe44016 discord.abc.Messageable.trigger_typing:3 of +msgid "Triggers a *typing* indicator to the destination." +msgstr "" + +#: discord.abc.Messageable.trigger_typing:5 e2b3446f4c904abd9daf0ea1995bbac1 of +msgid "" +"*Typing* indicator will go away after 10 seconds, or after a message is " +"sent." +msgstr "" + +#: 70f06690476641b4908fe5c58523a0ec discord.abc.Messageable.fetch_message:3 of +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "" + +#: 47f6cd2a5bd6410a98561b8d764e594e discord.abc.Messageable.fetch_message:6 of +msgid "The message ID to look for." +msgstr "" + +#: 335e57a361304f68b36db3f717e341b7 discord.abc.Messageable.fetch_message:9 of +msgid "The message asked for." +msgstr "" + +#: d2feef3e4cfb47b9afc4c248ad2d1891 discord.abc.Messageable.fetch_message:12 of +msgid "The specified message was not found." +msgstr "" + +#: 4da989d152b844d4aff41f6835dda941 discord.abc.Messageable.fetch_message:13 of +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: bd18b40e6eb143dc97a468a9f8ca190a discord.abc.Messageable.fetch_message:14 of +msgid "Retrieving the message failed." +msgstr "" + +#: 4bbececd17ce4733aa89e7a128cc27cb discord.abc.Messageable.pins:3 of +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "" + +#: 19f6cad4e0a748608bac294104790fb3 discord.abc.Messageable.pins:7 of +msgid "" +"Due to a limitation with the Discord API, the :class:`.Message` objects " +"returned by this method do not contain complete " +":attr:`.Message.reactions` data." +msgstr "" + +#: 08f13fe21c66434ba1000150fb780040 discord.abc.Messageable.pins:11 of +msgid "The messages that are currently pinned." +msgstr "" + +#: discord.abc.Messageable.pins:12 e2d50204039c4ebbb8cb5794d26a930b of +msgid "List[:class:`~discord.Message`]" +msgstr "" + +#: 4cfb764c52fa4d2da0b34a29ae460acb discord.abc.Messageable.pins:14 of +msgid "Retrieving the pinned messages failed." +msgstr "" + +#: 97efca508c8545a0a10cee9651abdf07 discord.abc.Messageable.can_send:1 of +msgid "" +"Returns a :class:`bool` indicating whether you have the permissions to " +"send the object(s)." +msgstr "" + +#: 676c249107d744bea35ba99071b98e52 discord.abc.Messageable.can_send:3 of +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "" + +#: 73bfb2a074b84597bbe6ae500e1f8501 discord.abc.Messageable.can_send:6 of +msgid "An invalid type has been passed." +msgstr "" + +#: 207660df821e48deaf1a2c5b1759f812 discord.abc.Connectable:1 of +msgid "" +"An ABC that details the common operations on a channel that can connect " +"to a voice server." +msgstr "" + +#: 53703426ebb74318920660391f075491 discord.abc.Connectable:11 of +msgid "" +"This ABC is not decorated with :func:`typing.runtime_checkable`, so will " +"fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/application_commands.po b/docs/locales/en/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..0d7f65abfe --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,1849 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-12 14:51+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/application_commands.rst:4 b5bef56dc22e4024907f0ad2189496f0 +msgid "Application Commands" +msgstr "" + +#: ../../api/application_commands.rst:8 963047d00b9c4705b2c508ea059cbc84 +msgid "Command Permission Decorators" +msgstr "" + +#: da8262203adc4a9c9195749e22fca186 +#: discord.commands.permissions.default_permissions:1 of +msgid "" +"A decorator that limits the usage of an application command to members " +"with certain permissions." +msgstr "" + +#: 797b65f8f8274cc38a258f0e361b6f7e +#: discord.commands.permissions.default_permissions:4 of +msgid "" +"The permissions passed in must be exactly like the properties shown under" +" :class:`.discord.Permissions`." +msgstr "" + +#: 732445569fbe4b5abb9130e40d7fd143 +#: discord.commands.permissions.default_permissions:8 of +msgid "" +"These permissions can be updated by server administrators per-guild. As " +"such, these are only \"defaults\", as the name suggests. If you want to " +"make sure that a user **always** has the specified permissions " +"regardless, you should use an internal check such as " +":func:`~.ext.commands.has_permissions`." +msgstr "" + +#: ../../api/application_commands.rst 0b368aa254aa4b86a89105ba0e327415 +#: 235625d33ce645a7b043c3677e586ff9 2f82411ffec84c53bcd002c61cacf0de +#: 36bdb8c4ce3245f58c14273b19fd5d62 52bf2928121f4472b33d87c293c520da +#: 54d966885d634d83990edfce5e98bd30 62e059169acd42789ad242cd2083fa36 +#: 64675ca2cf37474fb4db23c7d15af9ab 7226b11745ba4ebd82c9da2a758ffeb5 +#: 9dfd81ba143848a1a20bebc948d1df16 a0e267ca8cbb4cdc92ee405b3a8b5906 +#: aea96c3c11354ac09ca840e760f27c54 c14ee1b991e847c999bf9442dbe40e1d +#: cad84173c056435d98f90e7005c27b55 eb72f0aca1244dea81410658346315d8 +msgid "Parameters" +msgstr "" + +#: discord.commands.permissions.default_permissions:13 +#: fe3a3eb41ae7453c8c76fe996fa9f277 of +msgid "An argument list of permissions to check for." +msgstr "" + +#: ../../api/application_commands.rst 10183c9a2d6e45fc9ffd212a67c67ee5 +#: 254924570d314fcfad7eec28414aa754 34f6fc248eea4c0486bab68b1ebdd1c5 +#: 466e0a2592dd47b6a53225e7c79ec12b 53ceb21104a641c484d4b8e7645d7b6d +#: 661e5de699854673aba3514ac463b12e 7bfccaa86ce54a64bf7d92ec6a576066 +#: 8b31e5c89bc94600b0402b4043851360 8f97231c3b074c83a4e0b711360aa13a +#: 9381c2802da0445eb460cb72496ecd58 96f7f9fedd3e4084838b9340c26d3781 +#: a2184453371145008ab8edb2bebc1828 b0facd7208864b9190e27e037ea8aa7b +#: c55cfd8217574ea6877c770ca4d590e1 c8daf70be35f4fcfaafc3aca82447190 +#: c99f60322d564ed586c09436e487f125 +msgid "Return type" +msgstr "" + +#: 2621196e617c4416b2ee3425087fb013 bb593fc55f5845e282c0678c4ca7c3a4 +#: d2975d1552964ea69abf9e2d9f2c34a1 +#: discord.commands.permissions.default_permissions:15 +#: discord.commands.permissions.guild_only:4 +#: discord.commands.permissions.is_nsfw:7 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr "" + +#: 170709aea05e4d6596430ecbcdc6b2ff 27314595e4ad42478ecac584522b5b5c +#: 56ccd2f7a26a431a88df94847e449b3c +#: discord.commands.permissions.default_permissions:18 +#: discord.commands.permissions.guild_only:7 +#: discord.commands.permissions.is_nsfw:10 of +msgid "Example" +msgstr "" + +#: df97a064550e4e33b11916afeef4ae71 discord.commands.permissions.guild_only:1 +#: of +msgid "" +"A decorator that limits the usage of an application command to guild " +"contexts. The command won't be able to be used in private message " +"channels." +msgstr "" + +#: b5580ad100f0493cb5162e2b598e7d5e discord.commands.permissions.is_nsfw:1 of +msgid "" +"A decorator that limits the usage of an application command to 18+ " +"channels and users. In guilds, the command will only be able to be used " +"in channels marked as NSFW. In DMs, users must have opted into age-" +"restricted commands via privacy settings." +msgstr "" + +#: 3b38db1261c540ed9b38b50b257ebf93 discord.commands.permissions.is_nsfw:5 of +msgid "" +"Note that apps intending to be listed in the App Directory cannot have " +"NSFW commands." +msgstr "" + +#: ../../api/application_commands.rst:21 a725df21cdd34f539047e9536c537892 +msgid "Commands" +msgstr "" + +#: ../../api/application_commands.rst:24 ../../api/application_commands.rst:68 +#: 456c801c48554014be173f2a5a16cbe8 7f6a87ba8b2c4cb783a577d4adf8ff82 +msgid "Shortcut Decorators" +msgstr "" + +#: 3cb707e319364046ba6f2ef6af0fc306 discord.commands.core.application_command:1 +#: of +msgid "" +"A decorator that transforms a function into an " +":class:`.ApplicationCommand`. More specifically, usually one of " +":class:`.SlashCommand`, :class:`.UserCommand`, or " +":class:`.MessageCommand`. The exact class depends on the ``cls`` " +"parameter. By default, the ``description`` attribute is received " +"automatically from the docstring of the function and is cleaned up with " +"the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it " +"is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute" +" also defaults to the function name unchanged." +msgstr "" + +#: 82b42afe09934b35b5443bc04a2b2a31 +#: discord.commands.core.application_command:13 of +msgid "" +"The class to construct with. By default, this is :class:`.SlashCommand`. " +"You usually do not change this." +msgstr "" + +#: discord.commands.core.application_command:17 +#: fe1f10e52d624dc9970ec9f9478becb5 of +msgid "" +"Keyword arguments to pass into the construction of the class denoted by " +"``cls``." +msgstr "" + +#: ../../api/application_commands.rst 1cb924fd415e4ddc9496206f971ced35 +#: 1f9a0fed83444d2d8cc1cb8f25d4f832 35882ccb7511412fa8a02fe91cb6a83c +#: 3de69d0bb23d41e1bdf1fc7ec71268b0 48a171e781d247f4be4cd083cd7b649a +#: 51571b876dcd4446b30ec38ef632db2c af727a1e0df74d818b684591442a53cb +#: be9cd2081e584a819bf1549f7325376d d2b91ddf551d443299606af43f270971 +#: dacfb5c6315c4fd8abe70b44fde4055d e860e3aa9c454db6bed32e3b32b70bf2 +msgid "Returns" +msgstr "" + +#: 5de61b114ef1402fa1afc797a823a6b0 +#: discord.commands.core.application_command:20 of +msgid "" +"A decorator that converts the provided method into an " +":class:`.ApplicationCommand`, or subclass of it." +msgstr "" + +#: 159c15c1b9114f6583215bac45623357 24179cdfea13469288bbb0caf076a82e +#: discord.commands.core.application_command:21 discord.commands.core.command:9 +#: of +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "" + +#: ../../api/application_commands.rst 31661879ced84eb38fdd4d6a898269f7 +#: 454861253a404ca6bc8c6eaaa62bc4c8 7c1227bd25ec4399acd53fe97346b37c +#: 85a0b34d9d504b9486cfd759b70a5269 da2632a415b247ba849b48310b8c9939 +msgid "Raises" +msgstr "" + +#: a2b10a34bc48445cb7547b3753e2d22d +#: discord.commands.core.application_command:23 of +msgid "If the function is not a coroutine or is already a command." +msgstr "" + +#: ad5e2ce4a65d4cc0a741ef3faa6ffe30 discord.commands.core.command:1 of +msgid "An alias for :meth:`application_command`." +msgstr "" + +#: 16ef3af73cd247bb82eab2f0d0a86833 discord.commands.core.command:4 of +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "" + +#: discord.commands.core.command:8 f5c240410616469db3e29b24ac97bb37 of +msgid "" +"A decorator that converts the provided method into an " +":class:`.ApplicationCommand`." +msgstr "" + +#: 8cd0e804deae471a957d22fb730f0d62 discord.commands.core.slash_command:1 of +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "" + +#: cf83ee0ad1984b10b9a2a1665f3baf2a discord.commands.core.slash_command:5 of +msgid "" +"A decorator that converts the provided method into a " +":class:`.SlashCommand`." +msgstr "" + +#: 3648e7b30ffa4a508caa6eb5fd8dd3c3 discord.commands.core.slash_command:6 of +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "" + +#: 94a75693b49d4729a08c55224a6635e3 discord.commands.core.user_command:1 of +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "" + +#: a34c5627137a4a6abbee91d8ef916da5 discord.commands.core.user_command:5 of +msgid "" +"A decorator that converts the provided method into a " +":class:`.UserCommand`." +msgstr "" + +#: 1a5230d2f97b4c4088a308912ad57d76 discord.commands.core.user_command:6 of +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "" + +#: 64dea31eec8149c9bc5aa4611ae732d0 discord.commands.core.message_command:1 of +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "" + +#: b06aa2c156234565b94cc7a9adc52354 discord.commands.core.message_command:5 of +msgid "" +"A decorator that converts the provided method into a " +":class:`.MessageCommand`." +msgstr "" + +#: 8fe7341163d9401f8749dbb5d7ed7952 discord.commands.core.message_command:6 of +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "" + +#: ../../api/application_commands.rst:42 ../../api/application_commands.rst:73 +#: 90d12871fc60443cab43a4d2a559062f f29d6e2aba484c70ac570333290b6b69 +msgid "Objects" +msgstr "" + +#: discord.commands.core.ApplicationCommand.is_on_cooldown:1 +#: e5824d49a8ec4fd58c46756aa4ec9a8c of +msgid "Checks whether the command is currently on cooldown." +msgstr "" + +#: 22f96d6322cd4a01843b0facf9a060c8 43592460bb624523b6b7dddc218d6418 +#: discord.commands.core.ApplicationCommand.get_cooldown_retry_after:5 +#: discord.commands.core.ApplicationCommand.is_on_cooldown:5 of +msgid "This uses the current time instead of the interaction time." +msgstr "" + +#: 48c966a97d1e4323aaf2c55e947af55b +#: discord.commands.core.ApplicationCommand.is_on_cooldown:8 of +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "" + +#: 109268d7b8734d31b6f6a78fc32cc37e +#: discord.commands.core.ApplicationCommand.is_on_cooldown:11 of +msgid "A boolean indicating if the command is on cooldown." +msgstr "" + +#: 1cd0f7372eb94a76a4c4eb766a807d99 1d938773f96a4ec29acb39fe95a085e1 +#: 469210f5cf914546997454d384d9029d 5f86ec376bce414983af08e853bde10c +#: 6c64647e98224b3580a97a6971e0460f +#: discord.commands.core.ApplicationCommand.is_on_cooldown:12 +#: discord.commands.core.MessageCommand:31 +#: discord.commands.core.MessageCommand:38 +#: discord.commands.core.SlashCommand:58 discord.commands.core.SlashCommand:65 +#: discord.commands.core.SlashCommandGroup:38 +#: discord.commands.core.SlashCommandGroup:45 +#: discord.commands.core.UserCommand:31 discord.commands.core.UserCommand:38 +#: e46ea6aa9eee426bb7dfc66cd3cba65a of +msgid ":class:`bool`" +msgstr "" + +#: 4865f290a1c34beba2817f93eab500c5 +#: discord.commands.core.ApplicationCommand.reset_cooldown:1 of +msgid "Resets the cooldown on this command." +msgstr "" + +#: 53643f7f9ef1492a8092f43b8e5fc523 +#: discord.commands.core.ApplicationCommand.reset_cooldown:4 of +msgid "The invocation context to reset the cooldown under." +msgstr "" + +#: c8c22acd0edf4230bcd59ce97fe0e0bf +#: discord.commands.context.ApplicationContext.delete:14 +#: discord.commands.core.ApplicationCommand.reset_cooldown:7 +#: ea0c376e7639475c96884d6741d8e471 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 5786055907dd47e8aa0184ae5d9858cb +#: discord.commands.core.ApplicationCommand.get_cooldown_retry_after:1 of +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "" + +#: d765407e83ec4b058b4b301fce4072e3 +#: discord.commands.core.ApplicationCommand.get_cooldown_retry_after:8 of +msgid "The invocation context to retrieve the cooldown from." +msgstr "" + +#: 91fcc0e4733b45df860a71abe4390a06 +#: discord.commands.core.ApplicationCommand.get_cooldown_retry_after:11 of +msgid "" +"The amount of time left on this command's cooldown in seconds. If this is" +" ``0.0`` then the command isn't on cooldown." +msgstr "" + +#: discord.commands.core.ApplicationCommand.get_cooldown_retry_after:13 +#: e5f76f402c5749b58d8def0d7b027cd7 of +msgid ":class:`float`" +msgstr "" + +#: 85341dba3db7499bbc2e89d1674b185a +#: discord.commands.core.ApplicationCommand.error:1 of +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "" + +#: 989d30b8f9a848129807a4f4a5055d14 +#: discord.commands.core.ApplicationCommand.error:3 of +msgid "" +"A local error handler is an :func:`.on_command_error` event limited to a " +"single command. However, the :func:`.on_command_error` is still invoked " +"afterwards as the catch-all." +msgstr "" + +#: 5fc1de69a66a4f1782fbbda61bfbd616 +#: discord.commands.core.ApplicationCommand.error:8 of +msgid "The coroutine to register as the local error handler." +msgstr "" + +#: 195c64eb9cf94087be8baf2674ba96a2 69cdb18feeb7405c8d90991e2504ff43 +#: discord.commands.core.ApplicationCommand.after_invoke:13 +#: discord.commands.core.ApplicationCommand.before_invoke:13 +#: discord.commands.core.ApplicationCommand.error:11 +#: ee192f4da1984910bb904352619efac9 of +msgid "The coroutine passed is not actually a coroutine." +msgstr "" + +#: 9ccf990d16f34941828a6515cc6f831d +#: discord.commands.core.ApplicationCommand.has_error_handler:1 of +msgid "Checks whether the command has an error handler registered." +msgstr "" + +#: aa27a8c0af014a0d8c7b4f3d6eb24ed9 +#: discord.commands.core.ApplicationCommand.has_error_handler:4 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 74e0ecf9b20d47e4ae7716f3cf075065 +#: discord.commands.core.ApplicationCommand.before_invoke:1 of +msgid "" +"A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke" +" hook is called directly before the command is called. This makes it a " +"useful function to set up database connections or any type of set up " +"required." +msgstr "" + +#: 9433b4a378614120ac4f31f90266b22e +#: discord.commands.core.ApplicationCommand.before_invoke:6 of +msgid "" +"This pre-invoke hook takes a sole parameter, an " +":class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more " +"info." +msgstr "" + +#: 6b73c4f26de94db6b23222b72e7033a8 +#: discord.commands.core.ApplicationCommand.before_invoke:10 of +msgid "The coroutine to register as the pre-invoke hook." +msgstr "" + +#: 9ebaa0682ce8427187430baa7a30a62a +#: discord.commands.core.ApplicationCommand.after_invoke:1 of +msgid "" +"A decorator that registers a coroutine as a post-invoke hook. A post-" +"invoke hook is called directly after the command is called. This makes it" +" a useful function to clean-up database connections or any type of clean " +"up required." +msgstr "" + +#: 8a42dbff4d8c4c50bff5f0d280665b55 +#: discord.commands.core.ApplicationCommand.after_invoke:6 of +msgid "" +"This post-invoke hook takes a sole parameter, an " +":class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more " +"info." +msgstr "" + +#: discord.commands.core.ApplicationCommand.after_invoke:10 +#: ff065a961e3349d899a4f61dc14101c1 of +msgid "The coroutine to register as the post-invoke hook." +msgstr "" + +#: 38de70f34b1f42c7a6b8db99f5580b96 +#: discord.ApplicationCommand.full_parent_name:1 of +msgid "Retrieves the fully qualified parent command name." +msgstr "" + +#: ca09f438cfef40768c157b677b5ac3ac +#: discord.ApplicationCommand.full_parent_name:3 of +msgid "" +"This the base command name required to execute it. For example, in ``/one" +" two three`` the parent name would be ``one two``." +msgstr "" + +#: 3c6db7d1726b459190301e3810022172 discord.ApplicationCommand.qualified_name:1 +#: of +msgid "Retrieves the fully qualified command name." +msgstr "" + +#: discord.ApplicationCommand.qualified_name:3 ffcb16ee006d4bcda5eb72e7313ac7d9 +#: of +msgid "" +"This is the full parent name with the command name as well. For example, " +"in ``/one two three`` the qualified name would be ``one two three``." +msgstr "" + +#: discord.ApplicationCommand.qualified_id:1 ee3fbd20f3e34193b2f31f0c6570c05e +#: of +msgid "Retrieves the fully qualified command ID." +msgstr "" + +#: c967bb36bdac4affbd4cb3fa91587415 discord.ApplicationCommand.qualified_id:3 +#: of +msgid "" +"This is the root parent ID. For example, in ``/one two three`` the " +"qualified ID would return ``one.id``." +msgstr "" + +#: 41fd24c1ab6b4016b6615a8b699a0bb9 discord.commands.core.SlashCommand:1 of +msgid "A class that implements the protocol for a slash command." +msgstr "" + +#: 6bf0393672874d60ace4dad3aeff4e49 bb14163d838f4df5be0e9d0ed62b84d9 +#: discord.commands.core.MessageCommand:3 discord.commands.core.SlashCommand:3 +#: discord.commands.core.UserCommand:3 of +msgid "" +"These are not created manually, instead they are created via the " +"decorator or functional interface." +msgstr "" + +#: 3d0e2ed16525455d96c8cb1edadb5bc9 67aaf53865d34b4eab081611d1af6dda +#: discord.commands.core.MessageCommand:8 discord.commands.core.SlashCommand:10 +#: discord.commands.core.SlashCommandGroup:8 +#: discord.commands.core.UserCommand:8 ed6cdb67d88c45f4a8824353790cf8fa of +msgid "The name of the command." +msgstr "" + +#: 105bde31bfd1417f987e4b7508657466 126aeaeefbb74756bd0d4c3712f68106 +#: 1d48447ce4dd4b40b0a9168a6c0a741d 2942f73e141945c5b9e84e3edfe83610 +#: 32ab576baabd4da4aa50f054bac960fa 4f19817a7d6541e3ac62dfb873551675 +#: 55edae3110864faaa4f01ec37013384d 596eaab5c9b44f7b966904a10dd285a1 +#: 65589f4eefce486783298b62563c29e6 69ca3d2c2367457d80020171f7956f20 +#: 78fbd9eecfff4a74921c5676a3badb3f 7e705d84c94d4d27988a51bd99c66d40 +#: 82d9281a794342ca80ecedb36ce845e8 8d8e59d3422e4073b73af34dec59df56 +#: 90b11fa54ccf460eb6ef527c265a5be3 94eb1b4764b941a09dbf0a90e5abab6d +#: a1abbc14d2b2467da83e741de3dfdf76 a2e513d5b07b4dfaaa4d578776fe3d5b +#: b033a7a3b7224e2ca5d25b6b39f19909 b458a250a6b34994b97107d1e2913f34 +#: b880b344500049db96d5e21f275c6531 cc22d99cfe4343559ceb67784268ad07 +#: cfb0e3fdd30c4752aa18bb3bb3051aa8 d346586079e040aeaa3ce95efc7de925 +#: da86647139e241c9b5091ecda8d8a7a3 discord.commands.context.ApplicationContext +#: discord.commands.context.AutocompleteContext +#: discord.commands.core.MessageCommand discord.commands.core.SlashCommand +#: discord.commands.core.SlashCommandGroup discord.commands.core.UserCommand +#: discord.commands.options.Option discord.commands.options.OptionChoice +#: discord.commands.options.option f2e9e70af4b14850a489ad1bc26923a7 +#: f422915c4028467f9272f041e90ac356 f4d4ca31df8b4d2196f56fbf4bb71e61 +#: fa5207c6c9a346c4a604a81b19fa4efc fe884d1963e24986a26db506c9fe20dd of +msgid "type" +msgstr "" + +#: 49221d04f03b4b12a9d0c0a9c637ef9a b2ced8f32ef84169b7d0feed3cfdffb8 +#: discord.commands.core.MessageCommand:10 +#: discord.commands.core.SlashCommand:12 discord.commands.core.SlashCommand:49 +#: discord.commands.core.SlashCommandGroup:10 +#: discord.commands.core.UserCommand:10 discord.commands.options.Option:16 +#: discord.commands.options.OptionChoice:9 discord.commands.options.option:10 +#: e1a8d5b422ad43aa838454c7a548d093 e73d6cccfb5e4378b06a018f2cb3a728 of +msgid ":class:`str`" +msgstr "" + +#: d7c8826678824334acd35d914ce6d3da discord.commands.core.MessageCommand:14 +#: discord.commands.core.SlashCommand:16 discord.commands.core.UserCommand:14 +#: eb1bd96acf84423f9aeaf5c3aef8d405 of +msgid "The coroutine that is executed when the command is called." +msgstr "" + +#: 7a48bea72ed14e6ca0b55c39805de1e2 94656ea4509f484995757bcea3759b36 +#: discord.commands.core.MessageCommand:16 +#: discord.commands.core.SlashCommand:18 discord.commands.core.UserCommand:16 +#: of +msgid ":ref:`coroutine `" +msgstr "" + +#: a1a8e38c697444e686ead501a98d1164 ca717fd502eb4d4eb6bcad8d95da302c +#: discord.commands.core.SlashCommand:22 +#: discord.commands.core.SlashCommandGroup:14 of +msgid "The description for the command." +msgstr "" + +#: 219ed0b9b95f4158a6f0a49a5ce2decb 457e3625a42542f28892b83df6b3d440 +#: 4c502354c8d74bf7b7c8f98c11b6a5bd discord.commands.core.SlashCommand:24 +#: discord.commands.core.SlashCommandGroup:16 +#: discord.commands.options.Option:23 of +msgid "Optional[:class:`str`]" +msgstr "" + +#: 64a250a8f0ac40d4aecc323b2ac9a050 77e0016800534470945d60987fed7899 +#: d206fd0ddbb94163a1152cfc1c826c06 discord.commands.core.MessageCommand:20 +#: discord.commands.core.SlashCommand:28 +#: discord.commands.core.SlashCommandGroup:20 +#: discord.commands.core.UserCommand:20 of +msgid "The ids of the guilds where this command will be registered." +msgstr "" + +#: 2b5abad428324601971b5a7d306bdc79 a8524dff9e6d4ac8a3a4b6229ad12e63 +#: c586c88145e24838a7a0f08feae5b3db discord.commands.core.MessageCommand:22 +#: discord.commands.core.SlashCommand:30 +#: discord.commands.core.SlashCommandGroup:22 +#: discord.commands.core.UserCommand:22 of +msgid "Optional[List[:class:`int`]]" +msgstr "" + +#: c8c15229d16d4fc89b3f7e19cf7180b6 discord.commands.core.SlashCommand:34 of +msgid "The parameters for this command." +msgstr "" + +#: 75862e9bf0b84d2897d613fc7e3fe683 discord.commands.core.SlashCommand:36 of +msgid "List[:class:`Option`]" +msgstr "" + +#: discord.commands.core.SlashCommand:40 fa69b266672c4ec99ee70ac16be2a608 of +msgid "" +"The parent group that this command belongs to. ``None`` if there isn't " +"one." +msgstr "" + +#: 66350ee1c0624f379d399a081ac541e8 b2cb8c97a7a84023a2de84bcf4d91e50 +#: discord.commands.core.SlashCommand:43 +#: discord.commands.core.SlashCommandGroup:29 of +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "" + +#: b3c411e124ea4def938df41c39d0adac discord.commands.core.SlashCommand:47 of +msgid "Returns a string that allows you to mention the slash command." +msgstr "" + +#: 243e82cb8df04a368273abf6f3e337e6 90c2f3e57f6b4b12a2db96f0229f59a6 +#: aedee1abd900459caa0824d9395135f2 discord.commands.core.MessageCommand:26 +#: discord.commands.core.SlashCommand:53 +#: discord.commands.core.SlashCommandGroup:33 +#: discord.commands.core.SlashCommandGroup.create_subgroup:13 +#: discord.commands.core.UserCommand:26 fe40b49ec6f643979b0a4dc4f8f53c79 of +msgid "Whether the command should only be usable inside a guild." +msgstr "" + +#: 04acf48e5dc641f2b7369a4dc4d0eb3c 3083ae8030e942ea85aab949de3ad70d +#: discord.commands.core.SlashCommand:55 +#: discord.commands.core.SlashCommandGroup:35 of +msgid "Use the :attr:`contexts` parameter instead." +msgstr "" + +#: 3f98034506304fa5adcbcb706311be39 6d50a38d0a17491a8badbba7e2e94860 +#: a1c4ecc9455b4ba4bf4c25be0df33521 c1b7134cf52d42c2950bd14e6152aed8 +#: discord.commands.core.MessageCommand:35 +#: discord.commands.core.SlashCommand:62 +#: discord.commands.core.SlashCommandGroup:42 +#: discord.commands.core.SlashCommandGroup.create_subgroup:15 +#: discord.commands.core.UserCommand:35 of +msgid "" +"Whether the command should be restricted to 18+ channels and users. Apps " +"intending to be listed in the App Directory cannot have NSFW commands." +msgstr "" + +#: 4093e966648f402ab9e9a3821479bc17 59b49969a86549fe97fef27fa01c037d +#: 6b3bc7e04f3640fbbc49a1f5f1444291 d0cf02f6c33d40f480e6dcdfa59e5bed +#: discord.commands.core.MessageCommand:42 +#: discord.commands.core.SlashCommand:69 +#: discord.commands.core.SlashCommandGroup:49 +#: discord.commands.core.SlashCommandGroup.create_subgroup:18 +#: discord.commands.core.UserCommand:42 of +msgid "The default permissions a member needs to be able to run the command." +msgstr "" + +#: 128da93392f74a34b75d9da47a07e5d3 5fd417671e594f12bbdb4eebee581649 +#: c8f15213fe404ecc80f0efbad85ce25f discord.commands.core.MessageCommand:44 +#: discord.commands.core.SlashCommand:71 +#: discord.commands.core.SlashCommandGroup:51 +#: discord.commands.core.UserCommand:44 of +msgid ":class:`~discord.Permissions`" +msgstr "" + +#: 5f2fbe31f5d74ba7a5419816d2ee36a0 bd5e5e0d5f4b411c8e40eab4878085bc +#: discord.commands.core.MessageCommand:48 +#: discord.commands.core.SlashCommand:75 discord.commands.core.UserCommand:48 +#: of +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "" + +#: aa48e1fdf4ed4288b34a01330ba573c1 b34d5a804a5b4cf6afadd914bfc11a59 +#: discord.commands.core.MessageCommand:50 +#: discord.commands.core.SlashCommand:77 discord.commands.core.UserCommand:50 +#: of +msgid "Optional[:class:`Cog`]" +msgstr "" + +#: 0b88f443adf9434cab24c10d11dd4d90 1d352bc3635141cda4848e4fb7e0973e +#: 99e057769f604564828ec66970d09051 d9d5c1770b794a5aa348922c71a848cd +#: discord.commands.core.MessageCommand:54 +#: discord.commands.core.SlashCommand:81 +#: discord.commands.core.SlashCommandGroup:55 +#: discord.commands.core.SlashCommandGroup.create_subgroup:20 +#: discord.commands.core.UserCommand:54 of +msgid "" +"A list of predicates that verifies if the command could be executed with " +"the given :class:`.ApplicationContext` as the sole parameter. If an " +"exception is necessary to be thrown to signal failure, then one inherited" +" from :exc:`.ApplicationCommandError` should be used. Note that if the " +"checks fail then :exc:`.CheckFailure` exception is raised to the " +":func:`.on_application_command_error` event." +msgstr "" + +#: 67af798da00f47a391dffbdf1d1b782b ad45d2349ec14cf6a18c5b8b7dc2a062 +#: discord.commands.core.MessageCommand:61 +#: discord.commands.core.SlashCommand:88 +#: discord.commands.core.SlashCommandGroup:62 +#: discord.commands.core.UserCommand:61 ec1f97a3576f474d878bf3caa4bef5f8 of +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "" + +#: 1942d1f115bd4ac0a990bf73d0a49126 1abebabad8514274a040cb70960603ce +#: discord.commands.core.MessageCommand:65 +#: discord.commands.core.SlashCommand:92 discord.commands.core.UserCommand:65 +#: of +msgid "" +"The cooldown applied when the command is invoked. ``None`` if the command" +" doesn't have a cooldown." +msgstr "" + +#: 4403e107ddec48139ba57ac55414cb0d 58f857b842d14e26b594f8771048b67f +#: discord.commands.core.MessageCommand:68 +#: discord.commands.core.SlashCommand:95 discord.commands.core.UserCommand:68 +#: of +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "" + +#: 21ed930c27b2453195f0faa34f14457e 4c7491a6786349beb7d12103568687d9 +#: 6e99029583a841a9ab1d74653b3b85ac 808dd134efa0495ea9b213fcf9b366a3 +#: 8aeea10a4b16406bb4fabc8f5e266f29 discord.commands.core.MessageCommand:72 +#: discord.commands.core.SlashCommand:99 +#: discord.commands.core.SlashCommandGroup:66 +#: discord.commands.core.SlashCommandGroup.create_subgroup:27 +#: discord.commands.core.UserCommand:72 of +msgid "" +"The name localizations for this command. The values of this should be " +"``\"locale\": \"name\"``. See `here " +"`_ for a list of " +"valid locales." +msgstr "" + +#: 023e1e7e67f84b929dedc87e98bf488f 7897fe9f532240669b41fd64f8d327df +#: 7f013ded205c49e4a449eb1a8356e3b8 94ef4db9991241619146371c2d241eec +#: 9fb8440c83b64b5da889a607e563f44c discord.commands.core.MessageCommand:75 +#: discord.commands.core.SlashCommand:102 +#: discord.commands.core.SlashCommand:109 +#: discord.commands.core.SlashCommandGroup:69 +#: discord.commands.core.SlashCommandGroup:76 +#: discord.commands.core.UserCommand:75 discord.commands.options.Option:99 +#: discord.commands.options.Option:106 discord.commands.options.OptionChoice:22 +#: of +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "" + +#: 232bbcc643034214afd2c8bf7793034c 465be0fc2ca64e46ab11324883be8c39 +#: 9f23516b8763437599e6707336f93a13 b589efc99cfc492e9e2d1b0070562e2c +#: discord.commands.core.SlashCommand:106 +#: discord.commands.core.SlashCommandGroup:73 +#: discord.commands.core.SlashCommandGroup.create_subgroup:30 of +msgid "" +"The description localizations for this command. The values of this should" +" be ``\"locale\": \"description\"``. See `here " +"`_ for a list of " +"valid locales." +msgstr "" + +#: 5d7c88e616bd457884fb476a7d2f4ab0 709b29ca67a54df18bd7293c19e29cf2 +#: discord.commands.core.SlashCommand:113 +#: discord.commands.core.SlashCommandGroup:80 of +msgid "" +"The type of installation this command should be available to. For " +"instance, if set to :attr:`IntegrationType.user_install`, the command " +"will only be available to users with the application installed on their " +"account. Unapplicable for guild commands." +msgstr "" + +#: 667c0fef77a5473cb31b94fd02113660 6eb640cae00c453a89aab91f7b489f5b +#: bde9fd66a882485c806403a935a2799b discord.commands.core.MessageCommand:81 +#: discord.commands.core.SlashCommand:117 +#: discord.commands.core.SlashCommandGroup:84 +#: discord.commands.core.UserCommand:81 of +msgid "Set[:class:`IntegrationType`]" +msgstr "" + +#: 69dad4ce1f7b4caab795a3f006adcd96 discord.commands.core.SlashCommand:121 of +msgid "" +"The location where this command can be used. Cannot be set if this is a " +"guild command." +msgstr "" + +#: 5f7622e9d98e4fa78b9fdc2edd148970 discord.commands.core.MessageCommand:87 +#: discord.commands.core.SlashCommand:123 +#: discord.commands.core.SlashCommandGroup:90 +#: discord.commands.core.UserCommand:87 e4cf9dee7685447693343bc155de82b8 +#: fca44b50de0b4821acb8f06f88efc30b of +msgid "Set[:class:`InteractionContextType`]" +msgstr "" + +#: 31d87139a8b540bc9e1c77b8b1829f09 discord.commands.core.MessageCommand.copy:1 +#: discord.commands.core.SlashCommand.copy:1 +#: discord.commands.core.UserCommand.copy:1 e09041a18e2048f885c27f005740a3b7 of +msgid "Creates a copy of this command." +msgstr "" + +#: a8105025c5e2494aa3f98b742ce48850 be0630b9503f4c4fa51e83cc51cb43de +#: discord.commands.core.MessageCommand.copy:3 +#: discord.commands.core.SlashCommand.copy:3 +#: discord.commands.core.UserCommand.copy:3 of +msgid "A new instance of this command." +msgstr "" + +#: 0be8c140c01d413fa23ff654727f9145 discord.commands.core.SlashCommand.copy:4 +#: of +msgid ":class:`SlashCommand`" +msgstr "" + +#: 3926a5a0cdd54defa1b2dcae0f38112e discord.commands.core.SlashCommandGroup:1 +#: of +msgid "A class that implements the protocol for a slash command group." +msgstr "" + +#: 86b3efd9357249c382571006517aadb2 discord.commands.core.SlashCommandGroup:3 +#: of +msgid "" +"These can be created manually, but they should be created via the " +"decorator or functional interface." +msgstr "" + +#: 1ba00e6c6a9c4381845f27b44a09f0a3 discord.commands.core.SlashCommandGroup:26 +#: of +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "" + +#: 86feaefaaaf34288af79998e7d3eb3a9 discord.commands.core.SlashCommandGroup:88 +#: of +msgid "" +"The location where this command can be used. Unapplicable for guild " +"commands." +msgstr "" + +#: 7a10b1d79da74255bdd7a7e59b681aa6 +#: discord.commands.core.SlashCommandGroup.create_subgroup:1 of +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "" + +#: discord.commands.core.SlashCommandGroup.create_subgroup:4 +#: f0a5c570cc0640daaab5e1d358b07b15 of +msgid "The name of the group to create." +msgstr "" + +#: 03f96678c3fe4b73a5300b9b76942114 +#: discord.commands.core.SlashCommandGroup.create_subgroup:7 +#: discord.commands.core.SlashCommandGroup.subgroup:10 +#: e19cf1315db44335b86b91dc9de63e5b of +msgid "The description of the group to create." +msgstr "" + +#: 07c545d36d2845a09d3492826661765e +#: discord.commands.core.SlashCommandGroup.create_subgroup:10 +#: discord.commands.core.SlashCommandGroup.subgroup:13 +#: e16839754dd74ff0b55c2565c7a3bbfb of +msgid "" +"A list of the IDs of each guild this group should be added to, making it " +"a guild command. This will be a global command if ``None`` is passed." +msgstr "" + +#: 0097a80d2c364ccea8530212bdc8538a 50bd9f43948a48cda18b0348eeacf075 +#: discord.commands.core.SlashCommandGroup.create_subgroup:34 +#: discord.commands.core.SlashCommandGroup.subgroup:17 of +msgid "The slash command group that was created." +msgstr "" + +#: 110713e4d85d40cd8deed214a911e308 +#: discord.commands.core.SlashCommandGroup.subgroup:1 of +msgid "" +"A shortcut decorator that initializes the provided subclass of " +":class:`.SlashCommandGroup` as a subgroup." +msgstr "" + +#: ad149ced4c7d487494e7d269414157b3 +#: discord.commands.core.SlashCommandGroup.subgroup:7 of +msgid "" +"The name of the group to create. This will resolve to the name of the " +"decorated class if ``None`` is passed." +msgstr "" + +#: 9c71c512414541089ea38638c3dde77f +#: discord.commands.core.SlashCommandGroup.walk_commands:1 of +msgid "" +"An iterator that recursively walks through all slash commands and groups " +"in this group." +msgstr "" + +#: 7d6810cb23814948bfd06437dddc2d2a +#: discord.commands.core.SlashCommandGroup.walk_commands of +msgid "Yields" +msgstr "" + +#: 626e588005a54eccbe4bbd0263385625 +#: discord.commands.core.SlashCommandGroup.walk_commands:3 of +msgid "" +":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash " +"command or slash command group from the group." +msgstr "" + +#: 2030810b53b74013855efa8e43381af4 +#: discord.commands.core.SlashCommandGroup.copy:1 of +msgid "Creates a copy of this command group." +msgstr "" + +#: a0a6be77abba47a6afbd4561554df107 +#: discord.commands.core.SlashCommandGroup.copy:3 of +msgid "A new instance of this command group." +msgstr "" + +#: dc5f23a83726415ca441522fcf41075c +#: discord.commands.core.SlashCommandGroup.copy:4 of +msgid ":class:`SlashCommandGroup`" +msgstr "" + +#: 86543ac679bf4bb992a6ca78b1197fda discord.commands.core.UserCommand:1 of +msgid "A class that implements the protocol for user context menu commands." +msgstr "" + +#: discord.commands.core.MessageCommand:28 discord.commands.core.UserCommand:28 +#: f5cc870407294386a12e5e92859cf1ba of +msgid "Use the ``contexts`` parameter instead." +msgstr "" + +#: discord.commands.core.MessageCommand:79 discord.commands.core.UserCommand:79 +#: e5ac68f43e54493b955c34ffa4045d84 of +msgid "" +"The installation contexts where this command is available. Unapplicable " +"for guild commands." +msgstr "" + +#: discord.commands.core.MessageCommand:85 discord.commands.core.UserCommand:85 +#: f07350db291c4c9eb79da175bcf9ccd0 of +msgid "" +"The interaction contexts where this command is available. Unapplicable " +"for guild commands." +msgstr "" + +#: 0d24d6d88aa94aa59018232cc846f80a discord.commands.core.UserCommand.copy:4 of +msgid ":class:`UserCommand`" +msgstr "" + +#: 3a43c2f228a14e06a35102516117c170 discord.commands.core.MessageCommand:1 of +msgid "A class that implements the protocol for message context menu commands." +msgstr "" + +#: 1e28dc4b29a24786a69df8ff2df47b97 discord.commands.core.MessageCommand.copy:4 +#: of +msgid ":class:`MessageCommand`" +msgstr "" + +#: ../../api/application_commands.rst:65 0d9d93397a80433d9df6280b37e9cf0b +msgid "Options" +msgstr "" + +#: 0130075e1ddf4a318c804b668301c131 discord.commands.options.option:1 of +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "" + +#: c2a9f34a52a64a518c507218e1d9de01 discord.commands.options.option:7 of +msgid "" +"The name of the target function parameter this option is mapped to. This " +"allows you to have a separate UI ``name`` and parameter name." +msgstr "" + +#: 1e9056c43c884b5199898e497949e25d discord.commands.options.Option:1 of +msgid "Represents a selectable option for a slash command." +msgstr "" + +#: 75bfc064c11744c99eac785fa3f2ff23 discord.commands.options.Option:5 of +msgid "" +"The type of input that is expected for this option. This can be a " +":class:`SlashCommandOptionType`, an associated class, a channel type, a " +":class:`Converter`, a converter class or an :class:`enum.Enum`. If a " +":class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` " +"will be automatically filled. If the :class:`enum.Enum` has more than 25 " +"values, :attr:`autocomplete` will be implemented with " +":func:`discord.utils.basic_autocomplete` instead." +msgstr "" + +#: 593026b5a1fc40e4a80311b243cb7877 discord.commands.options.Option:9 of +msgid "" +"Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], " +"Type[:class:`float`], Type[:class:`.abc.GuildChannel`], " +"Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], " +"Type[:class:`Attachment`], Type[:class:`Role`], " +"Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, " +"Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], " +"Type[:class:`Enum`]]" +msgstr "" + +#: c8d02ef8523442db84373cc1d2e0f28a discord.commands.options.Option:13 of +msgid "" +"The name of this option visible in the UI. Inherits from the variable " +"name if not provided as a parameter." +msgstr "" + +#: 3259bdeac333496c8faa60dc608eb5bb discord.commands.options.Option:20 of +msgid "" +"The description of this option. Must be 100 characters or fewer. If " +":attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not" +" specified, :attr:`input_type`'s docstring will be used." +msgstr "" + +#: 8e4ceb8ea36443469f1f85747c903c87 discord.commands.options.Option:27 of +msgid "" +"The list of available choices for this option. Can be a list of values or" +" :class:`OptionChoice` objects (which represent a name:value pair). If " +"provided, the input from the user must match one of the choices in the " +"list." +msgstr "" + +#: discord.commands.options.Option:31 fe9b03d557c84b05b541b96464195697 of +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "" + +#: 2e528dec6b9b4726961a48ce6fe92acc discord.commands.options.Option:35 of +msgid "Whether this option is required." +msgstr "" + +#: 000b0bda94bd42cfb1633ef646d23a12 discord.commands.options.Option:37 of +msgid "Optional[:class:`bool`]" +msgstr "" + +#: a02cb6965835437f949bf2191a6fb459 discord.commands.options.Option:41 of +msgid "" +"The default value for this option. If provided, ``required`` will be " +"considered ``False``." +msgstr "" + +#: 7d22d3c43d274365972d6535159232dc discord.commands.options.Option:43 of +msgid "Optional[:class:`Any`]" +msgstr "" + +#: a47d1621967a4f648c720a1a3111eccc discord.commands.options.Option:47 of +msgid "" +"The minimum value that can be entered. Only applies to Options with an " +":attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "" + +#: 08ccceedd6f14b3f8c7d1509b11157a9 discord.commands.options.Option:50 +#: discord.commands.options.Option:57 discord.commands.options.Option:64 +#: discord.commands.options.Option:71 of +msgid "Optional[:class:`int`]" +msgstr "" + +#: 31ea4924990843f8adfbf6e88a51d7fd discord.commands.options.Option:54 of +msgid "" +"The maximum value that can be entered. Only applies to Options with an " +":attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "" + +#: db3a329f3a3f417ba0ae05f79aeade46 discord.commands.options.Option:61 of +msgid "" +"The minimum length of the string that can be entered. Must be between 0 " +"and 6000 (inclusive). Only applies to Options with an :attr:`input_type` " +"of :class:`str`." +msgstr "" + +#: discord.commands.options.Option:68 fe01838097b34805b0b2a859034446dd of +msgid "" +"The maximum length of the string that can be entered. Must be between 1 " +"and 6000 (inclusive). Only applies to Options with an :attr:`input_type` " +"of :class:`str`." +msgstr "" + +#: b16be74fd64a4d818577dc51a2d75445 discord.commands.options.Option:75 of +msgid "" +"The autocomplete handler for the option. Accepts a callable (sync or " +"async) that takes a single argument of :class:`AutocompleteContext`. The " +"callable must return an iterable of :class:`str` or " +":class:`OptionChoice`. Alternatively, " +":func:`discord.utils.basic_autocomplete` may be used in place of the " +"callable." +msgstr "" + +#: 96075db6b84448e8ae59a0aaf54aa561 discord.commands.options.Option:82 of +msgid "Does not validate the input value against the autocomplete results." +msgstr "" + +#: 6b97e34cbdd640fc848c3a62b0ce3ea3 discord.commands.options.Option:84 of +msgid "" +"Optional[Callable[[:class:`.AutocompleteContext`], " +"Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`]," +" Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "" + +#: discord.commands.options.Option:88 efe2d8d761e245b5b1cbca504fe5a3b6 of +msgid "" +"A list of channel types that can be selected in this option. Only applies" +" to Options with an :attr:`input_type` of " +":class:`discord.SlashCommandOptionType.channel`. If this argument is " +"used, :attr:`input_type` will be ignored." +msgstr "" + +#: 3895aa7de025406b82492d8871b80352 discord.commands.options.Option:92 of +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "" + +#: dbae42fcf31241ada80858c6674efcfc discord.commands.options.Option:96 of +msgid "" +"The name localizations for this option. The values of this should be " +"``\"locale\": \"name\"``. See `here " +"`_ for a list of " +"valid locales." +msgstr "" + +#: 3d90448f536f49ed990f5e5cb38b5f0a discord.commands.options.Option:103 of +msgid "" +"The description localizations for this option. The values of this should " +"be ``\"locale\": \"description\"``. See `here " +"`_ for a list of " +"valid locales." +msgstr "" + +#: 73185a2e6c6e4d739ed5f24132cf9742 discord.commands.options.Option:109 of +msgid "Examples" +msgstr "" + +#: cc7ba7cb42254be2b8f3f28c2631f7b6 discord.commands.options.Option:110 of +msgid "Basic usage: ::" +msgstr "" + +#: 058fb547f7e048828c72114ef59e3b91 discord.commands.options.ThreadOption:1 of +msgid "" +"Represents a class that can be passed as the ``input_type`` for an " +":class:`Option` class." +msgstr "" + +#: 11b1db26d5f242b89c1358190f5c8a6b discord.commands.options.ThreadOption:6 of +msgid "The thread type to expect for this options input." +msgstr "" + +#: 032809522c5048eb89074eb12f49ebc8 discord.commands.options.OptionChoice:1 of +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "" + +#: bd518b6ccee34ebe9742c780738d2419 discord.commands.options.OptionChoice:7 of +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "" + +#: a2f07edb1eef44989abe7094570a69dc discord.commands.options.OptionChoice:13 of +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "" + +#: 3e81a8bc741042d78ff4dbbe111b99d1 discord.commands.options.OptionChoice:15 of +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "" + +#: 2ded24f7f3464286b1bdeb7668a8d8ac discord.commands.options.OptionChoice:19 of +msgid "" +"The name localizations for this choice. The values of this should be " +"``\"locale\": \"name\"``. See `here " +"`_ for a list of " +"valid locales." +msgstr "" + +#: ../../api/application_commands.rst:89 1532468326964e3a8f4778fffa6157f9 +msgid "Context Objects" +msgstr "" + +#: 615595b5b70b452096a0d3bf17be3fb3 +#: discord.commands.context.ApplicationContext:1 of +msgid "Represents a Discord application command interaction context." +msgstr "" + +#: c7eb010280b1438baa0b3bfa57aada25 +#: discord.commands.context.ApplicationContext:3 of +msgid "" +"This class is not created manually and is instead passed to application " +"commands as the first parameter." +msgstr "" + +#: 735d3b8688e648a5aaf59912c322ab40 +#: discord.commands.context.ApplicationContext:10 +#: discord.commands.context.AutocompleteContext:9 of +msgid "The bot that the command belongs to." +msgstr "" + +#: 825a171e7cc64dd2a99a0905e70528dc +#: discord.commands.context.ApplicationContext:12 +#: discord.commands.context.AutocompleteContext:11 of +msgid ":class:`.Bot`" +msgstr "" + +#: 5f80d2b271b94a57ac853c1925574447 +#: discord.commands.context.ApplicationContext:16 of +msgid "The interaction object that invoked the command." +msgstr "" + +#: 38ff2d92f89246838e966fd79f106c78 3c66cc9483d34081a22536fa12eccf5c +#: discord.ApplicationContext.send_response:48 +#: discord.commands.context.ApplicationContext:18 +#: discord.commands.context.AutocompleteContext:17 of +msgid ":class:`.Interaction`" +msgstr "" + +#: d6f68d1b5a754d4faff41bef78e15ad3 +#: discord.commands.context.ApplicationContext:22 +#: discord.commands.context.AutocompleteContext:21 of +msgid "The command that this context belongs to." +msgstr "" + +#: 731cda54c14a44f4a88a9bc501f056d7 +#: discord.commands.context.ApplicationContext:24 +#: discord.commands.context.AutocompleteContext:23 of +msgid ":class:`.ApplicationCommand`" +msgstr "" + +#: 68f22a8232be41a3b2b45d850414330f discord.ApplicationContext.defer:1 +#: discord.ApplicationContext.edit:1 discord.ApplicationContext.respond:1 +#: discord.ApplicationContext.send_followup:1 +#: discord.ApplicationContext.send_response:1 +#: discord.commands.context.ApplicationContext.delete:1 +#: discord.commands.context.ApplicationContext.invoke:1 of +msgid "|coro|" +msgstr "" + +#: 140199d2d8ca46f49bcf52390154703f +#: discord.commands.context.ApplicationContext.invoke:3 of +msgid "" +"Calls a command with the arguments given. This is useful if you want to " +"just call the callback that a :class:`.ApplicationCommand` holds " +"internally." +msgstr "" + +#: b49a2bc4dd68462fbb58bfb224685326 +#: discord.commands.context.ApplicationContext.invoke:9 of +msgid "" +"This does not handle converters, checks, cooldowns, pre-invoke, or after-" +"invoke hooks in any matter. It calls the internal callback directly as-if" +" it was a regular function. You must take care in passing the proper " +"arguments when using this function." +msgstr "" + +#: bfec2e6b68394ab198c335a849c17ba2 +#: discord.commands.context.ApplicationContext.invoke:16 of +msgid "The command that is going to be called." +msgstr "" + +#: 92ab2efc601041a5b5a340bce07ea766 +#: discord.commands.context.ApplicationContext.invoke:19 of +msgid "The arguments to use." +msgstr "" + +#: 777b8be609c64373bbf341f9900b74cb +#: discord.commands.context.ApplicationContext.invoke:21 of +msgid "The keyword arguments to use." +msgstr "" + +#: 438aa440953846879cfbfe87145d195c +#: discord.commands.context.ApplicationContext.invoke:23 of +msgid "The command argument to invoke is missing." +msgstr "" + +#: 5021455f669a48f38102c39a6acbab6a +#: discord.commands.context.ApplicationContext.invoke:25 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr "" + +#: ../../docstring b609dea40cc743b08e49d5c7be8c7bcb +#: discord.ApplicationContext.channel:1 of +msgid "" +"Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, " +":class:`Thread`]: Returns the channel associated with this context's " +"command. Shorthand for :attr:`.Interaction.channel`." +msgstr "" + +#: ../../docstring discord.ApplicationContext.channel_id:1 +#: e2e42bf39f034fa09a42af3e0df8cb7b of +msgid "" +"Returns the ID of the channel associated with this context's command. " +"Shorthand for :attr:`.Interaction.channel_id`." +msgstr "" + +#: ../../docstring 328542dec1c2423f82d4288770e7acfb +#: discord.ApplicationContext.guild:1 of +msgid "" +"Returns the guild associated with this context's command. Shorthand for " +":attr:`.Interaction.guild`." +msgstr "" + +#: ../../docstring 18c9865ad4024501a55ff86619379a13 +#: discord.ApplicationContext.guild_id:1 of +msgid "" +"Returns the ID of the guild associated with this context's command. " +"Shorthand for :attr:`.Interaction.guild_id`." +msgstr "" + +#: ../../docstring 4d0d154dfb024841ae4273ee278d35cb +#: discord.ApplicationContext.locale:1 of +msgid "" +"Returns the locale of the guild associated with this context's command. " +"Shorthand for :attr:`.Interaction.locale`." +msgstr "" + +#: ../../docstring 0f7171062ad34e40ba2a50d12af92493 +#: discord.ApplicationContext.guild_locale:1 of +msgid "" +"Returns the locale of the guild associated with this context's command. " +"Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "" + +#: ../../docstring discord.ApplicationContext.me:1 +#: fb27d9ced4754e0bba9315eda057f24d of +msgid "" +"Union[:class:`.Member`, :class:`.ClientUser`]: Similar to " +":attr:`.Guild.me` except it may return the :class:`.ClientUser` in " +"private message message contexts, or when :meth:`Intents.guilds` is " +"absent." +msgstr "" + +#: ../../docstring 360aae08d5ec4329a775a2b12cb73428 +#: discord.ApplicationContext.message:1 of +msgid "" +"Returns the message sent with this context's command. Shorthand for " +":attr:`.Interaction.message`, if applicable." +msgstr "" + +#: ../../docstring d233902b55f7474383181ef505b0deb0 +#: discord.ApplicationContext.author:1 discord.ApplicationContext.user:1 of +msgid "" +"Returns the user that sent this context's command. Shorthand for " +":attr:`.Interaction.user`." +msgstr "" + +#: 5e34a6aec3cd404da736946c09eef422 discord.ApplicationContext.voice_client:1 +#: of +msgid "" +"Returns the voice client associated with this context's command. " +"Shorthand for " +":attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if " +"applicable." +msgstr "" + +#: ../../docstring 57de46aa89ee401b90d87d96729b87d8 +#: discord.ApplicationContext.response:1 of +msgid "" +"Returns the response object associated with this context's command. " +"Shorthand for :attr:`.Interaction.response`." +msgstr "" + +#: b5efacea0c6d490588ed532029be97f3 +#: discord.ApplicationContext.selected_options:1 of +msgid "" +"The options and values that were selected by the user when sending the " +"command." +msgstr "" + +#: 2009dbc6355d49f988849abe62887432 +#: discord.ApplicationContext.selected_options:3 of +msgid "" +"A dictionary containing the options and values that were selected by the " +"user when the command was processed, if applicable. Returns ``None`` if " +"the command has not yet been invoked, or if there are no options defined " +"for that command." +msgstr "" + +#: 8ac4f572c7f54f3181360191f521eb43 +#: discord.ApplicationContext.selected_options:6 of +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "" + +#: 29e31a1123c242e1aa2b472c55404b69 +#: discord.ApplicationContext.unselected_options:1 of +msgid "The options that were not provided by the user when sending the command." +msgstr "" + +#: 5eacd869453c4caa94b8f1973d4bd707 +#: discord.ApplicationContext.unselected_options:3 of +msgid "" +"A list of Option objects (if any) that were not selected by the user when" +" the command was processed. Returns ``None`` if there are no options " +"defined for that command." +msgstr "" + +#: 55cf6af7b08a4f7c93e92c2ec39a8632 +#: discord.ApplicationContext.unselected_options:5 of +msgid "Optional[List[:class:`.Option`]]" +msgstr "" + +#: discord.ApplicationContext.send_modal:1 fcd8fc00fc3444d4a347984fd3b9ed1d of +msgid "" +"|coro| Responds to this interaction by sending a modal dialog. This " +"cannot be used to respond to another modal dialog submission." +msgstr "" + +#: 76458eafc6a84b0aaff8d4cd995a9882 discord.ApplicationContext.send_modal:6 of +msgid "The modal dialog to display to the user." +msgstr "" + +#: d92a2d6d8ca043e8bb5c226c9c62684a discord.ApplicationContext.send_modal:9 of +msgid "Sending the modal failed." +msgstr "" + +#: 4b936a2efdbe459c87055d540910dc3b discord.ApplicationContext.defer:33 +#: discord.ApplicationContext.send_modal:10 +#: discord.ApplicationContext.send_response:53 of +msgid "This interaction has already been responded to before." +msgstr "" + +#: discord.ApplicationContext.respond:3 f5ed250977d64274ab69f28890c2d5fc of +msgid "" +"Sends either a response or a message using the followup webhook " +"determined by whether the interaction has been responded to or not." +msgstr "" + +#: ab5a3790be0349bab8d2da6a2877c752 discord.ApplicationContext.respond:6 of +msgid "" +"The response, its type depending on whether it's an interaction response " +"or a followup." +msgstr "" + +#: discord.ApplicationContext.respond:7 fadaf0ad570449299f73d46bbc211ff3 of +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "" + +#: 088524dc5e4f4da8addf23d2dcc81b09 discord.ApplicationContext.send_response:3 +#: of +msgid "Responds to this interaction by sending a message." +msgstr "" + +#: a23bdff51b9347ed9b843ee572eca90a discord.ApplicationContext.send_followup:15 +#: discord.ApplicationContext.send_response:6 of +msgid "The content of the message to send." +msgstr "" + +#: 4afdc5be01c04197bb07738ff36e4ef3 discord.ApplicationContext.send_followup:55 +#: discord.ApplicationContext.send_response:9 of +msgid "" +"A list of embeds to send with the content. Maximum of 10. This cannot be " +"mixed with the ``embed`` parameter." +msgstr "" + +#: discord.ApplicationContext.send_followup:51 +#: discord.ApplicationContext.send_response:13 e5c93968e5e54442b2c01ffb864b3784 +#: of +msgid "" +"The rich embed for the content to send. This cannot be mixed with " +"``embeds`` parameter." +msgstr "" + +#: 249a00f69dd7404b8a18dd990aedf15e discord.ApplicationContext.send_followup:33 +#: discord.ApplicationContext.send_response:17 of +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: 5ee37397dded4a3faf8aa45347f4d3c9 discord.ApplicationContext.send_response:20 +#: of +msgid "The view to send with the message." +msgstr "" + +#: 19b8764e6eb742cfbd6c211ce6de49cf discord.ApplicationContext.send_response:23 +#: of +msgid "" +"Indicates if the message should only be visible to the user who started " +"the interaction. If a view is sent with an ephemeral message, and it has " +"no timeout set then the timeout is set to 15 minutes." +msgstr "" + +#: 88d5f696c2574d0fbd7638e815a9f7cd discord.ApplicationContext.edit:33 +#: discord.ApplicationContext.send_response:28 of +msgid "" +"Controls the mentions being processed in this message. See " +":meth:`.abc.Messageable.send` for more information." +msgstr "" + +#: 2d273ae38e5f4004b94c01caa64f2f1a discord.ApplicationContext.send_followup:87 +#: discord.ApplicationContext.send_response:32 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message we just sent." +msgstr "" + +#: c26323cc36d2444db93f04f6a16a61f1 discord.ApplicationContext.send_response:36 +#: of +msgid "The file to upload." +msgstr "" + +#: 5eb5de67847f4fbe95b625a06067be80 discord.ApplicationContext.send_response:39 +#: of +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "" + +#: c95324c20b714dce8cea04b4cfa5b6eb discord.ApplicationContext.send_followup:91 +#: discord.ApplicationContext.send_response:42 of +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: 4e6235b751b24b81bd560956f1f7cb67 discord.ApplicationContext.send_followup:91 +#: discord.ApplicationContext.send_response:42 of +msgid "The poll to send." +msgstr "" + +#: 730b8b62d16c46f6aa4792bf63da9bb1 discord.ApplicationContext.send_response:47 +#: of +msgid "The interaction object associated with the sent message." +msgstr "" + +#: 551054b03c444d50a2a60ca32e8e9f16 discord.ApplicationContext.send_followup:99 +#: discord.ApplicationContext.send_response:50 of +msgid "Sending the message failed." +msgstr "" + +#: a0f75187304f404fb792a05b68249126 discord.ApplicationContext.send_response:51 +#: of +msgid "You specified both ``embed`` and ``embeds``." +msgstr "" + +#: 0a737ffed25c468a8fa88b66f105c037 discord.ApplicationContext.edit:55 +#: discord.ApplicationContext.send_followup:103 +#: discord.ApplicationContext.send_response:52 of +msgid "The length of ``embeds`` was invalid." +msgstr "" + +#: discord.ApplicationContext.send_followup:3 fd293a3f95634cac801f0b23e274ba24 +#: of +msgid "Sends a message using the webhook." +msgstr "" + +#: b9d3f9751ae6461e9faa2907517ba730 discord.ApplicationContext.send_followup:5 +#: of +msgid "" +"The content must be a type that can convert to a string through " +"``str(content)``." +msgstr "" + +#: discord.ApplicationContext.send_followup:7 e10e94fd9c024d6a9ac88264447d65fe +#: of +msgid "" +"To upload a single file, the ``file`` parameter should be used with a " +"single :class:`File` object." +msgstr "" + +#: discord.ApplicationContext.send_followup:10 fc47d5f58198427fbec351375429a249 +#: of +msgid "" +"If the ``embed`` parameter is provided, it must be of type :class:`Embed`" +" and it must be a rich embed type. You cannot mix the ``embed`` parameter" +" with the ``embeds`` parameter, which must be a :class:`list` of " +":class:`Embed` objects to send." +msgstr "" + +#: be98261f001f4289b337e61c209204d3 discord.ApplicationContext.send_followup:18 +#: of +msgid "" +"Whether the server should wait before sending a response. This " +"essentially means that the return type of this function changes from " +"``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of " +"webhook is :attr:`WebhookType.application` then this is always set to " +"``True``." +msgstr "" + +#: 0f617a954d2040c4b314ea44e8f86eca discord.ApplicationContext.send_followup:24 +#: of +msgid "" +"The username to send with this message. If no username is provided then " +"the default username for the webhook is used." +msgstr "" + +#: 9d64c46ae5eb48c283625b543241afcd discord.ApplicationContext.send_followup:28 +#: of +msgid "" +"The avatar URL to send with this message. If no avatar URL is provided " +"then the default avatar for the webhook is used. If this is not a string " +"then it is explicitly cast using ``str``." +msgstr "" + +#: 9e7158552f3945e9aa3eda56703c50f3 discord.ApplicationContext.send_followup:36 +#: of +msgid "" +"Indicates if the message should only be visible to the user. This is only" +" available to :attr:`WebhookType.application` webhooks. If a view is sent" +" with an ephemeral message, and it has no timeout set then the timeout is" +" set to 15 minutes. .. versionadded:: 2.0" +msgstr "" + +#: 507d76c002f74e14b168047e5741ec68 discord.ApplicationContext.send_followup:36 +#: of +msgid "" +"Indicates if the message should only be visible to the user. This is only" +" available to :attr:`WebhookType.application` webhooks. If a view is sent" +" with an ephemeral message, and it has no timeout set then the timeout is" +" set to 15 minutes." +msgstr "" + +#: 9da3c6f904e749d2a70116da7b9f91b4 discord.ApplicationContext.edit:22 +#: discord.ApplicationContext.send_followup:44 of +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "" + +#: baf2da1b3eea467899a28632a9051c98 discord.ApplicationContext.edit:25 +#: discord.ApplicationContext.send_followup:47 of +msgid "" +"A list of files to send with the content. This cannot be mixed with the " +"``file`` parameter." +msgstr "" + +#: 1d48d94dfbdf48bc929205a105a85b6e discord.ApplicationContext.send_followup:59 +#: of +msgid "" +"Controls the mentions being processed in this message. .. versionadded::" +" 1.4" +msgstr "" + +#: 5f0205ad28b04c84be092358d620971f discord.ApplicationContext.send_followup:59 +#: of +msgid "Controls the mentions being processed in this message." +msgstr "" + +#: 11877168a21647ad9d25a5b521cd8e6b discord.ApplicationContext.send_followup:64 +#: of +msgid "" +"The view to send with the message. You can only send a view if this " +"webhook is not partial and has state attached. A webhook has state " +"attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "" + +#: a12ec104a407447aa3d2cf73b4909fee discord.ApplicationContext.send_followup:64 +#: of +msgid "" +"The view to send with the message. You can only send a view if this " +"webhook is not partial and has state attached. A webhook has state " +"attached if the webhook is managed by the library." +msgstr "" + +#: 786aa546c1184b81b7ad96a239797b3a discord.ApplicationContext.send_followup:72 +#: of +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "" + +#: 87d19dcf19354880973a710d703a6d4e discord.ApplicationContext.send_followup:72 +#: of +msgid "The thread to send this webhook to." +msgstr "" + +#: discord.ApplicationContext.send_followup:77 f9beaed2ddb0425fa4072973b6b228ab +#: of +msgid "" +"The name of the thread to create. Only works for forum channels. .. " +"versionadded:: 2.0" +msgstr "" + +#: discord.ApplicationContext.send_followup:77 f84ffbc14b01477fbf984092850d7a62 +#: of +msgid "The name of the thread to create. Only works for forum channels." +msgstr "" + +#: discord.ApplicationContext.send_followup:82 fdd72a094f5141ab94b0a7157efea41a +#: of +msgid "" +"A list of tags to apply to the message. Only works for threads. .. " +"versionadded:: 2.5" +msgstr "" + +#: dbad2a8ee2cd46f8ac199fdffe2d1b6d discord.ApplicationContext.send_followup:82 +#: of +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "" + +#: 8ed2b127aab547adb416b946c1ff5afb discord.ApplicationContext.send_followup:96 +#: of +msgid "" +"If ``wait`` is ``True`` then the message that was sent, otherwise " +"``None``." +msgstr "" + +#: discord.ApplicationContext.send_followup:97 eb56c247fe6743d79f1325e5cfbecf33 +#: of +msgid "Optional[:class:`WebhookMessage`]" +msgstr "" + +#: 376082779e6a496a92c04b5372816a43 +#: discord.ApplicationContext.send_followup:100 of +msgid "This webhook was not found." +msgstr "" + +#: b1376346972d42b1a3c9e82098f6c2ee +#: discord.ApplicationContext.send_followup:101 of +msgid "The authorization token for the webhook is incorrect." +msgstr "" + +#: c6b8b47999374b87931c77b60a96a2d4 +#: discord.ApplicationContext.send_followup:102 of +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "" + +#: discord.ApplicationContext.send_followup:104 +#: f003bf666ab2407abfdd4416f87c1363 of +msgid "" +"Either there was no token associated with this webhook, ``ephemeral`` was" +" passed with the improper webhook type, there was no state attached " +"with this webhook when giving it a view, you specified both " +"``thread_name`` and ``thread``, or ``applied_tags`` was passed with " +"neither ``thread_name`` nor ``thread`` specified." +msgstr "" + +#: discord.ApplicationContext.defer:3 eafc302ded3343bfa7c60d20da0291cb of +msgid "Defers the interaction response." +msgstr "" + +#: df92e0185cc94f369a94a9f7c3e4d4f4 discord.ApplicationContext.defer:5 of +msgid "" +"This is typically used when the interaction is acknowledged and a " +"secondary action will be done later." +msgstr "" + +#: 820010f987a64387a35e5c0080467f76 discord.ApplicationContext.defer:8 of +msgid "This can only be used with the following interaction types:" +msgstr "" + +#: 2178e13bd96246b2b10c95327192cd9d discord.ApplicationContext.defer:10 of +msgid ":attr:`InteractionType.application_command`" +msgstr "" + +#: 1456b98d7fe04bd6867edc1cdb4abd0c discord.ApplicationContext.defer:11 of +msgid ":attr:`InteractionType.component`" +msgstr "" + +#: 29822a6142e9410ca2d1d9d83a96fd15 discord.ApplicationContext.defer:12 of +msgid ":attr:`InteractionType.modal_submit`" +msgstr "" + +#: 14e0ba720bca419b8e522b34e997f1b0 discord.ApplicationContext.defer:15 of +msgid "" +"The follow-up response will also be non-ephemeral if the `ephemeral` " +"argument is ``False``, and ephemeral if ``True``." +msgstr "" + +#: discord.ApplicationContext.defer:19 f1f0c011e33343a69a5fe55bee726d78 of +msgid "" +"Indicates whether the deferred message will eventually be ephemeral. This" +" only applies to :attr:`InteractionType.application_command` " +"interactions, or if ``invisible`` is ``False``." +msgstr "" + +#: d756d7d3612f4083829475d5026de3f2 discord.ApplicationContext.defer:24 of +msgid "" +"Indicates whether the deferred type should be 'invisible' " +"(:attr:`InteractionResponseType.deferred_message_update`) instead of " +"'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In" +" the Discord UI, this is represented as the bot thinking of a response. " +"You must eventually send a followup message via " +":attr:`Interaction.followup` to make this thinking state go away. This " +"parameter does not apply to interactions of type " +":attr:`InteractionType.application_command`." +msgstr "" + +#: a14d5150e093472dbe422e4c56667fcf discord.ApplicationContext.defer:32 of +msgid "Deferring the interaction failed." +msgstr "" + +#: 7cf892fc660444d698051a80c722de6b discord.ApplicationContext.followup:1 of +msgid "Returns the followup webhook for followup interactions." +msgstr "" + +#: 4b5c695549c54ef7ab2bb8aa2415c8f5 +#: discord.commands.context.ApplicationContext.delete:3 of +msgid "Deletes the original interaction response message." +msgstr "" + +#: 282a94146db246ec9bceb2e4b6fefed7 +#: discord.commands.context.ApplicationContext.delete:5 of +msgid "" +"This is a higher level interface to " +":meth:`Interaction.delete_original_response`." +msgstr "" + +#: 394d4b023ed84168a9f8389747a7b41b +#: discord.commands.context.ApplicationContext.delete:8 of +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "" + +#: discord.commands.context.ApplicationContext.delete:11 +#: ea3684f1004940f3b8e8de7102aefd59 of +msgid "Deleting the message failed." +msgstr "" + +#: 6891dda8e4994181b173976f49c55d59 +#: discord.commands.context.ApplicationContext.delete:12 of +msgid "You do not have proper permissions to delete the message." +msgstr "" + +#: 6f30e222be6247b4ace76de5ba0c5b27 discord.ApplicationContext.edit:3 of +msgid "Edits the original interaction response message." +msgstr "" + +#: 5c47f45c0da14d5d9d7848955f02fb2f discord.ApplicationContext.edit:5 of +msgid "" +"This is a lower level interface to :meth:`InteractionMessage.edit` in " +"case you do not want to fetch the message and save an HTTP request." +msgstr "" + +#: 71a97a38704a49a2bec5f4c577e4fcf6 discord.ApplicationContext.edit:8 of +msgid "" +"This method is also the only way to edit the original message if the " +"message sent was ephemeral." +msgstr "" + +#: discord.ApplicationContext.edit:12 f9e671739a04499897ad79ca3d4e41b2 of +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "" + +#: 0813010dcf904b128b2dc4d7167b3f0e discord.ApplicationContext.edit:15 of +msgid "A list of embeds to edit the message with." +msgstr "" + +#: c346ef612dc144f8aa1653c2ca3e6c3e discord.ApplicationContext.edit:18 of +msgid "" +"The embed to edit the message with. ``None`` suppresses the embeds. This " +"should not be mixed with the ``embeds`` parameter." +msgstr "" + +#: 8cf7f2b7a8294feabbba1e3be5da1c33 discord.ApplicationContext.edit:29 of +msgid "" +"A list of attachments to keep in the message. If ``[]`` is passed then " +"all attachments are removed." +msgstr "" + +#: 6221bcc307ca47fd83865c20efddaf57 discord.ApplicationContext.edit:37 of +msgid "" +"The updated view to update this message with. If ``None`` is passed then " +"the view is removed." +msgstr "" + +#: 828436be57f74170a414271192eb3539 discord.ApplicationContext.edit:41 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message we just edited. If the deletion fails, then it is " +"silently ignored." +msgstr "" + +#: cdfc2e90938c457f9ab2737ffab74a5c discord.ApplicationContext.edit:46 of +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: 9a308a4a2c34444995ab4570d2376b10 discord.ApplicationContext.edit:49 of +msgid "The newly edited message." +msgstr "" + +#: 4904bcae5564406d9f48ae6887540994 discord.ApplicationContext.edit:50 of +msgid ":class:`InteractionMessage`" +msgstr "" + +#: 332fa654af644c9aafa1d235b4466dec discord.ApplicationContext.edit:52 of +msgid "Editing the message failed." +msgstr "" + +#: 7cd8271b907b4b21854be77974f8ce05 discord.ApplicationContext.edit:53 of +msgid "Edited a message that is not yours." +msgstr "" + +#: 1e9fa9fbd69e4e4cb54484433e9101cf discord.ApplicationContext.edit:54 of +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "" + +#: 6dda90c3ae154814a40ba59bed13deb3 discord.ApplicationContext.cog:1 +#: discord.AutocompleteContext.cog:1 of +msgid "" +"Returns the cog associated with this context's command. ``None`` if it " +"does not exist." +msgstr "" + +#: 48def13f6174498892c7611747545cd9 +#: discord.commands.context.AutocompleteContext:1 of +msgid "Represents context for a slash command's option autocomplete." +msgstr "" + +#: d78982df0e9a4cd99797b03021587f19 +#: discord.commands.context.AutocompleteContext:3 of +msgid "" +"This class is not created manually and is instead passed to an " +":class:`.Option`'s autocomplete callback." +msgstr "" + +#: discord.commands.context.AutocompleteContext:15 +#: ee98d3f82d63421bb90c23a0c914479a of +msgid "The interaction object that invoked the autocomplete." +msgstr "" + +#: 59a530105ac6485197b9bf2cefe8e50a +#: discord.commands.context.AutocompleteContext:27 of +msgid "The option the user is currently typing." +msgstr "" + +#: 326327f43433488a8304984c578d455b +#: discord.commands.context.AutocompleteContext:29 of +msgid ":class:`.Option`" +msgstr "" + +#: 59f72990e3c14649938ce6341ee0005f +#: discord.commands.context.AutocompleteContext:33 of +msgid "The content of the focused option." +msgstr "" + +#: 58801cfd58d44239a96812222e3aa822 +#: discord.commands.context.AutocompleteContext:35 of +msgid ":class:`.str`" +msgstr "" + +#: 4c4055bc1b5242568ae0246a1a990d13 +#: discord.commands.context.AutocompleteContext:39 of +msgid "" +"A name to value mapping of the options that the user has selected before " +"this option." +msgstr "" + +#: 808133417bf3421090c005298b52fda3 +#: discord.commands.context.AutocompleteContext:41 of +msgid "Dict[:class:`str`, Any]" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/application_info.po b/docs/locales/en/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..99aa8d3810 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/application_info.po @@ -0,0 +1,380 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.16.0\n" + +#: ../../api/application_info.rst:4 74cc9bfd5756481fb562646a5aa70d5d +msgid "Application Info" +msgstr "" + +#: 67cc303e9e844f1ca659a36456c444ee discord.appinfo.AppInfo:1 of +msgid "Represents the application info for the bot provided by Discord." +msgstr "" + +#: 1124ffb2e42b46588081249f2347d068 1b1d4c131f034b3586d4deae1e0c9601 +#: discord.appinfo.AppInfo:5 discord.appinfo.PartialAppInfo:7 of +msgid "The application ID." +msgstr "" + +#: 0674149be2a944ca999ae49f5e601996 0af3be474a06423e977f2b441f84cd59 +#: 0beb967a69ef45ceb7763eeb3dc4c123 181b416bd32a4c09a0a558bccc6edb1f +#: 19576e9482234cf2aa10aee0803837ee 2025f53e11bd4695875937f126fc3d5d +#: 21b80740c5a44c28902b1147c2097f18 385296ec5bd14426bc90f124bd4e133c +#: 3f5abcc229fc4eedbbd75cd841d5ffe6 703da5fbb2b64cfabeb8bb91296bf423 +#: 7528d93cc1f84431b0810b651a652439 8a2bdc95647948cfb921dc46c63ab9c0 +#: 8a71354038764ef894e1dcc7d9fecd94 92ed3996583c43d59eac823d7dfd43b6 +#: 987d58c35c3e4c338a33f6a2fdf5a7ca 9f0fc6db0cfd4bc9b00d2518bd3f98a2 +#: a92646588c9f4cc0ae6e61772d477ab2 bf705be8aecf4e6b9dc48e2f7600a388 +#: cfb243f065514d19b860b62d1ccaa127 d393db4b36b34bf8b9ccacec2284d786 +#: discord.appinfo.AppInfo discord.appinfo.AppInstallParams +#: discord.appinfo.PartialAppInfo discord.team.Team discord.team.TeamMember +#: e3a96ae485014a2fb9be751474f5fcc2 e5ba1ed92fc74de5a6950d97e6ff1a88 +#: e8d765c6eae84e9fb157dae64cad6d74 eb9e87675d7448bd9c87c88d4a1120fa of +msgid "type" +msgstr "" + +#: 28dcab5434c6413fb97f42588f4f39ea 9e634374a91345b49183cdc6fd9e24f2 +#: discord.appinfo.AppInfo:7 discord.appinfo.PartialAppInfo:9 +#: discord.team.Team:7 discord.team.Team:19 discord.team.TeamMember:33 of +msgid ":class:`int`" +msgstr "" + +#: bba498da8c0d4d148a5d76b2aa544210 discord.appinfo.AppInfo:11 +#: discord.appinfo.PartialAppInfo:13 efd203ceea5943b8b4c6604167817498 of +msgid "The application name." +msgstr "" + +#: 3f30e80dd97841a5b80cbc2f3b87cacd 5d459ea63fdb4d3cac7c675933be4037 +#: a324d24a8b594416aacdaafb5e674459 b643514396354533a6acfa1127ad419f +#: discord.appinfo.AppInfo:13 discord.appinfo.AppInfo:33 +#: discord.appinfo.AppInfo:62 discord.appinfo.PartialAppInfo:15 +#: discord.appinfo.PartialAppInfo:21 discord.appinfo.PartialAppInfo:34 +#: discord.appinfo.PartialAppInfo:41 discord.team.Team:13 +#: discord.team.TeamMember:27 discord.team.TeamMember:43 +#: discord.team.TeamMember:51 ee1525281bc84b7cbe2b2b314f49dace of +msgid ":class:`str`" +msgstr "" + +#: d723203de31d4393b5d900748a147753 discord.appinfo.AppInfo:17 of +msgid "The application owner." +msgstr "" + +#: b407039bb0ec4c978c9ddba84f0bc8a2 discord.appinfo.AppInfo:19 of +msgid ":class:`User`" +msgstr "" + +#: 44cdbd2ebe8f4f7db3a5643f5659b2d5 discord.appinfo.AppInfo:23 of +msgid "The application's team." +msgstr "" + +#: discord.appinfo.AppInfo:27 ea4867fdec25441a8351aefd9d2f5f73 of +msgid "Optional[:class:`Team`]" +msgstr "" + +#: 4e8e2eb7fe7d46a49fc65690284ddc64 897452b1fc6b4b7c8c58a40ad2300f6f +#: discord.appinfo.AppInfo:31 discord.appinfo.PartialAppInfo:19 of +msgid "The application description." +msgstr "" + +#: 08f798d700fc429cacbbbe837dac3ec6 discord.appinfo.AppInfo:37 of +msgid "" +"Whether the bot can be invited by anyone or if it is locked to the " +"application owner." +msgstr "" + +#: 331891c1013643e99d25bd56396c6484 4ffdc171660e444d8572edeebb447f76 +#: 749b73d6cbd44f47a2f04fb424d1778b discord.appinfo.AppInfo:40 +#: discord.appinfo.AppInfo:47 discord.team.TeamMember:63 of +msgid ":class:`bool`" +msgstr "" + +#: d607c73714124830ab4b1beaa5982315 discord.appinfo.AppInfo:44 of +msgid "" +"Whether the bot requires the completion of the full OAuth2 code grant " +"flow to join." +msgstr "" + +#: 23387591c8984590b91cb7eed48d8bdb 6101d10d23e2492bb99926518b019347 +#: discord.appinfo.AppInfo:51 discord.appinfo.PartialAppInfo:25 of +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "" + +#: 7b9060949a424ef68146ea7243a6ae14 discord.appinfo.AppInfo:53 +#: discord.appinfo.AppInfo:130 discord.appinfo.AppInfo:164 +#: discord.appinfo.PartialAppInfo:27 fe8d034329534fc9a8b8e5226e7009cf of +msgid "Optional[List[:class:`str`]]" +msgstr "" + +#: 25824f9683ad4427b8de0c38d4051a04 discord.appinfo.AppInfo:57 +#: discord.appinfo.PartialAppInfo:38 of +msgid "" +"The hex encoded key for verification in interactions and the GameSDK's " +"`GetTicket `_." +msgstr "" + +#: b4b25b0e55f0433e83562bdd22959cd2 discord.appinfo.AppInfo:66 of +msgid "" +"If this application is a game sold on Discord, this field will be the " +"guild to which it has been linked to." +msgstr "" + +#: d542b7fb344647adabfa084a333ae9c1 discord.appinfo.AppInfo:71 +#: discord.appinfo.AppInfo:81 discord.appinfo.AppInfo:114 +#: discord.appinfo.AppInfo:122 ecff4b129f4f45509cc190e1a82c3ce6 of +msgid "Optional[:class:`int`]" +msgstr "" + +#: a16580ffeec747d596b4e9077fe2b2e3 discord.appinfo.AppInfo:75 of +msgid "" +"If this application is a game sold on Discord, this field will be the id " +"of the \"Game SKU\" that is created, if it exists." +msgstr "" + +#: 3ea1bf80312b4ed6b5c59a1c5e7dc3c8 discord.appinfo.AppInfo:85 of +msgid "" +"If this application is a game sold on Discord, this field will be the URL" +" slug that links to the store page." +msgstr "" + +#: 5c5f38add34f465c92bc538636bdadd7 d284414d044b4587b7bb242d9468f4c1 +#: d8ea2bd900a0489684084903b6c36dde discord.appinfo.AppInfo:90 +#: discord.appinfo.AppInfo:98 discord.appinfo.AppInfo:106 +#: discord.appinfo.AppInfo:138 discord.appinfo.AppInfo:146 +#: discord.appinfo.AppInfo:172 discord.appinfo.PartialAppInfo:47 +#: discord.appinfo.PartialAppInfo:53 discord.team.TeamMember:57 of +msgid "Optional[:class:`str`]" +msgstr "" + +#: 732e1ba0b3de4383a9ef9b83cf245d73 discord.appinfo.AppInfo:94 +#: discord.appinfo.PartialAppInfo:45 of +msgid "The application's terms of service URL, if set." +msgstr "" + +#: 645cd576ee2c4680b5a56d946d532840 discord.appinfo.AppInfo:102 +#: discord.appinfo.PartialAppInfo:51 of +msgid "The application's privacy policy URL, if set." +msgstr "" + +#: adf3fb5776fd41fda256044bd2576a3e discord.appinfo.AppInfo:110 of +msgid "The approximate count of guilds to which the app has been added, if any." +msgstr "" + +#: discord.appinfo.AppInfo:118 f8b4071dc3dd4a9fab0619d91537fe11 of +msgid "The approximate count of users who have installed the application, if any." +msgstr "" + +#: 022bcf33c194457593a47061acf91c6f discord.appinfo.AppInfo:126 of +msgid "The list of redirect URIs for the application, if set." +msgstr "" + +#: 3c57fdc17dbb4950a36effe20e3075fd discord.appinfo.AppInfo:134 of +msgid "The interactions endpoint URL for the application, if set." +msgstr "" + +#: af795468cfe54b3985aa6a584ecd3df5 discord.appinfo.AppInfo:142 of +msgid "The role connection verification URL for the application, if set." +msgstr "" + +#: 15be78fe305447a791fe15f66d24a448 discord.appinfo.AppInfo:150 of +msgid "" +"The settings for the application's default in-app authorization link, if " +"set." +msgstr "" + +#: discord.appinfo.AppInfo:154 fe8d034329534fc9a8b8e5226e7009cf of +msgid "Optional[List[:class:`AppInstallParams`]]" +msgstr "" + +#: 5aa4818e6fc94ae8b07e18b6166583ec discord.appinfo.AppInfo:158 of +msgid "" +"The list of tags describing the content and functionality of the app, if " +"set." +msgstr "" + +#: 6247ad0381374a3d8b72aad9bc74ac79 discord.appinfo.AppInfo:160 of +msgid "Maximium of 5 tags." +msgstr "" + +#: 2e43d10963c04c7882079894d1dd2197 discord.appinfo.AppInfo:168 of +msgid "The default custom authorization URL for the application, if set." +msgstr "" + +#: ../../api/application_info.rst e7d8765c380a4c9eb0944c511eed77ab +msgid "Parameters" +msgstr "" + +#: bff94f7e897b4f60867da6300aa80604 discord.AppInfo.icon:1 +#: discord.PartialAppInfo.icon:1 of +msgid "Retrieves the application's icon asset, if any." +msgstr "" + +#: 7730be7e119d4951b2cf3f0ca8bcda19 discord.AppInfo.cover_image:1 of +msgid "Retrieves the cover image on a store embed, if any." +msgstr "" + +#: 5fd587ca1e8e4b848ec3523fdbaf3d20 discord.AppInfo.cover_image:3 of +msgid "This is only available if the application is a game sold on Discord." +msgstr "" + +#: ae938df96b6443e2822efc053c40bdf7 discord.AppInfo.guild:1 of +msgid "" +"If this application is a game sold on Discord, this field will be the " +"guild to which it has been linked." +msgstr "" + +#: 2e7625a1090a480e841f2bbf9c2de937 discord.AppInfo.summary:1 +#: discord.appinfo.PartialAppInfo:31 of +msgid "" +"If this application is a game sold on Discord, this field will be the " +"summary field for the store page of its primary SKU." +msgstr "" + +#: 8a24fea123be49278e938d6a56b56fa7 discord.AppInfo.summary:4 of +msgid "It currently returns an empty string." +msgstr "" + +#: discord.appinfo.PartialAppInfo:1 f36a0f6452e24fdc8ed50b109685437f of +msgid "" +"Represents a partial AppInfo given by " +":func:`~discord.abc.GuildChannel.create_invite`" +msgstr "" + +#: discord.appinfo.AppInstallParams:1 e869493a8e3a40ee84113fecf945de45 of +msgid "" +"Represents the settings for the custom authorization URL of an " +"application." +msgstr "" + +#: dfec489acaf44259a32930cf192d8d29 discord.appinfo.AppInstallParams:7 of +msgid "The list of OAuth2 scopes for adding the application to a guild." +msgstr "" + +#: 5c5f38add34f465c92bc538636bdadd7 discord.appinfo.AppInstallParams:9 of +msgid "List[:class:`str`]" +msgstr "" + +#: 5d0bdf97472648cf98f816e2d62e4726 discord.appinfo.AppInstallParams:13 of +msgid "The permissions to request for the bot role in the guild." +msgstr "" + +#: d7cc240edc334834aedd925553167159 discord.appinfo.AppInstallParams:15 of +msgid ":class:`Permissions`" +msgstr "" + +#: 11145d31bf024c7bab80025c64b7c96e discord.team.Team:1 of +msgid "Represents an application team for a bot provided by Discord." +msgstr "" + +#: 6fd71d9ed5b14389a1ae4e17d712b453 discord.team.Team:5 of +msgid "The team ID." +msgstr "" + +#: 28ef979653274e248c6ff0c8a55caf7e discord.team.Team:11 of +msgid "The team name." +msgstr "" + +#: discord.team.Team:17 fc41a0ab74f048359f01ba1c0968cb76 of +msgid "The team's owner ID." +msgstr "" + +#: d9c75b2bebe443d89d306c35b9e84253 discord.team.Team:23 of +msgid "A list of the members in the team." +msgstr "" + +#: 3d9afc4316934f55b07913d7e58251d0 discord.team.Team:27 of +msgid "List[:class:`TeamMember`]" +msgstr "" + +#: 463a76fee53f40b9b2a9609a55b59143 discord.Team.icon:1 of +msgid "Retrieves the team's icon asset, if any." +msgstr "" + +#: 63b9080cfbc8482893b8eb12edbf7051 discord.Team.owner:1 of +msgid "The team's owner." +msgstr "" + +#: 63ff0073e60346fa9a97204437389398 discord.team.TeamMember:1 of +msgid "Represents a team member in a team." +msgstr "" + +#: discord.team.TeamMember:7 e3f7fa8116ac45168cab02e5b26f882c of +msgid "Checks if two team members are equal." +msgstr "" + +#: discord.team.TeamMember:11 f0d991c870f546a6b3319505f2cd0730 of +msgid "Checks if two team members are not equal." +msgstr "" + +#: 5266854fb4bd43669d9b8e72e938dfd6 discord.team.TeamMember:15 of +msgid "Return the team member's hash." +msgstr "" + +#: 83a317ee5a0b408a9f4758fda47626d8 discord.team.TeamMember:19 of +msgid "Returns the team member's name with discriminator or global_name." +msgstr "" + +#: b01570cd3fef418eb1ce60372ab3dcba discord.team.TeamMember:25 of +msgid "The team member's username." +msgstr "" + +#: 2bb030dc84814e048a006790d4ffaa0f discord.team.TeamMember:31 of +msgid "The team member's unique ID." +msgstr "" + +#: 606ede4553ca4c83abeb3ec166dde072 discord.team.TeamMember:37 of +msgid "" +"The team member's discriminator. This is given when the username has " +"conflicts." +msgstr "" + +#: 8cbf4ee534434f2a86504f300e21d3d5 discord.team.TeamMember:41 of +msgid "" +"If the user has migrated to the new username system, this will always be " +"\"0\"." +msgstr "" + +#: c3884e88100b42d7b70c00c9b99fa3ad discord.team.TeamMember:47 of +msgid "The team member's global name." +msgstr "" + +#: 49d9f91963544551be434d0d46347ff3 discord.team.TeamMember:55 of +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "" + +#: 35c4e103f2254c92b80b8d875089dae3 discord.team.TeamMember:61 of +msgid "Specifies if the user is a bot account." +msgstr "" + +#: discord.team.TeamMember:67 fcd21ee7de4e4c99916043f99c1e02f0 of +msgid "The team that the member is from." +msgstr "" + +#: discord.team.TeamMember:69 fb5cd5a9218c4fce92ea9f2d95ab46fb of +msgid ":class:`Team`" +msgstr "" + +#: discord.team.TeamMember:73 f5d05cc227b3458a8e126c87397c8666 of +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "" + +#: d7cc240edc334834aedd925553167159 discord.team.TeamMember:75 of +msgid ":class:`TeamMembershipState`" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/async_iter.po b/docs/locales/en/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..365809dfca --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,178 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/async_iter.rst:4 683210b308c6452eaa81b17e1758cde5 +msgid "Async Iterator" +msgstr "" + +#: ../../api/async_iter.rst:6 26660b1f875c4116b27b57231b3e326a +msgid "" +"Some API functions return an \"async iterator\". An async iterator is " +"something that is capable of being used in an :ref:`async for statement " +"`." +msgstr "" + +#: ../../api/async_iter.rst:9 b2a8e2358fff4dee94538dd7db885436 +msgid "These async iterators can be used as follows: ::" +msgstr "" + +#: ../../api/async_iter.rst:14 fedb68a3877f4bf9852c7f4d88ebf653 +msgid "" +"Certain utilities make working with async iterators easier, detailed " +"below." +msgstr "" + +#: ../../api/async_iter.rst:18 ee607db54b2c48399a3993ad596a5e4e +msgid "" +"Represents the \"AsyncIterator\" concept. Note that no such class exists," +" it is purely abstract." +msgstr "" + +#: ../../api/async_iter.rst:25 ea99bb1f015e4745a085c595d3f45632 +msgid "Iterates over the contents of the async iterator." +msgstr "" + +#: ../../api/async_iter.rst:31 ../../api/async_iter.rst:39 +#: ../../api/async_iter.rst:50 ../../api/async_iter.rst:70 +#: 4f95ac8bdd4e4ed5860bb668349643c0 50240befea20487a938b5c3a1962b897 +#: 88aa64e2c65e49549cc72afb29d11079 ebb326024af642caa846a9c8d1e5cd22 +msgid "|coro|" +msgstr "" + +#: ../../api/async_iter.rst:33 fc2a0e5b432b46688ed1bfe2e81923ba +msgid "" +"Advances the iterator by one, if possible. If no more items are found " +"then this raises :exc:`NoMoreItems`." +msgstr "" + +#: ../../api/async_iter.rst:41 8e78bfd5f23e4fa78ed058d83f803620 +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "" + +#: ../../api/async_iter.rst:43 cebb25e3e89a40a8a9feb2e09df074b5 +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "" + +#: ../../api/async_iter.rst:52 bba5fc8cdec74acdbdf398084ae65c71 +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "" + +#: ../../api/async_iter.rst:54 d800ba8608e54e989bb3ad7e8402e459 +msgid "" +"Unlike :func:`utils.find`\\, the predicate provided can be a " +"|coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst:57 7b251694963241aaae3bed1c7d8cbc4d +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "" + +#: ../../api/async_iter.rst 06e87b915f3e4228881a5514b6a00865 +#: 5e49651663164532b4c188e7f9394698 647540de23184651ae6d19f426de83ae +#: 71a78339b59244759117eab739d2bf8d +msgid "Parameters" +msgstr "" + +#: ../../api/async_iter.rst:64 980baa97820542859943b5e915b7291e +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst 2211459cc06e4959a9d358fbf30fb169 +#: e96973ea3d57420497cbef89229b1b1b +msgid "Returns" +msgstr "" + +#: ../../api/async_iter.rst:65 fd39c8efddfb48dabbe8042c515512b5 +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "" + +#: ../../api/async_iter.rst:72 9515f54767c5484bba41645724d6e70d +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "" + +#: ../../api/async_iter.rst:74 b8db6657e3ba49f1a150adf43bd3441e +msgid "A list of every element in the async iterator." +msgstr "" + +#: ../../api/async_iter.rst 8d1fdc4db23d471aa821ca1ace2f2cbe +#: aab818990f18433e93d0cb25aaab6308 d1d2046aaf5c4fd69ff7ef7375d0b3d2 +#: ffef918ac0614e37ae24ac20c9915dca +msgid "Return type" +msgstr "" + +#: ../../api/async_iter.rst:79 5074748f45454936b9d1cfe063527db2 +msgid "" +"Collects items into chunks of up to a given maximum size. Another " +":class:`AsyncIterator` is returned which collects items into " +":class:`list`\\s of a given size. The maximum chunk size must be a " +"positive integer." +msgstr "" + +#: ../../api/async_iter.rst:85 6393efcbcb3f47d38f1d9a3e5cd573e8 +msgid "Collecting groups of users: ::" +msgstr "" + +#: ../../api/async_iter.rst:92 717925fddfaa4df2bd9630eae0a2648c +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "" + +#: ../../api/async_iter.rst:94 add0fdb0c5ff469aae610f6c9c8325bd +msgid "The size of individual chunks." +msgstr "" + +#: ../../api/async_iter.rst:95 ../../api/async_iter.rst:113 +#: ../../api/async_iter.rst:130 7774370fc45f4f54b7e247891786b2af +#: c6022e74eeaf41deabfef4ae43c8f694 d482560e0a4b46a792f1cbeaa515857c +msgid ":class:`AsyncIterator`" +msgstr "" + +#: ../../api/async_iter.rst:99 064e5dad853e44059d92e277ce556721 +msgid "" +"This is similar to the built-in :func:`map ` function. Another " +":class:`AsyncIterator` is returned that executes the function on every " +"element it is iterating over. This function can either be a regular " +"function or a |coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst:104 a29ba78bc12347d6a668a329ef6012da +msgid "Creating a content iterator: ::" +msgstr "" + +#: ../../api/async_iter.rst:112 5a0baeb5df5d452591bafc3d4262eb82 +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst:117 8093476ff4f941168ba84770614e0bed +msgid "" +"This is similar to the built-in :func:`filter ` function. " +"Another :class:`AsyncIterator` is returned that filters over the original" +" async iterator. This predicate can be a regular function or a " +"|coroutine_link|_." +msgstr "" + +#: ../../api/async_iter.rst:121 ff128eb38e014fb7ab8d315b033fb599 +msgid "Getting messages by non-bot accounts: ::" +msgstr "" + +#: ../../api/async_iter.rst:129 0218f7cdb3cc48bc8cdc637c9302b0ee +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/audit_logs.po b/docs/locales/en/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..aca80768e6 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,804 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/audit_logs.rst:6 c15e7cd810f943f28c384477750f4f15 +msgid "Audit Log Data" +msgstr "" + +#: ../../api/audit_logs.rst:8 b0e7037de5f546648bf72d690c1ded4a +msgid "" +"Working with :meth:`Guild.audit_logs` is a complicated process with a lot" +" of machinery involved. The library attempts to make it easy to use and " +"friendly. In order to accomplish this goal, it must make use of a couple " +"of data classes that aid in this goal." +msgstr "" + +#: c16e0a4155244540969a7ad0dbbb4106 discord.audit_logs.AuditLogEntry:1 of +msgid "Represents an Audit Log entry." +msgstr "" + +#: 37848f380eba497886afcb59340fa3ff discord.audit_logs.AuditLogEntry:3 of +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "" + +#: 01d8023134d6484b904d45265e979c57 discord.audit_logs.AuditLogEntry:9 of +msgid "Checks if two entries are equal." +msgstr "" + +#: cefb6c8408f94b1f9c157fb84ac1bd04 discord.audit_logs.AuditLogEntry:13 of +msgid "Checks if two entries are not equal." +msgstr "" + +#: 75e42cbd096245d3ac7fae79dadf793a discord.audit_logs.AuditLogEntry:17 of +msgid "Returns the entry's hash." +msgstr "" + +#: b9c1b72d908a4400a3263cf3f638c8b3 discord.audit_logs.AuditLogEntry:19 of +msgid "Audit log entries are now comparable and hashable." +msgstr "" + +#: discord.audit_logs.AuditLogEntry:24 fdc08052c4c940a1b7e0a45a4e86e46f of +msgid "The action that was done." +msgstr "" + +#: ../../api/audit_logs.rst 018838c92cf443998e3528806f535ef1 +#: 07ec8ed57b334e898b2027ce9a23f533 0a9a730958434cb6b48de053b91f207f +#: 0e91bcd374344924b95f83fbe77acdc7 12669c582e7f45689043622ba5bd5b40 +#: 14d7b570aa5440ac91af03d9d8ddc1ce 1b29fadde7984fd8b4998aaaad2f28e8 +#: 1b2f941479d9453db940b802623e13ed 20f20240e73442398f90c533449c5b62 +#: 25e96b71d7d84bceabf66ebd3ff12b25 287eae04e8bc4c0b8bc2f459950882e6 +#: 3165fb299696495fbf798eff6314b71b 31de64c8a9ef44bb90b82785f4a755c2 +#: 34a455ed93514bab850d4f8a8b31fb79 3b08ecbcedce4e1e8f7d65b0166100fe +#: 3c577c20e66c4e9c8d87d90f55396906 4d2c80465b854d4d80922e7e5ca5a332 +#: 52630aeafd804fa999184290dcdd066e 54c6f9deb1f74456aab58fa1853da21c +#: 5873a38c4b474eb49674201367bc55e7 5af4849d13ad467c9c761975b562b685 +#: 619d10656cab4f38a8f13dd01055559a 626724f8358847c199a526221635442c +#: 6299ba933ef74274a75ee97287374ad5 6f39b2f108094f9381a9a3838f656705 +#: 7095e060ff754284a061d7debf035204 72a4088527df4f81954a2771767fc5d7 +#: 74d33a3f44e64e60a33e576170b5aa76 77fc83cde9ff4a79b7698efcbf4442c7 +#: 7962ad5ea3f8408995139fc1864a0906 83b846ddac2a43d3939bd1f1847b5ef1 +#: 83c485385fe3478290a0e78dedcf9cb2 88015128497741aaa3336ce4accd8cd3 +#: 888211cdb8ab46758cfb862cc4a3d5bd 8b1ecea53f54442eb26246fcc07156f7 +#: 9167517e1b4440e488acc02f4d53b6dd 93fafdc3767245c1b52628509caf0af2 +#: 99df7c68d5f24841a158b287d5cc41df 9e1f7ebe763c4148acace5eaffee8b7d +#: 9edb5cae872e4dd3877591d5a7001b92 a5e79d2bf9b0440abeb92e949a5878a6 +#: ae9ec0bda90b41c1804663b15d03ff46 b78a900781d64dfb8728cde0bc78ff60 +#: c3d2889d125c481ebd191ec6a179c253 c49d2a0985e145e7a383f0123dc1ff52 +#: c57b847ed99d48408e23d66e88a31c68 c60356036ca745f4b40fed50de3b3474 +#: cbac2288ff274b719bdcf57f8b9661fb cdbfcba6d6cb422084edcdfc438027f0 +#: ce2b8b2a277d418c8ffd666502e64697 d2a278e08dde4150b5dcd92ddb321dcf +#: d4d94dd92843423db8465de85409e5bf dd73304f0e1a477799a52784017c8a51 +#: discord.audit_logs.AuditLogEntry ea85bad4af264314aa2c7ec6e16d1e53 +#: ed7384c9d8d6407eb8b0b145cd1b0a43 f1b22b933ffd4502ae08190e61ab1dd3 +#: f4b0051464374dffbab9e489460a9e4a f6dc9c09512e4f42875d84f023641208 +#: f719b0f52c4349f7a1114e8c16abd49e f7a45a775bde4406bea1e457c7060dea +#: f840f1761b5a4a508ba57b2113a897a9 f8c4ba816552415482b1c2d63e8f4a14 +#: f93ebef541414ae4a422ba3257083910 fb0c7fd0eed34636a9a0c40ae5cc04c5 of +msgid "type" +msgstr "" + +#: discord.audit_logs.AuditLogEntry:26 eb1bb86761ed47aa9289333648a2f29c of +msgid ":class:`AuditLogAction`" +msgstr "" + +#: 066412f2b2574cd89fc465846f4a13c3 discord.audit_logs.AuditLogEntry:30 of +msgid "" +"The user who initiated this action. Usually a :class:`Member`\\, unless " +"gone then it's a :class:`User`." +msgstr "" + +#: b35aa754f9f648fba64070e2a6494f49 discord.audit_logs.AuditLogEntry:33 of +msgid "Optional[:class:`abc.User`]" +msgstr "" + +#: 32ae59d50cad4b0186310a8e7eadd72d discord.audit_logs.AuditLogEntry:37 of +msgid "The entry ID." +msgstr "" + +#: ../../api/audit_logs.rst:171 ../../api/audit_logs.rst:177 +#: ../../api/audit_logs.rst:222 ../../api/audit_logs.rst:236 +#: ../../api/audit_logs.rst:258 ../../api/audit_logs.rst:376 +#: ../../api/audit_logs.rst:384 ../../api/audit_logs.rst:392 +#: ../../api/audit_logs.rst:413 ../../api/audit_logs.rst:430 +#: ../../api/audit_logs.rst:499 ../../api/audit_logs.rst:505 +#: ../../api/audit_logs.rst:517 033ec36b1cc443ce925d8006608c9306 +#: 119dcd786d094e9fa3d9f9355d2acdcc 3a3211324625490bb19bcb97d023071c +#: 4b30306c6a9742db97a87c0642f0b06b 4c3c46c457d945369a3529520a9d230a +#: 56703ed09270429582f88902d4dcbfc1 6200ce13167d41ccbf154adf09263591 +#: 711f82da8b154c25827aca6f3e1bdf44 77f9a261fe6a44be9899d99d86a3eb8d +#: 9cd5338801f9430abae7be7fe8f678fa b19f850def9247d191d5a1f6f0ef6c51 +#: c51f09691c8f4659a5cddce1f4e07943 discord.audit_logs.AuditLogEntry:39 +#: efae14602d334dc6af7f23da6d78cf2e efceb465209a4a239309f1b5d1afe3de of +msgid ":class:`int`" +msgstr "" + +#: c524a8a01fb44a2f83e94cb40e722a2e discord.audit_logs.AuditLogEntry:43 of +msgid "" +"The target that got changed. The exact type of this depends on the action" +" being done." +msgstr "" + +#: 63c82e15ae6c4b81b56c84ed06a65f35 d765c3c8a02c4108b5f0d7fa50a155cf +#: discord.audit_logs.AuditLogEntry:46 discord.audit_logs.AuditLogEntry:61 of +msgid "Any" +msgstr "" + +#: c4f3e86c1f3445358a51a82414495e6b discord.audit_logs.AuditLogEntry:50 of +msgid "The reason this action was done." +msgstr "" + +#: ../../api/audit_logs.rst:294 8552845caae447a6a93c291d3468bc18 +#: ab1fd845cf7847fdb5f84ece35f22c4a discord.audit_logs.AuditLogEntry:52 of +msgid "Optional[:class:`str`]" +msgstr "" + +#: 1fafdfdb8be5486fb6c469d4a8e9ccdf discord.audit_logs.AuditLogEntry:56 of +msgid "" +"Extra information that this entry has that might be useful. For most " +"actions, this is ``None``. However, in some cases it contains extra " +"information. See :class:`AuditLogAction` for which actions have this " +"field filled out." +msgstr "" + +#: ../../api/audit_logs.rst c08175ab86fd405fb649cf0d0c775b14 +msgid "Parameters" +msgstr "" + +#: ../../docstring 35c34734a85b4772ab44cafcdb0c1487 +#: discord.AuditLogEntry.created_at:1 of +msgid "Returns the entry's creation time in UTC." +msgstr "" + +#: ../../docstring 42a54accd66e4774b590c0e2c23cef74 +#: discord.AuditLogEntry.category:1 of +msgid "The category of the action, if applicable." +msgstr "" + +#: ../../docstring 3f099394b54d4de38f2c30f64db98003 +#: discord.AuditLogEntry.changes:1 of +msgid "The list of changes this entry has." +msgstr "" + +#: ../../docstring 413918f132a3422e93b9002da753ffe3 +#: discord.AuditLogEntry.before:1 of +msgid "The target's prior state." +msgstr "" + +#: ../../docstring 3a963ab211594298b7dce384b294f823 +#: discord.AuditLogEntry.after:1 of +msgid "The target's subsequent state." +msgstr "" + +#: ../../api/audit_logs.rst:21 9c34e793cb5f4b34a8d6cd512b05b6d4 +msgid "An audit log change set." +msgstr "" + +#: ../../api/audit_logs.rst:25 648cb0d7d9424adb89c8770d0b186cac +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "" + +#: ../../api/audit_logs.rst:27 ../../api/audit_logs.rst:47 +#: 22738dc254a74ae8affa4e1f1f8070c5 e75457782a604b12aeb144f622cfe39b +msgid "" +"Depending on the :class:`AuditLogActionCategory` retrieved by " +":attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute " +"differs:" +msgstr "" + +#: ../../api/audit_logs.rst:32 ../../api/audit_logs.rst:52 +#: 379adfee54274485af0b1e0f7dc23210 fcd3038e483a44f9a03e061bbd948a64 +msgid "Category" +msgstr "" + +#: ../../api/audit_logs.rst:32 ../../api/audit_logs.rst:52 +#: 7bd15b04a76e4179b168c633efa30f9e b05a2b6a3b6f475982250fadc236f33a +msgid "Description" +msgstr "" + +#: ../../api/audit_logs.rst:34 ../../api/audit_logs.rst:54 +#: 902907e14ba441e68b97aef85eb47f72 f2d6dd2b9e4b4d6b88069f0cdb91faa6 +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr "" + +#: ../../api/audit_logs.rst:34 96aae1a9c95142c7849d54db6879d73f +msgid "All attributes are set to ``None``." +msgstr "" + +#: ../../api/audit_logs.rst:36 ../../api/audit_logs.rst:56 +#: 4d9f86b779414b2bb942360ba5e35da7 525ec285c87441b886ce406e12a9d4d6 +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr "" + +#: ../../api/audit_logs.rst:36 5480a9ad1e824c3099b5563be257c2b3 +msgid "All attributes are set the value before deletion." +msgstr "" + +#: ../../api/audit_logs.rst:38 ../../api/audit_logs.rst:58 +#: 0373be925ad74c8691a4b7b06d0a7d89 739dd30af79f4035b167f2cc35db3041 +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr "" + +#: ../../api/audit_logs.rst:38 df09ff4f27d34aa185e94b1c06d9dfae +msgid "All attributes are set the value before updating." +msgstr "" + +#: ../../api/audit_logs.rst:40 ../../api/audit_logs.rst:60 +#: 52b5f385907040839f5868a9d4477e32 7a9cdb005dbe4e89a838c79fd69c1a7f +msgid "``None``" +msgstr "" + +#: ../../api/audit_logs.rst:40 ../../api/audit_logs.rst:60 +#: 111233d756ec4cf1bfd5cef5cff6cf04 6c7e921e96c94a3e854950a8c6b146ba +msgid "No attributes are set." +msgstr "" + +#: ../../api/audit_logs.rst:45 edb4a55e3e5f4caabff853f3be4b798e +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "" + +#: ../../api/audit_logs.rst:54 89f9d7137cb44ab792b4337fbf783706 +msgid "All attributes are set to the created value" +msgstr "" + +#: ../../api/audit_logs.rst:56 70697ea9742a4aa89cc8b3753ad0b492 +msgid "All attributes are set to ``None``" +msgstr "" + +#: ../../api/audit_logs.rst:58 63982e1978f84b79bf1b5f1ea26e542f +msgid "All attributes are set the value after updating." +msgstr "" + +#: ../../api/audit_logs.rst:67 2bdd655c0b224e57ab49fa7ecdd5f9f9 +msgid "" +"Represents an audit log \"change\" object. A change object has dynamic " +"attributes that depend on the type of action being done. Certain actions " +"map to certain attributes being set." +msgstr "" + +#: ../../api/audit_logs.rst:71 64e739ada7d84c9ab9329fdec9e293ef +msgid "" +"Note that accessing an attribute that does not match the specified action" +" will lead to an attribute error." +msgstr "" + +#: ../../api/audit_logs.rst:74 ea2b849865ee43b2b21ed87142d49b37 +msgid "" +"To get a list of attributes that have been set, you can iterate over " +"them. To see a list of all possible attributes that could be set based on" +" the action being done, check the documentation for " +":class:`AuditLogAction`, otherwise check the documentation below for all " +"attributes that are possible." +msgstr "" + +#: ../../api/audit_logs.rst:83 ef597c9d783f40568dc26ac23521500b +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "" + +#: ../../api/audit_logs.rst:87 bc618385e5f4451383183bf6a929b942 +msgid "A name of something." +msgstr "" + +#: ../../api/audit_logs.rst:89 ../../api/audit_logs.rst:230 +#: ../../api/audit_logs.rst:250 ../../api/audit_logs.rst:351 +#: ../../api/audit_logs.rst:463 ../../api/audit_logs.rst:471 +#: ../../api/audit_logs.rst:525 ../../api/audit_logs.rst:531 +#: 446725aaf65d4ddfb3011dd6c382a9bf 4b2ddc1049304c70bfa9ea00ac6484df +#: 8d014103b85e4d18bbf90074f7f42db2 a30eef0197584b019e89d220d779e48a +#: c5c4e0ae4e45496eb32c7907364cb483 d40120b690fa458fb3677608ad3130cb +#: d41973787ca043fe878e0c937df69154 e3f884ad7910494394662d3476eaa4d8 +msgid ":class:`str`" +msgstr "" + +#: ../../api/audit_logs.rst:93 0e63465fd6d14b7d8ce61e59c71f8814 +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "" + +#: ../../api/audit_logs.rst:95 ../../api/audit_logs.rst:101 +#: ../../api/audit_logs.rst:107 ../../api/audit_logs.rst:113 +#: ../../api/audit_logs.rst:421 27f36233f3e748669f14d6b5a674e1aa +#: 2bbdc8f9bd49492ebf765dbefaf45f2f 4c1306f7d9c04f5fb67d12193248a253 +#: 5c48319392134b6aacddc014c3f33a96 a8c90701ac52439082d83abf62f9e7ac +msgid ":class:`Asset`" +msgstr "" + +#: ../../api/audit_logs.rst:99 5b303b9cf83c46fca0dba405038b2970 +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "" + +#: ../../api/audit_logs.rst:105 970bba8b6a354068930ec6c5bf999c14 +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "" + +#: ../../api/audit_logs.rst:111 be8abed6d08947a784fabd6da26d7ae5 +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "" + +#: ../../api/audit_logs.rst:117 bec033ce155d429a831d95885153df21 +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "" + +#: ../../api/audit_logs.rst:119 abf04331146546d7bd6db1c76f3bbcf6 +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "" + +#: ../../api/audit_logs.rst:123 aaccca5628a140a6a100e9ae8ff6e610 +msgid "The guild's AFK channel." +msgstr "" + +#: ../../api/audit_logs.rst:125 ../../api/audit_logs.rst:136 +#: 8aa8716742134fe481fb5a6efa9c8e31 94a41db4bd5b442caf00ed7897f5f95b +msgid "" +"If this could not be found, then it falls back to a :class:`Object` with " +"the ID being set." +msgstr "" + +#: ../../api/audit_logs.rst:128 dc2ab86efd5a482d896f744e0838bb34 +msgid "See :attr:`Guild.afk_channel`." +msgstr "" + +#: ../../api/audit_logs.rst:130 5e0504eb0bb24ea0a88e0d59634b71bd +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "" + +#: ../../api/audit_logs.rst:134 e6c5b28e91214bd7b7362d4386242487 +msgid "The guild's system channel." +msgstr "" + +#: ../../api/audit_logs.rst:139 f290a0b588aa450aae75a95c1af3b494 +msgid "See :attr:`Guild.system_channel`." +msgstr "" + +#: ../../api/audit_logs.rst:141 ../../api/audit_logs.rst:153 +#: ../../api/audit_logs.rst:165 ../../api/audit_logs.rst:192 +#: 4f3c183d07a647a68232bc6f960e39dc 752da77502a64b3f80cda3b10ece282d +#: 75f60680df544cd6bd165b17b47dcae0 ede7bc22df7845f8ae20d1d1831204b4 +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "" + +#: ../../api/audit_logs.rst:146 8faef8366bdb43a58ffe62635a483aef +msgid "The guild's rules channel." +msgstr "" + +#: ../../api/audit_logs.rst:148 ../../api/audit_logs.rst:160 +#: ../../api/audit_logs.rst:189 7668ff4c498d417094db3a518125a694 +#: 96ccebfcd99048b8b8f130eddd487b0f d70c738ba4ed464387fe8d9dd4469707 +msgid "" +"If this could not be found then it falls back to a :class:`Object` with " +"the ID being set." +msgstr "" + +#: ../../api/audit_logs.rst:151 2be308fc4ff24d44a416b91c21c36c0b +msgid "See :attr:`Guild.rules_channel`." +msgstr "" + +#: ../../api/audit_logs.rst:158 bfff8d711723497783a47ebed12b641a +msgid "The guild's public updates channel." +msgstr "" + +#: ../../api/audit_logs.rst:163 dff462f591124507b6264cdb9b1e7004 +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "" + +#: ../../api/audit_logs.rst:169 1568138420834f2391b05c079775376b +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "" + +#: ../../api/audit_logs.rst:175 5287c0b314ec41518facad6060be03a9 +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "" + +#: ../../api/audit_logs.rst:181 8d14a1e130c7403d9c1a381cb96983c9 +msgid "The guild's widget has been enabled or disabled." +msgstr "" + +#: ../../api/audit_logs.rst:183 ../../api/audit_logs.rst:302 +#: ../../api/audit_logs.rst:310 ../../api/audit_logs.rst:335 +#: ../../api/audit_logs.rst:343 ../../api/audit_logs.rst:400 +#: ../../api/audit_logs.rst:479 ../../api/audit_logs.rst:485 +#: ../../api/audit_logs.rst:491 ../../api/audit_logs.rst:511 +#: 150d6c683e5e43338ea9c52fcb44296e 41b6b46f42b542cca84e22064c42649d +#: 5ea7f3ebf0e3458aab55647bc2b6b207 6b1ec8059db9461eba7c85c1813e9749 +#: 6d333e9edc9743f889dfaf5c46e70264 aab3070967ec4ba68ad8d040d459b62a +#: b66e3d7285524390ac5536c97ffcb8fa d354c177497e4afeb2eda288f2c1ed27 +#: da435cbab68b4c9bb613f0a21f9d3e9b eb1dc1ce86b84aeb9a7498d83da1ed2b +msgid ":class:`bool`" +msgstr "" + +#: ../../api/audit_logs.rst:187 c39996a2e84747dc93d10ff89e1d686d +msgid "The widget's channel." +msgstr "" + +#: ../../api/audit_logs.rst:196 801f1f0e800b4c34b11266b369312838 +msgid "The guild's verification level." +msgstr "" + +#: ../../api/audit_logs.rst:198 5607dd7e4de149f29dc88cfb79f0a564 +msgid "See also :attr:`Guild.verification_level`." +msgstr "" + +#: ../../api/audit_logs.rst:200 734c187892f04c4fade41a9d6b7864a3 +msgid ":class:`VerificationLevel`" +msgstr "" + +#: ../../api/audit_logs.rst:204 f55da2b798784c2e98ea700f82e4b595 +msgid "The guild's default notification level." +msgstr "" + +#: ../../api/audit_logs.rst:206 3ddff88f4798418ba297485780c239d3 +msgid "See also :attr:`Guild.default_notifications`." +msgstr "" + +#: ../../api/audit_logs.rst:208 7d348b8ad0a144738c16a613b907dcdc +msgid ":class:`NotificationLevel`" +msgstr "" + +#: ../../api/audit_logs.rst:212 4c1a0f78b396443d9aa4acf1b3c39aed +msgid "The guild's content filter." +msgstr "" + +#: ../../api/audit_logs.rst:214 8979396960e34ebfa8f70c43bbc4fa99 +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "" + +#: ../../api/audit_logs.rst:216 4034eefe613e4a599556b650983a1b13 +msgid ":class:`ContentFilter`" +msgstr "" + +#: ../../api/audit_logs.rst:220 a27fb3efca7f47a1b55ef70533a61c15 +msgid "The guild's default message notification setting." +msgstr "" + +#: ../../api/audit_logs.rst:226 dd6f3d7094014fb4b57bd573d461ca19 +msgid "The guild's vanity URL." +msgstr "" + +#: ../../api/audit_logs.rst:228 a4f27efea9584e64bc09d1281de74041 +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "" + +#: ../../api/audit_logs.rst:234 cab946ceefb34cbdbb201b6ee9faa4ff +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "" + +#: ../../api/audit_logs.rst:240 cd2b82d9399b4fc1a53bd1faa7ff0a47 +msgid "The type of channel or sticker." +msgstr "" + +#: ../../api/audit_logs.rst:242 4c4285a9bab749a4a8528ec7d131df5f +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "" + +#: ../../api/audit_logs.rst:246 60f321ea7cbb469d8d488dc97e96023f +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "" + +#: ../../api/audit_logs.rst:248 7b27114b6e11464e9f2e37c9017f987a +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "" + +#: ../../api/audit_logs.rst:254 c2672f5fdf1c4c66864f02f146c1a0d7 +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "" + +#: ../../api/audit_logs.rst:256 f4774c7dd9bb4800a5a94a6c67b562f3 +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "" + +#: ../../api/audit_logs.rst:262 a8e6fa9993e84b819491b9ca68fb802e +msgid "" +"A list of permission overwrite tuples that represents a target and a " +":class:`PermissionOverwrite` for said target." +msgstr "" + +#: ../../api/audit_logs.rst:265 c583fbbb96a1450bac4273b8b018711d +msgid "" +"The first element is the object being targeted, which can either be a " +":class:`Member` or :class:`User` or :class:`Role`. If this object is not " +"found then it is a :class:`Object` with an ID being filled and a ``type``" +" attribute set to either ``'role'`` or ``'member'`` to help decide what " +"type of ID it is." +msgstr "" + +#: ../../api/audit_logs.rst:271 cdaab8d4d2bb4c95960cccc87668788d +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "" + +#: ../../api/audit_logs.rst:275 dd4d023a07754d20869e7c45e3045b06 +msgid "The privacy level of the stage instance or scheduled event." +msgstr "" + +#: ../../api/audit_logs.rst:277 508657738a654db1b7eb6838f21bd0e6 +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "" + +#: ../../api/audit_logs.rst:281 46995ba9d85c4080af86b7665885f165 +msgid "A list of roles being added or removed from a member." +msgstr "" + +#: ../../api/audit_logs.rst:283 a0e20a7805af4926a3fa92e47895f7f6 +msgid "" +"If a role is not found then it is a :class:`Object` with the ID and name " +"being filled in." +msgstr "" + +#: ../../api/audit_logs.rst:286 f2df3a2b3b1849bbb3878af005243bac +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "" + +#: ../../api/audit_logs.rst:290 4d70f85ee1ec4a2381d32f10d335eb69 +msgid "The nickname of a member." +msgstr "" + +#: ../../api/audit_logs.rst:292 16305a55a7c842b188d1ccbd3742c186 +msgid "See also :attr:`Member.nick`" +msgstr "" + +#: ../../api/audit_logs.rst:298 35419da87a914a11b46ff7fae236ead8 +msgid "Whether the member is being server deafened." +msgstr "" + +#: ../../api/audit_logs.rst:300 064049dcc09946d394019bdf067049d4 +msgid "See also :attr:`VoiceState.deaf`." +msgstr "" + +#: ../../api/audit_logs.rst:306 d764d48f607042e285298a7b2995279e +msgid "Whether the member is being server muted." +msgstr "" + +#: ../../api/audit_logs.rst:308 6f2f962dc5e54ccd9062f510af15c64e +msgid "See also :attr:`VoiceState.mute`." +msgstr "" + +#: ../../api/audit_logs.rst:314 fe8687b2538d4db4b0f4aa82a8d0a8c7 +msgid "The permissions of a role." +msgstr "" + +#: ../../api/audit_logs.rst:316 e89aa3f4fab04e3c8b084cf0ca8b29ee +msgid "See also :attr:`Role.permissions`." +msgstr "" + +#: ../../api/audit_logs.rst:318 ../../api/audit_logs.rst:407 +#: b28c52db483d462d9a4a19cb548cb0a2 b8ee17b89d06486894ada8257b51077a +msgid ":class:`Permissions`" +msgstr "" + +#: ../../api/audit_logs.rst:323 4da7e939e514443c8a9e16bff5eaf851 +msgid "The colour of a role." +msgstr "" + +#: ../../api/audit_logs.rst:325 e2211420ff06488ca4538d66c441b2b4 +msgid "See also :attr:`Role.colour`" +msgstr "" + +#: ../../api/audit_logs.rst:327 078b52a5307145a5867e268f7dd9c91b +msgid ":class:`Colour`" +msgstr "" + +#: ../../api/audit_logs.rst:331 18e2a34ffc1243a38abe7abb91ec9011 +msgid "Whether the role is being hoisted or not." +msgstr "" + +#: ../../api/audit_logs.rst:333 762b47089d634dabbd143aad28ac6b9a +msgid "See also :attr:`Role.hoist`" +msgstr "" + +#: ../../api/audit_logs.rst:339 22f67e8949e341e9bc501a8058af5e77 +msgid "Whether the role is mentionable or not." +msgstr "" + +#: ../../api/audit_logs.rst:341 15c7f2a8346848e195fd3b084516f324 +msgid "See also :attr:`Role.mentionable`" +msgstr "" + +#: ../../api/audit_logs.rst:347 4ef6f0361cb542e7bcb23bc0dd36648e +msgid "The invite's code." +msgstr "" + +#: ../../api/audit_logs.rst:349 ad1db9cf2cc04650a0c4fa67e0b2605c +msgid "See also :attr:`Invite.code`" +msgstr "" + +#: ../../api/audit_logs.rst:355 49f35564ce96413196fb574cea5bbeb8 +msgid "A guild channel." +msgstr "" + +#: ../../api/audit_logs.rst:357 dee6f7b2ca214481bf352411a4127029 +msgid "" +"If the channel is not found then it is a :class:`Object` with the ID " +"being set. In some cases the channel name is also set." +msgstr "" + +#: ../../api/audit_logs.rst:360 b5c18089d22443fdb6744b7e54265149 +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "" + +#: ../../api/audit_logs.rst:364 4f4f4e2df1884936945c72e140cef320 +msgid "The user who created the invite." +msgstr "" + +#: ../../api/audit_logs.rst:366 41c0b057932f4fdb831f10a123f4f5cd +msgid "See also :attr:`Invite.inviter`." +msgstr "" + +#: ../../api/audit_logs.rst:368 9c3d05e61e0842d492250cebdc30de68 +msgid "Optional[:class:`User`]" +msgstr "" + +#: ../../api/audit_logs.rst:372 785fe8eb046342ed8e3d1820b6171fc1 +msgid "The invite's max uses." +msgstr "" + +#: ../../api/audit_logs.rst:374 f23a0ed1b8764469a5363f90e504b0dd +msgid "See also :attr:`Invite.max_uses`." +msgstr "" + +#: ../../api/audit_logs.rst:380 2f7a9ebe47b24b3289f28a2af2df4064 +msgid "The invite's current uses." +msgstr "" + +#: ../../api/audit_logs.rst:382 0697b46b1b1a46ff9aa3f95a624a8f53 +msgid "See also :attr:`Invite.uses`." +msgstr "" + +#: ../../api/audit_logs.rst:388 1ccb1f8f72844dcbb048f17a94ee6a76 +msgid "The invite's max age in seconds." +msgstr "" + +#: ../../api/audit_logs.rst:390 b5d3678b20594a5f815453b4f8518588 +msgid "See also :attr:`Invite.max_age`." +msgstr "" + +#: ../../api/audit_logs.rst:396 ef58ca62545041cca49baa61fb343e9e +msgid "If the invite is a temporary invite." +msgstr "" + +#: ../../api/audit_logs.rst:398 af67554ac8044df4a29aefb2b3401ab4 +msgid "See also :attr:`Invite.temporary`." +msgstr "" + +#: ../../api/audit_logs.rst:405 dc4d674c3f28400e8361fa172b779c7a +msgid "The permissions being allowed or denied." +msgstr "" + +#: ../../api/audit_logs.rst:411 371791d7ef4e4ecb8d38a07a6070d232 +msgid "The ID of the object being changed." +msgstr "" + +#: ../../api/audit_logs.rst:417 f540f674d6474fb8b63d04b273858111 +msgid "The avatar of a member." +msgstr "" + +#: ../../api/audit_logs.rst:419 b836e98621804b13a085b320db564b6f +msgid "See also :attr:`User.avatar`." +msgstr "" + +#: ../../api/audit_logs.rst:425 7b62e7346b814745b8c95a4f415c9984 +msgid "" +"The number of seconds members have to wait before sending another message" +" in the channel." +msgstr "" + +#: ../../api/audit_logs.rst:428 a727ab53b80f41e0a0ff884cbb1769bf +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "" + +#: ../../api/audit_logs.rst:434 7e8d6adaf21e44bd8b352011f1bbdd86 +msgid "" +"The region for the voice channel’s voice communication. A value of " +"``None`` indicates automatic voice region detection." +msgstr "" + +#: ../../api/audit_logs.rst:437 5eea22819cb84ace84ff22d4e4eca544 +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "" + +#: ../../api/audit_logs.rst:439 26a26dcb023b4335a5401b828880afb6 +msgid ":class:`VoiceRegion`" +msgstr "" + +#: ../../api/audit_logs.rst:443 aa13a908998247d5a5c6b4f1105db8d3 +msgid "The camera video quality for the voice channel's participants." +msgstr "" + +#: ../../api/audit_logs.rst:445 2f820e9c62fd44d7b4f1d67638eb6ca4 +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "" + +#: ../../api/audit_logs.rst:447 69066d43b5f045e49a33eec9ff6d02b6 +msgid ":class:`VideoQualityMode`" +msgstr "" + +#: ../../api/audit_logs.rst:451 fcf66655ea9f426f9fb75681433021dd +msgid "The format type of a sticker being changed." +msgstr "" + +#: ../../api/audit_logs.rst:453 bac989ca498044eba06367ab7dfa6634 +msgid "See also :attr:`GuildSticker.format`" +msgstr "" + +#: ../../api/audit_logs.rst:455 4bab0c4f82da46b0a6db49bff1ccf5cd +msgid ":class:`StickerFormatType`" +msgstr "" + +#: ../../api/audit_logs.rst:459 b8ae93cb7b2d4d74af69a82dbdecd356 +msgid "The name of the emoji that represents a sticker being changed." +msgstr "" + +#: ../../api/audit_logs.rst:461 1781bca470444de9a4d6b7ab31571a47 +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "" + +#: ../../api/audit_logs.rst:467 f4aabbb068064df8af5244ad049889c8 +msgid "The description of a sticker being changed." +msgstr "" + +#: ../../api/audit_logs.rst:469 13447d39e8f74a369753ce9b67583f77 +msgid "See also :attr:`GuildSticker.description`" +msgstr "" + +#: ../../api/audit_logs.rst:475 3a82a86af6b84b5f9083e815345ec579 +msgid "The availability of a sticker being changed." +msgstr "" + +#: ../../api/audit_logs.rst:477 334832529c474126b92c8c76bf7f94cc +msgid "See also :attr:`GuildSticker.available`" +msgstr "" + +#: ../../api/audit_logs.rst:483 e429e343ee4040fb978dd3ace51dfd41 +msgid "The thread is now archived." +msgstr "" + +#: ../../api/audit_logs.rst:489 3624467b8c544d64929c19e279917797 +msgid "The thread is being locked or unlocked." +msgstr "" + +#: ../../api/audit_logs.rst:495 40135d8e19024baf9e887b135810e19c +msgid "The thread's auto archive duration being changed." +msgstr "" + +#: ../../api/audit_logs.rst:497 6e370527751f40e8a0852525260dcb09 +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "" + +#: ../../api/audit_logs.rst:503 49a68128a1c8419eae71d41acf3ddb55 +msgid "The default auto archive duration for newly created threads being changed." +msgstr "" + +#: ../../api/audit_logs.rst:509 af1fc2690db941d7be6015fbdec83129 +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "" + +#: ../../api/audit_logs.rst:515 92b70a2eafdd47af9ae03b88a54a908a +msgid "This command's permissions were updated." +msgstr "" + +#: ../../api/audit_logs.rst:521 b8dde8324c9845ac910a7aa80ee6d36b +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "" + +#: ../../api/audit_logs.rst:523 c7e2046260194accae7da7099026c93e +msgid "See also :attr:`VoiceChannel.status`." +msgstr "" + +#: ../../api/audit_logs.rst:529 1028bd2d6f464ae48a24408209380e30 +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/clients.po b/docs/locales/en/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..1bb8199023 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/clients.po @@ -0,0 +1,3193 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-12 14:51+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/clients.rst:4 723ac37bda644d2181cb3df9c4c833f9 +msgid "Client Objects" +msgstr "" + +#: ../../api/clients.rst:7 f5a4ed36d6a84272acf23c5afab0c592 +msgid "Bots" +msgstr "" + +#: 8400a3a76ec1437498368512f2bcd8e6 discord.bot.Bot:1 of +msgid "Represents a discord bot." +msgstr "" + +#: 5c56ee85934b4790b06f26caec909ed9 discord.bot.Bot:3 of +msgid "" +"This class is a subclass of :class:`discord.Client` and as a result " +"anything that you can do with a :class:`discord.Client` you can do with " +"this bot." +msgstr "" + +#: 241bd5c3a34e4392b8a6581c2767d0a3 discord.bot.Bot:7 of +msgid "" +"This class also subclasses ``ApplicationCommandMixin`` to provide the " +"functionality to manage commands." +msgstr "" + +#: 76747a81bf1d4154946509eeddff1408 discord.bot.Bot:14 of +msgid "The content prefixed into the default help message." +msgstr "" + +#: 306f1e629eb74fb8897156f57deef766 4b9ecfa5eb284deeb0548250176a4191 +#: 560eb5d041474f8b93073a52bae970da 5b8e12be2e2244f2b1f628987c52633e +#: 5f2243a92d4c43f28cb1a2e4daf1c0c6 7d1a0d003e9a4f24bc90817b46fa956b +#: 82dc8e078ca8440b98e99a943f7ad1ee discord.Bot.store_url +#: discord.Client.store_url discord.bot.Bot discord.client.Client +#: discord.shard.AutoShardedClient fda9202ed81f4662b3410aefa9fee419 of +msgid "type" +msgstr "" + +#: 4ba364e8ffa94975b363bbe62943da28 ba970c9790144df49b7b45acd8f64d8f +#: discord.Bot.store_url:5 discord.Client.store_url:5 discord.bot.Bot:16 of +msgid ":class:`str`" +msgstr "" + +#: discord.bot.Bot:20 f0a6d897b9a74825856b3ed0d0bdf075 of +msgid "" +"The user ID that owns the bot. If this is not set and is then queried via" +" :meth:`.is_owner` then it is fetched automatically using " +":meth:`~.Bot.application_info`." +msgstr "" + +#: 28670aa78ebf4c3895e10886d6316c0e discord.bot.Bot:24 of +msgid "Optional[:class:`int`]" +msgstr "" + +#: dc016a35e8654b73b6546b2366030431 discord.bot.Bot:28 of +msgid "" +"The user IDs that owns the bot. This is similar to :attr:`owner_id`. If " +"this is not set and the application is team based, then it is fetched " +"automatically using :meth:`~.Bot.application_info`. For performance " +"reasons it is recommended to use a :class:`set` for the collection. You " +"cannot set both ``owner_id`` and ``owner_ids``." +msgstr "" + +#: 7a7751b24b674cfeb944b5d46e42d6d6 discord.bot.Bot:36 of +msgid "Optional[Collection[:class:`int`]]" +msgstr "" + +#: 45a36a811f6a45e184e6cc9343cf8dc3 discord.bot.Bot:40 of +msgid "" +"Guild IDs of guilds to use for testing commands. The bot will not create " +"any global commands if debug guild IDs are passed." +msgstr "" + +#: 78e894745191469fb6df43ad5513b831 8634aab7c85847109ab9f0cddc8753e7 +#: discord.bot.Bot:45 discord.shard.AutoShardedClient:25 of +msgid "Optional[List[:class:`int`]]" +msgstr "" + +#: c0b305ec45b44c44834fc2584f057881 discord.bot.Bot:49 of +msgid "" +"Whether to automatically sync slash commands. This will call " +":meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in " +":attr:`.process_application_commands` if the command is not found. " +"Defaults to ``True``." +msgstr "" + +#: 374d768efc3849968fe9c8d012de6b22 b45762ac677e4ede8a83b12bd8bcedc0 +#: discord.bot.Bot:54 discord.bot.BotBase.is_owner:18 of +msgid ":class:`bool`" +msgstr "" + +#: c00ff4be197447e3964bbc0d13cb246b discord.bot.Bot:58 of +msgid "" +"The default context types that the bot will use for commands. Defaults to" +" a set containing :attr:`InteractionContextType.guild`, " +":attr:`InteractionContextType.bot_dm`, and " +":attr:`InteractionContextType.private_channel`." +msgstr "" + +#: 1851a493f6f14c01ac9393ca67e53686 discord.bot.Bot:64 of +msgid "Collection[:class:`InteractionContextType`]" +msgstr "" + +#: 55913631ea9743b8a11dd7c19978ef24 discord.bot.Bot:68 of +msgid "" +"The default integration types that the bot will use for commands. " +"Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "" + +#: 0f9f34c953de411c945a851f32bc0ec7 discord.bot.Bot:73 of +msgid "Collection[:class:`IntegrationType`]]" +msgstr "" + +#: discord.bot.ApplicationCommandMixin.command:1 +#: ede0ee8579c24e949538216bce9a910e of +msgid "An alias for :meth:`application_command`." +msgstr "" + +#: abc8f0b084cd401aacc2646108465bdc +#: discord.bot.ApplicationCommandMixin.command:5 of +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "" + +#: ../../api/clients.rst 29c266428c724030856e400f0321170c +#: 3157343eb8dc43c38f49f7485b6f3d24 383b7b70518e4373a487cda57b5af7e9 +#: 3cb58a3abe1b42c1819b2852310d653a 50b3f627d64d43968598406f8a54b014 +#: 54efaf79f48a481191c6c2ef7a886625 59323c4d26924524b3f0a37f55605994 +#: 76dd9328c31b4a4f950ccd0e3951a95b 7a83a9a6026f4952ac18057feeedb044 +#: 894ca1b95aa546fa989ebc8cdeba861f 8dcb3fd905cc4640a1d94643105dd392 +#: 96723fb434f94be5a857bec15ed52438 aa170a708a2748799b64e1d6e92be480 +#: ab586c5a25de46ad95f31d7932fa193a ad2dc10d548c40968eb973127142a32b +#: b147c7c183114833a614aa7b243e3b87 c846f5d2939f47388cb6d8ca7e75a1a5 +#: c938d82420ef4100a294a971ae9ed880 cd605e7e5962488ab3e2441535990042 +#: cd623e270a47436b8f61ff60505e83cf d26b63e1b0dd4241989d229e204c2df0 +#: discord.client.Client.wait_for e0f6f617681043f796f22dae5afb1682 +#: e6969df24be54c1da77efc157913d736 e93403a910dc4626bba9fb32741c8826 +#: e9d1b7d02e6341219d94f03c85af5364 fd85f38bdfd648178e90d9d7b75e359b of +msgid "Returns" +msgstr "" + +#: 1dac05e697c7439aacc0f377b675f758 3ac657fe5790429d993c8722d4db5e8d +#: discord.bot.ApplicationCommandMixin.application_command:6 +#: discord.bot.ApplicationCommandMixin.command:9 of +msgid "" +"A decorator that converts the provided method into an " +":class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "" + +#: ../../api/clients.rst 00df3d9a2f42415fb50effb3dcc752e2 +#: 026a834fb831418abc59198052da3f3d 065b24140ad64f89bb8aebb7cbaaab81 +#: 169835626ad247a4bcc302daabf74f2b 1964b28d4c46484697f52e43a3640e3d +#: 1e47d1137dd948f7a4766ae5501226cd 211c294473a74b80966d5142f36889f0 +#: 27ce0d1faae44f67b52ec5fe02ef48d2 30cedd7bc2524dcd8393358dc4220ba0 +#: 3f756d9875684a0ebe2664b9ca14132a 47506201077a4cf2a2d31c3225e7f066 +#: 49511cb9a7ad486a880ef83bf2b1b2e5 554f6802f4174ca49a08c4f404762728 +#: 5572b6fc69b947b6b4a38b5a3a0919fd 5dc7f8a955dc46239ce157d05489e188 +#: 606afb97d6624f858e67593ee96461ba 655d0d4943ab4822aa21d4e4a750d74b +#: 6587a9a35be04d6ebd805391f1cfaeae 661ae464da8e493ebd3265ad9d14cc99 +#: 679603f71c3842ceb9ab9301877e0a68 6a5cda973d654ea292590a860372879c +#: 709dc58325c146ad8a210ad694c05c1d 755dcc201bf14875a0f66b9268ab8006 +#: 802bd62917a4494ba82f62bcf514d251 804ec08a0674477f81206af58d000d7a +#: 80db389f7eb84893ab0b237312ef5b00 87d6c1142b8d4e4f84dbc4462fa8af12 +#: 8df350c04c424a6ba39097fe0b5f8a9c 94fb92d7017746558cdd49a5591ea65f +#: 9ea4f8399da44aaea81fb23e3636094a a135a1aad44744079848b59aa8959a9b +#: ab9ba099fcf94cbb9bb79464abb21fa8 aff4a87e8ab24e42a5821a9016ae8c94 +#: b5a22ed2f79040b2a8deb95f91416849 b7ac4b96f8d2402ba0daae8c56c55910 +#: c08ffb6b169b4e5d9ea796330e158ba4 c776ad51021d4b88a50e1e87662bf4a5 +#: c813b855074d4004962e777b87bdb92b d01fd2e5a7ce4d7c8e3c738e2769c0b3 +#: d13af68c11444be193cc57060b9a1dd7 d70f77a306c44a01b87030581102cfb4 +#: discord.client.Client.entitlements discord.client.Client.fetch_guilds +#: discord.client.Client.wait_for ec487369222e4fca9c3158f3caec9ae7 +#: ecaa6e582e60430db9758f5ad91318c7 fef47654c88e403dad85dc4284b5a5ab +#: ff2fb46d9b514c9db7c97625b6860b5f of +msgid "Return type" +msgstr "" + +#: 345ed55a66c44c4983a66090789aecc8 474ab42ae6e948239450d90239bdcbf9 +#: discord.bot.ApplicationCommandMixin.application_command:8 +#: discord.bot.ApplicationCommandMixin.command:11 of +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "" + +#: 35cfe3da5dfe44d2995bf87aeb1a214e 441663afc2e74b37a0ddd0c6805b8773 +#: discord.client.Client.event:1 of +msgid "A decorator that registers an event to listen to." +msgstr "" + +#: 7d5f8e58c1464f75826c12241640cae5 c6dc5e087bec4eac9b921c9a20528fad +#: discord.client.Client.event:3 of +msgid "" +"You can find more info about the events on the :ref:`documentation below " +"`." +msgstr "" + +#: 58aa1c39e6954e56ba22f92148d0d097 b90fa4213ca24bf38c3510fa7c307036 +#: discord.client.Client.event:5 of +msgid "" +"The events must be a :ref:`coroutine `, if not, " +":exc:`TypeError` is raised." +msgstr "" + +#: c1c2cb3ef1b0421ab29258750cf15303 discord.client.Client.event:9 +#: e29528c36b9b4f09937e3c217970dacc of +msgid "" +"This replaces any default handlers. Developers are encouraged to use " +":py:meth:`~discord.Client.listen` for adding additional handlers instead " +"of :py:meth:`~discord.Client.event` unless default method replacement is " +"intended." +msgstr "" + +#: ../../api/clients.rst 00e6bd39c7fa4184844b6f7e7afcc5ef +#: 0a5f7aa535f24ca794e3c8734d4caf5f 2666501d112943b8b6641e0ee36d76ed +#: 2bb0d55c9f1e4b3489bd47b620ca3883 378fed9230884b5e9680753fe70c3989 +#: 3888f66b0d7d4eb7bfc805f9807a41d7 4727e7dbff374a62b8a56c79dc66082d +#: 51511a34fb6745aab1ca324ba180e340 5333ac2171494bb08f73a1fad01039bf +#: 5dedee9ffe954a98b442886bf9d3ad82 5fe56a006d574708abe19ebbaf839261 +#: 6ab72d7126304941a2843cd3f79e15bc 6c9daf6bb4464e6cbc2c184b3ccea998 +#: 6dcc2de71d1343bc93b3f0bca6661072 853e4bafa2c8478789b84f073f328614 +#: 923b691c5eda4326a0fe4609ae128330 93af98486bf7445e9912df5e0da0b0ea +#: 9dddf4f4551d4eb09d25088e95eed7b5 ad56de6ed3ee40d4b537dfd9f8bcc2c4 +#: b4b22e18c1bf40269e3dcfbaec8aae03 b897a699a6ae41eb83dee4e67d3b0f4a +#: be57f62d640d498db3acc576e8c69090 cab1be0a9d7a4ab18612dc4bdf535020 +#: d365fec41ab64fd19b3077f49a1088a4 discord.client.Client.entitlements +#: discord.client.Client.fetch_guilds discord.client.Client.wait_for +#: e4def2a95d484a9584fa73e8d26c4d1b e83bdfd3d60a4138a597146189b7446c +#: efa73facdf57418f9086572e7be0917d f7d3143efeea400d85cc0fcf45b1e15b of +msgid "Raises" +msgstr "" + +#: a11c6d8215d44d1b970f9f4eec435480 abc0b29447334a61ab35f241b27c1a3b +#: baba393bb0ae49f19ceb10505a6118f6 dac8224ddbd144bc80991d9f8509ae1b +#: discord.bot.BotBase.after_invoke:19 discord.bot.BotBase.before_invoke:18 +#: discord.client.Client.event:13 of +msgid "The coroutine passed is not actually a coroutine." +msgstr "" + +#: 24b2a7241cb049de8a09e3130bf59982 2d6af0e10e374eb2848aaf6af07794ca +#: 40c782af18fa4b6d95ff04ed328711de 4b54c577282844ab83de80cfe4c6af2e +#: 833994483f0d48bcb79e761846317133 8afe70b1dc3e415bbcb3587ae113f646 +#: ba886c1958ae47468695dc36cd20fa30 discord.bot.BotBase.check:12 +#: discord.bot.BotBase.check_once:18 discord.client.Client.add_listener:15 +#: discord.client.Client.change_presence:16 discord.client.Client.event:16 +#: discord.client.Client.listen:11 of +msgid "Example" +msgstr "" + +#: ../../api/clients.rst 029cc544048741f8a32c92d8ea711013 +#: 080b97188f5a44679891cfb716d50114 0a0a385dda714190bf496404866e2af0 +#: 17352eb8d90a471c86796deec5f40361 197545f9c6ed4c5da3e235134e4fe25a +#: 1995e834bfa04ce98aa43f02bd2745a4 1c0e015c47964f358c1c5adc8047b7c2 +#: 27e559c2588446bfb64518202432bf28 3200a85e4002416db55ed3790af21f4e +#: 340efc183485425687d5238c1b4e8ee3 3a0cbb5f03924ae4b02a402fe8156523 +#: 3c6cba4ba69e43249df187fcaeb5f207 53782ddd4eb34037ad076fa1e2cdfa2e +#: 566abd84b14f427a9dbe20726cd99445 61bdd2138a7145e49fcfbb06c5819cdc +#: 76ebe78f49d5406b8bcff947b1188cda 8bf1ef24b9714c1c8e0436865b442e9a +#: 944756aa81e34907af880c9ea3ddd943 99d7d45c973e4cab836405c222bbdf74 +#: 9fd02f2306464787b89f67ed08c49f2a a03bb4ec204c4867b740eb2c4bc3d398 +#: a32d372fc9f34a179efb70f960db2fcd b09e7584c7924b8c878f3b38d8698fbe +#: b9c75f273aa84490bb67b9aacb293eb7 c0bb632d73734973a0c9803a773856c4 +#: cab4484c55b54eacba7c50e15f403e73 cc185377777045ed8cae6a6f8d16080f +#: d374bb7d88ff4ad88004319adbe16e45 d569963daf604dc0929b2cc260f6e425 +#: da55697a42454226914e63e848802002 db76e6d208474bfc84b77836563a197a +#: discord.client.Client.entitlements discord.client.Client.fetch_guilds +#: discord.client.Client.wait_for f706cf333c1a47f1a2976aa784a20ba9 +#: f95bc5d223ff4f8ead1fe5ba86b4fd3a ff5108bb0b184c7082382a51ee4ba248 of +msgid "Parameters" +msgstr "" + +#: 92a9bc95fa124cc2a6481b3544402054 a4d2aa79666649ca85e4e8832e7231b4 +#: discord.client.Client.event:25 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr "" + +#: 368652e3c875428c9e7ed908c22e2bbb +#: discord.bot.ApplicationCommandMixin.message_command:1 of +msgid "" +"A shortcut decorator that invokes :func:`command` and adds it to the " +"internal command list via :meth:`add_application_command`. This shortcut " +"is made specifically for :class:`.MessageCommand`." +msgstr "" + +#: 230957d3b00d465ba1057bb8dde0375d +#: discord.bot.ApplicationCommandMixin.message_command:7 of +msgid "" +"A decorator that converts the provided method into a " +":class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "" + +#: 446d89e18a984c0899a05c5dae9c9d25 +#: discord.bot.ApplicationCommandMixin.message_command:9 of +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "" + +#: a72b3011a0c2494e95b73c91ef1bc5d8 +#: discord.bot.ApplicationCommandMixin.slash_command:1 of +msgid "" +"A shortcut decorator that invokes :func:`command` and adds it to the " +"internal command list via :meth:`add_application_command`. This shortcut " +"is made specifically for :class:`.SlashCommand`." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.slash_command:7 +#: fa51a00b24dc4eb8b85cb16e577cd0cb of +msgid "" +"A decorator that converts the provided method into a " +":class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "" + +#: 8cb4f64fc9b842e99f656c4edc427b1c +#: discord.bot.ApplicationCommandMixin.slash_command:9 of +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "" + +#: d09c64206574417eaa7824f3ba7b7070 +#: discord.bot.ApplicationCommandMixin.user_command:1 of +msgid "" +"A shortcut decorator that invokes :func:`command` and adds it to the " +"internal command list via :meth:`add_application_command`. This shortcut " +"is made specifically for :class:`.UserCommand`." +msgstr "" + +#: 2a5a5484ad2640a090cb56f82cfed16f +#: discord.bot.ApplicationCommandMixin.user_command:7 of +msgid "" +"A decorator that converts the provided method into a " +":class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "" + +#: 47980633a0e74e72af51935d418cd0e5 +#: discord.bot.ApplicationCommandMixin.user_command:9 of +msgid "Callable[..., :class:`UserCommand`]" +msgstr "" + +#: 9048c5a633c04c42af7a06b523435b08 b990261ea99f4f60a22b8c2f020d9aeb +#: discord.client.Client.listen:1 of +msgid "" +"A decorator that registers another function as an external event " +"listener. Basically this allows you to listen to multiple events from " +"different places e.g. such as :func:`.on_ready`" +msgstr "" + +#: 28112742cc894834a4199c50514e92b9 5c8494eb3a3847a28ea86a13f622b0ca +#: discord.client.Client.listen:5 of +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "" + +#: 62d1c8d54d9e4c5f8dd4f61219b254f1 7d847ee8a4554a5da695f22ce3d5313c +#: discord.client.Client.listen:7 of +msgid "The function being listened to is not a coroutine." +msgstr "" + +#: 05065b5c67e1401295e5b37bd9a647ce 0b4f57fc36b548dc991b0b9d9359c3db +#: 176d61be271e4a91a68e8a2183190329 discord.client.Client.add_listener:11 +#: discord.client.Client.listen:8 eefde4a89ebe4183b4d58c68754a33a3 of +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "" + +#: 467abba7c2824825bf9ac0b065144559 discord.client.Client.listen:29 +#: f2f041a61e2c4d96ae51fe3d10cfbc89 of +msgid "Would print one and two in an unspecified order." +msgstr "" + +#: 1ad893ae6d404e859a724d1384c3e12a d3c9f02c02b647ffab3f8609f92bef67 +#: discord.client.Client.listen:35 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`Coro\\`\\`\\, bound\\= " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, " +"bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr "" + +#: 6fab55fc960c41ab9946f4589469eba9 discord.Bot.activity:1 +#: discord.Client.activity:1 e0fb8761f68647b98e67aaf36915f6df of +msgid "The activity being used upon logging in." +msgstr "" + +#: 07fab2799a934430abec2938a4bcf215 a411bbe5b00c45c7a62f7f721f3d5fdd +#: discord.Bot.activity:3 discord.Client.activity:3 of +msgid "Optional[:class:`.BaseActivity`]" +msgstr "" + +#: 1c8bb7dda2c643708eff19f7c8e760ba +#: discord.bot.ApplicationCommandMixin.add_application_command:1 of +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "" + +#: 96cc010f3bdb49578bdc4e547b0bc6cc +#: discord.bot.ApplicationCommandMixin.add_application_command:3 of +msgid "" +"This is usually not called, instead the :meth:`command` or other shortcut" +" decorators are used instead." +msgstr "" + +#: bafc9036dfbf4fae92be90bb73f90d70 +#: discord.bot.ApplicationCommandMixin.add_application_command:9 of +msgid "The command to add." +msgstr "" + +#: 020ff49101bb40e38da9f516406c9bb9 1916ebc54d4d4a9f979821f8449a61a4 +#: 396fefe4d32b423d959c3f887cbca407 410ed683533f4e69b309b898a2e56c7d +#: 4e36c2c3e0ae4be2ba520d3da81da7b8 88c3ad85bb944f3da68503ca6321c03e +#: aeaa8913e17b4c6094e865bc4eb2758f af1fa242a1ce4af9a40dba844bc2afb3 +#: c811a0a6a91d4b8c98daa60d8f8c78b9 +#: discord.bot.ApplicationCommandMixin.add_application_command:12 +#: discord.bot.ApplicationCommandMixin.invoke_application_command:10 +#: discord.bot.ApplicationCommandMixin.process_application_commands:26 +#: discord.bot.ApplicationCommandMixin.sync_commands:55 +#: discord.bot.BotBase.add_check:10 +#: discord.bot.BotBase.on_application_command_error:14 +#: discord.bot.BotBase.remove_check:12 discord.client.Client.add_listener:12 +#: discord.client.Client.add_view:20 +#: discord.client.Client.before_identify_hook:18 discord.client.Client.clear:8 +#: discord.client.Client.close:6 discord.client.Client.connect:18 +#: discord.client.Client.delete_invite:16 discord.client.Client.login:14 +#: discord.client.Client.on_error:15 discord.client.Client.remove_listener:10 +#: discord.client.Client.run:28 discord.client.Client.start:11 +#: discord.client.Client.wait_until_ready:6 discord.cog.CogMixin.add_cog:24 +#: discord.cog.CogMixin.reload_extension:26 +#: discord.cog.CogMixin.unload_extension:27 +#: discord.shard.AutoShardedClient.change_presence:28 +#: discord.shard.AutoShardedClient.close:6 +#: discord.shard.AutoShardedClient.connect:18 e593feebb1924681b8862ef74835f00c +#: f1b8003468d840da8d87720db56a2d49 f96cd92a798a4613a4949f67c608e4ba of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 4676b197eaa64f3c8557578155cb0212 discord.bot.BotBase.add_check:1 of +msgid "" +"Adds a global check to the bot. This is the non-decorator interface to " +":meth:`.check` and :meth:`.check_once`." +msgstr "" + +#: 1c565c3a3b6e4e609c1d3fef171ba6aa discord.bot.BotBase.add_check:5 of +msgid "The function that was used as a global check." +msgstr "" + +#: 383356d72dc04d609b99e2a0d22194d5 discord.bot.BotBase.add_check:7 of +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "" + +#: 469c368d1b3e4018a39712ff4c210d82 discord.cog.CogMixin.add_cog:1 of +msgid "Adds a \"cog\" to the bot." +msgstr "" + +#: 01d697723a104b94a08803b7def2ef43 discord.cog.CogMixin.add_cog:3 of +msgid "A cog is a class that has its own event listeners and commands." +msgstr "" + +#: 058f78a5848240a4a363d75624ed841a discord.cog.CogMixin.add_cog:7 of +msgid "" +":exc:`.ClientException` is raised when a cog with the same name is " +"already loaded." +msgstr "" + +#: 694b2692377043a5b06d75034db6aa97 discord.cog.CogMixin.add_cog:11 of +msgid "The cog to register to the bot." +msgstr "" + +#: cdf4075cfc104eb0970e8eb045d4b797 discord.cog.CogMixin.add_cog:14 of +msgid "" +"If a previously loaded cog with the same name should be ejected instead " +"of raising an error. .. versionadded:: 2.0" +msgstr "" + +#: a8747915f97546c7a620d5cf9b8de8b4 discord.cog.CogMixin.add_cog:14 of +msgid "" +"If a previously loaded cog with the same name should be ejected instead " +"of raising an error." +msgstr "" + +#: 4cbbee08205341f39663cc6867ed645b discord.cog.CogMixin.add_cog:20 of +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "" + +#: c646093fb86146849becfbcaad49ea63 discord.cog.CogMixin.add_cog:21 of +msgid "An error happened during loading." +msgstr "" + +#: 841c388e38ef4bf5bce9805ddc53a54b discord.cog.CogMixin.add_cog:22 of +msgid "A cog with the same name is already loaded." +msgstr "" + +#: 4b214f203e12429ba249629d5b435fb9 88e689f9afc241369d6babb194fc1a03 +#: discord.client.Client.add_listener:1 of +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "" + +#: 9bdb658ed327483d848cf491f8b3bbb8 a0730900749a47e2bdda31ad8ba3f0dc +#: discord.client.Client.add_listener:4 of +msgid "The function to call." +msgstr "" + +#: a4fcf86c7d864ec6867029102373ac9d c7ea41591aab47898209118e9d6aada0 +#: discord.client.Client.add_listener:7 of +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "" + +#: a2f5ee9251644bfd97d947e158ad4764 ba943995cd6f4f42838a634814e22ca1 +#: discord.client.Client.add_listener:10 of +msgid "The ``func`` parameter is not a coroutine function." +msgstr "" + +#: 5bfee65c9551403997926307bfac288b 8fdde2412a434bc889eb2470635efba6 +#: discord.client.Client.add_view:1 of +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "" + +#: 184b080c1ff64b3c92c2733aa9df8c75 a51b4f92d6494f518fa69f07e378bc51 +#: discord.client.Client.add_view:3 of +msgid "" +"This method should be used for when a view is comprised of components " +"that last longer than the lifecycle of the program." +msgstr "" + +#: 00b0dfac3aad46efa3411ccc01fbdf2f a403d4bd52ef4a1a8ab3a5f9c7f787f0 +#: discord.client.Client.add_view:9 of +msgid "The view to register for dispatching." +msgstr "" + +#: 0516f38c619c48ae8fb7173ca478d0ef 46830f4ca2de4aa788ccf77849200801 +#: discord.client.Client.add_view:12 of +msgid "" +"The message ID that the view is attached to. This is currently used to " +"refresh the view's state during message update events. If not given then " +"message update events are not propagated for the view." +msgstr "" + +#: 4c66a1b617434ebea41a052d24391a33 ab74c62568f741c08aa18e7010c55481 +#: discord.client.Client.add_view:17 of +msgid "A view was not passed." +msgstr "" + +#: 375d822827c74905bc6957583aa1a261 648db641fb244b8a97a98f317abbd5e4 +#: discord.client.Client.add_view:18 of +msgid "" +"The view is not persistent. A persistent view has no timeout and all " +"their components have an explicitly provided ``custom_id``." +msgstr "" + +#: 65f44d7ffe264126a3533d77b1464e65 discord.bot.BotBase.after_invoke:1 of +msgid "" +"A decorator that registers a coroutine as a post-invoke hook. A post-" +"invoke hook is called directly after the command is called. This makes it" +" a useful function to clean-up database connections or any type of clean " +"up required. This post-invoke hook takes a sole parameter, a " +":class:`.Context`." +msgstr "" + +#: 4781d1ab818644d08703f1bed8ce105c discord.bot.BotBase.after_invoke:9 of +msgid "" +"Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless " +"checks and argument parsing procedures succeed. This hook is, however, " +"**always** called regardless of the internal command callback raising an " +"error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-" +"up scenarios." +msgstr "" + +#: 93110892f84044658ef3957825682406 discord.bot.BotBase.after_invoke:16 of +msgid "The coroutine to register as the post-invoke hook." +msgstr "" + +#: 2b6755c1d276469ab419792ac6020ccf d3a62f27dcc644f29fae06b98d24599f +#: discord.Bot.allowed_mentions:1 discord.Client.allowed_mentions:1 of +msgid "The allowed mention configuration." +msgstr "" + +#: 3a6bb0789c0c46faa50beb35215a0bb9 +#: discord.bot.ApplicationCommandMixin.application_command:1 of +msgid "" +"A shortcut decorator that invokes :func:`command` and adds it to the " +"internal command list via :meth:`~.Bot.add_application_command`." +msgstr "" + +#: 8b07e863b4da42b087185fe66a4e4782 dfae6e3bc62e49a09c2ee43781c23646 +#: discord.Bot.application_flags:1 discord.Client.application_flags:1 of +msgid "The client's application flags." +msgstr "" + +#: 7b81e6817aa3453dadfa039d5908f380 ae7d062cf9c948289a20102ae95031b7 +#: discord.Bot.application_id:1 discord.Client.application_id:1 +#: discord.client.Client:27 of +msgid "The client's application ID." +msgstr "" + +#: 21ef281dd8344c15a68e36bf70c236bd 7d1d35144ab143c89844f2eeda5ca458 +#: discord.Bot.application_id:3 discord.Client.application_id:3 of +msgid "" +"If this is not passed via ``__init__`` then this is retrieved through the" +" gateway when an event contains the data. Usually after " +":func:`~discord.on_connect` is called." +msgstr "" + +#: 3796d6049f614d1a81a2102b543cdc5f 409b33c5bd944e0f83d05534e795141a +#: 41081b0ab799472fa6aa72c01266cc77 5b0142abd63a4172ba647e87dbb900bb +#: 6bc3c19c9696465ca3f9cb5f44d223ad 75a3908583e246ddaee8b2ab99d5b21e +#: 7c618e26033b4d08a8e0f007cb393a95 8686465f1a3d4950be5a71debbfd3d52 +#: 8952c3a11462457c9c94503c0a1e46ce 9023f922e3924c4dae0ada2a128df325 +#: 9e27094ebf5a426bb1e75e62e5daa1c4 a0ccfe1ca31e44379b769024cd71c09d +#: a7ce19c3920f40ab91a7d270dfff2d0e b7be03d2394446469f0739f4abb91781 +#: beba0dc76f904c399cbc6333f2245f8a bfcc3ff6e8824dab8f98475203a002f1 +#: cd4b7ea72a3442768f7f021733e96924 cf33128256c04cc8962a75390c1ef183 +#: d132c2ca5f21423d8bb2a18353e56149 d319b5d28ca048509d872555d49cb491 +#: d393bc2fe41b44338c0bcde410e9c1eb d9eb2e4a9e234e37b248d23a246f8522 +#: discord.bot.ApplicationCommandMixin.get_application_context:1 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:1 +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:1 +#: discord.bot.ApplicationCommandMixin.invoke_application_command:1 +#: discord.bot.ApplicationCommandMixin.process_application_commands:1 +#: discord.bot.ApplicationCommandMixin.register_command:1 +#: discord.bot.ApplicationCommandMixin.register_commands:1 +#: discord.bot.ApplicationCommandMixin.sync_commands:1 +#: discord.bot.BotBase.is_owner:1 +#: discord.bot.BotBase.on_application_command_error:1 +#: discord.client.Client.application_info:1 +#: discord.client.Client.before_identify_hook:1 +#: discord.client.Client.change_presence:1 discord.client.Client.close:1 +#: discord.client.Client.connect:1 discord.client.Client.create_dm:1 +#: discord.client.Client.create_guild:1 discord.client.Client.delete_invite:1 +#: discord.client.Client.fetch_channel:1 discord.client.Client.fetch_guild:1 +#: discord.client.Client.fetch_invite:1 +#: discord.client.Client.fetch_premium_sticker_packs:1 +#: discord.client.Client.fetch_role_connection_metadata_records:1 +#: discord.client.Client.fetch_skus:1 +#: discord.client.Client.fetch_stage_instance:1 +#: discord.client.Client.fetch_sticker:1 discord.client.Client.fetch_template:1 +#: discord.client.Client.fetch_user:1 discord.client.Client.fetch_webhook:1 +#: discord.client.Client.fetch_widget:1 +#: discord.client.Client.get_or_fetch_user:1 discord.client.Client.login:1 +#: discord.client.Client.on_error:1 discord.client.Client.start:1 +#: discord.client.Client.update_role_connection_metadata_records:1 +#: discord.client.Client.wait_for:1 discord.client.Client.wait_until_ready:1 +#: discord.shard.AutoShardedClient.change_presence:1 +#: discord.shard.AutoShardedClient.close:1 +#: discord.shard.AutoShardedClient.connect:1 e907813498d04ca58b7d80979f4f9b91 +#: of +msgid "|coro|" +msgstr "" + +#: 47b37eeb523444a7aaecac9c8064ced9 5983dcd0486b4523ae227931a10b1302 +#: discord.client.Client.application_info:3 of +msgid "Retrieves the bot's application information." +msgstr "" + +#: 4bb7ac9a133a472bb6a3b9126cebda75 507ab57eb4464568979b8f115e241575 +#: discord.client.Client.application_info:5 of +msgid "The bot's application information." +msgstr "" + +#: 0101829855214ceca48fda193d62fa4a 0abb1cb53f1d41c38d3ba45f1d0d3a03 +#: discord.client.Client.application_info:6 of +msgid ":class:`.AppInfo`" +msgstr "" + +#: 3aa370c5983e445f88dd18e9eadbd873 60dcff8b7cff446797963d62c8f9728b +#: discord.client.Client.application_info:8 of +msgid "Retrieving the information failed somehow." +msgstr "" + +#: 3e6d7812bab8419d863e5278f50532a6 70cb703484a24211b5f015b6c98489ed +#: discord.client.Client.before_identify_hook:3 of +msgid "" +"A hook that is called before IDENTIFYing a session. This is useful if you" +" wish to have more control over the synchronization of multiple " +"IDENTIFYing clients." +msgstr "" + +#: 345f1f0857334a8486719a08ce7b4812 +#: discord.client.Client.before_identify_hook:7 +#: e8ac04bf158e41c38b39991bab6fb822 of +msgid "The default implementation sleeps for 5 seconds." +msgstr "" + +#: 0b6319a9e67d414e87249e03d6d63397 8445119bcdba4f689bdc7ce8bc1d16ef +#: discord.client.Client.before_identify_hook:12 of +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "" + +#: 2301c3d3f9404ea495a8d7650bf54425 b5e6a835da3141a995d994af7efdd383 +#: discord.client.Client.before_identify_hook:15 of +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "" + +#: b720eb9a67e44dce8da52c580e698881 discord.bot.BotBase.before_invoke:1 of +msgid "" +"A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke" +" hook is called directly before the command is called. This makes it a " +"useful function to set up database connections or any type of set up " +"required. This pre-invoke hook takes a sole parameter, a " +":class:`.Context`." +msgstr "" + +#: 6c74a036308e4868b73dcbcf6c9c4f50 discord.bot.BotBase.before_invoke:9 of +msgid "" +"The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are " +"only called if all checks and argument parsing procedures pass without " +"error. If any check or argument parsing procedures fail then the hooks " +"are not called." +msgstr "" + +#: discord.bot.BotBase.before_invoke:15 fad163555b174a4d8feb1bffef917e2a of +msgid "The coroutine to register as the pre-invoke hook." +msgstr "" + +#: 26517c7b15d54b3f8695eb62fbc85109 cba36eb2890e435fa097ddab61040300 +#: discord.Bot.cached_messages:1 discord.Client.cached_messages:1 of +msgid "Read-only list of messages the connected client has cached." +msgstr "" + +#: 6114d56696924f85a50ec7eab18cea6d d2e7ed1bee18473c8ed6a983e8028076 +#: discord.client.Client.change_presence:3 +#: discord.shard.AutoShardedClient.change_presence:3 of +msgid "Changes the client's presence." +msgstr "" + +#: 6c8a13b6a2374d07bde689acfab480b4 a5872f2048ac46379625289291357eca +#: discord.client.Client.change_presence:6 +#: discord.shard.AutoShardedClient.change_presence:14 of +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "" + +#: 3abff02da97142be826bc2c4e6ca6170 6b8aeda786a9403b9d499b77b41b85d7 +#: discord.client.Client.change_presence:9 of +msgid "" +"Indicates what status to change to. If ``None``, then " +":attr:`.Status.online` is used." +msgstr "" + +#: 135d8da50bfe441ba19fe730e3461b60 84986619916e40e88957ed778fedf574 +#: discord.client.Client.change_presence:13 of +msgid "If the ``activity`` parameter is not the proper type." +msgstr "" + +#: 39e909d604eb4a8c8eae94680b0f85d5 54b695951125498384300fe6b62bdf48 +#: discord.client.Client.change_presence:22 +#: discord.shard.AutoShardedClient.change_presence:10 of +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "" + +#: discord.bot.BotBase.check:1 e46f439b7bf0448db055239476cd073e of +msgid "" +"A decorator that adds a global check to the bot. A global check is " +"similar to a :func:`.check` that is applied on a per-command basis except" +" it is run before any command checks have been verified and applies to " +"every command the bot has." +msgstr "" + +#: 142d9d49796c4a5db2c6a4d717820700 d1fddb994e6d4505b2c2a6138a60f1db +#: discord.bot.BotBase.check:7 discord.bot.BotBase.check_once:13 of +msgid "" +"This function can either be a regular function or a coroutine. Similar to" +" a command :func:`.check`, this takes a single parameter of type " +":class:`.Context` and can only raise exceptions inherited from " +":exc:`.ApplicationCommandError`." +msgstr "" + +#: 2a09dda9c7114ea5a974ce9692e8315e discord.bot.BotBase.check_once:1 of +msgid "" +"A decorator that adds a \"call once\" global check to the bot. Unlike " +"regular global checks, this one is called only once per " +":meth:`.Bot.invoke` call. Regular global checks are called whenever a " +"command is called or :meth:`.Command.can_run` is called. This type of " +"check bypasses that and ensures that it's called only once, even inside " +"the default help command." +msgstr "" + +#: 0832766348084620af8c98ac13ee77ed discord.bot.BotBase.check_once:8 of +msgid "" +"When using this function the :class:`.Context` sent to a group subcommand" +" may only parse the parent command and not the subcommands due to it " +"being invoked once per :meth:`.Bot.invoke` call." +msgstr "" + +#: 46113f3b59ba48888dae66daa428f6a2 664b2b67ec6147ed94b53e0140acb9ef +#: discord.client.Client.clear:1 of +msgid "Clears the internal state of the bot." +msgstr "" + +#: a37bc673a1b54d709b8017883bfa408f b2e236d83dc34d8bb26a73a49b01369e +#: discord.client.Client.clear:3 of +msgid "" +"After this, the bot can be considered \"re-opened\", i.e. " +":meth:`is_closed` and :meth:`is_ready` both return ``False`` along with " +"the bot's internal cache cleared." +msgstr "" + +#: 67affa321575466d843d881e79ff9660 78ac357893eb41058d331fbd7e21f8bf +#: discord.client.Client.close:3 discord.shard.AutoShardedClient.close:3 of +msgid "Closes the connection to Discord." +msgstr "" + +#: 66c2406b4f2349e896b65819340190d4 discord.Bot.cogs:1 of +msgid "A read-only mapping of cog name to cog." +msgstr "" + +#: 2e2b4b77bc7549c0a05965d9694ef840 9b1145547fdc4c8b85b1fdffccd05849 +#: discord.client.Client.connect:3 discord.shard.AutoShardedClient.connect:3 of +msgid "" +"Creates a WebSocket connection and lets the WebSocket listen to messages " +"from Discord. This is a loop that runs the entire event system and " +"miscellaneous aspects of the library. Control is not resumed until the " +"WebSocket connection is terminated." +msgstr "" + +#: 01fe01284ae748c8b1eddfddd1d73e21 6baf64d2338545519040319cd1847544 +#: discord.client.Client.connect:9 discord.shard.AutoShardedClient.connect:9 of +msgid "" +"If we should attempt reconnecting, either due to internet failure or a " +"specific failure on Discord's part. Certain disconnects that lead to bad " +"state will not be handled (such as invalid sharding payloads or bad " +"tokens)." +msgstr "" + +#: 4f24dc57384346d0856e8fdac0a91c7a discord.client.Client.connect:15 +#: discord.shard.AutoShardedClient.connect:15 e065be27c22342a28fae8bfee39dc5f6 +#: of +msgid "" +"The gateway to connect to Discord is not found. Usually if this is " +"thrown then there is a Discord API outage." +msgstr "" + +#: 1656a53ca10c491688df2509c3c5ff71 c36b8e522ef8432ab9d32865a6f89cda +#: discord.client.Client.connect:16 discord.shard.AutoShardedClient.connect:16 +#: of +msgid "The WebSocket connection has been terminated." +msgstr "" + +#: 4887cc26c4f94834bd314c9ad7887166 discord.client.Client.create_dm:3 +#: eaa633504af044fbbae0c5fff1734c12 of +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "" + +#: 0be38552dc6d4508b568215162fbc247 11ed5a01e6a345a0acea5e61f04b1b7b +#: discord.client.Client.create_dm:5 of +msgid "" +"This should be rarely called, as this is done transparently for most " +"people." +msgstr "" + +#: 3b1a1bf113d64c288b8703c0fdc99381 5a3111fd82194cd2885d84958fca1132 +#: discord.client.Client.create_dm:11 of +msgid "The user to create a DM with." +msgstr "" + +#: 3b137326256c433f88b79dd49a47e72f d6fa64d947654bf7becf7fad301f0fb9 +#: discord.client.Client.create_dm:14 of +msgid "The channel that was created." +msgstr "" + +#: 4ee54b2c76694caabfe0fde5d1cd1696 78267be3de4d4d789cc656e991f10e17 +#: discord.client.Client.create_dm:15 of +msgid ":class:`.DMChannel`" +msgstr "" + +#: a20efe6647144d72911f1a64c5ddacdc +#: discord.bot.ApplicationCommandMixin.create_group:1 of +msgid "" +"A shortcut method that creates a slash command group with no subcommands " +"and adds it to the internal command list via " +":meth:`add_application_command`." +msgstr "" + +#: 5c2158acc4a543b1b66b07320a0f767f +#: discord.bot.ApplicationCommandMixin.create_group:7 of +msgid "The name of the group to create." +msgstr "" + +#: 69af3206fe804f5ea844fa3e65c9cb7c a58e962af7324b1b9e2e450d359efb44 +#: discord.bot.ApplicationCommandMixin.create_group:10 +#: discord.bot.ApplicationCommandMixin.group:10 of +msgid "The description of the group to create." +msgstr "" + +#: 017330dc607446c2a51ad9824d9b6642 1013a998dd0644bf8b8ed20ec4161d3f +#: discord.bot.ApplicationCommandMixin.create_group:13 +#: discord.bot.ApplicationCommandMixin.group:13 of +msgid "" +"A list of the IDs of each guild this group should be added to, making it " +"a guild command. This will be a global command if ``None`` is passed." +msgstr "" + +#: 84480e59ac654759925cb9bf3400c84a +#: discord.bot.ApplicationCommandMixin.create_group:17 of +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "" + +#: b8bf3f05b8b94e4fae6fc0fad6b15b09 +#: discord.bot.ApplicationCommandMixin.create_group:19 +#: discord.bot.ApplicationCommandMixin.group:17 +#: fffbb1f76152417080d7db49ca8e4c85 of +msgid "The slash command group that was created." +msgstr "" + +#: 3b97fc8c08714dc0bf7cbe2a88d0fcab 7f4f1601e15941c49368490691cf3ea6 +#: discord.client.Client.create_guild:3 of +msgid "Creates a :class:`.Guild`." +msgstr "" + +#: 1ac9ef86b0a64b3ab8e6552798c01c97 8524eb9f26414048b1952e19fc192260 +#: discord.client.Client.create_guild:5 of +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "" + +#: 4b2cb528eb144e2cba9fd35944489929 bfd43e9bd0f34e918327fc339e37937b +#: discord.client.Client.create_guild:8 of +msgid "The name of the guild." +msgstr "" + +#: 62b9a65381f34c1bac438c5fd2c7ba6f a9d50329ac804b2697f42d86f92f69d1 +#: discord.client.Client.create_guild:11 of +msgid "" +"The :term:`py:bytes-like object` representing the icon. See " +":meth:`.ClientUser.edit` for more details on what is expected." +msgstr "" + +#: 0722a839383b4001aa95fb0d76912f04 ae0f886a88eb4404898545bc4dda335e +#: discord.client.Client.create_guild:15 of +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "" + +#: 352fe566629842ad9d6ff7432397522e ac7b94c2d4aa41c4804843187d78a126 +#: discord.client.Client.create_guild:15 of +msgid "The code for a template to create the guild with." +msgstr "" + +#: 13d1e2ac49db416db0205889ed95c259 discord.client.Client.create_guild:20 +#: ef6b2cc2844948a6afac53df0c6c4c71 of +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "" + +#: a4b211d860344b6bab78f4760535fb4d ac312b1700ba40e3ab5989b9c39cdc00 +#: d09eadf06e9343dd83a47871e2abc31f discord.client.Client.create_guild:22 +#: discord.client.Client.fetch_guild:26 of +msgid ":class:`.Guild`" +msgstr "" + +#: 6fa7e508b0cf4b958775cf91dac4ba35 7b2526fdc6744cc4856f38309c4dbc4a +#: discord.client.Client.create_guild:24 of +msgid "Guild creation failed." +msgstr "" + +#: 2d01c286352d4eeba440b3662378cc26 6a0a9f3ed5d14cd1b00a6fef49d5debe +#: discord.client.Client.create_guild:25 of +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "" + +#: 10f6f332803e43be874d5efeaf273bd7 8689a2f7442c4748b0aeb3620d9cf09c +#: discord.client.Client.delete_invite:3 of +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "" + +#: 2ecfe47925ea4c04b95937a66956301a 7e2f44aeac5741c9a5a08f2da76920ba +#: discord.client.Client.delete_invite:5 of +msgid "" +"You must have the :attr:`~.Permissions.manage_channels` permission in the" +" associated guild to do this." +msgstr "" + +#: 94aa506a7985410497bded0263cb03f9 98207a40e1a94e19afe49b181675d48a +#: discord.client.Client.delete_invite:9 of +msgid "The invite to revoke." +msgstr "" + +#: 5e90c550889a4b5d9c88e6d7d7dd19bf d5b48d7d2a60458e8a2839ed8faa7b5d +#: discord.client.Client.delete_invite:12 of +msgid "You do not have permissions to revoke invites." +msgstr "" + +#: 34eee7d0a7914a7a9232644c1582c652 391ab3e72dfe4609ba4322872c6ccae2 +#: discord.client.Client.delete_invite:13 of +msgid "The invite is invalid or expired." +msgstr "" + +#: 770d782d0e98456da7aa346f121d5ae6 discord.client.Client.delete_invite:14 +#: e12571e8018b4226a23231a3d292f435 of +msgid "Revoking the invite failed." +msgstr "" + +#: 00169447c6a94a4b82f049cb27a56946 da199159cd414e03aa393a6e7fceb015 +#: discord.Bot.emojis:1 discord.Client.emojis:1 of +msgid "The emojis that the connected client has." +msgstr "" + +#: 78892bf021d04c6fba29337b575b8b71 7a582bcb64fe4e77b22294e3d86b3458 +#: discord.client.Client.entitlements:1 of +msgid "" +"Returns an :class:`.AsyncIterator` that enables fetching the " +"application's entitlements." +msgstr "" + +#: 523b5670abb24b5e88f9d7f04d5a0a9f 823cffd519a2414baf1d8eb638b8a867 +#: discord.client.Client.entitlements:6 of +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "" + +#: 47234f44f4bd4ceeb41bdc775a227c15 550d4974d8b243fcaf206b620c8a2a2f +#: discord.client.Client.entitlements:9 of +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "" + +#: 0326acb773754d438a4581ed32136b6d 66467d911b6945b5b419601784c046ee +#: discord.client.Client.entitlements:12 of +msgid "" +"Retrieves guilds before this date or object. If a datetime is provided, " +"it is recommended to use a UTC-aware datetime. If the datetime is naive, " +"it is assumed to be local time." +msgstr "" + +#: 830e0935ff744a0ea9a2a540a4a27ed3 a3655982943348cc9975a45469537b6c +#: discord.client.Client.entitlements:17 of +msgid "" +"Retrieve guilds after this date or object. If a datetime is provided, it " +"is recommended to use a UTC-aware datetime. If the datetime is naive, it " +"is assumed to be local time." +msgstr "" + +#: 98a71d0d914f4fe8b2324c24a917aa28 discord.client.Client.entitlements:22 +#: f84cf2f0b1844efc9fd51c33a704cf0e of +msgid "" +"The number of entitlements to retrieve. If ``None``, retrieves every " +"entitlement, which may be slow. Defaults to ``100``." +msgstr "" + +#: 2effddfbbd1e45178440ec2b43ef9195 c9ef4370de624686b6d2148b7bb52dbc +#: discord.client.Client.entitlements:27 of +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "" + +#: bb876989f633431e86644669cd8d5fa9 discord.client.Client.entitlements:30 +#: e475177db885429080f0ae2b78b72aea of +msgid "" +"Whether to limit the fetched entitlements to those that have not ended. " +"Defaults to ``False``." +msgstr "" + +#: bed18856144c4cbe822ac5211c71b28a c5985cf01b92479d9b571d3d9dc523a8 +#: discord.bot.ApplicationCommandMixin.walk_application_commands +#: discord.client.Client.entitlements discord.client.Client.fetch_guilds +#: discord.client.Client.get_all_channels discord.client.Client.get_all_members +#: ee8fbed1e9c64e87a77e9b4d5b4de348 of +msgid "Yields" +msgstr "" + +#: bba8b3a4dfed4c12acdea2989e9b7777 discord.client.Client.entitlements:34 +#: fd477cb2f68542529b5f28246bd2cddc of +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr "" + +#: 2d3a2a0f88ba4346a292f010fcfac590 54a21db6d48b45ffa3147e2a18bcda3e +#: discord.client.Client.entitlements:36 of +msgid "Retrieving the entitlements failed." +msgstr "" + +#: 862c6912d2294e34a06faddbf7ff0269 9ab70875d2f847f99751826f9b4fd448 +#: discord.client.Client.entitlements:37 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr "" + +#: 11648d97fb784d6b97497cf45bd7180f 7c8cb90e915a42688bb8e0ac08a56b44 +#: discord.client.Client.entitlements:40 discord.client.Client.fetch_guilds:35 +#: discord.client.Client.wait_for:42 f784f833af4f43caa6cf59467766ead4 of +msgid "Examples" +msgstr "" + +#: 4fcb97767a904beb9ef44f190efbd53a 6a66fb7c4171403a94a25a3808826652 +#: df4744ea792246c2a87e26f7a1105f81 discord.client.Client.entitlements:41 +#: discord.client.Client.fetch_guilds:36 of +msgid "Usage ::" +msgstr "" + +#: 0eae2453da7c4316a4e3c6d00c680cb1 3a17f85d5c5540cf8b980d8e82b60252 +#: 5b7cc08b85db4b84ae5e9195194d36ba discord.client.Client.entitlements:46 +#: discord.client.Client.fetch_guilds:41 of +msgid "Flattening into a list ::" +msgstr "" + +#: 48fa76c559f4449a95854d789559492f af1413448fd64215ad8a510b736adb91 +#: ce984edfb81a40f88475e5d768a64ec9 discord.client.Client.entitlements:50 +#: discord.client.Client.fetch_guilds:46 of +msgid "All parameters are optional." +msgstr "" + +#: 73e5dfcf598f4b738ff4cb986328a722 discord.Bot.extensions:1 of +msgid "A read-only mapping of extension name to extension." +msgstr "" + +#: aafc1168e05f45dfacd0f151bfd0bd27 c6993c8ace9a402dbd8a19399cff355a +#: discord.client.Client.fetch_application:1 of +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "" + +#: cdfbd078a7e34b39bc30d2f5d3db7fef d7d033a39dcd4afebf9d0f3925cb0e6c +#: discord.client.Client.fetch_application:5 of +msgid "The application ID to retrieve information from." +msgstr "" + +#: 330746db683542c0bf43295ce8a60ecb 3be37066300944489855782f111f4345 +#: discord.client.Client.fetch_application:8 of +msgid "The application information." +msgstr "" + +#: 7529d87e05374082bd884b1d1f4ce463 80da38d28f7a4058a9a443c380f15e07 +#: discord.client.Client.fetch_application:9 of +msgid ":class:`.PartialAppInfo`" +msgstr "" + +#: 496dda7098054bb98c52eea3c43b204e discord.client.Client.fetch_application:11 +#: fdfab0a8ac644e918e2b868f0b80ea8a of +msgid "An application with this ID does not exist." +msgstr "" + +#: 02d838d2b1364397a167d2f5c970bf0a 6f5bdf2b2be6487f8cd5cd5d7201e238 +#: discord.client.Client.fetch_application:12 of +msgid "Retrieving the application failed." +msgstr "" + +#: 6a10ca6084f846de8fe3fc9c5f78d62b 709c0c6eedd44918b90f6dffa9b47f23 +#: discord.client.Client.fetch_channel:3 of +msgid "" +"Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or " +":class:`.Thread` with the specified ID." +msgstr "" + +#: 16cdcc9d072042e48f37db5e1ed47d87 discord.client.Client.fetch_channel:7 +#: ffeb7dc3d9fe4482ab577068571db8bf of +msgid "" +"This method is an API call. For general usage, consider " +":meth:`get_channel` instead." +msgstr "" + +#: 937ee35401e047a9ab66ca84e1baf254 a9141c92c30443dab13cd3bfdfb3221b +#: discord.client.Client.fetch_channel:11 of +msgid "The channel from the ID." +msgstr "" + +#: discord.client.Client.fetch_channel:12 e0c5c0a3312d4c5bbb8ef19d1e2f15e1 +#: fa37228bc5f741968a08a26bfccb5ca5 of +msgid "" +"Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, " +":class:`.Thread`]" +msgstr "" + +#: 220028234d2c4c72a8866cef69f6cedd a6c6384d2bd8410393e2acd36f1996a9 +#: discord.client.Client.fetch_channel:14 of +msgid "An unknown channel type was received from Discord." +msgstr "" + +#: 7b7c1cd63b90442e9e3e142aff758d8f b2dc27e2311a468fabfd697becfb68c3 +#: discord.client.Client.fetch_channel:15 of +msgid "Retrieving the channel failed." +msgstr "" + +#: 97eac6521e9a4e9dbc6cc6ecbfb97238 a254f2aa7f5441fca4eb306f79aa1b44 +#: discord.client.Client.fetch_channel:16 of +msgid "Invalid Channel ID." +msgstr "" + +#: 9d2a8c5a46854947a7a140aff9f4179f d4920f83bc284b55b50a4c8f62cd4180 +#: discord.client.Client.fetch_channel:17 of +msgid "You do not have permission to fetch this channel." +msgstr "" + +#: 5f3db26c62924650aecbb995c0df0be4 8e9f4f77bac844f5a9988587c611cb9d +#: discord.client.Client.fetch_guild:3 of +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "" + +#: 38f598930b534b0380391fdb0e89e121 discord.client.Client.fetch_guild:7 +#: fc48643cd30442b68921bd961d8c4ee2 of +msgid "" +"Using this, you will **not** receive :attr:`.Guild.channels`, " +":attr:`.Guild.members`, :attr:`.Member.activity` and " +":attr:`.Member.voice` per :class:`.Member`." +msgstr "" + +#: 232c4e056e1641d2b6f4f6aec6a485ec 84388c342305493e8a6f64446e49d160 +#: discord.client.Client.fetch_guild:12 of +msgid "" +"This method is an API call. For general usage, consider :meth:`get_guild`" +" instead." +msgstr "" + +#: 0edc6723fbc942dfba36ab15f4771dc3 685c61028d2d4cf580d2044aaee592a8 +#: discord.client.Client.fetch_guild:15 of +msgid "The guild's ID to fetch from." +msgstr "" + +#: 3c5f0d5b44a34c12b46639235faa7ad0 db45bb2c4d0a42d584ca6b8133983e77 +#: discord.client.Client.fetch_guild:18 of +msgid "" +"Whether to include count information in the guild. This fills the " +":attr:`.Guild.approximate_member_count` and " +":attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "" + +#: 05dbc5f91edd4612b6383868c75a7ac2 a4245b805fa0424588c0d476c4087214 +#: discord.client.Client.fetch_guild:18 of +msgid "" +"Whether to include count information in the guild. This fills the " +":attr:`.Guild.approximate_member_count` and " +":attr:`.Guild.approximate_presence_count` fields." +msgstr "" + +#: 13441326e09f4c41a4b70ace65d3685a 8627931b3a534dbe8c62a4be6ea82790 +#: discord.client.Client.fetch_guild:25 of +msgid "The guild from the ID." +msgstr "" + +#: 18b98d33672748fab571d1592086006c 7d2046b6b57942f7a30996be5edff639 +#: discord.client.Client.fetch_guild:28 of +msgid "You do not have access to the guild." +msgstr "" + +#: ab6c8c5386cc4638a941c7e10d2114f6 b5721e89196f4a1eb5342451dbaf3acb +#: discord.client.Client.fetch_guild:29 of +msgid "Getting the guild failed." +msgstr "" + +#: 1747a97606b54d0aa85ee82fec200e5d 680b55c43a404490948ccf8c75056fe5 +#: discord.client.Client.fetch_guilds:1 of +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "" + +#: 479b75a91db14e1fbeb7fef18c5a04d7 6b41ff587fa34dd48f92f8b2adec9ab3 +#: discord.client.Client.fetch_guilds:5 of +msgid "" +"Using this, you will only receive :attr:`.Guild.owner`, " +":attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per " +":class:`.Guild`." +msgstr "" + +#: 7b2ca8d29ccd472dbfe3bb09ee67cd31 deb91710d7c24bc292aab5097f23b501 +#: discord.client.Client.fetch_guilds:10 of +msgid "" +"This method is an API call. For general usage, consider :attr:`guilds` " +"instead." +msgstr "" + +#: 105f6a38a2854a7089d696c2c01dc1e1 656fd5be7efa4693858ddc0bba11b5c9 +#: discord.client.Client.fetch_guilds:13 of +msgid "" +"The number of guilds to retrieve. If ``None``, it retrieves every guild " +"you have access to. Note, however, that this would make it a slow " +"operation. Defaults to ``100``." +msgstr "" + +#: 2e80267839e44327b92ec76be0aaf427 88e83fb93ec742deb161d4d5e6ae864b +#: discord.client.Client.fetch_guilds:19 of +msgid "" +"Retrieves guilds before this date or object. If a datetime is provided, " +"it is recommended to use a UTC aware datetime. If the datetime is naive, " +"it is assumed to be local time." +msgstr "" + +#: dde1d08cc27a42afa6456baeab1c4824 discord.client.Client.fetch_guilds:24 +#: efa2f8d80de046819cc9326f5bbe892a of +msgid "" +"Retrieve guilds after this date or object. If a datetime is provided, it " +"is recommended to use a UTC aware datetime. If the datetime is naive, it " +"is assumed to be local time." +msgstr "" + +#: d8cf0096c4ea46e0ae7da1145a0b557d discord.client.Client.fetch_guilds:29 +#: fc6f82145b034ece99cbf37f683ceff5 of +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr "" + +#: 2f4a72e1186a46d9aa54d22b75e640a3 5803c971ecee4e8385d297fa6b5f134c +#: discord.client.Client.fetch_guilds:31 of +msgid "Getting the guilds failed." +msgstr "" + +#: discord.client.Client.fetch_guilds:32 f43bf45acca54549a46eb8b112d02268 +#: f8744a77885f4d189fc280ec89e87d2c of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr "" + +#: 8a4dcd58e0b2419aa0e9ecf1b6c7363e acc5f4a6a0f647dc9f8b5eaf7c539fdb +#: discord.client.Client.fetch_invite:3 of +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "" + +#: 163cd0bf1a67459a89e9cdb0c6c757aa 2a76df09c33847cf85e73900aa59ec77 +#: discord.client.Client.fetch_invite:7 of +msgid "" +"If the invite is for a guild you have not joined, the guild and channel " +"attributes of the returned :class:`.Invite` will be " +":class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` " +"respectively." +msgstr "" + +#: 116f686fb5054484a467357d6d0a399a 2c47a87fed924f02ba4dbce127a2d89d +#: discord.client.Client.fetch_invite:12 of +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "" + +#: 21da813826c74acbb3eedef11175e8f1 cc56d716f1f6424aa05b7d2400368df0 +#: discord.client.Client.fetch_invite:15 of +msgid "" +"Whether to include count information in the invite. This fills the " +":attr:`.Invite.approximate_member_count` and " +":attr:`.Invite.approximate_presence_count` fields." +msgstr "" + +#: 3df86f4db6f04bec94f6b943117534c9 6f6b0591a01a439e9c26b6ea317b4e85 +#: discord.client.Client.fetch_invite:20 of +msgid "" +"Whether to include the expiration date of the invite. This fills the " +":attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "" + +#: 036021a78eea4be980334bcad40f1daa 9a1b3e4805b1414ba7f36b8206cc700b +#: discord.client.Client.fetch_invite:20 of +msgid "" +"Whether to include the expiration date of the invite. This fills the " +":attr:`.Invite.expires_at` field." +msgstr "" + +#: 2cb15eb196524b68889c66edffb272a2 aa755c7bbfc644c8a99a4e7e80d1fc25 +#: discord.client.Client.fetch_invite:26 of +msgid "" +"The ID of the scheduled event to be associated with the event. See " +":meth:`Invite.set_scheduled_event` for more info on event invite linking." +" .. versionadded:: 2.0" +msgstr "" + +#: 18b09b5aff7a4f39b50d78b9acb653fc 4ffbf97d7865451fa048a6f78af2662b +#: discord.client.Client.fetch_invite:26 of +msgid "The ID of the scheduled event to be associated with the event." +msgstr "" + +#: 367a7984086b493ba86e0b98c9e489ec 5347b95856644909bb7dc80c9155b154 +#: discord.client.Client.fetch_invite:28 of +msgid "" +"See :meth:`Invite.set_scheduled_event` for more info on event invite " +"linking." +msgstr "" + +#: 1c9f38c89b6f4c17aede743f8c65d8aa 9ee1f4aced284d4282048fb76f04f940 +#: discord.client.Client.fetch_invite:34 of +msgid "The invite from the URL/ID." +msgstr "" + +#: 05420965d65349869d9a3fcceff2515e 33169fa919a54f519ff847e567556f48 +#: discord.client.Client.fetch_invite:35 of +msgid ":class:`.Invite`" +msgstr "" + +#: a22701bb7d2f44fca24ebafd0027a019 discord.client.Client.fetch_invite:37 +#: fe1ada1d25bf4ad7bc00b849f6fa88a9 of +msgid "The invite has expired or is invalid." +msgstr "" + +#: 7acc4ef8881841d48a95e7b714968280 a5f9c6c8318341df9f815544e2b2fc05 +#: discord.client.Client.fetch_invite:38 of +msgid "Getting the invite failed." +msgstr "" + +#: 1c2eae88e474467a8ef8fbe7cf172242 b369cce5013e4d698043f69c944f8a66 +#: discord.client.Client.fetch_premium_sticker_packs:3 of +msgid "Retrieves all available premium sticker packs." +msgstr "" + +#: 4f91c0955a5547a393f8bca43c79326f c3ebd2de351c47589c35c91351a05cc8 +#: discord.client.Client.fetch_premium_sticker_packs:7 of +msgid "All available premium sticker packs." +msgstr "" + +#: 81d61492868a497f850b5b880d44abe8 +#: discord.client.Client.fetch_premium_sticker_packs:8 +#: f2c67dc53c534b0aa88697406f41a753 of +msgid "List[:class:`.StickerPack`]" +msgstr "" + +#: baf041eef92145928978a65d22c41d49 +#: discord.client.Client.fetch_premium_sticker_packs:10 +#: ebdff23caff3417faec73021b95e7112 of +msgid "Retrieving the sticker packs failed." +msgstr "" + +#: 3f0dc3bdc3194ca39b848651a262fd94 9424f8645549490aad4b3df67690028b +#: discord.client.Client.fetch_role_connection_metadata_records:3 of +msgid "Fetches the bot's role connection metadata records." +msgstr "" + +#: 99df7df48d45437faa412b04790f7587 a739439997df43e7b7db808923acb79d +#: discord.client.Client.fetch_role_connection_metadata_records:7 of +msgid "The bot's role connection metadata records." +msgstr "" + +#: 888fcfea7fa34ba888f8c0857b965c37 +#: discord.client.Client.fetch_role_connection_metadata_records:8 +#: discord.client.Client.update_role_connection_metadata_records:12 +#: ee166a08201f4183bfad8ad88c5fb320 of +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "" + +#: 1a2b6478e8804ba4afc8c56c3c05edb8 68218a4bf26b4b38b1c806c7aa61f661 +#: discord.client.Client.fetch_skus:3 of +msgid "Fetches the bot's SKUs." +msgstr "" + +#: 06cf0595cc3f498c8e8f41b354e358d8 discord.client.Client.fetch_skus:7 +#: fb544d3f176e4037a777cec7dac26453 of +msgid "The bot's SKUs." +msgstr "" + +#: 043327feba3d4c899a4b9e27f3ae1372 b637e44776da4185981f78109a57a53a +#: discord.client.Client.fetch_skus:8 of +msgid "List[:class:`.SKU`]" +msgstr "" + +#: 7a3e45f29a644f32b777d11a18579ede 88b901ccfaa14a67aadcb8840bdee24c +#: discord.client.Client.fetch_stage_instance:3 of +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "" + +#: 4e6dc6fe1ef94a269f031a4a1e4b99aa 69ca285e4a1b4e8797cec962961cc055 +#: discord.client.Client.fetch_stage_instance:8 of +msgid "The stage channel ID." +msgstr "" + +#: 7c7c97b654ed4a66a971dda8a270dcbf a15055de9ad647d4b7ef7e393ca47f72 +#: discord.client.Client.fetch_stage_instance:11 of +msgid "The stage instance from the stage channel ID." +msgstr "" + +#: 87fb14043d8046d19381949784b89592 8e0d484c75f44292bf2e50c355f77b5b +#: discord.client.Client.fetch_stage_instance:12 of +msgid ":class:`.StageInstance`" +msgstr "" + +#: 3aee2cbf01044b3f8cc7af5dbe63cf79 +#: discord.client.Client.fetch_stage_instance:14 +#: e5a4d1d3aaf040398c8c0a5ac1e6dc2d of +msgid "The stage instance or channel could not be found." +msgstr "" + +#: 9be3c4f2f0164f2798360c5e220e7f50 +#: discord.client.Client.fetch_stage_instance:15 +#: fa0d9d4bc9ec41679170d58e5edf545e of +msgid "Getting the stage instance failed." +msgstr "" + +#: 584ac55387214bf0bc7655da6f2792e0 958332531bf34b229232649aaad19cef +#: discord.client.Client.fetch_sticker:3 of +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "" + +#: 1363c215bc8b48139f395e234a2fdcc7 a84b7eec831d41849ecdc43cee32ae28 +#: discord.client.Client.fetch_sticker:7 of +msgid "The sticker you requested." +msgstr "" + +#: b838a91ed61b4d37be246951b8564208 discord.client.Client.fetch_sticker:8 +#: ee98d910070249a2afbc06c51832ab92 of +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "" + +#: 50d8785227d54d73b68c6649c6fc793f a3bd0412032a451d944d5040250df9a4 +#: discord.client.Client.fetch_sticker:10 of +msgid "Retrieving the sticker failed." +msgstr "" + +#: a5926e5321024d8da72afc86559c5181 a914b8b74dff428b8217376bb44ee280 +#: discord.client.Client.fetch_sticker:11 of +msgid "Invalid sticker ID." +msgstr "" + +#: daba7a12d12e483dabb22f3082560e2d dbd91692e99f41089c24f3a1b016abe3 +#: discord.client.Client.fetch_template:3 of +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "" + +#: 6c79dbef597949049308831126caf1cb 9cf7aeba3cf94ddfade1161921136fcd +#: discord.client.Client.fetch_template:6 of +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "" + +#: 20002ad14d4a4ebeb50f9d4b42e9bb59 2177ade0a9194b67b6fd15a61ae13825 +#: discord.client.Client.fetch_template:9 of +msgid "The template from the URL/code." +msgstr "" + +#: 25aa61a5f6704f76bd0e63fe07fd5344 discord.client.Client.fetch_template:10 +#: f8e660d6df844ff9b6e8ca42e45a6db4 of +msgid ":class:`.Template`" +msgstr "" + +#: 35c845de13e349a9bd817308bd8210bb bbb4e3d039e24824b2e96290ede33879 +#: discord.client.Client.fetch_template:12 of +msgid "The template is invalid." +msgstr "" + +#: 1e8fc158e4c74b9fa63f4cd6822c9190 de39096b310c4930ba085499cc501be9 +#: discord.client.Client.fetch_template:13 of +msgid "Getting the template failed." +msgstr "" + +#: 6afa0c679eaf409a8736e07f05fb7c6d discord.client.Client.fetch_user:3 +#: fc5e27dfd5df4f1083a2ce78905f137f of +msgid "" +"Retrieves a :class:`~discord.User` based on their ID. You do not have to " +"share any guilds with the user to get this information, however many " +"operations do require that you do." +msgstr "" + +#: 80beb23cf53c40a194d929ae8c7a2876 88856ef0a1c34816a1b8126d28db55c8 +#: discord.client.Client.fetch_user:9 of +msgid "" +"This method is an API call. If you have :attr:`discord.Intents.members` " +"and member cache enabled, consider :meth:`get_user` instead." +msgstr "" + +#: 13ba7b35bdd343299351ad1b86086580 904c1ae5fcc14436b80548bb1f284c43 +#: discord.client.Client.fetch_user:13 of +msgid "The user's ID to fetch from." +msgstr "" + +#: 4b109491b8d94c648cd2b4a856262356 discord.client.Client.fetch_user:16 +#: f331d997dda74b7e9506f9f0858875f4 of +msgid "The user you requested." +msgstr "" + +#: 84fbf23886304607b5223e4f3e827432 c58aaed5b9274c23be1a82dd7b9c79c2 +#: discord.client.Client.fetch_user:17 of +msgid ":class:`~discord.User`" +msgstr "" + +#: 1f026a4e35c84df8b91a677e61429aad af069677ce5a4d60af85cdbbc1d89063 +#: discord.client.Client.fetch_user:19 of +msgid "A user with this ID does not exist." +msgstr "" + +#: a7894ada30514c09917ba342ff6307bf da95e6f09ace4020ba25d649433bd8e3 +#: discord.client.Client.fetch_user:20 of +msgid "Fetching the user failed." +msgstr "" + +#: 449315d17af4479895749d1fc700a3f7 7b5c3de0d5bc490583eed2148fe3adf2 +#: discord.client.Client.fetch_webhook:3 of +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "" + +#: 3d3b2a928bae48ff9d0ced39413a96a9 79ce9e3cdd1f42a0bbdd9b54d0263d2c +#: discord.client.Client.fetch_webhook:5 of +msgid "The webhook you requested." +msgstr "" + +#: 0f9acb4de476421b8b66cafaad9e8d13 c9bfd966d85e4f17a319e5b0e2f717cc +#: discord.client.Client.fetch_webhook:6 of +msgid ":class:`.Webhook`" +msgstr "" + +#: 78c27258634f42bf842727095db62ee5 9383dddb8c9d4a9c96d2e2bde714702a +#: discord.client.Client.fetch_webhook:8 of +msgid "Retrieving the webhook failed." +msgstr "" + +#: 1d2f993cc43b4a0985c6521221c59f63 6c4a19c3d6534ae4849f4b219aab45e7 +#: discord.client.Client.fetch_webhook:9 of +msgid "Invalid webhook ID." +msgstr "" + +#: 38afa3e69538483c9aa15498beaf378e dc3889164ad64b9b8a46fbe38f466076 +#: discord.client.Client.fetch_webhook:10 of +msgid "You do not have permission to fetch this webhook." +msgstr "" + +#: 8b4ef3067a554f3dbd79ec87d454e563 c548ce9c4b524c3da67dbf74b4cc39d5 +#: discord.client.Client.fetch_widget:3 of +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "" + +#: d5625d54302d4637bb3b2b87d4f31e8e discord.client.Client.fetch_widget:7 +#: f3c9ea1202d04fe98848e776cc633b43 of +msgid "The guild must have the widget enabled to get this information." +msgstr "" + +#: 81d3c19143e44cf2b6c178fc3d2fcc77 discord.client.Client.fetch_widget:10 +#: f7f87b3361a641b49965447a1dce4229 of +msgid "The ID of the guild." +msgstr "" + +#: 44fbd4d628244841a9214142b84ff39d discord.client.Client.fetch_widget:13 +#: e741791aa8f74923af5883745587ff8c of +msgid "The guild's widget." +msgstr "" + +#: d8bc6239ad544978978964d975b88cf8 discord.client.Client.fetch_widget:14 +#: e89b25c5d0d24a838d657f9ba08a43b5 of +msgid ":class:`.Widget`" +msgstr "" + +#: aca5c6cbb697464b90cc953011ed05bc discord.client.Client.fetch_widget:16 +#: e8fabc52771b436b8e0a6c27db844e38 of +msgid "The widget for this guild is disabled." +msgstr "" + +#: 2f27c3a6ee12429694a5b67441deb3bd 6c887b61d6214bbc89a3071595e17351 +#: discord.client.Client.fetch_widget:17 of +msgid "Retrieving the widget failed." +msgstr "" + +#: b886abcab97a46f3940f4064094180e2 discord.client.Client.get_all_channels:1 +#: f32d5942653b4aeea1d89478304ac5c4 of +msgid "" +"A generator that retrieves every :class:`.abc.GuildChannel` the client " +"can 'access'." +msgstr "" + +#: 5004a72d009b4ad48da460e3f0226d5e d5dfb16bdaa1458bb44264187f4ee38c +#: discord.client.Client.get_all_channels:3 +#: discord.client.Client.get_all_members:3 of +msgid "This is equivalent to: ::" +msgstr "" + +#: 14df624bee0b4d23b1f9088155d3e882 discord.client.Client.get_all_channels:11 +#: of +msgid "" +"Just because you receive a :class:`.abc.GuildChannel` does not mean that " +"you can communicate in said channel. " +":meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "" + +#: 5eab19fe94124dbcab31f439d0973160 discord.client.Client.get_all_channels:15 +#: of +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr "" + +#: 1e23815e30ed4e7fba2bd525936c0e85 discord.client.Client.get_all_members:1 of +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "" + +#: 71e5351f43c7453b898f2b71db1af20e discord.client.Client.get_all_members:9 of +msgid ":class:`.Member` -- A member the client can see." +msgstr "" + +#: c0e500eca4654493bcbde640ebc18e15 +#: discord.bot.ApplicationCommandMixin.get_application_command:1 of +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "" + +#: 297eb50180c641ee936301a619fecf81 +#: discord.bot.ApplicationCommandMixin.get_application_command:7 of +msgid "The qualified name of the command to get." +msgstr "" + +#: 4e81f4e8177d4f1fabacd1113a61b684 +#: discord.bot.ApplicationCommandMixin.get_application_command:10 of +msgid "The guild ids associated to the command to get." +msgstr "" + +#: 7159cb9856244306be63c209b5f0df30 +#: discord.bot.ApplicationCommandMixin.get_application_command:13 of +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "" + +#: c868f574c5674690bd081cabc69cc745 +#: discord.bot.ApplicationCommandMixin.get_application_command:16 of +msgid "The command that was requested. If not found, returns ``None``." +msgstr "" + +#: c164f779fe0a43e6a2f6abf608af6f93 +#: discord.bot.ApplicationCommandMixin.get_application_command:17 +#: discord.bot.ApplicationCommandMixin.remove_application_command:12 of +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "" + +#: 998de8fc4fc54d12bbfd2d6293de1bee +#: discord.bot.ApplicationCommandMixin.get_application_context:3 of +msgid "Returns the invocation context from the interaction." +msgstr "" + +#: 3614dd7b6e5d41d1b0d77e9c10a3f598 +#: discord.bot.ApplicationCommandMixin.get_application_context:5 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:5 of +msgid "" +"This is a more low-level counter-part for " +":meth:`.process_application_commands` to allow users more fine-grained " +"control over the processing." +msgstr "" + +#: 815d098582864c5aa45ebb68a53bc46b +#: discord.bot.ApplicationCommandMixin.get_application_context:9 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:9 of +msgid "The interaction to get the invocation context from." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.get_application_context:12 +#: f445ef6ad23b46aa8c7b978919888cc2 of +msgid "" +"The factory class that will be used to create the context. By default, " +"this is :class:`.ApplicationContext`. Should a custom class be provided, " +"it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "" + +#: 01ec116738e84cb99e4b5d5ce4ffbfcf +#: discord.bot.ApplicationCommandMixin.get_application_context:17 of +msgid "" +"The invocation context. The type of this can change via the ``cls`` " +"parameter." +msgstr "" + +#: c55b1028898244e59c76268416abbb49 +#: discord.bot.ApplicationCommandMixin.get_application_context:19 of +msgid ":class:`.ApplicationContext`" +msgstr "" + +#: 537bfa329bc545788890928e4531fa73 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:3 of +msgid "Returns the autocomplete context from the interaction." +msgstr "" + +#: 11b0ecc315564b658e1d489d95e4e02a +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:12 of +msgid "" +"The factory class that will be used to create the context. By default, " +"this is :class:`.AutocompleteContext`. Should a custom class be provided," +" it must be similar enough to :class:`.AutocompleteContext`\\'s " +"interface." +msgstr "" + +#: 1bccad822ed94d7889a324aa82d0a214 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:17 of +msgid "" +"The autocomplete context. The type of this can change via the ``cls`` " +"parameter." +msgstr "" + +#: 5f3b2f2fda724232a91fda448c11ca58 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:19 of +msgid ":class:`.AutocompleteContext`" +msgstr "" + +#: cf283a472c614b6a97c06ca4bc4a33f0 discord.client.Client.get_channel:1 of +msgid "Returns a channel or thread with the given ID." +msgstr "" + +#: discord.client.Client.get_channel:4 discord.client.Client.get_emoji:4 +#: discord.client.Client.get_guild:4 discord.client.Client.get_message:7 +#: discord.client.Client.get_or_fetch_user:6 +#: discord.client.Client.get_stage_instance:6 discord.client.Client.get_user:4 +#: eddc2d6f8feb4541a1e35da5fb5fa865 of +msgid "The ID to search for." +msgstr "" + +#: d9a90139b5c84016a67669abf356d83b discord.client.Client.get_channel:7 of +msgid "The returned channel or ``None`` if not found." +msgstr "" + +#: de8a5b88032c47fa9f2e41bfa71842c3 discord.client.Client.get_channel:8 of +msgid "" +"Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, " +":class:`.abc.PrivateChannel`]]" +msgstr "" + +#: bec15e570fa04a15b83b7ca7e3389216 discord.cog.CogMixin.get_cog:1 of +msgid "Gets the cog instance requested." +msgstr "" + +#: 4ae249d6843649ce9819e165b69c78ff discord.cog.CogMixin.get_cog:3 of +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "" + +#: b8d6f18d1d2c44babb0a2315fcf7c1b6 discord.cog.CogMixin.get_cog:6 of +msgid "" +"The name of the cog you are requesting. This is equivalent to the name " +"passed via keyword argument in class creation or the class name if " +"unspecified." +msgstr "" + +#: 412532b7fda248be8233ebf2f47a3c87 discord.cog.CogMixin.get_cog:11 of +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "" + +#: 691b6e2bdebc42878e0d4ca7bde4dfcb discord.cog.CogMixin.get_cog:12 of +msgid "Optional[:class:`Cog`]" +msgstr "" + +#: 64b888dc0e0641c0b11a8699ef47d0f7 discord.Bot.get_command:1 of +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "" + +#: 090694ded9bb48498938dd4891b64207 discord.Bot.get_command:4 of +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "" + +#: b1df2b0021b249f6ba711704e20aaf2c +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:3 of +msgid "" +"Gets the list of commands that are desynced from discord. If ``guild_id``" +" is specified, it will only return guild commands that are desynced from " +"said guild, else it will return global commands." +msgstr "" + +#: 4988c5769a7f45b093d66279aa435b31 +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:7 of +msgid "" +"This function is meant to be used internally, and should only be used if " +"you want to override the default command registration behavior." +msgstr "" + +#: a42aa04f99bd45e2adf79377df0fddf9 +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:13 of +msgid "" +"The guild id to get the desynced commands for, else global commands if " +"unspecified." +msgstr "" + +#: 004d26c269d948c5b29706eae2d3286e +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:16 of +msgid "" +"If you already fetched the commands, you can pass them here to be used. " +"Not recommended for typical usage." +msgstr "" + +#: b52ea92694dc43888920b021b5ea6887 +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:19 of +msgid "" +"A list of the desynced commands. Each will come with at least the ``cmd``" +" and ``action`` keys, which respectively contain the command and the " +"action to perform. Other keys may also be present depending on the " +"action, including ``id``." +msgstr "" + +#: 433de8e824a84596ad4b85e75dddfb58 +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:22 of +msgid "List[Dict[:class:`str`, Any]]" +msgstr "" + +#: 9525ca2de02e4964817f1a037363a3a2 discord.client.Client.get_emoji:1 of +msgid "Returns an emoji with the given ID." +msgstr "" + +#: 9c674dcf871343f694a42135680a1736 discord.client.Client.get_emoji:7 of +msgid "The custom emoji or ``None`` if not found." +msgstr "" + +#: 00d7fd8a5ae747b7a60a6c550b8c741d discord.client.Client.get_emoji:8 of +msgid "Optional[:class:`.Emoji`]" +msgstr "" + +#: c69d0ea814a84230941d413794f573c9 discord.client.Client.get_guild:1 of +msgid "Returns a guild with the given ID." +msgstr "" + +#: discord.client.Client.get_guild:7 e0ee40e0766047a2be7ce2f868ab810b of +msgid "The guild or ``None`` if not found." +msgstr "" + +#: 134847e462854ae78b1f4d67f66abf09 discord.client.Client.get_guild:8 of +msgid "Optional[:class:`.Guild`]" +msgstr "" + +#: 181ecf7ccc494ba8b6465d66a0ef5483 discord.client.Client.get_message:1 of +msgid "Returns a message the given ID." +msgstr "" + +#: 4844d10606e145829c103661a39a42a0 discord.client.Client.get_message:3 of +msgid "" +"This is useful if you have a message_id but don't want to do an API call " +"to access the message." +msgstr "" + +#: 876b35b70409440bbe9860921ed2bdde discord.client.Client.get_message:10 of +msgid "The returned message or ``None`` if not found." +msgstr "" + +#: 909a4ebed88b418eb3fc8ad783de4fc2 discord.client.Client.get_message:11 of +msgid "Optional[:class:`.Message`]" +msgstr "" + +#: discord.client.Client.get_or_fetch_user:3 ef34cecd55904074aadf36c69ae1a3fe +#: of +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "" + +#: 7a08fd22da7640b392c99f8c05c6c4e6 discord.client.Client.get_or_fetch_user:9 +#: discord.client.Client.get_user:7 of +msgid "The user or ``None`` if not found." +msgstr "" + +#: 759defbb355844809d78aa0b07143820 discord.client.Client.get_or_fetch_user:10 +#: discord.client.Client.get_user:8 of +msgid "Optional[:class:`~discord.User`]" +msgstr "" + +#: 044e87bce77b4fec8f6ad808a56bd064 +#: discord.client.Client.get_partial_messageable:1 of +msgid "Returns a partial messageable with the given channel ID." +msgstr "" + +#: discord.client.Client.get_partial_messageable:3 +#: f2ce805dc0414f5a9e5a8755ea1c9643 of +msgid "" +"This is useful if you have a channel_id but don't want to do an API call " +"to send messages to it." +msgstr "" + +#: c8479fc87aa246648dbeeb0dc0bd2523 +#: discord.client.Client.get_partial_messageable:9 of +msgid "The channel ID to create a partial messageable for." +msgstr "" + +#: 56b0308cd9eb42b28481f6a554cd5570 +#: discord.client.Client.get_partial_messageable:12 of +msgid "The underlying channel type for the partial messageable." +msgstr "" + +#: dcf7536cc4744aa9b4c7648d2327410f +#: discord.client.Client.get_partial_messageable:15 of +msgid "The partial messageable" +msgstr "" + +#: daa543ad6df34e43a2d9864afb81d0d8 +#: discord.client.Client.get_partial_messageable:16 of +msgid ":class:`.PartialMessageable`" +msgstr "" + +#: discord.client.Client.get_poll:1 f33a04665ff84187a4db076f2d509d54 of +msgid "Returns a poll attached to the given message ID." +msgstr "" + +#: discord.client.Client.get_poll:4 fce34a83deb34fb09d2fb065f7e9aabc of +msgid "The message ID of the poll to search for." +msgstr "" + +#: 9e724f2a11ec44c4869443876f200c94 discord.client.Client.get_poll:7 of +msgid "The poll or ``None`` if not found." +msgstr "" + +#: c742fb9939e244578e66f27785b9e0b3 discord.client.Client.get_poll:8 of +msgid "Optional[:class:`.Poll`]" +msgstr "" + +#: 3d786cc212a44afea512d29b0e007d4e discord.client.Client.get_stage_instance:1 +#: of +msgid "Returns a stage instance with the given stage channel ID." +msgstr "" + +#: d433f0da2b6945b390f4785d5e45686d discord.client.Client.get_stage_instance:9 +#: of +msgid "The stage instance or ``None`` if not found." +msgstr "" + +#: 2c039b3d063d4d5daad23166bc2998bc discord.client.Client.get_stage_instance:10 +#: of +msgid "Optional[:class:`.StageInstance`]" +msgstr "" + +#: discord.client.Client.get_sticker:1 f10646f6188b45e79224058f73d2f2a8 of +msgid "Returns a guild sticker with the given ID." +msgstr "" + +#: c15a89f27028488cb7b2336b8063f854 discord.client.Client.get_sticker:7 of +msgid "" +"To retrieve standard stickers, use :meth:`.fetch_sticker`. or " +":meth:`.fetch_premium_sticker_packs`." +msgstr "" + +#: a8df3300fa7947d1885ff98542d67aeb discord.client.Client.get_sticker:10 of +msgid "The sticker or ``None`` if not found." +msgstr "" + +#: 6340a201b4ee40d08e8349272ea2eb4f discord.client.Client.get_sticker:11 of +msgid "Optional[:class:`.GuildSticker`]" +msgstr "" + +#: ad521edf83024b639b0931097a70fbc6 discord.client.Client.get_user:1 of +msgid "Returns a user with the given ID." +msgstr "" + +#: 3534240b400047cf99d43a0882749281 discord.bot.ApplicationCommandMixin.group:1 +#: of +msgid "" +"A shortcut decorator that initializes the provided subclass of " +":class:`.SlashCommandGroup` and adds it to the internal command list via " +":meth:`add_application_command`." +msgstr "" + +#: 12eda575d2994bb9b8ec76bc781e2b9f discord.bot.ApplicationCommandMixin.group:7 +#: of +msgid "" +"The name of the group to create. This will resolve to the name of the " +"decorated class if ``None`` is passed." +msgstr "" + +#: 2f2a3e8f246c4f30b877af0e3e88001b discord.Bot.guilds:1 +#: discord.Client.guilds:1 of +msgid "The guilds that the connected client is a member of." +msgstr "" + +#: 21faa16203234f99a69b91b463601bd2 discord.Bot.intents:1 +#: discord.Client.intents:1 of +msgid "The intents configured for this connection." +msgstr "" + +#: 0fef6661f4904fc584c2c3c675c11684 +#: discord.bot.ApplicationCommandMixin.invoke_application_command:3 of +msgid "" +"Invokes the application command given under the invocation context and " +"handles all the internal event dispatch mechanisms." +msgstr "" + +#: 10f77b8bbb3042e09dc3daf5dd79b208 +#: discord.bot.ApplicationCommandMixin.invoke_application_command:7 of +msgid "The invocation context to invoke." +msgstr "" + +#: 1195a817f20744f69117a573c7f4c5d1 discord.client.Client.is_closed:1 of +msgid "Indicates if the WebSocket connection is closed." +msgstr "" + +#: 1044d7a76781488d8e388f935f5d4867 discord.client.Client.is_closed:4 +#: discord.client.Client.is_ready:4 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 659c6943644c45f6b44ac33cc1d9896e discord.bot.BotBase.is_owner:3 of +msgid "" +"Checks if a :class:`~discord.User` or :class:`~discord.Member` is the " +"owner of this bot." +msgstr "" + +#: 3e69877b74ed48cab87f6fe3ec2f5bbd discord.bot.BotBase.is_owner:6 of +msgid "" +"If an :attr:`owner_id` is not set, it is fetched automatically through " +"the use of :meth:`~.Bot.application_info`." +msgstr "" + +#: 6872f8c9608949fab7ac89cb5072f36d discord.bot.BotBase.is_owner:9 of +msgid "" +"The function also checks if the application is team-owned if " +":attr:`owner_ids` is not set." +msgstr "" + +#: 784e3a78f66b4c67b2252bda0ab50130 discord.bot.BotBase.is_owner:14 of +msgid "The user to check for." +msgstr "" + +#: af103a9120b341d7ac2dc05f2fc6b7f0 discord.bot.BotBase.is_owner:17 of +msgid "Whether the user is the owner." +msgstr "" + +#: discord.client.Client.is_ready:1 e491ff5681a44d58918b01dea27ff898 of +msgid "Specifies if the client's internal cache is ready for use." +msgstr "" + +#: 1d19112534464592be462f4549362eed discord.client.Client.is_ws_ratelimited:1 +#: of +msgid "Whether the WebSocket is currently rate limited." +msgstr "" + +#: 62af1fa7dcf84492b242000ea4241503 discord.client.Client.is_ws_ratelimited:3 +#: of +msgid "" +"This can be useful to know when deciding whether you should query members" +" using HTTP or via the gateway. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: c5ab6840e90349f19ce335c373c2303d discord.AutoShardedClient.latency:1 +#: discord.Bot.latency:1 discord.Client.latency:1 of +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "" + +#: 421f8b497847440fbd6dbe4be0a01720 discord.Bot.latency:3 +#: discord.Client.latency:3 of +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "" + +#: 026aa7d6f31d4990a7b349b52d1e57ac discord.cog.CogMixin.load_extension:1 of +msgid "Loads an extension." +msgstr "" + +#: 443fb754e9e4450d9ba7b4c49645dd5d discord.cog.CogMixin.load_extension:3 of +msgid "" +"An extension is a python module that contains commands, cogs, or " +"listeners." +msgstr "" + +#: discord.cog.CogMixin.load_extension:6 eb4cd6b235244515b0c8d247f851230e of +msgid "" +"An extension must have a global function, ``setup`` defined as the entry " +"point on what to do when the extension is loaded. This entry point must " +"have a single argument, the ``bot``." +msgstr "" + +#: discord.cog.CogMixin.load_extension:10 e954aa1ba2b04355a43ce15be4b3c1a6 of +msgid "" +"The extension passed can either be the direct name of a file within the " +"current working directory or a folder that contains multiple extensions." +msgstr "" + +#: b4709a5104a8400c9ac23f133549b6c6 discord.cog.CogMixin.load_extension:14 of +msgid "" +"The extension or folder name to load. It must be dot separated like " +"regular Python imports if accessing a submodule. e.g. ``foo.test`` if you" +" want to import ``foo/test.py``." +msgstr "" + +#: 2fd13f9b72724c3a93c62cbf7ce3e595 discord.cog.CogMixin.load_extension:19 +#: discord.cog.CogMixin.load_extensions:12 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"loading an extension using a relative path, e.g ``.foo.test``. Defaults " +"to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: d98754a427e84ae682ce85cdb8557bec discord.cog.CogMixin.load_extension:19 +#: discord.cog.CogMixin.load_extensions:12 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"loading an extension using a relative path, e.g ``.foo.test``. Defaults " +"to ``None``." +msgstr "" + +#: 4872f607b11d4176b8657dc8de35a45e discord.cog.CogMixin.load_extension:27 +#: discord.cog.CogMixin.load_extensions:20 of +msgid "" +"If subdirectories under the given head directory should be recursively " +"loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "" + +#: 235222cbb8c44095937e8b67a59eba52 discord.cog.CogMixin.load_extension:27 +#: discord.cog.CogMixin.load_extensions:20 of +msgid "" +"If subdirectories under the given head directory should be recursively " +"loaded. Defaults to ``False``." +msgstr "" + +#: discord.cog.CogMixin.load_extension:34 +#: discord.cog.CogMixin.load_extensions:27 e1406c82b3ec42d7ba4f1a9a7f0bc9d8 of +msgid "" +"If exceptions should be stored or raised. If set to ``True``, all " +"exceptions encountered will be stored in a returned dictionary as a load " +"status. If set to ``False``, if any exceptions are encountered they will " +"be raised and the bot will be closed. If no exceptions are encountered, a" +" list of loaded extension names will be returned. Defaults to ``False``." +" .. versionadded:: 2.0" +msgstr "" + +#: 287d8e3cd45341309195aa3dd7ab8c94 discord.cog.CogMixin.load_extension:34 +#: discord.cog.CogMixin.load_extensions:27 of +msgid "" +"If exceptions should be stored or raised. If set to ``True``, all " +"exceptions encountered will be stored in a returned dictionary as a load " +"status. If set to ``False``, if any exceptions are encountered they will " +"be raised and the bot will be closed. If no exceptions are encountered, a" +" list of loaded extension names will be returned. Defaults to ``False``." +msgstr "" + +#: 099c61d1269b47109fe9e3a1cc10e009 discord.cog.CogMixin.load_extension:45 of +msgid "" +"If the store parameter is set to ``True``, a dictionary will be returned " +"that contains keys to represent the loaded extension names. The values " +"bound to each key can either be an exception that occurred when loading " +"that extension or a ``True`` boolean representing a successful load. If " +"the store parameter is set to ``False``, either a list containing a list " +"of loaded extensions or nothing due to an encountered exception." +msgstr "" + +#: 83832163d58347d7a6e6af84f4c8e4fb discord.cog.CogMixin.load_extension:51 +#: discord.cog.CogMixin.load_extensions:44 of +msgid "" +"Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, " +":class:`bool`]], List[:class:`str`]]]" +msgstr "" + +#: 85002126743f4f13988ae3b6842068e6 discord.cog.CogMixin.load_extension:53 +#: discord.cog.CogMixin.reload_extension:22 of +msgid "" +"The extension could not be imported. This is also raised if the name " +"of the extension could not be resolved using the provided ``package``" +" parameter." +msgstr "" + +#: a5a3724f3d244704959a79b59e34abc0 discord.cog.CogMixin.load_extension:54 of +msgid "The extension is already loaded." +msgstr "" + +#: 67911d91ed4a43efbe1e31b46fc74e6d discord.cog.CogMixin.load_extension:55 +#: discord.cog.CogMixin.reload_extension:23 of +msgid "The extension does not have a setup function." +msgstr "" + +#: 8f842e56308f4d1c88c47684ea45314f discord.cog.CogMixin.load_extension:56 of +msgid "The extension or its setup function had an execution error." +msgstr "" + +#: a760357f52544ed481412457c04c3803 discord.cog.CogMixin.load_extensions:1 of +msgid "Loads multiple extensions at once." +msgstr "" + +#: discord.cog.CogMixin.load_extensions:3 fdfb6f2448094adf9318c69174beeeea of +msgid "" +"This method simplifies the process of loading multiple extensions by " +"handling the looping of ``load_extension``." +msgstr "" + +#: discord.cog.CogMixin.load_extensions:7 f8a0970ba0114e93b9b61f4b6528e11c of +msgid "" +"The extension or folder names to load. It must be dot separated like " +"regular Python imports if accessing a submodule. e.g. ``foo.test`` if you" +" want to import ``foo/test.py``." +msgstr "" + +#: b5fb058740df4f5697c3610201853111 discord.cog.CogMixin.load_extensions:38 of +msgid "" +"If the store parameter is set to ``True``, a dictionary will be returned " +"that contains keys to represent the loaded extension names. The values " +"bound to each key can either be an exception that occurred when loading " +"that extension or a ``True`` boolean representing a successful load. If " +"the store parameter is set to ``False``, either a list containing names " +"of loaded extensions or nothing due to an encountered exception." +msgstr "" + +#: bfa57369a86a4cda8d1bd669bb3f567b discord.cog.CogMixin.load_extensions:46 of +msgid "" +"A given extension could not be imported. This is also raised if the " +"name of the extension could not be resolved using the provided " +"``package`` parameter." +msgstr "" + +#: c65a8880c6e24c0ba423274ba3ab9e74 discord.cog.CogMixin.load_extensions:47 of +msgid "A given extension is already loaded." +msgstr "" + +#: 066e528badfb4c9081642380ae4c0118 discord.cog.CogMixin.load_extensions:48 of +msgid "A given extension does not have a setup function." +msgstr "" + +#: cf251565d0a04577a80b44ef3a0c45ae discord.cog.CogMixin.load_extensions:49 of +msgid "A given extension or its setup function had an execution error." +msgstr "" + +#: 049a0834b6b047f99314936f2f1163ba discord.client.Client.login:3 of +msgid "Logs in the client with the specified credentials." +msgstr "" + +#: 37485eb978c94d0ab2f8e20f3c9d44f0 discord.client.Client.login:6 of +msgid "" +"The authentication token. Do not prefix this token with anything as the " +"library will do it for you." +msgstr "" + +#: 441a4bc07886491dbe40a2d51a9d6027 discord.client.Client.login:10 of +msgid "The token was in invalid type." +msgstr "" + +#: discord.client.Client.login:11 e47b353c4c374b69a0516a6c01b5f5db of +msgid "The wrong credentials are passed." +msgstr "" + +#: b7bea11ed3954e4d8bb8ceba44c2c5a3 discord.client.Client.login:12 of +msgid "" +"An unknown HTTP related error occurred, usually when it isn't 200 or " +"the known incorrect credentials passing status code." +msgstr "" + +#: 9bd06ccb118d45cfade916f4c2e9e09d +#: discord.bot.BotBase.on_application_command_error:3 of +msgid "The default command error handler provided by the bot." +msgstr "" + +#: c577795c8bcb40caae05540580226588 +#: discord.bot.BotBase.on_application_command_error:5 of +msgid "" +"By default, this prints to :data:`sys.stderr` however it could be " +"overridden to have a different implementation." +msgstr "" + +#: 14d54c8c45da4b1ea8ea9a527ef62098 +#: discord.bot.BotBase.on_application_command_error:8 of +msgid "This only fires if you do not specify any listeners for command error." +msgstr "" + +#: 57179a6f7b13404b8d698521898a6d9c discord.client.Client.on_error:3 of +msgid "The default error handler provided by the client." +msgstr "" + +#: 58a09ed6103242578e6f09b9c61c0f17 discord.client.Client.on_error:5 of +msgid "" +"By default, this prints to :data:`sys.stderr` however it could be " +"overridden to have a different implementation. Check " +":func:`~discord.on_error` for more details." +msgstr "" + +#: 0ddbaefb41734b77ad0d3ad0792c3d18 discord.Bot.persistent_views:1 +#: discord.Client.persistent_views:1 of +msgid "A sequence of persistent views added to the client." +msgstr "" + +#: 7052b64d58da473a956cb108172efa05 discord.Bot.polls:1 discord.Client.polls:1 +#: of +msgid "The polls that the connected client has." +msgstr "" + +#: c2acbbccabb944aeb2cfcdebcfaaa94c discord.Bot.private_channels:1 +#: discord.Client.private_channels:1 of +msgid "The private channels that the connected client is participating on." +msgstr "" + +#: c9cd8785f1e7403e86e3a939de337f91 discord.Bot.private_channels:5 +#: discord.Client.private_channels:5 of +msgid "" +"This returns only up to 128 most recent private channels due to an " +"internal working on how Discord deals with private channels." +msgstr "" + +#: 21363eab134d440382c795173dd057c0 +#: discord.bot.ApplicationCommandMixin.process_application_commands:3 of +msgid "" +"This function processes the commands that have been registered to the bot" +" and other groups. Without this coroutine, none of the commands will be " +"triggered." +msgstr "" + +#: b02242879b784c65ac623cbda25aee83 +#: discord.bot.ApplicationCommandMixin.process_application_commands:7 of +msgid "" +"By default, this coroutine is called inside the :func:`.on_interaction` " +"event. If you choose to override the :func:`.on_interaction` event, then " +"you should invoke this coroutine as well." +msgstr "" + +#: 5a7f80f98b7445e0bbe1ffbaf4f75a5c +#: discord.bot.ApplicationCommandMixin.process_application_commands:11 of +msgid "" +"This function finds a registered command matching the interaction id from" +" application commands and invokes it. If no matching command was found, " +"it replies to the interaction with a default message." +msgstr "" + +#: 5eba8aff592647dbb428a36b08475afc +#: discord.bot.ApplicationCommandMixin.process_application_commands:18 of +msgid "The interaction to process" +msgstr "" + +#: 098da280f563492c8010c8ad52ae3b46 +#: discord.bot.ApplicationCommandMixin.process_application_commands:21 of +msgid "" +"Whether to automatically sync and unregister the command if it is not " +"found in the internal cache. This will invoke the " +":meth:`~.Bot.sync_commands` method on the context of the command, either " +"globally or per-guild, based on the type of the command, respectively. " +"Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "" + +#: 6fb0bc75b4244e36896183264590e7f1 +#: discord.bot.ApplicationCommandMixin.register_command:3 of +msgid "" +"Registers a command. If the command has ``guild_ids`` set, or if the " +"``guild_ids`` parameter is passed, the command will be registered as a " +"guild command for those guilds." +msgstr "" + +#: 4ea2920e2db64df6859efe1b1f524b48 +#: discord.bot.ApplicationCommandMixin.register_command:7 of +msgid "The command to register." +msgstr "" + +#: 8b8d635e6e8d4e7c8a3aed8d2b2113e4 +#: discord.bot.ApplicationCommandMixin.register_command:10 of +msgid "" +"Whether to force the command to be registered. If this is set to False, " +"the command will only be registered if it seems to already be registered " +"and up to date with our internal cache. Defaults to True." +msgstr "" + +#: 4da5da38c13c4cce84fa4a5f1324b431 +#: discord.bot.ApplicationCommandMixin.register_command:14 of +msgid "" +"A list of guild ids to register the command for. If this is not set, the " +"command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "" + +#: 84a8824b3dbc412281a70609fb40e4db +#: discord.bot.ApplicationCommandMixin.register_command:18 of +msgid "The command that was registered" +msgstr "" + +#: a32da6d17c784b489e12a5b06559a374 +#: discord.bot.ApplicationCommandMixin.register_command:19 of +msgid ":class:`~.ApplicationCommand`" +msgstr "" + +#: discord.bot.ApplicationCommandMixin.register_commands:3 +#: fbe13cfdf4c344ce8845196b3c9c308c of +msgid "Register a list of commands." +msgstr "" + +#: de60834094264c87b010a83d28ef3a31 +#: discord.bot.ApplicationCommandMixin.register_commands:8 of +msgid "" +"A list of commands to register. If this is not set (``None``), then all " +"commands will be registered." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.register_commands:11 +#: f7d13a7b72ee45829b22b9d1d4115004 of +msgid "" +"If this is set, the commands will be registered as a guild command for " +"the respective guild. If it is not set, the commands will be registered " +"according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "" + +#: 8033302734aa4ce0a6cb372c445cdb12 +#: discord.bot.ApplicationCommandMixin.register_commands:15 +#: discord.bot.ApplicationCommandMixin.sync_commands:30 of +msgid "" +"The method to use when registering the commands. If this is set to " +"\"individual\", then each command will be registered individually. If " +"this is set to \"bulk\", then all commands will be registered in bulk. If" +" this is set to \"auto\", then the method will be determined " +"automatically. Defaults to \"bulk\"." +msgstr "" + +#: 8faca78fa87f4d3bb12fb70fd01d35e3 +#: discord.bot.ApplicationCommandMixin.register_commands:20 +#: discord.bot.ApplicationCommandMixin.sync_commands:35 of +msgid "" +"Registers the commands regardless of the state of the command on Discord." +" This uses one less API call, but can result in hitting rate limits more " +"often. Defaults to False." +msgstr "" + +#: 7a51594d4dce42bc92a656b664696dce +#: discord.bot.ApplicationCommandMixin.register_commands:24 +#: discord.bot.ApplicationCommandMixin.sync_commands:52 of +msgid "" +"Whether to delete existing commands that are not in the list of commands " +"to register. Defaults to True." +msgstr "" + +#: 954c934a3ae542bd8e48d65c6872c37f +#: discord.bot.ApplicationCommandMixin.register_commands:27 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr "" + +#: b99435e52b874c98861200f494f1266a discord.cog.CogMixin.reload_extension:1 of +msgid "Atomically reloads an extension." +msgstr "" + +#: discord.cog.CogMixin.reload_extension:3 eb3fc9d30ad248d59bc53b98fd0a8110 of +msgid "" +"This replaces the extension with the same extension, only refreshed. This" +" is equivalent to a :meth:`unload_extension` followed by a " +":meth:`load_extension` except done in an atomic way. That is, if an " +"operation fails mid-reload then the bot will roll back to the prior " +"working state." +msgstr "" + +#: 11271e1cdfbf422bb9d35cef4a1a2622 discord.cog.CogMixin.reload_extension:9 of +msgid "" +"The extension name to reload. It must be dot separated like regular " +"Python imports if accessing a submodule. e.g. ``foo.test`` if you want to" +" import ``foo/test.py``." +msgstr "" + +#: discord.cog.CogMixin.reload_extension:14 f0dc77f6bc6744e08e89bd30c7719544 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"reloading an extension using a relative path, e.g ``.foo.test``. Defaults" +" to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: c257e5f934bd4c41ab4bd9003112a5d5 discord.cog.CogMixin.reload_extension:14 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"reloading an extension using a relative path, e.g ``.foo.test``. Defaults" +" to ``None``." +msgstr "" + +#: 4cb97699dc1f4e5b9f7c75d398086528 b2947b8e3f1d42259d4d6afe1406758d +#: discord.cog.CogMixin.reload_extension:21 +#: discord.cog.CogMixin.unload_extension:25 of +msgid "The extension was not loaded." +msgstr "" + +#: a2829fe98fe748338b65015d93fc299a discord.cog.CogMixin.reload_extension:24 of +msgid "The extension setup function had an execution error." +msgstr "" + +#: 94d9dca4e09f47bcbb41742185f8a778 +#: discord.bot.ApplicationCommandMixin.remove_application_command:1 of +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "" + +#: a272e12723b0440e8cdd4b64dd581be0 +#: discord.bot.ApplicationCommandMixin.remove_application_command:7 of +msgid "The command to remove." +msgstr "" + +#: 5c3fa5ba0e24446ca0c5d451ab0d7ef3 +#: discord.bot.ApplicationCommandMixin.remove_application_command:10 of +msgid "" +"The command that was removed. If the command has not been added, ``None``" +" is returned instead." +msgstr "" + +#: 318002b550784a58a407ca8a6ea60975 discord.bot.BotBase.remove_check:1 of +msgid "" +"Removes a global check from the bot. This function is idempotent and will" +" not raise an exception if the function is not in the global checks." +msgstr "" + +#: ac0f014b030846a4886347653f09eae7 discord.bot.BotBase.remove_check:6 of +msgid "The function to remove from the global checks." +msgstr "" + +#: 5ccca55b893a4ce196b56ac7b4bf3fea discord.bot.BotBase.remove_check:8 of +msgid "" +"If the function was added with ``call_once=True`` in the " +":meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "" + +#: afc46aa053de44acac79848d8a4d48bd discord.cog.CogMixin.remove_cog:1 of +msgid "Removes a cog from the bot and returns it." +msgstr "" + +#: 8760d9d2494745fd8c2bbf789078f622 discord.cog.CogMixin.remove_cog:3 of +msgid "" +"All registered commands and event listeners that the cog has registered " +"will be removed as well." +msgstr "" + +#: a6da2cef0f344cbc97b69314e265bf25 discord.cog.CogMixin.remove_cog:6 of +msgid "If no cog is found then this method has no effect." +msgstr "" + +#: 206390d6458e4be89131c95feaa9c242 discord.cog.CogMixin.remove_cog:9 of +msgid "The name of the cog to remove." +msgstr "" + +#: 079d5ea3e3c547edb0104884b59c1d1d discord.cog.CogMixin.remove_cog:12 of +msgid "The cog that was removed. ``None`` if not found." +msgstr "" + +#: 10349ef7943d47cf9ee8c96d7a3e3f09 discord.cog.CogMixin.remove_cog:13 of +msgid "Optional[:class:`.Cog`]" +msgstr "" + +#: discord.client.Client.remove_listener:1 f402b73bece24cc49036238c228a2cf6 of +msgid "Removes a listener from the pool of listeners." +msgstr "" + +#: 0ae89918698b491f89b9233a129a1897 discord.client.Client.remove_listener:4 of +msgid "The function that was used as a listener to remove." +msgstr "" + +#: 515f9c536b89476fba576f7ce5614414 discord.client.Client.remove_listener:6 of +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "" + +#: 571249fef8cd45c2981975498a4e7851 discord.client.Client.run:1 of +msgid "" +"A blocking call that abstracts away the event loop initialisation from " +"you." +msgstr "" + +#: 2106434fbe294fed9159326a73846c02 discord.client.Client.run:4 of +msgid "" +"If you want more control over the event loop then this function should " +"not be used. Use :meth:`start` coroutine or :meth:`connect` + " +":meth:`login`." +msgstr "" + +#: bf32743d60dc4a47b2809974b262f96b discord.client.Client.run:8 of +msgid "Roughly Equivalent to: ::" +msgstr "" + +#: 5068dc186f7d4b5c98caaa8752b6b428 discord.client.Client.run:20 of +msgid "" +"This function must be the last function to call due to the fact that it " +"is blocking. That means that registration of events or anything being " +"called after this function call will not execute until it returns." +msgstr "" + +#: 904fe45f358146e683fec60eee80c2e5 discord.client.Client.start:3 of +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "" + +#: 02034fb9cb9c44b7810a0d146353bf07 discord.client.Client.start:5 of +msgid "An unexpected keyword argument was received." +msgstr "" + +#: ab9038811b594d4ea2ea96f42440f117 discord.Bot.status:1 +#: discord.Client.status:1 of +msgid "The status being used upon logging on to Discord." +msgstr "" + +#: b39bab7b652b4d4f98cf18b2b9db6484 discord.Bot.stickers:1 +#: discord.Client.stickers:1 of +msgid "The stickers that the connected client has." +msgstr "" + +#: 4a2351568c31486793eb53e153daa658 discord.Bot.store_url:1 +#: discord.Client.store_url:1 of +msgid "The URL that leads to the application's store page for monetization." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.sync_commands:3 +#: e41ee7cfb81d4efbb82555468a565e3b of +msgid "" +"Registers all commands that have been added through " +":meth:`.add_application_command`. This method cleans up all commands over" +" the API and should sync them with the internal cache of commands. It " +"attempts to register the commands in the most efficient way possible, " +"unless ``force`` is set to ``True``, in which case it will always " +"register all commands." +msgstr "" + +#: af342759879c41d2b37da067dc43b3fb +#: discord.bot.ApplicationCommandMixin.sync_commands:8 of +msgid "" +"By default, this coroutine is called inside the :func:`.on_connect` " +"event. If you choose to override the :func:`.on_connect` event, then you " +"should invoke this coroutine as well such as the following:" +msgstr "" + +#: discord.bot.ApplicationCommandMixin.sync_commands:20 +#: ee42e6eda6db4919b8cbd51d9980a031 of +msgid "" +"If you remove all guild commands from a particular guild, the library may" +" not be able to detect and update the commands accordingly, as it would " +"have to individually check for each guild. To force the library to " +"unregister a guild's commands, call this function with ``commands=[]`` " +"and ``guild_ids=[guild_id]``." +msgstr "" + +#: d9a16639758842dc8da3fb43f1016194 +#: discord.bot.ApplicationCommandMixin.sync_commands:27 of +msgid "" +"A list of commands to register. If this is not set (None), then all " +"commands will be registered." +msgstr "" + +#: 4e2c5bcbf6fa4e04bb1a21be03790c07 +#: discord.bot.ApplicationCommandMixin.sync_commands:39 of +msgid "" +"A list of guild ids to register the commands for. If this is not set, the" +" commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "" + +#: c7ee914bd75d468a8a9831931c65076e +#: discord.bot.ApplicationCommandMixin.sync_commands:43 of +msgid "Whether to register guild commands. Defaults to True." +msgstr "" + +#: 774275396f9e4845a5555975a19daa76 +#: discord.bot.ApplicationCommandMixin.sync_commands:46 of +msgid "" +"A list of guilds ids to check for commands to unregister, since the bot " +"would otherwise have to check all guilds. Unlike ``guild_ids``, this does" +" not alter the commands' :attr:`~.ApplicationCommand.guild_ids` " +"attribute, instead it adds the guild ids to a list of guilds to sync " +"commands for. If ``register_guild_commands`` is set to False, then this " +"parameter is ignored." +msgstr "" + +#: 911175a53ba24fc4a4c0ba2d0cf64aa2 discord.cog.CogMixin.unload_extension:1 of +msgid "Unloads an extension." +msgstr "" + +#: be8975adc11947f5a3b07d92c76bc7f5 discord.cog.CogMixin.unload_extension:3 of +msgid "" +"When the extension is unloaded, all commands, listeners, and cogs are " +"removed from the bot and the module is un-imported." +msgstr "" + +#: 7d49b0308c7541fb82f6fbecf79a8108 discord.cog.CogMixin.unload_extension:6 of +msgid "" +"The extension can provide an optional global function, ``teardown``, to " +"do miscellaneous clean-up if necessary. This function takes a single " +"parameter, the ``bot``, similar to ``setup`` from " +":meth:`~.Bot.load_extension`." +msgstr "" + +#: 86a50feef9e14adaba9477a06f226bf1 discord.cog.CogMixin.unload_extension:12 of +msgid "" +"The extension name to unload. It must be dot separated like regular " +"Python imports if accessing a submodule. e.g. ``foo.test`` if you want to" +" import ``foo/test.py``." +msgstr "" + +#: c6b000d16a9943f4be19931fa26a7326 discord.cog.CogMixin.unload_extension:17 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"unloading an extension using a relative path, e.g ``.foo.test``. Defaults" +" to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: 323fe63c4de8498e9c77dbd7765d0be5 discord.cog.CogMixin.unload_extension:17 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"unloading an extension using a relative path, e.g ``.foo.test``. Defaults" +" to ``None``." +msgstr "" + +#: 017dba9563364359a4934fe0a812245f discord.cog.CogMixin.unload_extension:24 of +msgid "" +"The name of the extension could not be resolved using the provided " +"``package`` parameter." +msgstr "" + +#: 6f4ba32dcd474a5bb21ddc0448b64cc8 +#: discord.client.Client.update_role_connection_metadata_records:3 of +msgid "Updates the bot's role connection metadata records." +msgstr "" + +#: discord.client.Client.update_role_connection_metadata_records:8 +#: f35e47ae72cb45fbbd43a5849db2f4ed of +msgid "The new metadata records to send to Discord." +msgstr "" + +#: 157edf86c4214bac9cc97778a341cb81 +#: discord.client.Client.update_role_connection_metadata_records:11 of +msgid "The updated role connection metadata records." +msgstr "" + +#: a88e758c5a764f1b9008d208a82a5baf discord.Bot.user:1 discord.Client.user:1 of +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "" + +#: 6d3be79316ad4aed8e4440853891714e discord.Bot.users:1 discord.Client.users:1 +#: of +msgid "Returns a list of all the users the bot can see." +msgstr "" + +#: b67ba7a02b43409aaa2626f955f79fd2 discord.Bot.voice_clients:1 +#: discord.Client.voice_clients:1 of +msgid "Represents a list of voice connections." +msgstr "" + +#: 9075a14b38ea45a6b0a11e551ef621f2 discord.Bot.voice_clients:3 +#: discord.Client.voice_clients:3 of +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "" + +#: 6487197b421c48bba8784b3fa1ff4ac9 discord.client.Client.wait_for:3 of +msgid "Waits for a WebSocket event to be dispatched." +msgstr "" + +#: 0b048b61ad98439db8940a4d2d8d3701 discord.client.Client.wait_for:5 of +msgid "" +"This could be used to wait for a user to reply to a message, or to react " +"to a message, or to edit a message in a self-contained way." +msgstr "" + +#: 689487a846eb47e093ba8e1d91517750 discord.client.Client.wait_for:9 of +msgid "" +"The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By " +"default, it does not timeout. Note that this does propagate the " +":exc:`asyncio.TimeoutError` for you in case of timeout and is provided " +"for ease of use." +msgstr "" + +#: 0cef96bb40b84218860e67a2b01b3370 discord.client.Client.wait_for:14 of +msgid "" +"In case the event returns multiple arguments, a :class:`tuple` containing" +" those arguments is returned instead. Please check the " +":ref:`documentation ` for a list of events and their " +"parameters." +msgstr "" + +#: discord.client.Client.wait_for:19 ee2bd0327d864fb28565cad59831a983 of +msgid "This function returns the **first event that meets the requirements**." +msgstr "" + +#: cd139f56acdc485595a3eb1113c5e0ff discord.client.Client.wait_for:22 of +msgid "" +"The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "" + +#: 41e9fd8669df481ba87c83815fb92f01 discord.client.Client.wait_for:26 of +msgid "" +"A predicate to check what to wait for. The arguments must meet the " +"parameters of the event being waited for." +msgstr "" + +#: b5ccde8f18c74e6e8939f7d64c2241f9 discord.client.Client.wait_for:30 of +msgid "" +"The number of seconds to wait before timing out and raising " +":exc:`asyncio.TimeoutError`." +msgstr "" + +#: discord.client.Client.wait_for:34 ea5b0123a5434897907777cc1da3e32b of +msgid "" +"Returns no arguments, a single argument, or a :class:`tuple` of multiple " +"arguments that mirrors the parameters passed in the :ref:`event reference" +" `." +msgstr "" + +#: discord.client.Client.wait_for:39 fe1e49bf56f0410eb7b43d04fc145ddd of +msgid "Raised if a timeout is provided and reached." +msgstr "" + +#: discord.client.Client.wait_for:43 fbf53c322b9b4a2190fb5211f9148bfe of +msgid "Waiting for a user reply: ::" +msgstr "" + +#: 3f2b62ede5b54e9cadcfbb3edf7e3f81 discord.client.Client.wait_for:57 of +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "" + +#: 374ebcd380c14eaebda917973c9c27a6 discord.client.Client.wait_until_ready:3 of +msgid "Waits until the client's internal cache is all ready." +msgstr "" + +#: 27b08f7dc25947a086a2feceb0523df6 +#: discord.bot.ApplicationCommandMixin.walk_application_commands:1 of +msgid "" +"An iterator that recursively walks through all application commands and " +"subcommands." +msgstr "" + +#: 5492eec6b734488c9e67946a7180b89a +#: discord.bot.ApplicationCommandMixin.walk_application_commands:3 of +msgid "" +":class:`.ApplicationCommand` -- An application command from the internal " +"list of application commands." +msgstr "" + +#: 61133e69adc34f46b680972b64aba970 discord.bot.AutoShardedBot:1 of +msgid "" +"This is similar to :class:`.Bot` except that it is inherited from " +":class:`discord.AutoShardedClient` instead." +msgstr "" + +#: ../../api/clients.rst:39 9483ed2b1c48482885c0ca1eb34130ec +msgid "Clients" +msgstr "" + +#: bf69e7a4021a45c8a77931f74ed76550 discord.client.Client:1 of +msgid "" +"Represents a client connection that connects to Discord. This class is " +"used to interact with the Discord WebSocket and API." +msgstr "" + +#: 5c069020781a42fe96c83e24a1f6c3c4 discord.client.Client:4 of +msgid "A number of options can be passed to the :class:`Client`." +msgstr "" + +#: a05ad8a60fa94a36be6482dc51364684 discord.client.Client:6 of +msgid "" +"The maximum number of messages to store in the internal message cache. " +"This defaults to ``1000``. Passing in ``None`` disables the message " +"cache. .. versionchanged:: 1.3 Allow disabling the message cache and" +" change the default size to ``1000``." +msgstr "" + +#: c9df9a316415445bbda61e5dc12eea71 discord.client.Client:6 of +msgid "" +"The maximum number of messages to store in the internal message cache. " +"This defaults to ``1000``. Passing in ``None`` disables the message " +"cache." +msgstr "" + +#: c3595a83fa414fa58ebb0c3fe72870c4 discord.client.Client:9 of +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "" + +#: 6c88dd4b014e4fd68019bf91e0e79449 discord.client.Client:13 of +msgid "" +"The :class:`asyncio.AbstractEventLoop` to use for asynchronous " +"operations. Defaults to ``None``, in which case the default event loop is" +" used via :func:`asyncio.get_event_loop()`." +msgstr "" + +#: 21cc11771cf14b8482b82ed348a0bcc9 discord.client.Client:17 of +msgid "The connector to use for connection pooling." +msgstr "" + +#: 36e77ef20089453bad2c58061b76319e discord.client.Client:19 of +msgid "Proxy URL." +msgstr "" + +#: 2bca727e64604375afc0316e0da77488 discord.client.Client:21 of +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "" + +#: 22b22764dfe94753af363b0e2e855b53 discord.client.Client:23 of +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "" + +#: 2994835195fe455b9ba97aa0bf93c946 discord.client.Client:25 of +msgid "The total number of shards." +msgstr "" + +#: 0cbc330e9f874100a24ecdd7f73bf8bb discord.client.Client:29 of +msgid "" +"The intents that you want to enable for the session. This is a way of " +"disabling and enabling certain gateway events from triggering and being " +"sent. If not given, defaults to a regularly constructed :class:`Intents` " +"class. .. versionadded:: 1.5" +msgstr "" + +#: discord.client.Client:29 f78cb44c1747402fa0d2daa48076c449 of +msgid "" +"The intents that you want to enable for the session. This is a way of " +"disabling and enabling certain gateway events from triggering and being " +"sent. If not given, defaults to a regularly constructed :class:`Intents` " +"class." +msgstr "" + +#: d1e04968f26046eb83cc40c32fffbce4 discord.client.Client:35 of +msgid "" +"Allows for finer control over how the library caches members. If not " +"given, defaults to cache as much as possible with the currently selected " +"intents. .. versionadded:: 1.5" +msgstr "" + +#: 1cf5a217e1c448509380cd0675ac2861 discord.client.Client:35 of +msgid "" +"Allows for finer control over how the library caches members. If not " +"given, defaults to cache as much as possible with the currently selected " +"intents." +msgstr "" + +#: 839eb639389f4e90bcaf5390534f7254 discord.client.Client:41 of +msgid "" +"Indicates if :func:`.on_ready` should be delayed to chunk all guilds at " +"start-up if necessary. This operation is incredibly slow for large " +"amounts of guilds. The default is ``True`` if :attr:`Intents.members` is " +"``True``. .. versionadded:: 1.5" +msgstr "" + +#: 4ac529aded574578a8be71ceea066b6d discord.client.Client:41 of +msgid "" +"Indicates if :func:`.on_ready` should be delayed to chunk all guilds at " +"start-up if necessary. This operation is incredibly slow for large " +"amounts of guilds. The default is ``True`` if :attr:`Intents.members` is " +"``True``." +msgstr "" + +#: discord.client.Client:48 ff86deee1e964eff876d58a0c1bf9af1 of +msgid "A status to start your presence with upon logging on to Discord." +msgstr "" + +#: 595862fc879e41dbbdea585be33d1345 discord.client.Client:50 of +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "" + +#: discord.client.Client:52 faae2eb41a6849ea931db8d8e3b6fd1c of +msgid "" +"Control how the client handles mentions by default on every message sent." +" .. versionadded:: 1.4" +msgstr "" + +#: 58dbe8273cff49848baf5100136b8653 discord.client.Client:52 of +msgid "Control how the client handles mentions by default on every message sent." +msgstr "" + +#: 9ed5eed0c42248ab820b06215b9b5a69 discord.client.Client:56 of +msgid "" +"The maximum numbers of seconds before timing out and restarting the " +"WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if " +"processing the initial packets take too long to the point of " +"disconnecting you. The default timeout is 60 seconds." +msgstr "" + +#: 69d65080cec044e7b6455edd4a0c6db6 discord.client.Client:61 of +msgid "" +"The maximum number of seconds to wait for the GUILD_CREATE stream to end " +"before preparing the member cache and firing READY. The default timeout " +"is 2 seconds. .. versionadded:: 1.4" +msgstr "" + +#: 061fbfc2e3974aefa0e85a933b169164 discord.client.Client:61 of +msgid "" +"The maximum number of seconds to wait for the GUILD_CREATE stream to end " +"before preparing the member cache and firing READY. The default timeout " +"is 2 seconds." +msgstr "" + +#: b43e4d9978ea452bad0b3f920634f71a discord.client.Client:66 of +msgid "" +"Whether to assume the system clock is unsynced. This applies to the " +"ratelimit handling code. If this is set to ``True``, the default, then " +"the library uses the time to reset a rate limit bucket given by Discord. " +"If this is ``False`` then your system clock is used to calculate how long" +" to sleep for. If this is set to ``False`` it is recommended to sync your" +" system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "" + +#: 8431257445754fb5ba6f8bd670885610 discord.client.Client:66 of +msgid "" +"Whether to assume the system clock is unsynced. This applies to the " +"ratelimit handling code. If this is set to ``True``, the default, then " +"the library uses the time to reset a rate limit bucket given by Discord. " +"If this is ``False`` then your system clock is used to calculate how long" +" to sleep for. If this is set to ``False`` it is recommended to sync your" +" system clock to Google's NTP server." +msgstr "" + +#: a151867e23f44624b83429102b15a98e discord.client.Client:74 of +msgid "" +"Whether to enable events that are useful only for debugging gateway " +"related information. Right now this involves " +":func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is " +"``False`` then those events will not be dispatched (due to performance " +"considerations). To enable these events, this must be set to ``True``. " +"Defaults to ``False``. .. versionadded:: 2.0" +msgstr "" + +#: 70630f12d1544afaa766f261e18e28ac discord.client.Client:74 of +msgid "" +"Whether to enable events that are useful only for debugging gateway " +"related information." +msgstr "" + +#: 0914818f05e04728aa8d77f5b0d51043 discord.client.Client:76 of +msgid "" +"Right now this involves :func:`on_socket_raw_receive` and " +":func:`on_socket_raw_send`. If this is ``False`` then those events will " +"not be dispatched (due to performance considerations). To enable these " +"events, this must be set to ``True``. Defaults to ``False``." +msgstr "" + +#: c72989c35e494798868c418761624dc3 discord.client.Client:85 of +msgid "" +"The WebSocket gateway the client is currently connected to. Could be " +"``None``." +msgstr "" + +#: bfdaca2ce94b47c491227ce955d6ef14 discord.client.Client:89 of +msgid "The event loop that the client uses for asynchronous operations." +msgstr "" + +#: 49f2ebafe64e46af80bdc5670f75ec65 discord.client.Client:91 of +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr "" + +#: 3cb35c3f35cd4b2ca42e62e2da4cb21d discord.shard.AutoShardedClient:1 of +msgid "" +"A client similar to :class:`Client` except it handles the complications " +"of sharding for the user into a more manageable and transparent single " +"process bot." +msgstr "" + +#: b5375ea69da64b3caa024a700394b923 discord.shard.AutoShardedClient:5 of +msgid "" +"When using this client, you will be able to use it as-if it was a regular" +" :class:`Client` with a single shard when implementation wise internally " +"it is split up into multiple shards. This allows you to not have to deal " +"with IPC or other complicated infrastructure." +msgstr "" + +#: b23af5d33cea44b7a27c7209f321f2b5 discord.shard.AutoShardedClient:10 of +msgid "" +"It is recommended to use this client only if you have surpassed at least " +"1000 guilds." +msgstr "" + +#: d4eaadf814124f55ab556462d4fbb97a discord.shard.AutoShardedClient:13 of +msgid "" +"If no :attr:`.shard_count` is provided, then the library will use the Bot" +" Gateway endpoint call to figure out how many shards to use." +msgstr "" + +#: b8867ec06a244683a091e3779cb7d564 discord.shard.AutoShardedClient:16 of +msgid "" +"If a ``shard_ids`` parameter is given, then those shard IDs will be used " +"to launch the internal shards. Note that :attr:`.shard_count` must be " +"provided if this is used. By default, when omitted, the client will " +"launch shards from 0 to ``shard_count - 1``." +msgstr "" + +#: 154cb8641e7546fb9fa4fbaf26b840aa discord.shard.AutoShardedClient:23 of +msgid "An optional list of shard_ids to launch the shards with." +msgstr "" + +#: 45591084a7f244f081d9f18faeb96673 discord.AutoShardedClient.latency:3 of +msgid "" +"This operates similarly to :meth:`Client.latency` except it uses the " +"average latency of every shard's latency. To get a list of shard latency," +" check the :attr:`latencies` property. Returns ``nan`` if there are no " +"shards ready." +msgstr "" + +#: 619ba050e1e849f6b4c984c0fe32b011 discord.AutoShardedClient.latencies:1 of +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "" + +#: 97f9a62dd3ed4c80a81751723a8c7204 discord.AutoShardedClient.latencies:4 of +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "" + +#: discord.shard.AutoShardedClient.get_shard:1 e94acc6e90f1417a98be41ad60b4db51 +#: of +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "" + +#: dee98d04bb7d49cc82b8b1641fe586b4 discord.shard.AutoShardedClient.get_shard:5 +#: of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\`" +" \\| \\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 7d75d87d0698427b8f520c5d1481e427 discord.AutoShardedClient.shards:1 of +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "" + +#: discord.shard.AutoShardedClient.change_presence:5 +#: fe09ce2894fb435bb45e56115918a23c of +msgid "Example: ::" +msgstr "" + +#: 3804449bf2294064adf9b2e5b242eb29 +#: discord.shard.AutoShardedClient.change_presence:17 of +msgid "" +"Indicates what status to change to. If ``None``, then " +":attr:`Status.online` is used." +msgstr "" + +#: 3d9cee2a830946a296dafe6d7f539aa7 +#: discord.shard.AutoShardedClient.change_presence:21 of +msgid "" +"The shard_id to change the presence to. If not specified or ``None``, " +"then it will change the presence of every shard the bot can see." +msgstr "" + +#: cec772a3fc134fb7bb636f5854a3cf00 +#: discord.shard.AutoShardedClient.change_presence:26 of +msgid "If the ``activity`` parameter is not of proper type." +msgstr "" + +#: c11858bd0a2046e5ac236361b14e3083 +#: discord.shard.AutoShardedClient.is_ws_ratelimited:1 of +msgid "Whether the websocket is currently rate limited." +msgstr "" + +#: 771bda0c3a274e548f284047259f561a +#: discord.shard.AutoShardedClient.is_ws_ratelimited:3 of +msgid "" +"This can be useful to know when deciding whether you should query members" +" using HTTP or via the gateway." +msgstr "" + +#: af9ce954ce2644af83ba1462c4d8d5a5 +#: discord.shard.AutoShardedClient.is_ws_ratelimited:6 of +msgid "" +"This implementation checks if any of the shards are rate limited. For " +"more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. " +":rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/cogs.po b/docs/locales/en/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..2a23c3ba6b --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/cogs.po @@ -0,0 +1,323 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-12 14:51+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/cogs.rst:4 5374666c885c4434b06da0a8790fecdb +msgid "Cogs" +msgstr "" + +#: 458db600a9dc421f888e3b5e7c9f1351 discord.cog.Cog:1 of +msgid "The base class that all cogs must inherit from." +msgstr "" + +#: discord.cog.Cog:3 e1e94c83b83740df83784c2fff922069 of +msgid "" +"A cog is a collection of commands, listeners, and optional state to help " +"group commands together. More information on them can be found on the " +":ref:`ext_commands_cogs` page." +msgstr "" + +#: 8ecea32e63eb4fe29620ed571bb7681b discord.cog.Cog:7 of +msgid "" +"When inheriting from this class, the options shown in :class:`CogMeta` " +"are equally valid here." +msgstr "" + +#: ../../api/cogs.rst 1d205dc90db34b6d9d28696d847dee05 +#: 35b5e3289e2e4915a8fe1a7f1955e20c +msgid "Returns" +msgstr "" + +#: 898f5042c0b34b3bad6c57241c7a13cb discord.cog.Cog.get_commands:1 of +msgid "" +"A :class:`list` of :class:`.ApplicationCommand`\\s that are defined " +"inside this cog. .. note:: This does not include subcommands." +msgstr "" + +#: 0397355338a240288c1b0d328ef921af discord.cog.Cog.get_commands:1 of +msgid "" +"A :class:`list` of :class:`.ApplicationCommand`\\s that are defined " +"inside this cog." +msgstr "" + +#: 8c92dad3ecb14b3098ece5e74258e9f0 discord.cog.Cog.get_commands:6 of +msgid "This does not include subcommands." +msgstr "" + +#: ../../api/cogs.rst a548999373424e22a1eef592535cb0e9 +#: c4db6bbac90e467593f54b1cab05f4fb +msgid "Return type" +msgstr "" + +#: 12ea85ca434545618cfed65e71c9d1b2 discord.cog.Cog.get_commands:7 of +msgid "List[:class:`.ApplicationCommand`]" +msgstr "" + +#: 9b9b93d42d1444fdad773c091b29a12e discord.Cog.qualified_name:1 of +msgid "Returns the cog's specified name, not the class name." +msgstr "" + +#: 09a4937043ae42de98974edac587af34 discord.Cog.description:1 of +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "" + +#: 79a0311d2c504a2683912a45a590a788 discord.cog.Cog.walk_commands:1 of +msgid "" +"An iterator that recursively walks through this cog's commands and " +"subcommands." +msgstr "" + +#: 019b68caa9ae4423a195db1a4caac677 discord.cog.Cog.walk_commands of +msgid "Yields" +msgstr "" + +#: c6b428360ea8462ab87d860eeb14f885 discord.cog.Cog.walk_commands:3 of +msgid "" +"Union[:class:`.Command`, :class:`.Group`] -- A command or group from the " +"cog." +msgstr "" + +#: 483845d65d544491a23375ed5d92e183 discord.cog.Cog.get_listeners:1 of +msgid "" +"Returns a :class:`list` of (name, function) listener pairs that are " +"defined in this cog." +msgstr "" + +#: 91c25427765a4ea29546f1167cdd4893 discord.cog.Cog.get_listeners:3 of +msgid "The listeners defined in this cog." +msgstr "" + +#: 2fb7acbba5b24dcdb2dc03d91ffa65da discord.cog.Cog.get_listeners:4 of +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "" + +#: c3661694ba0d4447b0f9fd92354b48d8 discord.cog.Cog.listener:1 of +msgid "A decorator that marks a function as a listener." +msgstr "" + +#: 22b14baebc684734bb4830d6299e5c83 discord.cog.Cog.listener:3 of +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "" + +#: ../../api/cogs.rst bd530b05086c4698967d87151c86bf4d +msgid "Parameters" +msgstr "" + +#: 056df5f1bcf2456e9448b7ac18cdf0b2 discord.cog.Cog.listener:6 of +msgid "" +"The name of the event being listened to. If not provided, it defaults to " +"the function's name." +msgstr "" + +#: 988ebdf9035e4565aa89650d9bf379e5 discord.cog.Cog.listener:10 of +msgid "" +"If this listener should only be called once after each cog load. Defaults" +" to false." +msgstr "" + +#: ../../api/cogs.rst 108c54a3aec540989381cab703ffb9cb +msgid "Raises" +msgstr "" + +#: 9dd1deee9f194fffafea26f9ed0c1d66 discord.cog.Cog.listener:14 of +msgid "" +"The function is not a coroutine function or a string was not passed as" +" the name." +msgstr "" + +#: 4f8e7498b5ae43b78c54b7b164dcdd88 discord.cog.Cog.listener:16 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, " +"bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr "" + +#: 8540394b44384ceb81c96c63caa5c2d2 discord.cog.Cog.has_error_handler:1 of +msgid "" +"Checks whether the cog has an error handler. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: d763221471154638916ac3d6956b3ae5 discord.cog.Cog.cog_unload:1 of +msgid "A special method that is called when the cog gets removed." +msgstr "" + +#: discord.cog.Cog.cog_unload:3 e9d793cd323741df9e72ffde220b07e9 of +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "" + +#: 724ad9a454b545179a30c4708ea00cff discord.cog.Cog.cog_unload:6 of +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "" + +#: bae3ff62cd7046098fd26a064a87ab95 discord.cog.Cog.cog_after_invoke:11 +#: discord.cog.Cog.cog_before_invoke:11 discord.cog.Cog.cog_command_error:16 +#: discord.cog.Cog.cog_unload:9 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: c2514ac91866455db81eefb67426a70a discord.cog.Cog.bot_check_once:1 of +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "" + +#: 74a72b4805f9400f99581374cdd6e25d discord.cog.Cog.bot_check:4 +#: discord.cog.Cog.bot_check_once:4 discord.cog.Cog.cog_check:4 of +msgid "" +"This function **can** be a coroutine and must take a sole parameter, " +"``ctx``, to represent the :class:`.Context` or " +":class:`.ApplicationContext`." +msgstr "" + +#: 21d75be906eb43a4839ac7c2ac76eb49 discord.cog.Cog.bot_check:8 +#: discord.cog.Cog.bot_check_once:8 discord.cog.Cog.cog_after_invoke:8 +#: discord.cog.Cog.cog_before_invoke:8 discord.cog.Cog.cog_check:8 of +msgid "The invocation context." +msgstr "" + +#: bc04772b95eb445880b68aa35b50195a discord.cog.Cog.bot_check:11 +#: discord.cog.Cog.bot_check_once:11 discord.cog.Cog.cog_check:11 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: bbe43d3b5dd84335bd98b895da5c5d31 discord.cog.Cog.bot_check:1 of +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "" + +#: 565b81b5cfdc4cdda8521ef12839733b discord.cog.Cog.cog_check:1 of +msgid "" +"A special method that registers as a :func:`~discord.ext.commands.check` " +"for every command and subcommand in this cog." +msgstr "" + +#: 2b94ea8c69b14735aa67ff32dc3c485c discord.cog.Cog.cog_command_error:1 of +msgid "" +"A special method that is called whenever an error is dispatched inside " +"this cog." +msgstr "" + +#: 6a8806d6c4dc43f297f233cc8b7b6ee0 discord.cog.Cog.cog_command_error:4 of +msgid "" +"This is similar to :func:`.on_command_error` except only applying to the " +"commands inside this cog." +msgstr "" + +#: 2e2fb136a8f54e59a37867e585a665fa discord.cog.Cog.cog_after_invoke:5 +#: discord.cog.Cog.cog_before_invoke:5 discord.cog.Cog.cog_command_error:7 of +msgid "This **must** be a coroutine." +msgstr "" + +#: discord.cog.Cog.cog_command_error:10 f45a4e9c378d4734bd2deb4595be8ade of +msgid "The invocation context where the error happened." +msgstr "" + +#: discord.cog.Cog.cog_command_error:13 efb608efd0f84d848d9751acb811d5c4 of +msgid "The error that happened." +msgstr "" + +#: discord.cog.Cog.cog_before_invoke:1 e700e204ccb442a29787cdda38815ca5 of +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "" + +#: 2d77573f53f44ca6b250e7f6df2489b4 discord.cog.Cog.cog_before_invoke:3 of +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "" + +#: d9ccb004627a47bebf30219cd886dd84 discord.cog.Cog.cog_after_invoke:1 of +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "" + +#: dbfd268f9dc34ea49b98669dcbbdf3ec discord.cog.Cog.cog_after_invoke:3 of +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "" + +#: 904788c309034bf3afb023d13eecfd71 discord.cog.CogMeta:1 of +msgid "A metaclass for defining a cog." +msgstr "" + +#: 161c4beefa534e7b9ab0609af6d8a6f9 discord.cog.CogMeta:3 of +msgid "" +"Note that you should probably not use this directly. It is exposed purely" +" for documentation purposes along with making custom metaclasses to " +"intermix with other metaclasses such as the :class:`abc.ABCMeta` " +"metaclass." +msgstr "" + +#: a6eba5b14cd74e789809db87119d7c77 discord.cog.CogMeta:7 of +msgid "" +"For example, to create an abstract cog mixin class, the following would " +"be done." +msgstr "" + +#: 206e4807ffc441bd8d611a6ea0a96b05 discord.cog.CogMeta:24 of +msgid "" +"When passing an attribute of a metaclass that is documented below, note " +"that you must pass it as a keyword-only argument to the class creation " +"like the following example:" +msgstr "" + +#: discord.cog.CogMeta:35 e1bd95d427ba4763beddd661b91be7c3 of +msgid "" +"The cog name. By default, it is the name of the class with no " +"modification." +msgstr "" + +#: 89b6db804e56474fb08d5a060b7ed69d discord.cog.CogMeta of +msgid "type" +msgstr "" + +#: 459eaf51b3d74a869ea18e53f787fcea discord.cog.CogMeta:37 +#: discord.cog.CogMeta:45 of +msgid ":class:`str`" +msgstr "" + +#: a3bb879d22d1404a9ca12a99597eefef discord.cog.CogMeta:41 of +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "" + +#: 5976a1f483c5445ca1697a4a084bca66 discord.cog.CogMeta:49 of +msgid "" +"A list of attributes to apply to every command inside this cog. The " +"dictionary is passed into the :class:`Command` options at ``__init__``. " +"If you specify attributes inside the command attribute in the class, it " +"will override the one specified inside this attribute. For example:" +msgstr "" + +#: 2ed6039376f64807b6b5820df01912d7 discord.cog.CogMeta:65 of +msgid ":class:`dict`" +msgstr "" + +#: 0194efeae73b4e52b6b48b3cba6e8c8c discord.cog.CogMeta:69 of +msgid "" +"A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all " +"application commands have in the cog. You can override this by setting " +"``guild_ids`` per command." +msgstr "" + +#: discord.cog.CogMeta:74 f3c34e2053064a7e9f686c4a5656fbf9 of +msgid "Optional[List[:class:`int`]]" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/data_classes.po b/docs/locales/en/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..6519631f57 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,5390 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.16.0\n" + +#: ../../api/data_classes.rst:6 0a78c32f65ce438ea508fc4e400c8264 +msgid "Data Classes" +msgstr "" + +#: ../../api/data_classes.rst:8 ab0bcd989e4543f489cbd8bcaf602f3a +msgid "Some classes are just there to be data containers, this lists them." +msgstr "" + +#: ../../api/data_classes.rst:10 cc819b78c53d4fc99e0f60ed11d07ead +msgid "" +"Unlike :ref:`models ` you are allowed to create most " +"of these yourself, even if they can also be used to hold attributes." +msgstr "" + +#: ../../api/data_classes.rst:13 2ec03af182ba456a9c8abb02a62b36f3 +msgid "" +"Nearly all classes here have :ref:`py:slots` defined which means that it " +"is impossible to have dynamic attributes to the data classes." +msgstr "" + +#: ../../api/data_classes.rst:16 a42a075d6c6f46f9840c28ce7fe31ac3 +msgid "" +"The only exception to this rule is :class:`Object`, which is made with " +"dynamic attributes in mind." +msgstr "" + +#: discord.object.Object:1 e3d330e0662949cab82a0391b0410305 of +msgid "Represents a generic Discord object." +msgstr "" + +#: 7df007b5e76e4b50975a2244649d0791 discord.object.Object:3 of +msgid "" +"The purpose of this class is to allow you to create 'miniature' versions " +"of data classes if you want to pass in just an ID. Most functions that " +"take in a specific data class with an ID can also take in this class as a" +" substitute instead. Note that even though this is the case, not all " +"objects (if any) actually inherit from this class." +msgstr "" + +#: 7154b922b863489f927fe091d906420a discord.object.Object:9 of +msgid "" +"There are also some cases where some WebSocket events are received in " +":dpy-issue:`strange order <21>` and when such events happened you would " +"receive this class rather than the actual data class. These cases are " +"extremely rare." +msgstr "" + +#: 7658bd6c40fd49399cba371bdcf522ea discord.object.Object:18 of +msgid "Checks if two objects are equal." +msgstr "" + +#: ac4fd4f220d34fb99f5d2493dcfd8b5c discord.object.Object:22 of +msgid "Checks if two objects are not equal." +msgstr "" + +#: discord.object.Object:26 fc9c9870cb154ea3a8d22a72d9afe701 of +msgid "Returns the object's hash." +msgstr "" + +#: 6cb23f98f49a4de2847e0f6cb46912b3 discord.object.Object:30 of +msgid "The ID of the object." +msgstr "" + +#: ../../docstring 022ca6f62fc649d3babfa503e9a7527d +#: 07a6ab3ef7b647039bcefeda19b570d7 0945efcada3240758eff2c695d616f32 +#: 0a9f06d333124df0aae9049074965a81 0b6bdc9f79764717a733eb7a5958f520 +#: 0ba8abd38afb4d208cbc471b1d0baa5e 0d8cf03e305c441a937b9d418b558488 +#: 10706bbef0c04fe0bc85c95ac3cdaa67 1b41ad05a49849278911c3e2f57c8e5d +#: 240d3aad39f04f92b476f6ba0e75007f 2842d4409acc41a2964ac2c83972b347 +#: 2d431f876ab54a9ba881a6e21b29e517 308a58630c4e48c2acc2d2a709e660fd +#: 37389512c06c42c1b0ba531669e662b5 3cde02c1afdd471284767db5f3c67801 +#: 45420bc3f5e249dd8ef820bdb4863ddc 530e6956dbfa465a8855e5b8b2e6529f +#: 54d86a1d1b3d4c87b667471e1a7d424f 5d194e2b41154c9abe702d59bd5d87b8 +#: 5d20cdf35cf44064b8c208f270ffa578 674e78410f3641199148d66412633ac2 +#: 6c4d566dbc03451c823e41e2f0cb5dd1 6db56029d8d0485abf50e5258830aff5 +#: 6e2e7aa2a7c449a99e8f05fdfee3dc1a 723831052aca4c2d94163331d498fab4 +#: 74d5fdba4b784f47b2373e8c543a62b3 756b428ff3f9484e91ab6d231993be61 +#: 8011db96a73b497495b8da7fd21bc04e 80c538be47764e71bee2f99f7603a06c +#: 83632daae24b47c8b698763bdf3d970f 859d68d0649d49978f9dc52e463ae367 +#: 95e6b772d9f5492787b72ae79a2f21ba af2b5a1b3db74038a31df759ea7c8813 +#: c06aab6000c143bc9084e6898cd79330 c0b5a0d23eb144df849ae21e56e1c8cf +#: d04be24516744c6cb0d8a75985d21242 d658a315c6b74568a6988f7cbfd0bfd5 +#: df0fb4b2f1aa45beb6b6920a8e335e0c discord.ApplicationFlags.active +#: discord.ApplicationFlags.app_commands_badge +#: discord.ApplicationFlags.application_auto_moderation_rule_create_badge +#: discord.ApplicationFlags.embedded +#: discord.ApplicationFlags.gateway_guild_members +#: discord.ApplicationFlags.gateway_guild_members_limited +#: discord.ApplicationFlags.gateway_message_content +#: discord.ApplicationFlags.gateway_message_content_limited +#: discord.ApplicationFlags.gateway_presence +#: discord.ApplicationFlags.gateway_presence_limited +#: discord.ApplicationFlags.group_dm_create +#: discord.ApplicationFlags.managed_emoji +#: discord.ApplicationFlags.rpc_has_connected +#: discord.ApplicationFlags.verification_pending_guild_limit +#: discord.AttachmentFlags.is_clip discord.AttachmentFlags.is_remix +#: discord.AttachmentFlags.is_thumbnail discord.ChannelFlags.pinned +#: discord.ChannelFlags.require_tag +#: discord.Intents.auto_moderation_configuration +#: discord.Intents.auto_moderation_execution discord.Intents.bans +#: discord.Intents.dm_messages discord.Intents.dm_polls +#: discord.Intents.dm_reactions discord.Intents.dm_typing +#: discord.Intents.emojis discord.Intents.emojis_and_stickers +#: discord.Intents.guild_messages discord.Intents.guild_polls +#: discord.Intents.guild_reactions discord.Intents.guild_typing +#: discord.Intents.guilds discord.Intents.integrations discord.Intents.invites +#: discord.Intents.members discord.Intents.message_content +#: discord.Intents.messages discord.Intents.moderation discord.Intents.polls +#: discord.Intents.presences discord.Intents.reactions +#: discord.Intents.scheduled_events discord.Intents.typing +#: discord.Intents.voice_states discord.Intents.webhooks +#: discord.MemberCacheFlags.interaction discord.MemberCacheFlags.joined +#: discord.MemberCacheFlags.voice discord.MemberFlags.bypasses_verification +#: discord.MemberFlags.completed_onboarding discord.MemberFlags.did_rejoin +#: discord.MemberFlags.started_onboarding discord.MessageFlags.crossposted +#: discord.MessageFlags.ephemeral +#: discord.MessageFlags.failed_to_mention_some_roles_in_thread +#: discord.MessageFlags.has_thread discord.MessageFlags.is_crossposted +#: discord.MessageFlags.is_voice_message discord.MessageFlags.loading +#: discord.MessageFlags.source_message_deleted +#: discord.MessageFlags.suppress_embeds +#: discord.MessageFlags.suppress_notifications discord.MessageFlags.urgent +#: discord.Permissions.add_reactions discord.Permissions.administrator +#: discord.Permissions.attach_files discord.Permissions.ban_members +#: discord.Permissions.change_nickname discord.Permissions.connect +#: discord.Permissions.create_instant_invite +#: discord.Permissions.create_private_threads +#: discord.Permissions.create_public_threads discord.Permissions.deafen_members +#: discord.Permissions.embed_links discord.Permissions.external_emojis +#: discord.Permissions.external_stickers discord.Permissions.kick_members +#: discord.Permissions.manage_channels discord.Permissions.manage_emojis +#: discord.Permissions.manage_emojis_and_stickers +#: discord.Permissions.manage_events discord.Permissions.manage_guild +#: discord.Permissions.manage_messages discord.Permissions.manage_nicknames +#: discord.Permissions.manage_permissions discord.Permissions.manage_roles +#: discord.Permissions.manage_threads discord.Permissions.manage_webhooks +#: discord.Permissions.mention_everyone discord.Permissions.moderate_members +#: discord.Permissions.move_members discord.Permissions.mute_members +#: discord.Permissions.priority_speaker +#: discord.Permissions.read_message_history discord.Permissions.read_messages +#: discord.Permissions.request_to_speak discord.Permissions.send_messages +#: discord.Permissions.send_messages_in_threads discord.Permissions.send_polls +#: discord.Permissions.send_tts_messages +#: discord.Permissions.send_voice_messages +#: discord.Permissions.set_voice_channel_status discord.Permissions.speak +#: discord.Permissions.start_embedded_activities discord.Permissions.stream +#: discord.Permissions.use_application_commands +#: discord.Permissions.use_external_apps +#: discord.Permissions.use_external_emojis +#: discord.Permissions.use_external_stickers +#: discord.Permissions.use_slash_commands +#: discord.Permissions.use_voice_activation discord.Permissions.view_audit_log +#: discord.Permissions.view_channel discord.Permissions.view_guild_insights +#: discord.PublicUserFlags.active_developer +#: discord.PublicUserFlags.bot_http_interactions +#: discord.PublicUserFlags.bug_hunter +#: discord.PublicUserFlags.bug_hunter_level_2 +#: discord.PublicUserFlags.discord_certified_moderator +#: discord.PublicUserFlags.early_supporter +#: discord.PublicUserFlags.early_verified_bot_developer +#: discord.PublicUserFlags.hypesquad discord.PublicUserFlags.hypesquad_balance +#: discord.PublicUserFlags.hypesquad_bravery +#: discord.PublicUserFlags.hypesquad_brilliance discord.PublicUserFlags.partner +#: discord.PublicUserFlags.premium_promo_dismissed +#: discord.PublicUserFlags.staff discord.PublicUserFlags.system +#: discord.PublicUserFlags.team_user discord.PublicUserFlags.verified_bot +#: discord.PublicUserFlags.verified_bot_developer discord.RoleFlags.in_prompt +#: discord.SKUFlags.available discord.SKUFlags.guild_subscription +#: discord.SKUFlags.user_subscription +#: discord.SystemChannelFlags.guild_reminder_notifications +#: discord.SystemChannelFlags.join_notification_replies +#: discord.SystemChannelFlags.join_notifications +#: discord.SystemChannelFlags.premium_subscriptions discord.activity.Activity +#: discord.activity.CustomActivity discord.activity.Game +#: discord.activity.Streaming discord.colour.Colour +#: discord.components.SelectOption discord.embeds.Embed +#: discord.embeds.EmbedAuthor discord.embeds.EmbedField +#: discord.embeds.EmbedFooter discord.embeds.EmbedMedia +#: discord.embeds.EmbedProvider discord.file.File +#: discord.flags.ApplicationFlags discord.flags.AttachmentFlags +#: discord.flags.ChannelFlags discord.flags.Intents +#: discord.flags.MemberCacheFlags discord.flags.MemberFlags +#: discord.flags.MessageFlags discord.flags.PublicUserFlags +#: discord.flags.RoleFlags discord.flags.SKUFlags +#: discord.flags.SystemChannelFlags discord.mentions.AllowedMentions +#: discord.message.MessageReference discord.message.PartialMessage +#: discord.object.Object discord.permissions.Permissions discord.poll.Poll +#: discord.poll.PollAnswer discord.poll.PollAnswerCount discord.poll.PollMedia +#: discord.poll.PollResults discord.shard.ShardInfo +#: e4011bea52634c7ba64aef6135dffbd2 e6bfdc42ce134a04bfb90118a9947aa3 +#: ea47348b77604cd6bf327c57b7ff3d6d f15f5916f3c44904946502c7f1bc41b0 +#: f2c8b1fc5b0349b3b47cf0bf7adfa959 f4b5a29e047f49c391e8f8314e7befd1 +#: ffb6921ba007446f9ef96812b7f54ea6 of +msgid "type" +msgstr "" + +#: 0a3305279543462d880226cdad446ec5 47963b10a3744670a53e06986a02d383 +#: 6674934795ef4e7c9fb97e9e9883e91e 787271a8ad0043a4b44cc5a717c8b26b +#: 83ced52f44bb4a1c95f0962207ce50dc discord.colour.Colour:32 +#: discord.embeds.EmbedMedia:22 discord.embeds.EmbedMedia:28 +#: discord.flags.ApplicationFlags:42 discord.flags.AttachmentFlags:42 +#: discord.flags.ChannelFlags:42 discord.flags.Intents:52 +#: discord.flags.MemberCacheFlags:55 discord.flags.MemberFlags:42 +#: discord.flags.MessageFlags:44 discord.flags.PublicUserFlags:43 +#: discord.flags.RoleFlags:43 discord.flags.SKUFlags:42 +#: discord.flags.SystemChannelFlags:47 discord.message.MessageReference:18 +#: discord.message.PartialMessage:42 discord.object.Object:32 +#: discord.permissions.Permissions:62 discord.poll.Poll:21 +#: discord.poll.PollAnswer:10 discord.poll.PollAnswerCount:10 +#: discord.poll.PollAnswerCount:16 discord.poll.PollResults.total_votes:4 +#: discord.shard.ShardInfo:12 of +msgid ":class:`int`" +msgstr "" + +#: ../../api/data_classes.rst 17d3622dc479450a9951e9f01f4e961e +#: 41838a50196b4f6281147969c43977d0 62c0635de0e14e85b11eb228a093d50b +#: 89e6520d4ff047f18dee15ce511b202d b5ea8629223b4b5b93a1742e5a53077e +#: bc227baf3a35408b8f5380ffa74958b7 d463224bd212438b803261a9fa1b966a +#: discord.poll.Poll.add_answer discord.poll.PollAnswer.voters +#: e10fd84d147f4b71b2d38959065e253c ed60de7fca634eb19790777106f69830 of +msgid "Parameters" +msgstr "" + +#: discord.Object.created_at:1 f057925900a64a8ba20a93fbe5494253 of +msgid "Returns the snowflake's creation time in UTC." +msgstr "" + +#: 53a32582704149b99db505d1034792e7 discord.Object.worker_id:1 of +msgid "Returns the worker id that made the snowflake." +msgstr "" + +#: 65dff6ade4594d2b8b83e2db2f87e06d discord.Object.process_id:1 of +msgid "Returns the process id that made the snowflake." +msgstr "" + +#: 824e681e53414a8c8cccf61fd3f837e9 discord.Object.increment_id:1 of +msgid "Returns the increment id that made the snowflake." +msgstr "" + +#: 0d8b907771e64532af760f81f51e6054 discord.components.SelectOption:1 of +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "" + +#: 836aee37573f4fb99a2e2ba8cd2ac24e discord.components.SelectOption:3 of +msgid "These can be created by users." +msgstr "" + +#: b0f1217cfaff4c189043c1907c804416 discord.components.SelectOption:9 of +msgid "" +"The label of the option. This is displayed to users. Can only be up to " +"100 characters." +msgstr "" + +#: 05be8ec42ca842988501f59cc34e4060 bf029a45ccb14764ab8bb9e4b6849d2a +#: discord.activity.Game:31 discord.activity.Streaming:55 +#: discord.components.SelectOption:12 discord.components.SelectOption:20 +#: discord.embeds.Embed:25 discord.embeds.Embed:34 discord.embeds.Embed:42 +#: discord.embeds.Embed:49 discord.embeds.EmbedAuthor:9 +#: discord.embeds.EmbedAuthor:15 discord.embeds.EmbedAuthor:21 +#: discord.embeds.EmbedAuthor:27 discord.embeds.EmbedField:9 +#: discord.embeds.EmbedField:15 discord.embeds.EmbedFooter:9 +#: discord.embeds.EmbedFooter:15 discord.embeds.EmbedFooter:21 +#: discord.embeds.EmbedMedia:10 discord.embeds.EmbedMedia:16 +#: discord.embeds.EmbedProvider:9 discord.embeds.EmbedProvider:15 +#: discord.poll.PollMedia:9 fc861202507f4454976c8563dc3bc383 of +msgid ":class:`str`" +msgstr "" + +#: 579e6accca914c3998466750119550fe discord.components.SelectOption:16 of +msgid "" +"The value of the option. This is not displayed to users. If not provided " +"when constructed then it defaults to the label. Can only be up to 100 " +"characters." +msgstr "" + +#: df26f5a7b24d4b6d906959574c93288e discord.components.SelectOption:24 of +msgid "" +"An additional description of the option, if any. Can only be up to 100 " +"characters." +msgstr "" + +#: 1829644e9c8741b9ab3d3326ded2df0a 3963803bd3104b1f89165daeab20d80a +#: discord.activity.Activity:22 discord.activity.Activity:28 +#: discord.activity.Activity:40 discord.activity.Activity:46 +#: discord.activity.CustomActivity:27 discord.activity.CustomActivity:39 +#: discord.activity.Streaming:29 discord.activity.Streaming:35 +#: discord.activity.Streaming:41 discord.activity.Streaming:49 +#: discord.components.SelectOption:27 discord.file.File:30 discord.file.File:36 +#: of +msgid "Optional[:class:`str`]" +msgstr "" + +#: 5c9b407cffa7482394bcebc4fc8cd412 discord.components.SelectOption:31 of +msgid "Whether this option is selected by default." +msgstr "" + +#: ../../docstring 034f5658560a46a48f6392d1a929bbd7 +#: 161aa3465ff54b8eabe605b3e1effc75 1bd2fe7cfa7442648f6b9c5bd3d60b3e +#: 1c9bcfbfabcf4447af13173772e0dba3 2c1c87d5592e4e8ba6d282a4981aaf31 +#: 326278ce171e46fb892074ec17d63e86 3461eb669bf74f97b82aada9d35a05ef +#: 46fa3239adde4e4e8c329454531c38d3 4925fccfa0a940c8a56591683e21bb9b +#: 5e77c1cbf15f4edbace963555bada8f4 655b339bafc8433e9aaab4de0ce88be5 +#: 7186fd1920ad48c08b8c0b576bf3e70b 7423abc3cc524d34a8f85edbe0dc35c9 +#: 77ec92f62db14901a099b1dd6847dc2c 7cdf2f906ed044deb6012048150da019 +#: 7ff8f88daaf64e81ae8e54a9a098fba8 8131de1784d84c66a45d155df88cf3cd +#: 8b13ad081fb949e7830bf07869b61edd 97e4820420da426a91acebda9917aa78 +#: a1a7cfe5e59a4d34b6c36e5fde156571 ae44222339b04401be8bde84be82516c +#: b152bbcee768493eaedb1704b92055be b65935e7a9214a36aba1ec7fc7c90e2a +#: b9f49cf9cee747048835891d1c7f70f5 c66087222b144b77bfe3590882bb094c +#: ced24460a70040d8b61a4ad0d6c78aed d45426a29b06438e91f2dd515ab9a26b +#: d50186c464354e00bb33065cbbc894ca discord.ApplicationFlags.active:6 +#: discord.ApplicationFlags.app_commands_badge:6 +#: discord.ApplicationFlags.application_auto_moderation_rule_create_badge:5 +#: discord.ApplicationFlags.embedded:3 +#: discord.ApplicationFlags.gateway_guild_members:4 +#: discord.ApplicationFlags.gateway_guild_members_limited:4 +#: discord.ApplicationFlags.gateway_message_content:3 +#: discord.ApplicationFlags.gateway_message_content_limited:4 +#: discord.ApplicationFlags.gateway_presence:4 +#: discord.ApplicationFlags.gateway_presence_limited:4 +#: discord.ApplicationFlags.group_dm_create:3 +#: discord.ApplicationFlags.managed_emoji:3 +#: discord.ApplicationFlags.rpc_has_connected:3 +#: discord.ApplicationFlags.verification_pending_guild_limit:4 +#: discord.AttachmentFlags.is_clip:3 discord.AttachmentFlags.is_remix:3 +#: discord.AttachmentFlags.is_thumbnail:3 discord.ChannelFlags.pinned:3 +#: discord.ChannelFlags.require_tag:6 +#: discord.Intents.auto_moderation_configuration:9 +#: discord.Intents.auto_moderation_execution:7 discord.Intents.bans:6 +#: discord.Intents.dm_messages:27 discord.Intents.dm_polls:17 +#: discord.Intents.dm_reactions:18 discord.Intents.dm_typing:11 +#: discord.Intents.emojis:6 discord.Intents.emojis_and_stickers:21 +#: discord.Intents.guild_messages:38 discord.Intents.guild_polls:17 +#: discord.Intents.guild_reactions:18 discord.Intents.guild_typing:11 +#: discord.Intents.guilds:23 discord.Intents.integrations:12 +#: discord.Intents.invites:10 discord.Intents.members:33 +#: discord.Intents.message_content:23 discord.Intents.messages:31 +#: discord.Intents.moderation:11 discord.Intents.polls:17 +#: discord.Intents.presences:20 discord.Intents.reactions:18 +#: discord.Intents.scheduled_events:18 discord.Intents.typing:11 +#: discord.Intents.voice_states:22 discord.Intents.webhooks:9 +#: discord.MemberCacheFlags.interaction:6 discord.MemberCacheFlags.joined:8 +#: discord.MemberCacheFlags.voice:7 discord.MemberFlags.bypasses_verification:7 +#: discord.MemberFlags.completed_onboarding:3 discord.MemberFlags.did_rejoin:3 +#: discord.MemberFlags.started_onboarding:3 discord.MessageFlags.crossposted:3 +#: discord.MessageFlags.ephemeral:5 +#: discord.MessageFlags.failed_to_mention_some_roles_in_thread:5 +#: discord.MessageFlags.has_thread:5 discord.MessageFlags.is_crossposted:3 +#: discord.MessageFlags.is_voice_message:5 discord.MessageFlags.loading:7 +#: discord.MessageFlags.source_message_deleted:3 +#: discord.MessageFlags.suppress_embeds:3 +#: discord.MessageFlags.suppress_notifications:7 discord.MessageFlags.urgent:5 +#: discord.Permissions.add_reactions:3 discord.Permissions.administrator:5 +#: discord.Permissions.attach_files:3 discord.Permissions.ban_members:3 +#: discord.Permissions.change_nickname:3 discord.Permissions.connect:3 +#: discord.Permissions.create_instant_invite:3 +#: discord.Permissions.create_private_threads:5 +#: discord.Permissions.create_public_threads:5 +#: discord.Permissions.deafen_members:3 discord.Permissions.embed_links:3 +#: discord.Permissions.external_emojis:3 +#: discord.Permissions.external_stickers:5 discord.Permissions.kick_members:3 +#: discord.Permissions.manage_channels:5 discord.Permissions.manage_emojis:3 +#: discord.Permissions.manage_emojis_and_stickers:5 +#: discord.Permissions.manage_events:5 discord.Permissions.manage_guild:3 +#: discord.Permissions.manage_messages:7 discord.Permissions.manage_nicknames:3 +#: discord.Permissions.manage_permissions:5 discord.Permissions.manage_roles:5 +#: discord.Permissions.manage_threads:5 discord.Permissions.manage_webhooks:3 +#: discord.Permissions.mention_everyone:3 +#: discord.Permissions.moderate_members:5 discord.Permissions.move_members:3 +#: discord.Permissions.mute_members:3 discord.Permissions.priority_speaker:3 +#: discord.Permissions.read_message_history:3 +#: discord.Permissions.read_messages:5 discord.Permissions.request_to_speak:5 +#: discord.Permissions.send_messages:3 +#: discord.Permissions.send_messages_in_threads:5 +#: discord.Permissions.send_polls:5 discord.Permissions.send_tts_messages:3 +#: discord.Permissions.send_voice_messages:5 +#: discord.Permissions.set_voice_channel_status:5 discord.Permissions.speak:3 +#: discord.Permissions.start_embedded_activities:5 discord.Permissions.stream:3 +#: discord.Permissions.use_application_commands:5 +#: discord.Permissions.use_external_apps:8 +#: discord.Permissions.use_external_emojis:5 +#: discord.Permissions.use_external_stickers:5 +#: discord.Permissions.use_slash_commands:5 +#: discord.Permissions.use_voice_activation:3 +#: discord.Permissions.view_audit_log:3 discord.Permissions.view_channel:3 +#: discord.Permissions.view_guild_insights:5 +#: discord.PublicUserFlags.active_developer:5 +#: discord.PublicUserFlags.bot_http_interactions:5 +#: discord.PublicUserFlags.bug_hunter:3 +#: discord.PublicUserFlags.bug_hunter_level_2:3 +#: discord.PublicUserFlags.discord_certified_moderator:5 +#: discord.PublicUserFlags.early_supporter:3 +#: discord.PublicUserFlags.early_verified_bot_developer:5 +#: discord.PublicUserFlags.hypesquad:3 +#: discord.PublicUserFlags.hypesquad_balance:3 +#: discord.PublicUserFlags.hypesquad_bravery:3 +#: discord.PublicUserFlags.hypesquad_brilliance:3 +#: discord.PublicUserFlags.partner:3 +#: discord.PublicUserFlags.premium_promo_dismissed:3 +#: discord.PublicUserFlags.staff:3 discord.PublicUserFlags.system:3 +#: discord.PublicUserFlags.team_user:3 discord.PublicUserFlags.verified_bot:3 +#: discord.PublicUserFlags.verified_bot_developer:3 +#: discord.RoleFlags.in_prompt:3 discord.SKUFlags.available:3 +#: discord.SKUFlags.guild_subscription:3 discord.SKUFlags.user_subscription:3 +#: discord.SystemChannelFlags.guild_reminder_notifications:5 +#: discord.SystemChannelFlags.join_notification_replies:5 +#: discord.SystemChannelFlags.join_notifications:3 +#: discord.SystemChannelFlags.premium_subscriptions:3 +#: discord.components.SelectOption:33 discord.embeds.EmbedField:21 +#: discord.file.File:42 discord.mentions.AllowedMentions:11 +#: discord.mentions.AllowedMentions:40 discord.message.MessageReference:33 +#: discord.permissions.PermissionOverwrite.is_empty:7 discord.poll.Poll:27 +#: discord.poll.PollAnswerCount:22 discord.poll.PollResults:9 +#: e1c1e64874eb4dc4b81588e9d084845b e29fe4fdd9ad421295dee23fa82019b0 +#: f2a5f2887dcb45bfb3ec1a4a0aeb18d8 fd16e79e95744fbbb4d1bb67b2d04fbe of +msgid ":class:`bool`" +msgstr "" + +#: 83b108a10aa446cdb6eebaab379b4174 discord.SelectOption.emoji:1 of +msgid "The emoji of the option, if available." +msgstr "" + +#: discord.flags.Intents:1 e2e452e939b041f88f583aded7ed5bad of +msgid "Wraps up a Discord gateway intent flag." +msgstr "" + +#: 11f86baabb094c2baabe61a104cd4f51 discord.flags.Intents:3 of +msgid "" +"Similar to :class:`Permissions`\\, the properties provided are two way. " +"You can set and retrieve individual bits using the properties as if they " +"were regular bools." +msgstr "" + +#: 99d045cffa884713a159060bf7b59130 c7ccca30986e43fd8e10beb3bd9d8656 +#: discord.flags.Intents:7 discord.flags.MemberCacheFlags:12 +#: discord.flags.SystemChannelFlags:7 of +msgid "" +"To construct an object you can pass keyword arguments denoting the flags " +"to enable or disable." +msgstr "" + +#: 89aa9846e2cf4b0c9c280daecc282a51 discord.flags.Intents:10 of +msgid "" +"This is used to disable certain gateway features that are unnecessary to " +"run your bot. To make use of this, it is passed to the ``intents`` " +"keyword argument of :class:`Client`." +msgstr "" + +#: 2723da96d9724f13aedb5348870ab7f6 4e9fe61ccd1549e88739285bf3dafd88 +#: discord.flags.AttachmentFlags:7 discord.flags.Intents:20 +#: discord.flags.MemberCacheFlags:23 discord.flags.MessageFlags:9 +#: discord.flags.SystemChannelFlags:14 of +msgid "Checks if two flags are equal." +msgstr "" + +#: b6e33c093a6446c4b0db0d86d7eea46a c5b62a3820524bdaa7ffdc764a11c059 +#: discord.flags.AttachmentFlags:10 discord.flags.Intents:23 +#: discord.flags.MemberCacheFlags:26 discord.flags.MessageFlags:12 +#: discord.flags.SystemChannelFlags:17 of +msgid "Checks if two flags are not equal." +msgstr "" + +#: 0bd6187917144dd29d57b86f7c0403e5 discord.flags.ApplicationFlags:13 +#: discord.flags.AttachmentFlags:13 discord.flags.ChannelFlags:13 +#: discord.flags.Intents:26 discord.flags.MemberCacheFlags:29 +#: discord.flags.MemberFlags:13 discord.flags.MessageFlags:15 +#: discord.flags.PublicUserFlags:13 discord.flags.RoleFlags:13 +#: discord.flags.SKUFlags:13 discord.flags.SystemChannelFlags:20 +#: f96e957c78734f899f6a8cabbcd6e80f of +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "" + +#: 0c17b2ad55124b1aaae336d3932a00a5 1cc0f99d2ad34188a3d109ca5ea135bd +#: discord.flags.ApplicationFlags:16 discord.flags.AttachmentFlags:16 +#: discord.flags.ChannelFlags:16 discord.flags.Intents:29 +#: discord.flags.MemberCacheFlags:32 discord.flags.MemberFlags:16 +#: discord.flags.MessageFlags:18 discord.flags.PublicUserFlags:16 +#: discord.flags.RoleFlags:16 discord.flags.SKUFlags:16 +#: discord.flags.SystemChannelFlags:23 of +msgid "Subtracts two flags from each other." +msgstr "" + +#: 8682d8d121804ca78190744b3a59c4d3 dc44aea0eb8843ec89427b68ed42e355 +#: discord.flags.ApplicationFlags:19 discord.flags.AttachmentFlags:19 +#: discord.flags.ChannelFlags:19 discord.flags.Intents:32 +#: discord.flags.MemberCacheFlags:35 discord.flags.MemberFlags:19 +#: discord.flags.MessageFlags:21 discord.flags.PublicUserFlags:19 +#: discord.flags.RoleFlags:19 discord.flags.SKUFlags:19 +#: discord.flags.SystemChannelFlags:26 of +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "" + +#: 1958adb42308499f8545a94033c83764 1aa74630c59244a680d6c45bac4a40d4 +#: discord.flags.ApplicationFlags:22 discord.flags.AttachmentFlags:22 +#: discord.flags.ChannelFlags:22 discord.flags.Intents:35 +#: discord.flags.MemberCacheFlags:38 discord.flags.MemberFlags:22 +#: discord.flags.MessageFlags:24 discord.flags.PublicUserFlags:22 +#: discord.flags.RoleFlags:22 discord.flags.SKUFlags:22 +#: discord.flags.SystemChannelFlags:29 of +msgid "Returns the intersection of two flags." +msgstr "" + +#: 0c0d4ae9593340cc9d83a5f1bf9ae314 3f25fb08cab5411e97b911287fb3d991 +#: discord.flags.ApplicationFlags:25 discord.flags.AttachmentFlags:25 +#: discord.flags.ChannelFlags:25 discord.flags.Intents:38 +#: discord.flags.MemberCacheFlags:41 discord.flags.MemberFlags:25 +#: discord.flags.MessageFlags:27 discord.flags.PublicUserFlags:25 +#: discord.flags.RoleFlags:25 discord.flags.SKUFlags:25 +#: discord.flags.SystemChannelFlags:32 of +msgid "Returns the inverse of a flag." +msgstr "" + +#: 115cbdc73ead48389591b9c18de16c6e cd38184237914f6c802d8fd54c02a106 +#: discord.flags.ApplicationFlags:28 discord.flags.AttachmentFlags:28 +#: discord.flags.ChannelFlags:28 discord.flags.Intents:41 +#: discord.flags.MemberCacheFlags:44 discord.flags.MemberFlags:28 +#: discord.flags.MessageFlags:30 discord.flags.PublicUserFlags:28 +#: discord.flags.RoleFlags:28 discord.flags.SKUFlags:28 +#: discord.flags.SystemChannelFlags:35 of +msgid "Return the flag's hash." +msgstr "" + +#: 7204b8ea3a9241949e0f987e6f8c8665 a99a094ce4fa417f968709af699b5323 +#: discord.flags.Intents:44 discord.flags.MemberCacheFlags:47 +#: discord.flags.MessageFlags:33 discord.flags.SystemChannelFlags:38 of +msgid "" +"Returns an iterator of ``(name, value)`` pairs. This allows it to be, for" +" example, constructed as a dict or a list of pairs." +msgstr "" + +#: 82101dd125534b129f6f38b3b3ed2e27 discord.flags.ApplicationFlags:39 +#: discord.flags.AttachmentFlags:39 discord.flags.ChannelFlags:39 +#: discord.flags.Intents:49 discord.flags.MemberCacheFlags:52 +#: discord.flags.MemberFlags:39 discord.flags.SKUFlags:39 +#: f54fefdc28274d45b023ba51349e495a of +msgid "" +"The raw value. You should query flags via the properties rather than " +"using this raw value." +msgstr "" + +#: 16c74d2111d245fba292eb18c918eaef discord.flags.Intents.all:1 of +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "" + +#: ../../api/data_classes.rst 06117d4991d64482ab3bd74ddd051afa +#: 2a6fff9cfbc140eea62eb86587d99e12 2aaf29a75ce048e59ab4aa068f89270e +#: 2c65699780f042bda30498eb6d195ca1 387a935c6db343558a4e1062dc05e80b +#: 3a69766c2ab349738d5ae59cbd70517b 3d9d7f31e3fd426c91b7da7fe211b099 +#: 4cec06d96aa540ca837c06faf1eda4aa 7afd0d20cf2940e4a0493121eb555c29 +#: discord.poll.Poll.add_answer discord.poll.PollAnswer.voters of +msgid "Return type" +msgstr "" + +#: 20a24ced6c2f40ae97a379aac52fc31e 93072a21a8ac4f6d9051e897557acc8f +#: 946b7c87c7b64016bc9465fb66cea03d discord.flags.Intents.all:4 +#: discord.flags.Intents.default:5 discord.flags.Intents.none:4 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr "" + +#: 22324043e80a40aaa717986eb0f452ac discord.flags.Intents.none:1 of +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "" + +#: 45a682a8a0cf40059fcca00391087c9d discord.flags.Intents.default:1 of +msgid "" +"A factory method that creates a :class:`Intents` with everything enabled " +"except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "" + +#: ../../docstring 4317da5e0f17431d9613a34efaf3d04d discord.Intents.guilds:1 of +msgid "Whether guild related events are enabled." +msgstr "" + +#: ../../docstring 127132d3c13c416cab6465e43870b9df +#: 1844e42444c64ebfa6f6a05f49c3c034 1a8d1483207c4ba4bd66f376500bcfdd +#: 2393f9340ef242d09a27b53fbae1d540 327cb39cf5d942c6ac5c5e9cd44b08ba +#: 32d6ac82923b4f548a71c551421c87a9 37c77df003a04768b88e759cd73963b1 +#: 3801b1bd516a4c47a073514517ca50d4 4a9af8630afc4c228384619fc5928a2c +#: 5ff0cc64d2464f138b63bd5bce62b0bd 6cf9973c14134f4ab3888b55623e7e55 +#: 75d1d5d26fee4f4db53f9e29a6dd8e3a 77c6b6236e1347e2b15712d37046f7b6 +#: 80ed196772fb4d43802c8a0c5f60267e 8795d49ebb62417ebcdf2989b8df1d3d +#: 8d17e0018cf346369e05f5ed41961c83 9a80a6772ccd47a8a9d29b9ff6ee2d7d +#: 9e703e4c3f854459b513a5973115356b be05d4647638496a85bf45edbffe3e8e +#: d501618e47324c1793bbde3bf9ca861b +#: discord.Intents.auto_moderation_configuration:3 +#: discord.Intents.auto_moderation_execution:3 discord.Intents.dm_messages:5 +#: discord.Intents.dm_polls:5 discord.Intents.dm_reactions:5 +#: discord.Intents.dm_typing:5 discord.Intents.emojis_and_stickers:5 +#: discord.Intents.guild_messages:5 discord.Intents.guild_polls:5 +#: discord.Intents.guild_reactions:5 discord.Intents.guild_typing:5 +#: discord.Intents.guilds:3 discord.Intents.integrations:3 +#: discord.Intents.invites:3 discord.Intents.members:3 +#: discord.Intents.messages:5 discord.Intents.moderation:3 +#: discord.Intents.polls:5 discord.Intents.presences:3 +#: discord.Intents.reactions:5 discord.Intents.scheduled_events:3 +#: discord.Intents.typing:5 discord.Intents.voice_states:3 +#: discord.Intents.webhooks:3 ebc4a3f5e91648288893a4a8c8f0df3c +#: f1b1d51dfc7e4692a37d5bca93905b4d f2d60034b58848f5b50f72b0fe7480da +#: f99607be5f7d4810a8759fd4e459a36b of +msgid "This corresponds to the following events:" +msgstr "" + +#: ../../docstring 5994272e340e4811a58be304b6c96914 discord.Intents.guilds:5 of +msgid ":func:`on_guild_join`" +msgstr "" + +#: ../../docstring 4f6f211fa5e34b2baa6b5b3b96117d98 discord.Intents.guilds:6 of +msgid ":func:`on_guild_remove`" +msgstr "" + +#: ../../docstring 21aa0e482ecf4ee59530701a0567293b discord.Intents.guilds:7 of +msgid ":func:`on_guild_available`" +msgstr "" + +#: ../../docstring 749fda92dd054dceb10ab766b07c8a67 discord.Intents.guilds:8 of +msgid ":func:`on_guild_unavailable`" +msgstr "" + +#: ../../docstring 12c9331353c74f5e8a0ec6e7bba5f57e discord.Intents.guilds:9 of +msgid ":func:`on_guild_channel_update`" +msgstr "" + +#: ../../docstring 5a72e2a4cb204f05b685878b664e2513 discord.Intents.guilds:10 +#: of +msgid ":func:`on_guild_channel_create`" +msgstr "" + +#: ../../docstring 87516bfe56bb4d26bc954380fe7086b5 discord.Intents.guilds:11 +#: of +msgid ":func:`on_guild_channel_delete`" +msgstr "" + +#: ../../docstring 822458acade14d058d900c80c5e970f1 discord.Intents.guilds:12 +#: of +msgid ":func:`on_guild_channel_pins_update`" +msgstr "" + +#: ../../docstring 30ce97bdd3094300a532b98ec1cf3943 +#: 31267a3f10444da2957257d6241062ac 335c852a9e4240d680003e46d01a9eb7 +#: 3d3cd245adcd4796a84d8cd0f0748f62 50006f2a61b848848d0dff60895afc77 +#: 516dddd73b2b476b82835e700c169f71 529dd704424742a38b07f200180a2068 +#: 64ea6e41a88c47cba252c5bd01944e1c 7723e1b62423446184c4541de3f89248 +#: 7945f47d88904d9a834c708ec69ca085 b1141125c5b647c18492031a0447fb6d +#: b7a36d6a3daa4dd582d6ae4a5dee5f3a cfe6c3251c0f4e13a904e56454fbaa4a +#: d6181ea2e5ab4d45aeabb348df9f2c88 deaad94c71c94871817abb4286d2bcef +#: discord.Intents.dm_messages:13 discord.Intents.dm_polls:12 +#: discord.Intents.dm_reactions:14 discord.Intents.emojis_and_stickers:10 +#: discord.Intents.guild_messages:13 discord.Intents.guild_polls:12 +#: discord.Intents.guild_reactions:14 discord.Intents.guilds:14 +#: discord.Intents.members:11 discord.Intents.messages:13 +#: discord.Intents.polls:12 discord.Intents.presences:7 +#: discord.Intents.reactions:14 discord.Intents.scheduled_events:13 +#: discord.Intents.voice_states:7 of +msgid "" +"This also corresponds to the following attributes and classes in terms of" +" cache:" +msgstr "" + +#: ../../docstring bcc55c3d9b6c4f5588f5942e502740bb discord.Intents.guilds:16 +#: of +msgid ":attr:`Client.guilds`" +msgstr "" + +#: ../../docstring 224c1c98fc864d659f37dd53852f655e discord.Intents.guilds:17 +#: of +msgid ":class:`Guild` and all its attributes." +msgstr "" + +#: ../../docstring 6fb8f356c9d54a4b946f3ab6c0e55be7 discord.Intents.guilds:18 +#: of +msgid ":meth:`Client.get_channel`" +msgstr "" + +#: ../../docstring 3b802410fa96485eb5c6e69cd900a140 discord.Intents.guilds:19 +#: of +msgid ":meth:`Client.get_all_channels`" +msgstr "" + +#: ../../docstring 62f55e05719246a6ba9751ebde882853 discord.Intents.guilds:21 +#: of +msgid "" +"It is highly advisable to leave this intent enabled for your bot to " +"function." +msgstr "" + +#: ../../docstring 929eb7b755c8449aa42f4809421f88b7 discord.Intents.members:1 +#: of +msgid "Whether guild member related events are enabled." +msgstr "" + +#: ../../docstring 945d37e662c44c5bafc5590ec51d3b0f discord.Intents.members:5 +#: of +msgid ":func:`on_member_join`" +msgstr "" + +#: ../../docstring 94a083f6dfb8486e86bb602aa7055864 discord.Intents.members:6 +#: of +msgid ":func:`on_member_remove`" +msgstr "" + +#: ../../docstring 66c04c9b42cd4898826123a33e6294ff discord.Intents.members:7 +#: of +msgid ":func:`on_raw_member_remove`" +msgstr "" + +#: ../../docstring discord.Intents.members:8 e7c5954e807044c6a8ea63f654f621dd +#: of +msgid ":func:`on_member_update`" +msgstr "" + +#: ../../docstring d63e13ef0e504d3382313195162d173d discord.Intents.members:9 +#: of +msgid ":func:`on_user_update`" +msgstr "" + +#: ../../docstring 5795f8d2b996423d95f49c54c37d982c discord.Intents.members:13 +#: of +msgid ":meth:`Client.get_all_members`" +msgstr "" + +#: ../../docstring discord.Intents.members:14 e446aa42f0504d1eb28545466ab582fd +#: of +msgid ":meth:`Client.get_user`" +msgstr "" + +#: ../../docstring 7373c06233d14be283be68f6b35676a9 discord.Intents.members:15 +#: of +msgid ":meth:`Guild.chunk`" +msgstr "" + +#: ../../docstring ac42d9b201b9473da4865698cd0d6cab discord.Intents.members:16 +#: of +msgid ":meth:`Guild.fetch_members`" +msgstr "" + +#: ../../docstring 88280431785b4b0f8f9fe84b6f786481 discord.Intents.members:17 +#: of +msgid ":meth:`Guild.get_member`" +msgstr "" + +#: ../../docstring 856253b1096a45069e1dd86c50d28aaa discord.Intents.members:18 +#: of +msgid ":attr:`Guild.members`" +msgstr "" + +#: ../../docstring 96f3dd561afb42c8a00186592acdcdfa discord.Intents.members:19 +#: of +msgid ":attr:`Member.roles`" +msgstr "" + +#: ../../docstring 7262ba98a42b4f4eb2ad956a6e6e3f21 discord.Intents.members:20 +#: of +msgid ":attr:`Member.nick`" +msgstr "" + +#: ../../docstring 4d7d7d40e4b64bf289fcc60255b8964c discord.Intents.members:21 +#: of +msgid ":attr:`Member.premium_since`" +msgstr "" + +#: ../../docstring c6dd03104de443e89f184674cad8d2a5 discord.Intents.members:22 +#: of +msgid ":attr:`User.name`" +msgstr "" + +#: ../../docstring 7704cc926f6946a18c346af78390017a discord.Intents.members:23 +#: of +msgid ":attr:`User.avatar`" +msgstr "" + +#: ../../docstring 28fc4b6096ff4c4cbf2077cdfae3038f discord.Intents.members:24 +#: of +msgid ":attr:`User.discriminator`" +msgstr "" + +#: ../../docstring discord.Intents.members:26 e63bbf16bf3a47a9a2374fbb8644bdec +#: of +msgid "" +"For more information go to the :ref:`member intent documentation " +"`." +msgstr "" + +#: ../../docstring 5f0bed46e9fd446fa11f769c2e18134d +#: a144ff86320b4e09b37cff189bb3174c discord.Intents.members:30 +#: discord.Intents.presences:17 of +msgid "" +"This intent is privileged, meaning that bots in over 100 guilds that " +"require this intent would need to request this intent on the Developer " +"Portal." +msgstr "" + +#: ../../docstring d35c3b99080f41138c08fc05e66820af discord.Intents.bans:1 of +msgid "Alias of :attr:`.moderation`." +msgstr "" + +#: ../../docstring 27a0c56e0c79468d9c88cabbab69f321 +#: bc8f8e325af24de382cf5ea080f4c8ef discord.Intents.bans:3 +#: discord.Intents.emojis:3 of +msgid "Changed to an alias." +msgstr "" + +#: ../../docstring discord.Intents.moderation:1 +#: e7f8be38789347f391726ae88785a429 of +msgid "Whether guild moderation related events are enabled." +msgstr "" + +#: ../../docstring discord.Intents.moderation:5 +#: f00b53ceb1774c9eae7512ea10e6c594 of +msgid ":func:`on_audit_log_entry`" +msgstr "" + +#: ../../docstring b0c75f440f3549548ba08708aec21592 +#: discord.Intents.moderation:6 of +msgid ":func:`on_member_ban`" +msgstr "" + +#: ../../docstring beac11c05c944db4a70e68a2f4ccb823 +#: discord.Intents.moderation:7 of +msgid ":func:`on_member_unban`" +msgstr "" + +#: ../../docstring 20164eb2064e41b7b194bcf624744b12 +#: 49e0cca02c174ab0b3af1016f00bb680 a9a3db3038a7485ca7c791f1c7782ae9 +#: b9863a675003490b89043c31dbf28eff bbcdb3c184584751b4fce179030f686b +#: c8d84c681fd142bf88e6ff7b096647b2 discord.Intents.dm_typing:9 +#: discord.Intents.guild_typing:9 discord.Intents.integrations:10 +#: discord.Intents.invites:8 discord.Intents.moderation:9 +#: discord.Intents.typing:9 discord.Intents.webhooks:7 +#: f29f9b186eba40a0910997fe79f8b7a4 of +msgid "" +"This does not correspond to any attributes or classes in the library in " +"terms of cache." +msgstr "" + +#: ../../docstring bb39e3f3663b46b19a266c33245dda8d discord.Intents.emojis:1 of +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "" + +#: ../../docstring c5af4974eb774193a9161920c2cdee53 +#: discord.Intents.emojis_and_stickers:1 of +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "" + +#: ../../docstring c8412c187de54fc88852594c731c4e4d +#: discord.Intents.emojis_and_stickers:7 of +msgid ":func:`on_guild_emojis_update`" +msgstr "" + +#: ../../docstring c087251564794aa9b94183fdedbbaa6f +#: discord.Intents.emojis_and_stickers:8 of +msgid ":func:`on_guild_stickers_update`" +msgstr "" + +#: ../../docstring 8d522dd4ec834c5e834a8a3a1d82637a +#: discord.Intents.emojis_and_stickers:12 of +msgid ":class:`Emoji`" +msgstr "" + +#: ../../docstring 310d885187c7483da2962fd12d7a1274 +#: discord.Intents.emojis_and_stickers:13 of +msgid ":class:`GuildSticker`" +msgstr "" + +#: ../../docstring 20edfaefd22440da84fddf28d0239074 +#: discord.Intents.emojis_and_stickers:14 of +msgid ":meth:`Client.get_emoji`" +msgstr "" + +#: ../../docstring cd87fc16dde641848e06cdc3745dd7ec +#: discord.Intents.emojis_and_stickers:15 of +msgid ":meth:`Client.get_sticker`" +msgstr "" + +#: ../../docstring 376ebab11fed410fa9ee648eadadd06b +#: discord.Intents.emojis_and_stickers:16 of +msgid ":meth:`Client.emojis`" +msgstr "" + +#: ../../docstring da53d34b3cb74143990b6155914f84c5 +#: discord.Intents.emojis_and_stickers:17 of +msgid ":meth:`Client.stickers`" +msgstr "" + +#: ../../docstring 9f06e0f5a8254b18b243c717cede85e3 +#: discord.Intents.emojis_and_stickers:18 of +msgid ":attr:`Guild.emojis`" +msgstr "" + +#: ../../docstring discord.Intents.emojis_and_stickers:19 +#: e94aedb0a92a4d2eb749430c9b904893 of +msgid ":attr:`Guild.stickers`" +msgstr "" + +#: ../../docstring 82cc9e2c3bf94471a6afe7055f1931ba +#: discord.Intents.integrations:1 of +msgid "Whether guild integration related events are enabled." +msgstr "" + +#: ../../docstring 074ea97303b1430abbb66ffdecfa5a06 +#: discord.Intents.integrations:5 of +msgid ":func:`on_guild_integrations_update`" +msgstr "" + +#: ../../docstring db8b10abf30e4f338ba3321c01b0d8d0 +#: discord.Intents.integrations:6 of +msgid ":func:`on_integration_create`" +msgstr "" + +#: ../../docstring 8a4c01932a9047bfb9bdacda59b4d202 +#: discord.Intents.integrations:7 of +msgid ":func:`on_integration_update`" +msgstr "" + +#: ../../docstring 15163e886024445285a54eabe211de99 +#: discord.Intents.integrations:8 of +msgid ":func:`on_raw_integration_delete`" +msgstr "" + +#: ../../docstring b91eb60353b748fbafd2ab4d468854e7 discord.Intents.webhooks:1 +#: of +msgid "Whether guild webhook related events are enabled." +msgstr "" + +#: ../../docstring 219b90d43ecd4cdb93842cde0ca7ad8b discord.Intents.webhooks:5 +#: of +msgid ":func:`on_webhooks_update`" +msgstr "" + +#: ../../docstring a000154afa16498980313a5774ee7da9 discord.Intents.invites:1 +#: of +msgid "Whether guild invite related events are enabled." +msgstr "" + +#: ../../docstring discord.Intents.invites:5 e21ae498f88e4d79beda0758f132251c +#: of +msgid ":func:`on_invite_create`" +msgstr "" + +#: ../../docstring 16e7fe795f964391a3f3c86dd75b9d96 discord.Intents.invites:6 +#: of +msgid ":func:`on_invite_delete`" +msgstr "" + +#: ../../docstring discord.Intents.voice_states:1 +#: e40caa1c65ad491e9d112f97b21e9d8e of +msgid "Whether guild voice state related events are enabled." +msgstr "" + +#: ../../docstring 25fed9eca43349af9467668ab9bd21d4 +#: discord.Intents.voice_states:5 of +msgid ":func:`on_voice_state_update`" +msgstr "" + +#: ../../docstring d13a218f2ccd4c72853d83e4a9c76975 +#: discord.Intents.voice_states:9 of +msgid ":attr:`VoiceChannel.members`" +msgstr "" + +#: ../../docstring 010907bf48744b41ba2066fa7971db0c +#: discord.Intents.voice_states:10 of +msgid ":attr:`VoiceChannel.voice_states`" +msgstr "" + +#: ../../docstring 5847c603abd6407594c201013dd8e965 +#: discord.Intents.voice_states:11 of +msgid ":attr:`StageChannel.members`" +msgstr "" + +#: ../../docstring 03062dcaae8b4486b35fef28bee77b23 +#: discord.Intents.voice_states:12 of +msgid ":attr:`StageChannel.speakers`" +msgstr "" + +#: ../../docstring 5eb68043f742471c8924c38f23130e9b +#: discord.Intents.voice_states:13 of +msgid ":attr:`StageChannel.listeners`" +msgstr "" + +#: ../../docstring 8f5eb7e3b8b9465ead3f169d2049572c +#: discord.Intents.voice_states:14 of +msgid ":attr:`StageChannel.moderators`" +msgstr "" + +#: ../../docstring 01d00b56e1734ae2bbc6695d1ec8963f +#: discord.Intents.voice_states:15 of +msgid ":attr:`StageChannel.voice_states`" +msgstr "" + +#: ../../docstring 8623195a820b416d9a6130d1bbe427b7 +#: discord.Intents.voice_states:16 of +msgid ":attr:`Member.voice`" +msgstr "" + +#: ../../docstring 437a20aa62fc4ddfb41a12901a70cd78 +#: discord.Intents.voice_states:20 of +msgid "This intent is required to connect to voice." +msgstr "" + +#: ../../docstring discord.Intents.presences:1 fbc8359014d746b0a17b72ed18b39f57 +#: of +msgid "Whether guild presence related events are enabled." +msgstr "" + +#: ../../docstring 44e82bb60e6248308eda2e1b8038ab7c discord.Intents.presences:5 +#: of +msgid ":func:`on_presence_update`" +msgstr "" + +#: ../../docstring 47402cd7574849d5bf6fe573f4bd9555 discord.Intents.presences:9 +#: of +msgid ":attr:`Member.activities`" +msgstr "" + +#: ../../docstring 0331fd7b353f4017ae99fad38700eaa3 +#: discord.Intents.presences:10 of +msgid ":attr:`Member.status`" +msgstr "" + +#: ../../docstring 941c4033f3b146b3b68cd484390ed0ae +#: discord.Intents.presences:11 of +msgid ":attr:`Member.raw_status`" +msgstr "" + +#: ../../docstring c315eb5d04dc45fb80aecee083152af7 +#: discord.Intents.presences:13 of +msgid "" +"For more information go to the :ref:`presence intent documentation " +"`." +msgstr "" + +#: ../../docstring d1e7f97822e24e70a925b90529c3efba discord.Intents.messages:1 +#: of +msgid "Whether guild and direct message related events are enabled." +msgstr "" + +#: ../../docstring 6386e552b53743b79119a4e475d56ce8 discord.Intents.messages:3 +#: of +msgid "" +"This is a shortcut to set or get both :attr:`guild_messages` and " +":attr:`dm_messages`." +msgstr "" + +#: ../../docstring a5a4c34d434f48bdac4424fafb6ec8e8 discord.Intents.messages:7 +#: of +msgid ":func:`on_message` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 05ddab36bc384b5284e911515e17751d discord.Intents.messages:8 +#: of +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 283766bb3cf4476fb2a99046a5e96388 discord.Intents.messages:9 +#: of +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr "" + +#: ../../docstring discord.Intents.messages:10 e60854278414426b82501fcd8b4824d2 +#: of +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 280b2627330241538608b590b0a27fda discord.Intents.messages:11 +#: of +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 131678d976fa4452a3c6274c4a114015 +#: 3a20c463f48c465d92f7b983f9414c0f 4cc0d56ddc4341339bbabe226cfff4ea +#: 6f70df5e3a324290889232d0395e7f0f discord.Intents.dm_messages:15 +#: discord.Intents.guild_messages:15 discord.Intents.messages:15 +#: discord.message.PartialMessage.end_poll:8 +#: discord.message.PartialMessage.fetch:6 discord.poll.Poll.end:5 of +msgid ":class:`Message`" +msgstr "" + +#: ../../docstring b7094fdc4fba47d2a0e577bae573534a discord.Intents.messages:16 +#: of +msgid ":attr:`Client.cached_messages`" +msgstr "" + +#: ../../docstring dbd4d13864b74d0caf335c06d31ae082 discord.Intents.messages:17 +#: of +msgid ":meth:`Client.get_message`" +msgstr "" + +#: ../../docstring be2c7bbc837145fd9d0669915b819a4f discord.Intents.messages:18 +#: of +msgid ":attr:`Client.polls`" +msgstr "" + +#: ../../docstring 2574800ac9db4d8ea2a5340a9d9e27dc discord.Intents.messages:19 +#: of +msgid ":meth:`Client.get_poll`" +msgstr "" + +#: ../../docstring 3bdf1873d5a74fbea1e77e2f6675beba +#: discord.Intents.dm_messages:21 discord.Intents.guild_messages:21 +#: discord.Intents.messages:21 f674049e077048a98e3783c5fb184729 +#: fc0283f014bc4a5b9324a679e0833a98 of +msgid "" +"Note that due to an implicit relationship this also corresponds to the " +"following events:" +msgstr "" + +#: ../../docstring 4f0824eaddd64a2a81888d5b807b6347 discord.Intents.messages:23 +#: discord.Intents.reactions:7 ffd561d996284ac3a46639791d4fc26e of +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 7ef5737b80aa46ff8b63044455a72240 +#: bc06530511074b05bd24b74d33bc9ff1 discord.Intents.messages:24 +#: discord.Intents.reactions:8 of +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 394bfa686d5e4cddbfeb4a5eac2ae4ae +#: 642521a6775f42d986de623796667074 discord.Intents.messages:25 +#: discord.Intents.reactions:9 of +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 113a885ba72a479f9816cf312e9508e8 discord.Intents.messages:29 +#: of +msgid "" +":attr:`message_content` is required to receive the actual content of " +"guild messages." +msgstr "" + +#: ../../docstring 58d595eb07f64b7d88b031c98848e443 +#: discord.Intents.guild_messages:1 of +msgid "Whether guild message related events are enabled." +msgstr "" + +#: ../../docstring 76c0df55b55e4e35bcfafdeb2894f87b +#: discord.Intents.guild_messages:3 of +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "" + +#: ../../docstring 3ed6f2cf4e5346d792100f12dc292a14 +#: discord.Intents.guild_messages:7 of +msgid ":func:`on_message` (only for guilds)" +msgstr "" + +#: ../../docstring 2d87f5c419fd40eda73ddb7c8eadc4a3 +#: discord.Intents.guild_messages:8 of +msgid ":func:`on_message_edit` (only for guilds)" +msgstr "" + +#: ../../docstring 6a5683151a954cef8e456f31a8f4b60c +#: discord.Intents.guild_messages:9 of +msgid ":func:`on_message_delete` (only for guilds)" +msgstr "" + +#: ../../docstring 278599b279eb41888c8afe2a640c9e3e +#: discord.Intents.guild_messages:10 of +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr "" + +#: ../../docstring 3edb50195c384b008f95a101f0a67a93 +#: discord.Intents.guild_messages:11 of +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr "" + +#: ../../docstring discord.Intents.guild_messages:16 +#: fed192185bb04b4287239cad91879f78 of +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr "" + +#: ../../docstring 36841d614dfe42c187467691f00ca877 +#: discord.Intents.guild_messages:17 of +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr "" + +#: ../../docstring db5907ffd40d4722820e9b43477aab5c +#: discord.Intents.guild_messages:18 of +msgid ":attr:`Client.polls` (only for guilds)" +msgstr "" + +#: ../../docstring 9ff157fcf1ca48ee99c05bfbb7794d19 +#: discord.Intents.guild_messages:19 of +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr "" + +#: ../../docstring 0f9dd91ef1a649588b0c988cd620e899 +#: c8df715cc6f3485fb0be9c491e646337 discord.Intents.guild_messages:23 +#: discord.Intents.guild_reactions:7 of +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr "" + +#: ../../docstring 1c5ff802260840e5aaa934513f0f0779 +#: b51729b9d73e4397838fa22d56fdb613 discord.Intents.guild_messages:24 +#: discord.Intents.guild_reactions:8 of +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr "" + +#: ../../docstring 8c1165c7fa7941e59b5a7f5666dcd44b +#: discord.Intents.guild_messages:25 discord.Intents.guild_reactions:9 +#: f1ea6c632a6c4141aba136ccb278bd69 of +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr "" + +#: ../../docstring a64ea14a09974cb1b16bcc4f867c2d66 +#: discord.Intents.guild_messages:27 of +msgid "" +"Without the :attr:`message_content` intent enabled, the following fields " +"are either an empty string or empty array:" +msgstr "" + +#: ../../docstring a137ba63f3c846b3bd5d57a7bf96e78c +#: d177535ebad849a4baae6d17fa3e786b discord.Intents.guild_messages:30 +#: discord.Intents.message_content:5 of +msgid ":attr:`Message.content`" +msgstr "" + +#: ../../docstring 7c7118245dc842a49b2ad81bc4ba0ebb +#: af61766b09a94aa8a75595f3be33a449 discord.Intents.guild_messages:31 +#: discord.Intents.message_content:6 of +msgid ":attr:`Message.embeds`" +msgstr "" + +#: ../../docstring 058da375316a46a0af5a9c3109b1f253 +#: discord.Intents.guild_messages:32 discord.Intents.message_content:7 +#: ebb75125811444e4a46f7aef8bbb23b8 of +msgid ":attr:`Message.attachments`" +msgstr "" + +#: ../../docstring 323a68adf77442f680a96f59bea295e3 +#: 9dc7fe52d32942078f6af7ec79f3d42b discord.Intents.guild_messages:33 +#: discord.Intents.message_content:8 of +msgid ":attr:`Message.components`" +msgstr "" + +#: ../../docstring 4ad7140b499a4cb89a813065e5957e41 +#: bb8eef7fe7034efc99a7fdba061ec310 discord.Intents.guild_messages:34 +#: discord.Intents.message_content:9 of +msgid ":attr:`Message.poll`" +msgstr "" + +#: ../../docstring 39f1204df2e74395a1eb386b27a8f22b +#: discord.Intents.guild_messages:36 of +msgid "" +"For more information go to the :ref:`message content intent documentation" +" `." +msgstr "" + +#: ../../docstring c78c215a6aae4169a1f9a3c1724c1c35 +#: discord.Intents.dm_messages:1 of +msgid "Whether direct message related events are enabled." +msgstr "" + +#: ../../docstring 545f70f28af845d895fab795a8db798e +#: discord.Intents.dm_messages:3 of +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "" + +#: ../../docstring 49535423a41f4e07bbeef03b8a73feae +#: discord.Intents.dm_messages:7 of +msgid ":func:`on_message` (only for DMs)" +msgstr "" + +#: ../../docstring 4fbb198aa9eb4036b38997263f645a36 +#: discord.Intents.dm_messages:8 of +msgid ":func:`on_message_edit` (only for DMs)" +msgstr "" + +#: ../../docstring c052558aa6fd499d961a30ac05b3701f +#: discord.Intents.dm_messages:9 of +msgid ":func:`on_message_delete` (only for DMs)" +msgstr "" + +#: ../../docstring 5f6aed68f8e2437eab3b43825ba7351b +#: discord.Intents.dm_messages:10 of +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr "" + +#: ../../docstring bfff63df875f474ab2731d3523fda430 +#: discord.Intents.dm_messages:11 of +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr "" + +#: ../../docstring 30afb4a67fe94b679534c913638a5e7a +#: discord.Intents.dm_messages:16 of +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr "" + +#: ../../docstring 26d6c2d45f2040049b45dec2d0a92c72 +#: discord.Intents.dm_messages:17 of +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr "" + +#: ../../docstring b7c04389bf3f499a907e6aac732891be +#: discord.Intents.dm_messages:18 of +msgid ":attr:`Client.polls` (only for DMs)" +msgstr "" + +#: ../../docstring 978fd4fa51e54ed1b278b30a947cb3ef +#: discord.Intents.dm_messages:19 of +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr "" + +#: ../../docstring 589df8506c3445e5bb27a3f7c0e1eb13 +#: c93500c986124c1392636208ff6c21bf discord.Intents.dm_messages:23 +#: discord.Intents.dm_reactions:7 of +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr "" + +#: ../../docstring 6b9d55f3802a435184fcb981cea63230 +#: discord.Intents.dm_messages:24 discord.Intents.dm_reactions:8 +#: e84e9e724cad49af88471537ded96255 of +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr "" + +#: ../../docstring 7551821d00e94b5783620a188bf47757 +#: 85eb129e0b244960ab86b6367da8d207 discord.Intents.dm_messages:25 +#: discord.Intents.dm_reactions:9 of +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr "" + +#: ../../docstring 929be1e90b7c4127b4b1a4b1f5227e67 discord.Intents.reactions:1 +#: of +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "" + +#: ../../docstring cbf06a86328b41278e14751624f52288 discord.Intents.reactions:3 +#: of +msgid "" +"This is a shortcut to set or get both :attr:`guild_reactions` and " +":attr:`dm_reactions`." +msgstr "" + +#: ../../docstring b520e34dccd94a90921124ddda898f9c +#: discord.Intents.reactions:10 of +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr "" + +#: ../../docstring d1960985d4cd4c66a2bde602f35b5a51 +#: discord.Intents.reactions:11 of +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 4cd08c85fad54d61a5544a683a991117 +#: discord.Intents.reactions:12 of +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 2e02a28d4a2941f78808f39deab7fb97 +#: discord.Intents.reactions:16 of +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr "" + +#: ../../docstring cb03c57ff0ee486e98028d316ac7b15a +#: discord.Intents.guild_reactions:1 of +msgid "Whether guild message reaction related events are enabled." +msgstr "" + +#: ../../docstring d10593579af2443baef608bbeb6f2545 +#: discord.Intents.guild_reactions:3 of +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "" + +#: ../../docstring 0df07d2a7df544c48d8f96dc8113264e +#: discord.Intents.guild_reactions:10 of +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr "" + +#: ../../docstring discord.Intents.guild_reactions:11 +#: ebc3e0c3b4784460ac493e199affb0fc of +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr "" + +#: ../../docstring 306a280e3a2e4b30adb4f319eeda6048 +#: discord.Intents.guild_reactions:12 of +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr "" + +#: ../../docstring 57c1129e4dc44018b3a3c668aef10c29 +#: discord.Intents.guild_reactions:16 of +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr "" + +#: ../../docstring 2538837a36a94c71b5a8d6da0d6b2433 +#: discord.Intents.dm_reactions:1 of +msgid "Whether direct message reaction related events are enabled." +msgstr "" + +#: ../../docstring discord.Intents.dm_reactions:3 +#: e8b13dc4be62458eac269ecaa10d11f8 of +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "" + +#: ../../docstring discord.Intents.dm_reactions:10 +#: f7472ddcc3b849d1b46cba92ebcafa33 of +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr "" + +#: ../../docstring 77b2519afcc2442cb4f6d12fa82775b2 +#: discord.Intents.dm_reactions:11 of +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr "" + +#: ../../docstring 4fd01a8e43c14ab09b21a1bed73cdddb +#: discord.Intents.dm_reactions:12 of +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr "" + +#: ../../docstring 6c0795ef9c794e53b8975d533ed6ce7a +#: discord.Intents.dm_reactions:16 of +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr "" + +#: ../../docstring 8d8207f6f69441fba7d0f03fa6f9ff53 +#: 9ff7cfd43aa44d0193722bec92998fd9 discord.Intents.dm_typing:1 +#: discord.Intents.guild_typing:1 discord.Intents.typing:1 +#: fb5b74711cf94bc8800f3998b67e5970 of +msgid "Whether guild and direct message typing related events are enabled." +msgstr "" + +#: ../../docstring b898e59ee7fc4342baeedbd1b73f4b33 discord.Intents.typing:3 of +msgid "" +"This is a shortcut to set or get both :attr:`guild_typing` and " +":attr:`dm_typing`." +msgstr "" + +#: ../../docstring discord.Intents.typing:7 e88904e1ceb741c38dff4b489f9992d4 of +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr "" + +#: ../../docstring discord.Intents.guild_typing:3 +#: e1722de30ef1478d936b8eccf5f35690 of +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "" + +#: ../../docstring 5f100734e1944fdb982c0fb6c5670427 +#: discord.Intents.guild_typing:7 of +msgid ":func:`on_typing` (only for guilds)" +msgstr "" + +#: ../../docstring 7c61fa008d294a99be7d718feddada6d discord.Intents.dm_typing:3 +#: of +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "" + +#: ../../docstring c578de896535489da4db6a189776729e discord.Intents.dm_typing:7 +#: of +msgid ":func:`on_typing` (only for DMs)" +msgstr "" + +#: ../../docstring cbad205f564c47e592d5884c800312f8 +#: discord.Intents.message_content:1 of +msgid "Whether the bot will receive message content in guild messages." +msgstr "" + +#: ../../docstring 3e92f261dce94ddbb7620f9de2097dac +#: discord.Intents.message_content:3 of +msgid "This corresponds to the following attributes:" +msgstr "" + +#: ../../docstring 44b2007f97a2416092e57c8f2aba59fc +#: discord.Intents.message_content:11 of +msgid "" +"These attributes will still be available for messages received from " +"interactions, the bot's own messages, messages the bot was mentioned in, " +"and DMs." +msgstr "" + +#: ../../docstring 51ab78245c344515b0f1125e605a15c4 +#: discord.Intents.message_content:18 of +msgid "" +"As of September 2022 using this intent requires opting in explicitly via " +"the Developer Portal to receive the actual content of the guild messages." +" This intent is privileged, meaning that bots in over 100 guilds that " +"require this intent would need to request this intent on the Developer " +"Portal. See https://support-dev.discord.com/hc/en-" +"us/articles/4404772028055 for more information." +msgstr "" + +#: ../../docstring bef96b66a0f244b5a38f7241d4fab76c +#: discord.Intents.scheduled_events:1 of +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "" + +#: ../../docstring bc9ab281c7634eb5903762e2016e824c +#: discord.Intents.scheduled_events:5 of +msgid ":func:`on_scheduled_event_create`" +msgstr "" + +#: ../../docstring 1424de2889d44cd08ee76f3e5ec71212 +#: discord.Intents.scheduled_events:6 of +msgid ":func:`on_scheduled_event_update`" +msgstr "" + +#: ../../docstring de2b0468d2bc46f5b7fa230073ff053a +#: discord.Intents.scheduled_events:7 of +msgid ":func:`on_scheduled_event_delete`" +msgstr "" + +#: ../../docstring 06db204669404231b2bbef48f48ac834 +#: discord.Intents.scheduled_events:8 of +msgid ":func:`on_scheduled_event_user_add`" +msgstr "" + +#: ../../docstring 5359210e9b034fb58acda9ecad6f33b9 +#: discord.Intents.scheduled_events:9 of +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr "" + +#: ../../docstring 68dc5c5f11e8478d98811c45c76789d6 +#: discord.Intents.scheduled_events:10 of +msgid ":func:`on_scheduled_event_user_remove`" +msgstr "" + +#: ../../docstring discord.Intents.scheduled_events:11 +#: fb0c541330cd4eb88e186b73cd07a7cc of +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr "" + +#: ../../docstring discord.Intents.scheduled_events:15 +#: ee5536d3feff443e8d0c7257c67d2d54 of +msgid ":class:`ScheduledEvent`" +msgstr "" + +#: ../../docstring 3c14bd88cc6c4ccb8901dfdd0b76e80e +#: discord.Intents.scheduled_events:16 of +msgid ":meth:`Guild.get_scheduled_event`" +msgstr "" + +#: ../../docstring bec3db92d166482db1bba849f1e94291 +#: discord.Intents.auto_moderation_configuration:1 of +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "" + +#: ../../docstring 1ac39f8cf9b4469d8d999661b8c24c74 +#: discord.Intents.auto_moderation_configuration:5 of +msgid ":func:`on_auto_moderation_rule_create`" +msgstr "" + +#: ../../docstring 8ac648368db54bacbec2e2eb40e77113 +#: discord.Intents.auto_moderation_configuration:6 of +msgid ":func:`on_auto_moderation_rule_update`" +msgstr "" + +#: ../../docstring 18b27bf369534e788deddd820a097b47 +#: discord.Intents.auto_moderation_configuration:7 of +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr "" + +#: ../../docstring 475351bf214c4885ad631c85594f4a8e +#: discord.Intents.auto_moderation_execution:1 of +msgid "Whether guild auto moderation execution events are enabled." +msgstr "" + +#: ../../docstring 4c983eebeaf4485db5c3ddebcbf0efd2 +#: discord.Intents.auto_moderation_execution:5 of +msgid ":func:`on_auto_moderation_action_execution`" +msgstr "" + +#: ../../docstring discord.Intents.guild_polls:1 +#: f95bad9f8617427192960ee5d7d3e351 of +msgid "Whether poll-related events in guilds are enabled." +msgstr "" + +#: ../../docstring 5d507f28ee044395a8d1ae3be6ceacf3 +#: discord.Intents.guild_polls:3 of +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "" + +#: ../../docstring 5a045fdc9fdc485d83c2322409038d31 +#: discord.Intents.guild_polls:7 of +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr "" + +#: ../../docstring 304c6596289646aa8a1095805ef028f0 +#: discord.Intents.guild_polls:8 of +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr "" + +#: ../../docstring 05e8e2280e21407a918e5f02c960d2dd +#: discord.Intents.guild_polls:9 of +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr "" + +#: ../../docstring 00dca805aaad44d4bfafd78fe271c325 +#: discord.Intents.guild_polls:10 of +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr "" + +#: ../../docstring 6cb33f052b444dc4a60d14bdb8d808bd +#: discord.Intents.guild_polls:14 of +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr "" + +#: ../../docstring 79059d2bf47f438989117431cfe9b020 +#: discord.Intents.guild_polls:15 of +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr "" + +#: ../../docstring 118d37e2ee15448e94dfc019ade6914d discord.Intents.dm_polls:1 +#: of +msgid "Whether poll-related events in direct messages are enabled." +msgstr "" + +#: ../../docstring 35d0eccff7ce4576b46e08fe19302360 discord.Intents.dm_polls:3 +#: of +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "" + +#: ../../docstring 723ad2dc12714853bc08f2a76e74e345 discord.Intents.dm_polls:7 +#: of +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr "" + +#: ../../docstring 3382fccc94ce4299a51acd0d773ab5ef discord.Intents.dm_polls:8 +#: of +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr "" + +#: ../../docstring 2148babdf16e4f559aecaf0922d94215 discord.Intents.dm_polls:9 +#: of +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr "" + +#: ../../docstring 8586c19bb54b43a082fc6299120ebd4d discord.Intents.dm_polls:10 +#: of +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr "" + +#: ../../docstring 50969bfe9ded4c00920f06d8c016a91f discord.Intents.dm_polls:14 +#: of +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr "" + +#: ../../docstring a86842a665c548bda7a307438926efa7 discord.Intents.dm_polls:15 +#: of +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr "" + +#: ../../docstring 1a141b9e47d24aa88c14c0347e995fc4 discord.Intents.polls:1 of +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "" + +#: ../../docstring 8f82d792166e4b44a58ce77352695e92 discord.Intents.polls:3 of +msgid "" +"This is a shortcut to set or get both :attr:`guild_polls` and " +":attr:`dm_polls`." +msgstr "" + +#: ../../docstring b6062d500cd5462585ee87b16a9b27b7 discord.Intents.polls:7 of +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr "" + +#: ../../docstring discord.Intents.polls:8 e166efad26614235a9e0fa97638be809 of +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 4c2d0558315b48aca6d884f5e1fa6482 discord.Intents.polls:9 of +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr "" + +#: ../../docstring discord.Intents.polls:10 f61aa21b0abf475a80062c2ec1e01c35 of +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr "" + +#: ../../docstring 049eee0a0e6e486e93c18c742946c954 discord.Intents.polls:14 of +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr "" + +#: ../../docstring b745c7b501f8431c9568babd02d6d953 discord.Intents.polls:15 of +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr "" + +#: 84a87c23e08949c7a63adab75f08db4d discord.shard.ShardInfo:1 of +msgid "A class that gives information and control over a specific shard." +msgstr "" + +#: 47d2f7e18fe04d23b294149c6ca63d06 discord.shard.ShardInfo:3 of +msgid "" +"You can retrieve this object via :meth:`AutoShardedClient.get_shard` or " +":attr:`AutoShardedClient.shards`." +msgstr "" + +#: 5f4b433a305d4ecda4f5b1945c565813 discord.shard.ShardInfo:10 of +msgid "The shard ID for this shard." +msgstr "" + +#: 581a25b3efba444eb7ba3ff625adc7af discord.shard.ShardInfo:16 of +msgid "" +"The shard count for this cluster. If this is ``None`` then the bot has " +"not started yet." +msgstr "" + +#: 49c4c30c182d4a029b0c433682a7412d 8162371196bd4d3698a8c759ead84e30 +#: 838cbbf586be4eb48c92fc8e4c675bad c99851f342584595848427fb38375fa3 +#: discord.activity.Activity:16 discord.message.MessageReference:12 +#: discord.message.MessageReference:24 discord.poll.Poll.total_votes:4 +#: discord.shard.ShardInfo:18 of +msgid "Optional[:class:`int`]" +msgstr "" + +#: discord.shard.ShardInfo.is_closed:1 e588f36be137417db4a513b55beb6351 of +msgid "Whether the shard connection is currently closed." +msgstr "" + +#: 58d0f572132547b7a1dbaf2927806124 9aca5fcb17de43ee849174bf0bd5a3f7 +#: discord.permissions.Permissions.is_strict_subset:5 +#: discord.permissions.Permissions.is_strict_superset:5 +#: discord.permissions.Permissions.is_subset:5 +#: discord.permissions.Permissions.is_superset:5 +#: discord.shard.ShardInfo.is_closed:4 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 2d31939098494f0489e8a053303107d7 336386f348c2475b83c479b3376548af +#: 61d3fe2200f04894857f7a6b254fed20 7b6aba613fd1494aa813bfbe67e79186 +#: discord.message.Message.add_reaction:1 +#: discord.message.Message.clear_reaction:1 +#: discord.message.Message.clear_reactions:1 discord.message.Message.delete:1 +#: discord.message.Message.pin:1 discord.message.Message.publish:1 +#: discord.message.Message.remove_reaction:1 discord.message.Message.reply:1 +#: discord.message.Message.unpin:1 discord.message.PartialMessage.edit:1 +#: discord.message.PartialMessage.end_poll:1 +#: discord.message.PartialMessage.fetch:1 discord.shard.ShardInfo.connect:1 +#: discord.shard.ShardInfo.disconnect:1 discord.shard.ShardInfo.reconnect:1 of +msgid "|coro|" +msgstr "" + +#: discord.shard.ShardInfo.disconnect:3 ecf67b0b5fc54349b0e8d8fa3e8357ad of +msgid "" +"Disconnects a shard. When this is called, the shard connection will no " +"longer be open." +msgstr "" + +#: 729b93fac4b6486189b7327d2b1dbbaa discord.shard.ShardInfo.disconnect:6 of +msgid "If the shard is already disconnected this does nothing." +msgstr "" + +#: 2aeb0522710e4223920fd1c621bb6bb9 682dc42cdccd42f3a7f85235164dfb67 +#: 6ab82dd262114586ae1460ec0ef8949f 937a7163bad44cc0b251d6ab47e83b23 +#: discord.embeds.Embed.append_field:9 discord.embeds.Embed.clear_fields:4 +#: discord.embeds.Embed.remove_field:15 discord.message.Message.add_reaction:20 +#: discord.message.Message.clear_reaction:20 +#: discord.message.Message.clear_reactions:11 discord.message.Message.delete:24 +#: discord.message.Message.pin:18 discord.message.Message.publish:14 +#: discord.message.Message.remove_reaction:25 discord.message.Message.unpin:18 +#: discord.permissions.PermissionOverwrite.update:10 +#: discord.permissions.Permissions.update:10 discord.shard.ShardInfo.connect:6 +#: discord.shard.ShardInfo.disconnect:9 discord.shard.ShardInfo.reconnect:6 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 3ca454d9c645490db147a17d1cfcbd0d discord.shard.ShardInfo.reconnect:3 of +msgid "Disconnects and then connects the shard again." +msgstr "" + +#: 4369546ad28f4db7b54d0be7be35146c discord.shard.ShardInfo.connect:3 of +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "" + +#: a1f36fed4af44c01a9019cc4415319a2 discord.ShardInfo.latency:1 of +msgid "" +"Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for " +"this shard." +msgstr "" + +#: 17a313ff1c1c4f18989340eb1c290ed9 discord.shard.ShardInfo.is_ws_ratelimited:1 +#: of +msgid "Whether the websocket is currently rate limited." +msgstr "" + +#: de4084473dcf4a36a6c44ee307905482 discord.shard.ShardInfo.is_ws_ratelimited:3 +#: of +msgid "" +"This can be useful to know when deciding whether you should query members" +" using HTTP or via the gateway. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../api/data_classes.rst:40 e4e4b4653ed64e5bb6d330ca5bee9fe8 +msgid "Message" +msgstr "" + +#: 68de5fcef5f94fbdaf3d75ea7edc3e4d discord.mentions.AllowedMentions:1 of +msgid "A class that represents what mentions are allowed in a message." +msgstr "" + +#: c68127e476394b188a4eaaf7dc79ba2d discord.mentions.AllowedMentions:3 of +msgid "" +"This class can be set during :class:`Client` initialisation to apply to " +"every message sent. It can also be applied on a per-message basis via " +":meth:`abc.Messageable.send` for more fine-grained control." +msgstr "" + +#: 373d657b9ca9432fbf94b5cbcd98de32 discord.mentions.AllowedMentions:9 of +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "" + +#: 294c0e16454d4deb9930e7ce4ad19e32 discord.mentions.AllowedMentions:15 of +msgid "" +"Controls the users being mentioned. If ``True`` (the default) then users " +"are mentioned based on the message content. If ``False`` then users are " +"not mentioned at all. If a list of :class:`abc.Snowflake` is given then " +"only the users provided will be mentioned, provided those users are in " +"the message content." +msgstr "" + +#: 481cf58f03144feda8cabc58d0c1e2ee 530c33a7c302431cbd3d33ded378f0ba +#: discord.mentions.AllowedMentions:21 discord.mentions.AllowedMentions:31 of +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "" + +#: 7ae63488c1fe4d4f978d73adf95cb6f7 discord.mentions.AllowedMentions:25 of +msgid "" +"Controls the roles being mentioned. If ``True`` (the default) then roles " +"are mentioned based on the message content. If ``False`` then roles are " +"not mentioned at all. If a list of :class:`abc.Snowflake` is given then " +"only the roles provided will be mentioned, provided those roles are in " +"the message content." +msgstr "" + +#: 33026490f59548eda43d83120ff762a0 discord.mentions.AllowedMentions:35 of +msgid "" +"Whether to mention the author of the message being replied to. Defaults " +"to ``True``." +msgstr "" + +#: c44ec110894948148069a5bc458fe5b9 discord.mentions.AllowedMentions.all:1 of +msgid "" +"A factory method that returns a :class:`AllowedMentions` with all fields " +"explicitly set to ``True`` :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "" + +#: d9a6fb9e04ea469881c25941627a7172 discord.mentions.AllowedMentions.none:1 of +msgid "" +"A factory method that returns a :class:`AllowedMentions` with all fields " +"set to ``False`` :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "" + +#: 7356eae6e80c48cabddc24248342e844 discord.message.MessageReference:1 of +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "" + +#: 8d9e3b5226b84a4d9a95bccfb7d8ccc5 discord.message.MessageReference:5 of +msgid "This class can now be constructed by users." +msgstr "" + +#: 64f0d504dd97408ca19d5fe84a0df71b discord.message.MessageReference:10 of +msgid "The id of the message referenced." +msgstr "" + +#: b3465d0402d0442e829de7d9fc0c70fb discord.message.MessageReference:16 of +msgid "The channel id of the message referenced." +msgstr "" + +#: 850b11222cbb40e28037b71bde8dd57f discord.message.MessageReference:22 of +msgid "The guild id of the message referenced." +msgstr "" + +#: discord.message.MessageReference:28 +#: discord.message.MessageReference.from_message:9 +#: ea0f2d067e6b4d12b130bbafb1face58 f161b3d6b9624e51af155755e2347428 of +msgid "" +"Whether replying to the referenced message should raise " +":class:`HTTPException` if the message no longer exists or Discord could " +"not fetch the message." +msgstr "" + +#: discord.message.MessageReference:37 e78e1e20c3a241d3831110a8584672ce of +msgid "" +"The message that this reference resolved to. If this is ``None`` then the" +" original message was not fetched either due to the Discord API not " +"attempting to resolve it or it not being available at the time of " +"creation. If the message was resolved at a prior point but has since been" +" deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "" + +#: b515d831ed234923be2b9bf7f76b9ae3 discord.message.MessageReference:43 of +msgid "" +"Currently, this is mainly the replied to message when a user replies to a" +" message." +msgstr "" + +#: 19036d2129714259ad50409d11530f07 discord.message.MessageReference:47 of +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "" + +#: 38dfb19fc9954c6aa0ff7e16266e3f0e +#: discord.message.MessageReference.from_message:1 of +msgid "" +"Creates a :class:`MessageReference` from an existing " +":class:`~discord.Message`." +msgstr "" + +#: a071c244685f4efbae71cdecef86fa51 +#: discord.message.MessageReference.from_message:6 of +msgid "The message to be converted into a reference." +msgstr "" + +#: 9d87e15db2c9447c9e88885a3e0c7f97 +#: discord.message.MessageReference.from_message:9 of +msgid "" +"Whether replying to the referenced message should raise " +":class:`HTTPException` if the message no longer exists or Discord could " +"not fetch the message. .. versionadded:: 1.7" +msgstr "" + +#: ../../api/data_classes.rst ec698da13c7a4164a882b6d5a0868fe2 +#: f298076f2da34bc6b0148276f66f26f5 +msgid "Returns" +msgstr "" + +#: 7440176a49d948b3838d6425ad4d9117 +#: discord.message.MessageReference.from_message:15 of +msgid "A reference to the message." +msgstr "" + +#: b558b9254e9b4404829ca2f6328601fb +#: discord.message.MessageReference.from_message:16 of +msgid ":class:`MessageReference`" +msgstr "" + +#: discord.MessageReference.cached_message:1 e6ec39418abd41f6a698bfae76703a02 +#: of +msgid "The cached message, if found in the internal message cache." +msgstr "" + +#: 741ef1bfdd924f8599b6b2586945ca23 discord.MessageReference.jump_url:1 of +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "" + +#: discord.message.MessageCall:1 e14df9af50a04ea0be0f0b8d6d7c7217 of +msgid "Represents information about a call in a private channel." +msgstr "" + +#: d40bee3ac62041f6bd23c7b59415130c discord.MessageCall.participants:1 of +msgid "A list of :class:`User` that participated in this call." +msgstr "" + +#: discord.MessageCall.participants:3 eac74b3c5bbb4ecca33c22998b7aedc6 of +msgid "" +"If a user is not found in the client's cache, then it will be returned as" +" an :class:`Object`." +msgstr "" + +#: 9f12734610a74b0fb1263173c3491d33 discord.MessageCall.ended_at:1 of +msgid "An aware timestamp of when the call ended." +msgstr "" + +#: discord.message.PartialMessage:1 e23515a3745e48e0aa983bd9f441d4ed of +msgid "" +"Represents a partial message to aid with working messages when only a " +"message and channel ID are present." +msgstr "" + +#: 85a154f901df4f9e8b832dbe86812112 discord.message.PartialMessage:4 of +msgid "" +"There are two ways to construct this class. The first one is through the " +"constructor itself, and the second is via the following:" +msgstr "" + +#: discord.message.PartialMessage:7 fbc197c5dcea4c929ef5fd628a9678e6 of +msgid ":meth:`TextChannel.get_partial_message`" +msgstr "" + +#: discord.message.PartialMessage:8 e4309a228f054e5c8144ef070337dff0 of +msgid ":meth:`Thread.get_partial_message`" +msgstr "" + +#: 5fe3a1137b6b4dbca5bd2f9e3cd3ad2d discord.message.PartialMessage:9 of +msgid ":meth:`DMChannel.get_partial_message`" +msgstr "" + +#: 770dedf0d7114dc4945e8f3ca0425ae9 discord.message.PartialMessage:10 of +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr "" + +#: discord.message.PartialMessage:11 fad600ffac8d4fc28948c4f227ca6738 of +msgid ":meth:`StageChannel.get_partial_message`" +msgstr "" + +#: 78d000ebd1274ceb8a1d38bc04d2d20b discord.message.PartialMessage:12 of +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr "" + +#: 58c599d04d364692bdb6b88fd2ec7d02 discord.message.PartialMessage:14 of +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "" + +#: discord.message.PartialMessage:22 e4ba7e0b8bc44daf89cca61ef932b4c7 of +msgid "Checks if two partial messages are equal." +msgstr "" + +#: 1e92d468fde74a73a1982f62f77caec3 discord.message.PartialMessage:26 of +msgid "Checks if two partial messages are not equal." +msgstr "" + +#: c75d297174c040c291921a55c84aff50 discord.message.PartialMessage:30 of +msgid "Returns the partial message's hash." +msgstr "" + +#: d6f75811b37446e4b8273a6368b9898b discord.message.PartialMessage:34 of +msgid "The channel associated with this partial message." +msgstr "" + +#: 541a020405794893b204059d68dab197 discord.message.PartialMessage:36 of +msgid "" +"Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, " +":class:`VoiceChannel`, :class:`StageChannel`, " +":class:`PartialMessageable`]" +msgstr "" + +#: 31d02f342df640338bf76f95cf441475 discord.message.PartialMessage:40 of +msgid "The message ID." +msgstr "" + +#: discord.PartialMessage.jump_url:1 fbf0476ac2bd4f97acf8af65e0851cc3 of +msgid "Returns a URL that allows the client to jump to this message." +msgstr "" + +#: 29d3d44d9e2744588fef0d8f39679d7b discord.message.Message.delete:3 of +msgid "Deletes the message." +msgstr "" + +#: 96fae79288124f748e4e8c239b9b8b1a discord.message.Message.delete:5 of +msgid "" +"Your own messages could be deleted without any proper permissions. " +"However, to delete other people's messages, you need the " +":attr:`~Permissions.manage_messages` permission." +msgstr "" + +#: discord.message.Message.delete:9 e971acc468664c7ca471b26ba6621cf7 of +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "" + +#: 235950ff919946af9edc635392ba3699 discord.message.Message.delete:13 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message. If the deletion fails then it is silently ignored." +msgstr "" + +#: discord.message.Message.delete:17 ea61a6f32dfa4957a53d4b532656c263 of +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "" + +#: ../../api/data_classes.rst 564b493c7da74b0a8b0026dc729e05e4 +#: discord.poll.Poll.add_answer discord.poll.PollAnswer.voters of +msgid "Raises" +msgstr "" + +#: b41a10938385430fbde90c12f035c739 discord.message.Message.delete:20 of +msgid "You do not have proper permissions to delete the message." +msgstr "" + +#: discord.message.Message.delete:21 f7436f8b61e141a19280a62c8ed64f2e of +msgid "The message was deleted already" +msgstr "" + +#: bcbb6e482f804c64a4abecb6a4e45f19 discord.message.Message.delete:22 of +msgid "Deleting the message failed." +msgstr "" + +#: discord.message.Message.publish:3 f4e9dc8f86aa42a3a4c4055bbb33ce20 of +msgid "Publishes this message to your announcement channel." +msgstr "" + +#: bf76faf1f9274216a09c2e91f6386f58 discord.message.Message.publish:5 of +msgid "" +"You must have the :attr:`~Permissions.send_messages` permission to do " +"this." +msgstr "" + +#: 2c0ccdfabdea4c2ebf6deb39d29924c4 discord.message.Message.publish:7 of +msgid "" +"If the message is not your own then the " +":attr:`~Permissions.manage_messages` permission is also needed." +msgstr "" + +#: discord.message.Message.publish:10 ea693d1db97448e1a598c6ae8080dbf9 of +msgid "You do not have the proper permissions to publish this message." +msgstr "" + +#: 592c408165ff46f08ce8dd44d9425363 discord.message.Message.publish:11 of +msgid "Publishing the message failed." +msgstr "" + +#: discord.message.Message.pin:3 e4f6d1445a4d415c9125a39ce255020d of +msgid "Pins the message." +msgstr "" + +#: daa1cb3817894aabbb0ea1a18b81421d discord.message.Message.pin:5 +#: discord.message.Message.unpin:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_messages` permission to do " +"this in a non-private channel context." +msgstr "" + +#: 689db2ebc4e949cbad070710a8741095 discord.message.Message.pin:9 of +msgid "" +"The reason for pinning the message. Shows up on the audit log. .. " +"versionadded:: 1.4" +msgstr "" + +#: 623c513b16e14fc0bbc6b4a535a3e44f discord.message.Message.pin:9 of +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "" + +#: 98fff9ede225464a8da6d514b271b810 discord.message.Message.pin:14 of +msgid "You do not have permissions to pin the message." +msgstr "" + +#: a926f86ace9a4194a00a466364e85741 discord.message.Message.pin:15 +#: discord.message.Message.unpin:15 of +msgid "The message or channel was not found or deleted." +msgstr "" + +#: 6c215f6b7f2a4ddf8d77119142ed8b62 discord.message.Message.pin:16 of +msgid "" +"Pinning the message failed, probably due to the channel having more " +"than 50 pinned messages." +msgstr "" + +#: 8195304858b0442fbdf53efa34569fd2 discord.message.Message.unpin:3 of +msgid "Unpins the message." +msgstr "" + +#: c1d8b8aa5b0a40d6b9f36f1853444704 discord.message.Message.unpin:9 of +msgid "" +"The reason for unpinning the message. Shows up on the audit log. .. " +"versionadded:: 1.4" +msgstr "" + +#: 91e0a65046cc4d02ad07e98b00977259 discord.message.Message.unpin:9 of +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "" + +#: 8ca4cd26797341a4b9f4100aca8b1e8c discord.message.Message.unpin:14 of +msgid "You do not have permissions to unpin the message." +msgstr "" + +#: 87cd18a54efc4fd385432901fb39b837 discord.message.Message.unpin:16 of +msgid "Unpinning the message failed." +msgstr "" + +#: 5ded560527ab4593a0062d503dccbd71 discord.message.Message.add_reaction:3 of +msgid "Add a reaction to the message." +msgstr "" + +#: cd02277db89943ed9ee4591e8af3275f discord.message.Message.add_reaction:5 +#: discord.message.Message.clear_reaction:5 +#: discord.message.Message.remove_reaction:5 of +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "" + +#: de4aa6f9efb64b64878511d76ccf83ff discord.message.Message.add_reaction:7 of +msgid "" +"You must have the :attr:`~Permissions.read_message_history` permission to" +" use this. If nobody else has reacted to the message using this emoji, " +"the :attr:`~Permissions.add_reactions` permission is required." +msgstr "" + +#: 17817427c32c455ca89b1bd91f98f0a8 discord.message.Message.add_reaction:12 of +msgid "The emoji to react with." +msgstr "" + +#: 8b7a9e28239647328af16528598e19d6 discord.message.Message.add_reaction:15 of +msgid "Adding the reaction failed." +msgstr "" + +#: a0d53681382747ca83356bca8a90fd97 discord.message.Message.add_reaction:16 of +msgid "You do not have the proper permissions to react to the message." +msgstr "" + +#: d954e7e116e24bf7bccda076d7755919 discord.message.Message.add_reaction:17 +#: discord.message.Message.clear_reaction:17 of +msgid "The emoji you specified was not found." +msgstr "" + +#: 5c4cc2b758fc41c6b650e94c29df70a7 discord.message.Message.add_reaction:18 +#: discord.message.Message.clear_reaction:18 +#: discord.message.Message.remove_reaction:23 of +msgid "The emoji parameter is invalid." +msgstr "" + +#: b6e0bf1734ac49a8a83b561a1c43d714 discord.message.Message.remove_reaction:3 +#: of +msgid "Remove a reaction by the member from the message." +msgstr "" + +#: 7c558ddb88eb464db3a2e359159b7159 discord.message.Message.remove_reaction:7 +#: of +msgid "" +"If the reaction is not your own (i.e. ``member`` parameter is not you) " +"then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "" + +#: 9b812ebf91cd4b3ca164b4e32fe1ae6f discord.message.Message.remove_reaction:10 +#: of +msgid "" +"The ``member`` parameter must represent a member and meet the " +":class:`abc.Snowflake` abc." +msgstr "" + +#: cd3b40641ddb494288abcfd4e0107825 discord.message.Message.remove_reaction:14 +#: of +msgid "The emoji to remove." +msgstr "" + +#: b348722b041942dc82c4ba077705d83a discord.message.Message.remove_reaction:17 +#: of +msgid "The member for which to remove the reaction." +msgstr "" + +#: discord.message.Message.remove_reaction:20 fb92db3d862e465694b3b7a0eed56842 +#: of +msgid "Removing the reaction failed." +msgstr "" + +#: 83ff0da11c77493391aecc7fc410a1c5 discord.message.Message.remove_reaction:21 +#: of +msgid "You do not have the proper permissions to remove the reaction." +msgstr "" + +#: discord.message.Message.remove_reaction:22 f88cb1d0218f4349b20f4bfb953cee8d +#: of +msgid "The member or emoji you specified was not found." +msgstr "" + +#: 234e3f29572e46dda5d60b94630539b6 discord.message.Message.clear_reaction:3 of +msgid "Clears a specific reaction from the message." +msgstr "" + +#: 4b5bd7feaad94acd9247e5ea152d72f3 discord.message.Message.clear_reaction:7 +#: discord.message.Message.clear_reactions:5 of +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "" + +#: a9c93f7d5e044830b8ed37b3d6e8e512 discord.message.Message.clear_reaction:12 +#: of +msgid "The emoji to clear." +msgstr "" + +#: 035b8fd086994b7a9e2e0a91af5b2b79 discord.message.Message.clear_reaction:15 +#: of +msgid "Clearing the reaction failed." +msgstr "" + +#: 4cea524ce2534f379a652aeb46daa548 discord.message.Message.clear_reaction:16 +#: of +msgid "You do not have the proper permissions to clear the reaction." +msgstr "" + +#: 01f83e3901ca4698aaceda560e42b939 discord.message.Message.clear_reactions:3 +#: of +msgid "Removes all the reactions from the message." +msgstr "" + +#: 482e30aeb4c749f0b5876f81537409f4 discord.message.Message.clear_reactions:7 +#: of +msgid "Removing the reactions failed." +msgstr "" + +#: 5a89399102614a71b080c592a9df4274 discord.message.Message.clear_reactions:8 +#: of +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "" + +#: 6a803b20f30b41499a3154208e1cddbd discord.message.Message.reply:3 of +msgid "" +"A shortcut method to :meth:`.abc.Messageable.send` to reply to the " +":class:`.Message`." +msgstr "" + +#: 0432f057bc24436ab0c9162af0b56320 discord.message.Message.reply:8 of +msgid "The message that was sent." +msgstr "" + +#: 815203ab4dd9447daab77ae359e85c30 discord.message.Message.reply:9 of +msgid ":class:`.Message`" +msgstr "" + +#: d7a8c5afd03e4ba18c9c5bc654aaa52f discord.message.Message.reply:11 of +msgid "Sending the message failed." +msgstr "" + +#: discord.message.Message.reply:12 f58e37c02b9346ac8affda2006377756 of +msgid "You do not have the proper permissions to send the message." +msgstr "" + +#: 2b6ec3e3ab574a20ae37d4d118fb1267 discord.message.Message.reply:13 of +msgid "" +"The ``files`` list is not of the appropriate size, or you specified " +"both ``file`` and ``files``." +msgstr "" + +#: 303f5f553a71428285d200852504cec9 discord.message.Message.to_reference:1 of +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "" + +#: 06525f041a224df2946303c15381e33f discord.message.Message.to_reference:6 of +msgid "" +"Whether replying using the message reference should raise " +":class:`HTTPException` if the message no longer exists or Discord could " +"not fetch the message. .. versionadded:: 1.7" +msgstr "" + +#: 2e4f11c09c7d463aad237579dd9ca160 discord.message.Message.to_reference:6 of +msgid "" +"Whether replying using the message reference should raise " +":class:`HTTPException` if the message no longer exists or Discord could " +"not fetch the message." +msgstr "" + +#: ba9e9d761df54e83b387bd4522433122 discord.message.Message.to_reference:12 of +msgid "The reference to this message." +msgstr "" + +#: 5ed3d2c88b4d4d4a96d200c1bf406751 discord.message.Message.to_reference:13 of +msgid ":class:`~discord.MessageReference`" +msgstr "" + +#: 43820c6a82af4b7f9be88f13c76d124e discord.PartialMessage.created_at:1 of +msgid "The partial message's creation time in UTC." +msgstr "" + +#: ../../docstring 9302b84c521647b69da4af562f56165e +#: discord.PartialMessage.guild:1 of +msgid "The guild that the partial message belongs to, if applicable." +msgstr "" + +#: 78d000ebd1274ceb8a1d38bc04d2d20b discord.message.PartialMessage.fetch:3 of +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "" + +#: b04e3809d78644b79df2f3e48d3af7a6 discord.message.PartialMessage.fetch:5 of +msgid "The full message." +msgstr "" + +#: 63ddd6f4054a4187bf9397afe4e430c8 discord.message.PartialMessage.edit:43 +#: discord.message.PartialMessage.fetch:8 of +msgid "The message was not found." +msgstr "" + +#: a427a195ecf744038571bf8b10a6e687 discord.message.PartialMessage.fetch:9 of +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: b061557a36b44bc4bbad240bbac41710 discord.message.PartialMessage.fetch:10 of +msgid "Retrieving the message failed." +msgstr "" + +#: 88cf9ce437914616b574f0a18a7f93ed discord.message.PartialMessage.edit:3 of +msgid "Edits the message." +msgstr "" + +#: c5ab139ad01d4a7b90691f1121856e5e discord.message.PartialMessage.edit:5 of +msgid "" +":class:`discord.Message` is returned instead of ``None`` if an edit took " +"place." +msgstr "" + +#: discord.message.PartialMessage.edit:8 e7dd8c55bda54d1593f2c051cccb14df of +msgid "" +"The new content to replace the message with. Could be ``None`` to remove " +"the content." +msgstr "" + +#: 5a43027c35e24a84986b785209ad38ee discord.message.PartialMessage.edit:11 of +msgid "" +"The new embed to replace the original with. Could be ``None`` to remove " +"the embed." +msgstr "" + +#: 570745aeffc4476ab77e0c0b35d2537c discord.message.PartialMessage.edit:14 of +msgid "" +"A list of embeds to upload. Must be a maximum of 10. .. versionadded:: " +"2.0" +msgstr "" + +#: 2ad24a36d4c1433c993f05022e0eec5c discord.message.PartialMessage.edit:14 of +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "" + +#: discord.message.PartialMessage.edit:18 ebdb77601a344eef94e13632ce40243e of +msgid "" +"Whether to suppress embeds for the message. This removes all the embeds " +"if set to ``True``. If set to ``False`` this brings the embeds back if " +"they were suppressed. Using this parameter requires " +":attr:`~.Permissions.manage_messages`." +msgstr "" + +#: 242d817223804c44bf3d8353ad0b04e2 discord.message.PartialMessage.edit:23 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message we just edited. If the deletion fails, then it is " +"silently ignored." +msgstr "" + +#: 3143cd2b586c437a9f2c2a88805412dd discord.message.PartialMessage.edit:27 of +msgid "" +"Controls the mentions being processed in this message. If this is passed," +" then the object is merged with :attr:`~discord.Client.allowed_mentions`." +" The merging behaviour only overrides attributes that have been " +"explicitly passed to the object, otherwise it uses the attributes set in " +":attr:`~discord.Client.allowed_mentions`. If no object is passed at all " +"then the defaults given by :attr:`~discord.Client.allowed_mentions` are " +"used instead." +msgstr "" + +#: 712d02ac186e43d38096c29c6b1d0f2b discord.message.PartialMessage.edit:34 of +msgid "" +"The updated view to update this message with. If ``None`` is passed then " +"the view is removed. .. versionadded:: 2.0" +msgstr "" + +#: 38b462beb37a4f5a82a7486de84aaad9 discord.message.PartialMessage.edit:34 of +msgid "" +"The updated view to update this message with. If ``None`` is passed then " +"the view is removed." +msgstr "" + +#: b209c9c412ab459f887dcda7956aa9bd discord.message.PartialMessage.edit:40 of +msgid "The message that was edited." +msgstr "" + +#: 495113be7d064bd2873a327f900820fd discord.message.PartialMessage.edit:41 of +msgid "Optional[:class:`Message`]" +msgstr "" + +#: b94b53751505427e8ffe980ff5ecedc5 discord.message.PartialMessage.edit:44 of +msgid "Editing the message failed." +msgstr "" + +#: 65fe20a3c43f4521aff5291cbe54222b discord.message.PartialMessage.edit:45 of +msgid "" +"Tried to suppress a message without permissions or edited a message's" +" content or embed that isn't yours." +msgstr "" + +#: 9b18057fb00a4638aa360b2a6ea1e132 discord.message.PartialMessage.end_poll:3 +#: of +msgid "" +"Immediately ends the poll associated with this message. Only doable by " +"the poll's owner." +msgstr "" + +#: 4384eb6dd74c4277bc507b455314f30a discord.message.PartialMessage.end_poll:7 +#: discord.poll.Poll.end:4 of +msgid "The updated message." +msgstr "" + +#: 6688c9001e7746ebbeb01ce1f0aa311d discord.message.PartialMessage.end_poll:10 +#: discord.poll.Poll.end:7 of +msgid "You do not have permissions to end this poll." +msgstr "" + +#: 90c6425cdab34723ac7939316ba8e7b9 discord.message.PartialMessage.end_poll:11 +#: discord.poll.Poll.end:8 of +msgid "Ending this poll failed." +msgstr "" + +#: 666289f9bc4c46a09ad5e5df62a010c7 discord.file.File:1 of +msgid "" +"A parameter object used for :meth:`abc.Messageable.send` for sending file" +" objects." +msgstr "" + +#: 1ffc468a7e564a77b1ab6d3d175a0ddf discord.file.File:6 of +msgid "" +"File objects are single use and are not meant to be reused in multiple " +":meth:`abc.Messageable.send`\\s." +msgstr "" + +#: ad22cb7b2f7f4bcaad2aca05530883c5 discord.file.File:11 of +msgid "" +"A file-like object opened in binary mode and read mode or a filename " +"representing a file in the hard drive to open." +msgstr "" + +#: 386a428af11841de99743da4a1919cca discord.file.File:17 of +msgid "" +"If the file-like object passed is opened via ``open`` then the modes 'rb'" +" should be used." +msgstr "" + +#: a10d87c534c147fa9e5613a010e1e0a2 discord.file.File:20 of +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "" + +#: 314a606b86634b62b8130b78e23bd0eb discord.file.File:22 of +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "" + +#: 8b943603619b4b7fa7d08ab6270e0f33 discord.file.File:26 of +msgid "" +"The filename to display when uploading to Discord. If this is not given " +"then it defaults to ``fp.name`` or if ``fp`` is a string then the " +"``filename`` will default to the string given." +msgstr "" + +#: 04abb69d4e3f4e8aacd536a566f80f75 discord.file.File:34 of +msgid "" +"The description of a file, used by Discord to display alternative text on" +" images." +msgstr "" + +#: 4bf08b434a2d4714995daee269da72e6 discord.file.File:40 of +msgid "Whether the attachment is a spoiler." +msgstr "" + +#: ../../api/data_classes.rst:68 5672173d06bd46829384d84e99bed65e +msgid "Embed" +msgstr "" + +#: 427c2ee28b8949af81f97e02fb5bfc9b discord.embeds.Embed:1 of +msgid "Represents a Discord embed." +msgstr "" + +#: 97943274365f418986ea5471553de688 discord.embeds.Embed:7 of +msgid "" +"Returns the total size of the embed. Useful for checking if it's within " +"the 6000 character limit." +msgstr "" + +#: 11a5e4a569954a24829d3090b41a6858 discord.embeds.Embed:12 of +msgid "Returns whether the embed has any data set." +msgstr "" + +#: 4dc22484606047e590d81e706cba0691 discord.embeds.Embed:16 of +msgid "" +"For ease of use, all parameters that expect a :class:`str` are implicitly" +" cast to :class:`str` for you." +msgstr "" + +#: 7832fd63a2a943b2a73a9a920fa6d5be discord.embeds.Embed:21 of +msgid "" +"The title of the embed. This can be set during initialisation. Must be " +"256 characters or fewer." +msgstr "" + +#: 692ccfef72e24f968e41d37b39fd6f78 discord.embeds.Embed:29 of +msgid "" +"The type of embed. Usually \"rich\". This can be set during " +"initialisation. Possible strings for embed types can be found on " +"discord's `api docs " +"`_" +msgstr "" + +#: 91b98af56bdd4aa88649159b8f936fb7 discord.embeds.Embed:38 of +msgid "" +"The description of the embed. This can be set during initialisation. Must" +" be 4096 characters or fewer." +msgstr "" + +#: 2d954533b76e4515a096046a55fefefe discord.embeds.Embed:46 of +msgid "The URL of the embed. This can be set during initialisation." +msgstr "" + +#: 092b6ba6ce244e53b6ce5f7e4e9500c1 discord.embeds.Embed:53 of +msgid "" +"The timestamp of the embed content. This is an aware datetime. If a naive" +" datetime is passed, it is converted to an aware datetime with the local " +"timezone." +msgstr "" + +#: 609d9519dae540debf386660d6ae227f discord.embeds.Embed:57 of +msgid ":class:`datetime.datetime`" +msgstr "" + +#: 6c1111e73b4f46c4ac628d0f4bcc7b61 discord.embeds.Embed:61 of +msgid "" +"The colour code of the embed. Aliased to ``color`` as well. This can be " +"set during initialisation." +msgstr "" + +#: b7a8a80c58ec45f7894593aeb43777e9 discord.embeds.Embed:64 of +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "" + +#: 6aeabaacc69f4ee68ea92fd54e214d10 discord.embeds.Embed.from_dict:1 of +msgid "" +"Converts a :class:`dict` to a :class:`Embed` provided it is in the format" +" that Discord expects it to be in." +msgstr "" + +#: 11c5c5487f8c48a3954a882ef0c81c3c discord.embeds.Embed.from_dict:4 +#: discord.embeds.EmbedField.from_dict:4 of +msgid "" +"You can find out about this format in the `official Discord " +"documentation`__." +msgstr "" + +#: 4342a4fd6cec45399e05d59fff964f02 discord.embeds.Embed.from_dict:11 of +msgid "The dictionary to convert into an embed." +msgstr "" + +#: c1382cd2a5db4426a35bea2a16300c17 discord.embeds.Embed.from_dict:14 of +msgid "The converted embed object." +msgstr "" + +#: 31cb82cfd5694185a67134d428e16b31 b90f78f68b5240018331590be71043e2 +#: discord.embeds.Embed.copy:4 discord.embeds.Embed.from_dict:15 of +msgid ":class:`Embed`" +msgstr "" + +#: 14efae1cd9574abb9144795b5692270d discord.embeds.Embed.copy:1 of +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "" + +#: 21bca5a6e16b456cb4607d2165def378 discord.embeds.Embed.copy:3 of +msgid "The copied embed object." +msgstr "" + +#: 437357134c32411e93189260ef456947 discord.Embed.footer:1 of +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "" + +#: 39ffb3814ad149369fd0fcb49fd8305d discord.Embed.footer:3 of +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "" + +#: discord.Embed.footer:5 f8236e0b51ff40158d943d38427aa448 of +msgid "If the footer is not set then `None` is returned." +msgstr "" + +#: 870e25600d0245c7ad5e1223e69be28f discord.embeds.Embed.set_footer:1 of +msgid "Sets the footer for the embed content." +msgstr "" + +#: 472e69cfec074712ba341e65b8fecb6e discord.embeds.Embed.remove_author:3 +#: discord.embeds.Embed.remove_footer:3 discord.embeds.Embed.remove_image:3 +#: discord.embeds.Embed.remove_thumbnail:3 discord.embeds.Embed.set_author:3 +#: discord.embeds.Embed.set_field_at:5 discord.embeds.Embed.set_footer:3 +#: discord.embeds.Embed.set_image:3 discord.embeds.Embed.set_thumbnail:3 +#: discord.poll.Poll.add_answer:3 of +msgid "" +"This function returns the class instance to allow for fluent-style " +"chaining." +msgstr "" + +#: 965bb8f2192e403bab9f4eaa08028da0 discord.embeds.Embed.set_footer:7 of +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "" + +#: 927c6440f36d47e190e1e1e477a19e5a discord.embeds.Embed.set_footer:11 of +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "" + +#: 670ce1a77ea64456afc2146913f95675 discord.embeds.Embed.add_field:20 +#: discord.embeds.Embed.insert_field_at:25 +#: discord.embeds.Embed.remove_author:10 discord.embeds.Embed.remove_footer:10 +#: discord.embeds.Embed.remove_image:10 +#: discord.embeds.Embed.remove_thumbnail:10 discord.embeds.Embed.set_author:19 +#: discord.embeds.Embed.set_field_at:27 discord.embeds.Embed.set_footer:16 +#: discord.embeds.Embed.set_image:15 discord.embeds.Embed.set_thumbnail:15 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr "" + +#: 6f46beafb8ad419b8bc47fecd8449ae0 discord.embeds.Embed.remove_footer:1 of +msgid "Clears embed's footer information." +msgstr "" + +#: b1846260ec5f4bf9bbfa1b6037667698 discord.Embed.image:1 of +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "" + +#: d81411e68d0f4d6f9518289513f8a904 discord.Embed.image:3 +#: discord.Embed.thumbnail:3 of +msgid "Attributes you can access are:" +msgstr "" + +#: cffb7b3b2793415b9fa8247a91357837 discord.Embed.image:5 +#: discord.Embed.thumbnail:5 of +msgid "``url``" +msgstr "" + +#: discord.Embed.image:6 discord.Embed.thumbnail:6 +#: ee9b344e994943acb62237fa811574d1 of +msgid "``proxy_url``" +msgstr "" + +#: b72ba3cc26404e28b1075b704cb14550 discord.Embed.image:7 +#: discord.Embed.thumbnail:7 of +msgid "``width``" +msgstr "" + +#: b8a6a508837443ba95e9285eeb489453 discord.Embed.image:8 +#: discord.Embed.thumbnail:8 of +msgid "``height``" +msgstr "" + +#: 9faeb16d7c394608bcc439a360bfcdef discord.Embed.image:10 of +msgid "If the image is not set then `None` is returned." +msgstr "" + +#: discord.embeds.Embed.set_image:1 f95421a72dd8440ea35b94bb90b99eab of +msgid "Sets the image for the embed content." +msgstr "" + +#: 6c7d99b78a5c4b3ea4f56709ac489762 discord.embeds.Embed.set_image:6 of +msgid "Passing `None` removes the image." +msgstr "" + +#: 2e2904f0369540eda223ee6501bbff63 discord.embeds.Embed.set_image:10 of +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "" + +#: 12f2619a68bd4015bb2c363774c16ed2 discord.embeds.Embed.remove_image:1 of +msgid "Removes the embed's image." +msgstr "" + +#: 8605a3db4e5e434aa5698e2eaf0e6009 discord.Embed.thumbnail:1 of +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "" + +#: aaa83fb51344424a868c52e6f11cb940 discord.Embed.thumbnail:10 of +msgid "If the thumbnail is not set then `None` is returned." +msgstr "" + +#: discord.embeds.Embed.set_thumbnail:1 e6aa0e627eb64cc8ae7a6e3a20500fad of +msgid "Sets the thumbnail for the embed content." +msgstr "" + +#: 363a882807bd4cbab5e84fb3b4692a92 discord.embeds.Embed.set_thumbnail:6 of +msgid "Passing `None` removes the thumbnail." +msgstr "" + +#: 75423cad1541415192d6e7ed5aeacdfe discord.embeds.Embed.set_thumbnail:10 of +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "" + +#: 41da049e3aaa47d0b6fb9c3810d19658 discord.embeds.Embed.remove_thumbnail:1 of +msgid "Removes the embed's thumbnail." +msgstr "" + +#: 961bd85bd5544669b31dae29d3f43bd5 discord.Embed.video:1 of +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "" + +#: 227fc3080b80426fb032921f183f703a discord.Embed.video:3 of +msgid "Attributes include:" +msgstr "" + +#: b99b49981ef14c3d9973e3c9e0ca0ebf discord.Embed.video:5 of +msgid "``url`` for the video URL." +msgstr "" + +#: discord.Embed.video:6 e3a3db758819485ba4186d6932ed0e65 of +msgid "``height`` for the video height." +msgstr "" + +#: 700e78637e7c4a4a9dae808ca8367557 discord.Embed.video:7 of +msgid "``width`` for the video width." +msgstr "" + +#: c38bb3a47e1d4b9da777f617d8b4e912 discord.Embed.video:9 of +msgid "If the video is not set then `None` is returned." +msgstr "" + +#: 53ae4ef3b67342cfa2ff6292ef331f63 discord.Embed.provider:1 of +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "" + +#: discord.Embed.provider:3 eb83f78507ca43cdbdb984fdc42255b0 of +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "" + +#: 827b55dbf1184c3dab56e04ad6ccb51b discord.Embed.provider:5 of +msgid "If the provider is not set then `None` is returned." +msgstr "" + +#: 74ac52b2dc5b498da593026b6b13a969 discord.Embed.author:1 of +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "" + +#: 923af0d9c0ee421d8a47b81dd2cc38cb discord.Embed.author:3 of +msgid "See :meth:`set_author` for possible values you can access." +msgstr "" + +#: 7b0abc19fc80475c942f7e406a8d0356 discord.Embed.author:5 of +msgid "If the author is not set then `None` is returned." +msgstr "" + +#: 285a520f7e65498d81469c11d5a6f161 discord.embeds.Embed.set_author:1 of +msgid "Sets the author for the embed content." +msgstr "" + +#: 62a5b11154fd435893abf09011196871 discord.embeds.Embed.set_author:7 of +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "" + +#: discord.embeds.Embed.set_author:11 ed34c5262fa9474c8924dadcd9168527 of +msgid "The URL for the author." +msgstr "" + +#: 4f213ce46c5a457ba1edd63cf797d629 discord.embeds.Embed.set_author:14 of +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "" + +#: 9a7e8719ffe5410483741abf1f1bb582 discord.embeds.Embed.remove_author:1 of +msgid "Clears embed's author information." +msgstr "" + +#: 5b5a10ffdc3d4837bf82e6e1508bbf36 discord.Embed.fields:1 of +msgid "" +"Returns a :class:`list` of :class:`EmbedField` objects denoting the field" +" contents." +msgstr "" + +#: c16c38bb27d34d019499e7f617025356 discord.Embed.fields:3 of +msgid "See :meth:`add_field` for possible values you can access." +msgstr "" + +#: 7bdb18c2d3e44a7393da17fce49995db discord.Embed.fields:5 of +msgid "If the attribute has no value then ``None`` is returned." +msgstr "" + +#: 79ae22049785481294f74348ae5cca23 discord.embeds.Embed.append_field:1 of +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "" + +#: a01f46e43a594987ba8c68257beed74d discord.embeds.Embed.append_field:6 of +msgid "The field to add." +msgstr "" + +#: 4c217cd38ff4450fb5b7a530a6f5c252 discord.embeds.Embed.add_field:1 of +msgid "Adds a field to the embed object." +msgstr "" + +#: 87ad0ce020044d25a671b1e53ff2a758 discord.embeds.Embed.add_field:3 +#: discord.embeds.Embed.insert_field_at:3 of +msgid "" +"This function returns the class instance to allow for fluent-style " +"chaining. There must be 25 fields or fewer." +msgstr "" + +#: c789b835bf5a431583ac9ba7139a8a18 discord.embeds.Embed.add_field:7 +#: discord.embeds.Embed.insert_field_at:12 discord.embeds.Embed.set_field_at:12 +#: of +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "" + +#: 43af5dd6ae4045f9b21924d69672625c discord.embeds.Embed.add_field:11 +#: discord.embeds.Embed.insert_field_at:16 discord.embeds.Embed.set_field_at:16 +#: of +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "" + +#: 8873c3d93b1140ecb68918d2fe44630e discord.embeds.Embed.add_field:15 +#: discord.embeds.Embed.insert_field_at:20 discord.embeds.Embed.set_field_at:20 +#: discord.embeds.EmbedField:19 of +msgid "Whether the field should be displayed inline." +msgstr "" + +#: 2422a4b7e42540f790e3c5b0ac81bfeb discord.embeds.Embed.insert_field_at:1 of +msgid "Inserts a field before a specified index to the embed." +msgstr "" + +#: 95e091093d0d4473965eaae62579eaaf discord.embeds.Embed.insert_field_at:9 of +msgid "The index of where to insert the field." +msgstr "" + +#: 94e95d53e5d748bbb9c233bffc137d78 discord.embeds.Embed.clear_fields:1 of +msgid "Removes all fields from this embed." +msgstr "" + +#: 1918f1c5266e492db3c279793a97d66a discord.embeds.Embed.remove_field:1 of +msgid "Removes a field at a specified index." +msgstr "" + +#: discord.embeds.Embed.remove_field:3 eb47fe95d8ca482c9822f5b42b5cd76e of +msgid "" +"If the index is invalid or out of bounds then the error is silently " +"swallowed." +msgstr "" + +#: d64b9bcad6e74710b32282c557ecc870 discord.embeds.Embed.remove_field:8 of +msgid "" +"When deleting a field by index, the index of the other fields shift to " +"fill the gap just like a regular list." +msgstr "" + +#: 27c9eef73d05412584f6c76f27828329 discord.embeds.Embed.remove_field:12 of +msgid "The index of the field to remove." +msgstr "" + +#: 06fb6ae64d344a4c8cffb3d1ae87a4df discord.embeds.Embed.set_field_at:1 of +msgid "Modifies a field to the embed object." +msgstr "" + +#: 5113353d66b34c79ac9f94b266959aee discord.embeds.Embed.set_field_at:3 of +msgid "" +"The index must point to a valid pre-existing field. There must be 25 " +"fields or fewer." +msgstr "" + +#: discord.embeds.Embed.set_field_at:9 f2d46b8fe7024d5a8d8bfef0364690e8 of +msgid "The index of the field to modify." +msgstr "" + +#: discord.embeds.Embed.set_field_at:23 ec1906dad4f44ecc861c0854dcaf4ba2 of +msgid "An invalid index was provided." +msgstr "" + +#: 9f2422b1f3204fa1bac9e137c83a3ce5 discord.embeds.Embed.to_dict:1 of +msgid "Converts this embed object into a dict." +msgstr "" + +#: discord.embeds.Embed.to_dict:3 f20ea68e61504bfc87732ee925a9624e of +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "" + +#: 3e2fb25d1b7b430c9753a7983ca774ea discord.embeds.Embed.to_dict:4 of +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "" + +#: 6569f8ddd1d5458b981ca62acef92db6 discord.embeds.EmbedField:1 of +msgid "Represents a field on the :class:`Embed` object." +msgstr "" + +#: 4b949db6063c477f9a87d68d5d75b325 discord.embeds.EmbedField:7 of +msgid "The name of the field." +msgstr "" + +#: bf58b3e4df784a86a6053bf20de7a0ff discord.embeds.EmbedField:13 of +msgid "The value of the field." +msgstr "" + +#: discord.embeds.EmbedField.from_dict:1 f68540cf33154256bc69249e7ae628b0 of +msgid "" +"Converts a :class:`dict` to a :class:`EmbedField` provided it is in the " +"format that Discord expects it to be in." +msgstr "" + +#: 90e46216828a4801969a488cd8916ef8 discord.embeds.EmbedField.from_dict:11 of +msgid "The dictionary to convert into an EmbedField object." +msgstr "" + +#: 52637f1dd2d74324a31b9a90e46afcc5 discord.embeds.EmbedField.from_dict:14 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr "" + +#: 699af58122094dbf9484c027c693fe5b discord.embeds.EmbedField.to_dict:1 of +msgid "Converts this EmbedField object into a dict." +msgstr "" + +#: ba1355079f4445af930b5e3fa1d87193 discord.embeds.EmbedField.to_dict:3 of +msgid "" +"A dictionary of :class:`str` embed field keys bound to the respective " +"value." +msgstr "" + +#: 92393ba03f314ad3b66cc9fabd35fa5d discord.embeds.EmbedField.to_dict:4 of +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "" + +#: 5d4b2cb5459a4128b46ed9bf4654e6cf discord.embeds.EmbedAuthor:1 of +msgid "Represents the author on the :class:`Embed` object." +msgstr "" + +#: 0165cce516c64f5298d46a75bd8e81f3 discord.embeds.EmbedAuthor:7 of +msgid "The name of the author." +msgstr "" + +#: 8fd25c58c3d6409fa26fcff1fdf67eec discord.embeds.EmbedAuthor:13 of +msgid "The URL of the hyperlink created in the author's name." +msgstr "" + +#: 804bbf20fe6c4418a6f03780ed6e383d discord.embeds.EmbedAuthor:19 of +msgid "The URL of the author icon image." +msgstr "" + +#: 26594f578fc04c879c5132daef91fc4f discord.embeds.EmbedAuthor:25 of +msgid "" +"The proxied URL of the author icon image. This can't be set directly, it " +"is set by Discord." +msgstr "" + +#: 46d90ba390ec43e18bd5792f90aabb64 discord.embeds.EmbedFooter:1 of +msgid "Represents the footer on the :class:`Embed` object." +msgstr "" + +#: a3c86f8a52834fce8eb89bee93b79386 discord.embeds.EmbedFooter:7 of +msgid "The text inside the footer." +msgstr "" + +#: b0a628aa630b46d4be33f6f9afa72e04 discord.embeds.EmbedFooter:13 of +msgid "The URL of the footer icon image." +msgstr "" + +#: 063facd6e7d64b6f93f3cf83c02270c3 discord.embeds.EmbedFooter:19 of +msgid "" +"The proxied URL of the footer icon image. This can't be set directly, it " +"is set by Discord." +msgstr "" + +#: 84009370ba89477799600703d0fd6cb9 discord.embeds.EmbedMedia:1 of +msgid "" +"Represents a media on the :class:`Embed` object. This includes " +"thumbnails, images, and videos." +msgstr "" + +#: 6f7dcd5b4c4c4c12bb80f4aa70c23c29 discord.embeds.EmbedMedia:8 of +msgid "The source URL of the media." +msgstr "" + +#: discord.embeds.EmbedMedia:14 ecbf3a1aa02c4e77addc7cbd2f7c268e of +msgid "The proxied URL of the media." +msgstr "" + +#: 2ac3ec6fd9cb4c85a8cbd82e79f3f399 discord.embeds.EmbedMedia:20 of +msgid "The height of the media." +msgstr "" + +#: d14db22673ec4303a4e43dd372f44d0b discord.embeds.EmbedMedia:26 of +msgid "The width of the media." +msgstr "" + +#: discord.embeds.EmbedProvider:1 f484eca39a0b48beb3dbe96fe7018043 of +msgid "Represents a provider on the :class:`Embed` object." +msgstr "" + +#: c8302a6febd04b178d3e35c4e249f5a0 discord.embeds.EmbedProvider:7 of +msgid "The name of the provider." +msgstr "" + +#: a5648743549f45b5a0f218160cc66a13 discord.embeds.EmbedProvider:13 of +msgid "The URL of the provider." +msgstr "" + +#: ../../api/data_classes.rst:102 646f8ad2d43d4dce987005a50de9a4cf +msgid "Poll" +msgstr "" + +#: 596b19059df5489181dd78e474801848 discord.poll.Poll:1 of +msgid "" +"Represents a Poll. Polls are sent in regular messages, and you must have " +":attr:`~discord.Permissions.send_polls` to send them." +msgstr "" + +#: c56b411c300a4ce08a3948b4da36a990 discord.poll.Poll:7 of +msgid "" +"The poll's question media, or a ``str`` representing the question text. " +"Question text can be up to 300 characters." +msgstr "" + +#: 8194348890384866a884b99e2b4c496e discord.poll.Poll:9 of +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "" + +#: b778208a512643b98cbdabb1baa24642 discord.poll.Poll:13 of +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "" + +#: 458431e25bdd4c0eb444b5917c005c9b discord.poll.Poll:15 of +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "" + +#: discord.poll.Poll:19 ff4fb64ef22b48a5869c27f3c18b453e of +msgid "" +"The number of hours until this poll expires. Users must specify this when" +" creating a poll, but existing polls return :attr:`expiry` instead. " +"Defaults to 24." +msgstr "" + +#: 293efff145294d2eb01067636aec1ced discord.poll.Poll:25 of +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "" + +#: a3dd116585e34cd4a61770f53cca1f2b discord.poll.Poll:31 of +msgid "The poll's layout type. Only one exists at the moment." +msgstr "" + +#: 195cf209f72e47e4afe524acecfa6505 discord.poll.Poll:33 of +msgid ":class:`PollLayoutType`" +msgstr "" + +#: 6831db54dc464b23af1be2fe67385a15 discord.poll.Poll:37 of +msgid "" +"The results of this poll recieved from Discord. If ``None``, this should " +"be considered \"unknown\" rather than \"no\" results." +msgstr "" + +#: 602770e61cb14b51aa23c776955a22b8 discord.poll.Poll:39 of +msgid "Optional[:class:`PollResults`]" +msgstr "" + +#: ../../docstring 095344d640ad4e3686d6f8d4fa1b42a0 discord.Poll.expiry:1 of +msgid "" +"An aware datetime object that specifies the date and time in UTC when the" +" poll will end." +msgstr "" + +#: 63ea2e4d032942aa9b0412c8e86862a6 discord.poll.Poll.has_ended:1 of +msgid "" +"Checks if this poll has completely ended. Shortcut for " +":attr:`PollResults.is_finalized`, if available." +msgstr "" + +#: 307037856f4043509e0e2ea6ab1e1788 discord.poll.Poll.has_ended:3 of +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "" + +#: cab588e9a2574d4583001470cbd6d49d discord.poll.Poll.has_ended:4 of +msgid "Optional[:class:`bool`]" +msgstr "" + +#: b6b03dc921914dbe85dc2d2be6b6cb5c discord.poll.Poll.total_votes:1 of +msgid "" +"Shortcut for :meth:`PollResults.total_votes` This may not be precise if " +":attr:`is_finalized` is ``False``." +msgstr "" + +#: 9a0fdc68d36f4c10ac1bf87dfb8a303a discord.poll.Poll.total_votes:3 of +msgid "" +"The total number of votes on this poll if :attr:`results` is available, " +"otherwise ``None``." +msgstr "" + +#: 4bc8b97bc3104d30935148e3e21263d2 discord.poll.Poll.get_answer:1 of +msgid "Get a poll answer by ID." +msgstr "" + +#: 9c8376d158244c9881f918c37595e5a6 discord.poll.Poll.get_answer:4 of +msgid "The ID to search for." +msgstr "" + +#: ab496839c07a44458b623141c8adbda2 discord.poll.Poll.get_answer:7 of +msgid "The returned answer or ``None`` if not found." +msgstr "" + +#: ac1c66324a2a4f76a6be775792c276ec discord.poll.Poll.get_answer:8 of +msgid "Optional[:class:`.PollAnswer`]" +msgstr "" + +#: b9e53c629c9e4021938d3101f9108020 discord.poll.Poll.add_answer:1 of +msgid "Add an answer to this poll." +msgstr "" + +#: discord.poll.Poll.add_answer:7 f0853a888d3947bbaa38d45f88131502 of +msgid "The answer text. Maximum 55 characters." +msgstr "" + +#: 1a9558843dca496cb958afb3adb20a4d discord.poll.Poll.add_answer:10 +#: discord.poll.PollMedia:13 of +msgid "The answer's emoji." +msgstr "" + +#: 4c4cf6f10a384cfc880a5f42883f6373 discord.poll.Poll.add_answer:13 of +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "" + +#: a0d53028501b413b82ba75a394aae545 discord.poll.Poll.add_answer:14 of +msgid "You cannot add an answer to an existing poll." +msgstr "" + +#: 79943b0defc04dd7b076d3a3be3f3790 discord.poll.Poll.add_answer:15 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr "" + +#: discord.poll.Poll.add_answer:18 discord.poll.PollAnswer.voters:26 +#: e3ed22fcc48e492ba655a324fd22c8ab of +msgid "Examples" +msgstr "" + +#: 75de56964bf64f1d8fc7e0877d23ec0b discord.poll.Poll.add_answer:19 of +msgid "Regular usage ::" +msgstr "" + +#: 9dd4a3582245480195104a815db073ef discord.poll.Poll.add_answer:31 of +msgid "Chaining style ::" +msgstr "" + +#: 13088052a2d742f991adf8b074e2d093 discord.poll.Poll.end:1 of +msgid "" +"Immediately ends this poll, if attached to a message. Only doable by the " +"poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "" + +#: a64df6f6aa664e17aca4891da237f9de discord.poll.Poll.end:9 +#: discord.poll.PollAnswer.voters:22 of +msgid "This poll wasn't recieved from a message." +msgstr "" + +#: discord.poll.PollMedia:1 ffb86145dac0403086b43ea3e82fe8f5 of +msgid "Represents a poll media object that supports both questions and answers." +msgstr "" + +#: accc54dddd454268a0692f282ff316d1 discord.poll.PollMedia:7 of +msgid "" +"The question/answer text. May have up to 300 characters for questions and" +" 55 characters for answers." +msgstr "" + +#: b006fb5c6c854d799f871d8884228162 discord.poll.PollMedia:15 of +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "" + +#: cf9a1a1afdf34f12bf876e33bccf7739 discord.poll.PollAnswer:1 of +msgid "Represents a poll answer object." +msgstr "" + +#: discord.poll.PollAnswer:7 discord.poll.PollAnswerCount:7 +#: e709c6027c5e46c8bf07a344edadf14c of +msgid "" +"The answer's ID. It currently starts at ``1`` for the first answer, then " +"goes up sequentially. It may not be reliable to depend on this." +msgstr "" + +#: b3e15cbd16a74614a884d4e981789621 discord.poll.PollAnswer:14 of +msgid "The relevant media for this answer." +msgstr "" + +#: 32d401e253064f7cad83219924e2b9a8 discord.poll.PollAnswer:16 of +msgid ":class:`PollMedia`" +msgstr "" + +#: 740e7e072dfc46cc9d3842ce6572cbeb discord.PollAnswer.text:1 of +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "" + +#: 43371229509347538d72a881414b90e1 discord.PollAnswer.emoji:1 of +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "" + +#: 26fd8264a6f94ea9be9059f7006b6c63 discord.PollAnswer.count:1 of +msgid "This answer's vote count, if recieved from Discord." +msgstr "" + +#: bc21833cc8ae40d88034324574ffa7aa discord.poll.PollAnswer.voters:1 of +msgid "" +"Returns an :class:`AsyncIterator` representing the users that have voted " +"with this answer. Only works if this poll was recieved from Discord." +msgstr "" + +#: 583e4434932a41e5b3a269a6713a7fa2 discord.poll.PollAnswer.voters:4 of +msgid "" +"The ``after`` parameter must represent a member and meet the " +":class:`abc.Snowflake` abc." +msgstr "" + +#: b5997af254ee4259b0f34384a2799bc1 discord.poll.PollAnswer.voters:8 of +msgid "" +"The maximum number of results to return. If not provided, returns all the" +" users who voted with this answer." +msgstr "" + +#: daa91e5f499d467fbc3e9bbca91e4b3e discord.poll.PollAnswer.voters:13 of +msgid "For pagination, answers are sorted by member." +msgstr "" + +#: 01899695d46f4d1e8b1c2d94e2f745de discord.poll.PollAnswer.voters of +msgid "Yields" +msgstr "" + +#: 94211056fb704567a53471567e50f9fe discord.poll.PollAnswer.voters:16 of +msgid "" +"Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or " +"the user that has voted with this answer. The case where it can be a " +":class:`Member` is in a guild message context. Sometimes it can be a " +":class:`User` if the member has left the guild." +msgstr "" + +#: 64baeefd4bb8487082a15bc551e40738 discord.poll.PollAnswer.voters:21 of +msgid "Getting the voters for the answer failed." +msgstr "" + +#: discord.poll.PollAnswer.voters:23 ee17ca5d93ae4e32b5e43584dcdbcef6 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr "" + +#: 4be99a5a14964333b7e39865a359b0b5 discord.poll.PollAnswer.voters:27 of +msgid "Usage ::" +msgstr "" + +#: c6e55828fa284012bdc2208c68d12e4c discord.poll.PollAnswer.voters:32 of +msgid "Flattening into a list: ::" +msgstr "" + +#: c101fc73539645ef943416c6f35acff9 discord.poll.PollAnswerCount:1 of +msgid "Represents a poll answer count object." +msgstr "" + +#: discord.poll.PollAnswerCount:14 f48a6afded354efb9ad758c1aab3db6d of +msgid "The number of votes for this answer." +msgstr "" + +#: 7d1d57e3a567465c814288bb92f9de2b discord.poll.PollAnswerCount:20 of +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "" + +#: 0b2a540dde524344979b5afd0f3f6f3d discord.poll.PollResults:1 of +msgid "Represents a poll results object." +msgstr "" + +#: aa347e9ae60b498abf39d69670fbb686 discord.poll.PollResults:7 of +msgid "" +"Whether the poll has ended and all answer counts have been precisely " +"tallied." +msgstr "" + +#: cd87d8d6808b46b0bfe7d013d6331be9 discord.poll.PollResults:13 of +msgid "" +"A list of counts for each answer. If an answer isn't included, it has no " +"votes." +msgstr "" + +#: 471754e81c27452484eaf708e3581229 discord.poll.PollResults:15 of +msgid "List[:class:`PollAnswerCount`]" +msgstr "" + +#: 117cb59ea6cc4530a8c119572b675f9e discord.poll.PollResults.total_votes:1 of +msgid "" +"Get the total number of votes across all answers. This may not be " +"accurate if :attr:`is_finalized` is ``False``." +msgstr "" + +#: 935d9c5a268d4132998d5ab2b779a4a0 discord.poll.PollResults.total_votes:3 of +msgid "The total number of votes on this poll." +msgstr "" + +#: ../../api/data_classes.rst:132 43ab35acc0f9434b8e53132a073d8d22 +msgid "Flags" +msgstr "" + +#: b6506378885b40b386e202d88e1b6b50 discord.flags.MemberCacheFlags:1 of +msgid "Controls the library's cache policy when it comes to members." +msgstr "" + +#: d52ae24e27c848d8a93fcd4d63ed62ab discord.flags.MemberCacheFlags:3 of +msgid "" +"This allows for finer grained control over what members are cached. Note " +"that the bot's own member is always cached. This class is passed to the " +"``member_cache_flags`` parameter in :class:`Client`." +msgstr "" + +#: 1934b928b4124bf29bf6bd8efee2c8b7 discord.flags.MemberCacheFlags:7 of +msgid "" +"Due to a quirk in how Discord works, in order to ensure proper cleanup of" +" cache resources it is recommended to have :attr:`Intents.members` " +"enabled. Otherwise, the library cannot know when a member leaves a guild " +"and is thus unable to clean up after itself." +msgstr "" + +#: 100fc3ea47604bbdb0ab983d056eb915 discord.flags.MemberCacheFlags:15 of +msgid "The default value is all flags enabled." +msgstr "" + +#: cfd924b2696a41d7b71920f52b279979 discord.flags.MemberCacheFlags.all:1 of +msgid "" +"A factory method that creates a :class:`MemberCacheFlags` with everything" +" enabled." +msgstr "" + +#: 8bb674b4b37b49d39b2e4c552f123f11 discord.flags.MemberCacheFlags.all:4 +#: discord.flags.MemberCacheFlags.none:4 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr "" + +#: discord.flags.MemberCacheFlags.none:1 ec84f2c7145b46fda14ed34b3383678f of +msgid "" +"A factory method that creates a :class:`MemberCacheFlags` with everything" +" disabled." +msgstr "" + +#: ../../docstring 1e599f7b72f84d17810aeec4385ebe1a +#: discord.MemberCacheFlags.voice:1 of +msgid "Whether to cache members that are in voice." +msgstr "" + +#: ../../docstring b83d29d1e0c5490080d48db4692e75c7 +#: discord.MemberCacheFlags.voice:3 of +msgid "This requires :attr:`Intents.voice_states`." +msgstr "" + +#: ../../docstring 29cff10544cf45c8a99e777641354826 +#: discord.MemberCacheFlags.voice:5 of +msgid "Members that leave voice are no longer cached." +msgstr "" + +#: ../../docstring a2aadd5a8cd640cd8d80de55c70cb7be +#: discord.MemberCacheFlags.joined:1 of +msgid "" +"Whether to cache members that joined the guild or are chunked as part of " +"the initial log in flow." +msgstr "" + +#: ../../docstring 0d84624c15994c2a971384631903a284 +#: discord.MemberCacheFlags.joined:4 of +msgid "This requires :attr:`Intents.members`." +msgstr "" + +#: ../../docstring 199c6d64c1dd449bb70c5456385611ff +#: discord.MemberCacheFlags.joined:6 of +msgid "Members that leave the guild are no longer cached." +msgstr "" + +#: ../../docstring cd9de6171ee249e386bcd743296c86c1 +#: discord.MemberCacheFlags.interaction:1 of +msgid "Whether to cache members obtained through interactions." +msgstr "" + +#: ../../docstring b69154ada3f34b8cb44ac06ab84141a2 +#: discord.MemberCacheFlags.interaction:3 of +msgid "" +"This includes members received through :class:`discord.Interaction` and " +":class:`discord.Option`." +msgstr "" + +#: 71bce589850840799aef69fb53812713 +#: discord.flags.MemberCacheFlags.from_intents:1 of +msgid "" +"A factory method that creates a :class:`MemberCacheFlags` based on the " +"currently selected :class:`Intents`." +msgstr "" + +#: d8f4814af70a4ca685de8d66a3618a1b +#: discord.flags.MemberCacheFlags.from_intents:5 of +msgid "The intents to select from." +msgstr "" + +#: discord.flags.MemberCacheFlags.from_intents:8 +#: eae9acf293d74ae296ae74f8938b1cca of +msgid "The resulting member cache flags." +msgstr "" + +#: discord.flags.MemberCacheFlags.from_intents:9 +#: f8dfaee97e7d4a20a85699e42ecaa334 of +msgid ":class:`MemberCacheFlags`" +msgstr "" + +#: a1aa35ec632b4627b69b3e64b95188e3 discord.flags.ApplicationFlags:1 of +msgid "Wraps up the Discord Application flags." +msgstr "" + +#: 2548906fb1c548c3817b77801d35027f discord.flags.ApplicationFlags:7 of +msgid "Checks if two ApplicationFlags are equal." +msgstr "" + +#: d0b32f0c6e85498a948b585d05a78060 discord.flags.ApplicationFlags:10 of +msgid "Checks if two ApplicationFlags are not equal." +msgstr "" + +#: 3851f49fd12d49ba93ddefde1a9b5c8b discord.flags.ApplicationFlags:31 +#: discord.flags.AttachmentFlags:31 discord.flags.ChannelFlags:31 +#: discord.flags.MemberFlags:31 discord.flags.PublicUserFlags:31 +#: discord.flags.RoleFlags:31 discord.flags.SKUFlags:31 of +msgid "" +"Returns an iterator of ``(name, value)`` pairs. This allows it to be, for" +" example, constructed as a dict or a list of pairs. Note that aliases are" +" not shown." +msgstr "" + +#: ../../docstring 7ac241b169894315bbfd2621597de88b +#: discord.ApplicationFlags.managed_emoji:1 of +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "" + +#: ../../docstring 149b5addc60848a690ff6ed3364cd720 +#: discord.ApplicationFlags.group_dm_create:1 of +msgid "Returns ``True`` if the application can create group DMs." +msgstr "" + +#: ../../docstring 84e63c5c48ba4eb5ae1dabaa258759da +#: discord.ApplicationFlags.application_auto_moderation_rule_create_badge:1 of +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "" + +#: ../../docstring discord.ApplicationFlags.rpc_has_connected:1 +#: e6a9990ba3d646e388c64014e1e75a0f of +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "" + +#: ../../docstring 8bfd56a90b0740749399b09e8492b2c3 +#: discord.ApplicationFlags.gateway_presence:1 of +msgid "" +"Returns ``True`` if the application is verified and is allowed to receive" +" presence information over the gateway." +msgstr "" + +#: ../../docstring 031b14e91f46471b9c1caa3c143fe24c +#: discord.ApplicationFlags.gateway_presence_limited:1 of +msgid "" +"Returns ``True`` if the application is allowed to receive limited " +"presence information over the gateway." +msgstr "" + +#: ../../docstring b61c0d3c0ddc4019917e3b2c9fe5838e +#: discord.ApplicationFlags.gateway_guild_members:1 of +msgid "" +"Returns ``True`` if the application is verified and is allowed to receive" +" guild members information over the gateway." +msgstr "" + +#: ../../docstring d6f247075dcd4acd9b36925e53626cc5 +#: discord.ApplicationFlags.gateway_guild_members_limited:1 of +msgid "" +"Returns ``True`` if the application is allowed to receive limited guild " +"members information over the gateway." +msgstr "" + +#: ../../docstring 800775621ea646a5ab3d7aa7241a312f +#: discord.ApplicationFlags.gateway_message_content_limited:1 +#: discord.ApplicationFlags.verification_pending_guild_limit:1 of +msgid "" +"Returns ``True`` if the application is currently pending verification and" +" has hit the guild limit." +msgstr "" + +#: ../../docstring dc09c558ec6541459a558f676916b5e3 +#: discord.ApplicationFlags.embedded:1 of +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "" + +#: ../../docstring 0781df4a164c450a824b0c465ac4ab7d +#: discord.ApplicationFlags.gateway_message_content:1 of +msgid "" +"Returns ``True`` if the application is allowed to read message contents " +"in guilds." +msgstr "" + +#: ../../docstring discord.ApplicationFlags.app_commands_badge:1 +#: e59991780d57460db3e98a50cf7bdf3a of +msgid "" +"Returns ``True`` if the application has registered at least one global " +"application command, and by extension has the badge." +msgstr "" + +#: ../../docstring 3f7a918d6bfb4ce4b696d4e6ebe3e353 +#: discord.ApplicationFlags.active:1 of +msgid "" +"Returns ``True`` if the app is considered active. Applications are " +"considered active if they have had any command executions in the past 30 " +"days." +msgstr "" + +#: a4bd098e1fc34c008219770e62a06a99 discord.flags.SystemChannelFlags:1 of +msgid "Wraps up a Discord system channel flag value." +msgstr "" + +#: discord.flags.SystemChannelFlags:3 f486929f646446b8b0d2b87f181db124 of +msgid "" +"Similar to :class:`Permissions`\\, the properties provided are two way. " +"You can set and retrieve individual bits using the properties as if they " +"were regular bools. This allows you to edit the system flags easily." +msgstr "" + +#: d854e922bf584117a013f976c9b28415 discord.flags.MessageFlags:40 +#: discord.flags.PublicUserFlags:39 discord.flags.RoleFlags:39 +#: discord.flags.SystemChannelFlags:43 of +msgid "" +"The raw value. This value is a bit array field of a 53-bit integer " +"representing the currently available flags. You should query flags via " +"the properties rather than using this raw value." +msgstr "" + +#: ../../docstring b8ee9a8232a8404a9b7465ad566dcc3b +#: discord.SystemChannelFlags.join_notifications:1 of +msgid "" +"Returns ``True`` if the system channel is used for member join " +"notifications." +msgstr "" + +#: ../../docstring 30e1356e12bc4d2db6d115c6dfbb702a +#: discord.SystemChannelFlags.premium_subscriptions:1 of +msgid "" +"Returns ``True`` if the system channel is used for \"Nitro boosting\" " +"notifications." +msgstr "" + +#: ../../docstring c860a7da688f4a3eba329b0f5a44fe60 +#: discord.SystemChannelFlags.guild_reminder_notifications:1 of +msgid "" +"Returns ``True`` if the system channel is used for server setup helpful " +"tips notifications." +msgstr "" + +#: ../../docstring a12de3bb2ee84f1dbee7cc3d66dc1c5a +#: discord.SystemChannelFlags.join_notification_replies:1 of +msgid "" +"Returns ``True`` if the system channel is allowing member join sticker " +"replies." +msgstr "" + +#: 10b8cc67e79340b8a4ad420ef92f838a discord.flags.MessageFlags:1 of +msgid "Wraps up a Discord Message flag value." +msgstr "" + +#: 480c78b484734583bd294f3bc094cfa4 discord.flags.MessageFlags:3 of +msgid "See :class:`SystemChannelFlags`." +msgstr "" + +#: ../../docstring 6d39d51a10534ed09d3a2c79eec76696 +#: discord.MessageFlags.crossposted:1 of +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "" + +#: ../../docstring 649ea51ce00e42e1ad43640c7458e6b0 +#: discord.MessageFlags.is_crossposted:1 of +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "" + +#: ../../docstring 2a7cde95910f400596d570b49bfed689 +#: discord.MessageFlags.suppress_embeds:1 of +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "" + +#: ../../docstring 70ea37bce38b4f5fbbbeb08d57268b75 +#: discord.MessageFlags.source_message_deleted:1 of +msgid "" +"Returns ``True`` if the source message for this crosspost has been " +"deleted." +msgstr "" + +#: ../../docstring bf30f3b5a2484302b7d0c3ab72dba8c3 +#: discord.MessageFlags.urgent:1 of +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "" + +#: ../../docstring d317088a0a64477588f5743f245fceaf +#: discord.MessageFlags.urgent:3 of +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "" + +#: ../../docstring 77a6e2aeea7940edb81b9265feb50d2f +#: discord.MessageFlags.has_thread:1 of +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "" + +#: ../../docstring 0a77c56b6c474a99a5cd0657b7f7fc02 +#: discord.MessageFlags.ephemeral:1 of +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "" + +#: ../../docstring 336d134a2b53410bb583d939dc1cecd4 +#: discord.MessageFlags.loading:1 of +msgid "Returns ``True`` if the source message is deferred." +msgstr "" + +#: ../../docstring 57c75b7855894e6fa76c6bda80588672 +#: discord.MessageFlags.loading:3 of +msgid "The user sees a 'thinking' state." +msgstr "" + +#: ../../docstring 67057e75388e4edb90308a2fb5c13697 +#: discord.MessageFlags.failed_to_mention_some_roles_in_thread:1 of +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "" + +#: ../../docstring 3306149588ed40d5b847b2100e63721a +#: discord.MessageFlags.suppress_notifications:1 of +msgid "" +"Returns ``True`` if the source message does not trigger push and desktop " +"notifications." +msgstr "" + +#: ../../docstring 1765bd17b14d4dfbbb4f1981def660e8 +#: discord.MessageFlags.suppress_notifications:3 of +msgid "Users will still receive mentions." +msgstr "" + +#: ../../docstring 8dfb19e31e824f7482b22c70839d3cfe +#: discord.MessageFlags.is_voice_message:1 of +msgid "Returns ``True`` if this message is a voice message." +msgstr "" + +#: 8dc3ce8bf77f4a4684ab876af0ddf039 discord.flags.AttachmentFlags:1 of +msgid "Wraps up the Discord Attachment flags." +msgstr "" + +#: ../../docstring discord.AttachmentFlags.is_clip:1 +#: eeac692215814c7a97cb5a368f5e9411 of +msgid "Returns ``True`` if the attachment is a clip." +msgstr "" + +#: ../../docstring 9e8032c720724ec2889d8c49b9305286 +#: discord.AttachmentFlags.is_thumbnail:1 of +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "" + +#: ../../docstring 4ddb09d9637e4f49b0d1b3ca90f1a568 +#: discord.AttachmentFlags.is_remix:1 of +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "" + +#: 33afb8ca627c4db79bb2365e319224ca discord.flags.PublicUserFlags:1 of +msgid "Wraps up the Discord User Public flags." +msgstr "" + +#: 5649c119f893493caabba18e103f07ad discord.flags.PublicUserFlags:7 of +msgid "Checks if two PublicUserFlags are equal." +msgstr "" + +#: 6691bb86ba0b404ba18a2bb137eb7d30 discord.flags.PublicUserFlags:10 of +msgid "Checks if two PublicUserFlags are not equal." +msgstr "" + +#: ../../docstring 9b746d60bed942a1950241d77759f1a7 +#: discord.PublicUserFlags.staff:1 of +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "" + +#: ../../docstring 4d18d90b42db4daaa8b711452f4a0d2d +#: discord.PublicUserFlags.partner:1 of +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "" + +#: ../../docstring 46589090794347e886aa5de6ceee28fb +#: discord.PublicUserFlags.hypesquad:1 of +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "" + +#: ../../docstring discord.PublicUserFlags.bug_hunter:1 +#: fccf1e186e094ebfaa00fbfb54e2fa3c of +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "" + +#: ../../docstring 2984d09fb2534bbda92f69564035b676 +#: discord.PublicUserFlags.premium_promo_dismissed:1 of +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "" + +#: ../../docstring aa19d8a150674cddbd5c6a0a025bcc4a +#: discord.PublicUserFlags.hypesquad_bravery:1 of +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "" + +#: ../../docstring 49e3b8c90259460298e42707a0ef84b1 +#: discord.PublicUserFlags.hypesquad_brilliance:1 of +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "" + +#: ../../docstring discord.PublicUserFlags.hypesquad_balance:1 +#: f8e077f7732e4742b902ed3298ce6bde of +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "" + +#: ../../docstring discord.PublicUserFlags.early_supporter:1 +#: e29056e2fb184c68b27a137402116f08 of +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "" + +#: ../../docstring 4d6fedf25ae24ef484d125962d81e0d9 +#: discord.PublicUserFlags.team_user:1 of +msgid "Returns ``True`` if the user is a Team User." +msgstr "" + +#: ../../docstring discord.PublicUserFlags.system:1 +#: e4f9559c2f6944abad4e86bb507e3511 of +msgid "" +"Returns ``True`` if the user is a system user (i.e. represents Discord " +"officially)." +msgstr "" + +#: ../../docstring c8a9c76c50394d37a2bdf94ea0ccb8f5 +#: discord.PublicUserFlags.bug_hunter_level_2:1 of +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "" + +#: ../../docstring ae50f2aeb3604bef956017622574b740 +#: discord.PublicUserFlags.verified_bot:1 of +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "" + +#: ../../docstring 1adf9343bab7420e940b41a8e38ecfe8 +#: discord.PublicUserFlags.verified_bot_developer:1 of +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "" + +#: ../../docstring b8c67f65a3664475aa8de21005c25dc1 +#: discord.PublicUserFlags.early_verified_bot_developer:1 of +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "" + +#: ../../docstring 47a31c6e967f49cbbd767def4ed0befc +#: discord.PublicUserFlags.discord_certified_moderator:1 of +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "" + +#: ../../docstring 36db2efdfac943f8baf70ac04cc9d31d +#: discord.PublicUserFlags.bot_http_interactions:1 of +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "" + +#: ../../docstring discord.PublicUserFlags.active_developer:1 +#: f350510626714f79b476a615b61db38c of +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "" + +#: discord.flags.PublicUserFlags.all:1 e4bc6b0210804222bd91863723951907 of +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "" + +#: 650deb70a83e4df5a896568198f3618a discord.flags.PublicUserFlags.all:4 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr "" + +#: 7df90c872a784fe58cfc7e1be05d6805 discord.flags.ChannelFlags:1 of +msgid "Wraps up the Discord Channel flags." +msgstr "" + +#: 2521c5e0a2a1484e9e698431323eefe8 discord.flags.ChannelFlags:7 of +msgid "Checks if two ChannelFlags are equal." +msgstr "" + +#: discord.flags.ChannelFlags:10 ffe02de519314d17a878ee53f189096d of +msgid "Checks if two ChannelFlags are not equal." +msgstr "" + +#: ../../docstring 327561b0cace4239ac00b172a83525a7 +#: discord.ChannelFlags.pinned:1 of +msgid "" +"Returns ``True`` if the thread is pinned to the top of its parent forum " +"channel." +msgstr "" + +#: ../../docstring 7f91812da4014ead9e3be4e675f7e057 +#: discord.ChannelFlags.require_tag:1 of +msgid "" +"Returns ``True`` if a tag is required to be specified when creating a " +"thread in a :class:`ForumChannel`." +msgstr "" + +#: 32012591b7c94fc08af1f60088606c64 discord.flags.SKUFlags:1 of +msgid "Wraps up the Discord SKU flags." +msgstr "" + +#: discord.flags.SKUFlags:7 f35d7acec4bf4de78098e1c6d19d5151 of +msgid "Checks if two SKUFlags are equal." +msgstr "" + +#: dea4d42fa7ca4a229e039f2140418623 discord.flags.SKUFlags:10 of +msgid "Checks if two SKUFlags are not equal." +msgstr "" + +#: ../../docstring 027a6ab64f424916937c03f62e7ce9b5 +#: discord.SKUFlags.available:1 of +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "" + +#: ../../docstring 81df38454e7f4f4a880120a036e9db35 +#: discord.SKUFlags.guild_subscription:1 of +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "" + +#: ../../docstring discord.SKUFlags.user_subscription:1 +#: eea2e37ea19042af87b4d63827d12ead of +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "" + +#: 0afe05464fe04d56a027d0cd3c9db82a discord.flags.MemberFlags:1 of +msgid "Wraps up the Discord Member flags." +msgstr "" + +#: d080f67e546140669b711c0dbbfcc0b0 discord.flags.MemberFlags:7 of +msgid "Checks if two MemberFlags are equal." +msgstr "" + +#: 90a926f55a614819835583819864e090 discord.flags.MemberFlags:10 of +msgid "Checks if two MemberFlags are not equal." +msgstr "" + +#: ../../docstring 2c49440173f94a6e86ae552f1c7630b4 +#: discord.MemberFlags.did_rejoin:1 of +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "" + +#: ../../docstring discord.MemberFlags.completed_onboarding:1 +#: f716a9f2d5ed4fe396bc2744eeca2d3c of +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "" + +#: ../../docstring 73740166295048a08a0cfddbe7978d73 +#: discord.MemberFlags.bypasses_verification:1 of +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "" + +#: ../../docstring discord.MemberFlags.bypasses_verification:5 +#: fda7930c8a7c4c91abf604a4b839e60d of +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "" + +#: ../../docstring 834d998270134606aca02e4bb572587f +#: discord.MemberFlags.started_onboarding:1 of +msgid "Returns ``True`` if the member has started onboarding." +msgstr "" + +#: a98c247c252c4ca589403b8194c19b47 discord.flags.RoleFlags:1 of +msgid "Wraps up the Discord Role flags." +msgstr "" + +#: 45517fcabe5845d6ae9bc1ae96508905 discord.flags.RoleFlags:7 of +msgid "Checks if two RoleFlags are equal." +msgstr "" + +#: a2547963b0e14605b352befb4ba8e266 discord.flags.RoleFlags:10 of +msgid "Checks if two RoleFlags are not equal." +msgstr "" + +#: ../../docstring bd41c11c44b445609dabf6fdee86122c +#: discord.RoleFlags.in_prompt:1 of +msgid "" +"Returns ``True`` if the role is selectable in one of the guild's " +":class:`~discord.OnboardingPrompt`." +msgstr "" + +#: ../../api/data_classes.rst:185 4d2438b9745240cd93782603979ee00b +msgid "Colour" +msgstr "" + +#: 0bc56a88a55a448eba210de89aecb3ec discord.colour.Colour:1 of +msgid "" +"Represents a Discord role colour. This class is similar to a (red, green," +" blue) :class:`tuple`." +msgstr "" + +#: af377132a7a245d282a7cb5f72b98154 discord.colour.Colour:4 of +msgid "There is an alias for this called Color." +msgstr "" + +#: 95e2e6b9db564bfd9a10a6d0eb1a1c4f discord.colour.Colour:10 of +msgid "Checks if two colours are equal." +msgstr "" + +#: a6b3fc12993a4cb192fcf2c9cfa96e4b discord.colour.Colour:14 of +msgid "Checks if two colours are not equal." +msgstr "" + +#: cc84aa4e5a66474da6426208b5a7b8a7 discord.colour.Colour:18 of +msgid "Return the colour's hash." +msgstr "" + +#: 7ff8810602fe4d239a77dc15427f234e discord.colour.Colour:22 of +msgid "Returns the hex format for the colour." +msgstr "" + +#: 1e7a0f776972463ca7787176b0f12aaf discord.colour.Colour:26 of +msgid "Returns the raw colour value." +msgstr "" + +#: discord.colour.Colour:30 edb32b320cb342c89417ab0c470aadb4 of +msgid "The raw integer colour value." +msgstr "" + +#: 2c8372e38d3243dea387feb00d363abf discord.Colour.r:1 of +msgid "Returns the red component of the colour." +msgstr "" + +#: 930927fd51f84af48c7f6523a2c27036 discord.Colour.g:1 of +msgid "Returns the green component of the colour." +msgstr "" + +#: 6a5c671c23a4455cae45cf7b86841334 discord.Colour.b:1 of +msgid "Returns the blue component of the colour." +msgstr "" + +#: 0258dd8927a5476ea31d85d4a343a00f discord.colour.Colour.to_rgb:1 of +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "" + +#: a239b08c195d4cdeb39113116b69730e discord.colour.Colour.to_rgb:4 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, " +"\\:py\\:class\\:\\`int\\`\\]`" +msgstr "" + +#: 63847d00bfc3402f9dddbc0fdb8fc12f discord.colour.Colour.from_rgb:1 of +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "" + +#: a0f8ca655ace4281904460b701a12e9d discord.colour.Colour.blue:4 +#: discord.colour.Colour.blurple:4 discord.colour.Colour.dark_blue:4 +#: discord.colour.Colour.dark_gold:4 discord.colour.Colour.dark_green:4 +#: discord.colour.Colour.dark_grey:4 discord.colour.Colour.dark_magenta:4 +#: discord.colour.Colour.dark_orange:4 discord.colour.Colour.dark_purple:4 +#: discord.colour.Colour.dark_red:4 discord.colour.Colour.dark_teal:4 +#: discord.colour.Colour.darker_grey:4 discord.colour.Colour.default:4 +#: discord.colour.Colour.embed_background:14 discord.colour.Colour.from_hsv:9 +#: discord.colour.Colour.from_rgb:9 discord.colour.Colour.gold:4 +#: discord.colour.Colour.green:4 discord.colour.Colour.greyple:4 +#: discord.colour.Colour.light_grey:4 discord.colour.Colour.lighter_grey:4 +#: discord.colour.Colour.magenta:4 discord.colour.Colour.og_blurple:4 +#: discord.colour.Colour.orange:4 discord.colour.Colour.purple:4 +#: discord.colour.Colour.random:16 discord.colour.Colour.red:4 +#: discord.colour.Colour.teal:4 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: 1d2fd978b53341d1a9951c10e8409fa8 discord.colour.Colour.from_hsv:1 of +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "" + +#: discord.colour.Colour.default:1 f6fe4b8aaf4a4059a6cb38c6c3750f4d of +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "" + +#: b6244152aeb844b0b3a073594ad4f462 discord.colour.Colour.random:1 of +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "" + +#: discord.colour.Colour.random:5 f72e38aaf95f4a55909f8f47e528047d of +msgid "" +"The random algorithm works by choosing a colour with a random hue but " +"with maxed out saturation and value." +msgstr "" + +#: 7e753ac524734679a23d66e7eca10609 discord.colour.Colour.random:11 of +msgid "" +"The seed to initialize the RNG with. If ``None`` is passed the default " +"RNG is used. .. versionadded:: 1.7" +msgstr "" + +#: 5733fdce535445dabd34d11f1981bffb discord.colour.Colour.random:11 of +msgid "" +"The seed to initialize the RNG with. If ``None`` is passed the default " +"RNG is used." +msgstr "" + +#: discord.colour.Colour.teal:1 ffc576a6a0b647c994a91fc1ab89147f of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x1abc9c``." +msgstr "" + +#: 019ad6d562fb4868aebb8f80fbaf2628 discord.colour.Colour.dark_teal:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x11806a``." +msgstr "" + +#: 2809c53d29824df69166201321bc9fec discord.colour.Colour.brand_green:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x57F287``. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: 6cc5d6aadbb64f25b32f9664d58ed82e discord.colour.Colour.green:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x2ecc71``." +msgstr "" + +#: 4ac07d277e394779972f7a7047b96483 discord.colour.Colour.dark_green:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x1f8b4c``." +msgstr "" + +#: 1444ec89e41c4f6ab5ed395fe2d8050c discord.colour.Colour.blue:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x3498db``." +msgstr "" + +#: 2519110c724f42b2b34d51845e341702 discord.colour.Colour.dark_blue:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x206694``." +msgstr "" + +#: 8c9e35fbb1d540fd8a4191919032a05d discord.colour.Colour.purple:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x9b59b6``." +msgstr "" + +#: b3537fcb5c5e400faa8fa6d3adc61e0f discord.colour.Colour.dark_purple:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x71368a``." +msgstr "" + +#: b9b81e21116143db998500b2475dc29b discord.colour.Colour.magenta:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xe91e63``." +msgstr "" + +#: a3ddc438b7fb47a8892de380f8a38f52 discord.colour.Colour.dark_magenta:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xad1457``." +msgstr "" + +#: 47a39aa405ea4c29a2c3f3987ce0d07e discord.colour.Colour.gold:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xf1c40f``." +msgstr "" + +#: a43570fb88f84b3fa081555ded31e601 discord.colour.Colour.dark_gold:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xc27c0e``." +msgstr "" + +#: discord.colour.Colour.orange:1 e4488bf9b87f46dd8b00d231510a0d11 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xe67e22``." +msgstr "" + +#: 7fb3e4c7e3624964a72d3ca847d50528 discord.colour.Colour.dark_orange:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xa84300``." +msgstr "" + +#: bf01a50532b5404dae7505a55a88a477 discord.colour.Colour.brand_red:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xED4245``. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: 4eeea91e793a4fc19914d97c20797aab discord.colour.Colour.red:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xe74c3c``." +msgstr "" + +#: c9ffe0ca315247aeb2070b757416897c discord.colour.Colour.dark_red:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x992d22``." +msgstr "" + +#: 5e27ef808d91425e970ae6662337c2b5 discord.colour.Colour.lighter_grey:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x95a5a6``." +msgstr "" + +#: 20eb2a0175154749974a5ddcaea1c505 discord.colour.Colour.dark_grey:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x607d8b``." +msgstr "" + +#: c72d480b7c9149d6ac778be8a1432ded discord.colour.Colour.light_grey:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x979c9f``." +msgstr "" + +#: 6f66401bfb6b462090fc239b5f121de9 discord.colour.Colour.darker_grey:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x546e7a``." +msgstr "" + +#: a8a91c59f7f041378f7c8df6b9ba5d7f discord.colour.Colour.og_blurple:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x7289da``." +msgstr "" + +#: c00febfa573b48cab072245d343ad67b discord.colour.Colour.blurple:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x5865F2``." +msgstr "" + +#: 8dd2bbd3142e43648a5342be5b997b2d discord.colour.Colour.greyple:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x99aab5``." +msgstr "" + +#: discord.colour.Colour.dark_theme:1 ea6a540eff9141a58a4abebcb923706a of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0x36393F``. This will appear transparent on Discord's dark theme. " +":rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: b662095d005e4d848cdbb33fbcc79457 discord.colour.Colour.fuchsia:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xEB459E``. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: d041d59442644a0597c6274311bc6482 discord.colour.Colour.yellow:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xFEE75C``. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: 9082218ea3464ffb99c07f1fddb70e17 discord.colour.Colour.nitro_pink:1 of +msgid "" +"A factory method that returns a :class:`Colour` with a value of " +"``0xf47fff``. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "" + +#: 1a28ea6d58c74dc396e00736389a7fe5 discord.colour.Colour.embed_background:1 of +msgid "" +"A factory method that returns a :class:`Colour` corresponding to the " +"embed colours on discord clients, with a value of:" +msgstr "" + +#: 7fb2e3dde8594c9d839efec27ed4f7a6 discord.colour.Colour.embed_background:4 of +msgid "``0x2B2D31`` (dark)" +msgstr "" + +#: 36ab5f667d484968a82596cffbe4c7cc discord.colour.Colour.embed_background:5 of +msgid "``0xEEEFF1`` (light)" +msgstr "" + +#: 0110f69fe3ed402abf89c0ba8051e189 discord.colour.Colour.embed_background:6 of +msgid "``0x000000`` (amoled)." +msgstr "" + +#: d72641880fdd4598876dd1a82c6e7d8f discord.colour.Colour.embed_background:11 +#: of +msgid "" +"The theme colour to apply, must be one of \"dark\", \"light\", or " +"\"amoled\"." +msgstr "" + +#: ../../api/data_classes.rst:193 9905f7d99ac846c088e3402bdc9a380a +msgid "Activity" +msgstr "" + +#: c52db67ea78d414fa4300f7be0054f5a discord.activity.Activity:1 of +msgid "Represents an activity in Discord." +msgstr "" + +#: 54f2215d0c5041639c16cfe8b6f42717 discord.activity.Activity:3 of +msgid "" +"This could be an activity such as streaming, playing, listening or " +"watching." +msgstr "" + +#: discord.activity.Activity:6 e729d11740df48e5bc828e39978e4180 of +msgid "" +"For memory optimisation purposes, some activities are offered in slimmed " +"down versions:" +msgstr "" + +#: bd8eef39e9e8469488008ac99a754b70 discord.activity.Activity:9 +#: discord.activity.BaseActivity:7 of +msgid ":class:`Game`" +msgstr "" + +#: 5304d830379f4e10b5bf07f5239cc960 discord.activity.Activity:10 +#: discord.activity.BaseActivity:8 of +msgid ":class:`Streaming`" +msgstr "" + +#: discord.activity.Activity:14 f1a64e72ab044453a26f93ef99cf7fe9 of +msgid "The application ID of the game." +msgstr "" + +#: 2a70cf7691b54a0688e7d533bd4bebf6 discord.activity.Activity:20 of +msgid "The name of the activity." +msgstr "" + +#: 841863bc00d34766894f5836500f6ced discord.activity.Activity:26 of +msgid "A stream URL that the activity could be doing." +msgstr "" + +#: 80e09c77ef794d7b85723a1454ad2baf discord.activity.Activity:32 of +msgid "The type of activity currently being done." +msgstr "" + +#: 2b20ab734fe344d5a8cea26cd6e575d5 discord.activity.Activity:34 of +msgid ":class:`ActivityType`" +msgstr "" + +#: 6e859884311d44dbac604d61a1b31e7f discord.activity.Activity:38 of +msgid "The user's current party status or text used for a custom status." +msgstr "" + +#: d879aa74129d4958b85d73b8adede6f7 discord.activity.Activity:44 of +msgid "The detail of the user's current activity." +msgstr "" + +#: 0dae68955393486393daf4ec2426aa22 discord.activity.Activity:50 of +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "" + +#: 7dfd4bc9fbcd46bc908a24168eaa3524 discord.activity.Activity:52 of +msgid "" +"``start``: Corresponds to when the user started doing the activity in " +"milliseconds since Unix epoch." +msgstr "" + +#: 603680d7a4734e318b74294bb5d17cae discord.activity.Activity:54 of +msgid "" +"``end``: Corresponds to when the user will finish doing the activity in " +"milliseconds since Unix epoch." +msgstr "" + +#: 3afc0211c73c4d1da98f985be927ec34 discord.activity.Activity:57 of +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "" + +#: 90cf228cb518423fa1fbcbe0ea6ca047 discord.activity.Activity:61 of +msgid "" +"A dictionary representing the images and their hover text of an activity." +" It contains the following optional keys:" +msgstr "" + +#: 2d84cc8fd7454346a7eee48a3fc9b69c discord.activity.Activity:64 of +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "" + +#: 2963e1126d634fb99d4f2c8854ad01e1 discord.activity.Activity:65 of +msgid "" +"``large_text``: A string representing the text when hovering over the " +"large image asset." +msgstr "" + +#: 6974ca4a73a842aa9cee3f5b2a6b9d75 discord.activity.Activity:66 of +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "" + +#: 7694677fe39f4f47b2cb64fd3ef8873d discord.activity.Activity:67 of +msgid "" +"``small_text``: A string representing the text when hovering over the " +"small image asset." +msgstr "" + +#: 5eba8079bdca4d1ebd1953ae49348f0f discord.activity.Activity:69 +#: discord.activity.Streaming:61 of +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "" + +#: 7100a7a2fdb04e349a841242cfca9c8a discord.activity.Activity:73 of +msgid "" +"A dictionary representing the activity party. It contains the following " +"optional keys:" +msgstr "" + +#: 926c2d9fe15b420ea9db9043b0d00e30 discord.activity.Activity:75 of +msgid "``id``: A string representing the party ID." +msgstr "" + +#: 987fcee3a24b4da188c6dd26f449db8a discord.activity.Activity:76 of +msgid "" +"``size``: A list of up to two integer elements denoting (current_size, " +"maximum_size)." +msgstr "" + +#: 90abebc7d5ba4bc6a3f72b1c0bfa3061 discord.activity.Activity:78 of +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "" + +#: 119ad37b11cb4c86ab11f49c8205fe40 discord.activity.Activity:82 of +msgid "" +"A list of dictionaries representing custom buttons shown in a rich " +"presence. Each dictionary contains the following keys:" +msgstr "" + +#: discord.activity.Activity:85 fee7d5966539463dbc09ba4d777dc4c5 of +msgid "``label``: A string representing the text shown on the button." +msgstr "" + +#: discord.activity.Activity:86 e934ad3fb7514285a2551153ebba45df of +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "" + +#: discord.activity.Activity:90 e9b5e058928b4b1ca13762463fa83073 of +msgid "" +"Bots cannot access a user's activity button URLs. Therefore, the type of " +"this attribute will be List[:class:`str`] when received through the " +"gateway." +msgstr "" + +#: 32efb19b998f47149b9c36a635d0e430 discord.activity.Activity:95 of +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "" + +#: 1f065119b988464eb863d1f164649246 discord.activity.Activity:99 of +msgid "The emoji that belongs to this activity." +msgstr "" + +#: b84d01ced9aa4d4d87d8a0ebe947641d discord.activity.Activity:101 +#: discord.activity.CustomActivity:33 of +msgid "Optional[:class:`PartialEmoji`]" +msgstr "" + +#: 922a50363d1e4b7abda2b65a509a7633 discord.Activity.start:1 of +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "" + +#: 6d118390d4fc42c6994502131a8335bf discord.Activity.end:1 of +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "" + +#: 2e9df406abc44d68ac8d05f2623f233e discord.Activity.large_image_url:1 of +msgid "" +"Returns a URL pointing to the large image asset of this activity if " +"applicable." +msgstr "" + +#: 5cc10e23763a40069105f956a47598f3 discord.Activity.small_image_url:1 of +msgid "" +"Returns a URL pointing to the small image asset of this activity if " +"applicable." +msgstr "" + +#: af7be03a7e334e74835e11d36f55a1e8 discord.Activity.large_image_text:1 of +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "" + +#: 3c2e2d49b5b146c6beeb4e21f02013f6 discord.Activity.small_image_text:1 of +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "" + +#: discord.activity.BaseActivity:1 fb3c412129464f14a32817147d50de0b of +msgid "" +"The base activity that all user-settable activities inherit from. A user-" +"settable activity is one that can be used in " +":meth:`Client.change_presence`." +msgstr "" + +#: cf387d90080b4cdc9e10bbdc1d06257e discord.activity.BaseActivity:4 of +msgid "The following types currently count as user-settable:" +msgstr "" + +#: aa33c3b5a42949859a53709e61da1f05 discord.activity.BaseActivity:6 of +msgid ":class:`Activity`" +msgstr "" + +#: d6427e751a794bd78b364ac0b75728a3 discord.activity.BaseActivity:9 of +msgid ":class:`CustomActivity`" +msgstr "" + +#: d09ea164c0cd4cbdbc0163e5437093a9 discord.activity.BaseActivity:11 of +msgid "" +"Note that although these types are considered user-settable by the " +"library, Discord typically ignores certain combinations of activity " +"depending on what is currently set. This behaviour may change in the " +"future so there are no guarantees on whether Discord will actually let " +"you set these types." +msgstr "" + +#: 07b36b0e7d2948e1baf228040a6a3241 discord.BaseActivity.created_at:1 of +msgid "When the user started doing this activity in UTC." +msgstr "" + +#: 66617b5efa3e411292f2c95782ab2454 discord.activity.Game:1 of +msgid "" +"A slimmed down version of :class:`Activity` that represents a Discord " +"game." +msgstr "" + +#: discord.activity.Game:3 e8cd4495f8bd4373b2d536a0829af5ca of +msgid "" +"This is typically displayed via **Playing** on the official Discord " +"client." +msgstr "" + +#: 23ae142cc83940b59466666da6b82abc discord.activity.Game:9 of +msgid "Checks if two games are equal." +msgstr "" + +#: da3209c4958443a396716fbf81b22ff6 discord.activity.Game:13 of +msgid "Checks if two games are not equal." +msgstr "" + +#: c7f7d169c44f42f492d9d7dcf1845954 discord.activity.Game:17 of +msgid "Returns the game's hash." +msgstr "" + +#: 6edf2ada4fb84c2299ef2193db043fa4 discord.activity.Game:21 of +msgid "Returns the game's name." +msgstr "" + +#: 60ec9c34573a4bfd974edad2940fc120 710eb25609234a2eab35dd6ef26a8672 +#: discord.activity.Game:24 discord.activity.Game:29 of +msgid "The game's name." +msgstr "" + +#: 3a36f0b58a4a4e7cb9f8dc2cc6aa1d94 discord.Game.type:1 +#: discord.Streaming.type:1 of +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "" + +#: 519f2ad7af2643a49c8de14c5fd856dd discord.Game.type:3 of +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "" + +#: 2fe7ad5b1581451e94caa24e9912d075 discord.Game.start:1 of +msgid "When the user started playing this game in UTC, if applicable." +msgstr "" + +#: 0491299224284daeafc2d95b819b5835 discord.Game.end:1 of +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "" + +#: 22e2635806f44e03b314fcea5c24d064 discord.activity.Streaming:1 of +msgid "" +"A slimmed down version of :class:`Activity` that represents a Discord " +"streaming status." +msgstr "" + +#: 76aa5d55d1c9433089da693267966795 discord.activity.Streaming:3 of +msgid "" +"This is typically displayed via **Streaming** on the official Discord " +"client." +msgstr "" + +#: 42eb1dc2050e401e9075ce5a316f1981 discord.activity.Streaming:9 of +msgid "Checks if two streams are equal." +msgstr "" + +#: 38c4279586ad4e439c331b076545379a discord.activity.Streaming:13 of +msgid "Checks if two streams are not equal." +msgstr "" + +#: 95be974cab9e4dadb28de5009208ebcc discord.activity.Streaming:17 of +msgid "Returns the stream's hash." +msgstr "" + +#: ae721653e365456fbebac789acb05adf discord.activity.Streaming:21 of +msgid "Returns the stream's name." +msgstr "" + +#: a178ef3028f3437e8d20967729abb6fc discord.activity.Streaming:25 of +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "" + +#: 6a24db0720074b169a1e671ec4841d36 discord.activity.Streaming:33 of +msgid "The stream's name." +msgstr "" + +#: 709bac80c9324b34a8b0686f4df4b0f6 discord.activity.Streaming:39 of +msgid "An alias for :attr:`name`" +msgstr "" + +#: 32097c73089e429384ee0fb98060f3df discord.activity.Streaming:45 of +msgid "The game being streamed." +msgstr "" + +#: discord.activity.Streaming:53 f4b4de5b2031416dba949ce8be26937a of +msgid "The stream's URL." +msgstr "" + +#: 033534059d1b420d810da1de9fc81a04 discord.activity.Streaming:59 of +msgid "" +"A dictionary comprised of similar keys than those in " +":attr:`Activity.assets`." +msgstr "" + +#: c020752da0ee48c085ed325e2a5107a3 discord.Streaming.type:3 of +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "" + +#: de8e1cf2c6eb43218a65788ba6caa0b4 discord.Streaming.twitch_name:1 of +msgid "If provided, the twitch name of the user streaming." +msgstr "" + +#: 165338f4dab94b2f8901501ebd64c6f7 discord.Streaming.twitch_name:3 of +msgid "" +"This corresponds to the ``large_image`` key of the " +":attr:`Streaming.assets` dictionary if it starts with ``twitch:``. " +"Typically this is set by the Discord client." +msgstr "" + +#: 3938e568fe7a46089da5b19b17fc515e discord.activity.CustomActivity:1 of +msgid "Represents a Custom activity from Discord." +msgstr "" + +#: acf4363744434b20a6464a9900123c84 discord.activity.CustomActivity:7 of +msgid "Checks if two activities are equal." +msgstr "" + +#: 60bd4d421bcc41cca95806d2a68ed1cd discord.activity.CustomActivity:11 of +msgid "Checks if two activities are not equal." +msgstr "" + +#: 5b063163bfaf4930af9d387ef066d6ec discord.activity.CustomActivity:15 of +msgid "Returns the activity's hash." +msgstr "" + +#: 9c992dd3ca474eaead904f431e9b065e discord.activity.CustomActivity:19 of +msgid "Returns the custom status text." +msgstr "" + +#: 1185f9ed8b11425296b33aeb72e9d01c discord.activity.CustomActivity:25 of +msgid "The custom activity's name." +msgstr "" + +#: 73a10f994059438aafdfba8fb233ccf9 discord.activity.CustomActivity:31 of +msgid "The emoji to pass to the activity, if any." +msgstr "" + +#: 66f77c61ee2840e59efe648bf891294d discord.activity.CustomActivity:37 of +msgid "The text used for the custom activity." +msgstr "" + +#: a2fcc50995664b789e7912d698d3672b discord.CustomActivity.type:1 of +msgid "" +"Returns the activity's type. This is for compatibility with " +":class:`Activity`." +msgstr "" + +#: df5b15e73d1e41028c2ec44cf7c8a8da discord.CustomActivity.type:3 of +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "" + +#: ../../api/data_classes.rst:221 60d410b462c140fd9d5d5d85a0ca55ef +msgid "Permissions" +msgstr "" + +#: 8e13e3b1d07e469eb7a3ab8b4ba0be6c discord.permissions.Permissions:1 of +msgid "Wraps up the Discord permission value." +msgstr "" + +#: 4f272e071c5f44139b56ad55b81ea8aa discord.permissions.Permissions:3 of +msgid "" +"The properties provided are two way. You can set and retrieve individual " +"bits using the properties as if they were regular bools. This allows you " +"to edit permissions." +msgstr "" + +#: bd321b47be9a4de98bdd12535fbcf574 discord.permissions.Permissions:7 of +msgid "" +"You can now use keyword arguments to initialize :class:`Permissions` " +"similar to :meth:`update`." +msgstr "" + +#: 5637ff5271234867aaf55cf80d0fc1b7 discord.permissions.Permissions:15 of +msgid "Checks if two permissions are equal." +msgstr "" + +#: discord.permissions.Permissions:18 fcc55fde91b24b5c9f7c6519b7e15ff7 of +msgid "Checks if two permissions are not equal." +msgstr "" + +#: b5ab6c1babd64517a24ef83f2dde5e10 discord.permissions.Permissions:21 of +msgid "Checks if a permission is a subset of another permission." +msgstr "" + +#: b16c4f3a39614a8b9fc0564c88d54c3b discord.permissions.Permissions:24 of +msgid "Checks if a permission is a superset of another permission." +msgstr "" + +#: 3421d8547974443eabb00466f982007e discord.permissions.Permissions:27 of +msgid "Checks if a permission is a strict subset of another permission." +msgstr "" + +#: discord.permissions.Permissions:32 f962f0f158b04fa0a28a23da9b07d0f0 of +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "" + +#: 4ab6f2fa1e274ff3b08bcbcb07a4008b discord.permissions.Permissions:35 of +msgid "Subtracts two permissions from each other." +msgstr "" + +#: 32a4172a223a4badb7223518fd57bfe4 discord.permissions.Permissions:38 of +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "" + +#: 6f359edfb3b84604a3683f6f61ac6027 discord.permissions.Permissions:41 of +msgid "Returns the intersection of two permissions." +msgstr "" + +#: 5cccbc5524084879a00ace639984467b discord.permissions.Permissions:44 of +msgid "Returns the inverse of a permission." +msgstr "" + +#: discord.permissions.Permissions:46 ea8f4803688c427aab864e15ecf72a18 of +msgid "Checks if a permission is a strict superset of another permission." +msgstr "" + +#: d6f51ecf1a7947359281cb9413a44943 discord.permissions.Permissions:49 of +msgid "Return the permission's hash." +msgstr "" + +#: discord.permissions.PermissionOverwrite:22 +#: discord.permissions.Permissions:52 ee479ed5d50d4b20aebb43ef531f5610 of +msgid "" +"Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for" +" example, constructed as a dict or a list of pairs. Note that aliases are" +" not shown." +msgstr "" + +#: a10f6bbff86e49acbfaa46201bdf52d7 discord.permissions.Permissions:58 of +msgid "" +"The raw value. This value is a bit array field of a 53-bit integer " +"representing the currently available permissions. You should query " +"permissions via the properties rather than using this raw value." +msgstr "" + +#: 3713354dea1c4a6e98816c5530074aa7 discord.permissions.Permissions.is_subset:1 +#: of +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "" + +#: 7026a3194ab842e7ae4aedb81fd93bac +#: discord.permissions.Permissions.is_superset:1 of +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "" + +#: df8b6b994b24481fbadcf9b7e63a31c7 +#: discord.permissions.Permissions.is_strict_subset:1 of +msgid "" +"Returns ``True`` if the permissions on other are a strict subset of those" +" on self." +msgstr "" + +#: cabd215d21bb4d96aa64bf4f13e778e8 +#: discord.permissions.Permissions.is_strict_superset:1 of +msgid "" +"Returns ``True`` if the permissions on other are a strict superset of " +"those on self." +msgstr "" + +#: 6e9068a2c344478ba5bb4ee0f556045a discord.permissions.Permissions.none:1 of +msgid "" +"A factory method that creates a :class:`Permissions` with all permissions" +" set to ``False``." +msgstr "" + +#: 1fba130190d641938864033a7f9fa35d discord.permissions.Permissions.all:5 +#: discord.permissions.Permissions.none:5 +#: discord.permissions.Permissions.voice:5 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: b8790ac5bab648788e3c6a7efe91a8c6 discord.permissions.Permissions.all:1 of +msgid "" +"A factory method that creates a :class:`Permissions` with all permissions" +" set to ``True``." +msgstr "" + +#: c501996a0aa44e3bba2a7c131a8ecc55 +#: discord.permissions.Permissions.all_channel:1 of +msgid "" +"A :class:`Permissions` with all channel-specific permissions set to " +"``True`` and the guild-specific ones set to ``False``. The guild-specific" +" permissions are currently: :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: 3d33edd78b4a44af96d1174e80fe38df +#: discord.permissions.Permissions.all_channel:7 of +msgid ":attr:`manage_emojis`" +msgstr "" + +#: 67c5f2685a8140feb38876faa140bf2a +#: discord.permissions.Permissions.all_channel:8 of +msgid ":attr:`view_audit_log`" +msgstr "" + +#: discord.permissions.Permissions.all_channel:9 +#: eb56391df8e94861af5a6a8409c17d6f of +msgid ":attr:`view_guild_insights`" +msgstr "" + +#: 7b554c4be8944c03a6ef76c5b73eede5 +#: discord.permissions.Permissions.all_channel:10 of +msgid ":attr:`manage_guild`" +msgstr "" + +#: 7f33532c524d48eeb208f2f316ac7879 +#: discord.permissions.Permissions.all_channel:11 of +msgid ":attr:`change_nickname`" +msgstr "" + +#: 606ad5d3e5084e568298891c3b0588e7 +#: discord.permissions.Permissions.all_channel:12 of +msgid ":attr:`manage_nicknames`" +msgstr "" + +#: 48fc50f3db1a4049aa6ed259c0016e20 +#: discord.permissions.Permissions.all_channel:13 of +msgid ":attr:`kick_members`" +msgstr "" + +#: discord.permissions.Permissions.all_channel:14 +#: e7d64bc06aef4cc7837d72e3051db957 of +msgid ":attr:`ban_members`" +msgstr "" + +#: c502768910914af6a4de9d4bbf12a158 +#: discord.permissions.Permissions.all_channel:15 of +msgid ":attr:`administrator`" +msgstr "" + +#: 58e62e0ef9144695b99159ad964e9797 +#: discord.permissions.Permissions.all_channel:17 of +msgid "" +"Added :attr:`stream`, :attr:`priority_speaker` and " +":attr:`use_slash_commands` permissions." +msgstr "" + +#: 1ac70319723b451d9c8b3252e52b6e79 +#: discord.permissions.Permissions.all_channel:20 of +msgid "" +"Added :attr:`create_public_threads`, :attr:`create_private_threads`, " +":attr:`manage_threads`, :attr:`use_external_stickers`, " +":attr:`send_messages_in_threads` and :attr:`request_to_speak` " +"permissions." +msgstr "" + +#: ba6992e7084e41a4ae1fb6437f90c395 discord.permissions.Permissions.general:1 +#: of +msgid "" +"A factory method that creates a :class:`Permissions` with all \"General\"" +" permissions from the official Discord UI set to ``True``. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: 150148bc2a3e43f7b18149bb6897ee01 discord.permissions.Permissions.general:6 +#: of +msgid "" +"Permission :attr:`read_messages` is now included in the general " +"permissions, but permissions :attr:`administrator`, " +":attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`," +" :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part " +"of the general permissions." +msgstr "" + +#: 454540f845e641959058f28badf30ad5 +#: discord.permissions.Permissions.membership:1 of +msgid "" +"A factory method that creates a :class:`Permissions` with all " +"\"Membership\" permissions from the official Discord UI set to ``True``. " +":rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: 289554b113484936916b5ee1ab0fd38e discord.permissions.Permissions.text:1 of +msgid "" +"A factory method that creates a :class:`Permissions` with all \"Text\" " +"permissions from the official Discord UI set to ``True``. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: c4688cf0c33a417e92f5c0627d33378d discord.permissions.Permissions.text:6 of +msgid "" +"Permission :attr:`read_messages` is no longer part of the text " +"permissions. Added :attr:`use_slash_commands` permission." +msgstr "" + +#: 04d50f609e1643f79c50c26c2356c391 discord.permissions.Permissions.text:10 of +msgid "" +"Added :attr:`create_public_threads`, :attr:`create_private_threads`, " +":attr:`manage_threads`, :attr:`send_messages_in_threads` and " +":attr:`use_external_stickers` permissions." +msgstr "" + +#: 7f71cb30e267401b9a2a1ff63f4884ab discord.permissions.Permissions.voice:1 of +msgid "" +"A factory method that creates a :class:`Permissions` with all \"Voice\" " +"permissions from the official Discord UI set to ``True``." +msgstr "" + +#: a5f10e0b445a4afea2ac4f0bf2629b7a discord.permissions.Permissions.stage:1 of +msgid "" +"A factory method that creates a :class:`Permissions` with all \"Stage " +"Channel\" permissions from the official Discord UI set to ``True``. " +":rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: 5e21d8ef96414ceda6df2f9e5f577da1 +#: discord.permissions.Permissions.stage_moderator:1 of +msgid "" +"A factory method that creates a :class:`Permissions` with all \"Stage " +"Moderator\" permissions from the official Discord UI set to ``True``. " +":rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: 6d2820f27e4e4332a814576db3003b76 discord.permissions.Permissions.advanced:1 +#: of +msgid "" +"A factory method that creates a :class:`Permissions` with all " +"\"Advanced\" permissions from the official Discord UI set to ``True``. " +":rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "" + +#: 3cd8edc5bc9945299d62e81b1d2258bb discord.permissions.Permissions.update:1 of +msgid "Bulk updates this permission object." +msgstr "" + +#: discord.permissions.PermissionOverwrite.update:3 +#: discord.permissions.Permissions.update:3 ffc0d79e5c0e49a5afdaa65646082f76 of +msgid "" +"Allows you to set multiple attributes by using keyword arguments. The " +"names must be equivalent to the properties listed. Extraneous key/value " +"pairs will be silently ignored." +msgstr "" + +#: 3fd6dda4423a4789884374f9f327e6d0 discord.permissions.Permissions.update:8 of +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "" + +#: ../../docstring 0852cfca81494db9998dcb4555562238 +#: discord.Permissions.create_instant_invite:1 of +msgid "Returns ``True`` if the user can create instant invites." +msgstr "" + +#: ../../docstring c79ee2200ed040ff8e3600a1f4bcd286 +#: discord.Permissions.kick_members:1 of +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "" + +#: ../../docstring 0606ce80e2b74dd18f3a06ddfb424905 +#: discord.Permissions.ban_members:1 of +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "" + +#: ../../docstring 22117166f3d3400c8a0183d958f2473d +#: discord.Permissions.administrator:1 of +msgid "" +"Returns ``True`` if a user is an administrator. This role overrides all " +"other permissions." +msgstr "" + +#: ../../docstring 923ad41d1a9f4a06882f0589f49a660d +#: discord.Permissions.administrator:3 of +msgid "This also bypasses all channel-specific overrides." +msgstr "" + +#: ../../docstring 324066ccebc7437a82fcd56264fd8cc8 +#: discord.Permissions.manage_channels:1 of +msgid "" +"Returns ``True`` if a user can edit, delete, or create channels in the " +"guild." +msgstr "" + +#: ../../docstring 12d73ea485d3493a8ded1ccc53e2c504 +#: discord.Permissions.manage_channels:3 of +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "" + +#: ../../docstring 51e2d1633433474da1f3a494890db872 +#: discord.Permissions.manage_guild:1 of +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "" + +#: ../../docstring discord.Permissions.add_reactions:1 +#: fbe183953a1a4ae3bbb2e9b7ee3760b0 of +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "" + +#: ../../docstring discord.Permissions.view_audit_log:1 +#: e82d9686fb914794b400bd4a68b9b71f of +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "" + +#: ../../docstring c26c8e4168b64c1b96a4a7543864afda +#: discord.Permissions.priority_speaker:1 of +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "" + +#: ../../docstring 1f324a8b58c541f2a1ba2b75de16b11f +#: discord.Permissions.stream:1 of +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "" + +#: ../../docstring b47230b37fe246c29733f872037b2627 +#: discord.Permissions.view_channel:1 of +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "" + +#: ../../docstring 236a13b11f97491aaf5c86a271f2a299 +#: discord.Permissions.read_messages:1 of +msgid "An alias for :attr:`view_channel`." +msgstr "" + +#: ../../docstring aeccba9f352f43ff93ba887eadb028ee +#: discord.Permissions.send_messages:1 of +msgid "" +"Returns ``True`` if a user can send messages from all or specific text " +"channels." +msgstr "" + +#: ../../docstring 27578f091046405f94d22c382db1beeb +#: discord.Permissions.send_tts_messages:1 of +msgid "" +"Returns ``True`` if a user can send TTS messages from all or specific " +"text channels." +msgstr "" + +#: ../../docstring 30ebd7d1308943ae874ed4dd75a44ba8 +#: discord.Permissions.manage_messages:1 of +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "" + +#: ../../docstring 07e3d2dc854b48da9ed38f4648f6a7bf +#: discord.Permissions.manage_messages:5 of +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "" + +#: ../../docstring c0be8484ebc040b98fb0939998361c92 +#: discord.Permissions.embed_links:1 of +msgid "" +"Returns ``True`` if a user's messages will automatically be embedded by " +"Discord." +msgstr "" + +#: ../../docstring 9c89ebe10d9b4e15b608ebfa25fcada1 +#: discord.Permissions.attach_files:1 of +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "" + +#: ../../docstring discord.Permissions.read_message_history:1 +#: fda35b6690a246aca8136c74f7233cda of +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "" + +#: ../../docstring dd01266c445141a097c673b102981c4d +#: discord.Permissions.mention_everyone:1 of +msgid "" +"Returns ``True`` if a user's @everyone or @here will mention everyone in " +"the text channel." +msgstr "" + +#: ../../docstring 2651f553500e45a693e270f7c2aeb8c3 +#: discord.Permissions.external_emojis:1 of +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "" + +#: ../../docstring 306f18053bce4eb2988a8ddb8c78bf30 +#: discord.Permissions.use_external_emojis:1 of +msgid "An alias for :attr:`external_emojis`." +msgstr "" + +#: ../../docstring 1b698e890134451ab81edcfb2f6fcced +#: discord.Permissions.view_guild_insights:1 of +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "" + +#: ../../docstring discord.Permissions.connect:1 +#: e0ea8ccb80464cd493d1564f68c1dd2b of +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "" + +#: ../../docstring b6a13ba2d5204a789021424a697cc7aa discord.Permissions.speak:1 +#: of +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "" + +#: ../../docstring 84fcdd88475b4c918f4398c3c09b6a00 +#: discord.Permissions.mute_members:1 of +msgid "Returns ``True`` if a user can mute other users." +msgstr "" + +#: ../../docstring 8c259e01f44245cf8e6e77bcea3f161b +#: discord.Permissions.deafen_members:1 of +msgid "Returns ``True`` if a user can deafen other users." +msgstr "" + +#: ../../docstring 05ad8c3fb5b545f7b5ca02137af48532 +#: discord.Permissions.move_members:1 of +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "" + +#: ../../docstring discord.Permissions.use_voice_activation:1 +#: ee7d230c69a64cf6bd2fe7b2832f656a of +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "" + +#: ../../docstring b317f5c3d4d644858fcb73b0648e2543 +#: discord.Permissions.change_nickname:1 of +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "" + +#: ../../docstring 95d8e51d851943abb648ae889d064fe4 +#: discord.Permissions.manage_nicknames:1 of +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "" + +#: ../../docstring 19b7f1d6020a42598e0f34f2792209d2 +#: discord.Permissions.manage_roles:1 of +msgid "" +"Returns ``True`` if a user can create or edit roles less than their " +"role's position." +msgstr "" + +#: ../../docstring 4c3329b815e14dc9835c6139cc389177 +#: discord.Permissions.manage_roles:3 of +msgid "" +"This also corresponds to the \"Manage Permissions\" channel-specific " +"override." +msgstr "" + +#: ../../docstring 19fe0acb3fc5444c98b26a21a0d4ae7f +#: discord.Permissions.manage_permissions:1 of +msgid "An alias for :attr:`manage_roles`." +msgstr "" + +#: ../../docstring 44e7d276317c4e28979d34995fa90864 +#: discord.Permissions.manage_webhooks:1 of +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "" + +#: ../../docstring c92b7007f5414278aec6dfca5c8d73c1 +#: discord.Permissions.manage_emojis:1 of +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "" + +#: ../../docstring 099d0ab04ca44e2c9ebc7ddab039de05 +#: discord.Permissions.manage_emojis_and_stickers:1 of +msgid "An alias for :attr:`manage_emojis`." +msgstr "" + +#: ../../docstring daaadff474a3483883ac2174fe2530b1 +#: discord.Permissions.use_slash_commands:1 of +msgid "Returns ``True`` if a user can use slash commands." +msgstr "" + +#: ../../docstring cda19158b4e54a53b88bbd3ff38de8c2 +#: discord.Permissions.use_application_commands:1 of +msgid "An alias for :attr:`use_slash_commands`." +msgstr "" + +#: ../../docstring b90362eb52764c09b4466f2299c7aa94 +#: discord.Permissions.request_to_speak:1 of +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "" + +#: ../../docstring 45b6e9a800814521ad39ffc6f673c66b +#: discord.Permissions.manage_events:1 of +msgid "Returns ``True`` if a user can manage guild events." +msgstr "" + +#: ../../docstring a0ee39b0843b41f7a7fc4191722931fb +#: discord.Permissions.manage_threads:1 of +msgid "Returns ``True`` if a user can manage threads." +msgstr "" + +#: ../../docstring discord.Permissions.create_public_threads:1 +#: f77953f75e474f6aac2fb2805fce656e of +msgid "Returns ``True`` if a user can create public threads." +msgstr "" + +#: ../../docstring 91a19cfe107c44b392607aecac97fe2a +#: discord.Permissions.create_private_threads:1 of +msgid "Returns ``True`` if a user can create private threads." +msgstr "" + +#: ../../docstring 8b1a793caef94d5fb14d21b61fc6409b +#: discord.Permissions.external_stickers:1 of +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "" + +#: ../../docstring discord.Permissions.use_external_stickers:1 +#: e38fa1b69be84a3c92d9c97b23256e76 of +msgid "An alias for :attr:`external_stickers`." +msgstr "" + +#: ../../docstring 2a70a7674d36456a9e0a0c47fd6f07fd +#: discord.Permissions.send_messages_in_threads:1 of +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "" + +#: ../../docstring 27967aab408f48ffbcf23e1585a3e71b +#: discord.Permissions.start_embedded_activities:1 of +msgid "" +"Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a" +" voice channel." +msgstr "" + +#: ../../docstring 196a16e2d58c44088939738ff7874e0b +#: discord.Permissions.moderate_members:1 of +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "" + +#: ../../docstring 21e49f2607d948d1aac14cf0bde7222d +#: discord.Permissions.send_voice_messages:1 of +msgid "Returns ``True`` if a member can send voice messages." +msgstr "" + +#: ../../docstring 0d48ab90f0964e5385186ca15971059c +#: discord.Permissions.set_voice_channel_status:1 of +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "" + +#: ../../docstring bbdd0cb2b0e8488dbfc566e1b0da5aea +#: discord.Permissions.send_polls:1 of +msgid "Returns ``True`` if a member can send polls." +msgstr "" + +#: ../../docstring discord.Permissions.use_external_apps:1 +#: ee9b457141c94c53bc60f022463f0486 of +msgid "" +"Returns ``True`` if a member's user-installed apps can show public " +"responses. Users will still be able to use user-installed apps, but " +"responses will be ephemeral." +msgstr "" + +#: ../../docstring discord.Permissions.use_external_apps:4 +#: f0dd8fd11b81466881e15f1055ae10a9 of +msgid "This only applies to apps that are also not installed to the guild." +msgstr "" + +#: 53d4e7fb59b34e38b6649fc978006797 discord.permissions.PermissionOverwrite:1 +#: of +msgid "A type that is used to represent a channel specific permission." +msgstr "" + +#: discord.permissions.PermissionOverwrite:3 fb3dee78b0cb4d83b9876aab5057b3d4 +#: of +msgid "" +"Unlike a regular :class:`Permissions`\\, the default value of a " +"permission is equivalent to ``None`` and not ``False``. Setting a value " +"to ``False`` is **explicitly** denying that permission, while setting a " +"value to ``True`` is **explicitly** allowing that permission." +msgstr "" + +#: 501c13440b884f20800485507a364281 discord.permissions.PermissionOverwrite:9 +#: of +msgid "" +"The values supported by this are the same as :class:`Permissions` with " +"the added possibility of it being set to ``None``." +msgstr "" + +#: 9381f19b61e549358025726a4d4c9428 discord.permissions.PermissionOverwrite:16 +#: of +msgid "Checks if two overwrites are equal." +msgstr "" + +#: discord.permissions.PermissionOverwrite:19 fc1e95f179164adbba323442145566e6 +#: of +msgid "Checks if two overwrites are not equal." +msgstr "" + +#: 435efe3f9dd64b5fae801a5ba872e113 discord.permissions.PermissionOverwrite:27 +#: of +msgid "Set the value of permissions by their name." +msgstr "" + +#: 6db28971ce9946a591fa59339d8ac998 +#: discord.permissions.PermissionOverwrite.pair:1 of +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "" + +#: c2ec090998c145729116ac6d6d9d9c9b +#: discord.permissions.PermissionOverwrite.pair:4 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, " +"\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr "" + +#: 149b1b1980834c0195ef69cc3bfe4463 +#: discord.permissions.PermissionOverwrite.from_pair:1 of +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "" + +#: d1d8019940a44dcba4436b47f35715c1 +#: discord.permissions.PermissionOverwrite.from_pair:7 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr "" + +#: 480a576b68994d99b4eecebe43cef95d +#: discord.permissions.PermissionOverwrite.is_empty:1 of +msgid "Checks if the permission overwrite is currently empty." +msgstr "" + +#: 64192039c64c4b38a7dd83098aac96a4 +#: discord.permissions.PermissionOverwrite.is_empty:3 of +msgid "" +"An empty permission overwrite is one that has no overwrites set to " +"``True`` or ``False``." +msgstr "" + +#: discord.permissions.PermissionOverwrite.is_empty:6 +#: e0401be4964b4f78b29ae4a4649c2668 of +msgid "Indicates if the overwrite is empty." +msgstr "" + +#: discord.permissions.PermissionOverwrite.update:1 +#: e574cdd4574f4865a7693c8125f56e49 of +msgid "Bulk updates this permission overwrite object." +msgstr "" + +#: ca60f1bcd3784c659f81563a3cb3a2d7 +#: discord.permissions.PermissionOverwrite.update:8 of +msgid "A list of key/value pairs to bulk update with." +msgstr "" + +#: ../../api/data_classes.rst:234 9b867a9572674a3a8c8653b44c9f9b72 +msgid "Application Role Connections" +msgstr "" + +#: 637dd77a8de847aca02cf33f276dd203 +#: discord.application_role_connection.ApplicationRoleConnectionMetadata:1 of +msgid "Represents role connection metadata for a Discord application." +msgstr "" + +#: b02b0ffd4f18485580abb2ca7f45e414 +#: discord.application_role_connection.ApplicationRoleConnectionMetadata:6 of +msgid "The type of metadata value." +msgstr "" + +#: d40010af32404db5ae80b357c268c9ab +#: discord.application_role_connection.ApplicationRoleConnectionMetadata:9 of +msgid "" +"The key for this metadata field. May only be the ``a-z``, ``0-9``, or " +"``_`` characters, with a maximum of 50 characters." +msgstr "" + +#: 0a5e30d5b723463f96cc62cf934ffa34 +#: discord.application_role_connection.ApplicationRoleConnectionMetadata:13 of +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "" + +#: 86c86651daab4d2bb56e2515613e0b8a +#: discord.application_role_connection.ApplicationRoleConnectionMetadata:16 of +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "" + +#: b3a47d7fb5be43a5a545e53344b4ee1b +#: discord.application_role_connection.ApplicationRoleConnectionMetadata:19 of +msgid "" +"The name localizations for this metadata field. The values of this should" +" be ``\"locale\": \"name\"``. See `here " +"`_ for a list of " +"valid locales." +msgstr "" + +#: 246b61db68854beb9cb72d12dc9cfd40 4f3b424badea44d289a8fba4635a8270 +#: discord.application_role_connection.ApplicationRoleConnectionMetadata:23 of +msgid "" +"The description localizations for this metadata field. The values of this" +" should be ``\"locale\": \"name\"``. See `here " +"`_ for a list of " +"valid locales." +msgstr "" + +#~ msgid "" +#~ "Union[:class:`TextChannel`, :class:`Thread`, " +#~ ":class:`DMChannel`, :class:`VoiceChannel`, " +#~ ":class:`StageChannel`]" +#~ msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/enums.po b/docs/locales/en/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..51a00f2498 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/enums.po @@ -0,0 +1,2799 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-13 10:18+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.16.0\n" + +#: ../../api/enums.rst:7 62a3a42200714266a982a184b801615b +msgid "Enumerations" +msgstr "" + +#: ../../api/enums.rst:9 8edd78317af744249156d7fc55d53459 +msgid "" +"The API provides some enumerations for certain types of strings to avoid " +"the API from being stringly typed in case the strings change in the " +"future." +msgstr "" + +#: ../../api/enums.rst:12 5bede53965bb438f89620d1184cc4998 +msgid "" +"All enumerations are subclasses of an internal class which mimics the " +"behaviour of :class:`enum.Enum`." +msgstr "" + +#: ../../api/enums.rst:17 41dd3d7ade864c7fac7f33bdc7997cf5 +msgid "Specifies the input type of an option." +msgstr "" + +#: ../../api/enums.rst:23 c09bf4f35dff41199774467ec1a71d65 +msgid "A slash subcommand." +msgstr "" + +#: ../../api/enums.rst:26 a32c124790b44aaa8f9cc124d791ae6a +msgid "A slash command group." +msgstr "" + +#: ../../api/enums.rst:29 2893d306dd214f12a1fc100b94446759 +msgid "A string." +msgstr "" + +#: ../../api/enums.rst:32 d5b40b4a9cee43d3b0adba7e86c21fc9 +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "" + +#: ../../api/enums.rst:36 ../../api/enums.rst:59 +#: 70b2bd1e114440079b80fffca89ae1ab dda4596a99714ab38e3ec0b5a2b10fd6 +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "" + +#: ../../api/enums.rst:40 aeb8467bda844397bd89efd7ed2d6e51 +msgid "A boolean." +msgstr "" + +#: ../../api/enums.rst:43 b441f0733b824c1c90e5af72c6428036 +msgid "" +"A user from the current channel. This will be converted to an instance of" +" :class:`.User` in private channels, else :class:`.Member`" +msgstr "" + +#: ../../api/enums.rst:46 c1d9b05304ed4d9782bca5b63910f471 +msgid "A channel from the current guild." +msgstr "" + +#: ../../api/enums.rst:49 8af7497f3271434a9221371639bf0a20 +msgid "A role from the current guild." +msgstr "" + +#: ../../api/enums.rst:52 29768171f9034607ac74932b5b671189 +msgid "A mentionable (user or role)." +msgstr "" + +#: ../../api/enums.rst:55 3678469398f4443d949e846231813f41 +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "" + +#: ../../api/enums.rst:63 8518d8d0bc574c7bbda674dcb9fc74e4 +msgid "An attachment." +msgstr "" + +#: ../../api/enums.rst:67 5dc42347281244ac9245a598cee06ef6 +msgid "Specifies the type of channel." +msgstr "" + +#: ../../api/enums.rst:71 811232ae673c4d43926ab75b4ff53889 +msgid "A text channel." +msgstr "" + +#: ../../api/enums.rst:75 e66f26c0877b46c2a74930543ec5dda3 +msgid "A voice channel." +msgstr "" + +#: ../../api/enums.rst:79 eb457db22b6f4992b255e5f8f3b35cea +msgid "A private text channel. Also called a direct message." +msgstr "" + +#: ../../api/enums.rst:83 4c89995ca9c04d3e939768d30f72f6b0 +msgid "A private group text channel." +msgstr "" + +#: ../../api/enums.rst:87 0f8a9c0389de4ff3b66bcf5e58f20346 +msgid "A category channel." +msgstr "" + +#: ../../api/enums.rst:91 ec7bb4b12e9044d7be4521fe4c4dfc5a +msgid "A guild news channel." +msgstr "" + +#: ../../api/enums.rst:95 cfd6ca96420f4b7b8e2f211569d82926 +msgid "A guild stage voice channel." +msgstr "" + +#: ../../api/enums.rst:101 15e714bf45b64bfba322a1fa4decb9e0 +msgid "A news thread." +msgstr "" + +#: ../../api/enums.rst:107 d873c480bdcd4fe4bc547139c961bc99 +msgid "A public thread." +msgstr "" + +#: ../../api/enums.rst:113 5b47a4c12c3547c4876c1a68d67d2729 +msgid "A private thread." +msgstr "" + +#: ../../api/enums.rst:119 7ebdf56610c44fbaa6d9dee200161197 +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "" + +#: ../../api/enums.rst:125 211b7a19c3ee433db673e226f56f938f +msgid "User can only write in threads, similar functionality to a forum." +msgstr "" + +#: ../../api/enums.rst:131 fc3cd4ddb3b74613b0513faab63616e9 +msgid "" +"Specifies the type of :class:`Message`. This is used to denote if a " +"message is to be interpreted as a system message or a regular message." +msgstr "" + +#: ../../api/enums.rst:138 a7a6cd05d7eb4191a78e415784ba36bf +msgid "Checks if two messages are equal." +msgstr "" + +#: ../../api/enums.rst:141 f5630a500dd8482b84bceada63ebaa2a +msgid "Checks if two messages are not equal." +msgstr "" + +#: ../../api/enums.rst:145 af618381e61a4f44a8f1ca183ea3655a +msgid "The default message type. This is the same as regular messages." +msgstr "" + +#: ../../api/enums.rst:148 0437846f556d4b09a2d83ca98f6b4ee5 +msgid "" +"The system message when a user is added to a group private message or a " +"thread." +msgstr "" + +#: ../../api/enums.rst:152 495303b8a3cb49fd9dceba3da06944bb +msgid "" +"The system message when a user is removed from a group private message or" +" a thread." +msgstr "" + +#: ../../api/enums.rst:156 44f702d90f1d4d63a913bc95a83439c3 +msgid "" +"The system message denoting call state, e.g. missed call, started call, " +"etc." +msgstr "" + +#: ../../api/enums.rst:160 d89cf744022a484a83f6742bdfcf6f20 +msgid "The system message denoting that a channel's name has been changed." +msgstr "" + +#: ../../api/enums.rst:163 a033722ff74045c58e32708afe0429d1 +msgid "The system message denoting that a channel's icon has been changed." +msgstr "" + +#: ../../api/enums.rst:166 98b57a613ed3419a8bdf4d5c892266fa +msgid "" +"The system message denoting that a pinned message has been added to a " +"channel." +msgstr "" + +#: ../../api/enums.rst:169 b493fbf3a6da442e97d2a46132bce3ec +msgid "The system message denoting that a new member has joined a Guild." +msgstr "" + +#: ../../api/enums.rst:173 f0d57b0b7bd04689b669a24fd805c747 +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "" + +#: ../../api/enums.rst:176 e423cd2290a74b4ab87c81bd0376da8c +msgid "" +"The system message denoting that a member has \"nitro boosted\" a guild " +"and it achieved level 1." +msgstr "" + +#: ../../api/enums.rst:180 721d284c53a94769b51b9d509a335fdb +msgid "" +"The system message denoting that a member has \"nitro boosted\" a guild " +"and it achieved level 2." +msgstr "" + +#: ../../api/enums.rst:184 6ab3d0acd4c3455186ff388965f8cd2a +msgid "" +"The system message denoting that a member has \"nitro boosted\" a guild " +"and it achieved level 3." +msgstr "" + +#: ../../api/enums.rst:188 fb77bf0ae82f44f0b0a01b4b84f1f638 +msgid "" +"The system message denoting that an announcement channel has been " +"followed." +msgstr "" + +#: ../../api/enums.rst:193 7f9a47eb82674f4482ed2a477ba7dea9 +msgid "The system message denoting that a member is streaming in the guild." +msgstr "" + +#: ../../api/enums.rst:198 18a8ceefd10b4d009b3bf16bc802e1e7 +msgid "" +"The system message denoting that the guild is no longer eligible for " +"Server Discovery." +msgstr "" + +#: ../../api/enums.rst:204 4db35fd8f97a438ab56a809bf764ddf2 +msgid "" +"The system message denoting that the guild has become eligible again for " +"Server Discovery." +msgstr "" + +#: ../../api/enums.rst:210 56ef390d6df84b8e8e8bf1f8ef25b248 +msgid "" +"The system message denoting that the guild has failed to meet the Server " +"Discovery requirements for one week." +msgstr "" + +#: ../../api/enums.rst:216 39734c8f19fb49dba5af36e56f055d4f +msgid "" +"The system message denoting that the guild has failed to meet the Server " +"Discovery requirements for 3 weeks in a row." +msgstr "" + +#: ../../api/enums.rst:222 4e88f0a260624a6f887880b3c2979b5d +msgid "" +"The system message denoting that a thread has been created. This is only " +"sent if the thread has been created from an older message. The period of " +"time required for a message to be considered old cannot be relied upon " +"and is up to Discord." +msgstr "" + +#: ../../api/enums.rst:230 c658f0e4f08540898166e76907aec5b7 +msgid "The system message denoting that the author is replying to a message." +msgstr "" + +#: ../../api/enums.rst:235 9204abcbf0d94e83a5038c8b433ff036 +msgid "" +"The system message denoting that an application (or \"slash\") command " +"was executed." +msgstr "" + +#: ../../api/enums.rst:240 3c0e282e20f74ec6b2a5fd2b8f91dc27 +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "" + +#: ../../api/enums.rst:245 cc2f2d7948e1473aa2ea3650d4c05110 +msgid "" +"The system message denoting the message in the thread that is the one " +"that started the thread's conversation topic." +msgstr "" + +#: ../../api/enums.rst:251 e6c19002d4ea4a579b30e7b3b0e0025e +msgid "The system message denoting that an context menu command was executed." +msgstr "" + +#: ../../api/enums.rst:256 80e276c807444d5cb17a265fa33fec81 +msgid "The system message denoting an action by automod." +msgstr "" + +#: ../../api/enums.rst:261 ab90d66043534202a3eded21dfc4b98a +msgid "The system message denoting a role-subscription purchase." +msgstr "" + +#: ../../api/enums.rst:267 ca98e7da88294704bcae6d05929c2ce0 +msgid "The system message denoting an interaction premium upsell." +msgstr "" + +#: ../../api/enums.rst:273 10a242e386334e56b0cbb2bb07eb6b2c +msgid "The system message denoting that a stage event has started." +msgstr "" + +#: ../../api/enums.rst:279 2d965c77932f419eb56f5ca8ea70ce06 +msgid "The system message denoting that a stage event has ended." +msgstr "" + +#: ../../api/enums.rst:285 19e883e516d44790a1b4ae8123962c72 +msgid "The system message denoting that a stage event has a new speaker." +msgstr "" + +#: ../../api/enums.rst:291 82c9e7d6f6444f30b9f2120480f1d261 +msgid "" +"The system message denoting that someone in a stage event is raising " +"their hand." +msgstr "" + +#: ../../api/enums.rst:297 f5ccefca15ae44df81088ad63aebd697 +msgid "The system message denoting that a stage event has a new topic." +msgstr "" + +#: ../../api/enums.rst:303 e12495e3fdbf4b6ab3c0b33eb06bcaf5 +msgid "" +"The system message denoting that a member has subscribed to a guild " +"application." +msgstr "" + +#: ../../api/enums.rst:309 d1b2db02188c4405a8fdc05c5185884c +msgid "Represents Discord User flags." +msgstr "" + +#: ../../api/enums.rst:313 db076302bd274dd891362a95c450ee19 +msgid "The user is a Discord Employee." +msgstr "" + +#: ../../api/enums.rst:316 751304832a704b3bbb95d0a64761a7b1 +msgid "The user is a Discord Partner." +msgstr "" + +#: ../../api/enums.rst:319 e8f8e65b3c75489e8407576ce7c7877c +msgid "The user is a HypeSquad Events member." +msgstr "" + +#: ../../api/enums.rst:322 7e3d6737fb6740fc89b66afefdf43bd2 +msgid "The user is a Bug Hunter." +msgstr "" + +#: ../../api/enums.rst:325 f534b2c373a946d99ddefd438a23b652 +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "" + +#: ../../api/enums.rst:328 e309f734cb2f4d45884824ebcc227101 +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "" + +#: ../../api/enums.rst:331 958daf6b65bc4c6bbf599daf544f20bd +msgid "The user is a HypeSquad Bravery member." +msgstr "" + +#: ../../api/enums.rst:334 e5a0f53d13e141bdb1957dcb2971597a +msgid "The user is a HypeSquad Brilliance member." +msgstr "" + +#: ../../api/enums.rst:337 3d45427279a54e33865f258b5dad30a5 +msgid "The user is a HypeSquad Balance member." +msgstr "" + +#: ../../api/enums.rst:340 c0270429a6704771b33f183d7875c56c +msgid "The user is an Early Supporter." +msgstr "" + +#: ../../api/enums.rst:343 fc75d8c9c2a643318cefaa8d1da707e0 +msgid "The user is a Team User." +msgstr "" + +#: ../../api/enums.rst:346 d30d781a82a8418db1ed989738bb34c2 +msgid "Relates to partner/verification applications." +msgstr "" + +#: ../../api/enums.rst:349 bb9df3bd7c10469bbcfc6cef8a4d2566 +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "" + +#: ../../api/enums.rst:352 fa1149684fc2412593ecb660ca6b670a +msgid "The user has an unread system message." +msgstr "" + +#: ../../api/enums.rst:355 725026bcdcf2468fb0fddb9fce267852 +msgid "The user is a Bug Hunter Level 2." +msgstr "" + +#: ../../api/enums.rst:358 60011fa78ac34e20825ce6de66234250 +msgid "The user was deleted for being underage." +msgstr "" + +#: ../../api/enums.rst:361 413b980c139b411d9710cf3871f624b6 +msgid "The user is a Verified Bot." +msgstr "" + +#: ../../api/enums.rst:364 f9904f90fedd47a1aeeb230f775f851b +msgid "The user is an Early Verified Bot Developer." +msgstr "" + +#: ../../api/enums.rst:367 75c7a0e249be4a47b66e0c046af57986 +msgid "The user is a Moderator Programs Alumni." +msgstr "" + +#: ../../api/enums.rst:370 0ca562896cc7423281a975f5494cd845 +msgid "The bot has set an interactions endpoint url." +msgstr "" + +#: ../../api/enums.rst:373 2210c3a20a70450a96e94214a3357642 +msgid "The user is disabled for being a spammer." +msgstr "" + +#: ../../api/enums.rst:376 281d19bf6c19491e9c3a38b138fb2c78 +msgid "The user is an Active Developer." +msgstr "" + +#: ../../api/enums.rst:380 0b62632dec6147c9aae71cbe50ec3b88 +msgid "" +"Specifies the type of :class:`Activity`. This is used to check how to " +"interpret the activity itself." +msgstr "" + +#: ../../api/enums.rst:385 cb5aa857d2e74dbca5ed598bfa4b83a7 +msgid "An unknown activity type. This should generally not happen." +msgstr "" + +#: ../../api/enums.rst:388 78b9ef2656fa4163a4221e114d6bc0e3 +msgid "A \"Playing\" activity type." +msgstr "" + +#: ../../api/enums.rst:391 744b4ca84d3b4522ac2e119a7b5c59eb +msgid "A \"Streaming\" activity type." +msgstr "" + +#: ../../api/enums.rst:394 a0cc249c7b2449db995e1f19b310c2cd +msgid "A \"Listening\" activity type." +msgstr "" + +#: ../../api/enums.rst:397 21ca511d445542c1bbcc579172356e77 +msgid "A \"Watching\" activity type." +msgstr "" + +#: ../../api/enums.rst:400 7b3fc29cd8e04f94b40453acc74f8d9a +msgid "A custom activity type." +msgstr "" + +#: ../../api/enums.rst:403 3673101e51264eb4bf6747615b709662 +msgid "A competing activity type." +msgstr "" + +#: ../../api/enums.rst:409 b1832754b0eb4f5384d3a9d69fdf9077 +msgid "Specifies the type of :class:`Interaction`." +msgstr "" + +#: ../../api/enums.rst:415 4ac9cd54f9324d6ea403f83bc2438983 +msgid "" +"Represents Discord pinging to see if the interaction response server is " +"alive." +msgstr "" + +#: ../../api/enums.rst:418 98ac7aa9cbff4e658b2c35bf9e4482e9 +msgid "Represents a slash command interaction." +msgstr "" + +#: ../../api/enums.rst:421 4057e136a5a34be2b63de5112cd66ada +msgid "" +"Represents a component-based interaction, i.e. using the Discord Bot UI " +"Kit." +msgstr "" + +#: ../../api/enums.rst:424 1d288a3a908e4fe78bf568876c54d5ca +msgid "Represents a autocomplete interaction for slash commands." +msgstr "" + +#: ../../api/enums.rst:427 7b9dd73bb4b443f287ef44bb27a1c8bc +msgid "Represents a modal-based interaction." +msgstr "" + +#: ../../api/enums.rst:431 9e176cc976b64630bec05ad11754bcae +msgid "Specifies the response type for the interaction." +msgstr "" + +#: ../../api/enums.rst:437 fa591cd4599a4f05b1f5e841f1e4baf3 +msgid "Pongs the interaction when given a ping." +msgstr "" + +#: ../../api/enums.rst:439 4b837e2b0c904c6a979c1f95628cf7a5 +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "" + +#: ../../api/enums.rst:442 0d614902bed94b34a7fda8cb1d96d7ff +msgid "Respond to the interaction with a message." +msgstr "" + +#: ../../api/enums.rst:444 b7642fbf5dfc40189da0c697a68596a8 +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "" + +#: ../../api/enums.rst:447 93f602a99b7e4bb38b36cf5514988a2e +msgid "Responds to the interaction with a message at a later time." +msgstr "" + +#: ../../api/enums.rst:449 ../../api/enums.rst:455 +#: e330ae3ca05f42ce920b833974ede206 f707eb8b54664d4b969081dec115130f +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "" + +#: ../../api/enums.rst:452 c29479e9e1bd47d3939deb08f0e65473 +msgid "" +"Acknowledges the component interaction with a promise that the message " +"will update later (though there is no need to actually update the " +"message)." +msgstr "" + +#: ../../api/enums.rst:458 5592dad54ac44dbda11a34bdaf74ade5 +msgid "Responds to the interaction by editing the message." +msgstr "" + +#: ../../api/enums.rst:460 0fb171764af24d828e91710586137f16 +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "" + +#: ../../api/enums.rst:463 c7f5bd0fccab49b1bc0f5b4efe913222 +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "" + +#: ../../api/enums.rst:465 3cc9bf7c3c33453d9cfb85a46738649a +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "" + +#: ../../api/enums.rst:468 1e1ee59416334ee0977d2a76bc53cca6 +msgid "Responds to the interaction by sending a modal dialog." +msgstr "" + +#: ../../api/enums.rst:470 80c98134ede1446c802b20484960a73b +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "" + +#: ../../api/enums.rst:474 79880e63219e47d999eaaaf7a536034c +msgid "Represents the component type of a component." +msgstr "" + +#: ../../api/enums.rst:480 d30bdba858fb46e497c5f0c55f193d68 +msgid "Represents the group component which holds different components in a row." +msgstr "" + +#: ../../api/enums.rst:483 389c912e3d21445aa60707594022cbce +msgid "Represents a button component." +msgstr "" + +#: ../../api/enums.rst:486 ../../api/enums.rst:492 +#: 3e83eaa0d1844924b452bc0453c951e1 9f02fd0355114b83b9ad4e2923235a6f +msgid "Represents a string select component." +msgstr "" + +#: ../../api/enums.rst:488 cbc6e9d1411d4f8b95e3b81ecaa43458 +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "" + +#: ../../api/enums.rst:495 1a375b3f3c2149a18218a50153afbd76 +msgid "Represents an input_text component." +msgstr "" + +#: ../../api/enums.rst:498 dd4d7eaeb3344260b86c54e9e2f6d05a +msgid "Represents a user select component." +msgstr "" + +#: ../../api/enums.rst:501 c7939395f31d4630b1b14a652251afd0 +msgid "Represents a role select component." +msgstr "" + +#: ../../api/enums.rst:504 5efbf6efaa7743768aea8e2b57471242 +msgid "Represents a mentionable select component." +msgstr "" + +#: ../../api/enums.rst:507 448aec20bf2c45b1b36e0da5a1d006a5 +msgid "Represents a channel select component." +msgstr "" + +#: ../../api/enums.rst:511 d3b5cb245cdb413e91512ec53ec704f4 +msgid "Represents the style of the button component." +msgstr "" + +#: ../../api/enums.rst:517 5147110dee214022bd8fa7c4fb1d2dc0 +msgid "Represents a blurple button for the primary action." +msgstr "" + +#: ../../api/enums.rst:520 1cafc57fe172466d9a3292c4ce8f9957 +msgid "Represents a grey button for the secondary action." +msgstr "" + +#: ../../api/enums.rst:523 c46243584e72480695b518b1bc58612a +msgid "Represents a green button for a successful action." +msgstr "" + +#: ../../api/enums.rst:526 cc2f997a688f42a9be197407721214ca +msgid "Represents a red button for a dangerous action." +msgstr "" + +#: ../../api/enums.rst:529 8b4e7393b35b417c908436be790e01e3 +msgid "Represents a link button." +msgstr "" + +#: ../../api/enums.rst:532 d870b9c8c6fc49bda0956cafbe9d2dc1 +msgid "Represents a premium button." +msgstr "" + +#: ../../api/enums.rst:536 4a114ecfde0f415aa78c23ae95a03eef +msgid "An alias for :attr:`primary`." +msgstr "" + +#: ../../api/enums.rst:539 ../../api/enums.rst:542 +#: 82535fcd360147e880dca049310bbe6f 8321fe52ffb845e19b1b7d9aed7e6705 +msgid "An alias for :attr:`secondary`." +msgstr "" + +#: ../../api/enums.rst:545 3ac0aea49e2a45ca9d6688296413400f +msgid "An alias for :attr:`success`." +msgstr "" + +#: ../../api/enums.rst:548 a12dc437275b4f269f536cd4658d804e +msgid "An alias for :attr:`danger`." +msgstr "" + +#: ../../api/enums.rst:551 8534814e7c964ade81128db570fe9b6e +msgid "An alias for :attr:`link`." +msgstr "" + +#: ../../api/enums.rst:555 66cbc8468aa84de2b570acda87ac130e +msgid "Represents the style of the input text component." +msgstr "" + +#: ../../api/enums.rst:561 48cbe43e6fb342169300a8f53803f539 +msgid "Represents a single-line input text field." +msgstr "" + +#: ../../api/enums.rst:564 77b11ba453194692b73e560ba59cb52a +msgid "Represents a multi-line input text field." +msgstr "" + +#: ../../api/enums.rst:567 60ab6349de2b49b39d9242a76836ba0e +msgid "An alias for :attr:`short`." +msgstr "" + +#: ../../api/enums.rst:570 ../../api/enums.rst:573 +#: 02075561dbb8468d89db81730ef848ee b1e4514a32ca4b6f8d3540036646f09e +msgid "An alias for :attr:`long`." +msgstr "" + +#: ../../api/enums.rst:577 14687525b9ad476bb6208d62748cf54b +msgid "Specifies the region a voice server belongs to." +msgstr "" + +#: ../../api/enums.rst:581 90f499fb4f134385bbfc3af0699539fb +msgid "The Amsterdam region." +msgstr "" + +#: ../../api/enums.rst:584 b776b0a8473c45bd803f3b6a7eb18410 +msgid "The Brazil region." +msgstr "" + +#: ../../api/enums.rst:587 64cb8a3f20e849b4a9eb427399fbd903 +msgid "The Dubai region." +msgstr "" + +#: ../../api/enums.rst:593 66e324a8246644efa7fa06a3d95ab7ad +msgid "The EU Central region." +msgstr "" + +#: ../../api/enums.rst:596 0d0795530dc0414abf31cc814d1737de +msgid "The EU West region." +msgstr "" + +#: ../../api/enums.rst:599 e0dd74b91b684d24bce94aa56f83166b +msgid "The Europe region." +msgstr "" + +#: ../../api/enums.rst:605 a80849d6f4ce4ad383e30e781f322e13 +msgid "The Frankfurt region." +msgstr "" + +#: ../../api/enums.rst:608 f61ccdd7bd194959897b4f24e4749d5e +msgid "The Hong Kong region." +msgstr "" + +#: ../../api/enums.rst:611 efe001fde7084049845f0785b375921c +msgid "The India region." +msgstr "" + +#: ../../api/enums.rst:617 9862cb3b6d0a4f438ce362db4434fb41 +msgid "The Japan region." +msgstr "" + +#: ../../api/enums.rst:620 5d5b6e0af5c348f78a25651f1e1b2df4 +msgid "The London region." +msgstr "" + +#: ../../api/enums.rst:623 d63a694b0fcf4b829467b9a98cc27faa +msgid "The Russia region." +msgstr "" + +#: ../../api/enums.rst:626 792f94d71ab242a5bde4f22c1b97068a +msgid "The Singapore region." +msgstr "" + +#: ../../api/enums.rst:629 a4d6c698bba747428f33df48f401115c +msgid "The South Africa region." +msgstr "" + +#: ../../api/enums.rst:632 c67af79dafd047d9b4d90bd0a4d6cc5d +msgid "The South Korea region." +msgstr "" + +#: ../../api/enums.rst:635 0c7bc1130add4b35aa955bcd3e55badd +msgid "The Sydney region." +msgstr "" + +#: ../../api/enums.rst:638 ce77bd1b4d53463cadaa224887643131 +msgid "The US Central region." +msgstr "" + +#: ../../api/enums.rst:641 ef82ec5d51974062a0ae97b3eb643d99 +msgid "The US East region." +msgstr "" + +#: ../../api/enums.rst:644 7b3d68f69b0c40d88d2cb95e84bdac4d +msgid "The US South region." +msgstr "" + +#: ../../api/enums.rst:647 793045d5ba3043d78311ec589d46636f +msgid "The US West region." +msgstr "" + +#: ../../api/enums.rst:650 edfc1b9463f2411fa8c94042ccfb2138 +msgid "The Amsterdam region for VIP guilds." +msgstr "" + +#: ../../api/enums.rst:653 8b2691fc24fd496592d208408dec5829 +msgid "The US East region for VIP guilds." +msgstr "" + +#: ../../api/enums.rst:656 50201921761246bc9caa8e6c22c0a084 +msgid "The US West region for VIP guilds." +msgstr "" + +#: ../../api/enums.rst:660 3bf69f93ed404d34b15b826ae657bf5c +msgid "" +"Specifies a :class:`Guild`\\'s verification level, which is the criteria " +"in which a member must meet before being able to send messages to the " +"guild." +msgstr "" + +#: ../../api/enums.rst:669 fe1ad00c158c4c00acb1ea118a53928b +msgid "Checks if two verification levels are equal." +msgstr "" + +#: ../../api/enums.rst:672 46216c7a546b4c91912d7c8e9573c349 +msgid "Checks if two verification levels are not equal." +msgstr "" + +#: ../../api/enums.rst:675 2e0bb775b6df4ee8a04963d54dfb731f +msgid "Checks if a verification level is higher than another." +msgstr "" + +#: ../../api/enums.rst:678 7a3f52cd944049e887290b1231a1964a +msgid "Checks if a verification level is lower than another." +msgstr "" + +#: ../../api/enums.rst:681 620771d877bc4ef6aac111a4148a8bfb +msgid "Checks if a verification level is higher or equal to another." +msgstr "" + +#: ../../api/enums.rst:684 e2b18998a2844ea8b31ae008fdbc6b58 +msgid "Checks if a verification level is lower or equal to another." +msgstr "" + +#: ../../api/enums.rst:688 fb66916bd09d4ce1a73920a30968db22 +msgid "No criteria set." +msgstr "" + +#: ../../api/enums.rst:691 bd647ba2a4774531947bfcf3f9ad1f89 +msgid "Member must have a verified email on their Discord account." +msgstr "" + +#: ../../api/enums.rst:694 21bbe20b61c84b9b9cb300365c10afa0 +msgid "" +"Member must have a verified email and be registered on Discord for more " +"than five minutes." +msgstr "" + +#: ../../api/enums.rst:698 299d3b3c431b4bae9a49515dfb2ddbec +msgid "" +"Member must have a verified email, be registered on Discord for more than" +" five minutes, and be a member of the guild itself for more than ten " +"minutes." +msgstr "" + +#: ../../api/enums.rst:703 1469ed3a1ca6460fa6c38ed7a7a2d52c +msgid "Member must have a verified phone on their Discord account." +msgstr "" + +#: ../../api/enums.rst:707 ec6aa59281a448b2ac2592ee503e482d +msgid "" +"Specifies whether a :class:`Guild` has notifications on for all messages " +"or mentions only by default." +msgstr "" + +#: ../../api/enums.rst:715 dc966a5e848642bea42db5392f380906 +msgid "Checks if two notification levels are equal." +msgstr "" + +#: ../../api/enums.rst:718 0be81a2959e048d69194270daa8d7163 +msgid "Checks if two notification levels are not equal." +msgstr "" + +#: ../../api/enums.rst:721 fd3e2b62b4e9464381f697a2ce986496 +msgid "Checks if a notification level is higher than another." +msgstr "" + +#: ../../api/enums.rst:724 f105280bb0c943be98437aa0c245d024 +msgid "Checks if a notification level is lower than another." +msgstr "" + +#: ../../api/enums.rst:727 846701cab8e64caa9e80f34c7bd03a54 +msgid "Checks if a notification level is higher or equal to another." +msgstr "" + +#: ../../api/enums.rst:730 ba3d791aa9ff4ad8870b943ac0e1ae2e +msgid "Checks if a notification level is lower or equal to another." +msgstr "" + +#: ../../api/enums.rst:734 be084b93aa534c83a085d8da3691a961 +msgid "" +"Members receive notifications for every message regardless of them being " +"mentioned." +msgstr "" + +#: ../../api/enums.rst:737 f92e661d81964e76a2c775a52c6657cb +msgid "Members receive notifications for messages they are mentioned in." +msgstr "" + +#: ../../api/enums.rst:741 95af5bd00d43462a906e5084192ed897 +msgid "" +"Specifies a :class:`Guild`\\'s explicit content filter, which is the " +"machine learning algorithms that Discord uses to detect if an image " +"contains pornography or otherwise explicit content." +msgstr "" + +#: ../../api/enums.rst:751 a306a70455c3408d8c5e838c614c2555 +msgid "Checks if two content filter levels are equal." +msgstr "" + +#: ../../api/enums.rst:754 dfe076afd3cb44fd85205ba4d94cf663 +msgid "Checks if two content filter levels are not equal." +msgstr "" + +#: ../../api/enums.rst:757 0a9e650407c34c7f9dc886f8c8a775f9 +msgid "Checks if a content filter level is higher than another." +msgstr "" + +#: ../../api/enums.rst:760 ce931389a4cf4b66a5f4b13d9045274d +msgid "Checks if a content filter level is lower than another." +msgstr "" + +#: ../../api/enums.rst:763 dfcdb88cdef544e78bae9e35fa0459bb +msgid "Checks if a content filter level is higher or equal to another." +msgstr "" + +#: ../../api/enums.rst:766 1792e32dd6e843af9dd1121e4e8bc63d +msgid "Checks if a content filter level is lower or equal to another." +msgstr "" + +#: ../../api/enums.rst:770 c66d2de8b0bd4072942c7a693c3b7ae3 +msgid "The guild does not have the content filter enabled." +msgstr "" + +#: ../../api/enums.rst:773 ef98aa26fcaa4365b198f3e765a07fd6 +msgid "The guild has the content filter enabled for members without a role." +msgstr "" + +#: ../../api/enums.rst:776 8bc9bb4ad1ea4f1a89ce1889d698ec18 +msgid "The guild has the content filter enabled for every member." +msgstr "" + +#: ../../api/enums.rst:780 f773f9149bb44c4d83e0298ae408fd6a +msgid "Specifies a :class:`Member` 's status." +msgstr "" + +#: ../../api/enums.rst:784 727979554bd64ac1a0b4393cd7bb5228 +msgid "The member is online." +msgstr "" + +#: ../../api/enums.rst:787 7b5be27e51204bcdaffd82a57a6de69c +msgid "The member is offline." +msgstr "" + +#: ../../api/enums.rst:790 74ddceb1cc1a4566ac34fe6a0b1abb54 +msgid "The member is idle." +msgstr "" + +#: ../../api/enums.rst:793 4490b159c76941dbab94c39b712ccaf2 +msgid "The member is \"Do Not Disturb\"." +msgstr "" + +#: ../../api/enums.rst:796 64dc5bb4a3954ac9ad8e84ee8959ba78 +msgid "An alias for :attr:`dnd`." +msgstr "" + +#: ../../api/enums.rst:799 6db87d8dee034d9d8685436fa8a26db0 +msgid "" +"The member is \"invisible\". In reality, this is only used in sending a " +"presence a la :meth:`Client.change_presence`. When you receive a user's " +"presence this will be :attr:`offline` instead." +msgstr "" + +#: ../../api/enums.rst:804 5638a65a34fa4c8b90930cd7817a2867 +msgid "The member is streaming." +msgstr "" + +#: ../../api/enums.rst:809 60612463044b4cde8d8308b993f3063e +msgid "" +"Represents the type of action being done for a :class:`AuditLogEntry`\\, " +"which is retrievable via :meth:`Guild.audit_logs`." +msgstr "" + +#: ../../api/enums.rst:814 632a23827cce4e32a73c4ba7e5176503 +msgid "The guild has updated. Things that trigger this include:" +msgstr "" + +#: ../../api/enums.rst:816 739c484cff324836b4bbc7e9a4ba5727 +msgid "Changing the guild vanity URL" +msgstr "" + +#: ../../api/enums.rst:817 e2613a32359c47618dd6be48de2d7696 +msgid "Changing the guild invite splash" +msgstr "" + +#: ../../api/enums.rst:818 bd56053367fa4283bb319f326001c04c +msgid "Changing the guild AFK channel or timeout" +msgstr "" + +#: ../../api/enums.rst:819 9822d25614704b7cb849ddd61ea89034 +msgid "Changing the guild voice server region" +msgstr "" + +#: ../../api/enums.rst:820 9f5b610f62304c51a1999c420d0b5c31 +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "" + +#: ../../api/enums.rst:821 8f44ea06843349ef910d0e022ee62ebd +msgid "Changing the guild moderation settings" +msgstr "" + +#: ../../api/enums.rst:822 2ba541de1193448fa261b50507c699fb +msgid "Changing things related to the guild widget" +msgstr "" + +#: ../../api/enums.rst:824 c890e719787243a5af28be7c6f82f77b +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Guild`." +msgstr "" + +#: ../../api/enums.rst:827 ../../api/enums.rst:853 ../../api/enums.rst:872 +#: ../../api/enums.rst:894 ../../api/enums.rst:913 ../../api/enums.rst:929 +#: ../../api/enums.rst:944 ../../api/enums.rst:1003 ../../api/enums.rst:1017 +#: ../../api/enums.rst:1062 ../../api/enums.rst:1082 ../../api/enums.rst:1097 +#: ../../api/enums.rst:1112 ../../api/enums.rst:1136 ../../api/enums.rst:1153 +#: ../../api/enums.rst:1169 ../../api/enums.rst:1182 ../../api/enums.rst:1195 +#: ../../api/enums.rst:1206 ../../api/enums.rst:1217 ../../api/enums.rst:1314 +#: ../../api/enums.rst:1329 ../../api/enums.rst:1350 ../../api/enums.rst:1369 +#: ../../api/enums.rst:1388 ../../api/enums.rst:1407 ../../api/enums.rst:1428 +#: ../../api/enums.rst:1449 ../../api/enums.rst:1470 ../../api/enums.rst:1488 +#: ../../api/enums.rst:1506 ../../api/enums.rst:1524 ../../api/enums.rst:1534 +#: ../../api/enums.rst:1551 ../../api/enums.rst:1567 ../../api/enums.rst:1618 +#: ../../api/enums.rst:1632 050b5f3e2f0b4e75b8f233a76bd515dd +#: 0619742d7fa140278430c051be11dc1b 0776e36908074d45bfacf9e98b402a96 +#: 0857346d12f54c63ba891ac188e985b3 093c3ea325f44f168aac272a73defeec +#: 1e5784f497904a1b8ea5e31e43b2a0ad 22d68de8370648cf9093a7a877656bf4 +#: 252bbee44ed14a1f9ddb9a6c43cbda0d 3411856d93a14776a6aa2dbfe75fdef0 +#: 38aec5e643c249b19b3d7b91ef993e5e 4ad9e4ec222545458f27f958fe5bf43d +#: 5226c38d1fd44f3b816c29f729fa90c3 5baecd9f1e2143c88378ba7f0e3ffb96 +#: 61e23683148c4bf68627e0418b64f5f3 69139dd3ef9e48d3b1af81c1e81c39d4 +#: 6bfd123a5fca4eb0b0ac3ef7104dfac3 7499b8f78f014a8d8f9513dd6c5e69e3 +#: 752fd4d41eb541729116bdab7b643fc9 91b67ae606ac453c9bf64b0b2012bac5 +#: 95b8db2d9c284969b08a1156718090be 96717b9a46964b4692326fe8a96295a2 +#: 9a20bd8774814a64b14884977510d1e6 a1736cc07b154021a682d4e42420bf9a +#: a2803ec37cea445fbe05eee14f7e763a a6e309f478874004a40055c758f64d0e +#: a9cdc043a5fb4f8db268fa48136a2dfe ad53aecba09c4cff97fbe106a8aae4c3 +#: bc68c25f397a452f91ce7b919f52007c bd06e8336d7741e7adfae9936f1bf7fe +#: bfff5308473d4af998d5e90e81bd9d42 c506008e4ec74cef851b196b09e69815 +#: db4eb198caca4bd08cb1893c95ad57a7 de04652441c24b81be6d3d268922492e +#: ecd21b91f59c49bdabb7f8d74a287e1e f0e7616a583a47d4831939f3e25e8627 +#: f1a1175365964973a77e600680c1613b fffb0afd84694213a281950c9c2906db +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "" + +#: ../../api/enums.rst:829 22e4308bba9c4789ad88e620c6469324 +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr "" + +#: ../../api/enums.rst:830 f3892be329644776b547cf3fa7c32533 +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr "" + +#: ../../api/enums.rst:831 c31a4836714247cc8ae5d1e97f1fa0a1 +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr "" + +#: ../../api/enums.rst:832 b144fcde9e3e42499f4790871baa00c5 +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr "" + +#: ../../api/enums.rst:833 0d0e5e72f40447838c0a0c80fcdd0d6f +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr "" + +#: ../../api/enums.rst:834 c2be22b8817b42c48e8a71489d583ebe +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr "" + +#: ../../api/enums.rst:835 ../../api/enums.rst:855 ../../api/enums.rst:874 +#: ../../api/enums.rst:896 ../../api/enums.rst:1067 ../../api/enums.rst:1087 +#: ../../api/enums.rst:1102 ../../api/enums.rst:1156 ../../api/enums.rst:1172 +#: ../../api/enums.rst:1185 ../../api/enums.rst:1197 ../../api/enums.rst:1208 +#: ../../api/enums.rst:1219 ../../api/enums.rst:1352 ../../api/enums.rst:1371 +#: ../../api/enums.rst:1390 ../../api/enums.rst:1409 ../../api/enums.rst:1430 +#: ../../api/enums.rst:1451 ../../api/enums.rst:1472 ../../api/enums.rst:1490 +#: ../../api/enums.rst:1508 ../../api/enums.rst:1536 ../../api/enums.rst:1553 +#: ../../api/enums.rst:1569 0c293715eca54347b0f133a596ecfedf +#: 12c512f9e9f24101b8341757dbbeb0f4 1394b20d84104b49a743fdfeb699c225 +#: 1de697d2ea2c4cae9ccab9fb6fc6d38a 2f935e45567444cca02d6e556a3e0904 +#: 46d1f8301ff548f1af259ccd664c3f42 515eb479a052419d88d9d9bd1eb338a0 +#: 558f751460d247b2a058a50b81e48a08 580ac06e34cc423d8a0c7804bcfa7dff +#: 646a54b16dff41a2b03ed31ac183c0b2 70b4a80497dc4c718cba972b132e9059 +#: 895caa8a7a2b40a3be55d2ec1baf44b1 99cc876d108e4eab8371a7d45c0ea1b9 +#: ac7026819cf84b46ab62b7fc660eec2a ac7b378f7a1046ebab645d5f7d3ff34e +#: b44ca51adbc64e51b77c441b2878ad83 b5339c2060384a359e7c71febf3ca2ce +#: b5ae5559c92341f9946a0237c88316b8 bfe00e359c3f448eace931206c0b2ee9 +#: c31820d94e12407ba086b701f92569b0 c5d4dc545e724ea9989d999fa6992cce +#: d5910caed39b4422a0bf2361a6565612 d7fd5443343b4bc88ce6cd8918cdfeab +#: e51f5200cbe140f19c8c3b3e2d75a534 fe717eea581f494ebf36019cc19d9964 +msgid ":attr:`~AuditLogDiff.name`" +msgstr "" + +#: ../../api/enums.rst:836 c02c63c7c88f4fe181dda7376bebc148 +msgid ":attr:`~AuditLogDiff.owner`" +msgstr "" + +#: ../../api/enums.rst:837 0c026e75724c47d7beb2a2c77e9f7c79 +msgid ":attr:`~AuditLogDiff.splash`" +msgstr "" + +#: ../../api/enums.rst:838 2e2b9b9568f446af9fc48b3fb53bf57c +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr "" + +#: ../../api/enums.rst:839 eca51cbb07124eafb49aafd57720c935 +msgid ":attr:`~AuditLogDiff.icon`" +msgstr "" + +#: ../../api/enums.rst:840 e88cfaca97164239924deb0947a3bb53 +msgid ":attr:`~AuditLogDiff.banner`" +msgstr "" + +#: ../../api/enums.rst:841 8f50869b6362417792226758c9cee340 +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr "" + +#: ../../api/enums.rst:845 902049bae0b942798334fe1b7ca30562 +msgid "A new channel was created." +msgstr "" + +#: ../../api/enums.rst:847 e00bbae1ecc54cd4aa7b2f97761a2857 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is " +"either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "" + +#: ../../api/enums.rst:850 a1df25c5f1984895b983d5275d8f8af5 +msgid "" +"A more filled out object in the :class:`Object` case can be found by " +"using :attr:`~AuditLogEntry.after`." +msgstr "" + +#: ../../api/enums.rst:856 ../../api/enums.rst:875 ../../api/enums.rst:897 +#: ../../api/enums.rst:918 ../../api/enums.rst:934 ../../api/enums.rst:949 +#: ../../api/enums.rst:1354 ../../api/enums.rst:1373 ../../api/enums.rst:1392 +#: 0ae29b838f1448d8b8f928d6939b92cd 1eec71ede8394476b9a4dc4ebffa9df6 +#: 2ee6e5873b53484eb7bd37f41c17a4bb 3de7a19ea4524c6bb59edd609646a050 +#: 998ef1796ea64671a79e87a4227e271c 9ec89df3159c46e287c1d83f1fa8ba27 +#: a9329e3bd572430b8360afda3dd26ee0 b61a8e74c58248e4a0d8c0c18806f0d4 +#: ff75120af4cd405d9f119936bb32f72d +msgid ":attr:`~AuditLogDiff.type`" +msgstr "" + +#: ../../api/enums.rst:857 ../../api/enums.rst:877 ../../api/enums.rst:898 +#: 11cbe518c99642b49c959a2204a2c37a 648726ce83124608809879a7571168a2 +#: b3e74457949d4229b324163fc858e635 +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr "" + +#: ../../api/enums.rst:861 d3e3191004c34df799b5f5fbe25f013f +msgid "A channel was updated. Things that trigger this include:" +msgstr "" + +#: ../../api/enums.rst:863 98d0c561278d4e9d8096de31ee31173c +msgid "The channel name or topic was changed" +msgstr "" + +#: ../../api/enums.rst:864 5bc50a7dc2e240ad8f79a8c4704a3418 +msgid "The channel bitrate was changed" +msgstr "" + +#: ../../api/enums.rst:866 ../../api/enums.rst:904 +#: 5257b72e408a46d4a7b06498d32f7209 8f81efbdafac4745899e4ad861717ecd +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "" + +#: ../../api/enums.rst:869 48fbbcac84324aeeb2f83e415ad0b051 +msgid "" +"A more filled out object in the :class:`Object` case can be found by " +"using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "" + +#: ../../api/enums.rst:876 b9290b43388846c7a46f16bceccfbdbf +msgid ":attr:`~AuditLogDiff.position`" +msgstr "" + +#: ../../api/enums.rst:878 ../../api/enums.rst:1316 ../../api/enums.rst:1331 +#: 51da4ef9f1994a6789fb2c54c371a367 67ee76e83c454d32899f6326a4949701 +#: 7aeb804efb7d4bb8bd585a9b325278ba +msgid ":attr:`~AuditLogDiff.topic`" +msgstr "" + +#: ../../api/enums.rst:879 6464625c11634cc199dd526145504a9e +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr "" + +#: ../../api/enums.rst:880 e914c09c71f34c58ab692ba1c54e5750 +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr "" + +#: ../../api/enums.rst:881 d42f4667cecb4ff28a06c06c21882209 +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr "" + +#: ../../api/enums.rst:882 e50b4d7fb0624f398085aa35aef1ce5b +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr "" + +#: ../../api/enums.rst:886 4bca3568aafc430883f16570fd625acb +msgid "A channel was deleted." +msgstr "" + +#: ../../api/enums.rst:888 5af5984da736481eae7b9ec37355167b +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is an " +":class:`Object` with an ID." +msgstr "" + +#: ../../api/enums.rst:891 aa14e43f332a43d2a9076ca32feb165e +msgid "" +"A more filled out object can be found by using the " +":attr:`~AuditLogEntry.before` object." +msgstr "" + +#: ../../api/enums.rst:902 0a3eeba6a561475bb1093b0e9c574110 +msgid "A channel permission overwrite was created." +msgstr "" + +#: ../../api/enums.rst:907 10f0d8428fb44ef8b43417b8f03cc667 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.extra` is " +"either a :class:`Role` or :class:`Member`. If the object is not found " +"then it is a :class:`Object` with an ID being filled, a name, and a " +"``type`` attribute set to either ``'role'`` or ``'member'`` to help " +"dictate what type of ID it is." +msgstr "" + +#: ../../api/enums.rst:915 ../../api/enums.rst:931 ../../api/enums.rst:946 +#: 5a13c30cb38b4c0b9d3a2a369009cf4c 70e9189a4a7b4f49ac3a3308fb205f8a +#: b424ed66d8e84fb79fbfe5ed3ed2cb86 +msgid ":attr:`~AuditLogDiff.deny`" +msgstr "" + +#: ../../api/enums.rst:916 ../../api/enums.rst:932 ../../api/enums.rst:947 +#: 4c5c591191e04caca5c233d14a2705a7 c7199b2fdb5742238c2221d7b22c7954 +#: dc4242d8e2824db3a5e69e283a111660 +msgid ":attr:`~AuditLogDiff.allow`" +msgstr "" + +#: ../../api/enums.rst:917 ../../api/enums.rst:933 ../../api/enums.rst:948 +#: 1b799e07563746b4a908a2ec9213439b 35f09304dc1349a39b5f06c5dcee6b92 +#: 4655625eec82495495f1912345214c5b +msgid ":attr:`~AuditLogDiff.id`" +msgstr "" + +#: ../../api/enums.rst:922 d2431e9dfea74688bba2536e6c35b787 +msgid "" +"A channel permission overwrite was changed, this is typically when the " +"permission values change." +msgstr "" + +#: ../../api/enums.rst:925 ../../api/enums.rst:940 +#: 548a7a8ca0314acf9735eac331d866e9 b74dea0f59eb486f98c229b259e001f9 +msgid "" +"See :attr:`overwrite_create` for more information on how the " +":attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are" +" set." +msgstr "" + +#: ../../api/enums.rst:938 80f46495697548b5a7050db9f950fbae +msgid "A channel permission overwrite was deleted." +msgstr "" + +#: ../../api/enums.rst:953 da1fc8cf0b4b4f41a454b0142a8cfdb4 +msgid "A member was kicked." +msgstr "" + +#: ../../api/enums.rst:955 9462b1de374b4d8696d91df0e11eaf2e +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`User` who got kicked." +msgstr "" + +#: ../../api/enums.rst:958 ../../api/enums.rst:973 ../../api/enums.rst:982 +#: ../../api/enums.rst:991 27a6a127989d4532a61debf08a3fa570 +#: 71e96ce05c754141bdccada47c638e79 8d80f3e4c17140e9ac2805db8431e4e8 +#: a414b2f116ac46ada7444b1b3e19804c +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "" + +#: ../../api/enums.rst:962 a42f6c019433416db0d63e147f403d85 +msgid "A member prune was triggered." +msgstr "" + +#: ../../api/enums.rst:964 4c83a0acb3cc4f5d9f86ee20117108e6 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is set" +" to ``None``." +msgstr "" + +#: ../../api/enums.rst:967 ../../api/enums.rst:1026 ../../api/enums.rst:1229 +#: ../../api/enums.rst:1256 ../../api/enums.rst:1271 +#: 2dbf8d34537d45518170b5a4c8ffb3cc 7716d95527c348e5b78e86a177044241 +#: 812eb56e424040508ad06db116cc0f17 96a3ff2630e046b69b446776774304a9 +#: b77778578eb74355ae650d2fd52036ed +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.extra` is set " +"to an unspecified proxy object with two attributes:" +msgstr "" + +#: ../../api/enums.rst:970 97c74c62f95b40a3a6cbff5163170239 +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "" + +#: ../../api/enums.rst:971 096f33ff779c4097a1ef75c0e894457e +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "" + +#: ../../api/enums.rst:977 877a04c39e16466dade6cfadc93f7c27 +msgid "A member was banned." +msgstr "" + +#: ../../api/enums.rst:979 770451079d8d4b5f8e33b6c52da5f3ff +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`User` who got banned." +msgstr "" + +#: ../../api/enums.rst:986 3b2ae463eb7b4f7a9791c566854c5c1a +msgid "A member was unbanned." +msgstr "" + +#: ../../api/enums.rst:988 456609aa1df0460dbb3dcd6b5414aca8 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`User` who got unbanned." +msgstr "" + +#: ../../api/enums.rst:995 9f69f34e9ff743b994009ea40c627614 +msgid "A member has updated. This triggers in the following situations:" +msgstr "" + +#: ../../api/enums.rst:997 a544a120b4ee4844a5309e3925de5b11 +msgid "A nickname was changed" +msgstr "" + +#: ../../api/enums.rst:998 4633d30e1e5045e2b6c5c1c0695a0636 +msgid "They were server muted or deafened (or it was undone)" +msgstr "" + +#: ../../api/enums.rst:1000 3685711e4704496c8312ef6113636f20 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Member` or :class:`User` who got updated." +msgstr "" + +#: ../../api/enums.rst:1005 c510c63833424799981d8707385c2273 +msgid ":attr:`~AuditLogDiff.nick`" +msgstr "" + +#: ../../api/enums.rst:1006 df5ef4a4cc2947b68d3a3009467c3315 +msgid ":attr:`~AuditLogDiff.mute`" +msgstr "" + +#: ../../api/enums.rst:1007 669b0e98d96f4a4bb1d02efd76cc2f33 +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr "" + +#: ../../api/enums.rst:1011 3168c0f6dd594f0eaefc02e12dbc54c8 +msgid "" +"A member's role has been updated. This triggers when a member either " +"gains a role or loses a role." +msgstr "" + +#: ../../api/enums.rst:1014 a57b479bb72143a6b0e1fa6cff760c1a +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Member` or :class:`User` who got the role." +msgstr "" + +#: ../../api/enums.rst:1019 cb8587e29f82416e87ff25127dc06b2e +msgid ":attr:`~AuditLogDiff.roles`" +msgstr "" + +#: ../../api/enums.rst:1023 c70c7e8ef89345efafdbab17bf609ff9 +msgid "" +"A member's voice channel has been updated. This triggers when a member is" +" moved to a different voice channel." +msgstr "" + +#: ../../api/enums.rst:1029 5440bab9f6a64c3fb332fe281170aefd +msgid "" +"``channel``: A :class:`TextChannel` or :class:`Object` with the channel " +"ID where the members were moved." +msgstr "" + +#: ../../api/enums.rst:1030 797d8b3c02204f6ebfed77b79d469a69 +msgid "``count``: An integer specifying how many members were moved." +msgstr "" + +#: ../../api/enums.rst:1036 b317d4610f7e4869b25a224b1fbdca0b +msgid "" +"A member's voice state has changed. This triggers when a member is force " +"disconnected from voice." +msgstr "" + +#: ../../api/enums.rst:1039 ../../api/enums.rst:1242 +#: a7df0bd89c504de1bd34eb9aae01ffdd f1c87b2f6b27443a9bfb2f71e47d823b +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.extra` is set " +"to an unspecified proxy object with one attribute:" +msgstr "" + +#: ../../api/enums.rst:1042 a37ce51898424e1588bffced6528805d +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "" + +#: ../../api/enums.rst:1048 767c4131a5a44823a1e7f53894454c9e +msgid "A bot was added to the guild." +msgstr "" + +#: ../../api/enums.rst:1050 aad1bbec2f2a487784929c43e432558a +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Member` or :class:`User` which was added to the guild." +msgstr "" + +#: ../../api/enums.rst:1057 113e9849b1e74752a8869a0c1ffd14e4 +msgid "A new role was created." +msgstr "" + +#: ../../api/enums.rst:1059 ../../api/enums.rst:1079 ../../api/enums.rst:1094 +#: 5547887ba3e64a6cadc87783c1bcecf7 91ed6f1edab04e8aad95cd8d9aa069f7 +#: f5e5f97f23e7451c8914aad7c3391dd4 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Role` or a :class:`Object` with the ID." +msgstr "" + +#: ../../api/enums.rst:1064 ../../api/enums.rst:1084 ../../api/enums.rst:1099 +#: 78a55e9bc42241f9a96d7224c5f829b9 c8f52d8ffd564aeeb79100f37e0325a9 +#: c9397379c14f4c23ac15cd0553fafd82 +msgid ":attr:`~AuditLogDiff.colour`" +msgstr "" + +#: ../../api/enums.rst:1065 ../../api/enums.rst:1085 ../../api/enums.rst:1100 +#: 16cea7c03f6f467cb4885cc212ad03ed 42aa4a1fa28042b6880c172318537e00 +#: eedbba5c376e47df94bda7b4263dad48 +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr "" + +#: ../../api/enums.rst:1066 ../../api/enums.rst:1086 ../../api/enums.rst:1101 +#: a6bebfacdbd34302b9f9d66309f5cdac c3a50507a9ed44eaa961e0cd5cf90b8b +#: cae8f831afd84c8f8ec3f34a605bf3a5 +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr "" + +#: ../../api/enums.rst:1068 ../../api/enums.rst:1088 ../../api/enums.rst:1103 +#: 6291a02bf06e4893b114eb374c0972ea 9eb0712d85af4316b0ce621843c8e83a +#: add7cd11dbb04b919e545c8027e3abac +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr "" + +#: ../../api/enums.rst:1072 d9dfda6a35974401a26b2c11d5bbbc7a +msgid "A role was updated. This triggers in the following situations:" +msgstr "" + +#: ../../api/enums.rst:1074 c0be7ff1754a484db3ff044dc08a5819 +msgid "The name has changed" +msgstr "" + +#: ../../api/enums.rst:1075 6fa2713e239b4564bf5605320b494175 +msgid "The permissions have changed" +msgstr "" + +#: ../../api/enums.rst:1076 4ff2b1766c94484b96274b722058b292 +msgid "The colour has changed" +msgstr "" + +#: ../../api/enums.rst:1077 98644645ef474f4396c1f75dc07216c1 +msgid "Its hoist/mentionable state has changed" +msgstr "" + +#: ../../api/enums.rst:1092 3254c9db3f0e44e79d2d800a84c5e124 +msgid "A role was deleted." +msgstr "" + +#: ../../api/enums.rst:1107 07b94a8a9e374347b683f0f1830b37d3 +msgid "An invite was created." +msgstr "" + +#: ../../api/enums.rst:1109 ce279e2749bb47529031e1755e0740c2 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Invite` that was created." +msgstr "" + +#: ../../api/enums.rst:1114 ../../api/enums.rst:1138 +#: 4b17ff80832c43dc985fef67f54f8867 63ed30d0cf114ac7897b93dbf0ebf677 +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr "" + +#: ../../api/enums.rst:1115 ../../api/enums.rst:1139 +#: 80061f89311c4b1c840a03cb3d637b8a 98082e38b018425aad8bb7cba4329f6b +msgid ":attr:`~AuditLogDiff.code`" +msgstr "" + +#: ../../api/enums.rst:1116 ../../api/enums.rst:1140 +#: 491537ae15b2481b96f5f897cbc0f594 a06a13e2c7fd4ea58ff641ae8758f789 +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr "" + +#: ../../api/enums.rst:1117 ../../api/enums.rst:1141 +#: 7d631cc9c2c84b1f87e678854919422a a2b61b72f027412aaf6e17de2db74522 +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr "" + +#: ../../api/enums.rst:1118 ../../api/enums.rst:1142 ../../api/enums.rst:1155 +#: ../../api/enums.rst:1171 ../../api/enums.rst:1184 ../../api/enums.rst:1411 +#: ../../api/enums.rst:1432 ../../api/enums.rst:1453 +#: 28ea5cd1a0434d598a0aef1d8ed865b9 4237027b541d4783b363e232e7b14c04 +#: 723c64f924f24657939b655291a50d47 80cd12851d3d4ef3a24a79f9a22518ee +#: a5886d55b844447395a66697a447146e d0f57a601eda4711a767462d7dcd2f7e +#: f6760b3a7eeb420bae78324ec9219b80 fe4c5c753de54249aa866828f408a565 +msgid ":attr:`~AuditLogDiff.channel`" +msgstr "" + +#: ../../api/enums.rst:1119 ../../api/enums.rst:1143 +#: 58673fccfc5e44d693f2c5a9b836cfd6 f0cb2c7e0fd845bf97ab419451436a0d +msgid ":attr:`~AuditLogDiff.uses`" +msgstr "" + +#: ../../api/enums.rst:1120 ../../api/enums.rst:1144 +#: 9c22d47dc70d4bf6b8eb85c93024ecea ed096900498d4549bfcca4bfce2acfcf +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr "" + +#: ../../api/enums.rst:1124 6fba5968ea2140edaf5c6920b4177d38 +msgid "An invite was updated." +msgstr "" + +#: ../../api/enums.rst:1126 c0adb6372c474dd9a6fa1b79ababb781 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Invite` that was updated." +msgstr "" + +#: ../../api/enums.rst:1131 89c1b80cc1114e8a89ba6aa80e3b635a +msgid "An invite was deleted." +msgstr "" + +#: ../../api/enums.rst:1133 951939c17ece4b73a544877c61858520 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Invite` that was deleted." +msgstr "" + +#: ../../api/enums.rst:1148 d8d5352632bd48d381951430129bba1d +msgid "A webhook was created." +msgstr "" + +#: ../../api/enums.rst:1150 ../../api/enums.rst:1166 ../../api/enums.rst:1179 +#: 2fe79b01b896449f8a2711781524a8df 59d99fea521c4d5f9ce1c97173c5a522 +#: ef972dbe7ec941a5907d624c86a390d6 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Object` with the webhook ID." +msgstr "" + +#: ../../api/enums.rst:1157 ../../api/enums.rst:1186 +#: 0bdfb34cd2b849d0a7293c9a911f4adf 4cd9b18b6fd844f084981705eb37900e +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr "" + +#: ../../api/enums.rst:1161 41467b9018c348b4ada46a61a597aae0 +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "" + +#: ../../api/enums.rst:1163 7fdd2431c3c246bc83d907abb08f3801 +msgid "The webhook name changed" +msgstr "" + +#: ../../api/enums.rst:1164 b0d8e438c965430ab7887a917e0e8e59 +msgid "The webhook channel changed" +msgstr "" + +#: ../../api/enums.rst:1173 db08795bf6dc4cdf875deacb581bf66d +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr "" + +#: ../../api/enums.rst:1177 53f84f6d911b427a82d7422c010c7be6 +msgid "A webhook was deleted." +msgstr "" + +#: ../../api/enums.rst:1190 e7175cc208c84d12957322bfb535b34b +msgid "An emoji was created." +msgstr "" + +#: ../../api/enums.rst:1192 ../../api/enums.rst:1203 +#: 41aeb9dc3c5840aeb56f92ec751f6cd0 df5de1fd8daa4ce2a481835fc9ae71f4 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "" + +#: ../../api/enums.rst:1201 68f03695f66b4169a03ed9c1dc80389f +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "" + +#: ../../api/enums.rst:1212 48163ca0ef4c45ae844e45109240ea51 +msgid "An emoji was deleted." +msgstr "" + +#: ../../api/enums.rst:1214 6c4676bf1a414f30a39f7196f7d82d10 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Object` with the emoji ID." +msgstr "" + +#: ../../api/enums.rst:1223 00ed260437894ceca3ae37e9a173fe0d +msgid "" +"A message was deleted by a moderator. Note that this only triggers if the" +" message was deleted by someone other than the author." +msgstr "" + +#: ../../api/enums.rst:1226 8982961c175341f9a00e1d4196d2528a +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Member` or :class:`User` who had their message deleted." +msgstr "" + +#: ../../api/enums.rst:1232 ../../api/enums.rst:1245 +#: 4468836a846542d6a6df219845f7c8c0 92a746616613438f9e44ef14f58c45f6 +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "" + +#: ../../api/enums.rst:1233 0465bcc39989438fbc4fc946201f3198 +msgid "" +"``channel``: A :class:`TextChannel` or :class:`Object` with the channel " +"ID where the message got deleted." +msgstr "" + +#: ../../api/enums.rst:1237 b666af6168ac4da4925c44e8955fd829 +msgid "Messages were bulk deleted by a moderator." +msgstr "" + +#: ../../api/enums.rst:1239 b496e7abbf6641c6aa0ecb2f408fa88d +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`TextChannel` or :class:`Object` with the ID of the channel that " +"was purged." +msgstr "" + +#: ../../api/enums.rst:1251 26b1fef40156492aade7797dec762c5b +msgid "A message was pinned in a channel." +msgstr "" + +#: ../../api/enums.rst:1253 d1e5158c3f894e9098ce7240dda29673 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Member` or :class:`User` who had their message pinned." +msgstr "" + +#: ../../api/enums.rst:1259 33b6b5d83e1b460da4ba77c314d523a0 +msgid "" +"``channel``: A :class:`TextChannel` or :class:`Object` with the channel " +"ID where the message was pinned." +msgstr "" + +#: ../../api/enums.rst:1260 b02423c690af4a9fb690657d4b07c8e5 +msgid "``message_id``: the ID of the message which was pinned." +msgstr "" + +#: ../../api/enums.rst:1266 044f2e7645914a0ba5e4145600a04267 +msgid "A message was unpinned in a channel." +msgstr "" + +#: ../../api/enums.rst:1268 9133756a00814e1591bec12ddd56edb6 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Member` or :class:`User` who had their message unpinned." +msgstr "" + +#: ../../api/enums.rst:1274 88df13e8f17342db8d4441d72f234b2a +msgid "" +"``channel``: A :class:`TextChannel` or :class:`Object` with the channel " +"ID where the message was unpinned." +msgstr "" + +#: ../../api/enums.rst:1275 b626f07690e84a63af8a2164b849883c +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "" + +#: ../../api/enums.rst:1281 3dd421c8d563469a97e25a3e6ddea1e8 +msgid "A guild integration was created." +msgstr "" + +#: ../../api/enums.rst:1283 28a61562db5c42e58719d9abdd270252 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Object` with the integration ID of the integration which was " +"created." +msgstr "" + +#: ../../api/enums.rst:1290 760589bb3a7d45058bd7bef6a304f95d +msgid "A guild integration was updated." +msgstr "" + +#: ../../api/enums.rst:1292 cc4ffb3112c04683842b7de2775fb45d +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Object` with the integration ID of the integration which was " +"updated." +msgstr "" + +#: ../../api/enums.rst:1299 933106178e5547948aa91bdcbd78433d +msgid "A guild integration was deleted." +msgstr "" + +#: ../../api/enums.rst:1301 f5bd9a45dda249209e96a6ee8751ca52 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Object` with the integration ID of the integration which was " +"deleted." +msgstr "" + +#: ../../api/enums.rst:1308 5f8e9f5c32bf4508b5f303a3410265aa +msgid "A stage instance was started." +msgstr "" + +#: ../../api/enums.rst:1310 c2e9a68539184e2fa02ef00208b3a2aa +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`StageInstance` or :class:`Object` with the ID of the stage " +"instance which was created." +msgstr "" + +#: ../../api/enums.rst:1317 ../../api/enums.rst:1332 ../../api/enums.rst:1412 +#: ../../api/enums.rst:1433 ../../api/enums.rst:1454 +#: 44e35106f7094f5fb9455ee772ec0ab6 625caa87aa24485fb1397616cf577a7a +#: d65c3aecb6c0489696f90eadd54ecddf f8fdb84c50e44daeb4c36d389b641c96 +#: fad91e851d004a6b90a25284db67decf +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr "" + +#: ../../api/enums.rst:1323 39f42f6186ef44da90259d27f7714aaa +msgid "A stage instance was updated." +msgstr "" + +#: ../../api/enums.rst:1325 5f94e6a27480458483dd65b0a69b1037 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`StageInstance` or :class:`Object` with the ID of the stage " +"instance which was updated." +msgstr "" + +#: ../../api/enums.rst:1338 68be42754dcf431aa9cbbc788139632b +msgid "A stage instance was ended." +msgstr "" + +#: ../../api/enums.rst:1344 b272d864a7ce4045bafbee2d91846c0d +msgid "A sticker was created." +msgstr "" + +#: ../../api/enums.rst:1346 ../../api/enums.rst:1365 ../../api/enums.rst:1384 +#: 3d62e77b4351433b96277edb798f3ce3 83e568d602594a06a3755e2645cea0e5 +#: a544a30d24fe44ce9cbd11c4d6bf9f7c +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`GuildSticker` or :class:`Object` with the ID of the sticker " +"which was updated." +msgstr "" + +#: ../../api/enums.rst:1353 ../../api/enums.rst:1372 ../../api/enums.rst:1391 +#: 2c0f60d87b514b59b8c45d1eb06bf0dd 583a543779cf4d9c86a08d861082267b +#: 7d2c2dae92fa4be7bcd52331157da5bb +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr "" + +#: ../../api/enums.rst:1355 ../../api/enums.rst:1374 ../../api/enums.rst:1393 +#: 123dd92166354b2782efe70594d4c669 591225f4c32c4c6cb4296ef99a4a5aea +#: 98d494cb41e24671a60a79da9eafe995 +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr "" + +#: ../../api/enums.rst:1356 ../../api/enums.rst:1375 ../../api/enums.rst:1394 +#: ../../api/enums.rst:1410 ../../api/enums.rst:1431 ../../api/enums.rst:1452 +#: 0e3cd3da365646e3a19d92b79ab09390 1c84003999434ea1b83339033d6f1b08 +#: 799a4b9a391c4475baa04647431d2cf1 7d0a742e6503449abe9e681184246edf +#: be345a6986ef4009a3e94c8dcab51547 efb8bf105929454c942dbc678084c415 +msgid ":attr:`~AuditLogDiff.description`" +msgstr "" + +#: ../../api/enums.rst:1357 ../../api/enums.rst:1376 ../../api/enums.rst:1395 +#: 2364c53b67874e0bb8ef85cc03081b1e 91fe394c81e54010909f486a0a62ccda +#: e621569837954f27972fc94f56f0b1bb +msgid ":attr:`~AuditLogDiff.available`" +msgstr "" + +#: ../../api/enums.rst:1363 899d08deac6348098bd7c041fbf23728 +msgid "A sticker was updated." +msgstr "" + +#: ../../api/enums.rst:1382 f9aabd9368034d05978e3ee12f1155fc +msgid "A sticker was deleted." +msgstr "" + +#: ../../api/enums.rst:1401 38576243ba11499c8f6670a8e071b23b +msgid "A scheduled event was created." +msgstr "" + +#: ../../api/enums.rst:1403 ../../api/enums.rst:1424 ../../api/enums.rst:1445 +#: 3a98586e07cd4bd4b61d000b98c58dec 5a0b011e635a4d84895b73b59e7641c9 +#: af920a7bbbc94e369a1d93f7a1cc290a +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`ScheduledEvent` or :class:`Object` with the ID of the thread " +"which was deleted." +msgstr "" + +#: ../../api/enums.rst:1413 ../../api/enums.rst:1434 ../../api/enums.rst:1455 +#: 3ce8b3fb8cdb40feb984d3851b53ed2d 4e176938b5ab445290fa6b9fe22d0261 +#: a42a905118e545359543f03054ca8874 +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr "" + +#: ../../api/enums.rst:1414 ../../api/enums.rst:1435 ../../api/enums.rst:1456 +#: b6a63604628744a3bc3aa26a49390e7f c47fb618a6a947ec9ff4a6875bf364ae +#: e59ba5034b72405cba2bd082ef739063 +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr "" + +#: ../../api/enums.rst:1415 ../../api/enums.rst:1436 ../../api/enums.rst:1457 +#: 0c99d4fce1d04a07812e647b68078da6 9d33cef93ba04aaeaa2ad8cae3d8dc49 +#: b89408ceb4084309b42b7239e9feb62b +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr "" + +#: ../../api/enums.rst:1416 ../../api/enums.rst:1437 ../../api/enums.rst:1458 +#: 0e093f4fc20c4d4c93052a0e73f2c90c 28f6a91e32b84ed0a6993a51d9b36113 +#: 6a7f6324a52842f78660d3d570b3474f +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr "" + +#: ../../api/enums.rst:1422 2252dcfbdddc4518ba9f0199a082b519 +msgid "A scheduled event was updated." +msgstr "" + +#: ../../api/enums.rst:1443 bb429c2196f24695b2d8d9eb0078ecd6 +msgid "A scheduled event was deleted." +msgstr "" + +#: ../../api/enums.rst:1464 cceba1207c31456faba4376926117457 +msgid "A thread was created." +msgstr "" + +#: ../../api/enums.rst:1466 afb06852a1554bf69f47285f8ffc16d4 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Thread` or :class:`Object` with the ID of the thread which was " +"created." +msgstr "" + +#: ../../api/enums.rst:1473 ../../api/enums.rst:1491 ../../api/enums.rst:1509 +#: 043230d39cfa4461a1c9f34486530bfe 5e10df6626994f96aa8ca205bb584fdf +#: 912ddcb3355a458d90aeab0137082161 +msgid ":attr:`~AuditLogDiff.archived`" +msgstr "" + +#: ../../api/enums.rst:1474 ../../api/enums.rst:1492 ../../api/enums.rst:1510 +#: 85bc413b27d047e89aec8a40c120b255 c83aa80e1c8642d6bfa6257faf79c176 +#: e862a1e81d244239be82de48fc3618c1 +msgid ":attr:`~AuditLogDiff.locked`" +msgstr "" + +#: ../../api/enums.rst:1475 ../../api/enums.rst:1493 ../../api/enums.rst:1511 +#: 0d034477efc24673bc7165634eec50bc 6ee5745a5889407f923396b63d2c0be9 +#: 81ec3efdb28a4f1da2a70783422b8b6e +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr "" + +#: ../../api/enums.rst:1476 ../../api/enums.rst:1494 ../../api/enums.rst:1512 +#: 4f086715273847ed83469dd67b4c9823 adce5da724a64308a735139135250eb8 +#: b78b252d467f4092846c5159c58b890b +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr "" + +#: ../../api/enums.rst:1482 df6fa3e3ec454818b8d9a17d68135162 +msgid "A thread was updated." +msgstr "" + +#: ../../api/enums.rst:1484 43b8091416ca4f4987c31bc8136e00f5 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Thread` or :class:`Object` with the ID of the thread which was " +"updated." +msgstr "" + +#: ../../api/enums.rst:1500 1ac5abed8f7042188c6f9a597b4d9e1f +msgid "A thread was deleted." +msgstr "" + +#: ../../api/enums.rst:1502 438ec881b324479aad7b59bb720a7b9c +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`Thread` or :class:`Object` with the ID of the thread which was " +"deleted." +msgstr "" + +#: ../../api/enums.rst:1518 2bfad9ddfb214fa4a9ca9516c683488c +msgid "An application command's permissions were updated." +msgstr "" + +#: ../../api/enums.rst:1520 e7552f8804b04c728f78efa08726afe8 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is an " +":class:`Object` with the ID of the command that had it's permissions " +"edited." +msgstr "" + +#: ../../api/enums.rst:1526 78afc906ed3c4751996fd204584c1948 +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr "" + +#: ../../api/enums.rst:1532 df674749995940d79c7bd5cfb222a814 +msgid "A guild auto moderation rule was created." +msgstr "" + +#: ../../api/enums.rst:1537 ../../api/enums.rst:1554 ../../api/enums.rst:1570 +#: 1a6da37f97714504b63b3cc67cd287dd 31b47099c3d143e38933e93b4bed7600 +#: c0e72ba6aeee400ba6b6be2c8179c441 +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr "" + +#: ../../api/enums.rst:1538 ../../api/enums.rst:1555 ../../api/enums.rst:1571 +#: 96f0dbd43fab42cd8da1b295291534a8 a29d09b8d1a54079b17bf108895a1d2c +#: e55b2c534b8a48b28c7486027a472d80 +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr "" + +#: ../../api/enums.rst:1539 ../../api/enums.rst:1572 +#: e4de7bbff1904eb083376272e84eebd8 e6e0f32618fe463999317e89c13b2b4c +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr "" + +#: ../../api/enums.rst:1540 ../../api/enums.rst:1556 ../../api/enums.rst:1573 +#: 53ff474414c545e0877c9dcfa81b07e9 c1d3188e8fff44d683c45799cc96404b +#: f158418a61d24685822ad2d4026e7fb9 +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr "" + +#: ../../api/enums.rst:1541 ../../api/enums.rst:1557 ../../api/enums.rst:1574 +#: 60f92a70f105440b83650e54eeb14221 75430aa557ed4c2a87460a3fadad5137 +#: b792aaf740e045babb81c2f58ab9407a +msgid ":attr:`~AuditLogDiff.actions`" +msgstr "" + +#: ../../api/enums.rst:1542 ../../api/enums.rst:1558 ../../api/enums.rst:1575 +#: 8a6a24983308476d8bb356863b85873f a3b6f535700543959d3bb54fb078e015 +#: c38f20feb116471888fe077289ce8040 +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr "" + +#: ../../api/enums.rst:1543 ../../api/enums.rst:1559 ../../api/enums.rst:1576 +#: 6db5bcd67f51475aacbe4e00cfd33b12 70b8c754ddd74892ac549fe3d22f8772 +#: d0fcfcce917e4cdba1501e04cd870554 +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr "" + +#: ../../api/enums.rst:1549 08714b4c79eb4a06bd4bad4c53f201af +msgid "A guild auto moderation rule was updated." +msgstr "" + +#: ../../api/enums.rst:1565 b6818219409d4e6aacbe23037c32b8ac +msgid "A guild auto moderation rule was deleted." +msgstr "" + +#: ../../api/enums.rst:1582 9c85ec4f6e2f48cdaa7c1697b08dbd12 +msgid "A message was blocked by auto moderation." +msgstr "" + +#: ../../api/enums.rst:1588 20649608cd1c49eb8887ce7a5a1064c3 +msgid "A message was flagged by auto moderation." +msgstr "" + +#: ../../api/enums.rst:1594 a271ec7a81804ceaa6c9e8de7f8c16ac +msgid "A member was timed out by auto moderation." +msgstr "" + +#: ../../api/enums.rst:1600 db5791aff5df4a76b6dd46f17ba8eb10 +msgid "A creator monetization request was created." +msgstr "" + +#: ../../api/enums.rst:1606 29b4fe1bf2594cd6923b822ddb23f607 +msgid "The creator monetization terms were accepted." +msgstr "" + +#: ../../api/enums.rst:1612 6d784c3658104e46b3553fa88209e336 +msgid "A voice channel status was updated." +msgstr "" + +#: ../../api/enums.rst:1614 ../../api/enums.rst:1628 +#: 21d7aa25fa2449bdbc086189b5743a39 d09aa244691540dbaeff35ae7f802cd6 +msgid "" +"When this is the action, the type of :attr:`~AuditLogEntry.target` is the" +" :class:`VoiceChannel` or :class:`Object` with the ID of the voice " +"channel which was updated." +msgstr "" + +#: ../../api/enums.rst:1620 ../../api/enums.rst:1634 +#: 73946b20ffa0408d809d244e405077f2 9e02b19e51fd49449aacc3c074f5918a +msgid ":attr:`~AuditLogDiff.status`" +msgstr "" + +#: ../../api/enums.rst:1626 d1f055c436d14c188223461f9ca0cb1f +msgid "A voice channel status was deleted." +msgstr "" + +#: ../../api/enums.rst:1641 4b5b16167df54688914416bf0caf7627 +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "" + +#: ../../api/enums.rst:1643 9dbab0a232604abd8953a7df6a0bdf70 +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "" + +#: ../../api/enums.rst:1647 f06b452c09974142b467507b70205eab +msgid "The action is the creation of something." +msgstr "" + +#: ../../api/enums.rst:1651 7dd989a90a0e43eca243d490ffef3bff +msgid "The action is the deletion of something." +msgstr "" + +#: ../../api/enums.rst:1655 183aa68fd5254ee7a6db373fb9097160 +msgid "The action is the update of something." +msgstr "" + +#: ../../api/enums.rst:1659 6a3f9302095245598ef3c8f0ffd44f83 +msgid "" +"Represents the membership state of a team member retrieved through " +":func:`Client.application_info`." +msgstr "" + +#: ../../api/enums.rst:1665 f99b7db7002a426498d6216ff366a87f +msgid "Represents an invited member." +msgstr "" + +#: ../../api/enums.rst:1669 5932ead93d9b4001a809e94b536efbaf +msgid "Represents a member currently in the team." +msgstr "" + +#: ../../api/enums.rst:1673 d78900c618414d258b8bf82e4c53d0ce +msgid "Represents the type of webhook that can be received." +msgstr "" + +#: ../../api/enums.rst:1679 45607f9417c8476bbe61af59ae2145bb +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "" + +#: ../../api/enums.rst:1683 92040f62183548ba9f04a9c654fb5b9f +msgid "" +"Represents a webhook that is internally managed by Discord, used for " +"following channels." +msgstr "" + +#: ../../api/enums.rst:1687 edd45f91b353433baa215c38fb8cfcfe +msgid "Represents a webhook that is used for interactions or applications." +msgstr "" + +#: ../../api/enums.rst:1693 b9a957369e784999aa4db4b99d37e718 +msgid "" +"Represents the behaviour the :class:`Integration` should perform when a " +"user's subscription has finished." +msgstr "" + +#: ../../api/enums.rst:1696 e3e3956bce32458eab440f079ac72be1 +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "" + +#: ../../api/enums.rst:1702 dde2cba259b942be9d7daa7f75050e95 +msgid "" +"This will remove the :attr:`StreamIntegration.role` from the user when " +"their subscription is finished." +msgstr "" + +#: ../../api/enums.rst:1707 8f56b4a6ec50439d8486352d8f2ec42c +msgid "This will kick the user when their subscription is finished." +msgstr "" + +#: ../../api/enums.rst:1711 110f5f127cf34700aebef11bd948132d +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "" + +#: ../../api/enums.rst:1715 95430a94d7b947f3a821f07b70aab0c5 +msgid "" +"Represents the default avatar with the color blurple. See also " +":attr:`Colour.blurple`" +msgstr "" + +#: ../../api/enums.rst:1719 58fcc73eebea461890325809557e6dc8 +msgid "" +"Represents the default avatar with the color grey. See also " +":attr:`Colour.greyple`" +msgstr "" + +#: ../../api/enums.rst:1723 d96b0ce740304a21a5d1db1f45051d0c +msgid "An alias for :attr:`grey`." +msgstr "" + +#: ../../api/enums.rst:1726 01c0705a0c01418ba8c2bee502a423b7 +msgid "" +"Represents the default avatar with the color green. See also " +":attr:`Colour.green`" +msgstr "" + +#: ../../api/enums.rst:1730 acdf3d58f3ac468592d6eb672e7927ab +msgid "" +"Represents the default avatar with the color orange. See also " +":attr:`Colour.orange`" +msgstr "" + +#: ../../api/enums.rst:1734 63d1d5cafeb745c1a8da433c1c130535 +msgid "" +"Represents the default avatar with the color red. See also " +":attr:`Colour.red`" +msgstr "" + +#: ../../api/enums.rst:1739 ae3f995775e245e5abf45bc2dda7078c +msgid "Represents the type of sticker." +msgstr "" + +#: ../../api/enums.rst:1745 151fd406272c490e93b3cf88e7ab8974 +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "" + +#: ../../api/enums.rst:1749 39793037eae8422ba9536d90e842bb02 +msgid "Represents a custom sticker created in a guild." +msgstr "" + +#: ../../api/enums.rst:1753 b05e06d5a5354367b3b7a284ac12d311 +msgid "Represents the type of sticker images." +msgstr "" + +#: ../../api/enums.rst:1759 4e9c50adfad0429eacfe68de8c0581d6 +msgid "Represents a sticker with a png image." +msgstr "" + +#: ../../api/enums.rst:1763 e8bfe207df5b45708af4bbd905129a8b +msgid "Represents a sticker with an apng image." +msgstr "" + +#: ../../api/enums.rst:1767 b0fde2a0da464265ab504c4c9bef1f2a +msgid "Represents a sticker with a lottie image." +msgstr "" + +#: ../../api/enums.rst:1771 1381383432f44e6eb5368c0835da0f62 +msgid "Represents a sticker with a gif image." +msgstr "" + +#: ../../api/enums.rst:1777 8e5bfa0150ba4362936661ad4d6a554f +msgid "Represents the invite type for voice channel invites." +msgstr "" + +#: ../../api/enums.rst:1783 c7f7db69ae9f4aac9e422022c828aa9b +msgid "The invite doesn't target anyone or anything." +msgstr "" + +#: ../../api/enums.rst:1787 99696cffc0224f118163d8732e9a10d6 +msgid "A stream invite that targets a user." +msgstr "" + +#: ../../api/enums.rst:1791 4721dd8e936842c5bbd1a61a15097822 +msgid "A invite that targets an embedded application." +msgstr "" + +#: ../../api/enums.rst:1793 9b51feef851e411aabb0c0038cd3b750 +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "" + +#: ../../api/enums.rst:1797 dc0bb1003ef04faaa4b36bd79dd3badc +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "" + +#: ../../api/enums.rst:1803 088bf995fa014f37a03bf9c347e018c7 +msgid "Represents auto camera video quality." +msgstr "" + +#: ../../api/enums.rst:1807 f5c93fe91c704114af9cb34d427c1921 +msgid "Represents full camera video quality." +msgstr "" + +#: ../../api/enums.rst:1811 965f3cd4c033475cb1cc38b821f8bded +msgid "" +"Represents a stage instance's privacy level. Stage event privacy levels " +"can only have 1 possible value at the moment so this shouldn't really be " +"used." +msgstr "" + +#: ../../api/enums.rst:1819 8fca712babea4c3a9a70f16a55863fad +msgid "The stage instance can only be joined by members of the guild." +msgstr "" + +#: ../../api/enums.rst:1823 eb7b9565987841f0b48a3db792db276a +msgid "Alias for :attr:`.closed`" +msgstr "" + +#: ../../api/enums.rst:1827 d5c29b81b2c14cc18c675c80d475f6a1 +msgid "Represents the NSFW level of a guild." +msgstr "" + +#: ../../api/enums.rst:1835 12bcaa8cfcb842c5a148f65f193cc74f +msgid "Checks if two NSFW levels are equal." +msgstr "" + +#: ../../api/enums.rst:1838 654b4dfd63874e9f819b003f72cf07b2 +msgid "Checks if two NSFW levels are not equal." +msgstr "" + +#: ../../api/enums.rst:1841 f7c2e3b237eb4ce0a21fefe5b1189439 +msgid "Checks if a NSFW level is higher than another." +msgstr "" + +#: ../../api/enums.rst:1844 2305a4e94a2f4497bd17faa6e1171158 +msgid "Checks if a NSFW level is lower than another." +msgstr "" + +#: ../../api/enums.rst:1847 d63e8c2fcee54c94a148283479fcdaba +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "" + +#: ../../api/enums.rst:1850 0bdeecdc326a477f99e3d20b23060fbd +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "" + +#: ../../api/enums.rst:1854 73f672f9e2dc41f3868c069d8f016e01 +msgid "The guild has not been categorised yet." +msgstr "" + +#: ../../api/enums.rst:1858 281c15a151fb4dcb95ea4c02e970ede6 +msgid "The guild contains NSFW content." +msgstr "" + +#: ../../api/enums.rst:1862 f4359419ec5941e8b5e91c4ef5403f4a +msgid "The guild does not contain any NSFW content." +msgstr "" + +#: ../../api/enums.rst:1866 03593a6c2994467b9ed47bf3876b3622 +msgid "The guild may contain NSFW content." +msgstr "" + +#: ../../api/enums.rst:1870 1702f291fcb34353a6ab9d1d950767f0 +msgid "Represents an embedded activity application." +msgstr "" + +#: ../../api/enums.rst:1872 e09b1261ff9e4aed838e56dc0f2d0ba1 +msgid "Some might be boost-only or gated." +msgstr "" + +#: ../../api/enums.rst:1876 51a321ee62d54d98a9eccf81b593ba9d +msgid "" +"Discord said that they won't verify bots who gives access to embedded " +"activities." +msgstr "" + +#: ../../api/enums.rst:1878 e421667f43d645a19bf6e4f2ec7619d3 +msgid "" +"Read more here: " +"https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "" + +#: ../../api/enums.rst:1884 8634ae2fdeae4337b6d96d3695dcfd5b +msgid "Represents the embedded application Ask Away." +msgstr "" + +#: ../../api/enums.rst:1890 4d3efac29bec4fea95eb83fb78c5e715 +msgid "Represents the embedded application Awkword." +msgstr "" + +#: ../../api/enums.rst:1894 ../../api/enums.rst:1902 ../../api/enums.rst:1982 +#: ../../api/enums.rst:1990 ../../api/enums.rst:1998 ../../api/enums.rst:2086 +#: ../../api/enums.rst:2106 ../../api/enums.rst:2114 +#: 26a17bd0648f42319205d7e93d492172 46a7b3bd09264237b2c107acc73ecd72 +#: 5d37fd74de88463abc545e8a9bc6c324 6f540ae1a6bc40778c30e5b6ed6c1ebd +#: 7e84904cbf23461b85b39425620e25ed 88f0d371b1894498954ed6863c819b42 +#: 9db4622ff7d24f809e4ebf3a64cd2d2d a79b808e86594cdb8093ee9de1e8d5ec +msgid "This activity has been removed." +msgstr "" + +#: ../../api/enums.rst:1898 7df3a9c26b4f4fac8b39048deb5657dc +msgid "Development version of :attr:`.awkword`." +msgstr "" + +#: ../../api/enums.rst:1906 abbce992b4e24550996b4cd9cbf4eb60 +msgid "Represents the embedded application Bash Out." +msgstr "" + +#: ../../api/enums.rst:1912 262e49924cc14a02865aa50c57045b60 +msgid "Represents the embedded application Betrayal.io." +msgstr "" + +#: ../../api/enums.rst:1916 ca9d81dfd82f4031b335c4bc19933a46 +msgid "Represents the embedded application Blazing 8s." +msgstr "" + +#: ../../api/enums.rst:1922 37e760d58a7143b89abba2d5b19e1078 +msgid "Development version of :attr:`.blazing_8s`." +msgstr "" + +#: ../../api/enums.rst:1928 126662fd83ef43cd965f2fde2fbc3d90 +msgid "QA version of :attr:`.blazing_8s`." +msgstr "" + +#: ../../api/enums.rst:1934 bceb40c70ad54faea89657ff53a8b6ed +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "" + +#: ../../api/enums.rst:1940 ece980f3196e4e22826bf0b9fbd9ba4d +msgid "Represents the embedded application Bobble League." +msgstr "" + +#: ../../api/enums.rst:1946 2cd323b60d65453680bf7e879ce98f88 +msgid "Represents the embedded application Checkers in the Park." +msgstr "" + +#: ../../api/enums.rst:1950 a78c47930e5a4ba8b51f71dcea78c7ce +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1954 c2cc29ea6e184e83b2be17704af74c56 +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1958 7eb39863607f40c380be079505668760 +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1962 ef05be1c5f7e4079ac7c56305f89ebfa +msgid "Represents the embedded application Chess in the Park." +msgstr "" + +#: ../../api/enums.rst:1966 6320ce907144405b876049b648120b12 +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1970 749604a85ea64bbf996c3637266a7dfd +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1974 4d7d5cbee8df40f39c5bd67d2a5cf15a +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "" + +#: ../../api/enums.rst:1978 bf380b08e1e1407eafa744eae41fbb85 +msgid "Represents the embedded application Decoders Development." +msgstr "" + +#: ../../api/enums.rst:1986 5f272d25b38e42c5b02ff61dfc3ded42 +msgid "Represents the embedded application Doodle Crew." +msgstr "" + +#: ../../api/enums.rst:1994 90460a782454406b9eba77e90bbc0d65 +msgid "Development version of :attr:`.doodle_crew`." +msgstr "" + +#: ../../api/enums.rst:2002 adbde9ea5c7740d88be1a57b89ad8046 +msgid "Represents the embedded application Fishington.io." +msgstr "" + +#: ../../api/enums.rst:2006 d6011665aa3848a8810933d33109f014 +msgid "Represents the embedded application Gartic Phone." +msgstr "" + +#: ../../api/enums.rst:2012 5b98bc6e985645759adce7b6dc973bc2 +msgid "Represents the embedded application Jamspace." +msgstr "" + +#: ../../api/enums.rst:2018 8cb40366f76a471182114e1d2bf663a4 +msgid "Represents the embedded application Know What I Meme." +msgstr "" + +#: ../../api/enums.rst:2024 4611eb49709143a7943172b1ecd4af36 +msgid "Represents the embedded application Land.io." +msgstr "" + +#: ../../api/enums.rst:2030 1cef475005fa4d3e977b4a250336eaff +msgid "Represents the embedded application Letter League." +msgstr "" + +#: ../../api/enums.rst:2034 90d3eb8aa9354387bab79c9666a7f6be +msgid "Development version of :attr:`.letter_league`." +msgstr "" + +#: ../../api/enums.rst:2040 5900632eb0bd408aaeaceea4df6a3400 +msgid "Represents the embedded application Poker Night." +msgstr "" + +#: ../../api/enums.rst:2044 859bd24025a04598a607f82fe33e2303 +msgid "Development version of :attr:`.poker_night`." +msgstr "" + +#: ../../api/enums.rst:2050 364952c675e345bfa20f62bb6295b569 +msgid "QA version of :attr:`.poker_night`." +msgstr "" + +#: ../../api/enums.rst:2054 306415ef45014befbf99265bc432d5d5 +msgid "Staging version of :attr:`.poker_night`." +msgstr "" + +#: ../../api/enums.rst:2058 6b68a438b88f4507bfaea1747c902c24 +msgid "Represents the embedded application Putt Party." +msgstr "" + +#: ../../api/enums.rst:2064 1db9baa076ee480d8d0aa84283c03a90 +msgid "Development version of :attr:`.putt_party`." +msgstr "" + +#: ../../api/enums.rst:2070 28f5321d2a88463a87a98cc3fe977eee +msgid "QA version of :attr:`.putt_party`." +msgstr "" + +#: ../../api/enums.rst:2076 d1c4dbb002ad4b59b6f095bd3c9e8241 +msgid "Staging version of :attr:`.putt_party`." +msgstr "" + +#: ../../api/enums.rst:2082 10dffbd7ae7346b1a9adb510b348b139 +msgid "Represents the embedded application Putts." +msgstr "" + +#: ../../api/enums.rst:2090 1a64c939106a47e89fa93d72ccffb2dd +msgid "Represents the embedded application Sketch Heads." +msgstr "" + +#: ../../api/enums.rst:2096 fe0828898e684c07ac1bb2b084c6b92e +msgid "Development version of :attr:`.sketch_heads`." +msgstr "" + +#: ../../api/enums.rst:2102 2abfe4abd47a4b16a8759924e64d5f61 +msgid "Represents the embedded application Sketchy Artist." +msgstr "" + +#: ../../api/enums.rst:2110 0c2730bb638249d491ca800b236c561d +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "" + +#: ../../api/enums.rst:2118 57f7dbca4655440a93c3fd350e137039 +msgid "Represents the embedded application Spell Cast." +msgstr "" + +#: ../../api/enums.rst:2122 5db2665a5810470ebfdcde53e0c9844e +msgid "Staging version of :attr:`.spell_cast`." +msgstr "" + +#: ../../api/enums.rst:2128 e5f509a034fc4e12b38a85f3efc3e443 +msgid "" +"Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature " +"which allows guild admins to limit the playlist access." +msgstr "" + +#: ../../api/enums.rst:2132 40693975970c4aba91b20cbb710c3df5 +msgid "Development version of :attr:`.watch_together`." +msgstr "" + +#: ../../api/enums.rst:2136 b171892fb9124323bb2b98d60e1b7a85 +msgid "Represents the embedded application word snacks." +msgstr "" + +#: ../../api/enums.rst:2140 f667ed7f17934a5886e9dbab4028d854 +msgid "Development version of :attr:`.word_snacks`." +msgstr "" + +#: ../../api/enums.rst:2144 f2e8046479ab4befb1b09badb53ceac4 +msgid "Represents the embedded application Youtube Together." +msgstr "" + +#: ../../api/enums.rst:2148 3aafbe2b679b447ba75d81c817faba38 +msgid "Represents the status of a scheduled event." +msgstr "" + +#: ../../api/enums.rst:2154 203576378c61466aafba5a0280b7d8d7 +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "" + +#: ../../api/enums.rst:2158 11cbb117b6e540df9c5cf85a8692ddd0 +msgid "The scheduled event is in progress." +msgstr "" + +#: ../../api/enums.rst:2162 59952e0eaaed49e283b98e7bc4fc4827 +msgid "The scheduled event is over." +msgstr "" + +#: ../../api/enums.rst:2166 347d83904c7c44bc93ff95674bf1dc88 +msgid "The scheduled event has been canceled before it can start." +msgstr "" + +#: ../../api/enums.rst:2170 f3e431347c5e494ab804674c1a47785e +msgid "Alias to :attr:`canceled`." +msgstr "" + +#: ../../api/enums.rst:2174 9367cb26de98424599dc80ef69d1a73d +msgid "" +"Represents a scheduled event location type (otherwise known as the entity" +" type on the API)." +msgstr "" + +#: ../../api/enums.rst:2180 4266c50b2bdf4fcf8936d92fa70abac3 +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "" + +#: ../../api/enums.rst:2184 f9e4297eb07d41a3bde1dbf3e89b5675 +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "" + +#: ../../api/enums.rst:2188 e4af5f9d382340e3828ebe79f1ebfee7 +msgid "Represents a generic location as a :class:`str`." +msgstr "" + +#: ../../api/enums.rst:2192 fe8d3a7422cf4811950c7096d1a6910d +msgid "" +"Represents the privacy level of a scheduled event. Scheduled event " +"privacy levels can only have 1 possible value at the moment so this " +"shouldn't really be used." +msgstr "" + +#: ../../api/enums.rst:2198 e258adae10a24e399876694c35f291ee +msgid "" +"Represents a scheduled event that is only available to members inside the" +" guild." +msgstr "" + +#: ../../api/enums.rst:2202 43c0ea119a5d4ddeae31a1891ab90bba +msgid "Represents an application role connection metadata type." +msgstr "" + +#: ../../api/enums.rst:2204 a48a777f05f8404ea3f84c2eea0b407b +msgid "" +"Each metadata type offers a comparison operation that allows guilds to " +"configure role requirements based on metadata values stored by the bot. " +"Bots specify a ``metadata value`` for each user and guilds specify the " +"required ``guild's configured value`` within the guild role settings." +msgstr "" + +#: ../../api/enums.rst:2213 7a2243082c9146148a159adfd210797b +msgid "" +"The metadata value (``integer``) is less than or equal to the guild's " +"configured value (``integer``)." +msgstr "" + +#: ../../api/enums.rst:2217 e05c266364924b249c892a96ae04c509 +msgid "" +"The metadata value (``integer``) is greater than or equal to the guild's " +"configured value (``integer``)." +msgstr "" + +#: ../../api/enums.rst:2221 dc164a530b7748a890b89df5f1d48a3a +msgid "" +"The metadata value (``integer``) is equal to the guild's configured value" +" (``integer``)." +msgstr "" + +#: ../../api/enums.rst:2225 271247e528204d5caec08f683630d00c +msgid "" +"The metadata value (``integer``) is not equal to the guild's configured " +"value (``integer``)." +msgstr "" + +#: ../../api/enums.rst:2229 c5cbe1ee08764e95af0db6111e8f10c0 +msgid "" +"The metadata value (``datetime``) is less than or equal to the guild's " +"configured value (``integer``; the number of days before the current " +"date)." +msgstr "" + +#: ../../api/enums.rst:2234 4f4f013f472b4670a51d9240fd8f71cb +msgid "" +"The metadata value (``datetime``) is greater than or equal to the guild's" +" configured value (``integer``; the number of days before the current " +"date)." +msgstr "" + +#: ../../api/enums.rst:2239 fa757acb4e9841578e85bd76d6678b17 +msgid "" +"The metadata value (``integer``) is equal to the guild's configured value" +" (``integer``; 1)." +msgstr "" + +#: ../../api/enums.rst:2243 0f6c437fb349410593e5fc67633b1ed0 +msgid "" +"The metadata value (``integer``) is not equal to the guild's configured " +"value (``integer``; 1)." +msgstr "" + +#: ../../api/enums.rst:2247 6cd1703bdbcb49af8199d10e0be98536 +msgid "Represents an AutoMod trigger type." +msgstr "" + +#: ../../api/enums.rst:2253 92785878e944483596614511844290d9 +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "" + +#: ../../api/enums.rst:2255 ../../api/enums.rst:2265 ../../api/enums.rst:2280 +#: 2748f446a4944afcac405b4e6431d085 6b22e3f8c2104c49a2126255db4d2a25 +#: 6e7fe5085c2c473ebe25b9e17a6473c3 +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "" + +#: ../../api/enums.rst:2257 164ea467f5a74a77a09fffe0604d2e6f +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr "" + +#: ../../api/enums.rst:2258 3a554f78cf8f4a0386b8cde531dbbbf4 +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr "" + +#: ../../api/enums.rst:2259 ../../api/enums.rst:2268 +#: e648d4c07e7849498fa1e37f3dc9d7a4 f18a268f3f3847c59e0ef614ee5a88ca +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr "" + +#: ../../api/enums.rst:2263 9cb29d61a6674cc58252b6ff7ec0ee65 +msgid "Represents a preset keyword rule trigger." +msgstr "" + +#: ../../api/enums.rst:2267 d6aa05f209664d85a235c190d3043cd9 +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr "" + +#: ../../api/enums.rst:2272 fc23e3e17deb4d2db2f13578e975407f +msgid "Represents the spam rule trigger." +msgstr "" + +#: ../../api/enums.rst:2274 5052fa1e23f84d919094b527e6780760 +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "" + +#: ../../api/enums.rst:2278 c1b72bd121c64fd9b20ca8fdb200b748 +msgid "Represents a mention spam keyword rule trigger." +msgstr "" + +#: ../../api/enums.rst:2282 cca7bd82a2394c6083489b7e39c4c738 +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr "" + +#: ../../api/enums.rst:2288 70879d5f0ea545c6a8e2c43268f3a44a +msgid "Represents a harmful link rule trigger." +msgstr "" + +#: ../../api/enums.rst:2290 ab821fbd1d1c44e7b9adfaccc49878cc +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "" + +#: ../../api/enums.rst:2295 1d15948ea48048f3a54cb3fd56f98949 +msgid "Represents an AutoMod event type." +msgstr "" + +#: ../../api/enums.rst:2301 de04935db43e47bb8ad4d5ad0a2e794a +msgid "Represents a message send AutoMod event." +msgstr "" + +#: ../../api/enums.rst:2305 20ab54c4886942d6a8b40c6cb79dc15e +msgid "Represents the type of action AutoMod is performing." +msgstr "" + +#: ../../api/enums.rst:2311 2052ac6a159c413096526b93f53fc40f +msgid "Represents a block message action." +msgstr "" + +#: ../../api/enums.rst:2315 52326fdbc82c40b78fb2d012ee46d6e0 +msgid "Represents a send alert message action." +msgstr "" + +#: ../../api/enums.rst:2319 e71766619bd345e6adacc517795aa546 +msgid "Represents a timeout action." +msgstr "" + +#: ../../api/enums.rst:2323 a67c1f449b7b46a6b3945dbe581eecf5 +msgid "Represents an AutoMod keyword preset type." +msgstr "" + +#: ../../api/enums.rst:2329 16fae1e09da548e194ff3e9b141d0b3e +msgid "Represents the profanity keyword preset rule." +msgstr "" + +#: ../../api/enums.rst:2333 ab390cf38fb84df4a3a96714d0211fb6 +msgid "Represents the sexual content keyword preset rule." +msgstr "" + +#: ../../api/enums.rst:2337 1a4ffd11aed54240903e82e327560e9b +msgid "Represents the slurs keyword preset rule." +msgstr "" + +#: ../../api/enums.rst:2341 e06b2688ab0040a886ef9dc2896bc3a3 +msgid "Represents how each prompt's options are displayed." +msgstr "" + +#: ../../api/enums.rst:2347 49a64ce72b5949fbb573a3ccaee7703f +msgid "The options will appear in a grid form, showing the name and description." +msgstr "" + +#: ../../api/enums.rst:2351 0a3bb3bdb2714e2cbf932539ebc78a91 +msgid "" +"The options will appear in a dropdown (similar to select menus), but " +"without the description displayed. This is **enforced** if there are more" +" than 12 options in the prompt." +msgstr "" + +#: ../../api/enums.rst:2355 a23abfb2ecad4cd8ad6e055957bf964e +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "" + +#: ../../api/enums.rst:2361 6aa44f6eace5404f9d4a7f22c35aa583 +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "" + +#: ../../api/enums.rst:2365 fb8b2393e31646fea2a6b5c6cff080cb +msgid "" +"Both default channels and questions (``OnboardingPrompt``s) will count " +"towards the Onboarding requirements." +msgstr "" + +#: ../../api/enums.rst:2369 d984d2edafa0494198f40de75ba4ee65 +msgid "Represents a Reaction's type." +msgstr "" + +#: ../../api/enums.rst:2375 7093ffd76bf040fbabd2de615bea62a7 +msgid "Represents a normal reaction." +msgstr "" + +#: ../../api/enums.rst:2379 7ff6dcebaa89470b8b1b9ee4585e7e04 +msgid "Represents a super reaction." +msgstr "" + +#: ../../api/enums.rst:2383 8441ff853aa64a7da5c19e1df2a877a2 +msgid "Represents an SKU's type." +msgstr "" + +#: ../../api/enums.rst:2389 bc04deae624c4ff79197fba79bb3d505 +msgid "" +"A one-time purchase that is permanent and is not subject to either " +"renewal or consumption, such as lifetime access to an app's premium " +"features." +msgstr "" + +#: ../../api/enums.rst:2394 ac5ad3bc7e1642909644aad6bf116481 +msgid "" +"A one-time, non-renewable purchase that provides access, such as a " +"temporary power-up or boost in a game." +msgstr "" + +#: ../../api/enums.rst:2399 ac2cba0273274f94888cf5be8147f0b0 +msgid "Represents a recurring subscription." +msgstr "" + +#: ../../api/enums.rst:2403 9755ce16658e4e5aaf283233f4ba8e6c +msgid "" +"A system-generated group for each subscription SKU created. These types " +"of SKUs are currently unused." +msgstr "" + +#: ../../api/enums.rst:2408 f47ba3afb4144d7cb79cacb32af9f292 +msgid "Represents an entitlement's type." +msgstr "" + +#: ../../api/enums.rst:2414 f0c9c5eeaf1d4576b1977a50ebff3be9 +msgid "Entitlement was purchased by the user." +msgstr "" + +#: ../../api/enums.rst:2418 0fd3167c06bb4f73a4373acc350c29f4 +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "" + +#: ../../api/enums.rst:2422 6e360623ccd14c7ba737664a0720387b +msgid "Entitlement was gifted by the developer." +msgstr "" + +#: ../../api/enums.rst:2426 a3753cbe720248baad7006b741b83d0f +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "" + +#: ../../api/enums.rst:2430 c50fbfb4231547299d0b58c756a526ef +msgid "Entitlement was granted when the SKU was free." +msgstr "" + +#: ../../api/enums.rst:2434 664d88fce1c945589b43e457c0a039ab +msgid "Entitlement was gifted by another user." +msgstr "" + +#: ../../api/enums.rst:2438 bcce02698e7c4d93b0593a4738376114 +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "" + +#: ../../api/enums.rst:2442 94fb5669a76e4d5799331d41c4367469 +msgid "Entitlement was purchased as an app subscription." +msgstr "" + +#: ../../api/enums.rst:2447 043f69aa903442b79ab0a54119892850 +msgid "Represents an entitlement's ownership type." +msgstr "" + +#: ../../api/enums.rst:2453 72cb5e1565fc455191948cdc346b5907 +msgid "Entitlement is owned by a guild." +msgstr "" + +#: ../../api/enums.rst:2457 e781c8a6bbb243499cddce3c2086358f +msgid "Entitlement is owned by a user." +msgstr "" + +#: ../../api/enums.rst:2462 61f4a928d66440c58ffbf67cfb15c5a1 +msgid "Represents a poll's layout type." +msgstr "" + +#: ../../api/enums.rst:2468 f54fed3455b144949f6a44f072c31a50 +msgid "Represents the default layout." +msgstr "" + +#: ../../api/enums.rst:2473 2b0b8bc9cad04acebb5612d68a8de5bc +msgid "The integration type for an application." +msgstr "" + +#: ../../api/enums.rst:2479 a15a8b77c15e4992bc42c8bb77ef4798 +msgid "The integration is added to a guild." +msgstr "" + +#: ../../api/enums.rst:2483 3c01a27a108a44fd993f5951533ed1d6 +msgid "The integration is added to a user account." +msgstr "" + +#: ../../api/enums.rst:2488 d351c5701a90482b9a4914a152ef4078 +msgid "The context where an interaction occurs." +msgstr "" + +#: ../../api/enums.rst:2494 e8e8e4cc8a314af0b8169d0786b9b761 +msgid "The interaction is in a guild." +msgstr "" + +#: ../../api/enums.rst:2498 9c92e2dd1a0f4c0c85a016d87b6eef8f +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "" + +#: ../../api/enums.rst:2502 1e9f15c549cb42a1974d9ba887984e15 +msgid "The interaction is in a private DM or group DM channel." +msgstr "" + +#~ msgid "" +#~ "Represents a component based interaction, " +#~ "i.e. using the Discord Bot UI Kit." +#~ msgstr "" + +#~ msgid "Represents a modal based interaction." +#~ msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/events.po b/docs/locales/en/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..a6dca11baf --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/events.po @@ -0,0 +1,1732 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/events.rst:6 b2b93f092885467db7bfd392648d888f +msgid "Event Reference" +msgstr "" + +#: ../../api/events.rst:8 bdee4bc49e3e4607b4c21d82fe93e090 +msgid "" +"This section outlines the different types of events listened by " +":class:`Client`." +msgstr "" + +#: ../../api/events.rst:10 2f7235d8cacd43e89e3c134128adb29d +msgid "" +"There are 3 ways to register an event, the first way is through the use " +"of :meth:`Client.event`. The second way is through subclassing " +":class:`Client` and overriding the specific events. The third way is " +"through the use of :meth:`Client.listen`, which can be used to assign " +"multiple event handlers instead of only one like in :meth:`Client.event`." +" For example:" +msgstr "" + +#: ../../api/events.rst:50 adc23d509127474b8d15bcc0824ba0b8 +msgid "" +"If an event handler raises an exception, :func:`on_error` will be called " +"to handle it, which defaults to print a traceback and ignoring the " +"exception." +msgstr "" + +#: ../../api/events.rst:55 47882c01d8f44f12a233f6e23da1bc8e +msgid "" +"All the events must be a |coroutine_link|_. If they aren't, then you " +"might get unexpected errors. In order to turn a function into a coroutine" +" they must be ``async def`` functions." +msgstr "" + +#: ../../api/events.rst:60 dcdd13d7ae4f41668bc09a5e8891be30 +msgid "Application Commands" +msgstr "" + +#: ../../api/events.rst:63 1bb731d89f9d453bb72c8525a0000c04 +msgid "Called when an application command is received." +msgstr "" + +#: ../../api/events.rst 0450b87209e04abf999c6d16346f74ad +#: 0d00d17e652745278bde98e5a9baac57 0d3719138c324b9b86dfd4e1f7c983c2 +#: 1031328b8ab2414c85e5725dc3c4efbf 13bb21ffd48c4d37b43cae9d0af4273a +#: 13c8a10e7a204b58956db583cfa99493 1678169629ec4355a18db9887c5dbc22 +#: 176ab3d1374941268495018745427ade 17839a738d044231b7bb90c4f01bdc9b +#: 18ff51c5a3704f5a9fa461a57b8e9b66 1938a7564e7f49a4a0c3d07f69097a01 +#: 2047ad9931154d87a4d5f8a7090fd208 281495434b004210ae4aaff83990d327 +#: 349abfcdf56240438f5690772fe0a18d 37ee4bf65332432b844f4c82c96e130f +#: 40ac5755dc1642c89e6bc723e5950d7a 450ea7dd8b0742b6a95034bc736a0b26 +#: 47834821ad7340b2a0c1b302cf59221a 4866914077374dcabb7961c78d04b703 +#: 4aa9dc788bbb4783842e434f794ea2be 4ab35ccbcc7a421bba4f7493d8ae96c4 +#: 4f354ed77ba74f58a8bfe8f9e4523bc8 5015785657bd461bb6bf2bc0a2125668 +#: 559e63e7918344a8afdb26e8d8af2bae 5f9dfeae511c4e658ed3c94bd40b4560 +#: 60839dcce1c248789ade9b533e7911db 60b3d7ac967d4fbaa7ab300016181e83 +#: 620a42e608284789b3c467b464c96dad 677c6a863bc24ae1a5ad297c49517cd8 +#: 67c06d15edc74df8ac0d765f1893023e 681f4a0621c84af5b603e302957fca24 +#: 69f16d3ebdce40d299735d1b99859fc4 69f826f1232a4d53a56d0d5f09d6091a +#: 6b62d4d670624d2590578fa265eae9af 6d7428028f5f4c47a87e228b3382926a +#: 6d8d97277dc24519b84ce4eddbcf5e6c 6dab0c0a2e24494ab8395fce18a6640a +#: 70306a7be41d4b578c334a0619ba1f3c 72ce7e3d4c314950a9bc3410fd54a91a +#: 73dad0dff0974575a4f932f888e57e50 743a2e37a02c4c5fb8f7dd22c8217882 +#: 78208569a83144aa920b951012b5ce70 78efea9536c547dea9bcf4f0fb904c57 +#: 80f30be1218d4627ac862062d98f65b9 81c162aa46b14ab0a333ed9962606f0a +#: 8432d53ccc6b4c218b0be97b5c783d06 847adddbea6a47e4b9b7e13a7f352ad5 +#: 8ae7a130296f41c286012b115ac400f6 8f134176570e4223ac70dfaf54649fd3 +#: 8f50058a92a84b47a4211733aacacd7e 900882c0284c4bc4a079c467bf577de2 +#: 962d87d49ce14c0ea1cceabda7c9cc2d 96b417dff47e45afba7e2b6cd8b168f6 +#: 99b1f8fedb1a4fab9e06d830c354345b 99b97506806e4f40b1382cef723cca78 +#: 9a16c00d4a624d2aa7e42be17f5e9e41 9ac90eb414af4d83b9c363cc85e04e26 +#: 9d17e39474da4efb97dc8dba285d4e27 a2a4098c99f44db3990a9980266e23aa +#: a3d69eddf6564725bc67771befc4aeca a3d7e20844c140bfae16d8b945ec35b3 +#: a62f5e8fc8174aa7881c7c7803d52529 a6c90e28198047819bbc09741d0e820b +#: a88f1812c49f42f1ac7a744c1c840822 a9ebc9dfbb2342c09e6f908ff8b05b61 +#: ab5d8aefc1db4a4c817b5368caa5543e b04fccd185f843d1aca16ec4a414e75c +#: b71cd393e4bb46869fc9b5aa74556aea be24ecbc72b54a3390c05a17b44d15b6 +#: c41c21d6e6304513afc6ce518472f17b c914a36558cb4bc98abd8de320e5cfc0 +#: ca0cd7fa385341149261f81c4cb9db61 cf1af74adcc940c6b88151caa220ceb0 +#: d057103729ff4f3b8dbe93fe0bc1262e d4d90a7f98cf4fa785b0c5df1c055240 +#: d5cd6b0856484ad1a5f1be0f36dbca84 d71e0e6a13fe4d9990262d983c4aea4b +#: d907a1e1ec6441fda3a2d770dd044ffb d945cfa6fb84406aada47da35d94e1b0 +#: da5228275de345319b40abae16fbe8b7 ddbc0fd0c67b4c47b95f888da332497a +#: de18df4128cb43da8ea61b66283e75f2 e3455443ac954b88b181ebe074279d1a +#: e6e388c1d5e74cfcb8a83eb43c1ea8c0 e9aab89b208b4e639310868813af5a3a +#: eb2b8d62e3094050ababe6c81875b9a3 ee9815d10d0f4b26aa8a87feed666d51 +#: f19251d202354981b849ab1942b91951 f4f36adbe07941dbb50a3375686a7f96 +#: fb18645345c14733936ee43bac2428ab fca243bce7384dd5a65201e550249536 +#: fe865df5dd99489498c73d866ac670dc +msgid "Parameters" +msgstr "" + +#: ../../api/events.rst:67 263f3d12d8884506a406695110c94d1d +msgid "The ApplicationContext associated to the command being received." +msgstr "" + +#: ../../api/events.rst:72 24711ddc6949466a8b86ec45748ae3ce +msgid "" +"Called when an application command is completed, after any checks have " +"finished." +msgstr "" + +#: ../../api/events.rst:76 2fd180ffd6ff42b3b6e01dbd5969e3e3 +msgid "The ApplicationContext associated to the command that was completed." +msgstr "" + +#: ../../api/events.rst:81 44821c55ef8945558c1f43451f5cb497 +msgid "Called when an application command has an error." +msgstr "" + +#: ../../api/events.rst:85 c10680f322e14111ac67af055eb489a3 +msgid "The ApplicationContext associated to the command that has an error." +msgstr "" + +#: ../../api/events.rst:88 5a47fd2e7d014a1d946b87ebc4c84417 +msgid "The DiscordException associated to the error." +msgstr "" + +#: ../../api/events.rst:93 56a473725976471ea908f69efac826f1 +msgid "" +"Called when an application command was not found in the bot's internal " +"cache." +msgstr "" + +#: ../../api/events.rst:97 c2d326f68bb44a35a20d93fb7c97652c +msgid "The interaction associated to the unknown command." +msgstr "" + +#: ../../api/events.rst:101 3e1b520c5ed4477ba2feec46353c8793 +msgid "Audit Logs" +msgstr "" + +#: ../../api/events.rst:105 a524eb8a295b41a293f359f7a21b8c96 +msgid "Called when an audit log entry is created." +msgstr "" + +#: ../../api/events.rst:107 ../../api/events.rst:121 +#: 4612cca4e358409f9d68b50876c6eec4 bade2e1e4cf04f0686e4f797a2a839f2 +msgid "" +"The bot must have :attr:`~Permissions.view_audit_log` to receive this, " +"and :attr:`Intents.moderation` must be enabled." +msgstr "" + +#: ../../api/events.rst:112 d0f5bab6c26a4183877ddb9f443b1f59 +msgid "The audit log entry that was created." +msgstr "" + +#: ../../api/events.rst:117 b58b216d81fb40f89ff0d0650b13b0d8 +msgid "" +"Called when an audit log entry is created. Unlike " +":func:`on_audit_log_entry`, this is called regardless of the state of the" +" internal user cache." +msgstr "" + +#: ../../api/events.rst:126 ../../api/events.rst:610 ../../api/events.rst:705 +#: ../../api/events.rst:844 ../../api/events.rst:857 ../../api/events.rst:910 +#: ../../api/events.rst:937 ../../api/events.rst:962 ../../api/events.rst:999 +#: ../../api/events.rst:1031 ../../api/events.rst:1054 +#: ../../api/events.rst:1079 ../../api/events.rst:1134 +#: ../../api/events.rst:1158 ../../api/events.rst:1257 +#: ../../api/events.rst:1284 ../../api/events.rst:1318 +#: 023402936a654371aab9f215b6e0c90c 0635e0f24c0e47b894c9c7fec506157a +#: 08eb4bec2f2a4837932a221dbd3220c0 198f9bbae5974dffbe423f6dd1819686 +#: 2c7f1cc4edff4bc29e8b8268e06aa93e 61459f05ae5d4e50b742f4e8ea6afe1f +#: 6214e4ff9d514cadbf5a0815af3cccaa 6b8bd14634da4b118afbfe9e49e3beb1 +#: 6bea76946d334a7996bd35f353135667 776fe87242094fc881ad350436325a2a +#: 7c6afb134ff248edbef99cd378aeac64 83f294fe23f6474ba62680e79b9ecfee +#: 940bd659eeb745b2b753faf7238ee8fe 97da3d1b88d84c68a282dfdb9f98fbb3 +#: ac6d84c776ef4acaa1b57da19160c5d3 b5f3a3acf81442c49df4b0db70f59a29 +#: cebb871f992f4011aea78bd0c12995fb +msgid "The raw event payload data." +msgstr "" + +#: ../../api/events.rst:130 b73de85e7f7e4357ba1ed52cbf4bc263 +msgid "AutoMod" +msgstr "" + +#: ../../api/events.rst:133 f510e9ca15b248c788d357edd9e88a71 +msgid "Called when an auto moderation rule is created." +msgstr "" + +#: ../../api/events.rst:135 ../../api/events.rst:145 ../../api/events.rst:155 +#: 1f32fe0dcb8a4935b9c14ec7663202cc b5819b508c5c4fed9e2d6b1b346ce769 +#: dea2d065cdf543c3a75fd4a57c6cc529 +msgid "" +"The bot must have :attr:`~Permissions.manage_guild` to receive this, and " +":attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "" + +#: ../../api/events.rst:138 2228e3b0e30d4bdfb1ef0c9bf8454aed +msgid "The newly created rule." +msgstr "" + +#: ../../api/events.rst:143 b0c3c7be1e57441d9f7ae80a8b9a55fc +msgid "Called when an auto moderation rule is updated." +msgstr "" + +#: ../../api/events.rst:148 bf10f7d992944dd19290c176392c30aa +msgid "The updated rule." +msgstr "" + +#: ../../api/events.rst:153 f53def3a863c481da06c0adeb1c37117 +msgid "Called when an auto moderation rule is deleted." +msgstr "" + +#: ../../api/events.rst:158 b3f4f05cc64c4bccbbe04993d4bf9054 +msgid "The deleted rule." +msgstr "" + +#: ../../api/events.rst:163 c654ed31ecf14465b800fa756f7d8d4a +msgid "Called when an auto moderation action is executed." +msgstr "" + +#: ../../api/events.rst:165 7d4d74a12a2e459b953516591a5433d6 +msgid "" +"The bot must have :attr:`~Permissions.manage_guild` to receive this, and " +":attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "" + +#: ../../api/events.rst:168 fad72a1374294d369c622bfc37004f69 +msgid "The event's data." +msgstr "" + +#: ../../api/events.rst:172 23bb7ceedaee4167a40d30b1482c9dbc +msgid "Bans" +msgstr "" + +#: ../../api/events.rst:175 00b471a8d70f42dfb067cd77f6e4834d +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "" + +#: ../../api/events.rst:177 ../../api/events.rst:190 +#: 2a2b5a4c85414b78ac6466d1323440c4 a3237655fba343fab0543ea041c27da3 +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "" + +#: ../../api/events.rst:179 9a2729bbfbc344279cb9083860b57c76 +msgid "The guild the user got banned from." +msgstr "" + +#: ../../api/events.rst:181 dc367f856d164ad38e4d0c51eb793ed1 +msgid "" +"The user that got banned. Can be either :class:`User` or :class:`Member` " +"depending if the user was in the guild or not at the time of removal." +msgstr "" + +#: ../../api/events.rst:188 952eeaee77bb47b6b764ab89d1ff9936 +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "" + +#: ../../api/events.rst:192 6a9b2d3cbc7747de9e9023d4ca96d73c +msgid "The guild the user got unbanned from." +msgstr "" + +#: ../../api/events.rst:194 04b83197700d451bb5349844eee4504b +msgid "The user that got unbanned." +msgstr "" + +#: ../../api/events.rst:198 95a2532527e84395b5ccd7d85a10592f +msgid "Channels" +msgstr "" + +#: ../../api/events.rst:201 3e9c005d8372415f88c61c2cf1192949 +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "" + +#: ../../api/events.rst:203 ../../api/events.rst:789 ../../api/events.rst:812 +#: ../../api/events.rst:829 ../../api/events.rst:842 ../../api/events.rst:855 +#: ../../api/events.rst:882 ../../api/events.rst:908 +#: 024d5d91d73a44de83c021d43b5b54e9 1082924a78134519a59315c26ab91333 +#: 9021e87cdea64927a2681528197df4d5 95ccb54b20fd47e58417710ed5f5eb52 +#: af5b8c5a72884a83ac69344f157698af cb3213b1115949de9bb856d6d491d2ac +#: d97041759bf74fb7a97daf70cfe8bf3f e55034f9969343d990011bfeb8b17ce5 +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "" + +#: ../../api/events.rst:205 a8a66b9bc1b04dd193764e55de15f19e +msgid "The updated group channel's old info." +msgstr "" + +#: ../../api/events.rst:207 e63adae3641b4b97b7cdc33325376ca3 +msgid "The updated group channel's new info." +msgstr "" + +#: ../../api/events.rst:212 ed32bc738f7f4ca3b11d34215528496f +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "" + +#: ../../api/events.rst:214 0f92e9df29834255b4e23938a063029f +msgid "The private channel that had its pins updated." +msgstr "" + +#: ../../api/events.rst:216 ../../api/events.rst:238 +#: 4b02a9bca82b46eb86f2a70126175092 aa84e858b4de4b38aca341540f075801 +msgid "" +"The latest message that was pinned as an aware datetime in UTC. Could be " +"``None``." +msgstr "" + +#: ../../api/events.rst:221 f16c8f36b0484a088c2a9b3827ca81fd +msgid "" +"Called whenever a guild channel is updated. e.g. changed name, topic, " +"permissions." +msgstr "" + +#: ../../api/events.rst:223 ../../api/events.rst:234 ../../api/events.rst:248 +#: ../../api/events.rst:456 ../../api/events.rst:475 ../../api/events.rst:489 +#: ../../api/events.rst:503 ../../api/events.rst:512 ../../api/events.rst:553 +#: ../../api/events.rst:1197 ../../api/events.rst:1210 +#: ../../api/events.rst:1223 ../../api/events.rst:1245 +#: ../../api/events.rst:1293 ../../api/events.rst:1314 +#: 0873cc1fdc914f0fad25fd05b59de54d 213bd7864c0e48eea8da67e27a46dabc +#: 2e278f832d434ef9a4960f7d01cde05e 3ad5cbd41ddb4c8e847d8f8ac5f8c3e6 +#: 4330cee10810420eae954b7acf917069 45b3e36bf4724062b1bddf760945f9e1 +#: 5d355f08e7f145bc97271086b10d0260 701881eeed2b49a0bf24be49460e89d7 +#: 77ddc91aee8f43b7b3639a94cef10e17 8b159796a6f349e8aeaf7c5bf5752f37 +#: a4a7d77e88f44357be30d5714d93dd1b e12869e76b1849dfb9a5de16e606e9d9 +#: ec0f92796f594f4297ae5903eb0667b8 f28de120c204470e8efc2483a3ec3ec3 +#: f9ffac6969464760865bea86217e862e +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "" + +#: ../../api/events.rst:225 582a1772a9a24ec79ebf3380f605b994 +msgid "The updated guild channel's old info." +msgstr "" + +#: ../../api/events.rst:227 53270a2c896d41459a116b9d2cd5d61e +msgid "The updated guild channel's new info." +msgstr "" + +#: ../../api/events.rst:232 0518a7cd29724f0ebe14a809ed2eee33 +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "" + +#: ../../api/events.rst:236 3379c2bd9f27477e92d53e81fdd520fc +msgid "The guild channel that had its pins updated." +msgstr "" + +#: ../../api/events.rst:244 b06ad24834684c0184a8cb62a7aa9496 +msgid "Called whenever a guild channel is deleted or created." +msgstr "" + +#: ../../api/events.rst:246 0b990a3012ab4d5dbfb2528666dfcc1f +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "" + +#: ../../api/events.rst:250 a3c27d0b0d99451bbd118154b27728bd +msgid "The guild channel that got created or deleted." +msgstr "" + +#: ../../api/events.rst:254 7d449f79629f4f869b40a77ddef312bf +msgid "Connection" +msgstr "" + +#: ../../api/events.rst:257 8ec6bd0b3fbe4241bc6d9f75e823c85a +msgid "" +"Usually when an event raises an uncaught exception, a traceback is " +"printed to stderr and the exception is ignored. If you want to change " +"this behaviour and handle the exception for whatever reason yourself, " +"this event can be overridden. Which, when done, will suppress the default" +" action of printing the traceback." +msgstr "" + +#: ../../api/events.rst:263 e631b145bbac440d88cafec5ec87dfd7 +msgid "" +"The information of the exception raised and the exception itself can be " +"retrieved with a standard call to :func:`sys.exc_info`." +msgstr "" + +#: ../../api/events.rst:266 dbd98ec209834cd6bd83612c55af9005 +msgid "" +"If you want exception to propagate out of the :class:`Client` class you " +"can define an ``on_error`` handler consisting of a single empty " +":ref:`raise statement `. Exceptions raised by ``on_error`` will" +" not be handled in any way by :class:`Client`." +msgstr "" + +#: ../../api/events.rst:273 dcf344c481cf4d11b82d8328a439ef32 +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "" + +#: ../../api/events.rst:275 03c4ccbc021946d29a5619ee2aee1c48 +msgid "" +"It will not be received by :meth:`Client.wait_for`, or, if used, " +":ref:`ext_commands_api_bot` listeners such as " +":meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "" + +#: ../../api/events.rst:279 56c524590ae04f93a605d42859d7792b +msgid "The name of the event that raised the exception." +msgstr "" + +#: ../../api/events.rst:282 98db8715f93f433ab87723623ee23636 +msgid "The positional arguments for the event that raised the exception." +msgstr "" + +#: ../../api/events.rst:284 8dfd8c3b1dc84c6887b3932f50acd755 +msgid "The keyword arguments for the event that raised the exception." +msgstr "" + +#: ../../api/events.rst:289 bbcc9c4b112d4e61978d8ce326fe6cf6 +msgid "" +"Called when the client has successfully connected to Discord. This is not" +" the same as the client being fully prepared, see :func:`on_ready` for " +"that." +msgstr "" + +#: ../../api/events.rst:292 7f33474ea095415d94437132ace18ac7 +msgid "The warnings on :func:`on_ready` also apply." +msgstr "" + +#: ../../api/events.rst:296 2ae2df522e6f4a92920a80d034ae77fc +msgid "" +"Overriding this event will not call :meth:`Bot.sync_commands`. As a " +"result, :class:`ApplicationCommand` will not be registered." +msgstr "" + +#: ../../api/events.rst:301 91c23633ba4f41888381a63d594f6dae +msgid "" +"Similar to :func:`on_connect` except used by :class:`AutoShardedClient` " +"to denote when a particular shard ID has connected to Discord." +msgstr "" + +#: ../../api/events.rst:306 e6fd21abf4ce49e089440189e709f0d6 +msgid "The shard ID that has connected." +msgstr "" + +#: ../../api/events.rst:311 b1c968ec91014e3ba661afb388184d24 +msgid "" +"Called when the client has disconnected from Discord, or a connection " +"attempt to Discord has failed. This could happen either through the " +"internet being disconnected, explicit calls to close, or Discord " +"terminating the connection one way or the other." +msgstr "" + +#: ../../api/events.rst:315 472cdd40fc634a4d96ca0be9aa3ee420 +msgid "" +"This function can be called many times without a corresponding " +":func:`on_connect` call." +msgstr "" + +#: ../../api/events.rst:320 e5534b890e0248a39e20344d3ee4f3b9 +msgid "" +"Similar to :func:`on_disconnect` except used by " +":class:`AutoShardedClient` to denote when a particular shard ID has " +"disconnected from Discord." +msgstr "" + +#: ../../api/events.rst:325 8c0f20c9bca7426b958f58f058b07dd2 +msgid "The shard ID that has disconnected." +msgstr "" + +#: ../../api/events.rst:330 748fed611ee3463d9059c87d4f5c1578 +msgid "" +"Called when the client is done preparing the data received from Discord. " +"Usually after login is successful and the :attr:`Client.guilds` and co. " +"are filled up." +msgstr "" + +#: ../../api/events.rst:335 b35787ab277f4f29bf403e1fbd863311 +msgid "" +"This function is not guaranteed to be the first event called. Likewise, " +"this function is **not** guaranteed to only be called once. This library " +"implements reconnection logic and thus will end up calling this event " +"whenever a RESUME request fails." +msgstr "" + +#: ../../api/events.rst:342 e35773581ea743969833b125cf56d656 +msgid "" +"Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to " +"denote when a particular shard ID has become ready." +msgstr "" + +#: ../../api/events.rst:345 50262162085248069dcd30242d717ed1 +msgid "The shard ID that is ready." +msgstr "" + +#: ../../api/events.rst:350 753338ce1e254624b225eb476f342105 +msgid "Called when the client has resumed a session." +msgstr "" + +#: ../../api/events.rst:354 7ee4cd1af0364ade8b0eff1641a252d0 +msgid "" +"Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` " +"to denote when a particular shard ID has resumed a session." +msgstr "" + +#: ../../api/events.rst:359 bad97e6e55214ecdac9606dfade6aab2 +msgid "The shard ID that has resumed." +msgstr "" + +#: ../../api/events.rst:364 4c84d72a61734433987266f62f3f9bf2 +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "" + +#: ../../api/events.rst:366 a5e9b00d68b34841aa32b730000c3c6b +msgid "" +"This is mainly useful for logging how many events you are receiving from " +"the Discord gateway." +msgstr "" + +#: ../../api/events.rst:371 1ca9ee3aaebb4e9b8ccb1874adf58f48 +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "" + +#: ../../api/events.rst:376 9b0fbc2b869f4e7d97d634536359b072 +msgid "" +"Called whenever a message is completely received from the WebSocket, " +"before it's processed and parsed. This event is always dispatched when a " +"complete message is received and the passed data is not parsed in any " +"way." +msgstr "" + +#: ../../api/events.rst:380 ../../api/events.rst:399 +#: 147ed7f0a5b94c1dabe80978422d561e 75a209135d484bab8cfa803ad7f61222 +msgid "" +"This is only really useful for grabbing the WebSocket stream and " +"debugging purposes." +msgstr "" + +#: ../../api/events.rst:383 ../../api/events.rst:402 +#: 36f2db310d89444b98939f42f4b3d12e 945cecef32a94d15a047464c5d430dbe +msgid "" +"This requires setting the ``enable_debug_events`` setting in the " +":class:`Client`." +msgstr "" + +#: ../../api/events.rst:387 e929d8bfe7e540fd8296b711d97e59a8 +msgid "" +"This is only for the messages received from the client WebSocket. The " +"voice WebSocket will not trigger this event." +msgstr "" + +#: ../../api/events.rst:390 6afe3ca5ed4b4cda9fe8fd39b449252e +msgid "The message passed in from the WebSocket library." +msgstr "" + +#: ../../api/events.rst:395 dc512765150844c2a3f47b36106e8e8d +msgid "" +"Called whenever a send operation is done on the WebSocket before the " +"message is sent. The passed parameter is the message that is being sent " +"to the WebSocket." +msgstr "" + +#: ../../api/events.rst:406 f0c4769fb11e41198c82a7e55644cda2 +msgid "" +"This is only for the messages sent from the client WebSocket. The voice " +"WebSocket will not trigger this event." +msgstr "" + +#: ../../api/events.rst:409 f7e24f8f8760477e9ca0e47c386a918e +msgid "" +"The message that is about to be passed on to the WebSocket library. It " +"can be :class:`bytes` to denote a binary message or :class:`str` to " +"denote a regular text message." +msgstr "" + +#: ../../api/events.rst:414 a7d79f8ec9934e6287e9f91b426f9ca3 +msgid "Entitlements" +msgstr "" + +#: ../../api/events.rst:417 c4bda84ba80d4f6b82e53d44e2704b60 +msgid "Called when a user subscribes to an SKU." +msgstr "" + +#: ../../api/events.rst:421 ec2ef743271140fca72f11b8f28b55f2 +msgid "The entitlement that was created as a result of the subscription." +msgstr "" + +#: ../../api/events.rst:426 072d6e76c4bb492ebf7fc48e64a58def +msgid "" +"Called when a user's subscription to an Entitlement is renewed for the " +"next billing period." +msgstr "" + +#: ../../api/events.rst:430 79720b0dadf04f179a625168706790b9 +msgid "The entitlement that was updated." +msgstr "" + +#: ../../api/events.rst:435 1d13e1996ca641bcb26d6179d19e09e7 +msgid "Called when a user's entitlement is deleted." +msgstr "" + +#: ../../api/events.rst:437 3b910d98ee1b441498f2613151a00f70 +msgid "" +"Entitlements are usually only deleted when Discord issues a refund for a " +"subscription, or manually removes an entitlement from a user." +msgstr "" + +#: ../../api/events.rst:442 bf621f37de124bcbb5cce9859564f2d1 +msgid "This is not called when a user's subscription is cancelled." +msgstr "" + +#: ../../api/events.rst:446 9dbb179c32b54a398dc87524d5bbaef8 +msgid "The entitlement that was deleted." +msgstr "" + +#: ../../api/events.rst:450 4dfcfdb6c0064ac3b4f73a5d1c00da93 +msgid "Guilds" +msgstr "" + +#: ../../api/events.rst:453 20311648994641ae8ff17f72b5da9d99 +msgid "" +"Called when a :class:`Guild` is either created by the :class:`Client` or " +"when the :class:`Client` joins a guild." +msgstr "" + +#: ../../api/events.rst:458 ea6e535b185f4d968990adf6893c7de0 +msgid "The guild that was joined." +msgstr "" + +#: ../../api/events.rst:463 070a63745b6849fbbeab2bf0a1b4e515 +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "" + +#: ../../api/events.rst:465 5d6cba70019f45f3ad96f5ec0a2594cc +msgid "This happens through, but not limited to, these circumstances:" +msgstr "" + +#: ../../api/events.rst:467 51b0d21974c1475a806ed37c3782ff11 +msgid "The client got banned." +msgstr "" + +#: ../../api/events.rst:468 ff9e9e053e6049889fca38347497fb96 +msgid "The client got kicked." +msgstr "" + +#: ../../api/events.rst:469 1ed4f7c318cb43ce8b62cb081fe6a0b1 +msgid "The client left the guild." +msgstr "" + +#: ../../api/events.rst:470 ec3900333c3f461bb2ad0cc95bc5ef2d +msgid "The client or the guild owner deleted the guild." +msgstr "" + +#: ../../api/events.rst:472 c09fcb5ca235482a9dee894607af5aa1 +msgid "" +"In order for this event to be invoked then the :class:`Client` must have " +"been part of the guild to begin with. (i.e. it is part of " +":attr:`Client.guilds`)" +msgstr "" + +#: ../../api/events.rst:477 a83039edb3ba4814a286c7e322c10728 +msgid "The guild that got removed." +msgstr "" + +#: ../../api/events.rst:482 1e90656c38f64056af4b1e544753df18 +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "" + +#: ../../api/events.rst:484 422f145b8062401c84f76756bb9820e2 +msgid "Changed name" +msgstr "" + +#: ../../api/events.rst:485 cbab865be7764aefa53002b353147cda +msgid "Changed AFK channel" +msgstr "" + +#: ../../api/events.rst:486 deebcf9e947142edbdbcb28d9c54c4a6 +msgid "Changed AFK timeout" +msgstr "" + +#: ../../api/events.rst:487 e5891580f33b405da90cd749c059cb8f +msgid "etc." +msgstr "" + +#: ../../api/events.rst:491 a8cffe8722014b508fe234b456e99add +msgid "The guild prior to being updated." +msgstr "" + +#: ../../api/events.rst:493 09559bb331d54c818d9456c9e50dccc8 +msgid "The guild after being updated." +msgstr "" + +#: ../../api/events.rst:499 4926a01720844942bb4fbe2214b41d5d +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "" + +#: ../../api/events.rst:501 26919d02a3764b4bb306d4b2bb402aac +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "" + +#: ../../api/events.rst:505 1ff07f75468541b38b5b8945ccec0b63 +msgid "The role that was created or deleted." +msgstr "" + +#: ../../api/events.rst:510 f7dd6519c06844c08e5241b1559491a5 +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "" + +#: ../../api/events.rst:514 f1b5a9b9b024439d9ed75c18e938f390 +msgid "The updated role's old info." +msgstr "" + +#: ../../api/events.rst:516 1ff66a23bf0d491cb53e831bae382c88 +msgid "The updated role's updated info." +msgstr "" + +#: ../../api/events.rst:521 8cbae07e47ba4cdebe69ec4076d665f9 +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "" + +#: ../../api/events.rst:523 ../../api/events.rst:536 +#: 7d54c1f8e6e74a72b35f12482d5961b4 f67a33188bb34272a8889e369b01d223 +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "" + +#: ../../api/events.rst:525 73965f3cab494980aa9dd819ffd29c0b +msgid "The guild who got their emojis updated." +msgstr "" + +#: ../../api/events.rst:527 fe7eb70f2c4a42d88b47e0e0c2137c58 +msgid "A list of emojis before the update." +msgstr "" + +#: ../../api/events.rst:529 0b5a5ffd3b384bb8b875fd343f7d22a6 +msgid "A list of emojis after the update." +msgstr "" + +#: ../../api/events.rst:534 7b8bb01b2d34498da90bd94b2c350575 +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "" + +#: ../../api/events.rst:540 1fae23769a4342888fab8d136a77ec99 +msgid "The guild who got their stickers updated." +msgstr "" + +#: ../../api/events.rst:542 b36c6dcfc18940f9abb2e0f888efff66 +msgid "A list of stickers before the update." +msgstr "" + +#: ../../api/events.rst:544 cd05518a2d924fd68974c2f5ea934b34 +msgid "A list of stickers after the update." +msgstr "" + +#: ../../api/events.rst:550 3c8f786f39b7401bb26040a54f057dc1 +msgid "" +"Called when a guild becomes available or unavailable. The guild must have" +" existed in the :attr:`Client.guilds` cache." +msgstr "" + +#: ../../api/events.rst:555 c35fb39492e5426aa2d9ea96218afa36 +msgid "The guild that has changed availability." +msgstr "" + +#: ../../api/events.rst:560 6b348d1a6bcb4fd483811fb2f1f365d5 +msgid "" +"Called whenever a webhook is created, modified, or removed from a guild " +"channel." +msgstr "" + +#: ../../api/events.rst:562 a4440117ae634b6681222e5129783348 +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "" + +#: ../../api/events.rst:564 e31dea0d4cf244af992bdf2f321a7013 +msgid "The channel that had its webhooks updated." +msgstr "" + +#: ../../api/events.rst:568 4c52e96a47324217a4defdba08ed9919 +msgid "Integrations" +msgstr "" + +#: ../../api/events.rst:571 a6000695a11241f1b80ace12ef5bd409 +msgid "" +"Called whenever an integration is created, modified, or removed from a " +"guild." +msgstr "" + +#: ../../api/events.rst:573 ../../api/events.rst:584 ../../api/events.rst:595 +#: ../../api/events.rst:606 737a9cd4e70a4373a753fbdf4dff4b3b +#: a5ca1990b43345bebb2c1cb83f07bb00 b5b38af536e54fbe8712c1ed8deb7547 +#: c2e1693b47554cf7945399623ff784b2 +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "" + +#: ../../api/events.rst:577 7cd3123072c84da0b5786b9c2dceed48 +msgid "The guild that had its integrations updated." +msgstr "" + +#: ../../api/events.rst:582 c09a7f4e3d20488fa04c4baa6e222d0c +msgid "Called when an integration is created." +msgstr "" + +#: ../../api/events.rst:588 ../../api/events.rst:599 +#: 060f67ac9b304260a34915be922f68c1 7f9c50d99dd24e9fac1bc3fee804ca53 +msgid "The integration that was created." +msgstr "" + +#: ../../api/events.rst:593 184033097d74474fb4d5a9e187a0eb1b +msgid "Called when an integration is updated." +msgstr "" + +#: ../../api/events.rst:604 da531782f86c4b52b37c365448ee9f07 +msgid "Called when an integration is deleted." +msgstr "" + +#: ../../api/events.rst:614 cfb2b057b0c1472cb4d3eee5331ae7ae +msgid "Interactions" +msgstr "" + +#: ../../api/events.rst:617 53db6b926a804818a95dc3ff07ce5e99 +msgid "Called when an interaction happened." +msgstr "" + +#: ../../api/events.rst:619 3ebdd96f98e9443a8d255dc81f17e869 +msgid "" +"This currently happens due to application command invocations or " +"components being used." +msgstr "" + +#: ../../api/events.rst:623 2689cfaa9dd24275b9870faf19ad2f56 +msgid "" +"This is a low level function that is not generally meant to be used. If " +"you are working with components, consider using the callbacks associated " +"with the :class:`~discord.ui.View` instead as it provides a nicer user " +"experience." +msgstr "" + +#: ../../api/events.rst:629 5036e83617bf4ba58f9fcb428bc0680d +msgid "The interaction data." +msgstr "" + +#: ../../api/events.rst:633 6973c117b78e4a2ebc6825aacb60698c +msgid "Invites" +msgstr "" + +#: ../../api/events.rst:636 ae71ea8985fa469282da5f31bdaf7446 +msgid "" +"Called when an :class:`Invite` is created. You must have the " +":attr:`~Permissions.manage_channels` permission to receive this." +msgstr "" + +#: ../../api/events.rst:643 ../../api/events.rst:660 +#: 812b6d18d5a946d9bf0784367bb3affd e9c28be70066461abdb827b38b467cff +msgid "" +"There is a rare possibility that the :attr:`Invite.guild` and " +":attr:`Invite.channel` attributes will be of :class:`Object` rather than " +"the respective models." +msgstr "" + +#: ../../api/events.rst:646 ../../api/events.rst:666 +#: 3cf7be58f5b4432ca452bf28c48129e9 4dd28bae94dc48ccb43ad42ddf3c2eaf +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "" + +#: ../../api/events.rst:648 088d046716804d73b129d0bf49e473bb +msgid "The invite that was created." +msgstr "" + +#: ../../api/events.rst:653 dab222e69c2c439887152238901a2947 +msgid "" +"Called when an :class:`Invite` is deleted. You must have the " +":attr:`~Permissions.manage_channels` permission to receive this." +msgstr "" + +#: ../../api/events.rst:663 1e05ea8a6a2444f7b38051ea5441c228 +msgid "" +"Outside of those two attributes, the only other attribute guaranteed to " +"be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "" + +#: ../../api/events.rst:668 2af6321a181640749c67d39cf154ad77 +msgid "The invite that was deleted." +msgstr "" + +#: ../../api/events.rst:672 cc2adb6fe784475a94c0c0e32b9bac4c +msgid "Members/Users" +msgstr "" + +#: ../../api/events.rst:675 59e3a422d23b4ebe987e2ae3ec18c6dc +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "" + +#: ../../api/events.rst:677 ../../api/events.rst:690 ../../api/events.rst:701 +#: ../../api/events.rst:720 ../../api/events.rst:776 ../../api/events.rst:1267 +#: ../../api/events.rst:1280 0608221e23ac498eb93feba2e0df9730 +#: 245dfa13ed9940cb9f9e97069c816268 571a0224eed04afca25ceb6fe779b727 +#: 8c500bf67b4947efbccd591b47e807d3 ac04b1a2a0c4454d82d101ecb00a6bc0 +#: b77f2bddd083470aabb9f69a1aa4df63 c267ed1dfc214c44b6f071d6284d0d90 +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "" + +#: ../../api/events.rst:679 51b1cf557f3b4b28a31d47b008c958e5 +msgid "The member who joined." +msgstr "" + +#: ../../api/events.rst:684 4bdb0182507c45c8b03ae52c0d7fe188 +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "" + +#: ../../api/events.rst:686 659720c167f64e42b9d9d1052d9709a6 +msgid "" +"If the guild or member could not be found in the internal cache, this " +"event will not be called. Alternatively, :func:`on_raw_member_remove` is " +"called regardless of the internal cache." +msgstr "" + +#: ../../api/events.rst:692 3fd5f443082f4f50ab9d14d965e5906c +msgid "The member who left." +msgstr "" + +#: ../../api/events.rst:697 bfd4357c25b649b89eb3bf3b2f0cc0c6 +msgid "" +"Called when a :class:`Member` leaves a :class:`Guild`. Unlike " +":func:`on_member_remove`, this is called regardless of the state of the " +"internal member cache." +msgstr "" + +#: ../../api/events.rst:710 72cf960892384ef2a30c0f88ed9d2050 +msgid "Called when a :class:`Member` updates their profile." +msgstr "" + +#: ../../api/events.rst:712 ../../api/events.rst:731 ../../api/events.rst:769 +#: 94033025616b4076bd1cd69dbccbce65 9c0d0062f4524f09afc01922b6880478 +#: df7654b2971a4c8cb816e6a4cb412282 +msgid "This is called when one or more of the following things change:" +msgstr "" + +#: ../../api/events.rst:714 636b715442114d74b10fffcb5ea1f423 +msgid "nickname" +msgstr "" + +#: ../../api/events.rst:715 72c18648ea0441579e75a0809dda2be0 +msgid "roles" +msgstr "" + +#: ../../api/events.rst:716 32412ad2806a4c19a0b79bd9de971467 +msgid "pending" +msgstr "" + +#: ../../api/events.rst:717 23c7215831354f6eaa85e8cfa1a70f3e +msgid "communication_disabled_until" +msgstr "" + +#: ../../api/events.rst:718 dfb5abcb569a43c7acb95e5da9c81b39 +msgid "timed_out" +msgstr "" + +#: ../../api/events.rst:722 ../../api/events.rst:740 +#: 3c202860a49f49fe90fce486a871deb3 725047654176421eb19576468343096f +msgid "The updated member's old info." +msgstr "" + +#: ../../api/events.rst:724 ../../api/events.rst:742 +#: 4a04609fc50046328661598fbb671487 efbf85ad83644356bf043efa7cd58731 +msgid "The updated member's updated info." +msgstr "" + +#: ../../api/events.rst:729 1dee8a81bb94444cb7bc2ddf2fab5117 +msgid "Called when a :class:`Member` updates their presence." +msgstr "" + +#: ../../api/events.rst:733 1a275606817640eb8e06ee192f0f607b +msgid "status" +msgstr "" + +#: ../../api/events.rst:734 9f977430a74e4863afee82b21fcbf311 +msgid "activity" +msgstr "" + +#: ../../api/events.rst:736 765cb25bca1e473d8f12775b7c880b4f +msgid "" +"This requires :attr:`Intents.presences` and :attr:`Intents.members` to be" +" enabled." +msgstr "" + +#: ../../api/events.rst:747 a4a83d5acfa848f298585ef71e363a26 +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "" + +#: ../../api/events.rst:749 ../../api/events.rst:1177 +#: 0c77a95ffd774442b4de3a3305b391f4 79633923465b40b68645223137732d3e +msgid "" +"The following, but not limited to, examples illustrate when this event is" +" called:" +msgstr "" + +#: ../../api/events.rst:751 2bdb0897344a4989a02198ce2b493750 +msgid "A member joins a voice or stage channel." +msgstr "" + +#: ../../api/events.rst:752 a2d0ec0a66f44b798dbfdf16e54cf5f4 +msgid "A member leaves a voice or stage channel." +msgstr "" + +#: ../../api/events.rst:753 906d40a6e6c54fa48a691ea0742aefcd +msgid "A member is muted or deafened by their own accord." +msgstr "" + +#: ../../api/events.rst:754 bae40f0b39be405a95122a36592e4a53 +msgid "A member is muted or deafened by a guild administrator." +msgstr "" + +#: ../../api/events.rst:756 1c7f2baeafaf4301bfd220ebeb3936ea +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "" + +#: ../../api/events.rst:758 0da0ec4c5bc04aaab41c2ad70e357a81 +msgid "The member whose voice states changed." +msgstr "" + +#: ../../api/events.rst:760 3b6875267fcb48fea947ebbc069ac8e3 +msgid "The voice state prior to the changes." +msgstr "" + +#: ../../api/events.rst:762 88099f60004742219109afd6e44eadff +msgid "The voice state after the changes." +msgstr "" + +#: ../../api/events.rst:767 525d8057d8ac440b9f12215a99861567 +msgid "Called when a :class:`User` updates their profile." +msgstr "" + +#: ../../api/events.rst:771 f8f87a7c98ed4b2f928b30556b4fa7b7 +msgid "avatar" +msgstr "" + +#: ../../api/events.rst:772 599d96b1a33b4f199c8d33b53feb03be +msgid "username" +msgstr "" + +#: ../../api/events.rst:773 e0ee257c4fb84b0d9c81e54f1137853d +msgid "discriminator" +msgstr "" + +#: ../../api/events.rst:774 32ad7813f11149efa7fa506c96845ed4 +msgid "global_name" +msgstr "" + +#: ../../api/events.rst:778 b7fa74d14bdc43d68246734145009b99 +msgid "The updated user's old info." +msgstr "" + +#: ../../api/events.rst:780 9ba6bc5b6bbb4eaea29046092573c451 +msgid "The updated user's updated info." +msgstr "" + +#: ../../api/events.rst:784 7abff70b9dca4670aa6d4733ba79f565 +msgid "Messages" +msgstr "" + +#: ../../api/events.rst:787 82baa07e4f7c4be7b944e0382240ef7e +msgid "Called when a :class:`Message` is created and sent." +msgstr "" + +#: ../../api/events.rst:793 e221d3668fa64676b963ba741fcd5174 +msgid "" +"Your bot's own messages and private messages are sent through this event." +" This can lead cases of 'recursion' depending on how your bot was " +"programmed. If you want the bot to not reply to itself, consider checking" +" the user IDs. Note that :class:`~ext.commands.Bot` does not have this " +"problem." +msgstr "" + +#: ../../api/events.rst:799 192f3d3b79e047c4b51ec51f981e33b7 +msgid "The current message." +msgstr "" + +#: ../../api/events.rst:804 7b25830b67764d73a3031060cc579689 +msgid "" +"Called when a message is deleted. If the message is not found in the " +"internal message cache, then this event will not be called. Messages " +"might not be in cache if the message is too old or the client is " +"participating in high traffic guilds." +msgstr "" + +#: ../../api/events.rst:809 ad4a7fb8f74444bb8d146c990732bb91 +msgid "" +"If this occurs increase the :class:`max_messages ` parameter or " +"use the :func:`on_raw_message_delete` event instead." +msgstr "" + +#: ../../api/events.rst:814 a428153671394c76966c2a2f9024abcf +msgid "The deleted message." +msgstr "" + +#: ../../api/events.rst:819 095b22a1f2f24220ac745a7a4fdc391c +msgid "" +"Called when messages are bulk deleted. If none of the messages deleted " +"are found in the internal message cache, then this event will not be " +"called. If individual messages were not found in the internal message " +"cache, this event will still be called, but the messages not found will " +"not be included in the messages list. Messages might not be in cache if " +"the message is too old or the client is participating in high traffic " +"guilds." +msgstr "" + +#: ../../api/events.rst:826 26e2709b7f5540ec85c1bb0c0a606eb3 +msgid "" +"If this occurs increase the :class:`max_messages ` parameter or " +"use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "" + +#: ../../api/events.rst:831 9ce00566593447c492ca1278f8511426 +msgid "The messages that have been deleted." +msgstr "" + +#: ../../api/events.rst:836 10a8f337e50f4b8d898d4a2a2d6d795e +msgid "" +"Called when a message is deleted. Unlike :func:`on_message_delete`, this " +"is called regardless of the message being in the internal message cache " +"or not." +msgstr "" + +#: ../../api/events.rst:839 acf2103910fa49ef84cc4b32ec70ca78 +msgid "" +"If the message is found in the message cache, it can be accessed via " +":attr:`RawMessageDeleteEvent.cached_message`" +msgstr "" + +#: ../../api/events.rst:849 2bd4db8e59954989bcbf5cb1e022bff5 +msgid "" +"Called when a bulk delete is triggered. Unlike " +":func:`on_bulk_message_delete`, this is called regardless of the messages" +" being in the internal message cache or not." +msgstr "" + +#: ../../api/events.rst:852 5852b5d52c9e40adbf768b1102728e63 +msgid "" +"If the messages are found in the message cache, they can be accessed via " +":attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "" + +#: ../../api/events.rst:862 bf594df6bb134ca5ac6e7b608cd5b09e +msgid "" +"Called when a :class:`Message` receives an update event. If the message " +"is not found in the internal message cache, then these events will not be" +" called. Messages might not be in cache if the message is too old or the " +"client is participating in high traffic guilds." +msgstr "" + +#: ../../api/events.rst:867 2824fa05ca1a4c06892fcc7588ddd6d8 +msgid "" +"If this occurs increase the :class:`max_messages ` parameter or " +"use the :func:`on_raw_message_edit` event instead." +msgstr "" + +#: ../../api/events.rst:870 9335cc2da527455584f33d3799b39d7d +msgid "The following non-exhaustive cases trigger this event:" +msgstr "" + +#: ../../api/events.rst:872 53861c9cc0f64565af31bcc8356d1596 +msgid "A message has been pinned or unpinned." +msgstr "" + +#: ../../api/events.rst:873 308d8ed1000e42cf94bd6253c7eee766 +msgid "The message content has been changed." +msgstr "" + +#: ../../api/events.rst:874 066a5520d3c14022b153532fb10de9ca +msgid "The message has received an embed." +msgstr "" + +#: ../../api/events.rst:876 0af62deae9b743988d34523a50c3d13a +msgid "" +"For performance reasons, the embed server does not do this in a " +"\"consistent\" manner." +msgstr "" + +#: ../../api/events.rst:878 b0864434abef4d4f9c3b7fb53099a72e +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "" + +#: ../../api/events.rst:879 0f327a0f417a439eab5204a3f58142bb +msgid "A call message has received an update to its participants or ending time." +msgstr "" + +#: ../../api/events.rst:880 497e563c063242e7b911450f5531d398 +msgid "A poll has ended and the results have been finalized." +msgstr "" + +#: ../../api/events.rst:884 d43cb6b0601a480684fa45bddbf78ded +msgid "The previous version of the message." +msgstr "" + +#: ../../api/events.rst:886 7a7d3bc5be514a42acadd0236c90968a +msgid "The current version of the message." +msgstr "" + +#: ../../api/events.rst:891 dd5375656537461f878930425fd44d9e +msgid "" +"Called when a message is edited. Unlike :func:`on_message_edit`, this is " +"called regardless of the state of the internal message cache." +msgstr "" + +#: ../../api/events.rst:894 acb34759c383410297e89a9ab9014412 +msgid "" +"If the message is found in the message cache, it can be accessed via " +":attr:`RawMessageUpdateEvent.cached_message`. The cached message " +"represents the message before it has been edited. For example, if the " +"content of a message is modified and triggers the " +":func:`on_raw_message_edit` coroutine, the " +":attr:`RawMessageUpdateEvent.cached_message` will return a " +":class:`Message` object that represents the message before the content " +"was modified." +msgstr "" + +#: ../../api/events.rst:900 ae06f1f32c284364a9fcc8766cd567cc +msgid "" +"Due to the inherently raw nature of this event, the data parameter " +"coincides with the raw data given by the `gateway " +"`_." +msgstr "" + +#: ../../api/events.rst:903 7c877ddff3c948babea4b56c5855c106 +msgid "" +"Since the data payload can be partial, care must be taken when accessing " +"stuff in the dictionary. One example of a common case of partial data is " +"when the ``'content'`` key is inaccessible. This denotes an \"embed\" " +"only edit, which is an edit in which only the embeds are updated by the " +"Discord embed server." +msgstr "" + +#: ../../api/events.rst:914 407e56cbd8894cc7bfead844affa902e +msgid "Polls" +msgstr "" + +#: ../../api/events.rst:917 a9b8e9767e884d369172fb6ab1841177 +msgid "" +"Called when a vote is cast on a poll. If multiple answers were selected, " +"this fires multiple times. if the poll was not found in the internal poll" +" cache, then this event will not be called. Consider using " +":func:`on_raw_poll_vote_add` instead." +msgstr "" + +#: ../../api/events.rst:921 ../../api/events.rst:935 ../../api/events.rst:946 +#: ../../api/events.rst:960 91c503e67e4742a392a6f3e5e71708ec +#: b162b13f9b5b4acd8b928cdf76d398af cf97ca5ad27a4e5fbbe4f583cc89dc60 +#: e8a3023c3c93418e9c82cb67372f1bf7 +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "" + +#: ../../api/events.rst:923 ../../api/events.rst:948 +#: 258ead003f2243f494b187adccae34fa ff747bd5556c4a8d9167ea03a335f344 +msgid "The current state of the poll." +msgstr "" + +#: ../../api/events.rst:925 57e5c2cd8fde48a285c0585219a834ef +msgid "The user who added the vote." +msgstr "" + +#: ../../api/events.rst:927 ../../api/events.rst:952 +#: 90a34ed5976846189bfc2190e990abdf b9bc568e4f2143f2b176e85afef48e8e +msgid "The answer that was voted." +msgstr "" + +#: ../../api/events.rst:932 ee4f3182cf624af0b171db60500aa13a +msgid "" +"Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, " +"this is called regardless of the state of the internal poll cache." +msgstr "" + +#: ../../api/events.rst:942 8d2b824eaf98481c961139a209dd3b16 +msgid "" +"Called when a vote is removed from a poll. If multiple answers were " +"removed, this fires multiple times. if the poll is not found in the " +"internal poll cache, then this event will not be called. Consider using " +":func:`on_raw_poll_vote_remove` instead." +msgstr "" + +#: ../../api/events.rst:950 5f583e96e69c4434b86aa5855a38a645 +msgid "The user who removed the vote." +msgstr "" + +#: ../../api/events.rst:957 5679d90e3b9043f8824042c0a86c634b +msgid "" +"Called when a vote is removed from a poll. Unlike " +":func:`on_poll_vote_remove`, this is called regardless of the state of " +"the internal message cache." +msgstr "" + +#: ../../api/events.rst:966 1e6beea08c6545e1956f072b67cf94c0 +msgid "Reactions" +msgstr "" + +#: ../../api/events.rst:969 2259c8a34d124723a84253786909f8d4 +msgid "" +"Called when a message has a reaction added to it. Similar to " +":func:`on_message_edit`, if the message is not found in the internal " +"message cache, then this event will not be called. Consider using " +":func:`on_raw_reaction_add` instead." +msgstr "" + +#: ../../api/events.rst:975 0c4a10e8c65043cb8ad5b2aa8740c0f9 +msgid "" +"To get the :class:`Message` being reacted, access it via " +":attr:`Reaction.message`." +msgstr "" + +#: ../../api/events.rst:977 ../../api/events.rst:997 ../../api/events.rst:1029 +#: ../../api/events.rst:1040 ../../api/events.rst:1052 +#: ../../api/events.rst:1063 ../../api/events.rst:1075 +#: 05cf2a3105064224935b6fc52c104a8b 3ae12ea3aa9e49c29f89238dd55ad89d +#: 71824a77e84c432daeeb45c809a4cf3d 8b747aaeeaa54dbaa2bb43a1cacfb4a4 +#: d254e7018b894d5da0d9ab3310487581 dcf7eda8ed0e407aaabc8a42264dd252 +#: e903959ba860442bacb9dbb7455787a1 +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "" + +#: ../../api/events.rst:981 ba7506ec538a430493d6a2010d86c710 +msgid "" +"This doesn't require :attr:`Intents.members` within a guild context, but " +"due to Discord not providing updated user information in a direct message" +" it's required for direct messages to receive this event. Consider using " +":func:`on_raw_reaction_add` if you need this and do not otherwise want to" +" enable the members intent." +msgstr "" + +#: ../../api/events.rst:987 ../../api/events.rst:1019 +#: 09d780eee4834c02bccf9c957d6a8cf6 367f92343bc64207970e6a72c687716d +msgid "The current state of the reaction." +msgstr "" + +#: ../../api/events.rst:989 ../../api/events.rst:1021 +#: 6e25ca528d3649428e675864d9383bf7 b19a600ee7604f58ae7c7dae8826a694 +msgid "The user who added the reaction." +msgstr "" + +#: ../../api/events.rst:994 c55e19feffcb41368d0fc845e8ae8880 +msgid "" +"Called when a message has a reaction added. Unlike " +":func:`on_reaction_add`, this is called regardless of the state of the " +"internal message cache." +msgstr "" + +#: ../../api/events.rst:1004 fc5f26cb8154484282163f3be1d72ecb +msgid "" +"Called when a message has a reaction removed from it. Similar to " +"on_message_edit, if the message is not found in the internal message " +"cache, then this event will not be called." +msgstr "" + +#: ../../api/events.rst:1010 602b41b73b974da69daf8f4af20d682b +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "" + +#: ../../api/events.rst:1012 f0e3d9f9640149579db72c4d79b4b9b7 +msgid "" +"This requires both :attr:`Intents.reactions` and :attr:`Intents.members` " +"to be enabled." +msgstr "" + +#: ../../api/events.rst:1016 3e9d3eacd60d4aa38b1c604cfbc3af0c +msgid "" +"Consider using :func:`on_raw_reaction_remove` if you need this and do not" +" want to enable the members intent." +msgstr "" + +#: ../../api/events.rst:1026 adb3323cef574cb280e6fcadbcd9d1cf +msgid "" +"Called when a message has a reaction removed. Unlike " +":func:`on_reaction_remove`, this is called regardless of the state of the" +" internal message cache." +msgstr "" + +#: ../../api/events.rst:1036 9487bf16e1d148c6918cc08f09685396 +msgid "" +"Called when a message has all its reactions removed from it. Similar to " +":func:`on_message_edit`, if the message is not found in the internal " +"message cache, then this event will not be called. Consider using " +":func:`on_raw_reaction_clear` instead." +msgstr "" + +#: ../../api/events.rst:1042 957dda2d335345a6a9873f634958c021 +msgid "The message that had its reactions cleared." +msgstr "" + +#: ../../api/events.rst:1044 07322cdc6b664f13af8dca1e2b91081b +msgid "The reactions that were removed." +msgstr "" + +#: ../../api/events.rst:1049 0e10554d194944c49499801e107242a0 +msgid "" +"Called when a message has all its reactions removed. Unlike " +":func:`on_reaction_clear`, this is called regardless of the state of the " +"internal message cache." +msgstr "" + +#: ../../api/events.rst:1059 a2e41cfa30e1418aa393c0cf0d1858f8 +msgid "" +"Called when a message has a specific reaction removed from it. Similar to" +" :func:`on_message_edit`, if the message is not found in the internal " +"message cache, then this event will not be called. Consider using " +":func:`on_raw_reaction_clear_emoji` instead." +msgstr "" + +#: ../../api/events.rst:1067 dfa4f0b46a1048fb9196d4cab53e7e96 +msgid "The reaction that got cleared." +msgstr "" + +#: ../../api/events.rst:1072 fa250169bf22484892b7b04838eb6a62 +msgid "" +"Called when a message has a specific reaction removed from it. Unlike " +":func:`on_reaction_clear_emoji` this is called regardless of the state of" +" the internal message cache." +msgstr "" + +#: ../../api/events.rst:1083 35ea4a4f51b14096be194c1b45b9980e +msgid "Scheduled Events" +msgstr "" + +#: ../../api/events.rst:1086 92289345aa99456e8fccb0d2bedcc037 +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "" + +#: ../../api/events.rst:1088 ../../api/events.rst:1097 +#: ../../api/events.rst:1108 ../../api/events.rst:1119 +#: ../../api/events.rst:1132 ../../api/events.rst:1143 +#: ../../api/events.rst:1156 2fd67e22f8f24a24a4f09f34a9e9d221 +#: 397fd90fe30649a59c540215efdd33f2 5d2d9f01bc57458b94256b5aaae996bc +#: 9262461979874e4ba80b732bd9128414 d1665efce5a24edea7b9f156c11971dc +#: e0576265fd4140f3a91040bbb9245078 f1a230d4368d427a8aa0254e2144a131 +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "" + +#: ../../api/events.rst:1090 df55f40708a14557bca10e280cadffcd +msgid "The newly created scheduled event." +msgstr "" + +#: ../../api/events.rst:1095 3003cf8ca0d9419d9d22b0f170953af8 +msgid "Called when a scheduled event is updated." +msgstr "" + +#: ../../api/events.rst:1099 f4adbcfb52fd47f483e7dcff7ef80d89 +msgid "The old scheduled event." +msgstr "" + +#: ../../api/events.rst:1101 dd0e692f4c5a4846b85c3503724118c9 +msgid "The updated scheduled event." +msgstr "" + +#: ../../api/events.rst:1106 a5186e52c5b5474589a4e4fce901f851 +msgid "Called when a scheduled event is deleted." +msgstr "" + +#: ../../api/events.rst:1110 30ee4a060f724db18a7e1b6d5dae9c6f +msgid "The deleted scheduled event." +msgstr "" + +#: ../../api/events.rst:1115 fabb729a4b424d468699c4b45e7f928c +msgid "" +"Called when a user subscribes to an event. If the member or event is not " +"found in the internal cache, then this event will not be called. Consider" +" using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "" + +#: ../../api/events.rst:1121 65b1bb809e964351ab01b21f5d03bce1 +msgid "The scheduled event subscribed to." +msgstr "" + +#: ../../api/events.rst:1123 1d1f095f702e4d1cba2e0300dfb1d7cd +msgid "The member who subscribed." +msgstr "" + +#: ../../api/events.rst:1128 0e3eb0e978f147ee8ac9f2ad8b364954 +msgid "" +"Called when a user subscribes to an event. Unlike " +":meth:`on_scheduled_event_user_add`, this will be called regardless of " +"the state of the internal cache." +msgstr "" + +#: ../../api/events.rst:1139 009d57aba14a48edb7352ac0171cad61 +msgid "" +"Called when a user unsubscribes to an event. If the member or event is " +"not found in the internal cache, then this event will not be called. " +"Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "" + +#: ../../api/events.rst:1145 7fa34a768768480d8411a6b67d092bf9 +msgid "The scheduled event unsubscribed from." +msgstr "" + +#: ../../api/events.rst:1147 ca841d99fac740dc81c93bccf1047b92 +msgid "The member who unsubscribed." +msgstr "" + +#: ../../api/events.rst:1152 42dbcfa7372c454aa0641aba41689b96 +msgid "" +"Called when a user unsubscribes to an event. Unlike " +":meth:`on_scheduled_event_user_remove`, this will be called regardless of" +" the state of the internal cache." +msgstr "" + +#: ../../api/events.rst:1162 fdab4d3cb6594493937e482cf6f3a3cd +msgid "Stage Instances" +msgstr "" + +#: ../../api/events.rst:1166 5e4de8c9a02d40568f53b22e2928b78b +msgid "" +"Called when a :class:`StageInstance` is created or deleted for a " +":class:`StageChannel`." +msgstr "" + +#: ../../api/events.rst:1170 4362791ab4114db28b8dd19f7ef7ef07 +msgid "The stage instance that was created or deleted." +msgstr "" + +#: ../../api/events.rst:1175 885999ae3cce4971a022991fe5ae4fcd +msgid "Called when a :class:`StageInstance` is updated." +msgstr "" + +#: ../../api/events.rst:1179 cf4fabc871504d3c8c5ef7cf2452c119 +msgid "The topic is changed." +msgstr "" + +#: ../../api/events.rst:1180 6f32d000266b4d3480e3e484435b15a8 +msgid "The privacy level is changed." +msgstr "" + +#: ../../api/events.rst:1184 0330580b863a4796b086995635979c2c +msgid "The stage instance before the update." +msgstr "" + +#: ../../api/events.rst:1186 e2d1b23c3728472291d4c10ad1e01549 +msgid "The stage instance after the update." +msgstr "" + +#: ../../api/events.rst:1190 17f76be0c525474bb937f182666eecd1 +msgid "Threads" +msgstr "" + +#: ../../api/events.rst:1193 5b3f3d40701149f19d64a98a31e8adc5 +msgid "Called whenever a thread is joined." +msgstr "" + +#: ../../api/events.rst:1195 ../../api/events.rst:1208 +#: ../../api/events.rst:1221 ../../api/events.rst:1243 +#: 2a9ac789aa754c35880a62d90d5b91cf 423b8f3188c34015b3769ffa0fcab9ca +#: 61dce03189704726b094d79abe9d639f aa7a8ccefad941ce85f2f7bcfb056245 +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "" + +#: ../../api/events.rst:1201 5ec02873673f4719852827e4a4fc1fd5 +msgid "The thread that got joined." +msgstr "" + +#: ../../api/events.rst:1206 59bfa1563ad747e98d7057340d442f09 +msgid "Called whenever a thread is created." +msgstr "" + +#: ../../api/events.rst:1214 dfb084bf5ccd42c29d6b55512463bf9f +msgid "The thread that got created." +msgstr "" + +#: ../../api/events.rst:1219 8c4ff18149944315a69630439fd143b6 +msgid "" +"Called whenever a thread is removed. This is different from a thread " +"being deleted." +msgstr "" + +#: ../../api/events.rst:1227 e603d6dd1e314cbcbd72c972a610957c +msgid "" +"Due to technical limitations, this event might not be called as soon as " +"one expects. Since the library tracks thread membership locally, the API " +"only sends updated thread membership status upon being synced by joining " +"a thread." +msgstr "" + +#: ../../api/events.rst:1234 22b7be80106949e8ac757cfca635aa77 +msgid "The thread that got removed." +msgstr "" + +#: ../../api/events.rst:1239 31254204062147f58ec2e17d16079cd6 +msgid "" +"Called whenever a thread is deleted. If the deleted thread isn't found " +"in internal cache then this will not be called. Archived threads are not " +"in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "" + +#: ../../api/events.rst:1249 c836cd8213994a84b0e2a036731f5f51 +msgid "The thread that got deleted." +msgstr "" + +#: ../../api/events.rst:1254 bca48653dfbd43498473f0a6031eb84b +msgid "" +"Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this" +" is called regardless of the state of the internal cache." +msgstr "" + +#: ../../api/events.rst:1263 7a457e60855f40f1a930b8e3039c0c99 +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "" + +#: ../../api/events.rst:1265 258b46c075964405929ecf4a53efca46 +msgid "" +"You can get the thread a member belongs in by accessing " +":attr:`ThreadMember.thread`." +msgstr "" + +#: ../../api/events.rst:1271 3768dbfed1414b8bbc6b887601538d2d +msgid "The member who joined or left." +msgstr "" + +#: ../../api/events.rst:1277 5db932fbff93400397baddb4e85e642d +msgid "" +"Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike " +":func:`on_thread_member_remove` this is called regardless of the member " +"being in the thread's internal cache of members or not." +msgstr "" + +#: ../../api/events.rst:1291 ../../api/events.rst:1309 +#: 0b546f8438b44009bacd6b97af0d4b28 f4fb02cac22b4700aded6cad53c12eb7 +msgid "Called whenever a thread is updated." +msgstr "" + +#: ../../api/events.rst:1295 0df795db76f04dcaa3d951202f9797f4 +msgid "" +"If the thread could not be found in the internal cache, this event will " +"not be called. Threads will not be in the cache if they are archived. " +"Alternatively, :func:`on_raw_thread_update` is called regardless of the " +"internal cache." +msgstr "" + +#: ../../api/events.rst:1301 73530b47c0c14ea596341620dbb70d97 +msgid "The updated thread's old info." +msgstr "" + +#: ../../api/events.rst:1303 e4ad496582ca4ac58d49cb868450344f +msgid "The updated thread's new info." +msgstr "" + +#: ../../api/events.rst:1311 21b1f36456ed41fcb1da52570c551b1a +msgid "" +"Unlike :func:`on_thread_update` this is called regardless of if the " +"thread is in the internal thread cache or not." +msgstr "" + +#: ../../api/events.rst:1322 1060458a9a7a4da09c743728271e7d05 +msgid "Typing" +msgstr "" + +#: ../../api/events.rst:1325 36ddd6002ec044c082db85e340ffd365 +msgid "Called when someone begins typing a message." +msgstr "" + +#: ../../api/events.rst:1327 d7bdd9fa230e405d81dbef6cd1a0d7e6 +msgid "" +"The ``channel`` parameter can be a :class:`abc.Messageable` instance. " +"Which could either be :class:`TextChannel`, :class:`GroupChannel`, or " +":class:`DMChannel`." +msgstr "" + +#: ../../api/events.rst:1331 1bcac394435946fdac38181633fad1cb +msgid "" +"If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter " +"is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "" + +#: ../../api/events.rst:1334 ../../api/events.rst:1351 +#: 4c2cab82fe0d4d7d9bb9226ebd0f9ba1 f4c7ce967027460c941934be2c781d19 +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "" + +#: ../../api/events.rst:1336 6bd9c433daea4c2e8516e44a45101692 +msgid "The location where the typing originated from." +msgstr "" + +#: ../../api/events.rst:1338 f0f1ef599c534a958cf8278f9d26283d +msgid "The user that started typing." +msgstr "" + +#: ../../api/events.rst:1340 3f0964e9777347c394ba677711de264d +msgid "When the typing started as an aware datetime in UTC." +msgstr "" + +#: ../../api/events.rst:1345 022f547d6ee849aa9405bdbea72c23b1 +msgid "" +"Called when someone begins typing a message. Unlike :func:`on_typing`, " +"this is called regardless if the user can be found in the bot's cache or " +"not." +msgstr "" + +#: ../../api/events.rst:1348 a2234f0918c24dadbdf649c1a93e3e57 +msgid "" +"If the typing event is occurring in a guild, the member that started " +"typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "" + +#: ../../api/events.rst:1353 dadfbe18822e4f56a787d7eee475f016 +msgid "The raw typing payload." +msgstr "" + +#: ../../api/events.rst:1358 72cc8acd59874ea7a93625ae002a2026 +msgid "Voice Channel Status Update" +msgstr "" + +#: ../../api/events.rst:1361 faf876de35744e14972adcc55c9f6413 +msgid "Called when someone updates a voice channel status." +msgstr "" + +#: ../../api/events.rst:1365 c82e605cb0a14ccfba06f997667f1f06 +msgid "The channel where the voice channel status update originated from." +msgstr "" + +#: ../../api/events.rst:1367 17c48469e42a4a4ba626198df396e32d +msgid "The old voice channel status." +msgstr "" + +#: ../../api/events.rst:1369 cada34ee29ff4e7eb0d6d6c47797ec4d +msgid "The new voice channel status." +msgstr "" + +#: ../../api/events.rst:1374 52dd6b5033a0412b9bba7a8a156f8e4f +msgid "Called when someone updates a voice channels status." +msgstr "" + +#: ../../api/events.rst:1378 1bb0b4ef346543ad92c14dd99a025211 +msgid "The raw voice channel status update payload." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/exceptions.po b/docs/locales/en/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..0b8344bc7f --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,534 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/exceptions.rst:4 905c88850259467092e1b8e338f90565 +msgid "Exceptions" +msgstr "" + +#: ../../api/exceptions.rst:7 53e7e8d0686b48dcb95509c92b7a7b84 +msgid "Exception Hierarchy" +msgstr "" + +#: ../../api/exceptions.rst:11 47b569e25f35402db0c5bb4132894053 +#: 889371d042124d10a698ad8826c671c4 c335ab33962a47c78ca52d33e998481f +#: discord.errors.ApplicationCommandInvokeError:10 +#: discord.errors.ExtensionFailed:16 of +msgid ":exc:`Exception`" +msgstr "" + +#: ../../api/exceptions.rst:12 dd81b2c40c4443f1994d19146092117c +msgid ":exc:`DiscordException`" +msgstr "" + +#: ../../api/exceptions.rst:13 35e1705ec8384fe586c477bfb995fe1f +msgid ":exc:`ClientException`" +msgstr "" + +#: ../../api/exceptions.rst:14 dfedaace178b4b04884f50be480617c9 +msgid ":exc:`InvalidData`" +msgstr "" + +#: ../../api/exceptions.rst:15 c27d0bb098a447428a284ca5d023c57d +msgid ":exc:`InvalidArgument`" +msgstr "" + +#: ../../api/exceptions.rst:16 51774789129f449cb560ddcfaa9a803f +msgid ":exc:`LoginFailure`" +msgstr "" + +#: ../../api/exceptions.rst:17 3afa22c5daa04e60b127c44ec5d07180 +msgid ":exc:`ConnectionClosed`" +msgstr "" + +#: ../../api/exceptions.rst:18 4d88732f5db34d53b20962e8afa25a46 +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr "" + +#: ../../api/exceptions.rst:19 3e7d901618d546ca925a8ecd3cf9d136 +msgid ":exc:`InteractionResponded`" +msgstr "" + +#: ../../api/exceptions.rst:20 c6fa2936034d4731ab1aeaa4b614ff42 +msgid ":exc:`NoMoreItems`" +msgstr "" + +#: ../../api/exceptions.rst:21 ea3b24d6eef44faa8ef8ec9249070490 +msgid ":exc:`GatewayNotFound`" +msgstr "" + +#: ../../api/exceptions.rst:22 532d3c95695d4d6fa4e0473791f4a4f7 +msgid ":exc:`HTTPException`" +msgstr "" + +#: ../../api/exceptions.rst:23 9eebfbbe60bb4106a3b639f6f45ad07c +msgid ":exc:`Forbidden`" +msgstr "" + +#: ../../api/exceptions.rst:24 1bde5328566b4e7fab1aae599ee1a565 +msgid ":exc:`NotFound`" +msgstr "" + +#: ../../api/exceptions.rst:25 0a58a73846bc4a18941aa971d078364b +msgid ":exc:`DiscordServerError`" +msgstr "" + +#: ../../api/exceptions.rst:26 f29304804655430dad81c3d59e546a63 +msgid ":exc:`ApplicationCommandError`" +msgstr "" + +#: ../../api/exceptions.rst:27 b37502c50f0843ae943c87c7dd67d5b6 +msgid ":exc:`CheckFailure`" +msgstr "" + +#: ../../api/exceptions.rst:28 0cce9f5fbcb74b468b1486d842bc37ce +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr "" + +#: ../../api/exceptions.rst:29 c0bc52a0a7354ea6949487633ceab22c +msgid ":exc:`ExtensionError`" +msgstr "" + +#: ../../api/exceptions.rst:30 8398035b6616440587f4fd9c558f9e1a +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr "" + +#: ../../api/exceptions.rst:31 1895dc7629c543ff9faff1a0910e9f71 +msgid ":exc:`ExtensionNotLoaded`" +msgstr "" + +#: ../../api/exceptions.rst:32 228943094df54f5e85488f9097fbf719 +msgid ":exc:`NoEntryPointError`" +msgstr "" + +#: ../../api/exceptions.rst:33 cf4495b523474d45bfc0b6dd6d5c12ec +msgid ":exc:`ExtensionFailed`" +msgstr "" + +#: ../../api/exceptions.rst:34 49d4a6cc59664a2e8343d03b2aec0c6e +msgid ":exc:`ExtensionNotFound`" +msgstr "" + +#: ../../api/exceptions.rst:35 58a32d7c9bea4910a40a79acc301f307 +msgid ":exc:`sinks.SinkException`" +msgstr "" + +#: ../../api/exceptions.rst:36 ecc415221b5d43c88a9b019f81916dea +msgid ":exc:`sinks.RecordingException`" +msgstr "" + +#: ../../api/exceptions.rst:37 6cb46421436a4f5da41d5ce4f96b8b72 +msgid ":exc:`sinks.WaveSinkError`" +msgstr "" + +#: ../../api/exceptions.rst:38 38041836606a4fcfba3572a7c0daf8c7 +msgid ":exc:`sinks.MP3SinkError`" +msgstr "" + +#: ../../api/exceptions.rst:39 2db35433e3264ecf98330cb7705502ff +msgid ":exc:`sinks.MP4SinkError`" +msgstr "" + +#: ../../api/exceptions.rst:40 ba5662ba422a4369b2b8f1f665378896 +msgid ":exc:`sinks.M4ASinkError`" +msgstr "" + +#: ../../api/exceptions.rst:41 f5c7a61d892d40ec91dd9f022d327953 +msgid ":exc:`sinks.MKVSinkError`" +msgstr "" + +#: ../../api/exceptions.rst:42 1989e76c0f0d4288b8d71f7553a64c97 +msgid ":exc:`sinks.MKASinkError`" +msgstr "" + +#: ../../api/exceptions.rst:43 4d93b42667a445899b60eece4adce2c2 +msgid ":exc:`sinks.OGGSinkError`" +msgstr "" + +#: ../../api/exceptions.rst:46 0a8986c1f9fe4880bb2c64822a11ab4f +msgid "Objects" +msgstr "" + +#: ../../api/exceptions.rst:48 7aa7998b08df4af68c8ace342caa93b5 +msgid "The following exceptions are thrown by the library." +msgstr "" + +#: 7a440737679a426fa7a7c89f2a31db07 discord.errors.DiscordException:1 of +msgid "Base exception class for pycord" +msgstr "" + +#: c63dd0e386964ccfb2ed6fd3a6be053d discord.errors.DiscordException:3 of +msgid "" +"Ideally speaking, this could be caught to handle any exceptions raised " +"from this library." +msgstr "" + +#: 022cc7b12b61404d95709c9876f0e517 discord.errors.ClientException:1 of +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "" + +#: 72e32d92abb148ce85ccfff0a1d1ada7 discord.errors.ClientException:3 of +msgid "These are usually for exceptions that happened due to user input." +msgstr "" + +#: 35b288843d43407289c000fe32985e83 discord.errors.LoginFailure:1 of +msgid "" +"Exception that's raised when the :meth:`Client.login` function fails to " +"log you in from improper credentials or some other misc. failure." +msgstr "" + +#: discord.errors.NoMoreItems:1 e8c7fa94b9074f5685b8ff305095e230 of +msgid "" +"Exception that is raised when an async iteration operation has no more " +"items." +msgstr "" + +#: 79d0ec5004a64282934d619362c00adc discord.errors.HTTPException:1 of +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "" + +#: 5cea3ad7edfc46f98cc3d3639fe2c58a discord.errors.HTTPException:5 of +msgid "" +"The response of the failed HTTP request. This is an instance of " +":class:`aiohttp.ClientResponse`. In some cases this could also be a " +":class:`requests.Response`." +msgstr "" + +#: 00aed8628a2c4432af93e9fc483154aa 10825f2b28304b7aa76626de12eabd04 +#: 36fe0b953f674793b8dd415161dc94f7 5d3bb39d794c4babb6473ae2943d4ae3 +#: 6b22000658564039b294a02bf2e6978a 7ec2e0f0129b42fda6b30c5c761c88c3 +#: 8549f4429cce4661a795fb271ca15397 9474bf04f702459f93552f7909337706 +#: 9e1201a1fc2546dc917e8cc272c39dbb ad6ceaf381c244c196eaa9e2c5c54f62 +#: b222bcaab3384a428d9f3869d7c49166 d516381deef64c62a01e612de0485c15 +#: de1455fa8690404684e1dea43f6ffeb4 +#: discord.errors.ApplicationCommandInvokeError discord.errors.ConnectionClosed +#: discord.errors.ExtensionError discord.errors.ExtensionFailed +#: discord.errors.ExtensionNotFound discord.errors.HTTPException +#: discord.errors.InteractionResponded discord.errors.PrivilegedIntentsRequired +#: discord.opus.OpusError eaaa700780244b3ab76d45ff50c8fa38 +#: fcbe8c71151e4e77b1c0bbb59f3df1c4 of +msgid "type" +msgstr "" + +#: b9be9bcf60594106b05151c479fcbb62 discord.errors.HTTPException:9 of +msgid ":class:`aiohttp.ClientResponse`" +msgstr "" + +#: 4cd8b7f4c80243608b629e05a0b82093 discord.errors.HTTPException:13 of +msgid "The text of the error. Could be an empty string." +msgstr "" + +#: 130c6752e7eb41e7943175215cfc448d 467be59d59894b21a4b6c9c2f2aa5ef9 +#: 4a69a70e867e4a23a84ef67491a86a84 765da4906ff94393ad18c1d66850c3b8 +#: 8f37cdfd7fb2410895855b1ab1cb10ac discord.errors.ConnectionClosed:14 +#: discord.errors.ExtensionError:9 discord.errors.ExtensionFailed:9 +#: discord.errors.ExtensionNotFound:12 discord.errors.HTTPException:15 of +msgid ":class:`str`" +msgstr "" + +#: b77d580f0e7840b5971d4135181ac6f4 discord.errors.HTTPException:19 of +msgid "The status code of the HTTP request." +msgstr "" + +#: 12f947d587da438ea01b9101da0a9497 3c18707e0ee841358f3dd424085d1b30 +#: 46b36037252e4cb0be7044ee26eec116 862454a4c48f4cebb4f3836d9f02381d +#: discord.errors.ConnectionClosed:8 discord.errors.HTTPException:21 +#: discord.errors.HTTPException:27 discord.opus.OpusError:7 of +msgid ":class:`int`" +msgstr "" + +#: 2ed3cec390ee4551b59099fdde2a8dcd discord.errors.HTTPException:25 of +msgid "The Discord specific error code for the failure." +msgstr "" + +#: ../../api/exceptions.rst 01ee9ba2deb744d7b92451a931529aa1 +#: 07ff437c106b4199ab1b15405361a8de 2492bdfb6bbc4d13ae0d8ea01b564017 +#: 36f2eab9bb524eecb4ce1aba97bc42c7 40eab0def975438badd887750af77f0b +#: 477f7375a778484c8d34a844717b3aad 4a1d7c3c1e934702ab6f71ca0c36450f +#: 4b046040948c49c289a15ac2a5537311 52102f458d044481b865bebfa84bf489 +#: 61beddc1a3fd4da4ac0427c7f0747e06 6de9bb08e23a417ca3708e32c93af240 +#: 771beee3311e448086db629aee6c4070 80abf15e5074477e8f43380ebd8e2eb5 +#: c9c817fae24b4e3da05a33a666ae0be5 ed0e9e2b68c04c76b794fc6e8e472c81 +msgid "Parameters" +msgstr "" + +#: 67a7c71de0a1470dbabcc5de48d5aee9 discord.errors.Forbidden:1 of +msgid "Exception that's raised for when status code 403 occurs." +msgstr "" + +#: 09342b5d6dc549dfbc16c2ce0935932c d149e85486744382a40735339e24667b +#: discord.errors.Forbidden:3 discord.errors.NotFound:3 of +msgid "Subclass of :exc:`HTTPException`" +msgstr "" + +#: 25d70cb14b8640ef94180870b2575e45 discord.errors.NotFound:1 of +msgid "Exception that's raised for when status code 404 occurs." +msgstr "" + +#: 51a32935531241329221c1e89e97ff41 discord.errors.DiscordServerError:1 of +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "" + +#: 4b503b2ec1944eca98de74a200c2c179 discord.errors.DiscordServerError:3 of +msgid "Subclass of :exc:`HTTPException`." +msgstr "" + +#: 6b581300399849dd9c96910c90a8d543 discord.errors.InvalidData:1 of +msgid "" +"Exception that's raised when the library encounters unknown or invalid " +"data from Discord." +msgstr "" + +#: aaa3f0a0a8be409594bf857e3ca59802 discord.errors.InvalidArgument:1 of +msgid "" +"Exception that's raised when an argument to a function is invalid some " +"way (e.g. wrong value or wrong type)." +msgstr "" + +#: a4a8722ecbdb4fbba7477c447b82440e discord.errors.InvalidArgument:4 of +msgid "" +"This could be considered the parallel of ``ValueError`` and ``TypeError``" +" except inherited from :exc:`ClientException` and thus " +":exc:`DiscordException`." +msgstr "" + +#: 22be332c77ad43c29747f0c830b50dec discord.errors.GatewayNotFound:1 of +msgid "" +"An exception that is raised when the gateway for Discord could not be " +"found" +msgstr "" + +#: 20116a3ed16a4f098c4b3b69a5e341ca discord.errors.ConnectionClosed:1 of +msgid "" +"Exception that's raised when the gateway connection is closed for reasons" +" that could not be handled internally." +msgstr "" + +#: d509ada602b848bdbd50c21cf0233978 discord.errors.ConnectionClosed:6 of +msgid "The close code of the websocket." +msgstr "" + +#: 7f37197e4ee74530bb88cb21b6a73f0a discord.errors.ConnectionClosed:12 of +msgid "The reason provided for the closure." +msgstr "" + +#: 171c5579acb2413c935a3d3e8f1d1b45 3d446df749944ec4ab403b1ae13406af +#: discord.errors.ConnectionClosed:18 +#: discord.errors.PrivilegedIntentsRequired:13 of +msgid "The shard ID that got closed if applicable." +msgstr "" + +#: 0c5edc13c29a4fcba0c5644e1ebe0e19 a5aede21eb0f4acc8948671949905250 +#: discord.errors.ConnectionClosed:20 +#: discord.errors.PrivilegedIntentsRequired:15 of +msgid "Optional[:class:`int`]" +msgstr "" + +#: c35e141e7013495ea8c6f6f71dd78203 discord.errors.PrivilegedIntentsRequired:1 +#: of +msgid "" +"Exception that's raised when the gateway is requesting privileged " +"intents, but they're not ticked in the developer page yet." +msgstr "" + +#: 9196e61bb84944db8fff5530c4d0d413 discord.errors.PrivilegedIntentsRequired:4 +#: of +msgid "" +"Go to https://discord.com/developers/applications/ and enable the intents" +" that are required. Currently, these are as follows:" +msgstr "" + +#: 030b7d6b61454efebb407201550cd7a9 discord.errors.PrivilegedIntentsRequired:7 +#: of +msgid ":attr:`Intents.members`" +msgstr "" + +#: b7642c9a817a49da89462e50b15e975b discord.errors.PrivilegedIntentsRequired:8 +#: of +msgid ":attr:`Intents.presences`" +msgstr "" + +#: 470bcd80cfd7496d98de1a3f2be5c22a discord.errors.PrivilegedIntentsRequired:9 +#: of +msgid ":attr:`Intents.message_content`" +msgstr "" + +#: 3573b8e0f8ab401e8b9b71a868031367 discord.errors.InteractionResponded:1 of +msgid "" +"Exception that's raised when sending another interaction response using " +":class:`InteractionResponse` when one has already been done before." +msgstr "" + +#: 34a4cd18050c48ed8392c9700be6d396 discord.errors.InteractionResponded:4 of +msgid "An interaction can only respond once." +msgstr "" + +#: 9943182c689e42acbd083cbe6818da5d discord.errors.InteractionResponded:10 of +msgid "The interaction that's already been responded to." +msgstr "" + +#: 5e386ba748274173b7734455c842a270 discord.errors.InteractionResponded:12 of +msgid ":class:`Interaction`" +msgstr "" + +#: 1c1ea797ac5a40129e42d95b86fd38d4 discord.opus.OpusError:1 of +msgid "An exception that is thrown for libopus related errors." +msgstr "" + +#: c7c96aac320a4bda9ce5bc7fcfada69f discord.opus.OpusError:5 of +msgid "The error code returned." +msgstr "" + +#: b7f591cca75a46a0b206b4c9859d3aa5 discord.opus.OpusNotLoaded:1 of +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "" + +#: 7cabf009ba0e4a83b39b4876c02bb864 discord.errors.ApplicationCommandError:1 of +msgid "The base exception type for all application command related errors." +msgstr "" + +#: 80e6f2d8a4d940c292d9d094f3b67480 discord.errors.ApplicationCommandError:3 of +msgid "This inherits from :exc:`DiscordException`." +msgstr "" + +#: 799361c7da824355a6b0744337a69ed3 discord.errors.ApplicationCommandError:5 of +msgid "" +"This exception and exceptions inherited from it are handled in a special " +"way as they are caught and passed into a special event from " +":class:`.Bot`\\, :func:`.on_command_error`." +msgstr "" + +#: c81f4d594afa42ce8860c68647fc343c discord.errors.CheckFailure:1 of +msgid "" +"Exception raised when the predicates in :attr:`.Command.checks` have " +"failed." +msgstr "" + +#: 6fb9bf3276c74e69b2a38256c28e1ec0 d5608f50352b46ada015d057ebd2d8a3 +#: discord.errors.ApplicationCommandInvokeError:3 discord.errors.CheckFailure:3 +#: of +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "" + +#: 014df6d7579143978bdc8d92695bc502 +#: discord.errors.ApplicationCommandInvokeError:1 of +msgid "Exception raised when the command being invoked raised an exception." +msgstr "" + +#: 9b23087d6dab4078a722e14af474ff0a de46c67c0d34451d8cf4676f58567c93 +#: discord.errors.ApplicationCommandInvokeError:7 +#: discord.errors.ExtensionFailed:13 of +msgid "" +"The original exception that was raised. You can also get this via the " +"``__cause__`` attribute." +msgstr "" + +#: c595f594796040aea80635be71c18f09 discord.errors.ExtensionError:1 of +msgid "Base exception for extension related errors." +msgstr "" + +#: 4ac31a298cd0422daf77b257ce912716 discord.errors.ExtensionError:3 of +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "" + +#: 25c5c3c8fb2d458cbda274f919af01a4 discord.errors.ExtensionError:7 of +msgid "The extension that had an error." +msgstr "" + +#: b5b0ffc88ecb415ebe57a386b79458bc discord.errors.ExtensionAlreadyLoaded:1 of +msgid "An exception raised when an extension has already been loaded." +msgstr "" + +#: 28e512cb2cf24be19c6e32bc23841bbb 39c6885c65794beb9120470780ac767e +#: 6c5a2c9815dd49d2b3c1d2a23baa67d8 a59b7a8232614578bc2f7a2c3c532ffc +#: discord.errors.ExtensionAlreadyLoaded:3 discord.errors.ExtensionFailed:3 +#: discord.errors.ExtensionNotFound:3 discord.errors.ExtensionNotLoaded:3 +#: discord.errors.NoEntryPointError:3 e2125d928b54437bac568f64e733bfe7 of +msgid "This inherits from :exc:`ExtensionError`" +msgstr "" + +#: 53e72a006f6241409b12457ba8b8e427 discord.errors.ExtensionNotLoaded:1 of +msgid "An exception raised when an extension was not loaded." +msgstr "" + +#: 67c40091d97d405098f489ef8ec672d8 discord.errors.NoEntryPointError:1 of +msgid "" +"An exception raised when an extension does not have a ``setup`` entry " +"point function." +msgstr "" + +#: 8168ccb6e48c40acacdcd3767115a1e7 discord.errors.ExtensionFailed:1 of +msgid "" +"An exception raised when an extension failed to load during execution of " +"the module or ``setup`` entry point." +msgstr "" + +#: 2e49b1133d3c4757ba35ed0415f07b34 8c44c489681d42b6a508ccb656164b0d +#: discord.errors.ExtensionFailed:7 discord.errors.ExtensionNotFound:10 of +msgid "The extension that had the error." +msgstr "" + +#: discord.errors.ExtensionNotFound:1 ef648aab45b0455690d58d28dfbe3e38 of +msgid "An exception raised when an extension is not found." +msgstr "" + +#: 7d6e25e7e1c54cbfbeb620fbdcfeaa37 discord.errors.ExtensionNotFound:5 of +msgid "Made the ``original`` attribute always None." +msgstr "" + +#: 21739c1cf0ac475b89bb1107726f3f79 discord.sinks.errors.SinkException:1 of +msgid "Raised when a Sink error occurs." +msgstr "" + +#: 7e64bdea145d4bb7875e1bcef1a3a483 discord.sinks.errors.RecordingException:1 +#: of +msgid "" +"Exception that's thrown when there is an error while trying to record " +"audio from a voice channel." +msgstr "" + +#: 6e4acf4cb73947dca4f423639b8cab3f discord.sinks.errors.WaveSinkError:1 of +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "" + +#: 6ae6e3ecf68c4d69ab5c019cba190af4 discord.sinks.errors.MP3SinkError:1 of +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "" + +#: 672f48e9a57f4a60b9061b0e91e2abf4 discord.sinks.errors.MP4SinkError:1 of +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "" + +#: 2389561c34a8497c91f4375f02708fb1 discord.sinks.errors.M4ASinkError:1 of +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "" + +#: b90dda587cf54324aee88041db439ac9 discord.sinks.errors.MKVSinkError:1 of +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "" + +#: 218e43ce373a429e98b880bcd9e4f748 discord.sinks.errors.MKASinkError:1 of +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "" + +#: 9cdf58aa453f4e2f896a496c0a20bd25 discord.sinks.errors.OGGSinkError:1 of +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/index.po b/docs/locales/en/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..ee3c14f424 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/index.po @@ -0,0 +1,41 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/index.rst:16 +msgid "Table of Contents" +msgstr "" + +#: ../../api/index.rst:4 8992526d88c64b82a566631cc042bf6b +msgid "API Reference" +msgstr "" + +#: ../../api/index.rst:6 262a2f48a4e843069ef5e14e69074c5c +msgid "The following section outlines the API of Pycord." +msgstr "" + +#: ../../api/index.rst:10 b91b68d91ae540459d4bd07dd3c8177f +msgid "" +"This module uses the Python logging module to log diagnostic and errors " +"in an output independent way. If the logging module is not configured, " +"these logs will not be output anywhere. See :ref:`logging_setup` for " +"more information on how to set up and use the logging module with Pycord." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/models.po b/docs/locales/en/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..50dda040bb --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/models.po @@ -0,0 +1,14579 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.16.0\n" + +#: ../../api/models.rst:6 38e0de79b9364f9192187f5cafbf86e6 +msgid "Discord Models" +msgstr "" + +#: ../../api/models.rst:8 2d341c7d46244d2abbc87149a4052863 +msgid "" +"Models are classes that are received from Discord and are not meant to be" +" created by the user of the library." +msgstr "" + +#: ../../api/models.rst:13 fa5a9d512c964a36a57a16409779d3d8 +msgid "" +"The classes listed below are **not intended to be created by users** and " +"are also **read-only**." +msgstr "" + +#: ../../api/models.rst:16 3c643f93a2804663b7ee2b81f054dbe3 +msgid "" +"For example, this means that you should not make your own :class:`User` " +"instances nor should you modify the :class:`User` instance yourself." +msgstr "" + +#: ../../api/models.rst:19 af70c20f9fc54371a461c00f1c6b9508 +msgid "" +"If you want to get one of these model classes instances they'd have to be" +" through the cache, and a common way of doing so is through the " +":func:`utils.find` function or attributes of model classes that you " +"receive from the events specified in the :ref:`discord-api-events`." +msgstr "" + +#: ../../api/models.rst:26 ffd5a4f0c4bd431d8781dff93d7e3373 +msgid "" +"Nearly all classes here have :ref:`py:slots` defined which means that it " +"is impossible to have dynamic attributes to the data classes." +msgstr "" + +#: 4b6e88f1ca724d2c8d7ffbd0482931ad discord.asset.Asset:1 of +msgid "Represents a CDN asset on Discord." +msgstr "" + +#: 936e301eb51d45cbac03ca0b73a3b6fc discord.asset.Asset:7 of +msgid "Returns the URL of the CDN asset." +msgstr "" + +#: 76958866276249ce9521bc01dee3f1e2 discord.asset.Asset:11 of +msgid "Returns the length of the CDN asset's URL." +msgstr "" + +#: 8117bae6fc854836a148475fae0c6b4d discord.asset.Asset:15 of +msgid "Checks if the asset is equal to another asset." +msgstr "" + +#: a1a120421df24e4391f78742e4725277 discord.asset.Asset:19 of +msgid "Checks if the asset is not equal to another asset." +msgstr "" + +#: 08223d7368fe4ec1ae8fb6b483cef2ac discord.asset.Asset:23 of +msgid "Returns the hash of the asset." +msgstr "" + +#: ../../api/models.rst 021c63b182bb4e81a6b50633e6be8d94 +#: 0c17b7715600433fac4d35bf0017e7b7 1000e6e5e6224041a432ab22340c6a22 +#: 12d301f98b5e48a3873512211a277fb8 185fb682d8514ac8aac5a55b2bb0b3dc +#: 18a8b12540854ba4bd1ccf6a3faf2044 1d83346277d643b291dca0b949e3b058 +#: 2a4d60ac337a46c0bed1bc26c226038f 2ad70d3718a4499cb9197f85eb4abf87 +#: 2bb5fe9dcfdc4277aedd1b8cac88e88f 2c7f28585a7445caa3375c657bfa10fe +#: 3993991579084341a58ae9581980d8f2 41f3ff189d5746b3b37769fc2f8e683d +#: 47cf29f45d094211a6159f29fd08d82d 483e8acc9cae4b48aaaa0566e32bbf6c +#: 4ad270a9f286434ea4210e41b4d84a2b 4cd55485c5ec409cb04d2efb51172d09 +#: 4e3426bccb324f8ca84175605fe88d97 67deeae9eedb44cc97fa9c9c32d8fb7f +#: 6836891e883c423481ebac9ffd750fa1 728aa08043a64adda19d956c6ff44128 +#: 7b1c6d12b4a842a997b5465a8ddbb287 7c47ce6d35854eabae233cb4388c1b7c +#: 7cc43cf3dd184cd686b8bf1ec6c776c2 7cde32a58ded4bc89d170ba90e584f79 +#: 7db2c31f6b6b4368877cec63b61d725c 7eeef0117d73468bbf069e0735089439 +#: 8183ff58df9b4e73bc33a30fb382eb7b 81e36a1bf1c14fe2a37b210df30a3427 +#: 82c457d86c2142bcab50d8842bda9063 8358e6376bbf4ed99e959db533fd3e82 +#: 868a9098949744cf9fcf7c6f42e516f7 883bef32346f462e98c0bdec679b1efc +#: 8bfaf5d7e1804eb5bf58cca632c716c2 8df6ae442263404b9f2b7ed7ae19f057 +#: 8fa9dbf39d3e4d458673e6e35abcb4c9 92bc5070285c4eb9b08cec9bafd803a0 +#: 978731b4ff544335acfad6f762b91b3e 9b463aa7bf23454dbdca8aa23cc8539b +#: 9b83c72d2fe047bf93dffa69af7efd07 9d168ece95784b269773220dae484295 +#: a226e4fd036c4e87a2f9e3ab17fc1ca1 a24c93013f654f39aec619169aee3ffd +#: a3bb38861f7d4b6f9fc2cde50a4f6e90 a70491d545954835a7ba3ee88e35ab11 +#: a7ad261a3e4e408fae23d5a5d4336802 abffcbc2c62646a59bd6a3492faaf76c +#: ad6aee1e9b0642d4a2598a8a947336f6 ae50dcfdf19047f39c36d0c0cb946484 +#: b168fffcce71401eb693e9e18b66c905 b22c89b9409f45538c044c97893adb19 +#: b4903e4b445749fc8bb0e9ed08704b46 b5873e6ce92f4f3ab50f63c347178ee1 +#: bb58123a93434a7d923686db2691d9bf bce09d4f70644d45949114525a9e232f +#: be92e79b8562492497e0d816d28b3038 c2cf03ff152a4746a445c6e09c4ecf4d +#: c46eadcf6cc141368f08bb53bfa5ea54 c4b82d4c337b48fb8cecced3bfaea55a +#: c7ef03b91163401782f9a92f6ce2c03d c831fa537f414a13a0b6020ed358e961 +#: cb7c79b0236c445790339b76b58e96f0 cf2ef7aba94a4080be66ea0480c20921 +#: cfa8cd151dec4643af4fb785fc99556c d2e07740ec32449eb410f0bdef8452b3 +#: d490697a012c42d5bbf554978ed73d0e d4e42741de964a12b603dfbee3a9228f +#: db10503e23c74cc18f50099e14cc0893 de160c5eabbc4424aa90922d81f49f99 +#: df2fb0faeb9443da8ba9f844182584ef df9374bb269a4de2a914a52d64365053 +#: discord.abc.Messageable.history discord.channel.StageChannel.purge +#: discord.channel.VoiceChannel.purge discord.channel._TextChannel.purge +#: discord.guild.Guild.audit_logs discord.guild.Guild.bans +#: discord.guild.Guild.fetch_members discord.reaction.Reaction.users +#: discord.scheduled_events.ScheduledEvent.subscribers +#: discord.threads.Thread.purge e4bba7ea10be4e9ea126e3aa6e9ad74a +#: e898e44df463451c9ed547af0b4667fd efe3e572d3bb42b9a47d27498a8b1ecc +#: f0fe6c67049d4b96a437cd6ff3a5018d f9d7b016a79b4441b05cde2a98ff2f73 +#: faad64e33270420d9540268e1052426c fd2871dc9d2b437eaf077d906752bc0a +#: fe151c499f3f4ed9af0da6bfd29cd5c4 of +msgid "Parameters" +msgstr "" + +#: cd3e1dc1a94d4c3a8c524857d4dd1246 discord.Asset.url:1 of +msgid "Returns the underlying URL of the asset." +msgstr "" + +#: 350e91b0635b401c984176738616aef5 discord.Asset.key:1 of +msgid "Returns the identifying key of the asset." +msgstr "" + +#: 176cce10bb0141758719e6eb9aeab46d discord.asset.Asset.is_animated:1 of +msgid "Returns whether the asset is animated." +msgstr "" + +#: ../../api/models.rst 0309d5bc75b4441c897a10094b96ac4a +#: 0640e492b57342b5a13994bcb5450a85 077c7293671b47aea1ead298192db654 +#: 0979548eb8314965a4232b002d6d8f8e 0ad9dd6e25d24167a508024ae35d87da +#: 0c09c04ca6c24f37b7befefc1e27c108 0e77fecc1b154fdaae5ecd7437e07fea +#: 0ffde691430f49ef890254f0b87e9c2e 16749d2b71db4335acddc773be0d2f0a +#: 18b90031dfc547088813e057a56401c1 19a35a7ed51a4b99a8041f75cf8e58a3 +#: 19c515ba3ce24f398e966d395a7bab86 1c5c8239784e471dba566d1b92b2a5e5 +#: 21bbe3bfdbc446d695ba06c20c373f85 21ff3a60e1e84c648ce0a5d9aea70700 +#: 22c035014b65406b969da9bfa17929bc 254810d5159c4a7ab7e45312a75c3188 +#: 261deaa002874837a2c0c7f43b420d08 2862e3ccc6274017a74b9196f3154985 +#: 2907f41b9a254a10a732581db38bb3a9 2a1ad31a3f764795a2fb39aff9873758 +#: 350fcc488876465bad13a5796135bdf2 356bef769b5f47b4987d39eb1a7db4b6 +#: 3670d238b65946fc85955a7f42fa1a37 3744d240485643bfaaeedd4801535130 +#: 3a7e19ad0efc41afb60748ca5ec7ce49 3bc24b485df54ccc86aaa73edfdda00d +#: 3bc86514262a4b3c8dfa0832fd887a71 407ca03640e945a485ddf6039c4290d7 +#: 4558c796153c4ef68dcf70075672fb40 4bd018c62f114816b1848122761f0c79 +#: 4f8209b09da140ffa3202f93b7b6bf97 506e955535214cac83087478241a0b1b +#: 522f4898e55c4556a060f6a8f63bdcd5 5369cb3951f140f7b332ad63eaca1069 +#: 536e3251a836422fac526839f75dc3c3 553cad25175b446fbcdab20da396f524 +#: 55412074b3c0457a928ba79d2886ef21 566bc6bb24784bc5970599ef1e8770c6 +#: 589587890ebd4f478c62b58dd26d5671 5987f3ee200f4d81a08e1d344e30d1d7 +#: 5aa46d39cf93485795e2b3966ca802e2 5bc8d4fec7fe4a3da55954a965a3c166 +#: 5bd361d0404c4498a423491718158f86 6000f7ba9ba8448589288c9e491da658 +#: 61b6dd6513944110a133c7efb3bc0cdc 64bddacb4cac4f82a67a58222d50d578 +#: 668a7f8b61594196a848b31c1eb2f132 6a593fc9f66142829114c6c0fed61c9b +#: 6f73c53cb70247089d507722c9903f3e 77ceaeb103b7476c86ce358d994b966c +#: 79440ec28ea74d52b17263e296d3409e 86bfec4746ab4883a54583e29dafe33d +#: 872e315e148e4e858f69d56dc0ace95e 8b037c2dd39d43d7bab7234b9974ee26 +#: 8cf23c67e6aa4a318dc9702fd590e1f8 8f074c462f05439087eaf38bdcbde36a +#: 8f1345380b4e4342a090f0d5cd984869 9b83d663436b4b1385978a81a84e11d8 +#: 9c5c89e0d0874a8691ae9c0e0face8be 9fbc068a17a84765ab1cdd7a4092661d +#: a19f99d9ba494816a26f530dcd4d3024 a35fe165deb2481da568d709dae266c2 +#: a491af9434bd4ae6b7adaf96a9ca0ef7 a57d083bbea64801a7d65f69c25a92fc +#: a6245e82802e4b7193ce9a3c9ae5b2ad aa0eaae63db44458a10fa9b1b74828fe +#: ab64e8b5946049a2b1cf13bb6b63fe97 ac441bf274914d2f9dc6f264613f0faf +#: adbc4a22ca1c4ac8959bac23ec4839d3 b4bd8df1935644ce9c0489c8542cd1af +#: b91691d031fa405b8a1d7c7a5d684d4b bac9870e0e33411ba53fb5c16935ecb0 +#: bd10cae6ed2b4708a5a0c0f4dda84951 c106589d8eff4543b272782e24ad92c8 +#: c6a7d99157e3423285c53b00b65eef1b ca57d95ea26c4194994d202c3ff3ec2a +#: cbcd88ced77f4597bfb0d4fd48bf4f58 cd8afe5f874a4ed893d57cd0f29bb9a6 +#: cdf62d9b674847e39744c3e80c1fb9ea d261c751d34446d5890e6fe388663db9 +#: d3570283753343cdba2a6758d688bef4 d3a9ecd345b9437a900862749bb1d523 +#: d90d732a2bb845569dedb27e471e7f93 da0e818d0fef430fbadf33a4e57ea595 +#: dbf4e8a592f049df9c417ab8b3d39404 dda4d63fbd664297808f901fc4957b29 +#: discord.abc.Messageable.history discord.channel.StageChannel.purge +#: discord.channel.VoiceChannel.purge discord.channel._TextChannel.purge +#: discord.guild.Guild.audit_logs discord.guild.Guild.bans +#: discord.guild.Guild.fetch_members discord.reaction.Reaction.users +#: discord.scheduled_events.ScheduledEvent.subscribers +#: discord.threads.Thread.purge e819402188e744ca884c8ba6b1a852d5 +#: ed9005f2cb1d47fb862b4be05f63997a f31cbc6d18c4492d8d39476d33e60215 +#: f32707707ee74b6dbff49ed14a238389 f5fb05070ebd4d488d1b462e0470b4c1 +#: f6f36e6c6c81482582ab35769ad90599 f852538e23ea4d0f954a427289c543f3 +#: fc37f43ede9d48f9949589a404c7024f of +msgid "Return type" +msgstr "" + +#: 1264fee836bb466f89b4f893c7bf697a 1fad9e42f9844177a0e09f9e5f6e4592 +#: b3d373e32ad24fc09945543962ca1e3a d5f84379d77d42a0860bc6eab1204514 +#: discord.asset.Asset.is_animated:4 discord.channel.CategoryChannel.is_nsfw:4 +#: discord.channel.StageChannel.is_nsfw:4 discord.channel.TextChannel.is_news:4 +#: discord.channel.VoiceChannel.is_nsfw:4 +#: discord.channel._TextChannel.is_nsfw:4 +#: discord.interactions.Interaction.is_command:4 +#: discord.interactions.Interaction.is_component:4 +#: discord.interactions.InteractionResponse.is_done:6 +#: discord.member.Member.is_on_mobile:4 discord.message.Attachment.is_spoiler:4 +#: discord.partial_emoji.PartialEmoji.is_custom_emoji:4 +#: discord.partial_emoji.PartialEmoji.is_unicode_emoji:4 +#: discord.reaction.Reaction.is_custom_emoji:4 discord.role.Role.is_default:4 +#: discord.role.RoleTags.is_bot_managed:4 +#: discord.role.RoleTags.is_integration:4 +#: discord.role.RoleTags.is_premium_subscriber:4 +#: discord.threads.Thread.is_news:7 discord.threads.Thread.is_nsfw:7 +#: discord.threads.Thread.is_private:7 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: b7c61034a96543d3a292a7aebd55d2b6 discord.asset.Asset.replace:1 of +msgid "Returns a new asset with the passed components replaced." +msgstr "" + +#: cd7840d7e7a84dfa84a627eb4b3760cc daa2f1c92cda42ddae693df8ce5553ce +#: discord.asset.Asset.replace:4 discord.asset.Asset.with_size:4 of +msgid "The new size of the asset." +msgstr "" + +#: discord.asset.Asset.replace:7 f29fced6031545078062f51a725d4e15 of +msgid "" +"The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', " +"'png', or 'gif' if it's animated." +msgstr "" + +#: 492be4dad9bf42bc83a10472a86b7b84 discord.asset.Asset.replace:11 of +msgid "" +"The new format to change it to if the asset isn't animated. Must be " +"either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "" + +#: ../../api/models.rst 083c074a6726498a8b6a44b2c0390d7b +#: 0996753e5e124f77b30e61a42df820c1 0a5c812ff0c04eea82c6fa3bb63067e0 +#: 0ec6d9b2e0264d87852ba95d863dd39d 0edeaf6b803640c28054b2e619ddd802 +#: 18d5b6a744724d3a83612d2d141e79a6 1d273c9af8b04078a7f814a612b7af22 +#: 2357c289d156430aa3fc97424d2c388b 25f5699c89f544419e402558052f5325 +#: 2607b77d823943a39c83436bd083804e 27c881e4f9d54dbc8ab1466442f08633 +#: 27f96ff5ae5b4e83ab6648c6154d02e1 2e2ac69c07864724996d15ad04f08e14 +#: 2f6d4fffa6184f9780a0a1f424fb7cfe 35d53beb4f25480bb67fe4c3813e33e5 +#: 362375f37b194a349214ed5fc7c0f203 3d661899f6cf48ebbebdc8e59ef6f6ec +#: 4065753368ca48ba9303ab80be7280d6 433e78d93a284222b29b7c5c27f30975 +#: 43c1656cdb8c46c3a79e2da9fcc17b2b 46a0aa1454ae417e88e6b3cd870b72f5 +#: 4db57c6eb2ff45e683de729c56067875 51d0460ea52747fe85f7df2cb0591858 +#: 57f07e810e7a4586855dc28481b0158a 5a4bb964168c4d4bb38a489fc597be24 +#: 5b085ed69fe04b72a038408f1694f8b7 5b7671b931944b139d39fd1e649e4371 +#: 647c16affa9946b1954e30a98d48817e 6653c72cfad749238708f3ebe0122142 +#: 68305bc3e2184fd09fe9642896bc9d34 6ac49508d1c143e2a64cce304a570b5e +#: 6ad8863060a441e4b4dc968c529722e7 74b5a057233e4cb5a1231cfc2ec593e2 +#: 750f91e4b5294b2eb91a6c4fd068c0e2 76becbf11cbf44e694d2b1ae7e64f923 +#: 8283e51b1c044e2fb9250dd199dcac71 83705baf8a864eec9f13163564e7cf6f +#: 847dccc772424a3faf88bddcb661386d 86821b65aab74584ad8c55849a601d14 +#: 8aa9e45ae0fe4b84b38aee62c912c235 8e51aa1f2ed94e2094249f3044a9d198 +#: 96cc6a6f1f9d4894a37e737d95105b43 9f2285651c4f433f8b1c16881926f0bb +#: 9f601fe77c824a16b0956178e383143e ac01e19d8d404b5dae571c9d27da19cb +#: b2f1da5ff55c4a3b9346d3b6e1f1adaf b6c1b4114fb543e195c94aa432fe159c +#: b739480c9c6f4adf8e1e3c3933784bc3 b86abad0dc784bcfbc12f4c84d1fa742 +#: bab7da69a6be495781382e54dbaca4de c9b9dc712a914abf8f2219351eeff240 +#: d158caf1186e48c8a38e8020bc046db6 d36b0236b9ea4776a7e6b378e9e2d52a +#: d49a124f37e64f348e59d79ea1e601dc d5a133945e874db9945b37883aaded27 +#: d8969dd93df444019b67ca16bb4ef691 da72630aca084d3aaeafd45ebb6e90e2 +#: dfd2a44a017442e29804dc590d1e49d5 discord.channel.StageChannel.purge +#: discord.channel.VoiceChannel.purge discord.channel._TextChannel.purge +#: discord.threads.Thread.purge e081836ae6504e498ac8f7e7f304807e +#: e79560eeaad2454da4385f06e2aaee39 ecd9fdca3e544014953f89c1e94c68f0 +#: f66ddfebd98a4697bb828487d4a14e10 f6f28fef35e44b52b7f0d8b8d69516ea +#: f88c908a6f4c41fabacd70ad58cdf52a fdf7e9a3108d4be18ba445ce61cb75c8 of +msgid "Returns" +msgstr "" + +#: 0f6ae02f77bb47c4ad5b987a9ff6472f discord.asset.Asset.replace:15 of +msgid "The newly updated asset." +msgstr "" + +#: 11fc898438104a268cae9f6320a66331 7decbb31cbe34e0591ee991814ce097d +#: dee5733170884301b654b93e85996bf0 discord.asset.Asset.replace:16 +#: discord.asset.Asset.with_format:8 discord.asset.Asset.with_size:8 +#: discord.asset.Asset.with_static_format:11 fd507c401cdc4f5ea3a0dc7c779df1d2 +#: of +msgid ":class:`Asset`" +msgstr "" + +#: ../../api/models.rst 017b475bd4664867bb6949ff019b5617 +#: 05260df1bd954c5caa25ff09f602f59d 08e736d0ebcb4f969f5b6c1e9b37778c +#: 0b506a02f13c4c2aa4ee74fe7426251a 113a72e344ba44e589ab4850f4e526d2 +#: 12909ab179ae4ae984212487c8121eb8 141f4b3b829f443c9e0e95b059139f3c +#: 17544644f3174233b360da2c7fc321de 1c6dc455287548f2ab99194beb45b232 +#: 1f953a100c764d178b276431e62b1992 22006d01559c4c56acdb79d7f1ed738f +#: 22e7624f7c8a4117a3d3744545d2dcf3 2472859665d2470bb065bfc0b93027e1 +#: 267de63306354febb545e6ce928be1e6 26bd87134fbb4581a4f394d41b894084 +#: 2d288ac0eca6428fa8068b8aeb74e498 3902ae0d9db246adb81666c177be7db2 +#: 393c0085e60b406e91fa74316710ca6c 3c681436fcb64600ad5b441e2331589b +#: 3df56f6e1f9a4a4999cbaaf11a1cd473 3f8de618dccb440bae0e587fb00cbbca +#: 44b8d1766516447fb8c88325249d39b0 46cf6a58d072411e85e96d08a4ce189e +#: 479fe8e8503a4eeda03033937fea8178 47f45e0b2e5f442790500ab0a1cb7ae5 +#: 4b0ae9cfa8734a47aec5bc961bf7d8ea 5298538313c0410689ffa672c5266090 +#: 530048b485b64e259d50b0528f5a980e 55e5647b51fa4afb899876de7b44a51e +#: 5c03c74134e3491dba9c9a283a2eb3ef 612731b71d164a1d85b70ee0e6acd7f7 +#: 63b00c35f848405e9fea923d03fa7759 699b6b4ff6544f7faeeb9f52f295dba8 +#: 6a70eeb5c346446eaa451b8a82fa36f0 6b49644c0a984cefa8ad37bd37e25c6c +#: 6c88abffe12448c7999d0268dd98391d 6e2bbeaa9dbf4d0095fcab664be6f5ad +#: 6f0007dd2faf4406952fee24462ad0ef 6f136f8c5e6d4b7088fce1fed9753458 +#: 73980af6f86141cf98c79c7088e50c86 8448a10ed39946c9814070a5a8747f5b +#: 8cd7d37a539b4df8a6a38d86b91a57ca 911a2045702c4b5da52b8d43e124cdf3 +#: 932053c3e0c04333bbe3132b2cc918f0 936a55c4d73045b7a97b48add3bbba31 +#: 949c13f67593491fb341a58620388b86 97d2c307e17a4aa98bf80c3816b2023f +#: 9ed8c6957e594b989803867465b0832b a093e145386d4741a3c32f63e3d1b3b7 +#: a747b811291345929a132043b534d8f7 a78381ea68c5462ca57f748f4891aaeb +#: ab281ddb680842b9a168aa9d9d1142c8 ac17053a86f84471be8fbb3466c02f59 +#: acf65750771442a785e04917545d20bc b2dbee1368ee427fad1bc38199801dfd +#: b59762528dc74f0fa3c39634bbc7b257 b8530b14839d4c8c8d553f5ecd20f041 +#: b879e907e15d4b709a7c4fb7e4e46856 c2ea625207034985b0c360f2a82bcb33 +#: c68960e6aa504d848baa9d228f79b622 c793135c62ea436aad956d5fa0129ef6 +#: ca68861e26e843c79b39454f02ce4bdb cca081068ed54c418626a8f0830289cc +#: d64c9fbd67f44db186cc840553acf9c2 d80bc37cab244a838dc6b22f210108fd +#: dd7eff5537e64034b184274723af6237 df047e2a4b19450294fe199cbece81dc +#: discord.abc.Messageable.history discord.channel.StageChannel.purge +#: discord.channel.VoiceChannel.purge discord.channel._TextChannel.purge +#: discord.guild.Guild.audit_logs discord.guild.Guild.bans +#: discord.guild.Guild.fetch_members discord.reaction.Reaction.users +#: discord.scheduled_events.ScheduledEvent.subscribers +#: discord.threads.Thread.purge e0eacc7163104667a12355c978c322ca +#: eb9ad7bc68144f10904406488bd7ae24 ec0331f905e2441fab9824d1f8c4963c +#: f540cbb4fa004ee6bea4303f94a62480 f56f39ec6cb24f81ae8f8d24412d450e +#: f5bccbd888d048908de44bba82b6968a f65abbd1f6c1479e933a7e770f0b0b9d +#: fb448fea1e4d411da17ac96ac8102a8e fb44d6093f9241de967bd1a6a92c87d8 +#: fb7a0c154ac948c6bb5db13e5ec9280f of +msgid "Raises" +msgstr "" + +#: 44165730eb744f8ba309bbead8d7fe98 discord.asset.Asset.replace:18 of +msgid "An invalid size or format was passed." +msgstr "" + +#: 18fd8b8e2cf343548ebeecbc10b4aad1 discord.asset.Asset.with_size:1 of +msgid "Returns a new asset with the specified size." +msgstr "" + +#: 0745ca1b6ee24362a4d64ca7427632bc 7d4b2761dbd546be90d9bb9950d4e9b3 +#: 9adf62b3d3dd496d8296e2f28fb3db26 discord.asset.Asset.with_format:7 +#: discord.asset.Asset.with_size:7 discord.asset.Asset.with_static_format:10 of +msgid "The new updated asset." +msgstr "" + +#: 93e6016595cd40a7b1d0dab443a478a8 discord.asset.Asset.with_size:10 of +msgid "The asset had an invalid size." +msgstr "" + +#: 4d5a1d9e37a94f8ca44dad570f54f4bd discord.asset.Asset.with_format:1 of +msgid "Returns a new asset with the specified format." +msgstr "" + +#: c83f8a1f70c645c2bd156cee9f378e6f discord.asset.Asset.with_format:4 of +msgid "The new format of the asset." +msgstr "" + +#: c886a9cdeec743fba730f913067a88ad discord.asset.Asset.with_format:10 of +msgid "The asset has an invalid format." +msgstr "" + +#: b55b6fcf0cec4d5f8a57ac6ebbef3b51 discord.asset.Asset.with_static_format:1 of +msgid "Returns a new asset with the specified static format." +msgstr "" + +#: 88e4f675a5ea4f9592f17a4e1326bb23 discord.asset.Asset.with_static_format:3 of +msgid "" +"This only changes the format if the underlying asset is not animated. " +"Otherwise, the asset is not changed." +msgstr "" + +#: a99351c344ef4193a12d16c9a9ca3034 discord.asset.Asset.with_static_format:7 of +msgid "The new static format of the asset." +msgstr "" + +#: discord.asset.Asset.with_static_format:13 fbfb165d42014fd699bd2ef4dcea2aef +#: of +msgid "The asset had an invalid format." +msgstr "" + +#: 0370e808c57d45af969bace394918843 066b403845fe4067a93eb4cd4de9e874 +#: 0ca18e9a7adf4b6f9bfcce46aa9e3c6f 0cae40f9ce954ec9b15b77889eac1aa0 +#: 160d2bd81c0b42bdbab49cfa35cacd7c 16bc1d11ba1242fcaaa2d5f3a231382b +#: 16f0ba84894943f1aef0558e371df7b3 2074d7f99a844507a10fe0536d71e67f +#: 24480af3fa9148cdaabce5cd5523cf8f 35d10e85e986443a9e0a1f97dcac92c0 +#: 3b9f5473c35c4f9db28d3a986789472f 3db17b50b5c94a2e910ca4e66e1a92d6 +#: 3e7128aea19b401893ffdc27d203a3b0 3edfe5a70b18415b911ba5439cc5a95c +#: 463e5fcc76984461a559231b6cd6dd11 5b3163ea99564932af894f02711d4317 +#: 5d4f482bbf7846e59a2374c6ee3eb3ad 5ef60e9b21b84048b0fe6334289f0abd +#: 69a188049ab64f7ca4accf2252dc85f9 6ba495235f7645788ad7dded9e4cbc17 +#: 6ca83568bdad40798ecbdd6239c77a81 6e5bcc4045eb45ee9cc11a3a33632917 +#: 6eb05241c80d4ae3b044eb9161b223e3 704cb3891c8f40fd82c41a6e73d45468 +#: 722b6b94854649b2b6cd0bcdec84d94a 7932b3a1df6e44acacdc6ef4e6344229 +#: 7ad00ffb5bab447ca72c6844703a96e9 7db62c34d00146b596edf2b23276ac74 +#: 7fb30cd7713242d68f44b6b6ebcef3fb 7fb6be439be4482eb842382bddf0eb36 +#: 7ffdf73db5ab488e9b51b597babc8b61 80f4a463d8554a85a5f20b7b8a2e22e2 +#: 81253fd018124062b2e6978ba7f46e1c 867ac713660943d69dbd98f2164d01b6 +#: 87c91af97b574208ae3fed3ce8222bd1 8c5c8dd3ede749a19ce6044fa98822d2 +#: 910794dd47a748b5b041934ea50a6337 960b97e779684aedae87fb6801d55474 +#: 97d7c3ed4fdb465b963224edb1f96c40 99adafd0bce74bca994af7d097e50577 +#: 9a10b90385b0491d98530df90fe54977 a006e586ea96435888e9470ed4c69990 +#: a228bf8cd1194556b2d999730fc00b47 a5c07649e5ae469886fe90f590944332 +#: a7d1faaa3453418aa9971cf314037c1b aca413eb20544eddbf028107ebe44fe0 +#: adee786460914fdcb477594f45acb37a b1382f4fb77344589f6d0af222d4038d +#: b417d4f6381b47c98b155db7cd64c5fb b41df4171ce3487289ea11713cb69daf +#: b4e8c615fe5343b683b8b0ad945cd4a1 b61fb94b7fd5463b98f5c4cba114eb44 +#: b7eba1a9a94b4abca974be4cda3b9439 bf7d7300665a42d4b2d8623f113713f2 +#: c126483eaf8f483ea012ef62bb4ca9a5 c475e3a182784df084eb336605c7944c +#: c62fb81bdab94beba442b9b30c439099 c812fd05fc964c57aabd04b4b16b89e6 +#: c98a9314dab44cf1bfa78489978e74c7 cb531c728a4e4ebe841b5d629b87de49 +#: cbea66b66f524924bc315334fd17e07a d81d01d2bf864f69be7d59be99c53415 +#: def68b192c7147ba9f95cf729e534f29 discord.abc.Connectable.connect:1 +#: discord.abc.GuildChannel.create_invite:1 discord.abc.GuildChannel.delete:1 +#: discord.abc.GuildChannel.invites:1 discord.abc.GuildChannel.move:1 +#: discord.abc.GuildChannel.set_permissions:1 +#: discord.abc.Messageable.fetch_message:1 discord.abc.Messageable.pins:1 +#: discord.abc.Messageable.send:1 discord.abc.Messageable.trigger_typing:1 +#: discord.asset.AssetMixin.read:1 discord.asset.AssetMixin.save:1 +#: discord.automod.AutoModRule.delete:1 discord.automod.AutoModRule.edit:1 +#: discord.channel.CategoryChannel.clone:1 +#: discord.channel.CategoryChannel.create_forum_channel:1 +#: discord.channel.CategoryChannel.create_stage_channel:1 +#: discord.channel.CategoryChannel.create_text_channel:1 +#: discord.channel.CategoryChannel.create_voice_channel:1 +#: discord.channel.CategoryChannel.edit:1 +#: discord.channel.CategoryChannel.move:1 +#: discord.channel.ForumChannel.create_thread:1 +#: discord.channel.ForumChannel.edit:1 discord.channel.GroupChannel.leave:1 +#: discord.channel.StageChannel.clone:1 +#: discord.channel.StageChannel.create_instance:1 +#: discord.channel.StageChannel.create_webhook:1 +#: discord.channel.StageChannel.delete_messages:1 +#: discord.channel.StageChannel.edit:1 +#: discord.channel.StageChannel.fetch_instance:1 +#: discord.channel.StageChannel.purge:1 discord.channel.StageChannel.webhooks:1 +#: discord.channel.TextChannel.create_thread:1 +#: discord.channel.TextChannel.edit:1 discord.channel.VoiceChannel.clone:1 +#: discord.channel.VoiceChannel.create_activity_invite:1 +#: discord.channel.VoiceChannel.create_webhook:1 +#: discord.channel.VoiceChannel.delete_messages:1 +#: discord.channel.VoiceChannel.edit:1 discord.channel.VoiceChannel.purge:1 +#: discord.channel.VoiceChannel.set_status:1 +#: discord.channel.VoiceChannel.webhooks:1 discord.channel._TextChannel.clone:1 +#: discord.channel._TextChannel.create_webhook:1 +#: discord.channel._TextChannel.delete_messages:1 +#: discord.channel._TextChannel.purge:1 discord.channel._TextChannel.webhooks:1 +#: discord.emoji.Emoji.delete:1 discord.emoji.Emoji.edit:1 +#: discord.guild.Guild.active_threads:1 discord.guild.Guild.ban:1 +#: discord.guild.Guild.bans:1 discord.guild.Guild.bulk_ban:1 +#: discord.guild.Guild.change_voice_state:1 discord.guild.Guild.chunk:1 +#: discord.guild.Guild.create_category:1 +#: discord.guild.Guild.create_custom_emoji:1 +#: discord.guild.Guild.create_forum_channel:1 +#: discord.guild.Guild.create_integration:1 discord.guild.Guild.create_role:1 +#: discord.guild.Guild.create_stage_channel:1 +#: discord.guild.Guild.create_sticker:1 discord.guild.Guild.create_template:1 +#: discord.guild.Guild.create_test_entitlement:1 +#: discord.guild.Guild.create_text_channel:1 +#: discord.guild.Guild.create_voice_channel:1 discord.guild.Guild.delete:1 +#: discord.guild.Guild.delete_emoji:1 discord.guild.Guild.delete_sticker:1 +#: discord.guild.Guild.edit:1 discord.guild.Guild.edit_onboarding:1 +#: discord.guild.Guild.edit_role_positions:1 +#: discord.guild.Guild.edit_welcome_screen:1 discord.guild.Guild.edit_widget:1 +#: discord.guild.Guild.estimate_pruned_members:1 +#: discord.guild.Guild.fetch_auto_moderation_rule:1 +#: discord.guild.Guild.fetch_auto_moderation_rules:1 +#: discord.guild.Guild.fetch_ban:1 discord.guild.Guild.fetch_channel:1 +#: discord.guild.Guild.fetch_channels:1 discord.guild.Guild.fetch_emoji:1 +#: discord.guild.Guild.fetch_emojis:1 discord.guild.Guild.fetch_member:1 +#: discord.guild.Guild.fetch_role:1 discord.guild.Guild.fetch_roles:1 +#: discord.guild.Guild.fetch_scheduled_event:1 +#: discord.guild.Guild.fetch_scheduled_events:1 +#: discord.guild.Guild.fetch_sticker:1 discord.guild.Guild.fetch_stickers:1 +#: discord.guild.Guild.integrations:1 discord.guild.Guild.invites:1 +#: discord.guild.Guild.kick:1 discord.guild.Guild.leave:1 +#: discord.guild.Guild.onboarding:1 discord.guild.Guild.prune_members:1 +#: discord.guild.Guild.query_members:1 discord.guild.Guild.set_mfa_required:1 +#: discord.guild.Guild.templates:1 discord.guild.Guild.unban:1 +#: discord.guild.Guild.vanity_invite:1 discord.guild.Guild.webhooks:1 +#: discord.guild.Guild.welcome_screen:1 discord.guild.Guild.widget:1 +#: discord.integrations.Integration.delete:1 +#: discord.integrations.StreamIntegration.edit:1 +#: discord.integrations.StreamIntegration.sync:1 +#: discord.interactions.Interaction.delete_original_response:1 +#: discord.interactions.Interaction.edit:1 +#: discord.interactions.Interaction.edit_original_response:1 +#: discord.interactions.Interaction.original_response:1 +#: discord.interactions.Interaction.respond:1 +#: discord.interactions.InteractionMessage.delete:1 +#: discord.interactions.InteractionMessage.edit:1 +#: discord.interactions.InteractionResponse.defer:1 +#: discord.interactions.InteractionResponse.edit_message:1 +#: discord.interactions.InteractionResponse.pong:1 +#: discord.interactions.InteractionResponse.premium_required:1 +#: discord.interactions.InteractionResponse.send_message:1 +#: discord.invite.Invite.delete:1 discord.member.Member.add_roles:1 +#: discord.member.Member.ban:1 discord.member.Member.edit:1 +#: discord.member.Member.kick:1 discord.member.Member.move_to:1 +#: discord.member.Member.remove_roles:1 discord.member.Member.remove_timeout:1 +#: discord.member.Member.request_to_speak:1 discord.member.Member.timeout:1 +#: discord.member.Member.timeout_for:1 discord.member.Member.unban:1 +#: discord.member.flatten_user..generate_function..general:1 +#: discord.message.Attachment.read:1 discord.message.Attachment.save:1 +#: discord.message.Attachment.to_file:1 discord.message.Message.add_reaction:1 +#: discord.message.Message.clear_reaction:1 +#: discord.message.Message.clear_reactions:1 +#: discord.message.Message.create_thread:1 discord.message.Message.delete:1 +#: discord.message.Message.edit:1 discord.message.Message.end_poll:1 +#: discord.message.Message.pin:1 discord.message.Message.publish:1 +#: discord.message.Message.remove_reaction:1 discord.message.Message.reply:1 +#: discord.message.Message.unpin:1 discord.monetization.Entitlement.consume:1 +#: discord.monetization.Entitlement.delete:1 +#: discord.onboarding.Onboarding.add_prompt:1 +#: discord.onboarding.Onboarding.append_prompt:1 +#: discord.onboarding.Onboarding.delete_prompt:1 +#: discord.onboarding.Onboarding.edit:1 +#: discord.onboarding.Onboarding.get_prompt:1 +#: discord.partial_emoji.PartialEmoji.read:1 discord.reaction.Reaction.clear:1 +#: discord.reaction.Reaction.remove:1 discord.role.Role.delete:1 +#: discord.role.Role.edit:1 discord.scheduled_events.ScheduledEvent.cancel:1 +#: discord.scheduled_events.ScheduledEvent.complete:1 +#: discord.scheduled_events.ScheduledEvent.delete:1 +#: discord.scheduled_events.ScheduledEvent.edit:1 +#: discord.scheduled_events.ScheduledEvent.start:1 +#: discord.stage_instance.StageInstance.delete:1 +#: discord.stage_instance.StageInstance.edit:1 +#: discord.sticker.GuildSticker.delete:1 discord.sticker.GuildSticker.edit:1 +#: discord.sticker.StandardSticker.pack:1 discord.sticker.StickerItem.fetch:1 +#: discord.template.Template.create_guild:1 discord.template.Template.delete:1 +#: discord.template.Template.edit:1 discord.template.Template.sync:1 +#: discord.threads.Thread.add_user:1 discord.threads.Thread.archive:1 +#: discord.threads.Thread.delete:1 discord.threads.Thread.delete_messages:1 +#: discord.threads.Thread.edit:1 discord.threads.Thread.fetch_members:1 +#: discord.threads.Thread.join:1 discord.threads.Thread.leave:1 +#: discord.threads.Thread.purge:1 discord.threads.Thread.remove_user:1 +#: discord.threads.Thread.unarchive:1 discord.user.ClientUser.edit:1 +#: discord.user.User.create_dm:1 discord.user.User.create_test_entitlement:1 +#: discord.welcome_screen.WelcomeScreen.edit:1 +#: discord.widget.Widget.fetch_invite:1 e36857d00d4a4b03a1a0dde15176d0f7 +#: e4db3b2aeb53457297109bc676433dbe e9daf36896ce457cbddfeb00139760dd +#: f18f5ee8a1464b5bad7b9626fb8800ed f6c37e86f96f473a8d467748569b3925 +#: ff88a521f3414956bb0ae0fb0241dcbc of +msgid "|coro|" +msgstr "" + +#: 0a45793fa09947b5b76f788948db618b 4dcd15b67bf147479ba86c1113f22610 +#: discord.asset.AssetMixin.read:3 discord.partial_emoji.PartialEmoji.read:3 of +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "" + +#: 61bde54de96944b9b82f92d99b94300f 65febeca148b4be9994734d258af10f6 +#: discord.asset.AssetMixin.read:5 discord.partial_emoji.PartialEmoji.read:5 of +msgid "The content of the asset." +msgstr "" + +#: 54bfde75f0f943679d7db0a7aaac127e 5dda9975005547e4beb396e3191f0db8 +#: d3b229e6d8534eceb97a2d8228c54f0f discord.asset.AssetMixin.read:6 +#: discord.message.Attachment.read:17 discord.partial_emoji.PartialEmoji.read:6 +#: of +msgid ":class:`bytes`" +msgstr "" + +#: 2d8757c0cd4949059cba01c2a5b8f8f6 34973bc8542a42cd997c216b94cce104 +#: b83fb92fb53945bba9a45e6f0fe3f9d7 discord.asset.AssetMixin.read:8 +#: discord.asset.AssetMixin.save:18 discord.partial_emoji.PartialEmoji.read:8 +#: of +msgid "There was no internal connection state." +msgstr "" + +#: 0926c1a57e1d42ca8306857809e2bbf9 2e3e6e96952c4e09959ea48ab64f6bb9 +#: a1e890fa41674e048ecbd57d80238a69 discord.asset.AssetMixin.read:9 +#: discord.asset.AssetMixin.save:19 discord.partial_emoji.PartialEmoji.read:9 +#: of +msgid "Downloading the asset failed." +msgstr "" + +#: 4401ecb89712474fb7bfe8e694cbfee2 9178ef81aa534252b75195e5f2fe0095 +#: 9cdae5cd0ee548be87ed7cba9ee65aff discord.asset.AssetMixin.read:10 +#: discord.asset.AssetMixin.save:20 discord.partial_emoji.PartialEmoji.read:10 +#: of +msgid "The asset was deleted." +msgstr "" + +#: 4cbc6c1c6cba4159a0d4a5b6c0d718b8 53a10fbce32c4c78adf94540d77378d2 +#: discord.asset.AssetMixin.save:3 of +msgid "Saves this asset into a file-like object." +msgstr "" + +#: 7b493c556a40473db9b99d2c953c19d8 7bc5cf8ede5a45639de67d42ca5aca08 +#: 83de373e758a4e4681957b8ec406b431 discord.asset.AssetMixin.save:6 +#: discord.message.Attachment.save:6 of +msgid "" +"The file-like object to save this attachment to or the filename to use. " +"If a filename is passed then a file is created with that filename and " +"used instead." +msgstr "" + +#: 046ad38efb79459fbf2a3ecd8b279567 148b8fad8702458e82dda1d1d36058f9 +#: c4ec62dcfb8546f5b32ef163c4e401e4 discord.asset.AssetMixin.save:11 +#: discord.message.Attachment.save:11 of +msgid "" +"Whether to seek to the beginning of the file after saving is successfully" +" done." +msgstr "" + +#: 05679ca6d69e48cd90a4c771b4725c81 aede6c3b17ae4ee08ab6dafed6701d9a +#: b4b183e053614b16a4b57382139bccb2 discord.asset.AssetMixin.save:15 +#: discord.message.Attachment.save:23 of +msgid "The number of bytes written." +msgstr "" + +#: 09a9130eef2f4e5f97bee108b1b2125c 1495a50b4ab8413cad396ce6b79fc8c7 +#: 212de6faa7504807a9cf8215d8063c5f 271a7d1b5dc64585a8287a2229b96d39 +#: 42faf5a34414420fa7c8b306f914946c 4e73e268d0bc4f3b9f9926548f91bef1 +#: 5191b22157d04bf4bc0a54a5f2b92103 5f353ab23d4e42d19a2257f9ead36a65 +#: 60c6d421be604ba494cc3d95066a7282 629d14726075491d8b2353e9951aced7 +#: 66016977cc094ded920608f03478efe9 6b01df183fb34aff8d8ff8f39fcd123f +#: 6b195ebe2b3f42baa97cb2ab411e7e1a 890c84de21ba4d91a8b26637510d4407 +#: 940c35d806714f3490c1706f2b5e9387 a29ea8b8246a43af9b40003208bbc391 +#: a5de6e34f3a84becb10665499bedb572 aa8742356cbc4c489cc800a7eb9d42f8 +#: b50d54ba08564b4f9b2be822321beec8 bc403ebbeb184ea2bda7548155852630 +#: ca35a42f7bd740a59fa89b4d31894909 cf2159859c6247b487751085c8eca2ab +#: d69750ecda48449186ede1be30a7b7d1 discord.asset.AssetMixin.save:16 +#: discord.automod.AutoModActionMetadata:12 discord.automod.AutoModRule:27 +#: discord.automod.AutoModRule:39 discord.automod.AutoModTriggerMetadata:60 +#: discord.channel.CategoryChannel:39 discord.channel.DMChannel:39 +#: discord.channel.ForumChannel:37 discord.channel.ForumChannel:76 +#: discord.channel.ForumChannel:94 discord.channel.GroupChannel:37 +#: discord.channel.GroupChannel:51 discord.channel.PartialMessageable:28 +#: discord.channel.StageChannel:39 discord.channel.StageChannel:64 +#: discord.channel.StageChannel:70 discord.channel.TextChannel:37 +#: discord.channel.TextChannel:72 discord.channel.TextChannel:90 +#: discord.channel.VoiceChannel:37 discord.channel.VoiceChannel:56 +#: discord.channel.VoiceChannel:62 discord.channel.VoiceChannel:98 +#: discord.components.SelectMenu:41 discord.components.SelectMenu:48 +#: discord.emoji.Emoji:39 discord.emoji.Emoji:63 discord.guild.Guild:47 +#: discord.guild.Guild:59 discord.guild.Guild:71 discord.guild.Guild:119 +#: discord.guild.Guild:152 discord.guild.Guild:158 +#: discord.guild.Guild.estimate_pruned_members:18 +#: discord.integrations.BotIntegration:9 discord.integrations.Integration:9 +#: discord.integrations.IntegrationApplication:9 +#: discord.integrations.StreamIntegration:9 +#: discord.integrations.StreamIntegration:57 +#: discord.interactions.Interaction:12 discord.interactions.Interaction:42 +#: discord.interactions.InteractionMetadata:11 +#: discord.interactions.MessageInteraction:19 discord.invite.Invite:53 +#: discord.invite.Invite:90 discord.invite.Invite:97 +#: discord.invite.PartialInviteChannel:34 discord.invite.PartialInviteGuild:34 +#: discord.message.Attachment:28 discord.message.Attachment:34 +#: discord.message.Attachment.save:24 discord.message.Message:119 +#: discord.monetization.Entitlement:9 discord.monetization.Entitlement:15 +#: discord.monetization.Entitlement:21 discord.monetization.SKU:9 +#: discord.monetization.SKU:21 discord.onboarding.OnboardingPrompt:9 +#: discord.onboarding.PromptOption:9 +#: discord.raw_models.AutoModActionExecutionEvent:15 +#: discord.raw_models.AutoModActionExecutionEvent:29 +#: discord.raw_models.AutoModActionExecutionEvent:41 +#: discord.raw_models.RawAuditLogEntryEvent:15 +#: discord.raw_models.RawAuditLogEntryEvent:21 +#: discord.raw_models.RawBulkMessageDeleteEvent:13 +#: discord.raw_models.RawIntegrationDeleteEvent:9 +#: discord.raw_models.RawIntegrationDeleteEvent:21 +#: discord.raw_models.RawMemberRemoveEvent:15 +#: discord.raw_models.RawMessageDeleteEvent:7 +#: discord.raw_models.RawMessageDeleteEvent:19 +#: discord.raw_models.RawMessageUpdateEvent:7 +#: discord.raw_models.RawMessageUpdateEvent:15 +#: discord.raw_models.RawReactionActionEvent:8 +#: discord.raw_models.RawReactionActionEvent:14 +#: discord.raw_models.RawReactionActionEvent:20 +#: discord.raw_models.RawReactionClearEmojiEvent:9 +#: discord.raw_models.RawReactionClearEmojiEvent:15 +#: discord.raw_models.RawReactionClearEvent:7 +#: discord.raw_models.RawReactionClearEvent:13 +#: discord.raw_models.RawScheduledEventSubscription:10 +#: discord.raw_models.RawScheduledEventSubscription:16 +#: discord.raw_models.RawThreadDeleteEvent:9 +#: discord.raw_models.RawThreadDeleteEvent:21 +#: discord.raw_models.RawThreadDeleteEvent:27 +#: discord.raw_models.RawThreadMembersUpdateEvent:9 +#: discord.raw_models.RawThreadMembersUpdateEvent:15 +#: discord.raw_models.RawThreadMembersUpdateEvent:21 +#: discord.raw_models.RawThreadUpdateEvent:9 +#: discord.raw_models.RawThreadUpdateEvent:21 +#: discord.raw_models.RawThreadUpdateEvent:27 +#: discord.raw_models.RawTypingEvent:9 discord.raw_models.RawTypingEvent:15 +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent:9 +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent:15 +#: discord.reaction.Reaction:36 discord.reaction.ReactionCountDetails:7 +#: discord.role.Role:41 discord.role.Role:74 +#: discord.stage_instance.StageInstance:23 +#: discord.stage_instance.StageInstance:35 discord.sticker.GuildSticker:29 +#: discord.sticker.GuildSticker:53 discord.sticker.StandardSticker:29 +#: discord.sticker.StandardSticker:41 discord.sticker.StandardSticker:59 +#: discord.sticker.Sticker:29 discord.sticker.Sticker:41 +#: discord.sticker.StickerItem:29 discord.sticker.StickerPack:35 +#: discord.sticker.StickerPack:47 discord.sticker.StickerPack:53 +#: discord.template.Template:15 discord.threads.Thread:42 +#: discord.threads.Thread:48 discord.threads.Thread:54 +#: discord.threads.Thread:70 discord.threads.Thread:76 +#: discord.threads.Thread:82 discord.threads.Thread:115 +#: discord.threads.Thread:146 discord.threads.ThreadMember:27 +#: discord.threads.ThreadMember:33 discord.user.ClientUser:31 +#: discord.user.User:31 discord.webhook.async_.PartialWebhookChannel:11 +#: discord.webhook.async_.PartialWebhookGuild:11 discord.widget.Widget:21 +#: discord.widget.WidgetChannel:25 discord.widget.WidgetChannel:37 +#: discord.widget.WidgetMember:25 ed30d7077e91479b8d8bca2fbdbe9c9c of +msgid ":class:`int`" +msgstr "" + +#: 4d8441d00798480f97977a334b4a48da discord.activity.Spotify:1 of +msgid "" +"Represents a Spotify listening activity from Discord. This is a special " +"case of :class:`Activity` that makes it easier to work with the Spotify " +"integration." +msgstr "" + +#: 4b7d1b841620499ba7463a98767f47e9 discord.activity.Spotify:8 of +msgid "Checks if two activities are equal." +msgstr "" + +#: d89f31e4e5404f12a1ce0f26c2f146a2 discord.activity.Spotify:12 of +msgid "Checks if two activities are not equal." +msgstr "" + +#: 594c0f99676c49e082bb82c19c0f7d6e discord.activity.Spotify:16 of +msgid "Returns the activity's hash." +msgstr "" + +#: dfc91939393f4a7e9857d116b2b1bbd7 discord.activity.Spotify:20 of +msgid "Returns the string 'Spotify'." +msgstr "" + +#: 0b0a706f84ae464cbc6dfdcdbc9e8933 discord.Spotify.type:1 of +msgid "" +"Returns the activity's type. This is for compatibility with " +":class:`Activity`." +msgstr "" + +#: 99555b5fa2de47b2bd1cb78ad4c12e18 discord.Spotify.type:3 of +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "" + +#: b6518f9c55b54751bc83644713021450 discord.Spotify.created_at:1 of +msgid "When the user started listening in UTC." +msgstr "" + +#: 2198a9c9e1f54df38b83ca3b1209747b 66c0095a60a34c59a3390d2c9df00d73 +#: discord.Spotify.color:1 discord.Spotify.colour:1 of +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "" + +#: 80df3891719c4ecdbfbf1540c062886f discord.Spotify.colour:3 of +msgid "There is an alias for this named :attr:`color`" +msgstr "" + +#: 3ef9a24d763545acb4f24a5d289ec2cb discord.Spotify.color:3 of +msgid "There is an alias for this named :attr:`colour`" +msgstr "" + +#: 97308ab0289b48c6b918911a58a9a597 discord.Spotify.name:1 of +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "" + +#: 8dca551009b444789adfa0d0fcb4c606 discord.Spotify.title:1 of +msgid "The title of the song being played." +msgstr "" + +#: d0687c8a579342cba812c673b56621aa discord.Spotify.artists:1 of +msgid "The artists of the song being played." +msgstr "" + +#: 65057f550e364368848a89daf74f96d8 discord.Spotify.artist:1 of +msgid "The artist of the song being played." +msgstr "" + +#: discord.Spotify.artist:3 ecec3cf51d2b4896906f928dae17b0c8 of +msgid "" +"This does not attempt to split the artist information into multiple " +"artists. Useful if there's only a single artist." +msgstr "" + +#: 73ba8c064af84734beb1457181271913 discord.Spotify.album:1 of +msgid "The album that the song being played belongs to." +msgstr "" + +#: 1a329a4988b34f5288ac278d2806f965 discord.Spotify.album_cover_url:1 of +msgid "The album cover image URL from Spotify's CDN." +msgstr "" + +#: c6d5df6af7634597886f212077f9b892 discord.Spotify.track_id:1 of +msgid "The track ID used by Spotify to identify this song." +msgstr "" + +#: c10b93e08a394c8fa658fea9d8cee51f discord.Spotify.track_url:1 of +msgid "The track URL to listen on Spotify." +msgstr "" + +#: 0c912b73bfe74d9b9736d6d3e34aca1c discord.Spotify.start:1 of +msgid "When the user started playing this song in UTC." +msgstr "" + +#: b6a0a3dce624443db41a83233c76221a discord.Spotify.end:1 of +msgid "When the user will stop playing this song in UTC." +msgstr "" + +#: cb55726247de4a8e8fa41253942fb6a9 discord.Spotify.duration:1 of +msgid "The duration of the song being played." +msgstr "" + +#: 2368f55e263f4e57b9256c714d6e201b discord.Spotify.party_id:1 of +msgid "The party ID of the listening party." +msgstr "" + +#: 8521704e5a85426f8785035e260b2b34 discord.member.VoiceState:1 of +msgid "Represents a Discord user's voice state." +msgstr "" + +#: d19a2b06ac6745cf97412af920e58255 discord.member.VoiceState:5 of +msgid "Indicates if the user is currently deafened by the guild." +msgstr "" + +#: ../../api/models.rst ../../docstring 00d1af14de6d4547ac426408cfb3330e +#: 022d0104c2db48bc9630f70a4304365e 02722029b4644ccbb2826596fdd7d4f2 +#: 03a5eb78e95e41108576c4db355fe914 03e71a7ef3c74ac7aeab4c072e40f78d +#: 0543f30da3e5475c9bd5eb027436314e 05e0203dbd8649cd8585fca15c617da7 +#: 06df0be9e38d4672b7997b4b6bed681c 08e3e9c93f0b4183ba0461cac59169eb +#: 095f7ca30ce74014962ea2b3236a9c3a 09e3beef264a4814a23c023bad7967f1 +#: 09eec61105ed4161b45e3ffdafd48bb1 0bc6ed7330724dd5990afe78502410f7 +#: 0d3d1607e68844609eed1db5d315d17c 0d7fa3aefcb74cbda495ff8a7ba6fbc6 +#: 11b797ca46964705b194c18b4a73a447 176e4886bf9f4105b2c77ab49bff6956 +#: 19f362c6d92d48a38052a262699789de 1a47b03bc43541c8ac4ed7daa9ca1088 +#: 1a5fb7ddf3a7455ea4289176cdc0aff8 1b2606ff5e8b4524989753c9ad467b97 +#: 1bdb2cabcf67495ebdc667608c720a06 1f9651133d7a430f8a24b9a645ada2ce +#: 21faf240333d4ce2bf3365f28aace9c3 22065b2145c345fcbc326d89075ec35b +#: 220cdabc3311432b998e5c424c465750 22ac68d587fe4abc9f96441f06046dd9 +#: 27158b656eca4afe88f99efb05ccb80e 272747f7539542f3b8a44148c72e26ea +#: 2a608fc04cba49d98e1f1ddaeb64d63c 2cfabf5b7fef435e84dfb3fc2787f1ac +#: 2e73b3fbe6374c54a25603c479a50d5b 301f746397184c208e2c02257b8dddbc +#: 338106e55c8240eab14065502b864dfc 35a8b82808b8453db119ab7ba0ebcdd1 +#: 364abd3036f54f50916f10f4efd58771 38411a48b02d428999e9c0ecf39097ae +#: 38452ae8461d43858b5eedf649345464 39b4f683f3684b8cb1b34e32eea8ac7c +#: 39e122018c1842f396b368886b48e775 3f61e1f35e8e409586a1c02b6434c7ad +#: 40e0a342c08347f4a56b1ca567727562 440f85a803964393857b04290988e1dc +#: 445c00ebbc034cf592fd52d5d03e6cd2 46bc1c63dd9e4910a17146639aada31f +#: 495f29871fc9457e9d2309a9a716f0d5 4ab61677a7bb4b46a38295c13b89b84c +#: 4ca295d01b0b49c58f92e474e0ed1fc7 4dee2a1342b24edcbb70f7c373b370a3 +#: 4e47f55a759e4da2818894aa503b7ee5 4e9a5a92ba97487c98c0e80a7c1da703 +#: 4ff0756fe2ff475e9426ecf6e42de593 597e2c7023454f9bae54cdbdb61770d9 +#: 5c87aebcd49e483a94cadb1a64305abf 5d2422bd8d6c40aaa09875550353f8d8 +#: 614ea7004bc04ea0b4e031051f813524 6356776abd8f454aab1e3ef10a9b60ba +#: 655791b8ec334318a71371e38c2748ad 65592515d2344a05a46a09f7c2971220 +#: 65673938e9ab431fb0c36fba6144e5e1 65b623a6ad5942158f94d51716ea4f68 +#: 69cefcf03e884ac7b5fc11b7d1d29cf3 6d42276c22a945b28406f8e09ad56b0f +#: 6d94e4d6b4274516b6b9f993418424ab 6f14d3ecd2f343f7bb7a86e1056f87e5 +#: 6f42d562ae7947699c87a27afae00ca2 72133300fc0e4ceabfa5d18acd4f5a9c +#: 7693963e34644ca1bd2effa6f88d8b9e 77b5c1a970774a8ebeabdf892fe59af6 +#: 784be10dac3d459faa6de5dc766fca6b 78e960b05b6f460ca4e148d0b59efded +#: 7a27fafabfe045e1830b6e6d3c6728b6 7c45525c2a804ee983410a85d2856c72 +#: 7e3d3537787f4909a3f533956a0b2114 8011afda364b4ad79ae0165dd6b60d40 +#: 82e604d0bafb4db995460f2cd17d033d 8387e2278a404919af843b93e8115ab7 +#: 88b635d0d40c4f37a563725261f1c623 8e36b6cc07aa42da819389f7b2caa577 +#: 8fd99964bc5f4c75b99e76cd55db8f3f 9173191c27e6484794007b6452c643b8 +#: 95a4a27c7cc446feb8ade2dd0ed19a75 977d255a45434383aa099d0cffd1a8f2 +#: 9807910de97640019833188504fba5e2 997c9a6bf9f841e1a23ee87e07dc133a +#: 998a56ee903a43baa0dcd25155351a0b 999d70ebdc004054bed7337133d7badb +#: 9cfa3c015b574cc9879d457ec5fb2607 9f597ce69b054fe48d2922e85db0c3af +#: a79f925772d5431288f420c483672dff a7eb34de6a7544ba80ac451d76e97de2 +#: a854241a48da4657ac4191293b46900d a90d060620ea4f589990c3d137e2fd63 +#: ab173d33d46744e6a0cb8b961e49e23d abb9957168004deb9b0b16726211ec29 +#: ad846a914f534e62aa1a0fa410b7ffb3 ae93341707b647f7ac229290218e5ebd +#: b2584d98803a488da58a6cfeeb4ff514 b337c6dc8c414befa7850e212ce7d7eb +#: b89ba10007ff47f0a80093f54be43e16 b8c22f4bd1b345eaa7b1ed351b8b599e +#: b9452c8cf7c2467e9e6c1b7e509554ca b99c99a9aae44872b07a6e5714355931 +#: ba3676ed311e42e99fd2a599b2467dba bc3aa6d4529e45068a1e542de6b4fb17 +#: bee43d44de1540dd8308d7840112e7ea bf0d57cc45cc4633bb0cc7df070c4418 +#: c036b2d5a57e4a3d89c4ac92c77e08bf c265aacd65f544b7b53d69cd86c1a6c9 +#: c6917a192f01402aabd064ec968591dd c73d884c4f3f47b3882953a0d0b64d00 +#: c776312038584368bc9ecec0c0ad8dbf c9fabdb2315b487abfb348c35ed9aeb0 +#: cd2df1c929cd456f8d9d8bf26bf9301d cd84f3ab22b34b47b43cca8064efcc1e +#: cf8df1038cd14c499b0f1e011403c79c d1bbad3b31bd49bfaea28fbc02d6c4ab +#: d20c90ab1d3b4e78a4b1fdb0230e5cee d4b6e88a914c4f039e215ddeec921bd5 +#: d5c8ea805b224e0e93e2aaefc85d438b d7244d7c36304984b34b1f7bc9f77171 +#: da073de05b9e4f528d3dc81a9e6ac777 de6c29b7c5de48cfbe3371df25e2e2ce +#: discord.AuthorizingIntegrationOwners.guild +#: discord.AuthorizingIntegrationOwners.user +#: discord.InteractionMetadata.interacted_message +#: discord.InteractionMetadata.original_response_message discord.SKU.url +#: discord.Thread.applied_tags discord.automod.AutoModAction +#: discord.automod.AutoModActionMetadata discord.automod.AutoModRule +#: discord.automod.AutoModTriggerMetadata discord.channel.CategoryChannel +#: discord.channel.DMChannel discord.channel.ForumChannel +#: discord.channel.GroupChannel discord.channel.PartialMessageable +#: discord.channel.StageChannel discord.channel.TextChannel +#: discord.channel.VoiceChannel discord.components.ActionRow +#: discord.components.Button discord.components.Component +#: discord.components.SelectMenu discord.emoji.Emoji discord.guild.Guild +#: discord.integrations.BotIntegration discord.integrations.Integration +#: discord.integrations.IntegrationAccount +#: discord.integrations.IntegrationApplication +#: discord.integrations.StreamIntegration +#: discord.interactions.AuthorizingIntegrationOwners +#: discord.interactions.Interaction discord.interactions.InteractionMetadata +#: discord.interactions.MessageInteraction discord.invite.Invite +#: discord.invite.PartialInviteChannel discord.invite.PartialInviteGuild +#: discord.member.Member discord.member.VoiceState discord.message.Attachment +#: discord.message.Message discord.monetization.Entitlement +#: discord.monetization.SKU discord.onboarding.Onboarding +#: discord.onboarding.OnboardingPrompt discord.onboarding.PromptOption +#: discord.partial_emoji.PartialEmoji +#: discord.raw_models.AutoModActionExecutionEvent +#: discord.raw_models.RawAuditLogEntryEvent +#: discord.raw_models.RawBulkMessageDeleteEvent +#: discord.raw_models.RawIntegrationDeleteEvent +#: discord.raw_models.RawMemberRemoveEvent +#: discord.raw_models.RawMessageDeleteEvent +#: discord.raw_models.RawMessageUpdateEvent +#: discord.raw_models.RawReactionActionEvent +#: discord.raw_models.RawReactionClearEmojiEvent +#: discord.raw_models.RawReactionClearEvent +#: discord.raw_models.RawScheduledEventSubscription +#: discord.raw_models.RawThreadDeleteEvent +#: discord.raw_models.RawThreadMembersUpdateEvent +#: discord.raw_models.RawThreadUpdateEvent discord.raw_models.RawTypingEvent +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent +#: discord.reaction.Reaction discord.reaction.ReactionCountDetails +#: discord.role.Role discord.role.RoleTags +#: discord.scheduled_events.ScheduledEvent +#: discord.scheduled_events.ScheduledEventLocation +#: discord.stage_instance.StageInstance discord.sticker.GuildSticker +#: discord.sticker.StandardSticker discord.sticker.Sticker +#: discord.sticker.StickerItem discord.sticker.StickerPack +#: discord.template.Template discord.threads.Thread +#: discord.threads.ThreadMember discord.user.ClientUser discord.user.User +#: discord.webhook.async_.PartialWebhookChannel +#: discord.webhook.async_.PartialWebhookGuild +#: discord.welcome_screen.WelcomeScreen +#: discord.welcome_screen.WelcomeScreenChannel discord.widget.Widget +#: discord.widget.WidgetChannel discord.widget.WidgetMember +#: e107404ea2c94a5aaa45cbcc63c9130c e18c8d576865486dbf7e1e5055f5ce7c +#: e4ebc8ba68aa48d1ad1e4703697409ce ea38f3e356fa4161b8de01801d95f3b6 +#: ea5702097679494cbc117ca53b79b9d1 eb97cfb2bf1c4e2c98573c7e3bbd8c4a +#: ebfd2a17c7c64a649b40a97c0397f08d ec2d1bea39794ebcbef93b57b9de6d67 +#: ee3b3590bdcd478e9bf22ad66c97f6cb f2e4b8b8137d40a2bebbf3bc5de39968 +#: f32c17be6b6e42cbbcc690990b864b62 f40b4138a7f643cdad4ff34785e7a1a6 +#: f619d28bcac54b87b9826c65caaa95d4 f893de4cfff14b6fad708001d112c886 +#: f8d9a7bee8654e418338d5153f0346e0 fc1703444c8e43aeb6b207c0f0770564 +#: fd31d6e51ff848fbaa774b695fb45f96 fdd925840fb24e89b0f94205c0acc9fb +#: ff120de4acd049acb1bd45f48960e558 of +msgid "type" +msgstr "" + +#: 086298bde6d3427996bb79be49ab9aec 0fc3be486f3b423da7bc607b592c9e7c +#: 105352a161e5411ba6f61e2fc15386f2 1073ecfb4a744835bbfaeda3378c9886 +#: 11c2f9ea736642a693a9574bc0b22721 12dadc55d4ba4391961b514f8a8f42cb +#: 200ce5183d284487b83477bba2b7c24f 21d89e71e8b84b7ea2afdb3b82c26c07 +#: 24c8e520b8a64e1b985739e53ed463bc 3033e6f13ed54783b7677f34108bf609 +#: 4003d244e62a42b7ab7815a5cfe25417 55766eb1c16d48b9a0c2abbf506e9b9e +#: 5fa3865947e547d3861918f336602cc1 60abce50c46249439a7420028aa5b862 +#: 672f9b3780724032b26e6627e52d3591 6afc41742da04070adb35652a57c9da3 +#: 789166acd786435a96c38745c7816111 7e4e194346944a07bc961f3e35ff72bd +#: 8dd5694c8ba7416c96e14265ef887819 91ee58c33d2848ed8446bec74e5c8c94 +#: 94f78f94eef14c5eab8e517a73ffd096 975fd0fa469044a8a9710bc449dee9bc +#: 9c07a12592d74668bddd9fa2ad17b925 ae2156faa6f64461abb53909ccabe94a +#: aed4fc542c3c49dd9f4ffe40e456a225 afe0c59747ee4a43b812d58594001451 +#: c0f57792bcc94fe6a59671a5e2fb01b3 c553482c64d74d31a199dacf7d704993 +#: df0105c172b14940b0ce5d8fb044beee discord.abc.Messageable.can_send:4 +#: discord.automod.AutoModRule:69 discord.channel.CategoryChannel:56 +#: discord.channel.ForumChannel:86 discord.channel.TextChannel:82 +#: discord.components.Button:35 discord.components.SelectMenu:70 +#: discord.emoji.Emoji:45 discord.emoji.Emoji:51 discord.emoji.Emoji:57 +#: discord.emoji.Emoji:69 discord.guild.Guild:65 discord.guild.Guild:81 +#: discord.guild.Guild:166 discord.integrations.BotIntegration:33 +#: discord.integrations.Integration:33 +#: discord.integrations.StreamIntegration:33 +#: discord.integrations.StreamIntegration:39 discord.invite.Invite:71 +#: discord.invite.Invite:84 discord.member.Member:62 +#: discord.member.Member.mentioned_in:8 discord.member.VoiceState:7 +#: discord.member.VoiceState:13 discord.member.VoiceState:19 +#: discord.member.VoiceState:25 discord.member.VoiceState:33 +#: discord.member.VoiceState:39 discord.member.VoiceState:49 +#: discord.member.VoiceState:67 discord.message.Attachment:90 +#: discord.message.Message:23 discord.message.Message:85 +#: discord.message.Message:138 discord.monetization.Entitlement:39 +#: discord.monetization.Entitlement:65 discord.onboarding.Onboarding:15 +#: discord.onboarding.OnboardingPrompt:33 +#: discord.onboarding.OnboardingPrompt:39 +#: discord.onboarding.OnboardingPrompt:45 discord.partial_emoji.PartialEmoji:38 +#: discord.raw_models.RawReactionActionEvent:56 +#: discord.raw_models.RawReactionClearEmojiEvent:33 +#: discord.reaction.Reaction:42 discord.reaction.Reaction:48 +#: discord.reaction.Reaction:60 discord.reaction.ReactionCountDetails:13 +#: discord.role.Role:59 discord.role.Role:81 discord.role.Role:87 +#: discord.stage_instance.StageInstance:53 discord.sticker.GuildSticker:47 +#: discord.threads.Thread:95 discord.threads.Thread:101 +#: discord.threads.Thread:108 discord.user.BaseUser.mentioned_in:8 +#: discord.user.ClientUser:55 discord.user.ClientUser:63 +#: discord.user.ClientUser:69 discord.user.ClientUser:81 discord.user.User:55 +#: discord.user.User:61 discord.widget.WidgetMember:43 +#: e0e606cdfb3344ea9a2910bb9d83e6de ef47610b7fd44937a5ef4143f95f5fc0 +#: f89aa2fc767048f9b9414df39ccb147b ffb3dc1bff1343b9a69bd7bd94289cef of +msgid ":class:`bool`" +msgstr "" + +#: 4e168944987344bba51eddacf973f7d4 discord.member.VoiceState:11 of +msgid "Indicates if the user is currently muted by the guild." +msgstr "" + +#: 9875674d947d4f31b35f6d3a57996149 discord.member.VoiceState:17 of +msgid "Indicates if the user is currently muted by their own accord." +msgstr "" + +#: 089ad680a6c643b9935e870ac1bc364d discord.member.VoiceState:23 of +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "" + +#: 6c6d13d9551e4ff7a6b6d531c1d196ca discord.member.VoiceState:29 of +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "" + +#: 5cc560cd8bcf4b94823207cc822ad75c discord.member.VoiceState:37 of +msgid "Indicates if the user is currently broadcasting video." +msgstr "" + +#: 06d90bf0834b4f71b75e975612ee0644 discord.member.VoiceState:43 of +msgid "Indicates if the user is suppressed from speaking." +msgstr "" + +#: 400787b0d95d4aed99a0a29fb34c711a discord.member.VoiceState:45 of +msgid "Only applies to stage channels." +msgstr "" + +#: c6f155a526404a928c64818aa2e3e40f discord.member.VoiceState:53 of +msgid "" +"An aware datetime object that specifies the date and time in UTC that the" +" member requested to speak. It will be ``None`` if they are not " +"requesting to speak anymore or have been accepted to speak." +msgstr "" + +#: 3cb3767a09b54e99b0f689f6dfcbd40e discord.member.VoiceState:57 of +msgid "Only applicable to stage channels." +msgstr "" + +#: 0dd0b8ab160843ff8798020ac2f60772 bd59fe44ce914d0285c9bd326f4f62ad +#: discord.invite.Invite:125 discord.member.Member:30 discord.member.Member:69 +#: discord.member.Member:77 discord.member.VoiceState:61 +#: discord.scheduled_events.ScheduledEvent:51 discord.threads.Thread:128 of +msgid "Optional[:class:`datetime.datetime`]" +msgstr "" + +#: 309697c5722a42ab82a6fba34345d73b discord.member.VoiceState:65 of +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "" + +#: 52c3b08b0e2648b88bccee6b6ca24e56 discord.member.VoiceState:71 of +msgid "" +"The voice channel that the user is currently connected to. ``None`` if " +"the user is not currently in a voice channel." +msgstr "" + +#: 035717ca83284d6f87bf02244eb995d9 discord.member.VoiceState:74 of +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "" + +#: 5ee3c89ba12a4b97861e1536c42d843d discord.channel.PartialMessageable:1 of +msgid "" +"Represents a partial messageable to aid with working messageable channels" +" when only a channel ID are present." +msgstr "" + +#: discord.channel.PartialMessageable:4 f0dc803cf2f841e9a63f0f53916c6748 of +msgid "" +"The only way to construct this class is through " +":meth:`Client.get_partial_messageable`." +msgstr "" + +#: 3b17bb6aee87426a8954360e77bfaf57 discord.channel.PartialMessageable:6 of +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "" + +#: 9b71a5537ffc44ed88015a1b14bb8f7d discord.channel.PartialMessageable:14 of +msgid "Checks if two partial messageables are equal." +msgstr "" + +#: 5b8ad364746c434d99276855f965a84f discord.channel.PartialMessageable:18 of +msgid "Checks if two partial messageables are not equal." +msgstr "" + +#: 17317a1964e741529f60995ac19f5717 discord.channel.PartialMessageable:22 of +msgid "Returns the partial messageable's hash." +msgstr "" + +#: discord.channel.PartialMessageable:26 fa864924ff55465baeeeb587848822fa of +msgid "The channel ID associated with this partial messageable." +msgstr "" + +#: 024a39c377b74088a8e5d21409e13189 discord.channel.PartialMessageable:32 of +msgid "The channel type associated with this partial messageable, if given." +msgstr "" + +#: discord.channel.PartialMessageable:34 f69b9d38552d4efd9d7f1beb314b5d4b of +msgid "Optional[:class:`ChannelType`]" +msgstr "" + +#: 2047ab6ff868447b8b80f9ec9ec486df a55a872065654b93971d8c6ecb32ddcf +#: discord.abc.Messageable.can_send:1 ee064c6766394f2fa4a28f0119527874 of +msgid "" +"Returns a :class:`bool` indicating whether you have the permissions to " +"send the object(s)." +msgstr "" + +#: 14d2bfd03a6e469d8ee65a8d101afb5f 2e7906ec63d841a4878301bd49409146 +#: 8d0ce9e20b7c4622b2f7c96ac7e3f046 discord.abc.Messageable.can_send:3 of +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "" + +#: 0384c1134c80472eac35ba53c22d90ff b05306d39e7845898a8908e0817898fb +#: discord.abc.Messageable.can_send:6 f3e0f8c526b743fdb038573a85012d71 of +msgid "An invalid type has been passed." +msgstr "" + +#: 0dec3dbb162842d78a61e2d1f4a0da1d 25b6541bc41841ccbf8b1649f85a1f9d +#: 5d3bd874ef084f87ab4ac6c6d08cb08a discord.abc.Messageable.fetch_message:3 of +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "" + +#: 4ae78ba5a69f45d4a4ae83d62b4802f3 800b0904653841ea8964dbb973b192ae +#: discord.abc.Messageable.fetch_message:6 fdbcb5604d10415c86135acc54b67c0c of +msgid "The message ID to look for." +msgstr "" + +#: 11df635629de48ef8f9d38590f9f8676 c2f7f6b8b80e4041818f55005ce8b67a +#: discord.abc.Messageable.fetch_message:9 e18b1b81cff840a99be2aaac63a6f05e of +msgid "The message asked for." +msgstr "" + +#: 0e44b08a661a4e4cb8977253c1a1fce1 54db8105f8b44c2cb4f23b1d50d1686f +#: 6e0a7e5d3ecd440881fcaf5c610130f0 discord.abc.Messageable.fetch_message:10 +#: discord.abc.Messageable.send:100 e0e1920c1d0342bab09dc720dc295044 +#: eeb551cbf2bc4573a7518a774f0ab3e2 of +msgid ":class:`~discord.Message`" +msgstr "" + +#: 6f8b6217053e47479783af39a2aff1f6 818359f01e9b4e949e0d69159449dd63 +#: 9ae4e78f4cbb4eab83ecc6f4fabaf8cc discord.abc.Messageable.fetch_message:12 of +msgid "The specified message was not found." +msgstr "" + +#: 013831d1e99644938c6dd757927e6079 1c4b5de6d0084edfb0c36ddc586cd125 +#: 87b677120b8244279256a5f0d5ba6cb3 discord.abc.Messageable.fetch_message:13 of +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: 1e046de530f5431fa8a01caec3544a8a 72cd9cf4d7734dba8283d21a3e6a2960 +#: a04b7c15a11f4d91b3ef716d191fc2e5 discord.abc.Messageable.fetch_message:14 of +msgid "Retrieving the message failed." +msgstr "" + +#: 34a4d40c3a264dc996c94056170a151d a2b5b9f3f9864954a6c95353f0840647 +#: d62bbb3b47734dc5a98c28915226ceb7 discord.abc.Messageable.history:1 of +msgid "" +"Returns an :class:`~discord.AsyncIterator` that enables receiving the " +"destination's message history." +msgstr "" + +#: 1e013f815e324252ba499008afce7129 d846b20a22f54d4bbaf1433acb092177 +#: discord.abc.Messageable.history:3 eeab1364847b4490bc5bf659ea280f89 of +msgid "" +"You must have :attr:`~discord.Permissions.read_message_history` " +"permissions to use this." +msgstr "" + +#: 2325531f3a304ef38fa74dc2ae0ffc0d 62c477d54eab4eb5b3303b8b364c89c4 +#: cedec68e61774ccd965a29d9620bb85b discord.abc.Messageable.history:6 of +msgid "" +"The number of messages to retrieve. If ``None``, retrieves every message " +"in the channel. Note, however, that this would make it a slow operation." +msgstr "" + +#: ad959063203140e2a8fec35d19f3b2c1 b18b7dbe82754883974c8fb7505d4715 +#: d447181fcf274a4f8318c716bd49fd73 discord.abc.Messageable.history:11 of +msgid "" +"Retrieve messages before this date or message. If a datetime is provided," +" it is recommended to use a UTC aware datetime. If the datetime is naive," +" it is assumed to be local time." +msgstr "" + +#: aacb6953371648ccb5e72a11bdaabbe0 ad29354d07e7456d9ac05382a07917a3 +#: discord.abc.Messageable.history:16 f56ba8bbb92847e0817c7e5cf592bfae of +msgid "" +"Retrieve messages after this date or message. If a datetime is provided, " +"it is recommended to use a UTC aware datetime. If the datetime is naive, " +"it is assumed to be local time." +msgstr "" + +#: 94944dd5859741c495b946a77434e4b3 da844572f0ee4e3db1ab88bc0ae53ace +#: ddf1d1beab504636ab1745bb2a90b04f discord.abc.Messageable.history:21 of +msgid "" +"Retrieve messages around this date or message. If a datetime is provided," +" it is recommended to use a UTC aware datetime. If the datetime is naive," +" it is assumed to be local time. When using this argument, the maximum " +"limit is 101. Note that if the limit is an even number, then this will " +"return at most limit + 1 messages." +msgstr "" + +#: 2158e52532114f00b4b65cd0423df2af 2bf2f78c9c8f4a729d8f42921b489c38 +#: 5755a7ad7f454b7cac7a362f9721ba8b discord.abc.Messageable.history:28 of +msgid "" +"If set to ``True``, return messages in oldest->newest order. Defaults to " +"``True`` if ``after`` is specified, otherwise ``False``." +msgstr "" + +#: 004531da24fb489bb78e99a15ce76ef7 2227a40f1a6346e1a0dbe7f890162ed3 +#: 27a00c698a184861a3e79a26f6bebd2e 54460f7075c6462b90bb377d32ddffe4 +#: 5fdbbfc37c264fbdac887a1d265d4d0d 978ec7ef1794400e84a2dba4651a187b +#: a56a4e26f11646db9973fb9a82041c86 c7f12b2d61ff4ddeac3d4e82b620a453 +#: discord.abc.Messageable.history +#: discord.channel._TextChannel.archived_threads discord.guild.Guild.audit_logs +#: discord.guild.Guild.bans discord.guild.Guild.entitlements +#: discord.guild.Guild.fetch_members +#: discord.member.flatten_user..generate_function..general +#: discord.reaction.Reaction.users +#: discord.scheduled_events.ScheduledEvent.subscribers +#: discord.user.User.entitlements of +msgid "Yields" +msgstr "" + +#: 1362e64547b04b19aa2381aeab3e61a4 4d8cd2cb40d64e9d8476dc4f2f34ff2e +#: a02393114810463a8e9d4c9c7191362e discord.abc.Messageable.history:32 of +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr "" + +#: 08bc04473e1c44da9381c5b7866fb287 1a061777efb3481fada5ffff633a266f +#: aabc54e6131b4d4a81f580c6c926badb discord.abc.Messageable.history:34 of +msgid "You do not have permissions to get channel message history." +msgstr "" + +#: 55b54bcf5eca44b1a17570404a0fe8b5 discord.abc.Messageable.history:35 +#: f2f1efc2d20a4530b8075de51578d2a5 f77840d45e1943359bf5aa4d7cbafd58 of +msgid "The request to get message history failed." +msgstr "" + +#: 3e3b6a5f5b8c4f55ae00cb8003b37981 71713b3b7da14660975590d847fa9ea1 +#: discord.abc.Messageable.history:36 ed437085f8744eecbf24ae254b3e43af of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr "" + +#: 25bd697769214744832fa1612bc8518a 48f6a2450ed6433da0a303deb56d0dd7 +#: 5bbda7c77f3240319cda935ecec72876 7b71c6405b814333af85829dd3f29d30 +#: 966fbbaa61a846aa9b633dbfc1ee5c60 ad7ad919296e43aa91303b7877fb6571 +#: b5677759b9d043b6805db7ae8a3ad143 bc6b48a124404bd1892f9edada1a6b58 +#: discord.abc.GuildChannel.set_permissions:25 +#: discord.abc.Messageable.history:39 discord.channel.StageChannel.purge:48 +#: discord.channel.VoiceChannel.purge:48 discord.channel._TextChannel.purge:48 +#: discord.guild.Guild.audit_logs:35 discord.guild.Guild.bans:35 +#: discord.guild.Guild.create_forum_channel:63 +#: discord.guild.Guild.create_text_channel:56 +#: discord.guild.Guild.fetch_members:29 discord.reaction.Reaction.users:27 +#: discord.scheduled_events.ScheduledEvent.subscribers:38 +#: discord.threads.Thread.purge:48 ed1cdd19826443bcafb0987ebb091e42 of +msgid "Examples" +msgstr "" + +#: 01e7cb99a36b47abbce9830768f0aaa7 51b8dfbb15bb43ef95c144c7a5d3f6ba +#: 745ca57186c14e1785a2e80ce870df80 7a9234e954ec4317a5a562863b521268 +#: discord.abc.Messageable.history:40 discord.guild.Guild.bans:36 +#: discord.guild.Guild.fetch_members:30 discord.reaction.Reaction.users:28 +#: discord.scheduled_events.ScheduledEvent.subscribers:39 +#: edbc71da771842d3aea9af593db2f036 f95b2fa403dc4f92a794b30158d2f431 of +msgid "Usage ::" +msgstr "" + +#: 154df22c3326437ebd9a4d0421852b9e 976781fce2904a7ea929a7f179bad61a +#: ab788cd1146c42759b597d948a21f602 d3f3a3b667f54db189761cb1f7a9880c +#: discord.abc.Messageable.history:47 discord.reaction.Reaction.users:34 +#: discord.scheduled_events.ScheduledEvent.subscribers:44 of +msgid "Flattening into a list: ::" +msgstr "" + +#: 4e0136f8359346d6ae9e6d3eb61aa0d7 ace68b84a7ee43cbb3d166231f224751 +#: bd8f03a7a627458e993b3312ffe4d046 discord.abc.Messageable.history:52 +#: discord.guild.Guild.bans:16 discord.guild.Guild.fetch_members:10 +#: discord.member.Member.edit:35 eac891cd3dbd47dc9b8fe4be3f905b5b +#: f55d483d8f7243539066e1a0a2e89189 of +msgid "All parameters are optional." +msgstr "" + +#: 4f0650134f1040c6b9ae6622883f8748 8ca3f84c6e354ac5a6abcc0bf696e629 +#: dc000ded9dd346c096a38a8956dfdc6a discord.abc.Messageable.pins:3 of +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "" + +#: 08b2f9ec55a44bf8a9f0ca1e3fd0c560 5219c84db278497aafcba6d6e944b9fc +#: 816eb61199e34968bfdbee4f24a84ba5 discord.abc.Messageable.pins:7 of +msgid "" +"Due to a limitation with the Discord API, the :class:`.Message` objects " +"returned by this method do not contain complete " +":attr:`.Message.reactions` data." +msgstr "" + +#: 549042b4685847aba193e422e7789a14 da415a879e4147c4a0af1d630cc81346 +#: discord.abc.Messageable.pins:11 e283aaccd4144d6e95f83432985ac90c of +msgid "The messages that are currently pinned." +msgstr "" + +#: 1b6e9a8893454a5db4741c00c3bc8031 64745f109e7948b0a14d1d21ddb9a3ec +#: 875dee04a4ff4712a8b83bd629d6ad29 discord.abc.Messageable.pins:12 of +msgid "List[:class:`~discord.Message`]" +msgstr "" + +#: 2bc50ccd657f46209917f5d9f4099650 5f422bc795f7480fa14af883be52f572 +#: b2f62ff86c1d4e9eaf9d1ea62937f171 discord.abc.Messageable.pins:14 of +msgid "Retrieving the pinned messages failed." +msgstr "" + +#: 2a04455df66145088795dfb431c2b0e9 66d2246603944b76b2b9c3683d1e1363 +#: discord.abc.Messageable.send:3 ed69aa77f03b4955bbe3d5671c0e8088 of +msgid "Sends a message to the destination with the content given." +msgstr "" + +#: 33cd3f176f8f4a66aa1bb1de515d839a bb15699719b54825b8d487d07891ab85 +#: d514a06a45d546b5af908df5d43dc2cb discord.abc.Messageable.send:5 of +msgid "" +"The content must be a type that can convert to a string through " +"``str(content)``. If the content is set to ``None`` (the default), then " +"the ``embed`` parameter must be provided." +msgstr "" + +#: 70aab3326d8f44e7bacd069c736a0420 724dcfafc4784a6e9190169d5b4ff6fc +#: ac929a3b993642c4959eb60a184fa042 discord.abc.Messageable.send:9 of +msgid "" +"To upload a single file, the ``file`` parameter should be used with a " +"single :class:`~discord.File` object. To upload multiple files, the " +"``files`` parameter should be used with a :class:`list` of " +":class:`~discord.File` objects. **Specifying both parameters will lead to" +" an exception**." +msgstr "" + +#: 12384d2719ae45da97444ff82dc4f2d6 5d8119f4a9344fd8bb519aebe2645bff +#: 71fcdcc413ae47cb8f3aee3a55f10402 discord.abc.Messageable.send:14 of +msgid "" +"To upload a single embed, the ``embed`` parameter should be used with a " +"single :class:`~discord.Embed` object. To upload multiple embeds, the " +"``embeds`` parameter should be used with a :class:`list` of " +":class:`~discord.Embed` objects. **Specifying both parameters will lead " +"to an exception**." +msgstr "" + +#: 1f03d90af71148a9a80d108cb0925c4f 67ccce517035472ea66a0b51302a98cb +#: db5a50cea2b24ff4bca646659c4d8cc6 discord.abc.Messageable.send:20 +#: discord.channel.ForumChannel.create_thread:14 +#: discord.interactions.InteractionResponse.send_message:6 of +msgid "The content of the message to send." +msgstr "" + +#: 6af57bec404e422082a79e523a309932 9fce481c33fe4f38ae23dab3e4faf570 +#: af87dc0d04b748c4a8a24c800c8496bf discord.abc.Messageable.send:23 +#: discord.interactions.InteractionResponse.send_message:17 of +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: 270d2242a6ec45928378eb596ae18294 8ee729028d6946f9aa0cc6b36c0941c6 +#: 96484f4d35624bdd83b5e136d83bb9ad discord.abc.Messageable.send:26 +#: discord.channel.ForumChannel.create_thread:17 of +msgid "The rich embed for the content." +msgstr "" + +#: 06f3de9c7238498a8af9d93d7325365a 8cb56dd64e2c4c6199d7efaee33d3c2f +#: discord.abc.Messageable.send:29 +#: discord.channel.ForumChannel.create_thread:23 +#: discord.interactions.InteractionResponse.send_message:36 +#: e16b27219fda4529824444922c14f332 of +msgid "The file to upload." +msgstr "" + +#: 3a17a09c33884706a4449b3f40d6cdd6 71a4376c8faa43328c788c7021c3cf72 +#: 9b87132b9bb447f8af98bd5da3e604f8 discord.abc.Messageable.send:32 +#: discord.channel.ForumChannel.create_thread:26 +#: discord.interactions.InteractionResponse.send_message:39 of +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "" + +#: 55c2f9866dc74139b0feab43272e038d 88a081070fd044f1962c54e034ac21e6 +#: b70a45a4cce344acb40ad3072b10fb24 discord.abc.Messageable.send:35 +#: discord.channel.ForumChannel.create_thread:35 of +msgid "" +"The nonce to use for sending this message. If the message was " +"successfully sent, then the message will have a nonce with this value." +msgstr "" + +#: 0682ef24bd354948b962042a67084324 0f48f9d6b3e741e88aa2c3bc7d806b59 +#: 926fcea09e55478190f384b73306866a discord.abc.Messageable.send:39 of +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "" + +#: 33fb702867244946add0e91965debb6d ab8ae4adffea4ea1ad666e6619212c31 +#: d3f5fee321ed4c12b0d13ef20bc64ede discord.abc.Messageable.send:39 of +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "" + +#: 4e5d6a26919f4ecbbf31c7688e4a63ed 75b7f2ddb4c744648d05f3e322561b4c +#: a316e7fd64e540af960514409d0e2f77 discord.abc.Messageable.send:44 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message we just sent. If the deletion fails, then it is " +"silently ignored." +msgstr "" + +#: 14f1d3c69b914877a492f43e66ec40b1 1d43d14e53314fd98fb480f4c227d8c2 +#: 7837a952a01b4658b8eaca483bdf5339 a046f5017f4b49e8b01e1a6448f58d41 +#: discord.abc.Messageable.send:49 discord.message.Message.edit:46 of +msgid "" +"Controls the mentions being processed in this message. If this is passed," +" then the object is merged with :attr:`~discord.Client.allowed_mentions`." +" The merging behaviour only overrides attributes that have been " +"explicitly passed to the object, otherwise it uses the attributes set in " +":attr:`~discord.Client.allowed_mentions`. If no object is passed at all " +"then the defaults given by :attr:`~discord.Client.allowed_mentions` are " +"used instead. .. versionadded:: 1.4" +msgstr "" + +#: 1ff05d97ab3c410cbfab12ff72fc439a 76e68b02a3534b59bb633ccfab46cc5b +#: d8b69682b7294cac8417eaa4662fb1fb discord.abc.Messageable.send:49 +#: discord.channel.ForumChannel.create_thread:39 +#: discord.interactions.InteractionResponse.edit_message:40 +#: discord.message.Message.edit:46 f47f15229801436fa9101633e7c271e3 of +msgid "" +"Controls the mentions being processed in this message. If this is passed," +" then the object is merged with :attr:`~discord.Client.allowed_mentions`." +" The merging behaviour only overrides attributes that have been " +"explicitly passed to the object, otherwise it uses the attributes set in " +":attr:`~discord.Client.allowed_mentions`. If no object is passed at all " +"then the defaults given by :attr:`~discord.Client.allowed_mentions` are " +"used instead." +msgstr "" + +#: 12ae0cd2debd436ba454389a57dd9578 2aa113aa350843c58a84928aff36e57e +#: 4637e02b33794bb39d8bbf9635ea207f discord.abc.Messageable.send:59 of +msgid "" +"A reference to the :class:`~discord.Message` to which you are replying, " +"this can be created using :meth:`~discord.Message.to_reference` or passed" +" directly as a :class:`~discord.Message`. You can control whether this " +"mentions the author of the referenced message using the " +":attr:`~discord.AllowedMentions.replied_user` attribute of " +"``allowed_mentions`` or by setting ``mention_author``. .. versionadded::" +" 1.6" +msgstr "" + +#: 0da0de0227bd4c8b9819086cd5d59cf0 6e42ff8967e144e3ae89f80e28a26b06 +#: d16e5a003d5c4a35b2f276da520d2469 discord.abc.Messageable.send:59 of +msgid "" +"A reference to the :class:`~discord.Message` to which you are replying, " +"this can be created using :meth:`~discord.Message.to_reference` or passed" +" directly as a :class:`~discord.Message`. You can control whether this " +"mentions the author of the referenced message using the " +":attr:`~discord.AllowedMentions.replied_user` attribute of " +"``allowed_mentions`` or by setting ``mention_author``." +msgstr "" + +#: 27c40492605d46f4b6d1ec39f44617cb a203a5bbf16240e6b0b6018534cfb6cb +#: discord.abc.Messageable.send:68 fa82c635e540411192f7b2397d7c3910 of +msgid "" +"If set, overrides the :attr:`~discord.AllowedMentions.replied_user` " +"attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "" + +#: 5a1768e861e9461f8e873b9caaaafbe3 aaeebba9d9a64174b83aa7be6aae9540 +#: discord.abc.Messageable.send:68 f3fbe7c7e9574f468a6adc37e05b90a0 of +msgid "" +"If set, overrides the :attr:`~discord.AllowedMentions.replied_user` " +"attribute of ``allowed_mentions``." +msgstr "" + +#: 34faeb47cd6d48c5bbd1a5beafac4e49 bd4855af588b4e1988b99aac83ede6de +#: cf005a229e6e4514a0a1788d1edc0f3e discord.abc.Messageable.send:73 +#: discord.channel.ForumChannel.create_thread:47 of +msgid "A Discord UI View to add to the message." +msgstr "" + +#: 00099963c8a84315afd165852b85479e bcf7573f6fb444e38ceeeb4e08a9b320 +#: discord.abc.Messageable.send:76 ed29a8c13ec640fa92a87f37475ac04c of +msgid "" +"A list of embeds to upload. Must be a maximum of 10. .. versionadded:: " +"2.0" +msgstr "" + +#: 1fa752ebb98b48968581074edbd1b6e1 discord.abc.Messageable.send:76 +#: discord.channel.ForumChannel.create_thread:20 +#: f103ebfe04b44e86849a58ad2e1e0dfe f324a93551a240b98f56ccda5ac85d13 of +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "" + +#: 4fb386188eb34f18a71304f7add2e62b b1d45afa98b64e6fa0ac204136beeb14 +#: discord.abc.Messageable.send:81 fef9be1b0ddc4247beb8c8dbc4822665 of +msgid "" +"A list of stickers to upload. Must be a maximum of 3. .. versionadded:: " +"2.0" +msgstr "" + +#: 291f28b0846e48b18cf6bf41c291be37 50a1e07e506e41859f67cc406b77ce5b +#: discord.abc.Messageable.send:81 +#: discord.channel.ForumChannel.create_thread:29 +#: f0058a94c72e4c99a07b8ed475f56cd5 of +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "" + +#: 5fd776e27b6b4fd59ec695fbd41b251a a5e4c6e0b2894fd0a8ecc23a1c4d3b5a +#: discord.abc.Messageable.send:86 +#: discord.interactions.Interaction.edit_original_response:46 +#: discord.interactions.InteractionMessage.edit:40 +#: discord.interactions.InteractionResponse.edit_message:37 +#: e3b279330bc34955b55950c71551319c of +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: 1bfc49ed975b4dd6803c578b5a1b9a11 7b98f69bb68f41769f08d7f4087f8aca +#: 98f82715cfdd4551a4255c4314e32cf3 discord.abc.Messageable.send:89 of +msgid "" +"Whether to suppress push and desktop notifications for the message. .. " +"versionadded:: 2.4" +msgstr "" + +#: 1f656b33b85f44f1b8d7ef979f3fb091 6f0bd7ae71044d439a4aacd4001103f2 +#: c5df4f33c29747b78f070b6c57fe5c31 discord.abc.Messageable.send:89 of +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "" + +#: 172e6867a25d47b49adfa19666d2445a b141ceeb37ae4582a08741b71a2246bd +#: d552d88161fd406dbd970c7e913296af discord.abc.Messageable.send:94 +#: discord.interactions.InteractionResponse.send_message:42 of +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: 4d02fb8bd44244f4ab7c7a7edcc06076 d267e037031c49eb8e18cccf60f0c73f +#: discord.abc.Messageable.send:94 +#: discord.interactions.InteractionResponse.send_message:42 +#: e130dcbd42754c9f8dad4109bb0a107b of +msgid "The poll to send." +msgstr "" + +#: 3a4f436feb9b4de4a168d2d5a14fbb8d 4e9295f65811429bad49c668d0b4d63c +#: 529869019b26467eabd9b22c54f8a337 5ef39d889467448fa24ecf26ae56b3e5 +#: discord.abc.Messageable.send:99 discord.message.Message.reply:8 of +msgid "The message that was sent." +msgstr "" + +#: 27d01e18735f42969e57b866ee44ac34 4fd022a21beb4f86a7a42bb8fc34934c +#: 88c91e15b9a246d7ba6c0a0c4a8cd3ca discord.abc.Messageable.send:102 +#: discord.interactions.InteractionResponse.premium_required:11 +#: discord.interactions.InteractionResponse.send_message:50 +#: discord.message.Message.reply:11 e115079242b5446f93fb52a4a2929591 of +msgid "Sending the message failed." +msgstr "" + +#: 11607a716ca841198785219e0ca22b26 4505f54833d2487e9273977980d743f3 +#: 653f7d3602144d8e976bf3697fca85f6 ae8d9e25950748d7b741fcc4d782933b +#: discord.abc.Messageable.send:103 discord.message.Message.reply:12 of +msgid "You do not have the proper permissions to send the message." +msgstr "" + +#: 604cb5ce8f63403583ed85ead7908ba4 922ccd9a531a4fc2a1b337e4b5b65624 +#: cd2845f86cc544029fe38f244567082a discord.abc.Messageable.send:104 of +msgid "" +"The ``files`` list is not of the appropriate size, you specified both" +" ``file`` and ``files``, or you specified both ``embed`` and " +"``embeds``, or the ``reference`` object is not a " +":class:`~discord.Message`, :class:`~discord.MessageReference` or " +":class:`~discord.PartialMessage`." +msgstr "" + +#: 0256a90926ae4ba39c97264975e6f972 433a232ac737443cadd8e5f32c10aea4 +#: da262d70dc734e058487c9d9d7fb55da discord.abc.Messageable.trigger_typing:3 of +msgid "Triggers a *typing* indicator to the destination." +msgstr "" + +#: 10bacd45da084132bd3fef9ed8d250ca 7fa85cc40e9a4280a73c347dfd23b6c1 +#: 9e7da29277964bc586866aee221c4d5a discord.abc.Messageable.trigger_typing:5 of +msgid "" +"*Typing* indicator will go away after 10 seconds, or after a message is " +"sent." +msgstr "" + +#: 14645c52282b4897948d349951d1024a 27bc06838ac848c3b0fe0336815bbeac +#: 2ee40ebde871468f8f6de6897dac9c7d 3666c2339d0a49e19d24271c3bcba8bd +#: 38872441954a4937b4adbe036302e6e8 75890795eb3141649ba62f2337421e6d +#: 782f366e5ed847f6bf6c788c4f1925ff 86bbc2437e30463eba135081562d8883 +#: 93aac34c639a47d9b97c351311f4762b 9b0abd1a428341979fb585f00a3923ac +#: 9b4d5894f2f7434e8f7a6db8d32e038b 9ee6181f007c4587958af0e67b61b634 +#: a3c36d216f0b40c9a7c15665a87b7ddb ae96e1efcd9d40988c62cd01273b26ea +#: c79512090a914dba8ab3fa21fd75cc6e cc254c16841e4da597b2cb03121e72a8 +#: ce4e0e456b5b4d0cba2b85d163688001 d6e84ae4d1504d90b0e567c3f8d16ffa +#: d91143a7220f4b34bf74155cb8ae8be8 discord.abc.GuildChannel.delete:16 +#: discord.abc.GuildChannel.move:51 discord.abc.Messageable.trigger_typing:8 +#: discord.automod.AutoModRule.delete:12 discord.channel.GroupChannel.leave:10 +#: discord.channel.StageChannel.delete_messages:28 +#: discord.channel.VoiceChannel.delete_messages:28 +#: discord.channel.VoiceChannel.set_status:17 +#: discord.channel._TextChannel.delete_messages:28 +#: discord.emoji.Emoji.delete:15 discord.guild.Guild.ban:25 +#: discord.guild.Guild.chunk:16 discord.guild.Guild.create_integration:20 +#: discord.guild.Guild.delete:10 +#: discord.guild.Guild.delete_auto_moderation_rule:13 +#: discord.guild.Guild.delete_emoji:18 discord.guild.Guild.delete_sticker:20 +#: discord.guild.Guild.edit_widget:20 discord.guild.Guild.kick:20 +#: discord.guild.Guild.set_mfa_required:16 discord.guild.Guild.unban:20 +#: discord.integrations.Integration.delete:17 +#: discord.integrations.StreamIntegration.edit:22 +#: discord.integrations.StreamIntegration.sync:12 +#: discord.interactions.Interaction.delete_original_response:16 +#: discord.interactions.InteractionMessage.delete:14 +#: discord.interactions.InteractionResponse.defer:35 +#: discord.interactions.InteractionResponse.edit_message:52 +#: discord.interactions.InteractionResponse.pong:11 +#: discord.interactions.InteractionResponse.send_autocomplete_result:11 +#: discord.invite.Invite.set_scheduled_event:16 +#: discord.member.Member.add_roles:25 discord.member.Member.ban:9 +#: discord.member.Member.kick:7 discord.member.Member.move_to:21 +#: discord.member.Member.remove_roles:25 +#: discord.member.Member.remove_timeout:17 discord.member.Member.timeout:17 +#: discord.member.Member.timeout_for:19 discord.member.Member.unban:7 +#: discord.message.Message.add_reaction:20 +#: discord.message.Message.clear_reaction:20 +#: discord.message.Message.clear_reactions:11 discord.message.Message.delete:24 +#: discord.message.Message.pin:18 discord.message.Message.publish:14 +#: discord.message.Message.remove_reaction:25 discord.message.Message.unpin:18 +#: discord.monetization.Entitlement.consume:11 +#: discord.monetization.Entitlement.delete:10 +#: discord.reaction.Reaction.remove:19 discord.role.Role.delete:15 +#: discord.scheduled_events.ScheduledEvent.delete:9 +#: discord.stage_instance.StageInstance.delete:15 +#: discord.stage_instance.StageInstance.edit:22 +#: discord.sticker.GuildSticker.delete:15 +#: discord.threads.Thread.delete_messages:30 f0af5aeed9c64f9682895d74ab8d663f +#: of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 0d3a00bc83d3498495522af06e5f9829 507759ccb3074f54855e48e5f971d798 +#: 82ac5b60c6c54cc69673118552352f27 discord.abc.Messageable.typing:1 of +msgid "" +"Returns a context manager that allows you to type for an indefinite " +"period of time." +msgstr "" + +#: 8a9ffc24518f4de293cc4b65774a51d8 ae5e1f660cfe4a0b92ae7b946305dec5 +#: b115df81ecdf400cb4077a062bac2160 discord.abc.Messageable.typing:3 of +msgid "" +"This is useful for denoting long computations in your bot. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "" + +#: 9267e098f8054f019857c139f7175481 a59c82762ab04a37b73a0ad680efb1c5 +#: discord.abc.Messageable.typing:9 f38b5698c9964d15a7dd0e1ff97642fd of +msgid "" +"This is both a regular context manager and an async context manager. This" +" means that both ``with`` and ``async with`` work with this." +msgstr "" + +#: 5a69aa7fa8774768bebc130243d33f24 a9a905b97c2a48ebbf86176eaeee6469 +#: c30c993c97f54668907dcea50623c843 discord.abc.Messageable.typing:12 +#: discord.guild.Guild.bulk_ban:10 of +msgid "Example Usage: ::" +msgstr "" + +#: 715e396d169947279c18eb2f259bd903 9b14b15d4eb74f3f82993eca73ef83e5 +#: discord.channel.DMChannel.get_partial_message:1 +#: discord.channel.PartialMessageable.get_partial_message:1 +#: discord.channel.StageChannel.get_partial_message:1 +#: discord.channel.VoiceChannel.get_partial_message:1 +#: discord.channel._TextChannel.get_partial_message:1 +#: discord.threads.Thread.get_partial_message:1 of +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "" + +#: 67179488c7744e83bfcf423722415b13 823983a7d48b436491e7c7d6c382dd49 +#: discord.channel.DMChannel.get_partial_message:3 +#: discord.channel.PartialMessageable.get_partial_message:3 +#: discord.channel.StageChannel.get_partial_message:3 +#: discord.channel.VoiceChannel.get_partial_message:3 +#: discord.channel._TextChannel.get_partial_message:3 +#: discord.threads.Thread.get_partial_message:3 of +msgid "" +"This is useful if you want to work with a message and only have its ID " +"without doing an unnecessary API call." +msgstr "" + +#: 843df377ee7c4084b88787836abc669e 98efec157ebb473c808aae14f50e6d61 +#: discord.channel.DMChannel.get_partial_message:9 +#: discord.channel.PartialMessageable.get_partial_message:7 +#: discord.channel.StageChannel.get_partial_message:9 +#: discord.channel.VoiceChannel.get_partial_message:9 +#: discord.channel._TextChannel.get_partial_message:9 +#: discord.threads.Thread.get_partial_message:9 of +msgid "The message ID to create a partial message for." +msgstr "" + +#: 02f2a7118c294c018c9461a938ec529b 6f2827dab3174ceba9c167c94f8e8b01 +#: discord.channel.DMChannel.get_partial_message:12 +#: discord.channel.PartialMessageable.get_partial_message:10 +#: discord.channel.StageChannel.get_partial_message:12 +#: discord.channel.VoiceChannel.get_partial_message:12 +#: discord.channel._TextChannel.get_partial_message:12 +#: discord.threads.Thread.get_partial_message:12 of +msgid "The partial message." +msgstr "" + +#: 125d07572d5c4fa4bafff84e471385ed 5d6e1bf5a673406c9a939d94eda6212d +#: discord.channel.DMChannel.get_partial_message:13 +#: discord.channel.PartialMessageable.get_partial_message:11 +#: discord.channel.StageChannel.get_partial_message:13 +#: discord.channel.VoiceChannel.get_partial_message:13 +#: discord.channel._TextChannel.get_partial_message:13 +#: discord.threads.Thread.get_partial_message:13 of +msgid ":class:`PartialMessage`" +msgstr "" + +#: ../../api/models.rst:53 51c19b229c5b4c04bbac59e131da1dfb +msgid "Users" +msgstr "" + +#: 49763b094f654c97ac5092643e51ac66 discord.user.ClientUser:1 of +msgid "Represents your Discord user." +msgstr "" + +#: 8528f633c43f4dfba2b972dc62785542 bb87a910467b4f62bb1f394dd32e6575 +#: discord.user.ClientUser:7 discord.user.User:7 of +msgid "Checks if two users are equal." +msgstr "" + +#: 85c8883463c64892b2d113641e57cfc0 b8d07fcfe0c44217895443aebd19f908 +#: discord.user.ClientUser:11 discord.user.User:11 of +msgid "Checks if two users are not equal." +msgstr "" + +#: 50bf005b5c574b58839952b19464b208 d143943b4ab946ab950eb1f7171cd587 +#: discord.user.ClientUser:15 discord.user.User:15 of +msgid "Return the user's hash." +msgstr "" + +#: 1add853063144abda929fa08b980265c 28a3ceb054d74237b1ad21a28be2a934 +#: discord.user.ClientUser:19 discord.user.User:19 of +msgid "Returns the user's name with discriminator or global_name." +msgstr "" + +#: 094c51e2dd284606a8ffe35e059f9d9e df577759b9bb40b891e952c0fc8d7856 +#: discord.user.ClientUser:23 discord.user.User:23 of +msgid "The user's username." +msgstr "" + +#: 23e632a55bcf4949b35edf2b13661d83 34f8a3e93d424eff88254983dd3736a7 +#: 3a3a7e1226884523b0ba2364ba0ceaf7 3f94ada44c5a4e4f96a478f2eba12ba9 +#: 67c2d7ad9e4f432590e0941a54d9e9be 6ab9e38fee2f4f6cb94faa9a8b05a91c +#: 829531878901473f909b329033e932a3 8cdd313032d24f41a003933efa33756e +#: 9301fc895bdf4d5781a1ffa99a0ed169 956a1abeaf574fbfba3816ea1bfa1d1b +#: b181e837ebe24f42aed74532d371c2d6 cd70408c99084152b7be0bcf7f009b7e +#: d0d100cfdca84ec6bd94d1435523e5fb d8bb4e332f9e4288aa8952e99c0043df +#: discord.SKU.url:3 discord.automod.AutoModActionMetadata:27 +#: discord.automod.AutoModRule:33 discord.channel.CategoryChannel:27 +#: discord.channel.ForumChannel:25 discord.channel.StageChannel:27 +#: discord.channel.TextChannel:25 discord.channel.VoiceChannel:25 +#: discord.emoji.Emoji:33 discord.guild.Guild:27 +#: discord.integrations.BotIntegration:15 +#: discord.integrations.BotIntegration:27 discord.integrations.Integration:15 +#: discord.integrations.Integration:27 +#: discord.integrations.IntegrationAccount:9 +#: discord.integrations.IntegrationAccount:15 +#: discord.integrations.IntegrationApplication:15 +#: discord.integrations.IntegrationApplication:27 +#: discord.integrations.IntegrationApplication:33 +#: discord.integrations.StreamIntegration:15 +#: discord.integrations.StreamIntegration:27 +#: discord.interactions.Interaction:61 discord.interactions.Interaction:73 +#: discord.interactions.Interaction:79 +#: discord.interactions.MessageInteraction:31 discord.invite.Invite:59 +#: discord.invite.PartialInviteChannel:28 discord.invite.PartialInviteGuild:28 +#: discord.message.Attachment:52 discord.message.Attachment:68 +#: discord.message.Attachment:76 discord.message.Attachment:130 +#: discord.message.Message:43 discord.monetization.SKU:27 +#: discord.monetization.SKU:33 discord.onboarding.OnboardingPrompt:21 +#: discord.onboarding.PromptOption:33 +#: discord.raw_models.AutoModActionExecutionEvent:92 +#: discord.raw_models.AutoModActionExecutionEvent:98 +#: discord.raw_models.AutoModActionExecutionEvent:104 +#: discord.raw_models.RawReactionActionEvent:50 +#: discord.raw_models.RawScheduledEventSubscription:29 discord.role.Role:47 +#: discord.scheduled_events.ScheduledEvent:33 +#: discord.stage_instance.StageInstance:41 discord.sticker.GuildSticker:23 +#: discord.sticker.GuildSticker:35 discord.sticker.GuildSticker:66 +#: discord.sticker.StandardSticker:23 discord.sticker.StandardSticker:35 +#: discord.sticker.Sticker:23 discord.sticker.Sticker:35 +#: discord.sticker.Sticker:53 discord.sticker.StickerItem:23 +#: discord.sticker.StickerItem:41 discord.sticker.StickerPack:23 +#: discord.sticker.StickerPack:29 discord.template.Template:9 +#: discord.template.Template:21 discord.template.Template:27 +#: discord.threads.Thread:27 discord.user.ClientUser:25 +#: discord.user.ClientUser:41 discord.user.ClientUser:49 discord.user.User:25 +#: discord.user.User:41 discord.user.User:49 +#: discord.webhook.async_.PartialWebhookChannel:17 +#: discord.webhook.async_.PartialWebhookGuild:17 +#: discord.welcome_screen.WelcomeScreen:9 +#: discord.welcome_screen.WelcomeScreenChannel:15 discord.widget.Widget:27 +#: discord.widget.WidgetChannel:31 discord.widget.WidgetMember:31 +#: discord.widget.WidgetMember:37 e3867aa2a5734ede9dfd2b008ef82ff6 +#: f4cb9643a4f54f8986a504914866acdd of +msgid ":class:`str`" +msgstr "" + +#: 7d59402a16e54f61a97fdc966dfa756c db789a3e10764d59b4328ce02560ff1f +#: discord.user.ClientUser:29 discord.user.User:29 of +msgid "The user's unique ID." +msgstr "" + +#: 095164b434774a8bad94f6e92b646e03 4fe49248ca6a4cf19931a37f31753734 +#: discord.user.ClientUser:35 discord.user.User:35 of +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "" + +#: 5e07121932524ee29d2d94f465d1c951 discord.user.ClientUser:39 of +msgid "" +"If the user has migrated to the new username system, this will always be " +"0." +msgstr "" + +#: ced530d2472048d0a529cf1cf1c91d86 discord.user.ClientUser:45 +#: discord.user.User:45 f5d700742ed5457cbd1652439db6a54f of +msgid "The user's global name." +msgstr "" + +#: 6f1c81c727e7490db10e1647ddc6868b 855b4c1de89b43c29aea9b3c7d9b52cd +#: discord.user.ClientUser:53 discord.user.User:53 of +msgid "Specifies if the user is a bot account." +msgstr "" + +#: ca90bc81cd8c464bb9df1041c691bbba discord.user.ClientUser:59 +#: discord.user.User:59 e5ec8e04dabb4b16903f766258769106 of +msgid "" +"Specifies if the user is a system user (i.e. represents Discord " +"officially)." +msgstr "" + +#: d090cfb32c5c430eb430718db10c5c78 discord.user.ClientUser:67 of +msgid "Specifies if the user's email is verified." +msgstr "" + +#: 4b08f5755ce949d2a448e13b2eef2ad6 discord.user.ClientUser:73 of +msgid "The IETF language tag used to identify the language the user is using." +msgstr "" + +#: ../../api/models.rst:140 304736d9c87440b1b4d8f573adc7def8 +#: 7a2d9ca6781d4f33b2f9fa33a78e4bcc 7c77b2ea3750497e96dc19203a13f276 +#: 9c465eb7704a47f9811d7160f3bd5935 cb5ae2be4f6d4d089f1885ce659a538d +#: cdc5ce07494d46818ca2ced81397e2b3 dc1d35b84de04aa694c7b09e76c9f5ab +#: discord.channel.ForumChannel:53 discord.channel.GroupChannel:57 +#: discord.channel.StageChannel:45 discord.channel.TextChannel:49 +#: discord.channel.VoiceChannel:106 discord.components.Button:23 +#: discord.components.Button:29 discord.components.Button:41 +#: discord.components.SelectMenu:28 discord.components.SelectMenu:34 +#: discord.guild.Guild:111 discord.guild.Guild:173 +#: discord.integrations.IntegrationApplication:21 +#: discord.interactions.Interaction:85 discord.invite.PartialInviteGuild:52 +#: discord.member.Member:54 discord.message.Attachment:61 +#: discord.message.Attachment:82 discord.message.Attachment:98 +#: discord.message.Attachment:114 discord.onboarding.PromptOption:39 +#: discord.partial_emoji.PartialEmoji:32 +#: discord.raw_models.RawAuditLogEntryEvent:39 +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent:21 discord.role.Role:102 +#: discord.scheduled_events.ScheduledEvent:39 discord.user.ClientUser:75 +#: discord.widget.WidgetMember:55 discord.widget.WidgetMember:61 +#: f2fec74b5ab74ff4b1cab4cf1a188256 of +msgid "Optional[:class:`str`]" +msgstr "" + +#: 77e76f500b0d41cab105a37f20f3ad74 discord.user.ClientUser:79 of +msgid "Specifies if the user has MFA turned on and working." +msgstr "" + +#: d9f3769ee435454a9f5f69bb052d6fbd discord.user.ClientUser.edit:3 of +msgid "Edits the current profile of the client." +msgstr "" + +#: ddef82e80a74417389ee7da8cc6ecbce discord.user.ClientUser.edit:7 of +msgid "" +"To upload an avatar or banner, a :term:`py:bytes-like object` must be " +"passed in that represents the image being uploaded. If this is done " +"through a file then the file must be opened via ``open('some_filename', " +"'rb')`` and the :term:`py:bytes-like object` is given through the use of " +"``fp.read()``." +msgstr "" + +#: c719af29fc1e42aa876207e09613e455 discord.user.ClientUser.edit:12 of +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "" + +#: 9591acd6156c42438b25b366eedcc43e discord.user.ClientUser.edit:14 of +msgid "" +"The edit is no longer in-place, instead the newly edited client user is " +"returned." +msgstr "" + +#: bbb407029cbc40d4b9f36f85d7bdaf19 discord.user.ClientUser.edit:17 of +msgid "The ``banner`` keyword-only parameter was added." +msgstr "" + +#: c7d106c643294f50b5844f3da87467c9 discord.user.ClientUser.edit:21 of +msgid "The new username you wish to change to." +msgstr "" + +#: 240db79737fc41138acf16a14ec978c4 discord.user.ClientUser.edit:24 of +msgid "" +"A :term:`py:bytes-like object` representing the image to upload. Could be" +" ``None`` to denote no avatar." +msgstr "" + +#: 08557913597c469eab9f36eb51a20a93 discord.user.ClientUser.edit:28 of +msgid "" +"A :term:`py:bytes-like object` representing the image to upload. Could be" +" ``None`` to denote no banner." +msgstr "" + +#: c8469d63da8744f4a0201e9a1728a8b7 discord.user.ClientUser.edit:32 of +msgid "The newly edited client user." +msgstr "" + +#: 135fd10138e84d4ba3551678d985b183 41d7eb227e4843b2b4b56128122141ed +#: discord.channel.DMChannel:33 discord.channel.GroupChannel:31 +#: discord.user.ClientUser.edit:33 of +msgid ":class:`ClientUser`" +msgstr "" + +#: 18775769dafe4f45b7630eb7d3663fc3 discord.user.ClientUser.edit:35 of +msgid "Editing your profile failed." +msgstr "" + +#: d41a31f1b0584f0cb7cb79920089dc07 discord.user.ClientUser.edit:36 of +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "" + +#: 5d42054d5da84f4fbd5c7a1c1f650136 6a0f951102c042f1967a6cc3fb063826 +#: 6ab96fcf4f29436e858954fbce53796b discord.ClientUser.accent_color:1 +#: discord.User.accent_color:1 discord.WidgetMember.accent_color:1 of +msgid "Returns the user's accent color, if applicable." +msgstr "" + +#: 1938cce6bef44a45a48d698878cba477 98620bb2a1034ce2a564fe642e2417c6 +#: dbfa0f2b4d2542e2855ee6b9d62771be discord.ClientUser.accent_color:3 +#: discord.User.accent_color:3 discord.WidgetMember.accent_color:3 of +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "" + +#: 4ee137d17b6a442dac436b0e7e6e7913 5b13b7de5a524b0aaf9cc1784c3e14eb +#: 6e1597cc41fb43719f34c784e37f64e7 80debc8bc8b242619b4535eff3c20814 +#: 877cf2f74fcf407a8e16e91d17876d07 c08cdcb663f141e5b59ef6b7054e737d +#: discord.ClientUser.accent_color:9 discord.ClientUser.accent_colour:9 +#: discord.ClientUser.banner:6 discord.User.accent_color:9 +#: discord.User.accent_colour:9 discord.User.banner:6 +#: discord.WidgetMember.accent_color:9 discord.WidgetMember.accent_colour:9 +#: discord.WidgetMember.banner:6 e0bc6b1e888d4fa680977bfd269d8d8a of +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "" + +#: 89e0f07e8f4b42c18a916c2fee3a14a4 c59947f63fe941bf84cf9f07cdfe2593 +#: discord.ClientUser.accent_colour:1 discord.User.accent_colour:1 +#: discord.WidgetMember.accent_colour:1 fc1973771c3e423ab34b16ab10b22619 of +msgid "Returns the user's accent colour, if applicable." +msgstr "" + +#: 04e4c72d96d64ecd921c375be4339ac8 6b7360e798ae481c9c1808160c5bb033 +#: a090b4fb330747bd92cc59742138225c discord.ClientUser.accent_colour:3 +#: discord.User.accent_colour:3 discord.WidgetMember.accent_colour:3 of +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "" + +#: 501c4f6cbdbf42769fff2a35d112d118 80ce4b40e1d34abdace629cb7a571a4d +#: discord.ClientUser.avatar:1 discord.User.avatar:1 of +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "" + +#: 10382ad8465644e3bc34b20641256a9c a26030435155406dac323efb28927fe9 +#: discord.ClientUser.avatar:3 discord.User.avatar:3 of +msgid "" +"If the user does not have a traditional avatar, ``None`` is returned. If " +"you want the avatar that a user has displayed, consider " +":attr:`display_avatar`." +msgstr "" + +#: 4e65e66d65cf422f984e2dc18da32a72 af7c151a269941859b5eb927d1052e49 +#: c03fc269038746299c68c4ff20bdcb43 discord.ClientUser.avatar_decoration:1 +#: discord.User.avatar_decoration:1 discord.WidgetMember.avatar_decoration:1 of +msgid "Returns the user's avatar decoration, if available." +msgstr "" + +#: 55fa34cde7fb4b2c86ad88d8033f125e 9c4d8e995e424d76994802eb84438e29 +#: be1ed8a944cf42bebfcd8d4c6878cdcb discord.ClientUser.banner:1 +#: discord.User.banner:1 discord.WidgetMember.banner:1 of +msgid "Returns the user's banner asset, if available." +msgstr "" + +#: 0d50a75dd5aa40f4a61fc98fd5b2e577 10d4742b9b8f4d08b8afb6128d733ad0 +#: ca3f1b9b592542c08357b2c0269e41dc discord.ClientUser.color:1 +#: discord.User.color:1 discord.WidgetMember.color:1 of +msgid "" +"A property that returns a color denoting the rendered color for the user." +" This always returns :meth:`Colour.default`." +msgstr "" + +#: 4a11e8cca87344baa2a0b654de88fa39 624b0e883b1d48839b0128ffaafa47e8 +#: d5b77dfdb6414af4bd41ae7661eca6e5 discord.ClientUser.color:4 +#: discord.Member.color:5 discord.User.color:4 discord.WidgetMember.color:4 of +msgid "There is an alias for this named :attr:`colour`." +msgstr "" + +#: 2cf635b79df3473c90ac23f164a0427c 9cec23c320d8469ea36f43da369ed102 +#: discord.ClientUser.colour:1 discord.User.colour:1 +#: discord.WidgetMember.colour:1 e69af87a44364eaf9b5b69d3f66864c7 of +msgid "" +"A property that returns a colour denoting the rendered colour for the " +"user. This always returns :meth:`Colour.default`." +msgstr "" + +#: 2d5f274e11504b99938c8ba60c312acb 4e371cae01aa4766ab17cff8f76e1efe +#: discord.ClientUser.colour:4 discord.Member.colour:5 discord.User.colour:4 +#: discord.WidgetMember.colour:4 e2124f67ec9f4267908985a925d278ed of +msgid "There is an alias for this named :attr:`color`." +msgstr "" + +#: 242c9dfc04694b489e2f7d80df59ded7 437b006882224342968fb4c368487fe6 +#: b36550ba16734b24b4466af739ed85aa discord.ClientUser.created_at:1 +#: discord.User.created_at:1 discord.WidgetMember.created_at:1 of +msgid "Returns the user's creation time in UTC." +msgstr "" + +#: 50f3e4ffe5384958b891922303c4be12 8221e054b3a6494e9dcbb094d3c44517 +#: c13d536b60be48f5b31de078b4b756b6 discord.ClientUser.created_at:3 +#: discord.User.created_at:3 discord.WidgetMember.created_at:3 of +msgid "This is when the user's Discord account was created." +msgstr "" + +#: 038c62b751b84784986d6e29a5dc57c1 224eea430fc345f5baaceb1fd1705c4a +#: d4d393857fb64b7e914cd07558fd6602 discord.ClientUser.default_avatar:1 +#: discord.User.default_avatar:1 discord.WidgetMember.default_avatar:1 of +msgid "" +"Returns the default avatar for a given user. This is calculated by the " +"user's ID if they're on the new username system, otherwise their " +"discriminator." +msgstr "" + +#: 3c9e57b8c879411eb7b0a5bce8837eaa 613adc4ebb9d487bb1c10b1b831c265a +#: 91a80ca04f9845d782a0aec709e6342d discord.ClientUser.display_avatar:1 +#: discord.User.display_avatar:1 discord.WidgetMember.display_avatar:1 of +msgid "Returns the user's display avatar." +msgstr "" + +#: b73981c9e34846df86edd23a8b06acba d2b170adae3f48cfaca8949892f73fc4 +#: discord.ClientUser.display_avatar:3 discord.User.display_avatar:3 +#: discord.WidgetMember.display_avatar:3 fb3482d25d174a26b778b9faf87546c8 of +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "" + +#: 590fc14655784aab8f2ee70767655abb b7f12013710249f19b27a29d414d549f +#: discord.ClientUser.display_name:1 discord.User.display_name:1 of +msgid "" +"Returns the user's display name. This will be their global name if set, " +"otherwise their username." +msgstr "" + +#: 75913c2943e244da9f912797c9315548 83b3d21571f541efa5c11b1df2216c78 +#: 98d46180481045ac91439bb582984225 discord.ClientUser.is_migrated:1 +#: discord.User.is_migrated:1 discord.WidgetMember.is_migrated:1 of +msgid "Checks whether the user is already migrated to global name." +msgstr "" + +#: 71803c743ab04f6487bcc7cd7592ab5c a6aab4a6f73b4a558e5a99f75d9d6f09 +#: discord.ClientUser.jump_url:1 discord.User.jump_url:1 +#: discord.WidgetMember.jump_url:1 ed344f416d38414faf37aa0952f5119b of +msgid "Returns a URL that allows the client to jump to the user." +msgstr "" + +#: 2e4ec00b99904f72a3847aca88c7a818 7000b4f254244a50968882f86aa22812 +#: 952afd71f7ee40ee923e5d57e9666246 discord.ClientUser.mention:1 +#: discord.User.mention:1 discord.WidgetMember.mention:1 of +msgid "Returns a string that allows you to mention the given user." +msgstr "" + +#: 54594e8767054e72946033269b0c3592 93d3ff64137447f39e0019c80c4df9d2 +#: discord.user.BaseUser.mentioned_in:1 fd752e6addca4ab6b4f098137fa9ce29 of +msgid "Checks if the user is mentioned in the specified message." +msgstr "" + +#: aeae96f3b68e4982bf78bbc2036c04e5 d7be525e0b7b494d9f5b256e3f118474 +#: discord.member.Member.mentioned_in:4 discord.user.BaseUser.mentioned_in:4 +#: f59645c800104853b49db0b8b46edcbf of +msgid "The message to check if you're mentioned in." +msgstr "" + +#: 1cf28790dcb441a19baba9858f83391c 8f7489e0344546199a8c5c066f41a5c2 +#: bc66413bce7f498bac19576ed4b6fbd0 discord.user.BaseUser.mentioned_in:7 of +msgid "Indicates if the user is mentioned in the message." +msgstr "" + +#: 921c002b550040f8b20f075deecaa7e6 93632cb243b348e9956831b21bdc22a9 +#: discord.ClientUser.public_flags:1 discord.User.public_flags:1 +#: discord.WidgetMember.public_flags:1 ea58197e31bb4b41884a157342d514cc of +msgid "The publicly available flags the user has." +msgstr "" + +#: a5bbb9c41ded42adbbedac8adcab5236 discord.user.User:1 of +msgid "Represents a Discord user." +msgstr "" + +#: 2f6617dc2aed416ca5dc1c8d8df0170e discord.user.User:39 of +msgid "" +"If the user has migrated to the new username system, this will always be " +"\"0\"." +msgstr "" + +#: dd9cd5d45b7a4f7d81de8e1843f28922 discord.User.dm_channel:1 of +msgid "Returns the channel associated with this user if it exists." +msgstr "" + +#: 7fae4ce246b54d1b92ebaf328f8b65cf discord.User.dm_channel:3 of +msgid "" +"If this returns ``None``, you can create a DM channel by calling the " +":meth:`create_dm` coroutine function." +msgstr "" + +#: b383cc9fafc743aab9219b21184e78ed discord.User.mutual_guilds:1 of +msgid "The guilds that the user shares with the client." +msgstr "" + +#: discord.User.mutual_guilds:5 e41db11d00364968bc3168d7ac4c4a02 of +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "" + +#: 463038c5ef3f43cd807215436ae90bd7 5d3cf60bddbc4c6fad29b9c300b60469 +#: discord.member.flatten_user..generate_function..general:3 +#: discord.user.User.create_dm:3 of +msgid "Creates a :class:`DMChannel` with this user." +msgstr "" + +#: 7eb7c88b11764472a09211f3e8271341 +#: discord.member.flatten_user..generate_function..general:5 +#: discord.user.User.create_dm:5 e099032e034b487db2a951a186656094 of +msgid "" +"This should be rarely called, as this is done transparently for most " +"people." +msgstr "" + +#: 34c3db924cfe4afba20d42849d8a1d7b 7f0c8d792b204d7eb76a4f9cdbbc9b4a +#: discord.channel.CategoryChannel.clone:19 +#: discord.channel.StageChannel.clone:19 discord.channel.VoiceChannel.clone:19 +#: discord.channel._TextChannel.clone:19 +#: discord.member.flatten_user..generate_function..general:8 +#: discord.user.User.create_dm:8 of +msgid "The channel that was created." +msgstr "" + +#: 827186088d1d4f689ad318127cf593a4 b6cefe350c984fc3b0fdd3b0b59ea5e6 +#: discord.member.flatten_user..generate_function..general:9 +#: discord.user.User.create_dm:9 of +msgid ":class:`.DMChannel`" +msgstr "" + +#: 6f3a14dd55e94eff97233f7cdb9ddded ad1e53c4d8a74c90aea9eac9056fa9a8 +#: discord.member.flatten_user..generate_function..general:3 +#: discord.user.User.create_test_entitlement:3 of +msgid "Creates a test entitlement for the user." +msgstr "" + +#: 2812004ba59d451cacbb47175f8796f9 52b7f3d178ba45879ca736db726309ac +#: discord.guild.Guild.create_test_entitlement:6 +#: discord.member.flatten_user..generate_function..general:6 +#: discord.user.User.create_test_entitlement:6 of +msgid "The SKU to create a test entitlement for." +msgstr "" + +#: 31ce2a2adcdb4fc0adc3e688aed0d2b0 688251e620db45399e35182ab313f053 +#: discord.guild.Guild.create_test_entitlement:9 +#: discord.member.flatten_user..generate_function..general:9 +#: discord.user.User.create_test_entitlement:9 of +msgid "The created entitlement." +msgstr "" + +#: 6473a06d5de84d299e4903e3cb389bac +#: discord.guild.Guild.create_test_entitlement:10 +#: discord.member.flatten_user..generate_function..general:10 +#: discord.user.User.create_test_entitlement:10 +#: ed4f4ebe3d314273a8db0f388ad10891 of +msgid ":class:`Entitlement`" +msgstr "" + +#: 024d66d0841244cab9d49a97deb4c5e5 ae059b12f7be4225823a1ebe75b9caa2 +#: discord.member.flatten_user..generate_function..general:1 +#: discord.user.User.entitlements:1 of +msgid "" +"Returns an :class:`.AsyncIterator` that enables fetching the user's " +"entitlements." +msgstr "" + +#: 73ee380e8eaa49b1985d9e76d0ce3011 +#: discord.member.flatten_user..generate_function..general:3 +#: discord.user.User.entitlements:3 e10285f0eb4f48e8b6564c9263859412 of +msgid "" +"This is identical to :meth:`Client.entitlements` with the ``user`` " +"parameter." +msgstr "" + +#: 191945eb971249b586dd09f0a363f167 8a837858c9c74dd78408d01365b40b96 +#: discord.guild.Guild.entitlements:8 +#: discord.member.flatten_user..generate_function..general:8 +#: discord.user.User.entitlements:8 of +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "" + +#: 19c5cfcf169d466a949ae4cad69dd539 6aa172e940f144f98ef4d69e388b7e00 +#: discord.guild.Guild.entitlements:11 +#: discord.member.flatten_user..generate_function..general:11 +#: discord.user.User.entitlements:11 of +msgid "" +"Retrieves guilds before this date or object. If a datetime is provided, " +"it is recommended to use a UTC-aware datetime. If the datetime is naive, " +"it is assumed to be local time." +msgstr "" + +#: 3be018fd0820429f800ddf00c58423ea 960251d52e934e4c92c9bd0a0aa77ea8 +#: discord.guild.Guild.entitlements:16 +#: discord.member.flatten_user..generate_function..general:16 +#: discord.user.User.entitlements:16 of +msgid "" +"Retrieve guilds after this date or object. If a datetime is provided, it " +"is recommended to use a UTC-aware datetime. If the datetime is naive, it " +"is assumed to be local time." +msgstr "" + +#: 2f95d22d8cda40e587765c256f57bfe6 ccc5662bbccc488a8bd98f228735b700 +#: discord.guild.Guild.entitlements:21 +#: discord.member.flatten_user..generate_function..general:21 +#: discord.user.User.entitlements:21 of +msgid "" +"The number of entitlements to retrieve. If ``None``, retrieves every " +"entitlement, which may be slow. Defaults to ``100``." +msgstr "" + +#: 45683405846449d59048c3085f095887 cb8af2a165a445fa87148c0efa867904 +#: discord.guild.Guild.entitlements:26 +#: discord.member.flatten_user..generate_function..general:26 +#: discord.user.User.entitlements:26 of +msgid "" +"Whether to limit the fetched entitlements to those that have not ended. " +"Defaults to ``False``." +msgstr "" + +#: 2fcb0d10765c4c01b53a633d1e7749f0 c089af58b0c7402cb4dee2dcb39632a4 +#: discord.guild.Guild.entitlements:30 +#: discord.member.flatten_user..generate_function..general:30 +#: discord.user.User.entitlements:30 of +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr "" + +#: 4477dcd6cf974b189ffa8308bef5b349 7a9d13bf49744fff9c9bf9f66c88f6bc +#: dfae8467fd154ea5b8777569e61e764e discord.guild.Guild.entitlements:32 +#: discord.member.flatten_user..generate_function..general:32 +#: discord.user.User.entitlements:32 of +msgid "Retrieving the entitlements failed." +msgstr "" + +#: 87e7437ba3dd4295bcf7317cc8932738 add5fc2b3b474b48963f5e2d57af8ad3 +#: discord.guild.Guild.entitlements:34 discord.user.User.entitlements:34 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr "" + +#: ../../api/models.rst:75 e2f6fc6b14cf443e9ffd5ee366ab35b0 +msgid "Messages" +msgstr "" + +#: 610ab4299cf34098b4fc7626fa9f4515 discord.message.Attachment:1 of +msgid "Represents an attachment from Discord." +msgstr "" + +#: 36cbed8c5d6c44508ac29609b3fb8a2e discord.message.Attachment:7 of +msgid "Returns the URL of the attachment." +msgstr "" + +#: discord.message.Attachment:11 eb4d45edb6984c1aae6adf406962d755 of +msgid "Checks if the attachment is equal to another attachment." +msgstr "" + +#: c719b7728d734c2d872dd919ae331934 discord.message.Attachment:15 of +msgid "Checks if the attachment is not equal to another attachment." +msgstr "" + +#: 54133d6dd993488ba10e3caf08a4c2fc discord.message.Attachment:19 of +msgid "Returns the hash of the attachment." +msgstr "" + +#: 0c575e35aef5425b94a0dff90e2e0231 discord.message.Attachment:21 of +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "" + +#: 8c174bbfd44147ecb1d712933fa3aa4e discord.message.Attachment:26 of +msgid "The attachment ID." +msgstr "" + +#: cad88e03745e4898b486276d5648803c discord.message.Attachment:32 of +msgid "The attachment size in bytes." +msgstr "" + +#: a2938bf7c9b44e4e9bca2663a729afaf discord.message.Attachment:38 of +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "" + +#: 16aa462320ca4ecfbe0d2390f73def67 310192c648264bc086b55a67115104f5 +#: 32bfaad9dc0e42aba5a769f9c2139168 4eda47990854400088b81bf7ad06b60b +#: 62e39fcf170c47679b6cd7bf3c126f84 861419498d894bd392b618fafce8f153 +#: 8a0504dbcaec4f5ca2890730091a5b6a a53dd3b06e6747ce830d157361089b45 +#: cc7340cf856c432a8a37d01487f45c4c discord.Thread.category_id:4 +#: discord.channel.CategoryChannel:46 discord.channel.ForumChannel:43 +#: discord.channel.ForumChannel:60 discord.channel.ForumChannel:67 +#: discord.channel.ForumChannel:126 discord.channel.StageChannel:51 +#: discord.channel.StageChannel:58 discord.channel.StageChannel:100 +#: discord.channel.TextChannel:43 discord.channel.TextChannel:56 +#: discord.channel.TextChannel:63 discord.channel.TextChannel:106 +#: discord.channel.VoiceChannel:43 discord.channel.VoiceChannel:50 +#: discord.channel.VoiceChannel:87 discord.components.Button:53 +#: discord.guild.Guild:87 discord.guild.Guild:97 discord.guild.Guild:105 +#: discord.guild.Guild:190 discord.guild.Guild:201 +#: discord.guild.Guild.prune_members:42 discord.interactions.Interaction:24 +#: discord.interactions.Interaction:36 +#: discord.interactions.InteractionMetadata:35 +#: discord.interactions.InteractionMetadata:42 discord.invite.Invite:109 +#: discord.invite.Invite:116 discord.message.Attachment:40 +#: discord.message.Attachment:46 discord.message.Message:126 +#: discord.partial_emoji.PartialEmoji:44 +#: discord.raw_models.AutoModActionExecutionEvent:53 +#: discord.raw_models.AutoModActionExecutionEvent:66 +#: discord.raw_models.AutoModActionExecutionEvent:79 +#: discord.raw_models.RawAuditLogEntryEvent:27 +#: discord.raw_models.RawAuditLogEntryEvent:33 +#: discord.raw_models.RawBulkMessageDeleteEvent:19 +#: discord.raw_models.RawIntegrationDeleteEvent:15 +#: discord.raw_models.RawMessageDeleteEvent:13 +#: discord.raw_models.RawMessageUpdateEvent:23 +#: discord.raw_models.RawReactionActionEvent:26 +#: discord.raw_models.RawReactionClearEmojiEvent:21 +#: discord.raw_models.RawReactionClearEvent:19 +#: discord.raw_models.RawTypingEvent:27 discord.role.RoleTags:15 +#: discord.role.RoleTags:21 discord.scheduled_events.ScheduledEvent:70 +#: discord.scheduled_events.ScheduledEvent:78 discord.threads.Thread:61 +#: f50b8fb8640844a6933c62864952effb f55fe32c1fb5446182de1835f38e3e5f of +msgid "Optional[:class:`int`]" +msgstr "" + +#: 5ef4f4ec93704176ab793181a849f05f discord.message.Attachment:44 of +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "" + +#: 1578fbf5297d4be08834fd1ee5ef1fe5 discord.message.Attachment:50 of +msgid "The attachment's filename." +msgstr "" + +#: 958d5b5f3b08410aa5055b2450fc39f1 discord.message.Attachment:56 of +msgid "" +"The attachment's title. This is equal to the original :attr:`filename` " +"(without an extension) if special characters were filtered from it." +msgstr "" + +#: discord.message.Attachment:65 ee16dbcd50b74902b088cad9dcd1cccf of +msgid "" +"The attachment URL. If the message this attachment was attached to is " +"deleted, then this will 404." +msgstr "" + +#: 992e18f11a9c4994b41a6e9c411d60de discord.message.Attachment:72 of +msgid "" +"The proxy URL. This is a cached version of the :attr:`~Attachment.url` in" +" the case of images. When the message is deleted, this URL might be valid" +" for a few minutes or not valid at all." +msgstr "" + +#: 3afcc47a746b41ef962d8970c735e85c discord.message.Attachment:80 of +msgid "The attachment's `media type `_." +msgstr "" + +#: 1bc86b04dd0e4e3ab62f5abb1fa5a191 discord.message.Attachment:86 of +msgid "Whether the attachment is ephemeral or not." +msgstr "" + +#: 3f39cbfb9d7b4acdbbbbb44af1a4a044 discord.message.Attachment:94 of +msgid "The attachment's description." +msgstr "" + +#: 41a146e92e5c4b14b97610c414598c5f discord.message.Attachment:102 of +msgid "The duration of the audio file (currently for voice messages)." +msgstr "" + +#: 5e36ab69e24a4e9281fef9f23b4e9417 discord.message.Attachment:106 of +msgid "Optional[:class:`float`]" +msgstr "" + +#: discord.message.Attachment:110 eff44c3749674e1fbbf4b67f51584aa1 of +msgid "" +"The base64 encoded bytearray representing a sampled waveform (currently " +"for voice messages)." +msgstr "" + +#: 8d72571d6ca849d6a35b59f075db944f discord.message.Attachment:118 of +msgid "Extra attributes of the attachment." +msgstr "" + +#: ab0f888b90cd441e98e12a4233f6a5ca discord.message.Attachment:122 of +msgid ":class:`AttachmentFlags`" +msgstr "" + +#: discord.message.Attachment:126 eb66ce493d6144a692880c2d020256d8 of +msgid "The unique signature of this attachment's instance." +msgstr "" + +#: 7a7e3e6209bd4c15afc6752b8c74040e discord.Attachment.expires_at:1 of +msgid "This attachment URL's expiry time in UTC." +msgstr "" + +#: 581eda75240949569707cd63ac09c7a8 discord.Attachment.issued_at:1 of +msgid "The attachment URL's issue time in UTC." +msgstr "" + +#: 49b18fc268034c8db39371a3fc32c865 discord.message.Attachment.is_spoiler:1 of +msgid "Whether this attachment contains a spoiler." +msgstr "" + +#: c25732e0908f4dd8bd7a864809412d0d discord.message.Attachment.save:3 of +msgid "Saves this attachment into a file-like object." +msgstr "" + +#: 2b5ead79700145a382d76f44023473e0 7aa4f610913d4f9b9a7d74ae16d69eb5 +#: abdf57698eb34d8982ba647f6da17306 discord.message.Attachment.read:8 +#: discord.message.Attachment.save:15 discord.message.Attachment.to_file:9 of +msgid "" +"Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading" +" the attachment. This will allow attachments to be saved after deletion " +"more often, compared to the regular URL which is generally deleted right " +"after the message is deleted. Note that this can still fail to download " +"deleted attachments if too much time has passed, and it does not work on " +"some types of attachments." +msgstr "" + +#: 3a2517aab81246b4b3b8e32809055a54 discord.message.Attachment.save:26 of +msgid "Saving the attachment failed." +msgstr "" + +#: 38a5651d049e4b7e9f01bb38e9760855 ab9fdda4d9474a1086b411042447c7f8 +#: d18abb0c844745c2807b072262ea7789 discord.message.Attachment.read:21 +#: discord.message.Attachment.save:27 discord.message.Attachment.to_file:29 of +msgid "The attachment was deleted." +msgstr "" + +#: 89527552ebbd4d409dcce3694f51a99b discord.message.Attachment.read:3 of +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "" + +#: 1bad3cdd715542a994765eeb1d5cc225 discord.message.Attachment.read:16 of +msgid "The contents of the attachment." +msgstr "" + +#: 4db1799592a342b69f4dff05cb3399aa 50fc85816460419987fd4b9d6f35c1e0 +#: discord.message.Attachment.read:19 discord.message.Attachment.to_file:27 of +msgid "Downloading the attachment failed." +msgstr "" + +#: 852f492f157c49a49a538a015d3dc7f6 93df4e1ae9c44fe4ab4e94a66887ed45 +#: discord.message.Attachment.read:20 discord.message.Attachment.to_file:28 of +msgid "You do not have permissions to access this attachment" +msgstr "" + +#: 512cefc81149403991eb28276fd27583 discord.message.Attachment.to_file:3 of +msgid "" +"Converts the attachment into a :class:`File` suitable for sending via " +":meth:`abc.Messageable.send`." +msgstr "" + +#: 97c789cd2203402caaf8749a1b36a101 discord.message.Attachment.to_file:9 of +msgid "" +"Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading" +" the attachment. This will allow attachments to be saved after deletion " +"more often, compared to the regular URL which is generally deleted right " +"after the message is deleted. Note that this can still fail to download " +"deleted attachments if too much time has passed, and it does not work on " +"some types of attachments. .. versionadded:: 1.4" +msgstr "" + +#: c2dc41c458d14511af30641f128b62a7 discord.message.Attachment.to_file:19 of +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "" + +#: ac21dc598e304ef99add56eb017be309 discord.message.Attachment.to_file:19 of +msgid "Whether the file is a spoiler." +msgstr "" + +#: 3dbef21cef734a099ef0f5b9de18b4b0 discord.message.Attachment.to_file:24 of +msgid "The attachment as a file suitable for sending." +msgstr "" + +#: 406bc1fb64024186be3b7ecaf1a02ac3 discord.message.Attachment.to_file:25 of +msgid ":class:`File`" +msgstr "" + +#: 10ef3aa25d85405fb59e9ab658bc9eac discord.message.Message:1 of +msgid "Represents a message from Discord." +msgstr "" + +#: c89f0f707b8e46c6a7c6c501bc5f0293 discord.message.Message:7 of +msgid "Checks if two messages are equal." +msgstr "" + +#: 96dc0272315c4528b796e1996105ea53 discord.message.Message:11 of +msgid "Checks if two messages are not equal." +msgstr "" + +#: a4333cfc43cd4aa59cf2da1c96614ce0 discord.message.Message:15 of +msgid "Returns the message's hash." +msgstr "" + +#: 66fcb5e73fa5422b84143f684a703457 discord.message.Message:19 of +msgid "" +"Specifies if the message was done with text-to-speech. This can only be " +"accurately received in :func:`on_message` due to a discord limitation." +msgstr "" + +#: 1c29cc92950e41328decea6a9493d984 discord.message.Message:27 of +msgid "" +"The type of message. In most cases this should not be checked, but it is " +"helpful in cases where it might be a system message for " +":attr:`system_content`." +msgstr "" + +#: ac22c5569dca4c34a8f7f0844f479dab discord.message.Message:30 of +msgid ":class:`MessageType`" +msgstr "" + +#: 98463528996a46798fc8efd5aa242dd6 discord.message.Message:34 of +msgid "" +"A :class:`Member` that sent the message. If :attr:`channel` is a private " +"channel or the user has the left the guild, then it is a :class:`User` " +"instead." +msgstr "" + +#: 9ca47ce35e334775b050c5fffee921b4 discord.message.Message:37 of +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "" + +#: 851fad41cfa943068fdd9dc3ce016772 discord.message.Message:41 of +msgid "The actual contents of the message." +msgstr "" + +#: 539e6d62371d4f8c97f56e84dd29d925 discord.message.Message:47 of +msgid "" +"The value used by the discord guild and the client to verify that the " +"message is successfully sent. This is not stored long term within " +"Discord's servers and is only used ephemerally." +msgstr "" + +#: discord.message.Message:50 e60f3027370f43b693c6d981bf0d4f55 of +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "" + +#: 8a97782bb8154337aaaa86c73d5871a6 discord.message.Message:54 of +msgid "A list of embeds the message has." +msgstr "" + +#: 6e668a78acd34b959732d8cbd2667cc0 discord.message.Message:56 of +msgid "List[:class:`Embed`]" +msgstr "" + +#: 5e7f262f6ee24545b1ca267cfc28867a discord.message.Message:60 of +msgid "" +"The :class:`TextChannel` or :class:`Thread` that the message was sent " +"from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a " +"private message." +msgstr "" + +#: 33f5a93d3c45480890ed9a50bb089b3f discord.message.Message:63 of +msgid "" +"Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, " +":class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "" + +#: 9995b387626a431bad40c78cda6d0c9e discord.message.Message:67 of +msgid "" +"The message that this message references. This is only applicable to " +"messages of type :attr:`MessageType.pins_add`, crossposted messages " +"created by a followed channel integration, or message replies." +msgstr "" + +#: 1b1a4032950945b2a0895fe3c81c3721 discord.message.Message:73 of +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "" + +#: d7804f1b198444419c99c4772c5d55ac discord.message.Message:77 of +msgid "Specifies if the message mentions everyone." +msgstr "" + +#: 97bbea590d824d1f81373c1ace66ba4a discord.message.Message:81 of +msgid "" +"This does not check if the ``@everyone`` or the ``@here`` text is in the " +"message itself. Rather this boolean indicates if either the ``@everyone``" +" or the ``@here`` text is in the message **and** it did end up " +"mentioning." +msgstr "" + +#: 960165a680ad459eac0bbdccfbd7d204 discord.message.Message:89 of +msgid "" +"A list of :class:`Member` that were mentioned. If the message is in a " +"private message then the list will be of :class:`User` instead. For " +"messages that are not of type :attr:`MessageType.default`\\, this array " +"can be used to aid in system messages. For more information, see " +":attr:`system_content`." +msgstr "" + +#: discord.message.Message:96 f9800bb1f137401aab89591a1a423b6e of +msgid "" +"The order of the mentions list is not in any particular order, so you " +"should not rely on it. This is a Discord limitation, not one with the " +"library." +msgstr "" + +#: b6bd045fd6c44ad09ef867d9bffbade7 discord.message.Message:99 of +msgid "List[:class:`abc.User`]" +msgstr "" + +#: 7af63d54c0ff4a8690b5d9607495a1cd discord.message.Message:103 of +msgid "" +"A list of :class:`abc.GuildChannel` that were mentioned. If the message " +"is in a private message then the list is always empty." +msgstr "" + +#: 011476095d5046498b1c37fad94213e1 discord.message.Message:106 of +msgid "List[:class:`abc.GuildChannel`]" +msgstr "" + +#: 49955f9ef16d41bf80b7937f4ace197a discord.message.Message:110 of +msgid "" +"A list of :class:`Role` that were mentioned. If the message is in a " +"private message then the list is always empty." +msgstr "" + +#: 88c4c524c78a4857b913ca8d5973f08d 9e75c40ee9b4463aadc399e8db6f6389 +#: a4e4f174c60443c0afb51e724da832d1 discord.guild.Guild.edit_role_positions:31 +#: discord.guild.Guild.fetch_roles:12 discord.message.Message:113 of +msgid "List[:class:`Role`]" +msgstr "" + +#: b652db0d948a4908bd0a5f651a230759 discord.message.Message:117 of +msgid "The message ID." +msgstr "" + +#: 786d6374802f4e44b030b2fd41adf862 discord.message.Message:123 of +msgid "" +"If this message was sent by a webhook, then this is the webhook ID's that" +" sent this message." +msgstr "" + +#: 421e917b62fd42bebe07d3de413ddf85 discord.message.Message:130 of +msgid "A list of attachments given to a message." +msgstr "" + +#: discord.message.Message:132 f24083bc199542cbbe74419d8abbdb6e of +msgid "List[:class:`Attachment`]" +msgstr "" + +#: 2f13ad45fff048719718a0c2788c1d0c discord.message.Message:136 of +msgid "Specifies if the message is currently pinned." +msgstr "" + +#: discord.message.Message:142 efef04c240ec4429aa48439dc785b972 of +msgid "Extra features of the message." +msgstr "" + +#: 6c7e533bdc934532a1a9ed62d9dd677c discord.message.Message:146 of +msgid ":class:`MessageFlags`" +msgstr "" + +#: 55c105f0e8554e7ab630de0a57a2af15 discord.message.Message:150 of +msgid "" +"Reactions to a message. Reactions can be either custom emoji or standard " +"unicode emoji." +msgstr "" + +#: discord.message.Message:152 f5938125bdc04e539f46f82dae7db0a9 of +msgid "List[:class:`Reaction`]" +msgstr "" + +#: 1b8101a6a88346038765fee81ebe3ad4 discord.message.Message:156 of +msgid "" +"The activity associated with this message. Sent with Rich-Presence " +"related messages that for example, request joining, spectating, or " +"listening to or with another member." +msgstr "" + +#: cdd04cf139c9423a92d80149e2b2e150 discord.message.Message:159 of +msgid "It is a dictionary with the following optional keys:" +msgstr "" + +#: 1423a2c02f774bd480ca350e72106b6c discord.message.Message:161 of +msgid "" +"``type``: An integer denoting the type of message activity being " +"requested." +msgstr "" + +#: 21d99256b5c044858d72ec0bdeba7f33 discord.message.Message:162 of +msgid "``party_id``: The party ID associated with the party." +msgstr "" + +#: 11c75525785d4c429178a7a718d68f80 discord.message.Message:164 +#: discord.message.Message:178 f3f5b79ae0264c59b2b8f18457a33604 of +msgid "Optional[:class:`dict`]" +msgstr "" + +#: 5c638f47368d4db5882b325512edf336 discord.message.Message:168 of +msgid "The rich presence enabled application associated with this message." +msgstr "" + +#: 1ae5cbf673ab45ceb3b8e66cc8706099 discord.message.Message:170 of +msgid "It is a dictionary with the following keys:" +msgstr "" + +#: 221c04f455724fcfb9b0a46ddb3939e5 discord.message.Message:172 of +msgid "``id``: A string representing the application's ID." +msgstr "" + +#: 5a6f862aefff4cbcadc74c8ba6271e5c discord.message.Message:173 of +msgid "``name``: A string representing the application's name." +msgstr "" + +#: discord.message.Message:174 f4b50c05afeb4dd29178bda7d9f126da of +msgid "``description``: A string representing the application's description." +msgstr "" + +#: 084d789e62d143e8b725a57852282cd2 discord.message.Message:175 of +msgid "``icon``: A string representing the icon ID of the application." +msgstr "" + +#: discord.message.Message:176 ee50f70337d94151a302a61e82dbc029 of +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "" + +#: 5582678c2ca8413ca069c56f2492567d discord.message.Message:182 of +msgid "A list of sticker items given to the message." +msgstr "" + +#: bd86ecd15cc848a8b57ef5dbb7c6f4d4 discord.message.Message:186 of +msgid "List[:class:`StickerItem`]" +msgstr "" + +#: bb20c61da20940bab181136ef093d900 discord.message.Message:190 of +msgid "A list of components in the message." +msgstr "" + +#: 67814d733bdf4049865a606a8b8f8cc5 84f37565d5b54049bca37476a10434b3 +#: discord.components.ActionRow:19 discord.message.Message:194 of +msgid "List[:class:`Component`]" +msgstr "" + +#: 0f10704216da411fa9cb5ea9729a306d discord.message.Message:198 of +msgid "The guild that the message belongs to, if applicable." +msgstr "" + +#: ../../docstring 9dd1e8c3b999410fa6625ba6f279c7c7 +#: c721db13a7b146019d639a9f3f834bf5 +#: discord.AuthorizingIntegrationOwners.guild:4 discord.message.Message:200 +#: discord.raw_models.AutoModActionExecutionEvent:35 +#: discord.raw_models.RawScheduledEventSubscription:22 of +msgid "Optional[:class:`Guild`]" +msgstr "" + +#: c711b5679e6f4001971bdbf17f5a6bc5 discord.message.Message:204 of +msgid "The interaction associated with the message, if applicable." +msgstr "" + +#: 9c695b320a55407a830a789ff0278c51 discord.message.Message:208 of +msgid "Use :attr:`interaction_metadata` instead." +msgstr "" + +#: 4229c74086434a8da37f74044d1d1104 discord.message.Message:210 of +msgid "Optional[:class:`MessageInteraction`]" +msgstr "" + +#: b1fdf0c3bbfe46aba08110ea038a323e discord.message.Message:214 of +msgid "The interaction metadata associated with the message, if applicable." +msgstr "" + +#: 465b6273c1434cdf84d1bf9d0bec35d1 bc296a912770482a81cf365b4076d957 +#: discord.interactions.InteractionMetadata:49 discord.message.Message:218 of +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "" + +#: discord.message.Message:222 fbae865071c64c2e9e3f98ada3d37e00 of +msgid "The thread created from this message, if applicable." +msgstr "" + +#: 2654a66e65374bf188f55b35405bed50 aac45b2defac480591d4ff80dd368aa8 +#: d8d7b5cabb804112945544dd9fce00a3 discord.channel._TextChannel.get_thread:10 +#: discord.guild.Guild.get_thread:10 discord.message.Message:226 of +msgid "Optional[:class:`Thread`]" +msgstr "" + +#: 976df015627c468c81e129d00a058565 discord.message.Message:230 of +msgid "The poll associated with this message, if applicable." +msgstr "" + +#: b70aff860e5a4c0092f8bc6056c6c429 discord.message.Message:234 of +msgid "Optional[:class:`Poll`]" +msgstr "" + +#: ba8414a14e5247d1891f3fcd6ede7ba5 discord.message.Message:238 of +msgid "The call information associated with this message, if applicable." +msgstr "" + +#: 2e405f4e197f4b0ba5d54391a69b0d71 discord.message.Message:242 of +msgid "Optional[:class:`MessageCall`]" +msgstr "" + +#: ../../docstring d59d70f0cbd743578391ed22b87a8517 +#: discord.Message.raw_mentions:1 of +msgid "" +"A property that returns an array of user IDs matched with the syntax of " +"``<@user_id>`` in the message content." +msgstr "" + +#: ../../docstring bf9876a8435e4fb5a35d45f7ba9ab90a +#: discord.Message.raw_mentions:4 of +msgid "" +"This allows you to receive the user IDs of mentioned users even in a " +"private message context." +msgstr "" + +#: ../../docstring 21f2f539641c4128b9e6858d5de9a5ca +#: discord.Message.raw_channel_mentions:1 of +msgid "" +"A property that returns an array of channel IDs matched with the syntax " +"of ``<#channel_id>`` in the message content." +msgstr "" + +#: ../../docstring 61279901d2c144e3a417b89ad6970896 +#: discord.Message.raw_role_mentions:1 of +msgid "" +"A property that returns an array of role IDs matched with the syntax of " +"``<@&role_id>`` in the message content." +msgstr "" + +#: ../../docstring 5905102b41e94421a8bbe2d3e39e0dc1 +#: discord.Message.clean_content:1 of +msgid "" +"A property that returns the content in a \"cleaned up\" manner. This " +"basically means that mentions are transformed into the way the client " +"shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "" + +#: ../../docstring a849cf73f2174ff19747610e465a352d +#: discord.Message.clean_content:6 of +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "" + +#: ../../docstring 69355ee0c0ff4f15a9b729b4ca15c973 +#: discord.Message.clean_content:11 of +msgid "" +"This *does not* affect markdown. If you want to escape or remove markdown" +" then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` " +"respectively, along with this function." +msgstr "" + +#: 55e47beaa3ac4cee992d5883ba04a4c6 discord.Message.created_at:1 of +msgid "The message's creation time in UTC." +msgstr "" + +#: bb1c1cc12b08400f86be29f7d0441b3e discord.Message.edited_at:1 of +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "" + +#: dbcd2c570fa4423cb11ac679697038d6 discord.Message.jump_url:1 of +msgid "Returns a URL that allows the client to jump to this message." +msgstr "" + +#: 902275c17f3c469aa785343359c47fb9 discord.message.Message.is_system:1 of +msgid "Whether the message is a system message." +msgstr "" + +#: 380bdbfc46bd4c5899551469cc7e5889 discord.message.Message.is_system:3 of +msgid "" +"A system message is a message that is constructed entirely by the Discord" +" API in response to something. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: ../../docstring 6ac96034f537482981cd178d888a47e4 +#: discord.Message.system_content:1 of +msgid "" +"A property that returns the content that is rendered regardless of the " +":attr:`Message.type`." +msgstr "" + +#: ../../docstring cb529005bb6e428d9a95dbc310bfe671 +#: discord.Message.system_content:4 of +msgid "" +"In the case of :attr:`MessageType.default` and " +":attr:`MessageType.reply`\\, this just returns the regular " +":attr:`Message.content`. Otherwise, this returns an English message " +"denoting the contents of the system message." +msgstr "" + +#: ad8810e402c64d56a4003b1747b42550 +#: discord.interactions.InteractionMessage.delete:3 +#: discord.message.Message.delete:3 f3ebcd5f2ae04e4995b614f305c52ccf of +msgid "Deletes the message." +msgstr "" + +#: 0bbb54d698a1473eb6060514cc3eca99 discord.message.Message.delete:5 of +msgid "" +"Your own messages could be deleted without any proper permissions. " +"However, to delete other people's messages, you need the " +":attr:`~Permissions.manage_messages` permission." +msgstr "" + +#: b016c406275e4375a282ef3c913836f1 discord.message.Message.delete:9 of +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "" + +#: 3e7b8a13ba7745cb878a4b89c7dc35ff discord.message.Message.delete:13 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message. If the deletion fails then it is silently ignored." +msgstr "" + +#: 7766e3a4eb534510bc1dcafa3f915983 discord.message.Message.delete:17 of +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "" + +#: 31dae9bdaac8430bab6b0a5bad06b2c3 +#: discord.interactions.InteractionMessage.delete:10 +#: discord.message.Message.delete:20 f075f7ddf459448486db289bb7a664c8 of +msgid "You do not have proper permissions to delete the message." +msgstr "" + +#: b863c986a0fa4047b2f5c54b2393cb04 discord.message.Message.delete:21 of +msgid "The message was deleted already" +msgstr "" + +#: 11626a89e9754d98b9e406dee995ee11 120db33a3735472ab0570bbc976c4428 +#: 918b2eb266e64d8b92a504fe13d28665 +#: discord.interactions.Interaction.delete_original_message:3 +#: discord.interactions.Interaction.delete_original_response:13 +#: discord.interactions.InteractionMessage.delete:12 +#: discord.message.Message.delete:22 of +msgid "Deleting the message failed." +msgstr "" + +#: 6ed53c62bf794126a8bcd24d3fd2a19e 99ff3a0b34044b0aa7c00d20adca1974 +#: discord.interactions.InteractionMessage.edit:3 +#: discord.message.Message.edit:3 of +msgid "Edits the message." +msgstr "" + +#: discord.message.Message.edit:5 f506e070d16e481b93649766961323be of +msgid "" +"The content must be able to be transformed into a string via " +"``str(content)``." +msgstr "" + +#: c919b04337dd4e29b9089203012031c2 discord.message.Message.edit:7 of +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "" + +#: discord.message.Message.edit:11 f15edfb6cdf74e378aecadedb0ab3e72 of +msgid "" +"The new content to replace the message with. Could be ``None`` to remove " +"the content." +msgstr "" + +#: discord.message.Message.edit:15 eea88257163b4962992fe33593dbc23a of +msgid "" +"The new embed to replace the original with. Could be ``None`` to remove " +"the embed." +msgstr "" + +#: 93c44872f4754ff89bacdf2adf89814e discord.message.Message.edit:19 of +msgid "" +"The new embeds to replace the original with. Must be a maximum of 10. To " +"remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "" + +#: bb7569bda28141f4b8cec0729aa54f1f discord.message.Message.edit:19 of +msgid "" +"The new embeds to replace the original with. Must be a maximum of 10. To " +"remove all embeds ``[]`` should be passed." +msgstr "" + +#: discord.message.Message.edit:25 e635ccc895ce42aab5f9e248143bfab4 of +msgid "A new file to add to the message." +msgstr "" + +#: 929da4038ce34700ac4c10e343adce0b discord.message.Message.edit:28 of +msgid "New files to add to the message." +msgstr "" + +#: 30fc507352f2434c88bf8dae92a030f3 37250a2ca1734906b0f17639a4ca5a55 +#: discord.interactions.Interaction.edit_original_response:29 +#: discord.interactions.InteractionMessage.edit:23 +#: discord.interactions.InteractionResponse.edit_message:24 +#: discord.message.Message.edit:31 of +msgid "" +"A list of attachments to keep in the message. If ``[]`` is passed then " +"all attachments are removed." +msgstr "" + +#: 94013e4244574f8aa0b4bc45b834b58c discord.message.Message.edit:35 of +msgid "" +"Whether to suppress embeds for the message. This removes all the embeds " +"if set to ``True``. If set to ``False`` this brings the embeds back if " +"they were suppressed. Using this parameter requires " +":attr:`~.Permissions.manage_messages`." +msgstr "" + +#: 1b1c8d98c40d4a1db673aba02af8ab84 a865ae969b7e4cd1aa10292adaa53422 +#: discord.interactions.Interaction.edit_original_response:41 +#: discord.interactions.InteractionMessage.edit:35 +#: discord.interactions.InteractionResponse.edit_message:32 +#: discord.message.Message.edit:41 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message we just edited. If the deletion fails, then it is " +"silently ignored." +msgstr "" + +#: 14c5970e926b4bdba9cf225c428573be 66bd52e02f594816b9a3876ee0003e20 +#: discord.interactions.Interaction.edit_original_response:37 +#: discord.interactions.InteractionMessage.edit:31 +#: discord.interactions.InteractionResponse.edit_message:28 +#: discord.message.Message.edit:56 of +msgid "" +"The updated view to update this message with. If ``None`` is passed then " +"the view is removed." +msgstr "" + +#: 332dbf07fc3c4518af8fb62bff79dcac 67b05d01e4534778912bcc2bc182d711 +#: discord.interactions.Interaction.edit_original_message:6 +#: discord.interactions.Interaction.edit_original_response:52 +#: discord.interactions.InteractionMessage.edit:46 +#: discord.interactions.InteractionResponse.edit_message:48 +#: discord.message.Message.edit:60 of +msgid "Editing the message failed." +msgstr "" + +#: 8f9e1ea8a2e340cd84961e1002372225 discord.message.Message.edit:61 of +msgid "" +"Tried to suppress a message without permissions or edited a message's" +" content or embed that isn't yours." +msgstr "" + +#: d13f7e34dd204807a23d8f242e6cfd40 discord.message.Message.edit:62 of +msgid "" +"You specified both ``embed`` and ``embeds``, specified both ``file`` " +"and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "" + +#: 7810feb6286743e1815a8c05a3a7c021 discord.message.Message.edit:64 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr "" + +#: 963e6ad32ed64ea3866c7c9c5d8c9dff discord.message.Message.publish:3 of +msgid "Publishes this message to your announcement channel." +msgstr "" + +#: b79c0f15372a43f784dc744bcc092094 discord.message.Message.publish:5 of +msgid "" +"You must have the :attr:`~Permissions.send_messages` permission to do " +"this." +msgstr "" + +#: 0753a753405c425fbb76674fcddf3c26 discord.message.Message.publish:7 of +msgid "" +"If the message is not your own then the " +":attr:`~Permissions.manage_messages` permission is also needed." +msgstr "" + +#: discord.message.Message.publish:10 f6019d9837ad4cc2ba2a8577c019a50d of +msgid "You do not have the proper permissions to publish this message." +msgstr "" + +#: 3250bbcd5c12424d887a0f63f25245af discord.message.Message.publish:11 of +msgid "Publishing the message failed." +msgstr "" + +#: 5a1324914dc7460d865a7533dbe183bc discord.message.Message.pin:3 of +msgid "Pins the message." +msgstr "" + +#: 26202505ba6947e586039e2c754bf8ae 63843b42e1924b479832a6a8a7e48618 +#: discord.message.Message.pin:5 discord.message.Message.unpin:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_messages` permission to do " +"this in a non-private channel context." +msgstr "" + +#: 7847b26da73f44e1838c342d6466391a discord.message.Message.pin:9 of +msgid "" +"The reason for pinning the message. Shows up on the audit log. .. " +"versionadded:: 1.4" +msgstr "" + +#: 3a1b5b438c584983b6f4325d989fd5ab discord.message.Message.pin:9 of +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "" + +#: 67f7fac70faa4d079104ff9431a16bd6 discord.message.Message.pin:14 of +msgid "You do not have permissions to pin the message." +msgstr "" + +#: 0d21afec7d6044b798fba0b60322f7a2 4533dbcb39de41998e7511a51a37bb11 +#: discord.message.Message.pin:15 discord.message.Message.unpin:15 of +msgid "The message or channel was not found or deleted." +msgstr "" + +#: 07a60251003047b4ba481745ac32e138 discord.message.Message.pin:16 of +msgid "" +"Pinning the message failed, probably due to the channel having more " +"than 50 pinned messages." +msgstr "" + +#: 2b5c4c9d2422472ab042fc1afdf24b9a discord.message.Message.unpin:3 of +msgid "Unpins the message." +msgstr "" + +#: db7044deecb0488889c0dfb4903060fe discord.message.Message.unpin:9 of +msgid "" +"The reason for unpinning the message. Shows up on the audit log. .. " +"versionadded:: 1.4" +msgstr "" + +#: 55b0db066a994507b071a381697cb7c9 discord.message.Message.unpin:9 of +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "" + +#: 133f2ff9453e480f8c6e7d6262afa326 discord.message.Message.unpin:14 of +msgid "You do not have permissions to unpin the message." +msgstr "" + +#: a9aec70f724a485e8dcf19b74bd2fdd3 discord.message.Message.unpin:16 of +msgid "Unpinning the message failed." +msgstr "" + +#: db5902f5e8834ed1b202b00edd1b0fa1 discord.message.Message.add_reaction:3 of +msgid "Add a reaction to the message." +msgstr "" + +#: 1aa5ee02625744fb8125add13b1e3df3 bd657fd6ab1340feb3c8e0ed695a8135 +#: d66a572a4fa74e52addeaad952d58e89 discord.message.Message.add_reaction:5 +#: discord.message.Message.clear_reaction:5 +#: discord.message.Message.remove_reaction:5 of +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "" + +#: 0664e6f74ec5451ab9265738e4ebaa40 discord.message.Message.add_reaction:7 of +msgid "" +"You must have the :attr:`~Permissions.read_message_history` permission to" +" use this. If nobody else has reacted to the message using this emoji, " +"the :attr:`~Permissions.add_reactions` permission is required." +msgstr "" + +#: 6ed9eed730bf47b3b9f83a2ce7028148 discord.message.Message.add_reaction:12 of +msgid "The emoji to react with." +msgstr "" + +#: cce1f1518b1f4c9883a53cb3927da79a discord.message.Message.add_reaction:15 of +msgid "Adding the reaction failed." +msgstr "" + +#: 65ce388e1f284767a1e0cba3ce4e79a6 discord.message.Message.add_reaction:16 of +msgid "You do not have the proper permissions to react to the message." +msgstr "" + +#: 2ffd54e393ab406ea54fc4e98a266593 8dd42a82528e498f8b2686102872ac6f +#: b88c13ed83e5418a9170adff1a0e3523 discord.message.Message.add_reaction:17 +#: discord.message.Message.clear_reaction:17 discord.reaction.Reaction.clear:13 +#: of +msgid "The emoji you specified was not found." +msgstr "" + +#: 0505095b173e48159d4b6dcc1f0f7cd3 09176183d3c048e581fe6e2b9983e4bd +#: 3c7d18a165c749cda738792a0312f453 422c7b0521e54a28afe1e65e6a49e3ec +#: discord.message.Message.add_reaction:18 +#: discord.message.Message.clear_reaction:18 +#: discord.message.Message.remove_reaction:23 +#: discord.reaction.Reaction.clear:14 of +msgid "The emoji parameter is invalid." +msgstr "" + +#: discord.message.Message.remove_reaction:3 eb47bea041e84503880cbe32bd2eda61 +#: of +msgid "Remove a reaction by the member from the message." +msgstr "" + +#: 5ec65487191e427e87384de3b9fbcf36 discord.message.Message.remove_reaction:7 +#: of +msgid "" +"If the reaction is not your own (i.e. ``member`` parameter is not you) " +"then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "" + +#: discord.message.Message.remove_reaction:10 f378e96813ce4f299c457ebd9601de1a +#: of +msgid "" +"The ``member`` parameter must represent a member and meet the " +":class:`abc.Snowflake` abc." +msgstr "" + +#: ae8c48c041ac4b45b9ad7077617146ff discord.message.Message.remove_reaction:14 +#: of +msgid "The emoji to remove." +msgstr "" + +#: discord.message.Message.remove_reaction:17 f659d999d16d4416bea4ca7796135f67 +#: of +msgid "The member for which to remove the reaction." +msgstr "" + +#: 662ed5086e76494795de8ea9d5bca33f 9941fe595096404386307faed343ca19 +#: discord.message.Message.remove_reaction:20 +#: discord.reaction.Reaction.remove:15 of +msgid "Removing the reaction failed." +msgstr "" + +#: 7f2bc964d6354e959e7a3a4c5cb754c2 discord.message.Message.remove_reaction:21 +#: discord.reaction.Reaction.remove:16 e41740887bbf483fb11ce6d383c6c9ab of +msgid "You do not have the proper permissions to remove the reaction." +msgstr "" + +#: discord.message.Message.remove_reaction:22 ebb24f101b3a4f38bfec6edcd473c2e2 +#: of +msgid "The member or emoji you specified was not found." +msgstr "" + +#: 7fc2eaf92eaf4373ad753b449a33caa1 discord.message.Message.clear_reaction:3 of +msgid "Clears a specific reaction from the message." +msgstr "" + +#: 4ca4c4f14828485bbc6d2656a2bfce2a b31e5a12186248189a19328b932b85ff +#: discord.message.Message.clear_reaction:7 +#: discord.message.Message.clear_reactions:5 of +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "" + +#: 548ef981414b4d49b0e7b676a0ba9e8f discord.message.Message.clear_reaction:12 +#: of +msgid "The emoji to clear." +msgstr "" + +#: 2233857fffb7482cb227cf18ee71a104 discord.message.Message.clear_reaction:15 +#: discord.reaction.Reaction.clear:11 e8b551eb942b41679802a74c35e331c1 of +msgid "Clearing the reaction failed." +msgstr "" + +#: 02e12cad95884ce09602f895440c1f7c 2c0573085ea84c958bc40240ec04a71a +#: discord.message.Message.clear_reaction:16 discord.reaction.Reaction.clear:12 +#: of +msgid "You do not have the proper permissions to clear the reaction." +msgstr "" + +#: 0a40adeb44d5439a950b26edbdd378d9 discord.message.Message.clear_reactions:3 +#: of +msgid "Removes all the reactions from the message." +msgstr "" + +#: 80ff4108cd8942f48f27098fcf3dbfba discord.message.Message.clear_reactions:7 +#: of +msgid "Removing the reactions failed." +msgstr "" + +#: 612b122606c349a39130881cbbebd531 discord.message.Message.clear_reactions:8 +#: of +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "" + +#: defabf462bcb4c59a3f42586f4c6fdcf discord.message.Message.create_thread:3 of +msgid "Creates a public thread from this message." +msgstr "" + +#: discord.message.Message.create_thread:5 e88a011da86341b78f27a8424f89819f of +msgid "" +"You must have :attr:`~discord.Permissions.create_public_threads` in order" +" to create a public thread from a message." +msgstr "" + +#: d5ce5953554646d39d00cc9b39f2b240 discord.message.Message.create_thread:8 of +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "" + +#: b76d73bb2eec453fa791730f2896373e c412555942314e6abb96db9bca6ed6c0 +#: discord.channel.ForumChannel.create_thread:11 +#: discord.channel.TextChannel.create_thread:11 +#: discord.message.Message.create_thread:13 of +msgid "The name of the thread." +msgstr "" + +#: 30e22d15e90d4423afb572096bc361de d4ed5bbfc3cd43088a3b6e8715f45654 +#: discord.channel.ForumChannel.create_thread:53 +#: discord.channel.TextChannel.create_thread:19 +#: discord.message.Message.create_thread:16 of +msgid "" +"The duration in minutes before a thread is automatically archived for " +"inactivity. If not provided, the channel's default auto archive duration " +"is used." +msgstr "" + +#: 181f2f80fc1c44fd9bed109ac89f141e 8e3b3a9d19ac4812927782e4fa09edfe +#: discord.message.Message.create_thread:20 discord.threads.Thread.edit:30 of +msgid "" +"Specifies the slowmode rate limit for user in this thread, in seconds. A " +"value of ``0`` disables slowmode. The maximum value possible is " +"``21600``." +msgstr "" + +#: 926796b3230345a3843522da29c30bb8 discord.message.Message.create_thread:24 of +msgid "The created thread." +msgstr "" + +#: 9f646bb40e254fe0b597541bce565ff5 discord.message.Message.create_thread:25 +#: discord.threads.Thread.archive:10 discord.threads.Thread.unarchive:6 +#: f5280afb2c934a6ea25391480ed57a0e of +msgid ":class:`.Thread`" +msgstr "" + +#: 1edc4b26a7b14e7ebc76ed185b7258dd ac637d19fb1d403d95c9d2561056cdc5 +#: discord.channel.ForumChannel.create_thread:70 +#: discord.channel.TextChannel.create_thread:42 +#: discord.message.Message.create_thread:27 of +msgid "You do not have permissions to create a thread." +msgstr "" + +#: 0fe9251d141d41ffa3f62b42ca7fb130 discord.message.Message.create_thread:28 of +msgid "Creating the thread failed." +msgstr "" + +#: discord.message.Message.create_thread:29 f428c849be8f4e07aaf5ed090b6216de of +msgid "This message does not have guild info attached." +msgstr "" + +#: discord.message.Message.reply:3 fbd67ff4c215400ea4a271748c5dc77c of +msgid "" +"A shortcut method to :meth:`.abc.Messageable.send` to reply to the " +":class:`.Message`." +msgstr "" + +#: 8fb0c77645f547c6872c4b243378a15d discord.message.Message.reply:9 of +msgid ":class:`.Message`" +msgstr "" + +#: 407cc6ed96864a86a0c521ed428b7511 discord.message.Message.reply:13 of +msgid "" +"The ``files`` list is not of the appropriate size, or you specified " +"both ``file`` and ``files``." +msgstr "" + +#: 3dafec6926db4c4d81092ac287d3d107 discord.message.Message.end_poll:3 of +msgid "" +"Immediately ends the poll associated with this message. Only doable by " +"the poll's owner." +msgstr "" + +#: 4a3dc6d67ed745eb97c46bc2b0126c04 discord.message.Message.end_poll:7 of +msgid "The updated message." +msgstr "" + +#: 301847af28674e3fa66b98a999ad3a24 c6245cc6405d4d10a83d87b23ebb1501 +#: discord.message.Message.end_poll:8 discord.reaction.Reaction:54 of +msgid ":class:`Message`" +msgstr "" + +#: c3d9fa4ad2024a41b78d90e1ab3ecd18 discord.message.Message.end_poll:10 of +msgid "You do not have permissions to end this poll." +msgstr "" + +#: 4c4e783c9fed479e9d3f508871e459d1 discord.message.Message.end_poll:11 of +msgid "Ending this poll failed." +msgstr "" + +#: dd4d2e31e18f48c893bb52c2705c78ab discord.message.Message.to_reference:1 of +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "" + +#: 86483833c0624de19d40b49b553e42d5 discord.message.Message.to_reference:6 of +msgid "" +"Whether replying using the message reference should raise " +":class:`HTTPException` if the message no longer exists or Discord could " +"not fetch the message. .. versionadded:: 1.7" +msgstr "" + +#: c506ff24bf594020a7e0c82912c8d828 discord.message.Message.to_reference:6 of +msgid "" +"Whether replying using the message reference should raise " +":class:`HTTPException` if the message no longer exists or Discord could " +"not fetch the message." +msgstr "" + +#: 8a8ab09da0a9465bb681ee6462a156b6 discord.message.Message.to_reference:12 of +msgid "The reference to this message." +msgstr "" + +#: discord.message.Message.to_reference:13 f06595a3a15743dcbeae344ccd5daf42 of +msgid ":class:`~discord.MessageReference`" +msgstr "" + +#: 463786c736924e608ec8378a080aaa31 discord.message.DeletedReferencedMessage:1 +#: of +msgid "" +"A special sentinel type that denotes whether the resolved message " +"referenced message had since been deleted." +msgstr "" + +#: 05f414ff3d5f40a99da782fcff12356a discord.message.DeletedReferencedMessage:4 +#: of +msgid "" +"The purpose of this class is to separate referenced messages that could " +"not be fetched and those that were previously fetched but have since been" +" deleted." +msgstr "" + +#: b91f6f228ec34d6e84926a07cb3d5529 discord.DeletedReferencedMessage.id:1 of +msgid "The message ID of the deleted referenced message." +msgstr "" + +#: 5b18fda51f044f26a474b5006c9e19f3 +#: discord.DeletedReferencedMessage.channel_id:1 of +msgid "The channel ID of the deleted referenced message." +msgstr "" + +#: discord.DeletedReferencedMessage.guild_id:1 f98421f4146f431d805b01b7566a2e35 +#: of +msgid "The guild ID of the deleted referenced message." +msgstr "" + +#: 443e4a7e83794c9ca6b03288c36bc0db discord.reaction.Reaction:1 of +msgid "Represents a reaction to a message." +msgstr "" + +#: 60bb87648d9040c3bdc1881005a683a5 6b17d7197c824dbf9b1b9f5555dda822 +#: discord.invite.Invite:3 discord.reaction.Reaction:3 of +msgid "" +"Depending on the way this object was created, some of the attributes can " +"have a value of ``None``." +msgstr "" + +#: discord.reaction.Reaction:10 f040ad6d3ba445bf806d65e991a4adb5 of +msgid "" +"Checks if two reactions are equal. This works by checking if the emoji is" +" the same. So two messages with the same reaction will be considered " +"\"equal\"." +msgstr "" + +#: 8aa833a603ae439ab7e49c83c19b4e35 discord.reaction.Reaction:16 of +msgid "Checks if two reactions are not equal." +msgstr "" + +#: 33e424db11bb4c59a3cd27e734ff36fd discord.reaction.Reaction:20 of +msgid "Returns the reaction's hash." +msgstr "" + +#: 14eaf906b99446a2934f19940182a54f discord.reaction.Reaction:24 of +msgid "Returns the string form of the reaction's emoji." +msgstr "" + +#: 49a6023ce4184bde8d8392dce854c7b5 discord.reaction.Reaction:28 of +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "" + +#: 4bde8fe9c1b843e1ac8e64327c6fa644 d0fdab02f7ff4c81b105f060099ea6dd +#: discord.reaction.Reaction:30 discord.welcome_screen.WelcomeScreenChannel:21 +#: of +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "" + +#: 2c4aa0d7cbbb4f988a1a6fc2f1c7f688 discord.reaction.Reaction:34 of +msgid "The combined total of normal and super reactions for this emoji." +msgstr "" + +#: discord.reaction.Reaction:40 e57d310799d741d7bc0252178f43d114 of +msgid "If the user sent this as a normal reaction." +msgstr "" + +#: cc47d47b4dd9496ab72a4c8d4164fb31 discord.reaction.Reaction:46 of +msgid "If the user sent this as a super reaction." +msgstr "" + +#: discord.reaction.Reaction:52 e4ed4b4cd1854fd792b439e7a511e825 of +msgid "Message this reaction is for." +msgstr "" + +#: 5190e5726035489ba22258b7e607d443 d9ad7a2be3b24ac686dda32d9c316fc8 +#: discord.raw_models.RawReactionActionEvent:54 discord.reaction.Reaction:58 of +msgid "Whether this reaction is a burst (super) reaction." +msgstr "" + +#: 0958e07a78ed4d869f34ae625b3e196f discord.reaction.Reaction.users:1 of +msgid "" +"Returns an :class:`AsyncIterator` representing the users that have " +"reacted to the message." +msgstr "" + +#: 1f04234398f743a595187130048adfed discord.reaction.Reaction.users:3 of +msgid "" +"The ``after`` parameter must represent a member and meet the " +":class:`abc.Snowflake` abc." +msgstr "" + +#: discord.reaction.Reaction.users:7 f56abc2327e64340bb04db78a26912a0 of +msgid "" +"The maximum number of results to return. If not provided, returns all the" +" users who reacted to the message." +msgstr "" + +#: 380084668e484c1fa2c2a29a0770cb29 discord.reaction.Reaction.users:12 of +msgid "For pagination, reactions are sorted by member." +msgstr "" + +#: bc8530e934df4b92844df9fc397447a6 discord.reaction.Reaction.users:15 of +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "" + +#: 2283d254fc64459f8958cd07bc7a1df1 discord.reaction.Reaction.users:18 of +msgid "" +"Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or " +"the user that has reacted to this message. The case where it can be a " +":class:`Member` is in a guild message context. Sometimes it can be a " +":class:`User` if the member has left the guild." +msgstr "" + +#: 5a9b3c83c2c04f2d91cce4856581eee4 discord.reaction.Reaction.users:23 of +msgid "Getting the users for the reaction failed." +msgstr "" + +#: abcff3aaba8c4326aba0f10be153dcdf discord.reaction.Reaction.users:24 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr "" + +#: 2b042430e8bf4ac69ad5fa232c94b85c discord.reaction.Reaction.users:41 of +msgid "Getting super reactors: ::" +msgstr "" + +#: 0fc3e29d13884d05af4fd7829184073f 859ad1f6d6fe4419a6e0d7429d714a1c +#: discord.Reaction.burst_colors:1 discord.Reaction.burst_colours:1 of +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "" + +#: 9ea3273d46664bcabfaf997faf75903a discord.Reaction.burst_colours:3 of +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "" + +#: 4b1e6455f99b4cb48761829e9947ae34 discord.Reaction.burst_colors:3 of +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "" + +#: 8020928c7c884030a43d1f1e88be1f12 discord.Reaction.count_details:1 of +msgid "" +"Returns :class:`ReactionCountDetails` for the individual counts of normal" +" and super reactions made." +msgstr "" + +#: 4fedf8fd7cf14f929d4e43b0dc7ea4a9 discord.reaction.Reaction.is_custom_emoji:1 +#: of +msgid "If this is a custom emoji." +msgstr "" + +#: 80a1041811c44091b60360414c3f34d4 discord.reaction.Reaction.remove:3 of +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "" + +#: 67cc8cd0b18a45748f81dbbd084e6c34 discord.reaction.Reaction.remove:5 of +msgid "" +"If the reaction is not your own (i.e. ``user`` parameter is not you) then" +" the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "" + +#: discord.reaction.Reaction.remove:8 e1a7b4b270994c6bac90d3e34c58a439 of +msgid "" +"The ``user`` parameter must represent a user or member and meet the " +":class:`abc.Snowflake` abc." +msgstr "" + +#: 480798e124144fd88c458233e8cae802 discord.reaction.Reaction.remove:12 of +msgid "The user or member from which to remove the reaction." +msgstr "" + +#: 9ed3319b3f8f4b26b59fec846526fc76 discord.reaction.Reaction.remove:17 of +msgid "The user you specified, or the reaction's message was not found." +msgstr "" + +#: a9b348caee0b4fbf8f25c7fed3fbe950 discord.reaction.Reaction.clear:3 of +msgid "Clears this reaction from the message." +msgstr "" + +#: b8aa893b08e947e6ac97e260e4875972 discord.reaction.Reaction.clear:5 of +msgid "" +"You need the :attr:`~Permissions.manage_messages` permission to use this." +" :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 27e3ca8007f24a42a899c8fc86d444c9 discord.reaction.ReactionCountDetails:1 of +msgid "" +"Represents a breakdown of the normal and burst reaction counts for the " +"emoji." +msgstr "" + +#: 6ee28a4591c342499c80e1beabd65020 discord.reaction.ReactionCountDetails:5 of +msgid "The number of normal reactions for this emoji." +msgstr "" + +#: 79fcfd62a81b475ea5ccb85337642bac discord.reaction.ReactionCountDetails:11 of +msgid "The number of super reactions for this emoji." +msgstr "" + +#: ../../api/models.rst:105 438fa97418ac42c086378f5f6cd9cbb5 +msgid "Monetization" +msgstr "" + +#: 0912f7894a974f38b5c491381fb703de discord.monetization.SKU:1 of +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "" + +#: 18fe6a743d8a4bb3b829f258f8d7533a discord.monetization.SKU:7 of +msgid "The SKU's ID." +msgstr "" + +#: c922fe84c9444e08b6923dd77e3e47c4 discord.monetization.SKU:13 of +msgid "The type of SKU." +msgstr "" + +#: 7eb21e004f3f4df98cc31e4e8d127d3a discord.monetization.SKU:15 of +msgid ":class:`SKUType`" +msgstr "" + +#: 50cef2d53ee946559047ecd0176caf96 discord.monetization.SKU:19 of +msgid "The ID of the application this SKU belongs to." +msgstr "" + +#: 316a83431191428293c26edf082f08bc discord.monetization.SKU:25 of +msgid "The name of the SKU." +msgstr "" + +#: d2a15e893ab040709adc7ecc9d98c68d discord.monetization.SKU:31 of +msgid "The SKU's slug." +msgstr "" + +#: 9ecda8e413964917aa9d81547e5061b7 discord.monetization.SKU:37 of +msgid "The SKU's flags." +msgstr "" + +#: 064c9c1e49414b42b274509ac23e53bf discord.monetization.SKU:39 of +msgid ":class:`SKUFlags`" +msgstr "" + +#: 167b1d199a94472395eeb277b09342b4 discord.SKU.url:1 of +msgid "Returns the URL for the SKU." +msgstr "" + +#: discord.monetization.Entitlement:1 f90050e635304cceb060faed27c18428 of +msgid "Represents a Discord entitlement." +msgstr "" + +#: 474393e263ed49ceadcdb9df979b1e80 discord.monetization.Entitlement:7 of +msgid "The entitlement's ID." +msgstr "" + +#: discord.monetization.Entitlement:13 e22b12906d11423b92816daccc7bbee6 of +msgid "The ID of the SKU this entitlement is for." +msgstr "" + +#: discord.monetization.Entitlement:19 fcc6d115692f4a39ad0cd1665c40aded of +msgid "The ID of the application this entitlement belongs to." +msgstr "" + +#: 390ffbbcdbea4754bbbd4fa8dc55c4a1 discord.monetization.Entitlement:25 of +msgid "The ID of the user that owns this entitlement." +msgstr "" + +#: 6cb0d709a1ce4db0ac68dcdb6166f2fc discord.monetization.Entitlement:27 +#: discord.monetization.Entitlement:57 eb3c7861a13a491ea908638d3b775c62 of +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "" + +#: 6127f165c1f342a69f6e0693dc75a9f9 discord.monetization.Entitlement:31 of +msgid "The type of entitlement." +msgstr "" + +#: 7d438bff37c749b3950ffe589d702f9f discord.monetization.Entitlement:33 of +msgid ":class:`EntitlementType`" +msgstr "" + +#: discord.monetization.Entitlement:37 eeed4145d06f42de87ad7d9fa099ee64 of +msgid "Whether the entitlement has been deleted." +msgstr "" + +#: discord.monetization.Entitlement:43 e426dda4c7484e6c94320a0b89169497 of +msgid "When the entitlement starts." +msgstr "" + +#: 7d2c5e5d21084616a225b5b35ea056dc c2010b24b8dd4c6d88d0ecd78719e628 +#: discord.monetization.Entitlement:45 discord.monetization.Entitlement:51 of +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "" + +#: 455f169162d3445d83c04197602e6bac discord.monetization.Entitlement:49 of +msgid "When the entitlement expires." +msgstr "" + +#: a8a68a11ea664400b47e3c47bb207c13 discord.monetization.Entitlement:55 of +msgid "The ID of the guild that owns this entitlement." +msgstr "" + +#: 75e64b3cc68246fd9a86531d95c85d6e discord.monetization.Entitlement:61 of +msgid "" +"Whether or not this entitlement has been consumed. This will always be " +"``False`` for entitlements that are not of type " +":attr:`EntitlementType.consumable`." +msgstr "" + +#: 7007221d52574f1ab5ad1b0a27d15876 discord.monetization.Entitlement.consume:3 +#: of +msgid "Consumes this entitlement." +msgstr "" + +#: 48fb2081fef249e38e28e7ff56356232 discord.monetization.Entitlement.consume:5 +#: of +msgid "" +"This can only be done on entitlements of type " +":attr:`EntitlementType.consumable`." +msgstr "" + +#: 1a95e9e2ea00431a8d3081cad5c245c4 discord.monetization.Entitlement.consume:7 +#: of +msgid "The entitlement is not consumable." +msgstr "" + +#: discord.monetization.Entitlement.consume:8 fb894fb00daa46e8b8dae1d812d0c7b9 +#: of +msgid "Consuming the entitlement failed." +msgstr "" + +#: 3c25dcfd92364bf79c3674ab64f0c7b6 discord.monetization.Entitlement.delete:3 +#: of +msgid "Deletes a test entitlement." +msgstr "" + +#: 8fa876c4cba046589d6be6c002dc5805 discord.monetization.Entitlement.delete:5 +#: of +msgid "" +"A test entitlement is an entitlement that was created using " +":meth:`Guild.create_test_entitlement` or " +":meth:`User.create_test_entitlement`." +msgstr "" + +#: 03034a25ec2842b49ff30db4103d47ab discord.monetization.Entitlement.delete:7 +#: of +msgid "Deleting the entitlement failed." +msgstr "" + +#: ../../api/models.rst:118 e844acaaa52845ed85e5fd6814cb0f53 +msgid "Guild" +msgstr "" + +#: db1ab6b381fe4cf2a74999dd87bf4c66 discord.guild.Guild:1 of +msgid "Represents a Discord guild." +msgstr "" + +#: 6ea24a3ae2eb4c84acbdea570bb61225 discord.guild.Guild:3 of +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "" + +#: 366cf975af114c628f6c2dd3dc509e36 discord.guild.Guild:9 of +msgid "Checks if two guilds are equal." +msgstr "" + +#: 229df8b397124f35ba0f02f760cbca31 discord.guild.Guild:13 of +msgid "Checks if two guilds are not equal." +msgstr "" + +#: 9b50dcd790d04b489c01c87670b2a5c0 discord.guild.Guild:17 of +msgid "Returns the guild's hash." +msgstr "" + +#: 1cbf5b02d7d348cc9ad53a509759f84a discord.guild.Guild:21 of +msgid "Returns the guild's name." +msgstr "" + +#: 1a8044c512e34298a1e621c2018506b5 discord.guild.Guild:25 of +msgid "The guild name." +msgstr "" + +#: a49865a6df284e17adeb5f445d3524ff discord.guild.Guild:31 of +msgid "All emojis that the guild owns." +msgstr "" + +#: 258a28d33dbe4186945587d0e306c05b discord.guild.Guild:33 of +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "" + +#: 93bac270df3c4e049e8b16b766fedea4 discord.guild.Guild:37 of +msgid "All stickers that the guild owns." +msgstr "" + +#: 0887294ac6c94174b7099a5f75c5a4f7 discord.guild.Guild:41 of +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "" + +#: b43540d7ae864f39ab06e51116f8b67b discord.guild.Guild:45 of +msgid "The timeout to get sent to the AFK channel." +msgstr "" + +#: 8616d231b75a4b68b9d00fb946e6be36 discord.guild.Guild:51 of +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "" + +#: 4c522f09862f4ca68745afa6fe5084b0 discord.guild.Guild:53 of +msgid "Optional[:class:`VoiceChannel`]" +msgstr "" + +#: 0ea13064f858406d9a644970bab4738b 882f2ffccbb54152b08a3a1c84128add +#: discord.guild.Guild:57 discord.widget.Widget:19 of +msgid "The guild's ID." +msgstr "" + +#: c9538b5448934b30b766e0ae1d32918d discord.guild.Guild:63 of +msgid "Indicates if the guild invites are disabled." +msgstr "" + +#: 5e161c99d2614533a657fd69b38162ef discord.guild.Guild:69 of +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "" + +#: 678f43ad19ba4c61a33ce8f109f66203 discord.guild.Guild:75 of +msgid "" +"Indicates if the guild is unavailable. If this is ``True`` then the " +"reliability of other attributes outside of :attr:`Guild.id` is slim and " +"they might all be ``None``. It is best to not do anything with the guild " +"if it is unavailable." +msgstr "" + +#: discord.guild.Guild:79 e375ccafce024828b9792faeb45f8a70 of +msgid "" +"Check the :func:`on_guild_unavailable` and :func:`on_guild_available` " +"events." +msgstr "" + +#: bc2aad77e90e4ef89efa55be5b4b3c0c discord.guild.Guild:85 of +msgid "The maximum amount of presences for the guild." +msgstr "" + +#: 21f9958ddf3f47d88ffa435fa73d3e75 discord.guild.Guild:91 of +msgid "The maximum amount of members for the guild." +msgstr "" + +#: 30217731df6d4b218c05a58ba6c68105 discord.guild.Guild:95 of +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "" + +#: 40324476aaaa4b58ae2b3e97fc7595d9 discord.guild.Guild:101 of +msgid "The maximum amount of users in a video channel." +msgstr "" + +#: 7621b825fc6848199afd96d57cdb3c46 discord.guild.Guild:109 of +msgid "The guild's description." +msgstr "" + +#: afd0570ec40e46bf9dd1d40f2894791b discord.guild.Guild:115 of +msgid "" +"Indicates the guild's two-factor authorisation level. If this value is 0 " +"then the guild does not require 2FA for their administrative members. If " +"the value is 1 then they do." +msgstr "" + +#: 058f5112199e488192d7833ff52a640b discord.guild.Guild:123 of +msgid "The guild's verification level." +msgstr "" + +#: 30f9afd8d244416dbcacd423e52553d9 discord.guild.Guild:125 +#: discord.invite.PartialInviteGuild:40 fc441b8a398a45528430a0b152144c74 of +msgid ":class:`VerificationLevel`" +msgstr "" + +#: discord.guild.Guild:129 f5dde26f539a4a519dfd9d17d13e77dd of +msgid "The guild's explicit content filter." +msgstr "" + +#: 8eabd9ce697640f598d06c0958ad8883 discord.guild.Guild:131 of +msgid ":class:`ContentFilter`" +msgstr "" + +#: discord.guild.Guild:135 fb017f4588244305b97543cecc6f7327 of +msgid "The guild's notification settings." +msgstr "" + +#: 7697e3149f17414f9cd6205716954255 discord.guild.Guild:137 of +msgid ":class:`NotificationLevel`" +msgstr "" + +#: 96094a79a794453ca947a68e85a7ac9d discord.guild.Guild:141 of +msgid "" +"A list of features that the guild has. The features that a guild can have" +" are subject to arbitrary change by Discord. You can find a catalog of " +"guild features `here `_." +msgstr "" + +#: 1062d87a1499437b8d0fad52243a2c42 402fe8591df646adab6f23b2f9d9081b +#: discord.automod.AutoModTriggerMetadata:29 +#: discord.automod.AutoModTriggerMetadata:38 +#: discord.automod.AutoModTriggerMetadata:52 discord.guild.Guild:145 +#: discord.invite.PartialInviteGuild:46 discord.sticker.StandardSticker:53 of +msgid "List[:class:`str`]" +msgstr "" + +#: 2c052457608241eba3b00da2a2a12fde discord.guild.Guild:149 of +msgid "" +"The premium tier for this guild. Corresponds to \"Nitro Server\" in the " +"official UI. The number goes from 0 to 3 inclusive." +msgstr "" + +#: 7c4970cbb42d464999f7d038ad54c407 discord.guild.Guild:156 of +msgid "The number of \"boosts\" this guild currently has." +msgstr "" + +#: b13ceeec9b754f61ae4851568efe13d3 discord.guild.Guild:162 of +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "" + +#: 450c59c978d0455da13ab5e457f9d5bb discord.guild.Guild:170 of +msgid "" +"The preferred locale for the guild. Used when filtering Server Discovery " +"results to a specific language." +msgstr "" + +#: 512295e7ee00418eb57569f797cf38bd discord.guild.Guild:177 of +msgid "The guild's NSFW level." +msgstr "" + +#: cb80e8016d41430cabcaa25c939547ec discord.guild.Guild:181 of +msgid ":class:`NSFWLevel`" +msgstr "" + +#: 4fd548acdbe942b6991c79437ea7f900 discord.guild.Guild:185 of +msgid "" +"The approximate number of members in the guild. This is ``None`` unless " +"the guild is obtained using :meth:`Client.fetch_guild` with " +"``with_counts=True``." +msgstr "" + +#: 6482522942c045cfaf1b031b70eb826a discord.guild.Guild:194 of +msgid "" +"The approximate number of members currently active in the guild. This " +"includes idle, dnd, online, and invisible members. Offline members are " +"excluded. This is ``None`` unless the guild is obtained using " +":meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "" + +#: 0120dd3a92464615b401de79efb6e0d9 discord.guild.Guild.fetch_members:1 of +msgid "" +"Retrieves an :class:`.AsyncIterator` that enables receiving the guild's " +"members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "" + +#: discord.guild.Guild.fetch_members:6 fb2df2dda5d44726afe47364f6c07cc3 of +msgid "" +"This method is an API call. For general usage, consider :attr:`members` " +"instead." +msgstr "" + +#: 23c7ea33859848df952ea7e2cf3208d6 discord.guild.Guild.fetch_members:13 of +msgid "" +"The number of members to retrieve. Defaults to 1000. Pass ``None`` to " +"fetch all members. Note that this is potentially slow." +msgstr "" + +#: af75813c15d24e61b162b7b6c73903e0 discord.guild.Guild.fetch_members:17 of +msgid "" +"Retrieve members after this date or object. If a datetime is provided, it" +" is recommended to use a UTC aware datetime. If the datetime is naive, it" +" is assumed to be local time." +msgstr "" + +#: ce79475da5b3429490204a963d62eb31 discord.guild.Guild.fetch_members:22 of +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr "" + +#: 31b960ea95b743da9185fea00ff094d8 9cb64e499c0f479382a5ec14961861e2 +#: discord.guild.Guild.chunk:14 discord.guild.Guild.fetch_members:24 of +msgid "The members intent is not enabled." +msgstr "" + +#: 077d9bc4af6441c6a5ed391c7ac1e1d2 5641b671700a4bf3b21a2239f64e9cd8 +#: discord.guild.Guild.fetch_members:25 discord.guild.Guild.search_members:19 +#: of +msgid "Getting the members failed." +msgstr "" + +#: 3fe2216ce94246bda3794d4c16683ddd discord.guild.Guild.fetch_members:26 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr "" + +#: 081c6429caa04e0a8c5e5dbf3e7662c7 4c5a13c5676c44cc86de248b93dd8baa +#: discord.guild.Guild.bans:41 discord.guild.Guild.fetch_members:35 of +msgid "Flattening into a list ::" +msgstr "" + +#: ae8d71971791441db70367c5a6d14451 discord.guild.Guild.audit_logs:1 of +msgid "" +"Returns an :class:`AsyncIterator` that enables receiving the guild's " +"audit logs." +msgstr "" + +#: 888f32c854a1461e9e8a19497ea6576e discord.guild.Guild.audit_logs:3 of +msgid "" +"You must have the :attr:`~Permissions.view_audit_log` permission to use " +"this." +msgstr "" + +#: 2c14687569f44565a2b9669476dcb351 discord.guild.Guild.audit_logs:5 of +msgid "" +"See `API documentation `_ for more information about the `before`" +" and `after` parameters." +msgstr "" + +#: discord.guild.Guild.audit_logs:9 fb2eba26c34c411ca8bbe737728d0a39 of +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "" + +#: 5cf3fb6971b44875b110b8bf4e68ed39 discord.guild.Guild.audit_logs:12 of +msgid "" +"Retrieve entries before this date or entry. If a datetime is provided, it" +" is recommended to use a UTC aware datetime. If the datetime is naive, it" +" is assumed to be local time." +msgstr "" + +#: a3d821e0288a4f5c8eeac00a68f740d9 discord.guild.Guild.audit_logs:17 of +msgid "" +"Retrieve entries after this date or entry. If a datetime is provided, it " +"is recommended to use a UTC aware datetime. If the datetime is naive, it " +"is assumed to be local time." +msgstr "" + +#: 6cd1626aa86e49e383b0cd2cd3538dd9 discord.guild.Guild.audit_logs:22 of +msgid "The moderator to filter entries from." +msgstr "" + +#: 14e26f608aa6430a92c507d3647cb792 discord.guild.Guild.audit_logs:25 of +msgid "The action to filter with." +msgstr "" + +#: 509ca146023a4b0b8f0d92909152f46d discord.guild.Guild.audit_logs:28 of +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr "" + +#: discord.guild.Guild.audit_logs:30 f6f6cae23df840329202e2ff1533930a of +msgid "You are not allowed to fetch audit logs" +msgstr "" + +#: 853d3de6365f4416975a212373d7fc6a discord.guild.Guild.audit_logs:31 of +msgid "An error occurred while fetching the audit logs." +msgstr "" + +#: 71a9a557b42348ec8e3746a3f51ea658 discord.guild.Guild.audit_logs:32 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr "" + +#: cc8f18ece4004b4e8d0bdadbebccf25f discord.guild.Guild.audit_logs:36 of +msgid "Getting the first 100 entries: ::" +msgstr "" + +#: 99f720978c984a339eba44173d6a39c1 discord.guild.Guild.audit_logs:41 of +msgid "Getting entries for a specific action: ::" +msgstr "" + +#: cc73d866480b4b3db62be86a652f10b9 discord.guild.Guild.audit_logs:46 of +msgid "Getting entries made by a specific user: ::" +msgstr "" + +#: 6ce1830b26764a30a5e526eeaa23b59f discord.Guild.channels:1 of +msgid "A list of channels that belong to this guild." +msgstr "" + +#: 2d77e18619ef45009234869221d9121c discord.Guild.threads:1 of +msgid "A list of threads that you have permission to view." +msgstr "" + +#: 40d9ed8c7b2a49a89fdb8479d6c0cacc discord.Guild.jump_url:1 of +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "" + +#: 3d4d9b02116d4da4ad340477b0e48753 discord.Guild.large:1 of +msgid "Indicates if the guild is a 'large' guild." +msgstr "" + +#: b9a7a645115c4ce48b106b7a1a01a40e discord.Guild.large:3 of +msgid "" +"A large guild is defined as having more than ``large_threshold`` count " +"members, which for this library is set to the maximum of 250." +msgstr "" + +#: a6d6d0cf319d424fb1c0ca09689b9157 discord.Guild.voice_channels:1 of +msgid "A list of voice channels that belong to this guild." +msgstr "" + +#: 373e876152f148038089f956a932f20c 3b767c7eca7b4c108c0b8a1ec2392e54 +#: 8cd16538342347349db85c45c4048567 92654e54cec845f2b651b5237c632afb +#: discord.Guild.categories:3 discord.Guild.forum_channels:5 +#: discord.Guild.stage_channels:5 discord.Guild.text_channels:3 +#: discord.Guild.voice_channels:3 f180923c6bfe4725a27df0027fcc0aab of +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "" + +#: bbbf7717cf1e4bc3bb698d09ffc8a345 discord.Guild.stage_channels:1 of +msgid "A list of stage channels that belong to this guild." +msgstr "" + +#: discord.Guild.forum_channels:1 f7ef4b1006854a04a171bc2e321489b6 of +msgid "A list of forum channels that belong to this guild." +msgstr "" + +#: 5aba6d2a00dd4aa4818d5f17ba085874 discord.Guild.me:1 of +msgid "" +"Similar to :attr:`Client.user` except an instance of :class:`Member`. " +"This is essentially used to get the member version of yourself." +msgstr "" + +#: b6776b60c00e49bab33fedb2af1df73f discord.Guild.voice_client:1 of +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "" + +#: 2cd56f1919f54ac8a3d8634aa1ae7a60 discord.Guild.text_channels:1 of +msgid "A list of text channels that belong to this guild." +msgstr "" + +#: 22b43fc194e344c08456c90f8ccc357c discord.Guild.categories:1 of +msgid "A list of categories that belong to this guild." +msgstr "" + +#: 5d91fd36b588460390754e6fd167d425 discord.guild.Guild.by_category:1 of +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "" + +#: discord.guild.Guild.by_category:3 e8278239d98d46b1a52f50039ea88c4a of +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "" + +#: 5abcb3095e764520976db20ad48da11a discord.guild.Guild.by_category:5 of +msgid "" +"If the channels do not have a category, then the first element of the " +"tuple is ``None``." +msgstr "" + +#: 4fbcb98503744d30b86ce12cbe73a634 discord.guild.Guild.by_category:8 of +msgid "The categories and their associated channels." +msgstr "" + +#: cda56a62a87d49d48faaadbf7c0763b5 discord.guild.Guild.by_category:9 of +msgid "" +"List[Tuple[Optional[:class:`CategoryChannel`], " +"List[:class:`abc.GuildChannel`]]]" +msgstr "" + +#: 3cf03eac3bf54951a9d1b63afa4fad2f discord.guild.Guild.get_channel_or_thread:1 +#: of +msgid "Returns a channel or thread with the given ID." +msgstr "" + +#: 3a1180e1deb44b6a8374aee179bde960 4f51145163c24784940599506be8b039 +#: 56c6c525daa045cca9d6990eb2a7785c 6fb31e7daaac48ecb8ae0f2ad021074f +#: 8e5457f352a34ed48d5a54f0cc4bd840 9b4160356f9649e1a8abcfdaf94ea03a +#: b9a5cb9dcc2a445e84a4df4707c5497a discord.channel._TextChannel.get_thread:6 +#: discord.guild.Guild.get_channel:8 +#: discord.guild.Guild.get_channel_or_thread:6 discord.guild.Guild.get_member:4 +#: discord.guild.Guild.get_role:4 discord.guild.Guild.get_scheduled_event:4 +#: discord.guild.Guild.get_stage_instance:6 discord.guild.Guild.get_thread:6 +#: discord.member.Member.get_role:6 of +msgid "The ID to search for." +msgstr "" + +#: 73cc5f097e0047fdaafa76a89e0d26f6 discord.guild.Guild.get_channel_or_thread:9 +#: of +msgid "The returned channel or thread or ``None`` if not found." +msgstr "" + +#: 77fc52a6e5c84cbf9bc3c58a7a94bd18 +#: discord.guild.Guild.get_channel_or_thread:10 of +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "" + +#: 7c63100096a24c67ba8c3fa77d186380 discord.guild.Guild.get_channel:1 of +msgid "Returns a channel with the given ID." +msgstr "" + +#: aa4d6cd6520845c5b47ba50e98855219 discord.guild.Guild.get_channel:5 of +msgid "This does *not* search for threads." +msgstr "" + +#: discord.guild.Guild.get_channel:11 ff8cc3b719644dccb57c090f5d814d48 of +msgid "The returned channel or ``None`` if not found." +msgstr "" + +#: 99732313fb2b45068a8b7f1756b51876 discord.guild.Guild.get_channel:12 of +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "" + +#: 063021b717da4ac1bbe2b9d24f4e77a8 6756f4807ebc43bb9fcd4ade90cb9a0c +#: discord.channel._TextChannel.get_thread:1 discord.guild.Guild.get_thread:1 +#: of +msgid "Returns a thread with the given ID." +msgstr "" + +#: 0b52a378783845b9a553efe578dab819 2b49c4d121db43b194ffa1bfff78a702 +#: discord.channel._TextChannel.get_thread:9 discord.guild.Guild.get_thread:9 +#: of +msgid "The returned thread or ``None`` if not found." +msgstr "" + +#: c3e97d65cd5d406e9b8fe6c3548cb16d discord.Guild.system_channel:1 of +msgid "Returns the guild's channel used for system messages." +msgstr "" + +#: 2ae6c126f58341fc988bfa1804274039 9e3d2735e47a433f876420b2db8a5da2 +#: a64c2c61a8224e0bb4226e11ef4994a6 discord.Guild.public_updates_channel:5 +#: discord.Guild.rules_channel:4 discord.Guild.system_channel:3 of +msgid "If no channel is set, then this returns ``None``." +msgstr "" + +#: 42fb2ad7ac984b2fb420d833affbecaf discord.Guild.system_channel_flags:1 of +msgid "Returns the guild's system channel settings." +msgstr "" + +#: 79cdc8efcf314c76ad5285ef3ac7d66d discord.Guild.rules_channel:1 of +msgid "" +"Return's the guild's channel used for the rules. The guild must be a " +"Community guild." +msgstr "" + +#: 4cdbc6c8e74f4434b7b96631dd4e8ac0 discord.Guild.public_updates_channel:1 of +msgid "" +"Return's the guild's channel where admins and moderators of the guilds " +"receive notices from Discord. The guild must be a Community guild." +msgstr "" + +#: 87332d6da80941448cf805bef2040e2f discord.Guild.emoji_limit:1 of +msgid "The maximum number of emoji slots this guild has." +msgstr "" + +#: 87fb8a5cd4a64448920bc860483db18a discord.Guild.sticker_limit:1 of +msgid "The maximum number of sticker slots this guild has." +msgstr "" + +#: 382f34f464964f41b660ca62580be5b0 discord.Guild.bitrate_limit:1 of +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "" + +#: 50b9637ed32944ce8d4d032493bd94af discord.Guild.filesize_limit:1 of +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "" + +#: c1634d0bf11144208238d3422e50572f discord.Guild.members:1 of +msgid "A list of members that belong to this guild." +msgstr "" + +#: 9e1bfb5c6d3c429fbad485e4e0911755 discord.guild.Guild.get_member:1 of +msgid "Returns a member with the given ID." +msgstr "" + +#: 11899c35315748e0af61b02ca2c67e7b discord.guild.Guild.get_member:7 of +msgid "The member or ``None`` if not found." +msgstr "" + +#: 3dd36482d6584e0caa30ff04b7f88ac2 discord.guild.Guild.get_member:8 +#: discord.guild.Guild.get_member_named:21 +#: discord.raw_models.AutoModActionExecutionEvent:47 +#: discord.raw_models.RawReactionActionEvent:40 +#: discord.raw_models.RawTypingEvent:33 e66d8f3d8faf4bf1b19074324f7b4f06 +#: ea5ce4db5209427392e12d73651f271b of +msgid "Optional[:class:`Member`]" +msgstr "" + +#: 9620482fa56a459eabd21941ab8d6849 discord.Guild.premium_subscribers:1 of +msgid "A list of members who have \"boosted\" this guild." +msgstr "" + +#: bf330cfe91ee46c49b95aea56ab062a4 discord.Guild.roles:1 of +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "" + +#: 0377dec4d9d0431b87fefbf7989a745b discord.Guild.roles:3 of +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "" + +#: 8f5df98b969a48cb85026bf9c8d2ed81 discord.guild.Guild.get_role:1 of +msgid "Returns a role with the given ID." +msgstr "" + +#: 75f2adc480a74d009cd6a50616a74db2 discord.guild.Guild.get_role:7 of +msgid "The role or ``None`` if not found." +msgstr "" + +#: 49faa26614694f83a8a1031e5b037fc0 a59751e769344c159a35d97d289207ab +#: discord.guild.Guild.get_role:8 discord.member.Member.get_role:10 of +msgid "Optional[:class:`Role`]" +msgstr "" + +#: discord.Guild.default_role:1 f4fc8210064941dbb8869f5e26c39a3a of +msgid "Gets the @everyone role that all members have by default." +msgstr "" + +#: 32b04d6a2dde453fa99673b5d4b6dd65 discord.Guild.premium_subscriber_role:1 of +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "" + +#: 281b90db195b429d989343b55c507a32 discord.Guild.self_role:1 of +msgid "Gets the role associated with this client's user, if any." +msgstr "" + +#: c13aa5fc5ca24a538fa770acba338f68 discord.Guild.stage_instances:1 of +msgid "" +"Returns a :class:`list` of the guild's stage instances that are currently" +" running." +msgstr "" + +#: discord.guild.Guild.get_stage_instance:1 fc99eb73f72942eea987ad13cc9e1d81 of +msgid "Returns a stage instance with the given ID." +msgstr "" + +#: b6bb1a2527644e4b87b69d5db0262f3b discord.guild.Guild.get_stage_instance:9 of +msgid "The stage instance or ``None`` if not found." +msgstr "" + +#: 9a1967e478074ccaa951da219250162b discord.guild.Guild.get_stage_instance:10 +#: of +msgid "Optional[:class:`StageInstance`]" +msgstr "" + +#: discord.Guild.owner:1 ebfa0bfbc6de4d2ab737e25be9da32dd of +msgid "The member that owns the guild." +msgstr "" + +#: 9edfce4f13344022a20bc5d74a5618f8 d8382b4b46e949acbd18ad7290999e60 +#: discord.Guild.icon:1 discord.PartialInviteGuild.icon:1 +#: discord.PartialWebhookGuild.icon:1 of +msgid "Returns the guild's icon asset, if available." +msgstr "" + +#: 79b98460de4a45918567ea4ed97db67b cdc6de4d93d84126981872de7ddfd9e4 +#: discord.Guild.banner:1 discord.PartialInviteGuild.banner:1 of +msgid "Returns the guild's banner asset, if available." +msgstr "" + +#: 1503595c1aad4549a6988e6597add1bd 617b62d85d634607ba8b35af07a4aed2 +#: discord.Guild.splash:1 discord.PartialInviteGuild.splash:1 of +msgid "Returns the guild's invite splash asset, if available." +msgstr "" + +#: 277e63e39cce4b76b7a0c9f020c5bd43 discord.Guild.discovery_splash:1 of +msgid "Returns the guild's discovery splash asset, if available." +msgstr "" + +#: 25aaad6f80ad4572b4f36923fb9f132b discord.Guild.member_count:1 of +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "" + +#: b7ccf0f88ffa435688d7e3fe61ba00fa discord.Guild.member_count:5 of +msgid "" +"Due to a Discord limitation, in order for this attribute to remain up-to-" +"date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "" + +#: 3a535c2ef8d6481282d9ef9ed786082c discord.Guild.chunked:1 of +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "" + +#: 239d55a0fbfd45539a7a3e9b81987630 discord.Guild.chunked:3 of +msgid "" +"A chunked guild means that :attr:`member_count` is equal to the number of" +" members stored in the internal :attr:`members` cache." +msgstr "" + +#: bfd0b7b89f9d499fb1319f6072489e7f discord.Guild.chunked:6 of +msgid "" +"If this value returns ``False``, then you should request for offline " +"members." +msgstr "" + +#: c834ed32571a45efaf70049924028c84 discord.Guild.shard_id:1 of +msgid "Returns the shard ID for this guild if applicable." +msgstr "" + +#: 2a63da98f7714298bd86c262529e96fc 98a9abb4d99d4af6a1bc90dead64714b +#: discord.Guild.created_at:1 discord.PartialInviteGuild.created_at:1 of +msgid "Returns the guild's creation time in UTC." +msgstr "" + +#: 21438da4623b4f089e64f5fd9065d2c8 discord.Guild.invites_disabled:1 of +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "" + +#: 389668f9993d42cb9e8b13be6aedaa12 discord.guild.Guild.get_member_named:1 of +msgid "Returns the first member found that matches the name provided." +msgstr "" + +#: 5a17c55789534edba8bf8ff9e15f399e discord.guild.Guild.get_member_named:3 of +msgid "" +"The name can have an optional discriminator argument, e.g. \"Jake#0001\" " +"or \"Jake\" will both do the lookup. However, the former will give a more" +" precise result. Note that the discriminator must have all 4 digits for " +"this to work." +msgstr "" + +#: d458dfa7d494407a91d3c42d7b71cb21 discord.guild.Guild.get_member_named:8 of +msgid "" +"If a nickname is passed, then it is looked up via the nickname. Note " +"however, that a nickname + discriminator combo will not look up the " +"nickname but rather the username + discriminator combo due to nickname + " +"discriminator not being unique." +msgstr "" + +#: b6257865a85f4b6680875aa63c4badde discord.guild.Guild.get_member_named:13 of +msgid "If no member is found, ``None`` is returned." +msgstr "" + +#: 1dfe62681b2f48f295a5625f440b6665 discord.guild.Guild.get_member_named:16 of +msgid "The name of the member to lookup with an optional discriminator." +msgstr "" + +#: discord.guild.Guild.get_member_named:19 e1562c59250e48369ff2dfd424899106 of +msgid "" +"The member in this guild with the associated name. If not found then " +"``None`` is returned." +msgstr "" + +#: 18d743c07fc04fdca34d8ecf8c42d49c discord.guild.Guild.create_text_channel:3 +#: of +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "" + +#: 7ccbcfbc7c0245ebaf80c63fa46ca066 d15d11b0f7884cfa9ce8b8e10b0f0081 +#: discord.guild.Guild.create_forum_channel:5 +#: discord.guild.Guild.create_text_channel:5 of +msgid "" +"Note that you need the :attr:`~Permissions.manage_channels` permission to" +" create the channel." +msgstr "" + +#: 0826bc86fc6844d7bd523a337d246ef2 59dc80266fe441d8a613d4b177b2519c +#: discord.guild.Guild.create_forum_channel:8 +#: discord.guild.Guild.create_text_channel:8 of +msgid "" +"The ``overwrites`` parameter can be used to create a 'secret' channel " +"upon creation. This parameter expects a :class:`dict` of overwrites with " +"the target (either a :class:`Member` or a :class:`Role`) as the key and a" +" :class:`PermissionOverwrite` as the value." +msgstr "" + +#: cd41b65a000942078be736927f9af9cf discord.guild.Guild.create_text_channel:15 +#: of +msgid "" +"Creating a channel of a specified position will not update the position " +"of other channels to follow suit. A follow-up call to " +":meth:`~TextChannel.edit` will be required to update the position of the " +"channel in the channel list." +msgstr "" + +#: 1609f6ef955b46daa8feab89aed3f130 3caddaa8be9748a0b5c7e2b6d20702cd +#: 436aeddd681b4340bb158dac6a294899 baa4ae0af73d42ccbd4f2ab5592b2b5b +#: discord.guild.Guild.create_forum_channel:20 +#: discord.guild.Guild.create_stage_channel:8 +#: discord.guild.Guild.create_text_channel:20 +#: discord.guild.Guild.create_voice_channel:6 discord.widget.WidgetChannel:29 +#: f04ba645478941639f2375ddc8661948 of +msgid "The channel's name." +msgstr "" + +#: 0c2adeba36d84af9aeff4fd8ffa5d7a7 3790b49ca326407bacd99677d85e7ca1 +#: d061fcc33b574ffba76bef2a087460c8 discord.guild.Guild.create_forum_channel:23 +#: discord.guild.Guild.create_stage_channel:14 +#: discord.guild.Guild.create_text_channel:23 +#: discord.guild.Guild.create_voice_channel:9 e755d7a964c3468b8f7905f13a5ce264 +#: of +msgid "" +"The overwrites to apply to the channel. Useful for creating secret " +"channels." +msgstr "" + +#: 1edd8ba28a214a2689b68c958b267c2f 6f4ba6a61d134a19a4351fe041cd967f +#: 9d06515f3f7641b09dbaf639bb7e6587 d1087d9122e94791b0aa20790b0e668a +#: discord.guild.Guild.create_forum_channel:26 +#: discord.guild.Guild.create_stage_channel:17 +#: discord.guild.Guild.create_text_channel:26 +#: discord.guild.Guild.create_voice_channel:12 of +msgid "" +"The category to place the newly created channel under. The permissions " +"will be automatically synced to category if no overwrites are provided." +msgstr "" + +#: 0848ff8e94324c9db997de2a3c123e40 53e9a8d1ef7c486db9167ae9c78bb56c +#: c9a5417638814f06a3b018b6aa0838d6 ccdf540d4f874713bd55b15253bc98d8 +#: discord.guild.Guild.create_forum_channel:31 +#: discord.guild.Guild.create_stage_channel:22 +#: discord.guild.Guild.create_text_channel:31 +#: discord.guild.Guild.create_voice_channel:17 of +msgid "" +"The position in the channel list. This is a number that starts at 0. e.g." +" the top channel is position 0." +msgstr "" + +#: 2bc1d86a3c9d4ed2bcdcafe7083bdbca 445e7ca3ca40409399381cc3fa66c395 +#: b12af80947024bd196b707459a1c7ab1 b2201c903bb4444c92177c8cff398d07 +#: discord.channel.ForumChannel.edit:10 discord.channel.TextChannel.edit:19 +#: discord.guild.Guild.create_forum_channel:35 +#: discord.guild.Guild.create_stage_channel:11 +#: discord.guild.Guild.create_text_channel:35 of +msgid "The new channel's topic." +msgstr "" + +#: 04bb9a8b4c6a47a8ab232c8d41007089 9e9dd9425b054fcfb714c7318b17daaa +#: discord.guild.Guild.create_forum_channel:38 +#: discord.guild.Guild.create_text_channel:38 of +msgid "" +"Specifies the slowmode rate limit for user in this channel, in seconds. " +"The maximum value possible is `21600`." +msgstr "" + +#: 158f4a82c5184ed186f0c45d5ca5b0d7 5249f14b4df34180913d70dc0424dff8 +#: 6e0e5f25fba64a62b1ac7c005cb3c4aa discord.channel.ForumChannel.edit:14 +#: discord.channel.TextChannel.edit:23 +#: discord.guild.Guild.create_forum_channel:42 +#: discord.guild.Guild.create_text_channel:42 of +msgid "To mark the channel as NSFW or not." +msgstr "" + +#: 017d65bacf3b4bfbbd241ed984235147 2a5da0498eb4468e95bc376c2e663bb2 +#: 9adb04fec50a471792f88440104c745e c4783994e88f4aeb9f00f605dc7aac4b +#: discord.guild.Guild.create_forum_channel:45 +#: discord.guild.Guild.create_stage_channel:26 +#: discord.guild.Guild.create_text_channel:45 +#: discord.guild.Guild.create_voice_channel:38 of +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "" + +#: 04c22cfc54c044df8a63b0d3dbd206b3 10f333753a3f485ab9e166f5fa769198 +#: 1cd37bb095e24c0cb549434848340622 33ff9c9a82b64c10a83c4add616fdc82 +#: 62cd93ababdf4cfd9cce9f1a801e775d a47b33dd7e3e423bbc5cb05c12895fc7 +#: discord.channel.CategoryChannel.create_forum_channel:7 +#: discord.channel.CategoryChannel.create_stage_channel:7 +#: discord.channel.CategoryChannel.create_text_channel:5 +#: discord.channel.CategoryChannel.create_voice_channel:5 +#: discord.guild.Guild.create_category:10 +#: discord.guild.Guild.create_forum_channel:55 +#: discord.guild.Guild.create_stage_channel:29 +#: discord.guild.Guild.create_text_channel:48 +#: discord.guild.Guild.create_voice_channel:41 fde12a59435846c39cb0f10c1e144e14 +#: of +msgid "The channel that was just created." +msgstr "" + +#: 809a9a177767412ea6242641e68be16f 8b6a84cc25c349419c31de47c2303d96 +#: discord.channel.CategoryChannel.create_text_channel:6 +#: discord.guild.Guild.create_text_channel:49 of +msgid ":class:`TextChannel`" +msgstr "" + +#: 0114eb9f7deb4dadaa52b41a0ecda85d 4add16d398aa4f518bf3f72e29c63eb3 +#: 58e3a614336b400e90a85ec0941087e2 7e15a4a056c44b6aa411b98f9832c52d +#: c80ea61f690a43b1b33e04f5455833b6 c9655e17e69d47da801e88fca3d16f86 +#: discord.channel.CategoryChannel.clone:22 +#: discord.channel.StageChannel.clone:22 discord.channel.VoiceChannel.clone:22 +#: discord.channel._TextChannel.clone:22 discord.guild.Guild.create_category:13 +#: discord.guild.Guild.create_forum_channel:58 +#: discord.guild.Guild.create_stage_channel:32 +#: discord.guild.Guild.create_text_channel:51 +#: discord.guild.Guild.create_voice_channel:44 f8709c4a529b4bdf9a369a9e4fb45a7e +#: of +msgid "You do not have the proper permissions to create this channel." +msgstr "" + +#: 45065f4fa65d4bd8baf39aa0a4aae98e 6000a8b302d348b6bcc347bfd2d4a1ca +#: a152e92313ea4bb89cecd1b6400cdbc6 abfcf22ceae94b8ba266c29a2fa8ba6c +#: c9330770911546dd87b510a3ebe4cb6e discord.channel.CategoryChannel.clone:23 +#: discord.channel.StageChannel.clone:23 discord.channel.VoiceChannel.clone:23 +#: discord.channel._TextChannel.clone:23 discord.guild.Guild.create_category:14 +#: discord.guild.Guild.create_forum_channel:59 +#: discord.guild.Guild.create_stage_channel:33 +#: discord.guild.Guild.create_text_channel:52 +#: discord.guild.Guild.create_voice_channel:45 e3fbf7d8bf344cd0b81613c462bf5066 +#: ff2795e7198d4a86b02989a21cf39afa of +msgid "Creating the channel failed." +msgstr "" + +#: 0b663ebdee664572bfd1ee200898c6c4 18e2b63aff2d4d938974528b742d4c88 +#: 353e85d3c97d4d3f976c9a308e8dcd37 7bf63611242a4cdc9df3378f7c4b7143 +#: 83ae3be9003e4fc1af548a97fff9850d discord.guild.Guild.create_category:15 +#: discord.guild.Guild.create_stage_channel:34 +#: discord.guild.Guild.create_text_channel:53 +#: discord.guild.Guild.create_voice_channel:46 of +msgid "The permission overwrite information is not in proper form." +msgstr "" + +#: 7df77a377a454968b06f3a9737d86455 discord.guild.Guild.create_forum_channel:64 +#: discord.guild.Guild.create_text_channel:57 f84b5551f533496385cc0f08cdb31bcf +#: of +msgid "Creating a basic channel:" +msgstr "" + +#: aad25d44f07241feb96ce590433a0d06 d02100cc73e84244915ea5042b7d93b7 +#: discord.guild.Guild.create_forum_channel:70 +#: discord.guild.Guild.create_text_channel:63 of +msgid "Creating a \"secret\" channel:" +msgstr "" + +#: a7ac1b9755e64488ba4b0ef8ce4dba06 discord.guild.Guild.create_voice_channel:3 +#: of +msgid "" +"This is similar to :meth:`create_text_channel` except makes a " +":class:`VoiceChannel` instead." +msgstr "" + +#: da6c567358d2457a8328b9419aba1b0c discord.channel.StageChannel:62 +#: discord.channel.VoiceChannel:54 discord.guild.Guild.create_voice_channel:21 +#: e4a529edf2a7427d9f0d448e950c5a3d of +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "" + +#: 61e6218add924882b4544d4f65fe3038 b45a714586514aa199c2aa4f8fd70cfc +#: discord.channel.VoiceChannel:60 discord.guild.Guild.create_voice_channel:24 +#: of +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "" + +#: 77472c0b87ee4c12919534435862d712 discord.guild.Guild.create_voice_channel:27 +#: of +msgid "" +"The region for the voice channel's voice communication. A value of " +"``None`` indicates automatic voice region detection. .. versionadded:: " +"1.7" +msgstr "" + +#: a012c67cbf8c4c758c6232633b5b90b4 ae62841317554b39b2c03b27fb66f7c4 +#: discord.channel.VoiceChannel:66 discord.guild.Guild.create_voice_channel:27 +#: of +msgid "" +"The region for the voice channel's voice communication. A value of " +"``None`` indicates automatic voice region detection." +msgstr "" + +#: 143d16193a8a48bca8f44b6c8f8b294c 198ebaf4f6584b8abd4208269d8a7f60 +#: discord.channel.VoiceChannel.edit:38 +#: discord.guild.Guild.create_voice_channel:33 of +msgid "" +"The camera video quality for the voice channel's participants. .. " +"versionadded:: 2.0" +msgstr "" + +#: 41726a9352834d8eb39464ddde36de96 discord.channel.VoiceChannel:75 +#: discord.channel.VoiceChannel.edit:38 +#: discord.guild.Guild.create_voice_channel:33 f81dfca9eaf142aabf6243ffebb15d3a +#: of +msgid "The camera video quality for the voice channel's participants." +msgstr "" + +#: 882663e87fa341189dff841fac58e4ba c5cb71ee58114ad9a77c365f6c9176be +#: discord.channel.CategoryChannel.create_voice_channel:6 +#: discord.guild.Guild.create_voice_channel:42 of +msgid ":class:`VoiceChannel`" +msgstr "" + +#: 63e5deabd69a4e71b26eabfb7b24de5d discord.guild.Guild.create_stage_channel:3 +#: of +msgid "" +"This is similar to :meth:`create_text_channel` except makes a " +":class:`StageChannel` instead." +msgstr "" + +#: 3682e80e1aff4ac38504209bf3c75b67 c125cd5cd18a4cc9bc46d5d9206d57e7 +#: discord.channel.CategoryChannel.create_stage_channel:8 +#: discord.guild.Guild.create_stage_channel:30 of +msgid ":class:`StageChannel`" +msgstr "" + +#: c2b2f7d2a8a84fc88f7a5a1071887bf2 discord.guild.Guild.create_forum_channel:3 +#: of +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "" + +#: 6a39c30db0244703b82139035e88f91d discord.guild.Guild.create_forum_channel:15 +#: of +msgid "" +"Creating a channel of a specified position will not update the position " +"of other channels to follow suit. A follow-up call to " +":meth:`~ForumChannel.edit` will be required to update the position of the" +" channel in the channel list." +msgstr "" + +#: discord.guild.Guild.create_forum_channel:48 eb7dfe39426b4d8abafbed2980956151 +#: of +msgid "" +"The default reaction emoji. Can be a unicode emoji or a custom emoji in " +"the forms: :class:`Emoji`, snowflake ID, string representation (eg. " +"''). .. versionadded:: v2.5" +msgstr "" + +#: 674bb951bf6f4615bdd90432ab644f2c acba40fd9b99460bb43889ba61c943d4 +#: discord.channel.ForumChannel.edit:41 +#: discord.guild.Guild.create_forum_channel:48 of +msgid "" +"The default reaction emoji. Can be a unicode emoji or a custom emoji in " +"the forms: :class:`Emoji`, snowflake ID, string representation (eg. " +"'')." +msgstr "" + +#: 18dbe7f3736a46b086fab0dc3f51122f 40f5253a0a994369be22ef233358809c +#: discord.channel.CategoryChannel.create_forum_channel:8 +#: discord.guild.Guild.create_forum_channel:56 of +msgid ":class:`ForumChannel`" +msgstr "" + +#: a86092ffb99e4f6d861dfb93fcdd2b28 discord.guild.Guild.create_forum_channel:60 +#: of +msgid "The argument is not in proper form." +msgstr "" + +#: 79a4e988b37d4e64afe1d69afb920ca7 9bdb1e626e5b4c1f9dad1bb9f2df7372 +#: discord.guild.Guild.create_category:3 of +msgid "" +"Same as :meth:`create_text_channel` except makes a " +":class:`CategoryChannel` instead." +msgstr "" + +#: 716d3c3986d448ba8bbae24d3a927b3d 9100aed34bd14af28745ceddb65aeb80 +#: discord.guild.Guild.create_category:7 of +msgid "" +"The ``category`` parameter is not supported in this function since " +"categories cannot have categories." +msgstr "" + +#: 27c0ba54755f4232854c7bb1e836306b 5f28803b6126460f925f168cd21164cd +#: discord.guild.Guild.create_category:11 of +msgid ":class:`CategoryChannel`" +msgstr "" + +#: b1abcb9f0f754be0b71b198a7424036c discord.guild.Guild.leave:3 of +msgid "" +"Leaves the guild. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 372e626a7b2c4524bb3ba6cd71060653 discord.guild.Guild.leave:9 of +msgid "" +"You cannot leave the guild that you own, you must delete it instead via " +":meth:`delete`." +msgstr "" + +#: 1c39e7d936124a0bb40b3516844d893f discord.guild.Guild.leave:12 of +msgid "Leaving the guild failed." +msgstr "" + +#: 6ddfed444a50419fb1453c64936386f2 discord.guild.Guild.delete:3 of +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "" + +#: discord.guild.Guild.delete:6 e59e369114c1423aa81d821f040d9c7f of +msgid "Deleting the guild failed." +msgstr "" + +#: 32c7959e2e0d475aaff8585af43a2269 discord.guild.Guild.delete:7 of +msgid "You do not have permissions to delete the guild." +msgstr "" + +#: 2a70d99413c1496a8359c704195070fe discord.guild.Guild.set_mfa_required:3 of +msgid "" +"Set whether it is required to have MFA enabled on your account to perform" +" moderation actions. You must be the guild owner to do this." +msgstr "" + +#: c77287e8b0af409aa38371f49a55b252 discord.guild.Guild.set_mfa_required:7 of +msgid "Whether MFA should be required to perform moderation actions." +msgstr "" + +#: discord.guild.Guild.set_mfa_required:10 fd273e9c1b4d49e0807f3df28ccebf24 of +msgid "The reason to show up in the audit log." +msgstr "" + +#: 0401bd2a8e2641b4b33a27e26bec88b9 6a5a47ad973940209028891e87d59314 +#: 6e383a0f60374e1792867357bb73d27a 845342df7f694a18b74e63bd8283fbf9 +#: discord.automod.AutoModRule.delete:10 discord.automod.AutoModRule.edit:35 +#: discord.guild.Guild.create_scheduled_event:35 +#: discord.guild.Guild.set_mfa_required:13 discord.member.Member.edit:84 +#: discord.member.Member.request_to_speak:17 +#: discord.scheduled_events.ScheduledEvent.cancel:17 +#: discord.scheduled_events.ScheduledEvent.complete:17 +#: discord.scheduled_events.ScheduledEvent.delete:6 +#: discord.scheduled_events.ScheduledEvent.edit:54 +#: discord.scheduled_events.ScheduledEvent.start:17 of +msgid "The operation failed." +msgstr "" + +#: discord.guild.Guild.set_mfa_required:14 f00beb8bcf8b4e62b56d0ffbd22cfff0 of +msgid "You are not the owner of the guild." +msgstr "" + +#: 11428f2987084ae8a40f98220ed55984 discord.guild.Guild.edit:3 of +msgid "Edits the guild." +msgstr "" + +#: 3014c6612676410f8e42c405e062f6b6 discord.guild.Guild.edit:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_guild` permission to edit " +"the guild." +msgstr "" + +#: 83bdf14b43b6420dbc3bb9615f728f89 discord.guild.Guild.edit:8 of +msgid "" +"The `rules_channel` and `public_updates_channel` keyword-only parameters " +"were added." +msgstr "" + +#: 4cef9bdd20ec471381b60d7e5b638401 discord.guild.Guild.edit:11 of +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "" + +#: a056ab336703485491f8ed91c4cd7526 discord.guild.Guild.edit:14 of +msgid "The newly updated guild is returned." +msgstr "" + +#: dd46e3094d2f4ce3882c5849c7f57d9e discord.guild.Guild.edit:18 of +msgid "The new name of the guild." +msgstr "" + +#: 8a2a5c56f33e4533b97b13d27713e4d5 discord.guild.Guild.edit:21 of +msgid "" +"The new description of the guild. Could be ``None`` for no description. " +"This is only available to guilds that contain ``PUBLIC`` in " +":attr:`Guild.features`." +msgstr "" + +#: bd982c8dcd424f1d888906966c6520e7 discord.guild.Guild.edit:25 of +msgid "" +"A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is " +"supported. GIF is only available to guilds that contain ``ANIMATED_ICON``" +" in :attr:`Guild.features`. Could be ``None`` to denote removal of the " +"icon." +msgstr "" + +#: 62998ed161f747af97127a6f4b69dea8 discord.guild.Guild.edit:30 of +msgid "" +"A :term:`py:bytes-like object` representing the banner. Could be ``None``" +" to denote removal of the banner. This is only available to guilds that " +"contain ``BANNER`` in :attr:`Guild.features`." +msgstr "" + +#: ae92e8acc94045e7b21be41f9f3e3d51 discord.guild.Guild.edit:35 of +msgid "" +"A :term:`py:bytes-like object` representing the invite splash. Only " +"PNG/JPEG supported. Could be ``None`` to denote removing the splash. This" +" is only available to guilds that contain ``INVITE_SPLASH`` in " +":attr:`Guild.features`." +msgstr "" + +#: b263908257734e2596e92d68c51e1fe5 discord.guild.Guild.edit:41 of +msgid "" +"A :term:`py:bytes-like object` representing the discovery splash. Only " +"PNG/JPEG supported. Could be ``None`` to denote removing the splash. This" +" is only available to guilds that contain ``DISCOVERABLE`` in " +":attr:`Guild.features`." +msgstr "" + +#: a353ef800ffd4c0285090d9df4e8e459 discord.guild.Guild.edit:47 of +msgid "" +"Whether the guild should be a Community guild. If set to ``True``\\, both" +" ``rules_channel`` and ``public_updates_channel`` parameters are " +"required." +msgstr "" + +#: 222420833b4f41f3a3e29975e1d78035 discord.guild.Guild.edit:51 of +msgid "" +"The new channel that is the AFK channel. Could be ``None`` for no AFK " +"channel." +msgstr "" + +#: 57955f97485b4a8d99435d0ed84493b4 discord.guild.Guild.edit:54 of +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "" + +#: discord.guild.Guild.edit:57 ee57edd89c934f6f8851f745bd657faa of +msgid "" +"The new owner of the guild to transfer ownership to. Note that you must " +"be owner of the guild to do this." +msgstr "" + +#: discord.guild.Guild.edit:61 e00b07f969094865b88d709b4e3b2b73 of +msgid "The new verification level for the guild." +msgstr "" + +#: 58b9d36ce2304eb7ae2a7d248bc3d561 discord.guild.Guild.edit:64 of +msgid "The new default notification level for the guild." +msgstr "" + +#: discord.guild.Guild.edit:67 e848eb60847643f392c41d9933562d1f of +msgid "The new explicit content filter for the guild." +msgstr "" + +#: 9c088bed23924d1299dd212181955017 discord.guild.Guild.edit:70 of +msgid "" +"The new channel that is used for the system channel. Could be ``None`` " +"for no system channel." +msgstr "" + +#: discord.guild.Guild.edit:73 e4e7e720a8eb48a3802a88baea0f0a0a of +msgid "The new system channel settings to use with the new system channel." +msgstr "" + +#: discord.guild.Guild.edit:76 e8c42c080f354eb089e1fecd40acd31f of +msgid "" +"The new preferred locale for the guild. Used as the primary language in " +"the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja``" +" or ``zh-CN``." +msgstr "" + +#: 9fbd7fff4fd24355935af8d2aae792f1 discord.guild.Guild.edit:80 of +msgid "" +"The new channel that is used for rules. This is only available to guilds " +"that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for " +"no rules channel." +msgstr "" + +#: 3242067dfd4e44b78067a933e8675cde discord.guild.Guild.edit:85 of +msgid "" +"The new channel that is used for public updates from Discord. This is " +"only available to guilds that contain ``PUBLIC`` in " +":attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "" + +#: 387f2c8ecb814ef79b4d196dc73a9991 discord.guild.Guild.edit:90 of +msgid "Whether the guild should have premium progress bar enabled." +msgstr "" + +#: ab83fdbf1e0e4760b895cdc4cf06ee7e discord.guild.Guild.edit:93 of +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "" + +#: 226196ae337f47ba9ed1b2641b83f3df discord.guild.Guild.edit:96 of +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "" + +#: discord.guild.Guild.edit:99 f2ec2f8365b0482f88522cb620b9f3c2 of +msgid "You do not have permissions to edit the guild." +msgstr "" + +#: 3d2005f11a794335a10c47ceb9494569 7026e8922b26447f903df8f0411dae38 +#: discord.guild.Guild.edit:100 discord.integrations.StreamIntegration.edit:19 +#: of +msgid "Editing the guild failed." +msgstr "" + +#: ae815105c2f445988a7245f534d3ec20 discord.guild.Guild.edit:101 of +msgid "" +"The image format passed in to ``icon`` is invalid. It must be PNG or " +"JPG. This is also raised if you are not the owner of the guild and " +"request an ownership transfer." +msgstr "" + +#: cf020628c49b457ab63b2155e49a9aa1 discord.guild.Guild.edit:103 of +msgid "" +"The newly updated guild. Note that this has the same limitations as " +"mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "" + +#: 276f56a64f5843658e8be434f64806d5 9c735f0e65834a429826e96e1cd0e8e1 +#: discord.channel.CategoryChannel:33 discord.channel.ForumChannel:31 +#: discord.channel.StageChannel:33 discord.channel.TextChannel:31 +#: discord.channel.VoiceChannel:31 discord.guild.Guild.edit:105 +#: discord.integrations.BotIntegration:21 discord.integrations.Integration:21 +#: discord.integrations.StreamIntegration:21 discord.member.Member:48 +#: discord.role.Role:53 discord.scheduled_events.ScheduledEvent:27 +#: discord.stage_instance.StageInstance:29 discord.template.Template:52 +#: discord.threads.Thread:33 of +msgid ":class:`Guild`" +msgstr "" + +#: discord.guild.Guild.fetch_channels:3 ec1d25a9867d4249aee938ced8744313 of +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "" + +#: a060dfadcca74ce8a74827770f267656 discord.guild.Guild.fetch_channels:7 of +msgid "" +"This method is an API call. For general usage, consider :attr:`channels` " +"instead." +msgstr "" + +#: 72a6ea47b50d444e8be720b4e9f920b9 discord.guild.Guild.fetch_channels:11 of +msgid "All channels in the guild." +msgstr "" + +#: discord.guild.Guild.fetch_channels:12 ff60027791904e2da51e8afb72d19bc6 of +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "" + +#: 77c5aece3a47484991744680b8ff1713 discord.guild.Guild.fetch_channels:14 of +msgid "An unknown channel type was received from Discord." +msgstr "" + +#: 4e3038da83364fee951438fc677b1bcd discord.guild.Guild.fetch_channels:15 of +msgid "Retrieving the channels failed." +msgstr "" + +#: 08d8e0b261174bf5985026c2d38886bc discord.guild.Guild.active_threads:3 of +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "" + +#: 6cdf67c965c0468395de19b1edb81445 discord.guild.Guild.active_threads:5 of +msgid "This includes both private and public threads." +msgstr "" + +#: 77aa93650f0548b5b5f44e7454c3251a discord.guild.Guild.active_threads:9 of +msgid "The active threads" +msgstr "" + +#: discord.guild.Guild.active_threads:10 f1336549afe545e5b63468ec39a2d9a8 of +msgid "List[:class:`Thread`]" +msgstr "" + +#: 90fc74fa0c694a70aed7f1070b0dcc9a discord.guild.Guild.active_threads:12 of +msgid "The request to get the active threads failed." +msgstr "" + +#: c3a5be09680c4bb4b29c379de1ff3ad5 discord.guild.Guild.search_members:1 of +msgid "" +"Search for guild members whose usernames or nicknames start with the " +"query string. Unlike :meth:`fetch_members`, this does not require " +":meth:`Intents.members`." +msgstr "" + +#: 3a0c12402f8e4f1c9a8df56e6f478ee0 discord.guild.Guild.search_members:5 of +msgid "" +"This method is an API call. For general usage, consider filtering " +":attr:`members` instead." +msgstr "" + +#: 0de4b1e2691e48e18560ab218d588c8c discord.guild.Guild.search_members:10 of +msgid "" +"Searches for usernames and nicknames that start with this string, case-" +"insensitive." +msgstr "" + +#: 4e654b49af1d473d943ba41ab77a4b3f discord.guild.Guild.search_members:13 of +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "" + +#: 92f75e3a49844fddaa6a5089964c0135 accd314ed7a443a092b37ec3dd0d8643 +#: discord.guild.Guild.query_members:33 discord.guild.Guild.search_members:16 +#: of +msgid "The list of members that have matched the query." +msgstr "" + +#: 12afd1d7c7e440c880a4b51741d666bd 4ab8c0068b7244b3a7274cfc050aaa1f +#: d1bc4b075a1f4d74beb00c7b12f21914 discord.guild.Guild.query_members:34 +#: discord.guild.Guild.search_members:17 discord.widget.Widget:47 of +msgid "List[:class:`Member`]" +msgstr "" + +#: 34622231a6d44019beafcb50678c74cb discord.guild.Guild.fetch_member:3 of +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "" + +#: 9e8f21a714514f38bc975340a5d615d2 discord.guild.Guild.fetch_member:7 of +msgid "" +"This method is an API call. If you have :attr:`Intents.members` and " +"member cache enabled, consider :meth:`get_member` instead." +msgstr "" + +#: discord.guild.Guild.fetch_member:11 eaf9c2a41dc3449bad4fa716e05919fe of +msgid "The member's ID to fetch from." +msgstr "" + +#: c8716867e27c47d199c918ab7f1fd42a discord.guild.Guild.fetch_member:14 of +msgid "The member from the member ID." +msgstr "" + +#: a57ef03bb44d468185e9564cdc18a638 discord.guild.Guild.fetch_member:15 of +msgid ":class:`Member`" +msgstr "" + +#: 125f70fac7604877b0bd457d9307c8df discord.guild.Guild.fetch_member:17 of +msgid "You do not have access to the guild." +msgstr "" + +#: 6dea9ef6b41e49789e8679ae2d3c66f3 discord.guild.Guild.fetch_member:18 of +msgid "Fetching the member failed." +msgstr "" + +#: 998765fd112f49c7890d221c7b3df54f discord.guild.Guild.fetch_ban:3 of +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "" + +#: 4d271df745ba4e4d8d75b0690e6c5fec discord.guild.Guild.fetch_ban:5 of +msgid "" +"You must have the :attr:`~Permissions.ban_members` permission to get this" +" information." +msgstr "" + +#: 8feaeaab6d0c4bfc83cfdc3dc629cfc0 discord.guild.Guild.fetch_ban:9 of +msgid "The user to get ban information from." +msgstr "" + +#: 61c138eec62643948c4a0a9ef41b24b1 discord.guild.Guild.fetch_ban:12 of +msgid "The :class:`BanEntry` object for the specified user." +msgstr "" + +#: discord.guild.Guild.fetch_ban:13 f1265b8b1c3b4065854d6017be37b9a0 of +msgid ":class:`BanEntry`" +msgstr "" + +#: 53af8ec9a63546c58412a8f4710b321d 73cd4a54b33f468fbd6598ae6039b5ad +#: 9c4c94aac34c4e5daa5dec9015f1399e discord.abc.GuildChannel.invites:10 +#: discord.guild.Guild.bans:30 discord.guild.Guild.fetch_ban:15 +#: discord.guild.Guild.invites:11 fc14665c6b8c42f7b2021236fbe289a1 of +msgid "You do not have proper permissions to get the information." +msgstr "" + +#: 3f8c6f500b8d4c88b4ddce6ab0a57f7f discord.guild.Guild.fetch_ban:16 of +msgid "This user is not banned." +msgstr "" + +#: a18ed0d4d7704b9ea30fe7d2b8d050b0 dd2d4279f4094eb185c46164537534df +#: discord.abc.GuildChannel.invites:11 discord.guild.Guild.bans:31 +#: discord.guild.Guild.fetch_ban:17 discord.guild.Guild.invites:12 +#: e91a22a8592f4d83adfff9b890100c70 f604401cde9a47eeb37838e3eefdad3d of +msgid "An error occurred while fetching the information." +msgstr "" + +#: 63c9970013b74eab9035aba0b82c855e discord.guild.Guild.fetch_channel:3 of +msgid "" +"Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the " +"specified ID." +msgstr "" + +#: 80b8d9d092d847b29eea8795f8e6dbc8 discord.guild.Guild.fetch_channel:7 of +msgid "" +"This method is an API call. For general usage, consider " +":meth:`get_channel_or_thread` instead." +msgstr "" + +#: dd265519b29f40288f55accbe36ad0d2 discord.guild.Guild.fetch_channel:11 of +msgid "The channel from the ID." +msgstr "" + +#: a964c939aaf04a96ac70d5a8fdd4a8b6 discord.guild.Guild.fetch_channel:12 of +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "" + +#: 59ba84c18b934ead84f0ba94f9e4e6a2 discord.guild.Guild.fetch_channel:14 of +msgid "" +"An unknown channel type was received from Discord or the guild the " +"channel belongs to is not the same as the one in this object points " +"to." +msgstr "" + +#: 437ad0ad76014283a02907a34ca01091 discord.guild.Guild.fetch_channel:15 of +msgid "Retrieving the channel failed." +msgstr "" + +#: 6af31751ceb34a3fa0252e9b345829e1 discord.guild.Guild.fetch_channel:16 of +msgid "Invalid Channel ID." +msgstr "" + +#: 86d5ca29effe4cb09b8d22c86e77656e discord.guild.Guild.fetch_channel:17 of +msgid "You do not have permission to fetch this channel." +msgstr "" + +#: 8d1aa24b8df846e198d57a66eaa690bd discord.guild.Guild.bans:3 of +msgid "" +"Retrieves an :class:`.AsyncIterator` that enables receiving the guild's " +"bans. In order to use this, you must have the " +":attr:`~Permissions.ban_members` permission. Users will always be " +"returned in ascending order sorted by user ID. If both the ``before`` and" +" ``after`` parameters are provided, only before is respected." +msgstr "" + +#: discord.guild.Guild.bans:8 ef722d362274401cadccae1d34099995 of +msgid "" +"The ``before``. and ``after`` parameters were changed. They are now of " +"the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply " +"with the discord api." +msgstr "" + +#: 7a6783ca6f8d40a9b189fd699aa9ba79 discord.guild.Guild.bans:12 of +msgid "" +"The ``limit``, ``before``. and ``after`` parameters were added. Now " +"returns a :class:`.BanIterator` instead of a list of ``BanEntry`` " +"objects." +msgstr "" + +#: discord.guild.Guild.bans:19 e985008dbcff48aca12f0100d929a58b of +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "" + +#: c668a0aaaac3483eb31f1d9e8827eab2 discord.guild.Guild.bans:22 of +msgid "Retrieve bans before the given user." +msgstr "" + +#: discord.guild.Guild.bans:25 f83085d7ced84766af1276c9e2d23b61 of +msgid "Retrieve bans after the given user." +msgstr "" + +#: 73f3c061a7dc49a6b7a0281cd4ee722a discord.guild.Guild.bans:28 of +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr "" + +#: 1b254db9f76c48a3a18af4c1aa3d16e4 discord.guild.Guild.bans:32 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr "" + +#: 36bd9264268b41bc82369216df6d556e discord.guild.Guild.prune_members:3 of +msgid "Prunes the guild from its inactive members." +msgstr "" + +#: 9e184b794e3a48488563772ec896436e discord.guild.Guild.prune_members:5 of +msgid "" +"The inactive members are denoted if they have not logged on in ``days`` " +"number of days and have no roles." +msgstr "" + +#: 5d3ed663a2d247ae941a48d1f7ddf3d7 discord.guild.Guild.prune_members:8 of +msgid "" +"You must have the :attr:`~Permissions.kick_members` permission to use " +"this." +msgstr "" + +#: discord.guild.Guild.prune_members:11 f47e977e4213413095b13e20c8fa36d0 of +msgid "" +"To check how many members you would prune without actually pruning, see " +"the :meth:`estimate_pruned_members` function." +msgstr "" + +#: 2a76227ee9244bd1be22bcc036548369 discord.guild.Guild.prune_members:14 of +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "" + +#: 05582715c7ee4711947323e84fc4ba60 discord.guild.Guild.prune_members:16 of +msgid "The ``roles`` keyword-only parameter was added." +msgstr "" + +#: 0fd3894014d744e3a1de5dc175707f11 a6643b5e6f8548d2adfc203bbb424b8c +#: discord.guild.Guild.estimate_pruned_members:8 +#: discord.guild.Guild.prune_members:20 of +msgid "The number of days before counting as inactive." +msgstr "" + +#: 3224d7c321cc4c78b44b8fc4932f2b89 6211cc2aa291498796952ffa64eee7c9 +#: discord.abc.GuildChannel.set_permissions:53 +#: discord.guild.Guild.prune_members:23 discord.guild.Guild.unban:14 +#: discord.member.Member.move_to:18 discord.member.Member.remove_timeout:11 +#: discord.member.Member.timeout:11 discord.member.Member.timeout_for:13 of +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "" + +#: 3f1d1f1bc748436e9ef41a0a4d024fe7 discord.guild.Guild.prune_members:26 of +msgid "" +"Whether to compute the prune count. This defaults to ``True`` which makes" +" it prone to timeouts in very large guilds. In order to prevent timeouts," +" you must set this to ``False``. If this is set to ``False``\\, then this" +" function will always return ``None``." +msgstr "" + +#: 9fe81644274d4411b33f21d867b79cbe discord.guild.Guild.prune_members:32 of +msgid "" +"A list of :class:`abc.Snowflake` that represent roles to include in the " +"pruning process. If a member has a role that is not specified, they'll be" +" excluded." +msgstr "" + +#: 5aa6ae18b0af4102b10a032b1b6a7e8f 913056eb50fa459dbf010b7884d25537 +#: discord.guild.Guild.estimate_pruned_members:20 +#: discord.guild.Guild.prune_members:36 of +msgid "You do not have permissions to prune members." +msgstr "" + +#: 5dc1ca51912b48ebbb7a301e0e5c7be4 discord.guild.Guild.prune_members:37 of +msgid "An error occurred while pruning members." +msgstr "" + +#: 7b88402799514b5cb8b7bbe58831a29e 95e8775caf6c4fa98a50493042af3094 +#: discord.guild.Guild.estimate_pruned_members:22 +#: discord.guild.Guild.prune_members:38 of +msgid "An integer was not passed for ``days``." +msgstr "" + +#: discord.guild.Guild.prune_members:40 f0e830e71ab24714baf086e45202c039 of +msgid "" +"The number of members pruned. If ``compute_prune_count`` is ``False`` " +"then this returns ``None``." +msgstr "" + +#: 5a96260e347a4b21ad9f5a11e79dca0d discord.guild.Guild.templates:3 of +msgid "Gets the list of templates from this guild." +msgstr "" + +#: discord.guild.Guild.templates:5 ef25d2947bf74162a067f3be348525dd of +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "" + +#: 7d7692d53cee484d8d516a477ded5a56 discord.guild.Guild.templates:9 of +msgid "The templates for this guild." +msgstr "" + +#: a2964b1b45464c15bdd7949f8b1999c1 discord.guild.Guild.templates:10 of +msgid "List[:class:`Template`]" +msgstr "" + +#: 6a48d471dda844de8120ebeb9ac61d4f discord.guild.Guild.templates:12 of +msgid "You don't have permissions to get the templates." +msgstr "" + +#: discord.guild.Guild.webhooks:3 ed3a05b8d6c8434895efe539f774ddd9 of +msgid "Gets the list of webhooks from this guild." +msgstr "" + +#: 81f00aa66a804c659436513d84f58331 a41a818bb60d4197af2cfa72219eee39 +#: discord.channel.StageChannel.create_webhook:5 +#: discord.channel.StageChannel.webhooks:5 +#: discord.channel.VoiceChannel.create_webhook:5 +#: discord.channel.VoiceChannel.webhooks:5 +#: discord.channel._TextChannel.create_webhook:5 +#: discord.channel._TextChannel.webhooks:5 discord.guild.Guild.webhooks:5 of +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "" + +#: 1b4210747893413196486dea81f2d24a discord.guild.Guild.webhooks:7 of +msgid "The webhooks for this guild." +msgstr "" + +#: 7253240c20004a45b527af391c6c7fae 99e2ef5f06e840b49beef674316afa93 +#: discord.channel.StageChannel.webhooks:8 +#: discord.channel.VoiceChannel.webhooks:8 +#: discord.channel._TextChannel.webhooks:8 discord.guild.Guild.webhooks:8 of +msgid "List[:class:`Webhook`]" +msgstr "" + +#: a35aad3bdf6a4eab97d658e6525ce10a cfc0d35c673d41278b8b1cd4581fee83 +#: discord.channel.StageChannel.webhooks:10 +#: discord.channel.VoiceChannel.webhooks:10 +#: discord.channel._TextChannel.webhooks:10 discord.guild.Guild.webhooks:10 of +msgid "You don't have permissions to get the webhooks." +msgstr "" + +#: 6ed6691303c4485ebb8803ae67509f8e +#: discord.guild.Guild.estimate_pruned_members:3 of +msgid "" +"Similar to :meth:`prune_members` except instead of actually pruning " +"members, it returns how many members it would prune from the guild had it" +" been called." +msgstr "" + +#: d27a0fa2d9394b858c7ef2054f3127e2 +#: discord.guild.Guild.estimate_pruned_members:11 of +msgid "" +"A list of :class:`abc.Snowflake` that represent roles to include in the " +"estimate. If a member has a role that is not specified, they'll be " +"excluded. .. versionadded:: 1.7" +msgstr "" + +#: 47d3809a6ba642ea9c25fc471b1a07e4 +#: discord.guild.Guild.estimate_pruned_members:11 of +msgid "" +"A list of :class:`abc.Snowflake` that represent roles to include in the " +"estimate. If a member has a role that is not specified, they'll be " +"excluded." +msgstr "" + +#: 019bb91bee7f46fc8b771b3e5bf99c0f +#: discord.guild.Guild.estimate_pruned_members:17 of +msgid "The number of members estimated to be pruned." +msgstr "" + +#: discord.guild.Guild.estimate_pruned_members:21 +#: f46f5a56cae94de9a978505c18e3df19 of +msgid "An error occurred while fetching the prune members estimate." +msgstr "" + +#: 0970de5aed86413dab17883b99c8afac discord.guild.Guild.invites:3 of +msgid "Returns a list of all active instant invites from the guild." +msgstr "" + +#: discord.guild.Guild.invites:5 e991e4e67c0f4be1ad9b6e7230f98b7c of +msgid "" +"You must have the :attr:`~Permissions.manage_guild` permission to get " +"this information." +msgstr "" + +#: 74f1849dc85b465e874fdcba96c50071 b4eb1b6da60540cd89dedf2329be357a +#: discord.abc.GuildChannel.invites:7 discord.guild.Guild.invites:8 of +msgid "The list of invites that are currently active." +msgstr "" + +#: b28e08bf49ff49a7ace96e2b061393ed discord.guild.Guild.invites:9 of +msgid "List[:class:`Invite`]" +msgstr "" + +#: 615e1f0d0cb7492abcab7502b8f8e9a0 discord.guild.Guild.create_template:3 of +msgid "Creates a template for the guild." +msgstr "" + +#: a582a220595b498096d03893062a9df0 adfb039ef6d545d6aa4a65fee758b611 +#: b248bb63d2404648aa22ca648a5d0ca8 d99eae95a87a4b7f913ecc5a4c7ca6d6 +#: discord.guild.Guild.create_integration:5 +#: discord.guild.Guild.create_template:5 discord.guild.Guild.integrations:5 +#: discord.integrations.Integration.delete:5 +#: discord.integrations.StreamIntegration.edit:5 +#: discord.integrations.StreamIntegration.sync:5 of +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "" + +#: 6573de58430a435fb453dcffcad5c318 8a02d4ac608d419788e95d560d214721 +#: discord.guild.Guild.create_template:11 discord.template.Template:19 of +msgid "The name of the template." +msgstr "" + +#: 29ab765f02d240d882a315f3e85185da d305a169d2574be8813ea5e8a02a9756 +#: discord.guild.Guild.create_template:14 discord.template.Template:25 of +msgid "The description of the template." +msgstr "" + +#: 760cda1cd1bf483ebd28b138dbac9316 discord.guild.Guild.create_template:17 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr "" + +#: 0c00ff66a0c74ba8bdb568b9ade08e40 discord.guild.Guild.create_integration:3 of +msgid "Attaches an integration to the guild." +msgstr "" + +#: 7055633b41f14e90817f176388a13d25 discord.guild.Guild.create_integration:11 +#: of +msgid "The integration type (e.g. Twitch)." +msgstr "" + +#: 1346001cfed24b21b072ef9856fdbdae 944b63c7272645ac8e3cb2e3e21563fe +#: discord.guild.Guild.create_integration:14 +#: discord.integrations.BotIntegration:7 discord.integrations.Integration:7 +#: discord.integrations.StreamIntegration:7 of +msgid "The integration ID." +msgstr "" + +#: b2080ec5a9504c288adff5bb581385d4 d113a7909c6d4a71bf31959da1ae369d +#: discord.guild.Guild.create_integration:17 +#: discord.guild.Guild.integrations:13 of +msgid "You do not have permission to create the integration." +msgstr "" + +#: 8b360cadc5e6410f9163b009e1798c17 discord.guild.Guild.create_integration:18 +#: of +msgid "The account could not be found." +msgstr "" + +#: 55c98a3dddb043f98fb6d84b2d473f35 discord.guild.Guild.integrations:3 of +msgid "Returns a list of all integrations attached to the guild." +msgstr "" + +#: discord.guild.Guild.integrations:10 fed6ce5bcef64a35ab2b8b162b5eb50c of +msgid "The list of integrations that are attached to the guild." +msgstr "" + +#: 707fa57d80054d489f59022167789830 discord.guild.Guild.integrations:11 of +msgid "List[:class:`Integration`]" +msgstr "" + +#: 5ad7153c64f047ad9daa906a9becef09 discord.guild.Guild.integrations:14 of +msgid "Fetching the integrations failed." +msgstr "" + +#: 00dbbbe1eab34f6d894eca32b04b95fc discord.guild.Guild.fetch_stickers:3 of +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "" + +#: 64c032cddf1e44aabf81215b2fd65a7d discord.guild.Guild.fetch_stickers:9 of +msgid "" +"This method is an API call. For general usage, consider :attr:`stickers` " +"instead." +msgstr "" + +#: 0be1df9394af4fffa74cf3c2c1f2e4d7 discord.guild.Guild.fetch_stickers:11 of +msgid "An error occurred fetching the stickers." +msgstr "" + +#: 55697da9b79446dfb69b28f4fa3adfb2 discord.guild.Guild.fetch_stickers:13 of +msgid "The retrieved stickers." +msgstr "" + +#: 1714df6157b64ca5a1a90b995fd44623 discord.guild.Guild.fetch_stickers:14 of +msgid "List[:class:`GuildSticker`]" +msgstr "" + +#: a8d670ef84b143d982f79b48c0b1c562 discord.guild.Guild.fetch_sticker:3 of +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "" + +#: 63867ec00f414a55bbef1821d171b784 discord.guild.Guild.fetch_sticker:9 of +msgid "" +"This method is an API call. For general usage, consider iterating over " +":attr:`stickers` instead." +msgstr "" + +#: discord.guild.Guild.fetch_sticker:13 f0a03ba8de3d4db5a3968b94e40ed0bd of +msgid "The sticker's ID." +msgstr "" + +#: 2e5e5cb4083b4d768bb3ca349cd4cc41 discord.guild.Guild.fetch_sticker:16 +#: discord.sticker.StickerItem.fetch:5 ee33114d35c04bba9e3a60b0daace838 of +msgid "The retrieved sticker." +msgstr "" + +#: 0ef37b2e6d2e442fb19065b7614a9b0d 2802fcb7a86b474589f5c11ccebdfc55 +#: ae85608176334c78a30d747892aebbd0 discord.guild.Guild.create_sticker:27 +#: discord.guild.Guild.fetch_sticker:17 discord.sticker.GuildSticker.edit:19 of +msgid ":class:`GuildSticker`" +msgstr "" + +#: 6f2712591be94a89ac8d4530d2c62af1 discord.guild.Guild.fetch_sticker:19 of +msgid "The sticker requested could not be found." +msgstr "" + +#: 10ab3b6a5c934028bb0caa016beaed29 discord.guild.Guild.fetch_sticker:20 of +msgid "An error occurred fetching the sticker." +msgstr "" + +#: 2bc1d5ddf1094d0ca12d95d8a2c84076 discord.guild.Guild.create_sticker:3 of +msgid "Creates a :class:`Sticker` for the guild." +msgstr "" + +#: 19d83ba9c2b64a40a0d99a566e2f1570 b08f600f8fb24a939877a9f21c67b6b9 +#: d9bcd31ba9c8417eaebec2098f4a6866 discord.guild.Guild.create_sticker:5 +#: discord.guild.Guild.delete_sticker:5 discord.sticker.GuildSticker.delete:5 +#: of +msgid "" +"You must have :attr:`~Permissions.manage_emojis_and_stickers` permission " +"to do this." +msgstr "" + +#: a6460e077e1044cd82e7514c43a74c85 discord.guild.Guild.create_sticker:11 of +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "" + +#: b83cc1df192e44cfa969e71988e5677c discord.guild.Guild.create_sticker:14 of +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "" + +#: d1d3341da8154cc6b4378671085d6876 da50ce0daeb14bac9177688a530a501f +#: discord.guild.Guild.create_sticker:17 discord.sticker.GuildSticker.edit:12 +#: of +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "" + +#: a66e5eaafd104f64b94753b15e176012 discord.guild.Guild.create_sticker:20 of +msgid "The file of the sticker to upload." +msgstr "" + +#: 66fe361a6d7d46a4a6844cfae8e53e8d discord.guild.Guild.create_sticker:23 of +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "" + +#: c5a2ccdde03b45da82a41aafe5ca11f4 discord.guild.Guild.create_sticker:26 of +msgid "The created sticker." +msgstr "" + +#: discord.guild.Guild.create_sticker:29 e497f6606bf64d688a4d1adcbe4550d5 of +msgid "You are not allowed to create stickers." +msgstr "" + +#: 4014ebbe73454bba80fffcc20a76d48e discord.guild.Guild.create_sticker:30 of +msgid "An error occurred creating a sticker." +msgstr "" + +#: 0d272e8551554a528b510633e63e660b discord.guild.Guild.create_sticker:31 of +msgid "The parameters for the sticker are not correctly formatted." +msgstr "" + +#: bcb585d0888b47c5aa7e11bd76e69153 discord.guild.Guild.delete_sticker:3 +#: discord.sticker.GuildSticker.delete:3 e42fb4e9e6cd462899cde8b8f13f183e of +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "" + +#: 389b2c95a682457586d94318d12dcdc0 discord.guild.Guild.delete_sticker:11 of +msgid "The sticker you are deleting." +msgstr "" + +#: discord.guild.Guild.delete_sticker:14 discord.sticker.GuildSticker.delete:9 +#: eb21701dec21455885321861a71e8a93 f7a4f3ca9f0840278988c57b3e1584ba of +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "" + +#: 57b98898cf2b4745af78f85b0f783f43 discord.guild.Guild.delete_sticker:17 +#: discord.sticker.GuildSticker.delete:12 f882c67f674f47e397cfa9cbd16ed37e of +msgid "You are not allowed to delete stickers." +msgstr "" + +#: 854d757ca8b241ebab7c4cacf7bcec8c b1d13694e29548c2b31bf65409c39404 +#: discord.guild.Guild.delete_sticker:18 discord.sticker.GuildSticker.delete:13 +#: of +msgid "An error occurred deleting the sticker." +msgstr "" + +#: 7e19d4e700d74093a3cdc5c09aa87a7d discord.guild.Guild.fetch_emojis:3 of +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "" + +#: 0e34069b5d51441ab8c457a52f2d4c01 discord.guild.Guild.fetch_emojis:7 of +msgid "" +"This method is an API call. For general usage, consider :attr:`emojis` " +"instead." +msgstr "" + +#: 6c8e39b268f349da8aa4bf43ef2e8dbd discord.guild.Guild.fetch_emojis:9 of +msgid "An error occurred fetching the emojis." +msgstr "" + +#: ab7b44a854f44e168c38f0c4119385b0 discord.guild.Guild.fetch_emojis:11 of +msgid "The retrieved emojis." +msgstr "" + +#: d20f42179eff44a7a621d7a831ddbe4b discord.guild.Guild.fetch_emojis:12 of +msgid "List[:class:`Emoji`]" +msgstr "" + +#: cc1afd530dcb498eab35fafe4575a8d9 discord.guild.Guild.fetch_emoji:3 of +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "" + +#: 20deca88487948c09b27806328bb2663 discord.guild.Guild.fetch_emoji:7 of +msgid "" +"This method is an API call. For general usage, consider iterating over " +":attr:`emojis` instead." +msgstr "" + +#: 04438e1da08e48938f42dbf2de330ba9 53a1817de08548d2a68fbe1e43614c15 +#: discord.emoji.Emoji:37 discord.guild.Guild.fetch_emoji:11 of +msgid "The emoji's ID." +msgstr "" + +#: 906d9a9b33fd4c2fae5128b182620971 discord.guild.Guild.fetch_emoji:14 of +msgid "The retrieved emoji." +msgstr "" + +#: 1eb1e8a92e454d7bbee3b5e9541f84fd 37a41037481642b78fafaee019f75015 +#: 399573321d6c4868983d0d4e6e50494d discord.emoji.Emoji.edit:25 +#: discord.guild.Guild.create_custom_emoji:29 +#: discord.guild.Guild.fetch_emoji:15 of +msgid ":class:`Emoji`" +msgstr "" + +#: 7dca8307be0f46d9bc1484bffd2db96e discord.guild.Guild.fetch_emoji:17 of +msgid "The emoji requested could not be found." +msgstr "" + +#: 1268b68564384470a7e408eb7ffe05cc discord.guild.Guild.fetch_emoji:18 of +msgid "An error occurred fetching the emoji." +msgstr "" + +#: c19298ed5a9d4c7f94a5ba4c63da6ecf discord.guild.Guild.create_custom_emoji:3 +#: of +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "" + +#: 67653b1edbe444cfa63bdb3f8dd142ee discord.guild.Guild.create_custom_emoji:5 +#: of +msgid "" +"There is currently a limit of 50 static and animated emojis respectively " +"per guild, unless the guild has the ``MORE_EMOJI`` feature which extends " +"the limit to 200." +msgstr "" + +#: 017a600143d2422fa0e812681706e91c discord.guild.Guild.create_custom_emoji:8 +#: of +msgid "" +"You must have the :attr:`~Permissions.manage_emojis` permission to do " +"this." +msgstr "" + +#: 97c6fd9370bf4aea96238eab140f5d1e discord.guild.Guild.create_custom_emoji:12 +#: of +msgid "The emoji name. Must be at least 2 characters." +msgstr "" + +#: 2fec2eb4ceb747919d9b166d18265401 discord.guild.Guild.create_custom_emoji:15 +#: of +msgid "" +"The :term:`py:bytes-like object` representing the image data to use. Only" +" JPG, PNG and GIF images are supported." +msgstr "" + +#: 1e4d12b61e6d490598ae6693db9198cf discord.guild.Guild.create_custom_emoji:19 +#: of +msgid "" +"A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty " +"to make it available to everyone." +msgstr "" + +#: bd0e76c282eb438dab73ee18a87a6267 discord.guild.Guild.create_custom_emoji:22 +#: of +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "" + +#: 949a7873ef1f4058b494809e97495c5f discord.guild.Guild.create_custom_emoji:25 +#: of +msgid "You are not allowed to create emojis." +msgstr "" + +#: de6fe0f7f1e4471d96ac84fcaccafdad discord.guild.Guild.create_custom_emoji:26 +#: of +msgid "An error occurred creating an emoji." +msgstr "" + +#: 7840ab867f304e7f922df2244f5e9e17 discord.guild.Guild.create_custom_emoji:28 +#: of +msgid "The created emoji." +msgstr "" + +#: 29f350f034fc4530acff6df42f01d8c8 discord.guild.Guild.delete_emoji:3 of +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "" + +#: discord.emoji.Emoji.delete:5 discord.emoji.Emoji.edit:5 +#: discord.guild.Guild.delete_emoji:5 fb90b1ef5ff84a2fa79294890e940a4e +#: ff6de30aac954fea9e2f208059f9cb4c of +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "" + +#: 5168a27eeb5742e19c0c8ed921c02486 discord.guild.Guild.delete_emoji:9 of +msgid "The emoji you are deleting." +msgstr "" + +#: 678beeb23b2d4987b952b0071cc7e655 83fa5c76aa45496c8a174a7aba164212 +#: discord.emoji.Emoji.delete:9 discord.guild.Guild.delete_emoji:12 of +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "" + +#: 06192bc5820542e09a610656abe007be d87322ed656a4631bd9fa98caa580e08 +#: discord.emoji.Emoji.delete:12 discord.guild.Guild.delete_emoji:15 of +msgid "You are not allowed to delete emojis." +msgstr "" + +#: 595f6eee2e13488f8569abd8053aeeb1 dd8fe40fffc947b8adf8f1e9fdfa8d16 +#: discord.emoji.Emoji.delete:13 discord.guild.Guild.delete_emoji:16 of +msgid "An error occurred deleting the emoji." +msgstr "" + +#: 6c8d370449314b2187994721e4cca657 discord.guild.Guild.fetch_roles:3 of +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "" + +#: 75df743b5f774665a0376cf6ee506507 discord.guild.Guild.fetch_roles:7 of +msgid "" +"This method is an API call. For general usage, consider :attr:`roles` " +"instead." +msgstr "" + +#: 113e7cb6f37f43a78caf4740e39fb7b8 discord.guild.Guild.fetch_roles:11 of +msgid "All roles in the guild." +msgstr "" + +#: de362117a6804bf9aaa7770e8b9a8e18 discord.guild.Guild.fetch_roles:14 of +msgid "Retrieving the roles failed." +msgstr "" + +#: 681fb3ca2ecf4e84ac864c64062b94f3 discord.guild.Guild.fetch_role:3 of +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "" + +#: 1f6a9aaf78384eabae7f935cc30d3215 discord.guild.Guild.fetch_role:7 of +msgid "" +"This method is an API call. For general usage, consider using " +":attr:`get_role` instead." +msgstr "" + +#: 5903ec8f839b4c2d9dc2d902b5329cf4 discord.guild.Guild.fetch_role:11 of +msgid "The role in the guild with the specified ID." +msgstr "" + +#: 79519cee140f4bafa12f86a5c341f0e7 discord.guild.Guild.create_role:45 +#: discord.guild.Guild.fetch_role:12 discord.role.Role.edit:51 of +msgid ":class:`Role`" +msgstr "" + +#: b28ab0944bac46fcb93d05451f0c7447 discord.guild.Guild.fetch_role:14 of +msgid "Retrieving the role failed." +msgstr "" + +#: 681fb3ca2ecf4e84ac864c64062b94f3 discord.guild.Guild.create_role:3 of +msgid "Creates a :class:`Role` for the guild." +msgstr "" + +#: dcfe27cdb7b04f7785b896b227db69aa discord.guild.Guild.create_role:5 +#: discord.role.Role.edit:8 of +msgid "All fields are optional." +msgstr "" + +#: 25b3022700bc40c98280cd7ad9067eac discord.guild.Guild.create_role:7 +#: discord.guild.Guild.edit_role_positions:5 of +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "" + +#: 44506364e73a40a2b43adf68402543c1 discord.guild.Guild.create_role:10 +#: discord.role.Role.edit:10 of +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "" + +#: 2f9a2e14086443cf9aca60ecc5d37418 discord.guild.Guild.create_role:14 of +msgid "The role name. Defaults to 'new role'." +msgstr "" + +#: d215923b1e584a69a414a1184375f930 discord.guild.Guild.create_role:17 of +msgid "The permissions to have. Defaults to no permissions." +msgstr "" + +#: 0a615245fd3c4c0b8e29edf8e72d8d88 discord.guild.Guild.create_role:20 of +msgid "" +"The colour for the role. Defaults to :meth:`Colour.default`. This is " +"aliased to ``color`` as well." +msgstr "" + +#: 93bce075ad454d48ae59eb4d231dfd8d discord.guild.Guild.create_role:24 of +msgid "" +"Indicates if the role should be shown separately in the member list. " +"Defaults to ``False``." +msgstr "" + +#: b1a288ba1940445ab63c5c1bde1d1efa discord.guild.Guild.create_role:28 of +msgid "" +"Indicates if the role should be mentionable by others. Defaults to " +"``False``." +msgstr "" + +#: 1d2ebd073b2c4459be628151776f3b50 discord.guild.Guild.create_role:32 of +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "" + +#: ba8c8b44279743f2bcd9efddc53d5b58 discord.guild.Guild.create_role:35 of +msgid "" +"A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP " +"is supported. If this argument is passed, ``unicode_emoji`` is set to " +"None. Only available to guilds that contain ``ROLE_ICONS`` in " +":attr:`Guild.features`." +msgstr "" + +#: 9cdff82aa82a440db4251f66f2e822f6 discord.guild.Guild.create_role:40 +#: discord.role.Role.edit:46 of +msgid "" +"The role's unicode emoji. If this argument is passed, ``icon`` is set to " +"None. Only available to guilds that contain ``ROLE_ICONS`` in " +":attr:`Guild.features`." +msgstr "" + +#: c965ce93ea074ed78be662486645a373 discord.guild.Guild.create_role:44 of +msgid "The newly created role." +msgstr "" + +#: 6ac5de532acc4a0386c665a37617cb7b discord.guild.Guild.create_role:47 of +msgid "You do not have permissions to create the role." +msgstr "" + +#: 013ad29dd49441ce9292d34076552ad7 discord.guild.Guild.create_role:48 of +msgid "Creating the role failed." +msgstr "" + +#: b7ba11634247483a88e4f438230dcdbf dfd9adbb613a4f5491d078cb00e63802 +#: discord.guild.Guild.create_role:49 +#: discord.guild.Guild.edit_role_positions:35 of +msgid "An invalid keyword argument was given." +msgstr "" + +#: 8a6532467f3445c8aac59a9849fe69d8 discord.guild.Guild.edit_role_positions:3 +#: of +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "" + +#: 53cfc538295b49a3b7caf1413df5d719 discord.guild.Guild.edit_role_positions:10 +#: of +msgid "Example:" +msgstr "" + +#: 5be883a67eca47498aa481fa2ef1935e discord.guild.Guild.edit_role_positions:23 +#: of +msgid "" +"A :class:`dict` of :class:`Role` to :class:`int` to change the positions " +"of each given role." +msgstr "" + +#: db47caaeff6d4546bb0643624faa9b92 discord.guild.Guild.edit_role_positions:27 +#: of +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "" + +#: 12db7fb56e4240d5bb76d9855001ebfc discord.guild.Guild.edit_role_positions:30 +#: of +msgid "A list of all the roles in the guild." +msgstr "" + +#: c4e82f0721b340f080c4d67188f58b04 discord.guild.Guild.edit_role_positions:33 +#: of +msgid "You do not have permissions to move the roles." +msgstr "" + +#: 776b7a3630cc4e66bf21286c273569ff discord.guild.Guild.edit_role_positions:34 +#: of +msgid "Moving the roles failed." +msgstr "" + +#: cb317007469e4271a5e6c0606e32c86c discord.guild.Guild.kick:3 of +msgid "Kicks a user from the guild." +msgstr "" + +#: 71041b43fe424416b87fd77ec0c5d5e4 discord.guild.Guild.ban:5 +#: discord.guild.Guild.kick:5 discord.guild.Guild.unban:5 of +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: d7b0f37f560049afbe7c47f86d66467b discord.guild.Guild.kick:7 of +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "" + +#: 45009620b7f94266a041b3e310508761 discord.guild.Guild.kick:11 of +msgid "The user to kick from their guild." +msgstr "" + +#: 1c2dbbc4e17f448cb9a05dec693b0442 discord.guild.Guild.kick:14 of +msgid "The reason the user got kicked." +msgstr "" + +#: 0cb82bb2c31e4229afae977226735946 discord.guild.Guild.kick:17 of +msgid "You do not have the proper permissions to kick." +msgstr "" + +#: 7c6a72f5d47441b7b8953ae50bb69637 discord.guild.Guild.kick:18 of +msgid "Kicking failed." +msgstr "" + +#: discord.guild.Guild.ban:3 e7e76ceffdd84efa98c4d457787247b9 of +msgid "Bans a user from the guild." +msgstr "" + +#: 7898787d528947f9b335b0550794b0da discord.guild.Guild.ban:7 +#: discord.guild.Guild.bulk_ban:7 discord.guild.Guild.unban:7 of +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "" + +#: 964deba937b1486a8a65222912bd2eb2 discord.guild.Guild.ban:11 of +msgid "The user to ban from their guild." +msgstr "" + +#: discord.guild.Guild.ban:14 discord.guild.Guild.bulk_ban:22 +#: f12004652b6a44c3aac2cd2af378b28a of +msgid "" +"The number of seconds worth of messages to delete from the user in the " +"guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The " +"default is 0." +msgstr "" + +#: 921f87c6d6924435af9237d0e0831da0 discord.guild.Guild.ban:19 of +msgid "The reason the user got banned." +msgstr "" + +#: discord.guild.Guild.ban:22 discord.guild.Guild.bulk_ban:34 +#: f0ed8f3842b8443994b81e6081dc5d00 of +msgid "You do not have the proper permissions to ban." +msgstr "" + +#: 2f002500714e4934a50414836da732aa discord.guild.Guild.ban:23 of +msgid "Banning failed." +msgstr "" + +#: dd877201bae44c008dc09493b09db8e6 discord.guild.Guild.bulk_ban:3 of +msgid "Bulk ban users from the guild." +msgstr "" + +#: 33f03ddefbd64b499a435901401beee3 discord.guild.Guild.bulk_ban:5 of +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: 160521264b974bca8bc5a69bfc8efb20 discord.guild.Guild.bulk_ban:19 of +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "" + +#: a2d44ca22def408cae0e51c561ea6252 discord.guild.Guild.bulk_ban:27 of +msgid "The reason the users were banned." +msgstr "" + +#: c8be38577fe0452f83af35aa10e6ba6f discord.guild.Guild.bulk_ban:30 of +msgid "" +"Returns two lists: the first contains members that were successfully " +"banned, while the second is members that could not be banned." +msgstr "" + +#: discord.guild.Guild.bulk_ban:31 fc54d0cdae1c407fb5edbf6291ec62a5 of +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "" + +#: aeec79561bb949d99becec9c2f6b2c73 discord.guild.Guild.bulk_ban:33 of +msgid "You tried to ban more than 200 users." +msgstr "" + +#: 5297b180a9ce4baa8074dd8c40f5e39d discord.guild.Guild.bulk_ban:35 of +msgid "No users were banned." +msgstr "" + +#: 0d95fc42ca2e46e4b00022b067e9c37e discord.guild.Guild.unban:3 of +msgid "Unbans a user from the guild." +msgstr "" + +#: 31d409761a5e47a18a41b77429bddf8e discord.guild.Guild.unban:11 of +msgid "The user to unban." +msgstr "" + +#: 1273209cc03a4f17a1a441da321140a8 discord.guild.Guild.unban:17 of +msgid "You do not have the proper permissions to unban." +msgstr "" + +#: discord.guild.Guild.unban:18 e7f66e79fcd445c9918e030dcbc3c959 of +msgid "Unbanning failed." +msgstr "" + +#: 53fc54fe12e441ceb936081f031cd6b9 discord.guild.Guild.vanity_invite:3 of +msgid "Returns the guild's special vanity invite." +msgstr "" + +#: discord.guild.Guild.vanity_invite:5 e6a89eec37044cf4aaba02a7cdffc538 of +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "" + +#: discord.guild.Guild.vanity_invite:7 f95ef0a0ffad4af89dbac74c911ece29 of +msgid "" +"You must have the :attr:`~Permissions.manage_guild` permission to use " +"this as well." +msgstr "" + +#: 61132536a75c4980ad027ff7010dd60d discord.guild.Guild.vanity_invite:10 of +msgid "" +"The special vanity invite. If ``None`` then the guild does not have a " +"vanity invite set." +msgstr "" + +#: aac84dd0fab64564aca458b9921f1cba discord.guild.Guild.vanity_invite:12 of +msgid "Optional[:class:`Invite`]" +msgstr "" + +#: 9afd0935187a461ab98d15477738fc11 discord.guild.Guild.vanity_invite:14 +#: discord.guild.Guild.welcome_screen:14 of +msgid "You do not have the proper permissions to get this." +msgstr "" + +#: 92f4126e516b40a7ad0844916b460b61 discord.guild.Guild.vanity_invite:15 of +msgid "Retrieving the vanity invite failed." +msgstr "" + +#: 6db9c141f3454a02956d67ae075181e2 discord.guild.Guild.widget:3 of +msgid "Returns the widget of the guild." +msgstr "" + +#: 6de997f9d74246c9896ec0512e55d05f discord.guild.Guild.widget:7 of +msgid "The guild must have the widget enabled to get this information." +msgstr "" + +#: 5ae3e49f57f649848879953ba95e33b5 discord.guild.Guild.widget:9 of +msgid "The guild's widget." +msgstr "" + +#: 70de3135e29b4adc9c43ed76a9f743bc discord.guild.Guild.widget:10 of +msgid ":class:`Widget`" +msgstr "" + +#: c3c4d3e924ff42d4af62063676318e1e discord.guild.Guild.widget:12 of +msgid "The widget for this guild is disabled." +msgstr "" + +#: 7164076f8680428b9070baedc4dcd961 discord.guild.Guild.widget:13 of +msgid "Retrieving the widget failed." +msgstr "" + +#: 884a618895b24208824d7df0d9f00753 discord.guild.Guild.edit_widget:3 of +msgid "Edits the widget of the guild." +msgstr "" + +#: cc0f8147df47422290bc58a79ac5732b discord.guild.Guild.edit_widget:5 of +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "" + +#: discord.guild.Guild.edit_widget:11 f8df75bf67b94e6e9f9cc36b91a776e3 of +msgid "Whether to enable the widget for the guild." +msgstr "" + +#: discord.guild.Guild.edit_widget:14 eed0ed35d95f4b0cbd48c7113ac1bcbc of +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "" + +#: 6937fbe0b1234f878097827fb7d43b77 discord.guild.Guild.edit_widget:17 of +msgid "You do not have permission to edit the widget." +msgstr "" + +#: be2d233cd66048c18682d4d806a9a250 discord.guild.Guild.edit_widget:18 of +msgid "Editing the widget failed." +msgstr "" + +#: d93329457a654f3bba9f67c57323690d discord.guild.Guild.chunk:3 of +msgid "" +"Requests all members that belong to this guild. In order to use this, " +":meth:`Intents.members` must be enabled." +msgstr "" + +#: 9544932f24934807a6ea75123701b991 discord.guild.Guild.chunk:6 +#: discord.guild.Guild.query_members:6 of +msgid "This is a websocket operation and can be slow." +msgstr "" + +#: 70c561834f024cd0883be83ee259e182 discord.guild.Guild.chunk:11 of +msgid "Whether to cache the members as well." +msgstr "" + +#: 4781c9b928184ff3a261a54fc07fdfbd discord.guild.Guild.query_members:3 of +msgid "" +"Request members that belong to this guild whose username starts with the " +"query given." +msgstr "" + +#: 7f885af8335740ee876b3af40fb3042f discord.guild.Guild.query_members:11 of +msgid "The string that the username's start with." +msgstr "" + +#: 3e87b46212064dde916a768dd405fd77 discord.guild.Guild.query_members:14 of +msgid "" +"List of user IDs to search for. If the user ID is not in the guild then " +"it won't be returned. .. versionadded:: 1.4" +msgstr "" + +#: 2e4eecbdbe4841fabc4431d67b034d80 discord.guild.Guild.query_members:14 of +msgid "" +"List of user IDs to search for. If the user ID is not in the guild then " +"it won't be returned." +msgstr "" + +#: d516d96fa2ad4c3a99294f38c51b62e3 discord.guild.Guild.query_members:19 of +msgid "" +"The maximum number of members to send back. If no query is passed, " +"passing ``None`` returns all members. If a ``query`` or ``user_ids`` is " +"passed, must be between 1 and 100. Defaults to 5." +msgstr "" + +#: 3b9a20e913de48aaa1c019f3d468957a discord.guild.Guild.query_members:23 of +msgid "" +"Whether to request for presences to be provided. This defaults to " +"``False``. .. versionadded:: 1.6" +msgstr "" + +#: a5456f3fda6040e7acac052db041d781 discord.guild.Guild.query_members:23 of +msgid "" +"Whether to request for presences to be provided. This defaults to " +"``False``." +msgstr "" + +#: 176463243a414ff0b64fdecf6b9717cb discord.guild.Guild.query_members:29 of +msgid "" +"Whether to cache the members internally. This makes operations such as " +":meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "" + +#: b7e36216d69045c4aff6ea6fc951ab13 discord.guild.Guild.query_members:36 of +msgid "The query timed out waiting for the members." +msgstr "" + +#: 5b3af2d6e1464e3f826c1461e5bc74cb discord.guild.Guild.query_members:37 of +msgid "Invalid parameters were passed to the function" +msgstr "" + +#: 083e7113abc141828c9963a0a2a331b3 discord.guild.Guild.query_members:38 of +msgid "The presences intent is not enabled." +msgstr "" + +#: c1a9a546f19746c78140e6093203a0c6 discord.guild.Guild.change_voice_state:3 of +msgid "Changes client's voice state in the guild." +msgstr "" + +#: a33b965829f846f79a99cf1cae906491 discord.guild.Guild.change_voice_state:8 of +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "" + +#: a6f7e41be9e9486b86706a0b86f3b77e discord.guild.Guild.change_voice_state:11 +#: of +msgid "Indicates if the client should be self-muted." +msgstr "" + +#: a53b68d5aa2d4bf5abd74686fd90145d discord.guild.Guild.change_voice_state:14 +#: of +msgid "Indicates if the client should be self-deafened." +msgstr "" + +#: 9bda182e2a214445a72c17f558913fe7 discord.guild.Guild.welcome_screen:3 of +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "" + +#: 2f6bd3131f2042e389a6cf5c679145f4 discord.guild.Guild.welcome_screen:5 of +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "" + +#: discord.guild.Guild.welcome_screen:7 ff928f87056341a5a1d5860f421d87ab of +msgid "" +"You must have the :attr:`~Permissions.manage_guild` permission in order " +"to get this." +msgstr "" + +#: discord.guild.Guild.welcome_screen:11 ecc30a5b66ff403d9f99fa235321b757 of +msgid "The welcome screen of guild." +msgstr "" + +#: a8775024ec8c4156acf05824fcf64a34 discord.guild.Guild.edit_welcome_screen:20 +#: discord.guild.Guild.welcome_screen:12 of +msgid ":class:`WelcomeScreen`" +msgstr "" + +#: 1aaffa8b3af54bc493fe065e0c985b2c discord.guild.Guild.welcome_screen:15 of +msgid "Retrieving the welcome screen failed somehow." +msgstr "" + +#: 2ca0a22a6e4f4d12bc55b9ac10cd1239 discord.guild.Guild.welcome_screen:16 of +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "" + +#: 99eed2c0f64445be860077576d0f2263 discord.guild.Guild.edit_welcome_screen:3 +#: of +msgid "" +"A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome " +"screen." +msgstr "" + +#: 0645a3e4c2e94af68988b850f3ac4c16 discord.guild.Guild.edit_welcome_screen:5 +#: discord.welcome_screen.WelcomeScreen.edit:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_guild` permission in the " +"guild to do this." +msgstr "" + +#: b9c269e6c70948b49571ba727e4f63e8 discord.guild.Guild.edit_welcome_screen:8 +#: of +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "" + +#: discord.guild.Guild.edit_welcome_screen:10 +#: discord.welcome_screen.WelcomeScreen.edit:8 f0b106b23b04473aa6fcdc972261afae +#: of +msgid "The new description of welcome screen." +msgstr "" + +#: d6c4741ad35f4feda1007d4313472b28 discord.guild.Guild.edit_welcome_screen:12 +#: discord.welcome_screen.WelcomeScreen.edit:10 of +msgid "" +"The welcome channels. The order of the channels would be same as the " +"passed list order." +msgstr "" + +#: 05a7a458521d4d14b6b4d4b4d4ee44fa discord.guild.Guild.edit_welcome_screen:14 +#: discord.welcome_screen.WelcomeScreen.edit:12 of +msgid "Whether the welcome screen should be displayed." +msgstr "" + +#: 69fcaacc9de94c0fa26eb00efdf57a41 discord.guild.Guild.edit_welcome_screen:16 +#: of +msgid "The reason that shows up on audit log." +msgstr "" + +#: 24b50a56be2c4454ba4c69145e24289b discord.guild.Guild.edit_welcome_screen:19 +#: of +msgid "The edited welcome screen." +msgstr "" + +#: 001bef1ddd0c4b4e84fcd27b8df3d96b discord.guild.Guild.edit_welcome_screen:22 +#: discord.welcome_screen.WelcomeScreen.edit:17 of +msgid "Editing the welcome screen failed somehow." +msgstr "" + +#: 6003dd88fec7420199985ef5024bb31a discord.guild.Guild.edit_welcome_screen:23 +#: discord.welcome_screen.WelcomeScreen.edit:18 of +msgid "You don't have permissions to edit the welcome screen." +msgstr "" + +#: 0b7cc1a06b8244c7a6e371bb6495ee5d 2ae3a3676df24d8aabc07fc2d60eb677 +#: discord.guild.Guild.edit_welcome_screen:24 +#: discord.welcome_screen.WelcomeScreen.edit:19 of +msgid "This welcome screen does not exist." +msgstr "" + +#: 1146710c6f234b72868f4854820b1fe7 +#: discord.guild.Guild.fetch_scheduled_events:3 of +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "" + +#: 1f6a9aaf78384eabae7f935cc30d3215 +#: discord.guild.Guild.fetch_scheduled_events:7 of +msgid "" +"This method is an API call. For general usage, consider " +":attr:`scheduled_events` instead." +msgstr "" + +#: b93d82959ad540abb93c374a05b62412 +#: discord.guild.Guild.fetch_scheduled_events:10 of +msgid "" +"If the scheduled event should be fetched with the number of users that " +"are interested in the events. Defaults to ``True``." +msgstr "" + +#: 7803509167534117a3e927c61c8d6e47 +#: discord.guild.Guild.fetch_scheduled_events:15 of +msgid "The fetched scheduled events." +msgstr "" + +#: 4efd44f0307d477eb185d6690ad7db25 +#: discord.guild.Guild.fetch_scheduled_events:16 of +msgid "List[:class:`ScheduledEvent`]" +msgstr "" + +#: 488e46f3eb884958b2b4c9629a4b11c2 +#: discord.guild.Guild.fetch_scheduled_events:18 of +msgid "The scheduled events intent is not enabled." +msgstr "" + +#: 8e4569e0213b4be6ab5b186e2f56f730 +#: discord.guild.Guild.fetch_scheduled_events:19 of +msgid "Getting the scheduled events failed." +msgstr "" + +#: 8429230cb33b41c6ae22422ea1f3eb1b discord.guild.Guild.fetch_scheduled_event:3 +#: of +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "" + +#: b9ab54b2a02d405a8507f76ce557bf9d discord.guild.Guild.fetch_scheduled_event:7 +#: of +msgid "" +"This method is an API call. If you have :attr:`Intents.scheduled_events`," +" consider :meth:`get_scheduled_event` instead." +msgstr "" + +#: a5ff8f1150f8474cb9bb6be02d54e2a6 +#: discord.guild.Guild.fetch_scheduled_event:11 of +msgid "The event's ID to fetch with." +msgstr "" + +#: discord.guild.Guild.fetch_scheduled_event:14 +#: e033fc413f41483d87af4c519972741b of +msgid "" +"If the scheduled vent should be fetched with the number of users that are" +" interested in the event. Defaults to ``True``." +msgstr "" + +#: 4a29e289bff74069ba4cc113ffe0bd97 +#: discord.guild.Guild.fetch_scheduled_event:19 of +msgid "The scheduled event from the event ID." +msgstr "" + +#: 86baf481154547959ddb8413c5939b28 +#: discord.guild.Guild.create_scheduled_event:32 +#: discord.guild.Guild.fetch_scheduled_event:20 +#: discord.guild.Guild.get_scheduled_event:8 discord.invite.Invite:161 +#: ea335cf575724209b2c07a48814c2c53 of +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "" + +#: b62feec903004869b092dfc14ed12962 +#: discord.guild.Guild.fetch_scheduled_event:22 of +msgid "Fetching the event failed." +msgstr "" + +#: 72f86761735b41cb87fa7b1c31a59bde +#: discord.guild.Guild.fetch_scheduled_event:23 of +msgid "Event not found." +msgstr "" + +#: be73574af08f4eb28dbf633b9e545760 discord.guild.Guild.get_scheduled_event:1 +#: of +msgid "Returns a Scheduled Event with the given ID." +msgstr "" + +#: 5d68a842563a4de38d4c48588d6d5c44 discord.guild.Guild.get_scheduled_event:7 +#: of +msgid "The scheduled event or ``None`` if not found." +msgstr "" + +#: discord.guild.Guild.create_scheduled_event:1 +#: f5cb5ca28d824761a94020f0a60ac378 of +msgid "|coro| Creates a scheduled event." +msgstr "" + +#: 55dcb7456e3f40efbcb954cea6d49413 +#: discord.guild.Guild.create_scheduled_event:5 +#: discord.scheduled_events.ScheduledEvent:31 of +msgid "The name of the scheduled event." +msgstr "" + +#: 2377bfb5becb4b0591ce93ddfe51545a +#: discord.guild.Guild.create_scheduled_event:8 +#: discord.scheduled_events.ScheduledEvent:37 of +msgid "The description of the scheduled event." +msgstr "" + +#: 512f5da5b9094054a5601f150fbf130b +#: discord.guild.Guild.create_scheduled_event:11 of +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "" + +#: 0e491a34f7424daf872bb453bf8f1395 +#: discord.guild.Guild.create_scheduled_event:14 of +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "" + +#: afc2c8680c3b4c99b29dfeb41039ac2c +#: discord.guild.Guild.create_scheduled_event:17 of +msgid "The location of where the event is happening." +msgstr "" + +#: 5f56ce92853748bdb97c7d6a998a2956 +#: discord.guild.Guild.create_scheduled_event:20 +#: discord.scheduled_events.ScheduledEvent.edit:32 of +msgid "" +"The privacy level of the event. Currently, the only possible value is " +":attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there" +" is no need to change this parameter." +msgstr "" + +#: 6f0e0e8f39384675bc1794823cb3fa20 +#: discord.guild.Guild.create_scheduled_event:25 +#: discord.scheduled_events.ScheduledEvent.cancel:10 +#: discord.scheduled_events.ScheduledEvent.complete:10 +#: discord.scheduled_events.ScheduledEvent.edit:37 +#: discord.scheduled_events.ScheduledEvent.start:10 of +msgid "The reason to show in the audit log." +msgstr "" + +#: 6eca104b38b340f0a46b29a4c8199630 +#: discord.guild.Guild.create_scheduled_event:28 of +msgid "The cover image of the scheduled event" +msgstr "" + +#: 546727e696df48378cae34ed85c59496 +#: discord.guild.Guild.create_scheduled_event:31 of +msgid "The created scheduled event." +msgstr "" + +#: 5d785162986749e2945e8c651dc507eb +#: discord.guild.Guild.create_scheduled_event:34 +#: discord.scheduled_events.ScheduledEvent.cancel:16 +#: discord.scheduled_events.ScheduledEvent.complete:16 +#: discord.scheduled_events.ScheduledEvent.delete:5 +#: discord.scheduled_events.ScheduledEvent.edit:53 +#: discord.scheduled_events.ScheduledEvent.start:16 of +msgid "You do not have the Manage Events permission." +msgstr "" + +#: cfdafb562ce2471cb433dffc655b8923 discord.Guild.scheduled_events:1 of +msgid "A list of scheduled events in this guild." +msgstr "" + +#: discord.guild.Guild.fetch_auto_moderation_rules:3 +#: e43b1b902c254f22982e6c92115c5491 of +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "" + +#: a4eb186fe95e4d638aebdad1c96262c6 +#: discord.guild.Guild.fetch_auto_moderation_rules:5 of +msgid "The auto moderation rules for this guild." +msgstr "" + +#: 92001cdcd8024353b77d873048fca432 +#: discord.guild.Guild.fetch_auto_moderation_rules:6 of +msgid "List[:class:`AutoModRule`]" +msgstr "" + +#: 7fa3d786434c46bbb28a3203dbae0c3c +#: discord.guild.Guild.fetch_auto_moderation_rules:8 of +msgid "Getting the auto moderation rules failed." +msgstr "" + +#: cf5d9362cb0f4a96ae1fcd563b178d27 discord.automod.AutoModRule.delete:9 +#: discord.automod.AutoModRule.edit:34 +#: discord.guild.Guild.create_auto_moderation_rule:35 +#: discord.guild.Guild.delete_auto_moderation_rule:11 +#: discord.guild.Guild.fetch_auto_moderation_rule:9 +#: discord.guild.Guild.fetch_auto_moderation_rules:9 +#: f4cb677bf946444db00720582cadf54e of +msgid "You do not have the Manage Guild permission." +msgstr "" + +#: 9fd0f32195da4f8a8ba6afeee64defe2 +#: discord.guild.Guild.fetch_auto_moderation_rule:3 of +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "" + +#: 8e9b5d93fd7248ffbc6f2a1a36e66f74 +#: discord.guild.Guild.fetch_auto_moderation_rule:5 of +msgid "The requested auto moderation rule." +msgstr "" + +#: b9a3c3d15f1d42158f2d6557141abe8f +#: discord.guild.Guild.create_auto_moderation_rule:32 +#: discord.guild.Guild.fetch_auto_moderation_rule:6 of +msgid ":class:`AutoModRule`" +msgstr "" + +#: be33175c8ed04894a62d75550622c6da +#: discord.guild.Guild.fetch_auto_moderation_rule:8 of +msgid "Getting the auto moderation rule failed." +msgstr "" + +#: 022f3795574a4ae9a73bc531c60b5f33 +#: discord.guild.Guild.create_auto_moderation_rule:1 of +msgid "Creates an auto moderation rule." +msgstr "" + +#: discord.guild.Guild.create_auto_moderation_rule:4 +#: fc7c82e7ce5240ae87a4b8888a1834a8 of +msgid "The name of the auto moderation rule." +msgstr "" + +#: 2bf99f7c1e524737a54f7496291c4a69 +#: discord.guild.Guild.create_auto_moderation_rule:7 of +msgid "The type of event that triggers the rule." +msgstr "" + +#: bd79dbece2e34f6883ab4c43f0eefdfe +#: discord.guild.Guild.create_auto_moderation_rule:10 of +msgid "The rule's trigger type." +msgstr "" + +#: 761219e812e54e64acae665e0f0a3ee0 discord.automod.AutoModRule:55 +#: discord.guild.Guild.create_auto_moderation_rule:13 of +msgid "The rule's trigger metadata." +msgstr "" + +#: 2c4ec7efb2a84a4e932cd105f8c8bd9f +#: discord.guild.Guild.create_auto_moderation_rule:16 of +msgid "The actions to take when the rule is triggered." +msgstr "" + +#: discord.guild.Guild.create_auto_moderation_rule:19 +#: ea4fedcb8baf4e8e80b732580b8864c7 of +msgid "Whether the rule is enabled." +msgstr "" + +#: 38f882f570db4c2ca22c7f0c52e414f8 +#: discord.guild.Guild.create_auto_moderation_rule:22 of +msgid "A list of roles that are exempt from the rule." +msgstr "" + +#: 81f668b4f0c94a599649916de9551caf +#: discord.guild.Guild.create_auto_moderation_rule:25 of +msgid "A list of channels that are exempt from the rule." +msgstr "" + +#: 4531d8bc55b844b3958a17c91aac2604 +#: discord.guild.Guild.create_auto_moderation_rule:28 of +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "" + +#: 105efa6a98d7495c9dfa2b71680219b3 +#: discord.guild.Guild.create_auto_moderation_rule:31 of +msgid "The new auto moderation rule." +msgstr "" + +#: 8e17d899e28b469bbe0771a8ae35d57a +#: discord.guild.Guild.create_auto_moderation_rule:34 of +msgid "Creating the auto moderation rule failed." +msgstr "" + +#: c61190617cf6478d8d9c4b6d95d08e50 discord.guild.Guild.onboarding:3 of +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "" + +#: 46ce13e0435c4f2dac885ba6d56e4069 discord.guild.Guild.onboarding:7 of +msgid "The onboarding flow for the guild." +msgstr "" + +#: c343d9d40bae4a43bd68f1af8e94f4e8 discord.guild.Guild.edit_onboarding:27 +#: discord.guild.Guild.onboarding:8 discord.onboarding.Onboarding.add_prompt:31 +#: discord.onboarding.Onboarding.append_prompt:16 +#: discord.onboarding.Onboarding.delete_prompt:16 +#: discord.onboarding.Onboarding.edit:27 of +msgid ":class:`Onboarding`" +msgstr "" + +#: 77d044af231d4ace904c995790c1a138 discord.guild.Guild.onboarding:10 of +msgid "Retrieving the onboarding flow failed somehow." +msgstr "" + +#: 0d64da82315f4e298378e33fe0448d34 discord.guild.Guild.edit_onboarding:3 of +msgid "" +"A shorthand for :attr:`Onboarding.edit` without fetching the onboarding " +"flow." +msgstr "" + +#: 0882c5ddfa7e4b1a9f4c9a828646c692 discord.guild.Guild.edit_onboarding:5 +#: discord.onboarding.Onboarding.add_prompt:5 +#: discord.onboarding.Onboarding.append_prompt:5 +#: discord.onboarding.Onboarding.delete_prompt:5 +#: discord.onboarding.Onboarding.edit:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_guild` and " +":attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "" + +#: 45a92da581e04fa2b319585280d42b15 discord.guild.Guild.edit_onboarding:9 +#: discord.onboarding.Onboarding.edit:9 of +msgid "The new list of prompts for this flow." +msgstr "" + +#: cafaefe922dd48c5ba61c50a27ec28dd discord.guild.Guild.edit_onboarding:12 +#: discord.onboarding.Onboarding.edit:12 of +msgid "The new default channels that users are opted into." +msgstr "" + +#: 5d6d3ca99aa8482dbc6ffda9436fbe5b discord.guild.Guild.edit_onboarding:15 +#: discord.onboarding.Onboarding.edit:15 of +msgid "" +"Whether onboarding should be enabled. Setting this to ``True`` requires " +"the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7" +" ``default_channels``." +msgstr "" + +#: 74763711887947678db4c474731cbcea discord.guild.Guild.edit_onboarding:20 +#: discord.onboarding.Onboarding.edit:20 of +msgid "The new onboarding mode." +msgstr "" + +#: 4efb14b400af448684e8daabbaf07bfb discord.guild.Guild.edit_onboarding:23 +#: discord.welcome_screen.WelcomeScreen.edit:14 of +msgid "The reason that shows up on Audit log." +msgstr "" + +#: b2acfb4f157841e4b7c8d566142234e4 discord.guild.Guild.edit_onboarding:26 +#: discord.onboarding.Onboarding.add_prompt:30 +#: discord.onboarding.Onboarding.append_prompt:15 +#: discord.onboarding.Onboarding.delete_prompt:15 +#: discord.onboarding.Onboarding.edit:26 of +msgid "The updated onboarding flow." +msgstr "" + +#: 3f3449ad058c4ff6bf3428a177b5aaa8 discord.guild.Guild.edit_onboarding:29 +#: discord.onboarding.Onboarding.add_prompt:33 +#: discord.onboarding.Onboarding.append_prompt:18 +#: discord.onboarding.Onboarding.delete_prompt:19 +#: discord.onboarding.Onboarding.edit:29 of +msgid "Editing the onboarding flow failed somehow." +msgstr "" + +#: 86b87547d2ed4552ac12516dc869b8f1 discord.guild.Guild.edit_onboarding:30 +#: discord.onboarding.Onboarding.add_prompt:34 +#: discord.onboarding.Onboarding.append_prompt:19 +#: discord.onboarding.Onboarding.delete_prompt:20 +#: discord.onboarding.Onboarding.edit:30 of +msgid "You don't have permissions to edit the onboarding flow." +msgstr "" + +#: 48cf22ba0c99497080c86cbff0eee085 +#: discord.guild.Guild.delete_auto_moderation_rule:1 of +msgid "Deletes an auto moderation rule." +msgstr "" + +#: 3f5008bb6cf04927b981b47ead834904 +#: discord.guild.Guild.delete_auto_moderation_rule:4 of +msgid "The ID of the auto moderation rule." +msgstr "" + +#: 7067e1b021e24246a274ecf334b608a3 +#: discord.guild.Guild.delete_auto_moderation_rule:7 of +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "" + +#: cf81134ec30b4520b0f5883093b5ef56 +#: discord.guild.Guild.delete_auto_moderation_rule:10 of +msgid "Deleting the auto moderation rule failed." +msgstr "" + +#: discord.guild.Guild.create_test_entitlement:3 +#: ead2e3553f9f4a35bbb876a7f8a1c957 of +msgid "Creates a test entitlement for the guild." +msgstr "" + +#: 0a2edf433dd24913b837190596f61a7d discord.guild.Guild.entitlements:1 of +msgid "" +"Returns an :class:`.AsyncIterator` that enables fetching the guild's " +"entitlements." +msgstr "" + +#: 49db5051d76041628c6e8b56d1e9064e discord.guild.Guild.entitlements:3 of +msgid "" +"This is identical to :meth:`Client.entitlements` with the ``guild`` " +"parameter." +msgstr "" + +#: ../../api/models.rst:134 fb9668f6a20a4f0bbf8ba6929fd3594b +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "" + +#: ../../api/models.rst:138 4d8636790bdc471f860037026c9b8f57 +msgid "The reason this user was banned." +msgstr "" + +#: ../../api/models.rst:143 83ffc7d2c2814caa965b59434791892d +msgid "The :class:`User` that was banned." +msgstr "" + +#: ../../api/models.rst:145 d1bc287ff89b4eea9c60ff6c175ddc51 +#: discord.integrations.BotIntegration:39 discord.integrations.Integration:45 +#: discord.integrations.StreamIntegration:63 +#: discord.interactions.InteractionMetadata:23 +#: discord.interactions.MessageInteraction:37 discord.template.Template:33 of +msgid ":class:`User`" +msgstr "" + +#: 4224e72302b244e5975ce30b9083fe11 discord.member.Member:1 of +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "" + +#: 16147907536f4214984d222a2b1f3b49 discord.member.Member:3 of +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "" + +#: 4bd0f2d59e4c475b997f1ec81989baeb discord.member.Member:9 of +msgid "" +"Checks if two members are equal. Note that this works with :class:`User` " +"instances too." +msgstr "" + +#: c16c8485920d4219bc3306573a48106d discord.member.Member:14 of +msgid "" +"Checks if two members are not equal. Note that this works with " +":class:`User` instances too." +msgstr "" + +#: cd62a2fc56714695abacf07b65286fac discord.member.Member:19 of +msgid "Returns the member's hash." +msgstr "" + +#: c916cab233ba4291b5947e372bead4d4 discord.member.Member:23 of +msgid "Returns the member's name with the discriminator or global_name." +msgstr "" + +#: discord.member.Member:27 fd09fb6dee234da99f1a284943155802 of +msgid "" +"An aware datetime object that specifies the date and time in UTC that the" +" member joined the guild. If the member left and rejoined the guild, this" +" will be the latest date. In certain cases, this can be ``None``." +msgstr "" + +#: 97e4088148b34fd29deedd05736cb686 discord.member.Member:34 of +msgid "The activities that the user is currently doing." +msgstr "" + +#: 300358621dd14a42adf6c1f0b0aa3c5c discord.member.Member:38 of +msgid "" +"Due to a Discord API limitation, a user's Spotify activity may not appear" +" if they are listening to a song with a title longer than 128 characters." +msgstr "" + +#: 94261981c2ca405dbc02c617650d3d7e discord.member.Member:42 of +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "" + +#: 15957280725e487e86cc9fdc1f09686c discord.member.Member:46 of +msgid "The guild that the member belongs to." +msgstr "" + +#: af5f6ac353344515bf322a8d556b7492 discord.member.Member:52 of +msgid "The guild specific nickname of the user." +msgstr "" + +#: 54756fffdae9412eb7cacf5266721fe4 discord.member.Member:58 of +msgid "Whether the member is pending member verification." +msgstr "" + +#: 23818d39e4094f75a12136a59f5a79f0 discord.member.Member:66 of +msgid "" +"An aware datetime object that specifies the date and time in UTC when the" +" member used their \"Nitro boost\" on the guild, if available. This could" +" be ``None``." +msgstr "" + +#: 3950ea6a6bd645e7a1bf3c1284b3bc3f discord.member.Member:73 of +msgid "" +"An aware datetime object that specifies the date and time in UTC when the" +" member will be removed from timeout." +msgstr "" + +#: a9a6616aac0148a58f9225a34376e401 discord.member.Member:81 of +msgid "Extra attributes of the member." +msgstr "" + +#: 5cb8a7de85bf4b94b5bc71709d021690 discord.member.Member:85 of +msgid ":class:`MemberFlags`" +msgstr "" + +#: d19c2f29833942f18d614198d6fb687e discord.Member.name:1 of +msgid "Equivalent to :attr:`User.name`" +msgstr "" + +#: c492902022b849c29d575c5329b401e3 discord.Member.id:1 of +msgid "Equivalent to :attr:`User.id`" +msgstr "" + +#: 59af3cdce2f84e048157b3ee5440b776 discord.Member.discriminator:1 of +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "" + +#: df849db718194071a81fe2a2f7184a2a discord.Member.bot:1 of +msgid "Equivalent to :attr:`User.bot`" +msgstr "" + +#: 0bc73fc598fd48039fcfcc9a78d3b99c discord.Member.system:1 of +msgid "Equivalent to :attr:`User.system`" +msgstr "" + +#: discord.Member.created_at:1 f9d06af574d1446c87a936924dad6c64 of +msgid "Equivalent to :attr:`User.created_at`" +msgstr "" + +#: d05acb1f08ea4efca7ea02095ff098d5 discord.Member.default_avatar:1 of +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "" + +#: 0636df0c16b34527af057d465fec0505 discord.Member.avatar:1 of +msgid "Equivalent to :attr:`User.avatar`" +msgstr "" + +#: 303c7c64fda0424ebbe70e6883543f44 discord.Member.dm_channel:1 of +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "" + +#: 423c486c003247ac9966ca71793c8b48 discord.Member.mutual_guilds:1 of +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "" + +#: a592ed6a8cfc42d3a82c9f7e3e27a6f2 discord.Member.public_flags:1 of +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "" + +#: dc7ae802cab54df5a8aa17332269f562 discord.Member.banner:1 of +msgid "Equivalent to :attr:`User.banner`" +msgstr "" + +#: 19d8cea50fbd44909edfbf8a094bfae2 discord.Member.accent_color:1 of +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "" + +#: 0432ce3359414325b19aee690117aef6 discord.Member.accent_colour:1 of +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "" + +#: 2f5fea69ade2408d8f7ee6fd6088f598 discord.Member.raw_status:1 of +msgid "The member's overall status as a string value." +msgstr "" + +#: 9e786b933ad54b38bebdba5654823859 discord.Member.status:1 of +msgid "" +"The member's overall status. If the value is unknown, then it will be a " +":class:`str` instead." +msgstr "" + +#: 54c542a06dc241189497c93b96043a9b discord.Member.mobile_status:1 of +msgid "The member's status on a mobile device, if applicable." +msgstr "" + +#: 29edc36c25774b2ab46b7321043cde87 discord.Member.desktop_status:1 of +msgid "The member's status on the desktop client, if applicable." +msgstr "" + +#: discord.Member.web_status:1 fa6a34f9e6f04c128a517e4f8262782a of +msgid "The member's status on the web client, if applicable." +msgstr "" + +#: ca2bed1e705c4f4a853c1a36773e1e9e discord.Member.global_name:1 of +msgid "The member's global name, if applicable." +msgstr "" + +#: 6bfa3f0e7dcc47368b087045bbfd8453 discord.member.Member.is_on_mobile:1 of +msgid "" +"A helper function that determines if a member is active on a mobile " +"device." +msgstr "" + +#: discord.Member.colour:1 ec82496d1ce14217b009e4cb3c93ae1c of +msgid "" +"A property that returns a colour denoting the rendered colour for the " +"member. If the default colour is the one rendered then an instance of " +":meth:`Colour.default` is returned." +msgstr "" + +#: ca143b673e1845aea65f2c7ce04c1301 discord.Member.color:1 of +msgid "" +"A property that returns a color denoting the rendered color for the " +"member. If the default color is the one rendered then an instance of " +":meth:`Colour.default` is returned." +msgstr "" + +#: 621f782ce5f14018a13edc57e5d3e1cb discord.Member.roles:1 of +msgid "" +"A :class:`list` of :class:`Role` that the member belongs to. Note that " +"the first element of this list is always the default '@everyone' role." +msgstr "" + +#: discord.Member.roles:5 e9735a8be8f844cb9d1f7506c6948b54 of +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "" + +#: cb31142c94234c7d96a5f9e8a9203a76 discord.Member.mention:1 of +msgid "Returns a string that allows you to mention the member." +msgstr "" + +#: c7bbcd6fa1b8499c9d5abb92d639c395 discord.Member.display_name:1 of +msgid "" +"Returns the user's display name. This will either be their guild specific" +" nickname, global name or username." +msgstr "" + +#: 7cd0c7fd0121466d856b8544e0085b53 discord.Member.display_avatar:1 of +msgid "Returns the member's display avatar." +msgstr "" + +#: 2db0b9f8f64f48938c7e870b6c4d507c discord.Member.display_avatar:3 of +msgid "" +"For regular members this is just their avatar, but if they have a guild " +"specific avatar then that is returned instead." +msgstr "" + +#: 58517cfb8d7e46efa7aad63030e3d132 discord.Member.guild_avatar:1 of +msgid "" +"Returns an :class:`Asset` for the guild avatar the member has. If " +"unavailable, ``None`` is returned." +msgstr "" + +#: be1c1bedfca64980a23a4e6ce258f0d1 discord.Member.display_banner:1 of +msgid "Returns the member's display banner." +msgstr "" + +#: 66a66f71e0fe488ca806a75ad79389bd discord.Member.display_banner:3 of +msgid "" +"For regular members this is just their banner, but if they have a guild " +"specific banner then that is returned instead." +msgstr "" + +#: 11a30a6056824ad3b282435d7c3ac74f discord.Member.guild_banner:1 of +msgid "" +"Returns an :class:`Asset` for the guild banner the member has. If " +"unavailable, ``None`` is returned." +msgstr "" + +#: 0fe8c01199404f9bb81abee32e46de02 discord.Member.activity:1 of +msgid "" +"Returns the primary activity the user is currently doing. Could be " +"``None`` if no activity is being done." +msgstr "" + +#: 61a9e50b25374094a07265d4c6e399bf discord.Member.activity:6 of +msgid "" +"Due to a Discord API limitation, this may be ``None`` if the user is " +"listening to a song on Spotify with a title longer than 128 characters." +msgstr "" + +#: 463255fd89a34300bd54e6b46893449b discord.Member.activity:12 of +msgid "" +"A user may have multiple activities, these can be accessed under " +":attr:`activities`." +msgstr "" + +#: 8f055d7ad1d3409c9bc0a6982a4df3d5 discord.member.Member.mentioned_in:1 of +msgid "Checks if the member is mentioned in the specified message." +msgstr "" + +#: c123f04c08954fd880f0b46e12cf1b5f discord.member.Member.mentioned_in:7 of +msgid "Indicates if the member is mentioned in the message." +msgstr "" + +#: 2de2e5171bf84639ac1169e05f17b87b discord.Member.top_role:1 of +msgid "Returns the member's highest role." +msgstr "" + +#: 99f7f895d96949ef857d0068159226fc discord.Member.top_role:3 of +msgid "" +"This is useful for figuring where a member stands in the role hierarchy " +"chain." +msgstr "" + +#: 95d5eecd0cdc4c518d47eb8dc9f410f3 discord.Member.guild_permissions:1 of +msgid "Returns the member's guild permissions." +msgstr "" + +#: 31425c322a96462e99b4728a7ae8cf2b discord.Member.guild_permissions:3 of +msgid "" +"This only takes into consideration the guild permissions and not most of " +"the implied permissions or any of the channel permission overwrites. For " +"100% accurate permission calculation, please use " +":meth:`abc.GuildChannel.permissions_for`." +msgstr "" + +#: a5c4a9f7842446d19859918a6574b8c5 discord.Member.guild_permissions:8 of +msgid "" +"This does take into consideration guild ownership and the administrator " +"implication." +msgstr "" + +#: b7f18c6561624baf9b387e7cbc9410f7 discord.Member.voice:1 of +msgid "Returns the member's current voice state." +msgstr "" + +#: 8fa6a9e228fa43ae828849ed839b3fe6 discord.Member.timed_out:1 of +msgid "Returns whether the member is timed out." +msgstr "" + +#: cf3459c60a5448888d44092d532857cb discord.member.Member.ban:3 of +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "" + +#: 55b8c90e571e446792626dd6ae30518b discord.member.Member.unban:3 of +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "" + +#: d4b65da0baee4f14b3ead3f145cb41b4 discord.member.Member.kick:3 of +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "" + +#: 3f0a1b838a2647c3b891a0598e75ba6d discord.member.Member.edit:3 of +msgid "Edits the member's data." +msgstr "" + +#: 191f92a299584434b1a8ece363f2970e discord.member.Member.edit:5 of +msgid "" +"Depending on the parameter passed, this requires different permissions " +"listed below:" +msgstr "" + +#: c583cbd9466848e5b3a66e42d181fa40 discord.member.Member.edit:8 of +msgid "Parameter" +msgstr "" + +#: 2b01166c89e247bea4fc825dfcb3b915 discord.member.Member.edit:8 of +msgid "Permission" +msgstr "" + +#: discord.member.Member.edit:10 f5156642c2e34f729bbe6863ddc3184f of +msgid "nick" +msgstr "" + +#: discord.member.Member.edit:10 e683810bda264f899e9c08a6db087a41 of +msgid ":attr:`Permissions.manage_nicknames`" +msgstr "" + +#: 4f4b3d3eb3a841ec9bcd348b6e6b754a discord.member.Member.edit:12 of +msgid "mute" +msgstr "" + +#: d3f5c1a20f264280b200cbcac5c0d6d5 discord.member.Member.edit:12 of +msgid ":attr:`Permissions.mute_members`" +msgstr "" + +#: 5a0b2ea3a1fe4c00b62fbf3ca37a2056 discord.member.Member.edit:14 of +msgid "deafen" +msgstr "" + +#: 6aa212566176493fa4693e9e84a1ca0f discord.member.Member.edit:14 of +msgid ":attr:`Permissions.deafen_members`" +msgstr "" + +#: discord.member.Member.edit:16 e68265f5c790401bac6f73bcc637cf99 of +msgid "roles" +msgstr "" + +#: 9ea588ed6dd64cf1a5fe4bf6f57c6059 discord.member.Member.edit:16 of +msgid ":attr:`Permissions.manage_roles`" +msgstr "" + +#: 520b1222e9fb4a82af38bbbc41bbf3d3 discord.member.Member.edit:18 of +msgid "voice_channel" +msgstr "" + +#: 369a4c2a10674441ae336a1ccb56e699 discord.member.Member.edit:18 of +msgid ":attr:`Permissions.move_members`" +msgstr "" + +#: b55fbe99ab8742069352b60ad9017339 discord.member.Member.edit:20 of +msgid "communication_disabled_until" +msgstr "" + +#: b497816b27384f2f89f7def4a8a8b46f discord.member.Member.edit:20 of +msgid ":attr:`Permissions.moderate_members`" +msgstr "" + +#: bbd302f910334704934ca0c09a1837fa discord.member.Member.edit:22 of +msgid "bypass_verification" +msgstr "" + +#: discord.member.Member.edit:22 fb447ba10e5d4f0788669d8e55273e16 of +msgid "See note below" +msgstr "" + +#: 76a3becb4b6c4bfab9e65f0e7fc1e4ef discord.member.Member.edit:27 of +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "" + +#: c5003198a611467882fab14bdd0444bb discord.member.Member.edit:29 of +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "" + +#: 66e3186beb5a47ceb21589afcbdfcd6c discord.member.Member.edit:31 of +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "" + +#: bdadfe5cb0704ebd9df5045592ffcff5 discord.member.Member.edit:33 of +msgid "" +"Client has ALL THREE of :attr:`Permissions.moderate_members`, " +":attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "" + +#: discord.member.Member.edit:37 f841e22738634da48594ee1e17ad1916 of +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "" + +#: 9daf22cbbe1b41bc8bdd328b01d14338 discord.member.Member.edit:40 of +msgid "The newly member is now optionally returned, if applicable." +msgstr "" + +#: 1e205abbcb6c42148f88e2b2ea1e223d discord.member.Member.edit:44 of +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "" + +#: 93bd86a0ac724cfbb2b9e05b0e3bf0a6 discord.member.Member.edit:47 of +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "" + +#: 5ce7761f05ac4b15b453852bc84acd07 discord.member.Member.edit:50 of +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "" + +#: discord.member.Member.edit:53 e0c6410979ab4bb999e9c991839b67c2 of +msgid "" +"Indicates if the member should be suppressed in stage channels. .. " +"versionadded:: 1.7" +msgstr "" + +#: 4707597fe3f4402d99abcd4c353e8d8c discord.member.Member.edit:53 of +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "" + +#: d5ad7f3d9790412b8a1a6e9e335d35fd discord.member.Member.edit:58 of +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "" + +#: ad76d48b98e344078e1778cae1d3828e discord.member.Member.edit:61 of +msgid "" +"The voice channel to move the member to. Pass ``None`` to kick them from " +"voice." +msgstr "" + +#: 7d2ece875a854077aa8922df9658464e discord.member.Member.edit:65 of +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "" + +#: 12b3b480b959409c97a966579c582741 discord.member.Member.edit:68 of +msgid "" +"Temporarily puts the member in timeout until this time. If the value is " +"``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "" + +#: 3c6b7a21d66b4d2fb80ea744cae56c1b discord.member.Member.edit:68 of +msgid "" +"Temporarily puts the member in timeout until this time. If the value is " +"``None``, then the user is removed from timeout." +msgstr "" + +#: 7a3b65549f614538a0ebb902d0238dff discord.member.Member.edit:74 of +msgid "" +"Indicates if the member should bypass the guild's verification " +"requirements. .. versionadded:: 2.6" +msgstr "" + +#: 6465b7a29e214013a4a396a21814536c discord.member.Member.edit:74 of +msgid "" +"Indicates if the member should bypass the guild's verification " +"requirements." +msgstr "" + +#: 2adf8663f70b4a72b1fa3c51ddfb6c41 discord.member.Member.edit:79 of +msgid "" +"The newly updated member, if applicable. This is only returned when " +"certain fields are updated." +msgstr "" + +#: a6a8e0142c534a4c9db5ea9905bf1324 discord.member.Member.edit:81 of +msgid "Optional[:class:`.Member`]" +msgstr "" + +#: 9fcd0b74f14347da8c2bbb599a1d6f8a discord.member.Member.edit:83 +#: discord.member.Member.request_to_speak:16 of +msgid "You do not have the proper permissions to the action requested." +msgstr "" + +#: 67fcfd3c206a4c318800ab0f5de5c77b discord.member.Member.timeout:3 of +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "" + +#: 07ab819209a440ab914bf6c94d75af30 8f3a11b0ffb6483eb2e62e38d7f3b417 +#: discord.member.Member.timeout:5 discord.member.Member.timeout_for:6 of +msgid "" +"You must have the :attr:`~Permissions.moderate_members` permission to " +"timeout a member." +msgstr "" + +#: 1e92b504d5134586905349c69536d3fd discord.member.Member.timeout:8 of +msgid "" +"The date and time to timeout the member for. If this is ``None`` then the" +" member is removed from timeout." +msgstr "" + +#: 290a334f5b9f48f0ad5f62553d07c555 discord.member.Member.timeout:14 +#: discord.member.Member.timeout_for:16 of +msgid "You do not have permissions to timeout members." +msgstr "" + +#: ce0d879a4399461a90bc27598271760b discord.member.Member.remove_timeout:15 +#: discord.member.Member.timeout:15 discord.member.Member.timeout_for:17 of +msgid "An error occurred doing the request." +msgstr "" + +#: 39be7fd9a9504abf8bb9496fc5da44ca discord.member.Member.timeout_for:3 of +msgid "" +"Applies a timeout to a member in the guild for a set duration. A shortcut" +" method for :meth:`~.timeout`, and equivalent to " +"``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "" + +#: discord.member.Member.timeout_for:10 fd041c18511244ac839dcc4d8c2d4c07 of +msgid "The duration to timeout the member for." +msgstr "" + +#: discord.member.Member.remove_timeout:3 fd70d9a85517425eac26f22be69dc022 of +msgid "Removes the timeout from a member." +msgstr "" + +#: 8f09beeaef574af6a7d9e0a5b815cee6 discord.member.Member.remove_timeout:5 of +msgid "" +"You must have the :attr:`~Permissions.moderate_members` permission to " +"remove the timeout." +msgstr "" + +#: 3a47bba56957450c8a25ee82cfe2acd8 discord.member.Member.remove_timeout:8 of +msgid "" +"This is equivalent to calling :meth:`~.timeout` and passing ``None`` to " +"the ``until`` parameter." +msgstr "" + +#: 722571d769ca4a9c845bb58aebebbaea discord.member.Member.remove_timeout:14 of +msgid "You do not have permissions to remove the timeout." +msgstr "" + +#: 8b1ddf2494da4d18b8104138bdad7fe9 discord.member.Member.request_to_speak:3 of +msgid "Request to speak in the connected channel." +msgstr "" + +#: 0399a9d50af149919d64576b2e22f6bb discord.member.Member.request_to_speak:5 of +msgid "" +"Only applies to stage channels. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: b8b4bc2b34d041c8aa4c00881624baee discord.member.Member.request_to_speak:11 +#: of +msgid "" +"Requesting members that are not the client is equivalent to :attr:`.edit`" +" providing ``suppress`` as ``False``." +msgstr "" + +#: 482a70bf0cdd4117afac463a709c136f discord.member.Member.move_to:3 of +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "" + +#: 5499de24315c4e3681b7dcd8cca1e9b1 discord.member.Member.move_to:5 of +msgid "" +"You must have the :attr:`~Permissions.move_members` permission to use " +"this." +msgstr "" + +#: 69861da81eff4d51b5634bf458738e8b discord.member.Member.move_to:8 of +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "" + +#: 0ef28902ea594c2690adf3ba5b9d81c9 discord.member.Member.move_to:10 of +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "" + +#: 503735ef849943d2b4b2fa0fd2d04967 discord.member.Member.move_to:14 of +msgid "" +"The new voice channel to move the member to. Pass ``None`` to kick them " +"from voice." +msgstr "" + +#: 4fca1b79777444d7ad677cd10494b795 discord.member.Member.add_roles:3 of +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "" + +#: 16b5351a5d2d442e95285cc327bff730 discord.member.Member.add_roles:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_roles` permission to use " +"this, and the added :class:`Role`\\s must appear lower in the list of " +"roles than the highest role of the member." +msgstr "" + +#: 08e555262cee446794f4f563b0c99c84 discord.member.Member.add_roles:10 of +msgid "" +"An argument list of :class:`abc.Snowflake` representing a :class:`Role` " +"to give to the member." +msgstr "" + +#: cdb82fa7747642ebbbb2e87cdfb0641e discord.member.Member.add_roles:14 of +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "" + +#: 8ab879d3759a45a1b30cc9e5d8271623 discord.member.Member.add_roles:17 of +msgid "" +"Whether to atomically add roles. This will ensure that multiple " +"operations will always be applied regardless of the current state of the " +"cache." +msgstr "" + +#: b29f7142676942f9acc3da4f6606a1d3 discord.member.Member.add_roles:22 of +msgid "You do not have permissions to add these roles." +msgstr "" + +#: 59cd6ba166c9409abf12b3a10d1f2e48 discord.member.Member.add_roles:23 of +msgid "Adding roles failed." +msgstr "" + +#: cabe3ed43fdf4e4ebc41e33075bd0b9f discord.Member.avatar_decoration:1 of +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "" + +#: discord.Member.is_migrated:1 f9263362216f45cb993e644b8f06e9b7 of +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "" + +#: 2a9456847dbd44caa70b41a1ace5907a discord.Member.jump_url:1 of +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "" + +#: ce5eafe9a84847258a6bf6a05706fd4c discord.member.Member.remove_roles:3 of +msgid "Removes :class:`Role`\\s from this member." +msgstr "" + +#: 9d40127d6bc14fa6849472841667a3a3 discord.member.Member.remove_roles:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_roles` permission to use " +"this, and the removed :class:`Role`\\s must appear lower in the list of " +"roles than the highest role of the member." +msgstr "" + +#: 151f782cf7da475a9348e09c83b381a5 discord.member.Member.remove_roles:10 of +msgid "" +"An argument list of :class:`abc.Snowflake` representing a :class:`Role` " +"to remove from the member." +msgstr "" + +#: 2e48cc6bee8f4c1c82f680c63fb2f9ee discord.member.Member.remove_roles:14 of +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "" + +#: aaa8ce8da63e4e36bfd04c5556440d03 discord.member.Member.remove_roles:17 of +msgid "" +"Whether to atomically remove roles. This will ensure that multiple " +"operations will always be applied regardless of the current state of the " +"cache." +msgstr "" + +#: 9056f686438c4efda4be253e5b5d6698 discord.member.Member.remove_roles:22 of +msgid "You do not have permissions to remove these roles." +msgstr "" + +#: b28ab0944bac46fcb93d05451f0c7447 discord.member.Member.remove_roles:23 of +msgid "Removing the roles failed." +msgstr "" + +#: 1a315b9d0ae84ef9a8aaac0e3b6e82f8 discord.member.Member.get_role:1 of +msgid "Returns a role with the given ID from roles which the member has." +msgstr "" + +#: c4ef36a9616d459ea91ba285772aa15c discord.member.Member.get_role:9 of +msgid "The role or ``None`` if not found in the member's roles." +msgstr "" + +#: bf5548d7f1344452ac9aab8d493066f8 discord.template.Template:1 of +msgid "Represents a Discord template." +msgstr "" + +#: discord.template.Template:7 e9cb8b6efd734274924a4126f172a997 of +msgid "The template code." +msgstr "" + +#: 1f2a73ed296346078fcffc86ef712e2b discord.template.Template:13 of +msgid "How many times the template has been used." +msgstr "" + +#: c83fded2631f4cf1b2d646c3d5e3c144 discord.template.Template:31 of +msgid "The creator of the template." +msgstr "" + +#: 38af213396984d9681c7e60a89460807 discord.template.Template:37 of +msgid "An aware datetime in UTC representing when the template was created." +msgstr "" + +#: b8e1833f3ac147369e252c5d8801de52 discord.integrations.StreamIntegration:75 +#: discord.invite.Invite:77 discord.raw_models.RawTypingEvent:21 +#: discord.scheduled_events.ScheduledEvent:45 discord.template.Template:39 +#: discord.template.Template:46 discord.threads.Thread:121 +#: discord.threads.ThreadMember:39 of +msgid ":class:`datetime.datetime`" +msgstr "" + +#: a08d3b7933ae42939fabfd13f6d815fa discord.template.Template:43 of +msgid "" +"An aware datetime in UTC representing when the template was last updated." +" This is referred to as \"last synced\" in the official Discord client." +msgstr "" + +#: 29e7297008044e4ea82c9f41238467b1 discord.template.Template:50 of +msgid "The source guild." +msgstr "" + +#: 1c3d15b96df6417498447cf15dd2b44c discord.template.Template:56 of +msgid "Whether the template has unsynced changes." +msgstr "" + +#: ad7ae992e9464d198f1ab9b5ae6b4efa discord.integrations.StreamIntegration:45 +#: discord.template.Template:60 discord.widget.WidgetMember:73 +#: discord.widget.WidgetMember:79 discord.widget.WidgetMember:85 of +msgid "Optional[:class:`bool`]" +msgstr "" + +#: 188d3a03174d45e0bc3e507f9284c0aa discord.template.Template.create_guild:3 of +msgid "Creates a :class:`.Guild` using the template." +msgstr "" + +#: 1f7e68f47747482790c6bfde1f799131 discord.template.Template.create_guild:5 of +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "" + +#: d7855834282943ff8fe5f3f2e1586fb6 discord.template.Template.create_guild:8 of +msgid "The name of the guild." +msgstr "" + +#: discord.template.Template.create_guild:11 eeda24219810402f9f0f4d863622e24e +#: of +msgid "" +"The :term:`py:bytes-like object` representing the icon. See " +":meth:`.ClientUser.edit` for more details on what is expected." +msgstr "" + +#: 9720111e71c14949bd37d4710e5ba779 discord.template.Template.create_guild:15 +#: of +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "" + +#: 60fb7adfd729405c9622a41dac16e0e7 discord.template.Template.create_guild:17 +#: of +msgid ":class:`.Guild`" +msgstr "" + +#: discord.template.Template.create_guild:19 ebe7523a8bfa43798097a7af866aa23b +#: of +msgid "Guild creation failed." +msgstr "" + +#: cc161cedb24a49fa87c8e704c82d516d discord.template.Template.create_guild:20 +#: of +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "" + +#: 0b9f97db60654891ab2ac4487da374e5 discord.template.Template.sync:3 of +msgid "Sync the template to the guild's current state." +msgstr "" + +#: 977e60b646b7448a8979fb130ee01916 discord.template.Template.edit:5 +#: discord.template.Template.sync:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_guild` permission in the " +"source guild to do this." +msgstr "" + +#: 4970e09963914887b0fcf223d3189144 discord.template.Template.sync:10 of +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "" + +#: 86a98670847c4f308c3be4099d382b5f discord.template.Template.sync:13 of +msgid "The newly synced template." +msgstr "" + +#: 972be385b13d440092cdccd620111c7a discord.template.Template.edit:21 +#: discord.template.Template.sync:14 of +msgid ":class:`Template`" +msgstr "" + +#: 46a228ca6d6144b3b791081a13773e53 discord.template.Template.sync:16 of +msgid "Syncing the template failed." +msgstr "" + +#: 63d20844750f4597802d03f9df32fef4 discord.template.Template.sync:17 of +msgid "You don't have permissions to sync the template." +msgstr "" + +#: 33c32e64d0434d23a47aa521c5f83dad discord.template.Template.delete:14 +#: discord.template.Template.edit:25 discord.template.Template.sync:18 of +msgid "This template does not exist." +msgstr "" + +#: caef495a64ea4a2abf259a30923afff0 discord.template.Template.edit:3 of +msgid "Edit the template metadata." +msgstr "" + +#: 4f12d8ba2b4145f69e90b8808fdc0a07 discord.template.Template.edit:10 of +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "" + +#: cb045b76ee6c47549f43603081eed127 discord.template.Template.edit:14 of +msgid "The template's new name." +msgstr "" + +#: 24f040a38b8a45908cdcae4b34bb8cdb discord.template.Template.edit:17 of +msgid "The template's new description." +msgstr "" + +#: de911bbc2e0b44188641f650ea0b7be2 discord.template.Template.edit:20 of +msgid "The newly edited template." +msgstr "" + +#: 5ed66316abce4297b32eb011363b5d7d discord.template.Template.edit:23 of +msgid "Editing the template failed." +msgstr "" + +#: 7ad6202760ba4961891ab9718d7cc26b discord.template.Template.edit:24 of +msgid "You don't have permissions to edit the template." +msgstr "" + +#: afcc7d9d4e454de7902106a6a09e2964 discord.template.Template.delete:3 of +msgid "Delete the template." +msgstr "" + +#: 8b5a9e96266a4023b25f75b35b65796a discord.template.Template.delete:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_guild` permission in the " +"source guild to do this. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 907065e9899b4eeaad5ddd08f9203a20 discord.template.Template.delete:12 of +msgid "Deleting the template failed." +msgstr "" + +#: 2a4855817ddb4b6f926e1ca0101d5d7e discord.template.Template.delete:13 of +msgid "You don't have permissions to delete the template." +msgstr "" + +#: c8f3576f377c41bf991f59cc9514db58 discord.Template.url:1 of +msgid "The template url." +msgstr "" + +#: ../../api/models.rst:166 225faf34ffdd44d1b1e7d780b7711787 +msgid "AutoMod" +msgstr "" + +#: c27d0bb1f5bf40568dc7702d3a3030ad discord.automod.AutoModRule:1 of +msgid "Represents a guild's auto moderation rule." +msgstr "" + +#: discord.automod.AutoModRule:9 e3f6ffd480a947daacbb3ee3dc9bcc2e of +msgid "Checks if two rules are equal." +msgstr "" + +#: 101d390cb41f4c62a44c8df8b739f11d discord.automod.AutoModRule:13 of +msgid "Checks if two rules are not equal." +msgstr "" + +#: d7b0787407c840b79eee4ad0c2df3ae9 discord.automod.AutoModRule:17 of +msgid "Returns the rule's hash." +msgstr "" + +#: discord.automod.AutoModRule:21 e2877fcc254949309be5940913b5fa49 of +msgid "Returns the rule's name." +msgstr "" + +#: dad5bb9babac4fa995acbc17f8802c23 discord.automod.AutoModRule:25 of +msgid "The rule's ID." +msgstr "" + +#: ca774a304f9a4d4baa6329ce8e864eef discord.automod.AutoModRule:31 of +msgid "The rule's name." +msgstr "" + +#: 6aa70ca12ef64846a5efe5890863cd66 discord.automod.AutoModRule:37 of +msgid "The ID of the user who created this rule." +msgstr "" + +#: 06de674f376a4b4abe96c1042cc2a0e7 discord.automod.AutoModRule:43 of +msgid "Indicates in what context the rule is checked." +msgstr "" + +#: discord.automod.AutoModRule:45 e7e6a53fb12b47838e344835380b52c9 of +msgid ":class:`AutoModEventType`" +msgstr "" + +#: 02beb191b9c142a48ff1df40a1e07b29 discord.automod.AutoModRule:49 of +msgid "" +"Indicates what type of information is checked to determine whether the " +"rule is triggered." +msgstr "" + +#: 848ba8fba5d94c7da78956880b9befd4 discord.automod.AutoModRule:51 +#: discord.raw_models.AutoModActionExecutionEvent:23 of +msgid ":class:`AutoModTriggerType`" +msgstr "" + +#: 45e34f01bab246e7ab8def22a7b3b766 discord.automod.AutoModRule:57 of +msgid ":class:`AutoModTriggerMetadata`" +msgstr "" + +#: 42106214e93e46c48ce6a567c7e5d4a6 discord.automod.AutoModRule:61 of +msgid "The actions to perform when the rule is triggered." +msgstr "" + +#: 0437f0929c274d88b99010b4bd10e60e discord.automod.AutoModRule:63 of +msgid "List[:class:`AutoModAction`]" +msgstr "" + +#: 1b34d636f1674e9f9a8297e79af3aa07 discord.automod.AutoModRule:67 +#: discord.automod.AutoModRule.edit:18 of +msgid "Whether this rule is enabled." +msgstr "" + +#: 0759c70f615648d4b1b0b4c37556dd99 discord.automod.AutoModRule:73 of +msgid "The IDs of the roles that are exempt from this rule." +msgstr "" + +#: 87c8fe8fea4441edb52f0ea109aaae0a discord.automod.AutoModRule:75 +#: discord.automod.AutoModRule:81 of +msgid "List[:class:`int`]" +msgstr "" + +#: 82153e076b5f42eca5f02ddfb4a738b1 discord.automod.AutoModRule:79 of +msgid "The IDs of the channels that are exempt from this rule." +msgstr "" + +#: 66f75bf0d3964e8fa888333a284a7480 discord.AutoModRule.guild:1 of +msgid "The guild this rule belongs to." +msgstr "" + +#: 5902be937b934b3dab2737ac2ba90684 discord.AutoModRule.creator:1 of +msgid "The member who created this rule." +msgstr "" + +#: ae0c2b3646bf4314a2b436f029353385 discord.AutoModRule.exempt_roles:1 of +msgid "The roles that are exempt from this rule." +msgstr "" + +#: discord.AutoModRule.exempt_roles:4 f2b2ce1dbc4a452e80b48de7fadf471d of +msgid "" +"If a role is not found in the guild's cache, then it will be returned as " +"an :class:`Object`." +msgstr "" + +#: 3d1c090fe2744ae7920d9b41b93707c3 discord.AutoModRule.exempt_channels:1 of +msgid "The channels that are exempt from this rule." +msgstr "" + +#: ../../docstring 4605c05e782c449fbb9df453c31e8668 +#: discord.AutoModRule.exempt_channels:3 discord.Onboarding.default_channels:3 +#: of +msgid "" +"If a channel is not found in the guild's cache, then it will be returned " +"as an :class:`Object`." +msgstr "" + +#: discord.automod.AutoModRule.delete:3 e577fb88088d45699005b7a923d2ad0a of +msgid "Deletes this rule." +msgstr "" + +#: 278ac7d30eb2425093e409cb04b02bdc discord.automod.AutoModRule.delete:6 of +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "" + +#: 953c903154d94a5db43a89fd099bfb98 discord.automod.AutoModRule.edit:3 of +msgid "Edits this rule." +msgstr "" + +#: 9ad875341a1448938d88b24cdb962f43 discord.automod.AutoModRule.edit:6 of +msgid "The rule's new name." +msgstr "" + +#: 0d476f45ec98457cbc8c01fe527b3058 discord.automod.AutoModRule.edit:9 of +msgid "The new context in which the rule is checked." +msgstr "" + +#: c8306420574d4b5783433979e2595a32 discord.automod.AutoModRule.edit:12 of +msgid "The new trigger metadata." +msgstr "" + +#: 9968061d3f5e47c29b419db205ffd58d discord.automod.AutoModRule.edit:15 of +msgid "The new actions to perform when the rule is triggered." +msgstr "" + +#: 48142cdaf6284df9ac9a9d91fa05a605 discord.automod.AutoModRule.edit:21 of +msgid "The roles that will be exempt from this rule." +msgstr "" + +#: 9c486c6dcc47492ca546aca991afaba2 discord.automod.AutoModRule.edit:24 of +msgid "The channels that will be exempt from this rule." +msgstr "" + +#: 110894ce28854cfa96d399b582d05d94 discord.automod.AutoModRule.edit:27 of +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "" + +#: 6433b6a7db514d358a3f4093103a6389 discord.automod.AutoModRule.edit:30 of +msgid "" +"The newly updated rule, if applicable. This is only returned when fields " +"are updated." +msgstr "" + +#: d863f1c014244e438f267edde0a81727 discord.automod.AutoModRule.edit:32 of +msgid "Optional[:class:`.AutoModRule`]" +msgstr "" + +#: 5d6016062f7c41c0accd5c9c802d02fd discord.automod.AutoModAction:1 of +msgid "Represents an action for a guild's auto moderation rule." +msgstr "" + +#: 2744effe31674cd6887f039aaf3150e2 discord.automod.AutoModAction:7 of +msgid "The action's type." +msgstr "" + +#: 9a73c92ce0c1452f8dac5dec612f59f4 discord.automod.AutoModAction:9 of +msgid ":class:`AutoModActionType`" +msgstr "" + +#: 29f292c60c514b4fa71bcb95a03f98b6 discord.automod.AutoModAction:13 of +msgid "The action's metadata." +msgstr "" + +#: 1cb00afaf1b44c83884bfb663de6ea64 discord.automod.AutoModAction:15 of +msgid ":class:`AutoModActionMetadata`" +msgstr "" + +#: cd1d6707da27496d819b4bc93fa8d9a9 discord.automod.AutoModActionMetadata:1 of +msgid "Represents an action's metadata." +msgstr "" + +#: a88697345fec4d69b0da3b40328193d0 discord.automod.AutoModActionMetadata:3 of +msgid "Depending on the action's type, different attributes will be used." +msgstr "" + +#: adf66476594744779d49521c5f892de1 discord.automod.AutoModActionMetadata:9 of +msgid "" +"The ID of the channel to send the message to. Only for actions of type " +":attr:`AutoModActionType.send_alert_message`." +msgstr "" + +#: 2c9f4f06300e40a8b2478a5825b9df6e discord.automod.AutoModActionMetadata:16 of +msgid "" +"How long the member that triggered the action should be timed out for. " +"Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "" + +#: 43745dfaea0f48c2b061c077103091b2 discord.automod.AutoModActionMetadata:19 of +msgid ":class:`datetime.timedelta`" +msgstr "" + +#: 24850b9583a942e2b87b2024e264356c discord.automod.AutoModActionMetadata:23 of +msgid "" +"An additional message shown to members when their message is blocked. " +"Maximum 150 characters. Only for actions of type " +":attr:`AutoModActionType.block_message`." +msgstr "" + +#: discord.automod.AutoModTriggerMetadata:1 e6473b15bf1c4aab8d18c91cd7a68623 of +msgid "" +"Represents a rule's trigger metadata, defining additional data used to " +"determine when a rule triggers." +msgstr "" + +#: 9b6947b4ccf14e44a9ef208417f38303 discord.automod.AutoModTriggerMetadata:3 of +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "" + +#: 7ece475c494647459b908955f3d194df discord.automod.AutoModTriggerMetadata:6 +#: discord.invite.Invite:27 of +msgid "Attribute" +msgstr "" + +#: 8c548fe1a7c34ca6bce83e5e90e41f62 discord.automod.AutoModTriggerMetadata:6 of +msgid "Trigger Types" +msgstr "" + +#: 4496649362734b089d460cd8c7f67771 discord.automod.AutoModTriggerMetadata:8 of +msgid ":attr:`keyword_filter`" +msgstr "" + +#: b3a97afc4a6d45f1b595e20dcfd61b00 discord.automod.AutoModTriggerMetadata:8 +#: discord.automod.AutoModTriggerMetadata:10 of +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr "" + +#: 4af760617eae40a49267b86322b8311d discord.automod.AutoModTriggerMetadata:10 +#: of +msgid ":attr:`regex_patterns`" +msgstr "" + +#: b1e8ad230d1e49848260dc3ccdb4cd07 discord.automod.AutoModTriggerMetadata:12 +#: of +msgid ":attr:`presets`" +msgstr "" + +#: 3e776a67efb24799ba6d061c21ee7c35 discord.automod.AutoModTriggerMetadata:12 +#: of +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr "" + +#: 6d82b167b64941a8a2d1239c77d47bb4 discord.automod.AutoModTriggerMetadata:14 +#: of +msgid ":attr:`allow_list`" +msgstr "" + +#: 3fcd3e8edbb2474f87ca8ec502a448e1 discord.automod.AutoModTriggerMetadata:14 +#: of +msgid "" +":attr:`AutoModTriggerType.keyword`\\, " +":attr:`AutoModTriggerType.keyword_preset`" +msgstr "" + +#: baa8675fda194957a18f620d958af8da discord.automod.AutoModTriggerMetadata:16 +#: of +msgid ":attr:`mention_total_limit`" +msgstr "" + +#: c94a6bf582e5483d9a84c8933763bb52 discord.automod.AutoModTriggerMetadata:16 +#: of +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr "" + +#: 1c6c27691aac4d85b49add284a607515 discord.automod.AutoModTriggerMetadata:19 +#: of +msgid "" +"Each attribute has limits that may change based on the trigger type. See " +"`here `_ for " +"information on attribute limits." +msgstr "" + +#: 08cf564ffd8f4fdd85936d9e3a7d8739 discord.automod.AutoModTriggerMetadata:27 +#: of +msgid "A list of substrings to filter." +msgstr "" + +#: discord.automod.AutoModTriggerMetadata:33 ecc19b65d2a844dd9c3257978c9471f1 +#: of +msgid "" +"A list of regex patterns to filter using Rust-flavored regex, which is " +"not fully compatible with regex syntax supported by the builtin `re` " +"module." +msgstr "" + +#: 8ec3997fd0a44fc5b1ba9942db04c3d9 discord.automod.AutoModTriggerMetadata:42 +#: of +msgid "A list of preset keyword sets to filter." +msgstr "" + +#: 1a31537f646b42e287d2e35e283b37af discord.automod.AutoModTriggerMetadata:44 +#: of +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "" + +#: 455fd824a9da48ec8d8ef2c2c5c43e09 discord.automod.AutoModTriggerMetadata:48 +#: of +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "" + +#: aef8ec696f474f2aa37e3d91d1cb8dc6 discord.automod.AutoModTriggerMetadata:56 +#: of +msgid "The total number of unique role and user mentions allowed." +msgstr "" + +#: ../../api/models.rst:189 30ed9cbe01954df3a16f002ee6bb94c2 +msgid "Invites" +msgstr "" + +#: 69fba3baef004ee2b84142272ccce2d9 discord.invite.PartialInviteGuild:1 of +msgid "Represents a \"partial\" invite guild." +msgstr "" + +#: 45776a9178224707a1d5cf4ebfff169b discord.invite.PartialInviteChannel:3 +#: discord.invite.PartialInviteGuild:3 of +msgid "" +"This model will be given when the user is not part of the guild the " +":class:`Invite` resolves to." +msgstr "" + +#: 89fb246f756446b38c7f3f3b535fdfeb discord.invite.PartialInviteGuild:10 of +msgid "Checks if two partial guilds are the same." +msgstr "" + +#: 1f072902c7b1434897f2b821bf1f710a discord.invite.PartialInviteGuild:14 of +msgid "Checks if two partial guilds are not the same." +msgstr "" + +#: a95177c93f494a09b14669a985cb009c discord.invite.PartialInviteGuild:18 of +msgid "Return the partial guild's hash." +msgstr "" + +#: discord.invite.PartialInviteGuild:22 ef98a21ce76645eeb3b149d4b39da542 of +msgid "Returns the partial guild's name." +msgstr "" + +#: 93d2a832d86246279c35490b6c878a86 discord.invite.PartialInviteGuild:26 +#: discord.webhook.async_.PartialWebhookGuild:15 of +msgid "The partial guild's name." +msgstr "" + +#: discord.invite.PartialInviteGuild:32 +#: discord.webhook.async_.PartialWebhookGuild:9 +#: e194cbb46c32457d858d2e294d45765b of +msgid "The partial guild's ID." +msgstr "" + +#: 9aadc47d60734bb8abf3cf294402d4b7 discord.invite.PartialInviteGuild:38 of +msgid "The partial guild's verification level." +msgstr "" + +#: bdd12952c5c54de4ad633d5a56475d15 discord.invite.PartialInviteGuild:44 of +msgid "" +"A list of features the guild has. See :attr:`Guild.features` for more " +"information." +msgstr "" + +#: 58805ad02d6a468e80400ef9c583bd6e discord.invite.PartialInviteGuild:50 of +msgid "The partial guild's description." +msgstr "" + +#: 832a15deed5f4ef4b30ce4df2b19ee8d discord.invite.PartialInviteChannel:1 of +msgid "Represents a \"partial\" invite channel." +msgstr "" + +#: 95e9950220b84e359463a51ad286e6c9 discord.invite.PartialInviteChannel:10 +#: discord.widget.WidgetChannel:7 of +msgid "Checks if two partial channels are the same." +msgstr "" + +#: 30b235b76e1342cf941b30523684f372 discord.invite.PartialInviteChannel:14 +#: discord.widget.WidgetChannel:11 of +msgid "Checks if two partial channels are not the same." +msgstr "" + +#: discord.invite.PartialInviteChannel:18 discord.widget.WidgetChannel:15 +#: f9335d3f6f084e94a23c90b76421fca3 of +msgid "Return the partial channel's hash." +msgstr "" + +#: cf5680cc558b4f1c9ee058a815a6aa99 discord.invite.PartialInviteChannel:22 +#: discord.widget.WidgetChannel:19 of +msgid "Returns the partial channel's name." +msgstr "" + +#: 141d223702fe42af8e2c67e1fe220ad8 discord.invite.PartialInviteChannel:26 +#: discord.webhook.async_.PartialWebhookChannel:15 of +msgid "The partial channel's name." +msgstr "" + +#: 34fdd30888cc4a69a2ecff38e80c7735 discord.invite.PartialInviteChannel:32 +#: discord.webhook.async_.PartialWebhookChannel:9 of +msgid "The partial channel's ID." +msgstr "" + +#: discord.invite.PartialInviteChannel:38 f303ce62e1f14e0da28ca61198536e08 of +msgid "The partial channel's type." +msgstr "" + +#: b14920fd93004ab5816c641d6c994d31 discord.invite.PartialInviteChannel:40 of +msgid ":class:`ChannelType`" +msgstr "" + +#: bf4b576b58b64dbcaa30f9f34b305d1c discord.CategoryChannel.mention:1 +#: discord.ForumChannel.mention:1 discord.PartialInviteChannel.mention:1 +#: discord.StageChannel.mention:1 discord.TextChannel.mention:1 +#: discord.VoiceChannel.mention:1 discord.WidgetChannel.mention:1 of +msgid "The string that allows you to mention the channel." +msgstr "" + +#: d9cb26c43e2f4fdf8263a762822511b3 discord.CategoryChannel.created_at:1 +#: discord.ForumChannel.created_at:1 discord.GroupChannel.created_at:1 +#: discord.PartialInviteChannel.created_at:1 discord.StageChannel.created_at:1 +#: discord.TextChannel.created_at:1 discord.VoiceChannel.created_at:1 +#: discord.WidgetChannel.created_at:1 of +msgid "Returns the channel's creation time in UTC." +msgstr "" + +#: 6e1375d7315842f389240d361f9e940f discord.invite.Invite:1 of +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "" + +#: 40c79e3afa054125ac51372fff62c627 discord.invite.Invite:10 of +msgid "Checks if two invites are equal." +msgstr "" + +#: 88ce1ecfb798467da639a3bf341c04a2 discord.invite.Invite:14 of +msgid "Checks if two invites are not equal." +msgstr "" + +#: discord.invite.Invite:18 f627201143cb4f289aa3fd1b82dd7a5f of +msgid "Returns the invite hash." +msgstr "" + +#: 812a6ee84f4046a699ba426c6add7d28 discord.invite.Invite:22 of +msgid "Returns the invite URL." +msgstr "" + +#: be54ec540e4d4166ad2b1edfaf5f7562 discord.invite.Invite:24 of +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "" + +#: 67b0891cfb804ad7b5cf90f89d770328 discord.invite.Invite:27 of +msgid "Method" +msgstr "" + +#: caff775708cd4876a15508a9fdb66328 discord.invite.Invite:29 of +msgid ":attr:`max_age`" +msgstr "" + +#: 888ee5b5c54841b18baa7f2ba1dfd8c2 discord.invite.Invite:29 +#: discord.invite.Invite:31 discord.invite.Invite:33 discord.invite.Invite:35 +#: discord.invite.Invite:37 of +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr "" + +#: ad799b98576649d8802dcd295ebc0dd9 discord.invite.Invite:31 of +msgid ":attr:`max_uses`" +msgstr "" + +#: discord.invite.Invite:33 e0a962b6bbda4f739665deac7489d153 of +msgid ":attr:`created_at`" +msgstr "" + +#: 8d8febf96d094432b54a0b48f74bad39 discord.invite.Invite:35 of +msgid ":attr:`temporary`" +msgstr "" + +#: d4805f27f1dc4d7999b200935cb75e97 discord.invite.Invite:37 of +msgid ":attr:`uses`" +msgstr "" + +#: 8c30a6bf469647fba6e2394ee934abae discord.invite.Invite:39 of +msgid ":attr:`approximate_member_count`" +msgstr "" + +#: 38c5c5e52ebf42a8a131562a6bf58a86 discord.invite.Invite:39 +#: discord.invite.Invite:41 of +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr "" + +#: discord.invite.Invite:41 e10dd807365640f1a2ec881e571ec9af of +msgid ":attr:`approximate_presence_count`" +msgstr "" + +#: d8f7449f7d3d4bc0893e0ee643fa117a discord.invite.Invite:43 of +msgid ":attr:`expires_at`" +msgstr "" + +#: 4ac46789b8f642ddaf4c5e54851c4dd7 discord.invite.Invite:43 of +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr "" + +#: b4a65c6404244f719d338f5e80b7a68f discord.invite.Invite:46 of +msgid "If it's not in the table above then it is available by all methods." +msgstr "" + +#: 71c850531d60478ebabc66051e813fdf discord.invite.Invite:50 of +msgid "" +"How long before the invite expires in seconds. A value of ``0`` indicates" +" that it doesn't expire." +msgstr "" + +#: 662de69e9fae4578bf4142bd3dc1d7bb discord.invite.Invite:57 of +msgid "The URL fragment used for the invite." +msgstr "" + +#: be8e6c9dd831487bb751f81d56d1a2cd discord.invite.Invite:63 of +msgid "" +"The guild the invite is for. Can be ``None`` if it's from a group direct " +"message." +msgstr "" + +#: b1392531abbf409a8e7c252b057ae900 discord.invite.Invite:65 of +msgid "" +"Optional[Union[:class:`Guild`, :class:`Object`, " +":class:`PartialInviteGuild`]]" +msgstr "" + +#: discord.invite.Invite:69 e5816f6ab311461f86b05afe960120d0 of +msgid "Indicates if the invite has been revoked." +msgstr "" + +#: discord.invite.Invite:75 e19f71ea88dd4ba38b5550b82e75abef of +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "" + +#: 5d28782dd7694324949984de51047486 discord.invite.Invite:81 of +msgid "" +"Indicates that the invite grants temporary membership. If ``True``, " +"members who joined via this invite will be kicked upon disconnect." +msgstr "" + +#: a896b00f401f47b3bff014a4652f5d11 discord.invite.Invite:88 of +msgid "How many times the invite has been used." +msgstr "" + +#: 00069cbcc5e347768ef002d8f2f1bbb4 discord.invite.Invite:94 of +msgid "" +"How many times the invite can be used. A value of ``0`` indicates that it" +" has unlimited uses." +msgstr "" + +#: discord.invite.Invite:101 f5152bae14734569aeef4a6b6f207e59 of +msgid "The user who created the invite." +msgstr "" + +#: ../../docstring cc61dfae294c4579ba596a34ef3fa088 +#: discord.AuthorizingIntegrationOwners.user:4 discord.channel.DMChannel:27 +#: discord.channel.GroupChannel:43 discord.emoji.Emoji:76 +#: discord.integrations.IntegrationApplication:39 discord.invite.Invite:103 +#: discord.invite.Invite:147 discord.scheduled_events.ScheduledEvent:84 +#: discord.sticker.GuildSticker:60 of +msgid "Optional[:class:`User`]" +msgstr "" + +#: 092635739e83496eb3cfaf0b1e9893bb discord.invite.Invite:107 of +msgid "The approximate number of members in the guild." +msgstr "" + +#: 21544a9ae3414724afee94ec77100e81 discord.invite.Invite:113 of +msgid "" +"The approximate number of members currently active in the guild. This " +"includes idle, dnd, online, and invisible members. Offline members are " +"excluded." +msgstr "" + +#: 0fb015a916f84ff79a330f0846477afa discord.invite.Invite:120 of +msgid "" +"The expiration date of the invite. If the value is ``None`` when received" +" through `Client.fetch_invite` with `with_expiration` enabled, the invite" +" will never expire." +msgstr "" + +#: discord.invite.Invite:129 f884e37b37a34004b7a60715f9c7e323 of +msgid "The channel the invite is for." +msgstr "" + +#: cc72df05282c45baa3c3a91d6478083c discord.invite.Invite:131 of +msgid "" +"Union[:class:`abc.GuildChannel`, :class:`Object`, " +":class:`PartialInviteChannel`]" +msgstr "" + +#: 39b0750e8cbf48ae839656f658244074 discord.invite.Invite:135 of +msgid "The type of target for the voice channel invite." +msgstr "" + +#: b032b0fb8cdb4d8f8c23635f64d87c28 discord.invite.Invite:139 of +msgid ":class:`InviteTarget`" +msgstr "" + +#: discord.invite.Invite:143 f6ce14dc542f41d58faf3343fe7e3588 of +msgid "The user whose stream to display for this invite, if any." +msgstr "" + +#: 1284111c547e490395ccd35e0a06b0e5 discord.invite.Invite:151 of +msgid "The embedded application the invite targets, if any." +msgstr "" + +#: discord.invite.Invite:155 e5acecac4ece457db47dac10f2bb7aea of +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "" + +#: aa16b1be4bc549659e87c7c8bea28707 discord.invite.Invite:159 of +msgid "The scheduled event linked with the invite." +msgstr "" + +#: d78e636501ba4a9496c3e2d74742b9c7 discord.Invite.id:1 of +msgid "Returns the proper code portion of the invite." +msgstr "" + +#: c86c778cb8704643a0aff10ce58e44f7 discord.Invite.url:1 of +msgid "A property that retrieves the invite URL." +msgstr "" + +#: 8daafc92ded341cab14f98fbf27ae51f discord.invite.Invite.delete:3 of +msgid "Revokes the instant invite." +msgstr "" + +#: 85148c52c6af4d47a184d6dd44768251 discord.invite.Invite.delete:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_channels` permission to do " +"this." +msgstr "" + +#: 441bb5982c4b41f9bbb8564a33e9f82a discord.invite.Invite.delete:8 of +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "" + +#: 320594922ef34be8afcd2c84ca73a327 discord.invite.Invite.delete:11 of +msgid "You do not have permissions to revoke invites." +msgstr "" + +#: 27532139278643cca80692a6913ecc8d discord.invite.Invite.delete:12 of +msgid "The invite is invalid or expired." +msgstr "" + +#: discord.invite.Invite.delete:13 f5b462234a1447cbabc2f3d30423b54b of +msgid "Revoking the invite failed." +msgstr "" + +#: 0b28b765bed746be8b84b9c2bbebbbc5 discord.invite.Invite.set_scheduled_event:1 +#: of +msgid "Links the given scheduled event to this invite." +msgstr "" + +#: 40b1ead2f26c44be9f8d235e30913fa7 discord.invite.Invite.set_scheduled_event:5 +#: of +msgid "" +"Scheduled events aren't actually associated with invites on the API. Any " +"guild channel invite can have an event attached to it. Using " +":meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or " +"this method, you can link scheduled events." +msgstr "" + +#: 7ed4e3948e6d45278da021e5a830aeb8 +#: discord.invite.Invite.set_scheduled_event:13 of +msgid "The scheduled event object to link." +msgstr "" + +#: ../../api/models.rst:207 b0b4dba2274847c2bc1e96752ddd4675 +msgid "Role" +msgstr "" + +#: 14f0b3819e864b7a89db5d4552ee08d8 discord.role.Role:1 of +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "" + +#: 76cac8abf7bf49a2b8a67fccd3be816a discord.role.Role:7 of +msgid "Checks if two roles are equal." +msgstr "" + +#: b92755862c7d4471bd1889e2ba7981ec discord.role.Role:11 of +msgid "Checks if two roles are not equal." +msgstr "" + +#: 436f1560b791441cac322a7967adad6c discord.role.Role:15 of +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "" + +#: cd79ad1c57ef40f7bba566449bc33b61 discord.role.Role:19 of +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "" + +#: c1720665fb4345feba29535022d8b9d0 discord.role.Role:23 of +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "" + +#: 5885ab2ad4294d468d632b657112f8b5 discord.role.Role:27 of +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "" + +#: 244e8fd76d424931a3d287e634510aff discord.role.Role:31 of +msgid "Return the role's hash." +msgstr "" + +#: 0cb4be6ef3dc4b808045712f1dbd5e6e discord.role.Role:35 of +msgid "Returns the role's name." +msgstr "" + +#: 5d81164f7c4c4823aff92d0c6d7d5050 discord.role.Role:39 of +msgid "The ID for the role." +msgstr "" + +#: 511691ba37f34cbbbe377481dcbd99bd discord.role.Role:45 of +msgid "The name of the role." +msgstr "" + +#: 31505115fa5a44068bab84354a5cd954 discord.role.Role:51 of +msgid "The guild the role belongs to." +msgstr "" + +#: 62642a7712b54bd39f19c1ce29d2e5c4 discord.role.Role:57 of +msgid "Indicates if the role will be displayed separately from other members." +msgstr "" + +#: 5f7db28911cd408096024e3b849cb7cc discord.role.Role:63 of +msgid "" +"The position of the role. This number is usually positive. The bottom " +"role has a position of 0." +msgstr "" + +#: 6d87eb7337744266b5b769b4d5eb238f discord.role.Role:68 of +msgid "" +"Multiple roles can have the same position number. As a consequence of " +"this, comparing via role position is prone to subtle bugs if checking for" +" role hierarchy. The recommended and correct way to compare for roles in " +"the hierarchy is using the comparison operators on the role objects " +"themselves." +msgstr "" + +#: 71708c2052ef460cbf50e18eff7472ff discord.role.Role:78 of +msgid "" +"Indicates if the role is managed by the guild through some form of " +"integrations such as Twitch." +msgstr "" + +#: b9bafa1eea5a42449a950ef3b3948003 discord.role.Role:85 of +msgid "Indicates if the role can be mentioned by users." +msgstr "" + +#: 90292a8451094a81b831a50845ab0581 discord.role.Role:91 of +msgid "The role tags associated with this role." +msgstr "" + +#: ce68cf07f32542ee887cbfe498cd4506 discord.role.Role:93 of +msgid "Optional[:class:`RoleTags`]" +msgstr "" + +#: 6b477dc220bf4cd0affb1801794c7c46 discord.role.Role:97 of +msgid "" +"The role's unicode emoji. Only available to guilds that contain " +"``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "" + +#: discord.role.Role:106 fa704dc55e8b4bc89b983325045fb26e of +msgid "Extra attributes of the role." +msgstr "" + +#: 235c07739380495f822049acb2f71763 discord.role.Role:110 of +msgid ":class:`RoleFlags`" +msgstr "" + +#: discord.role.Role.is_default:1 f8b5d7e6df82406bb4c5f9cfdb6dc7cb of +msgid "Checks if the role is the default role." +msgstr "" + +#: abaa9e6454b3434897bdb6657fb9c73a discord.role.Role.is_bot_managed:1 of +msgid "" +"Whether the role is associated with a bot. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 57a256a1d1ec47d8bd23a3f5a026fde3 discord.role.Role.is_premium_subscriber:1 +#: of +msgid "" +"Whether the role is the premium subscriber, AKA \"boost\", role for the " +"guild. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: adc96808a0f849419bffb0291dfcf2e1 discord.role.Role.is_integration:1 of +msgid "" +"Whether the role is managed by an integration. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: c2e51432847743fba93caa703ec89c5d discord.role.Role.is_assignable:1 of +msgid "" +"Whether the role is able to be assigned or removed by the bot. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 7902c3504ac24ac0a24155bd9bcbce40 discord.Role.permissions:1 of +msgid "Returns the role's permissions." +msgstr "" + +#: 4a391466dd224b78895dc3b4dc98a713 discord.Role.colour:1 of +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "" + +#: discord.Role.color:1 fa84130cdb2e41b9aeabc2461ce3e03f of +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "" + +#: 0bc0e2c3149a4903900a6cc2688c0f81 discord.Role.created_at:1 of +msgid "Returns the role's creation time in UTC." +msgstr "" + +#: 5c6d4251d1054c46b5866e2562db0ec8 discord.Role.mention:1 of +msgid "Returns a string that allows you to mention a role." +msgstr "" + +#: 43e2f1a35d6542c5b9bcabb86ce49a1f discord.Role.members:1 of +msgid "Returns all the members with this role." +msgstr "" + +#: discord.Role.icon:1 f550271db031424d9bb95b4b4c6b3dfa of +msgid "Returns the role's icon asset, if available." +msgstr "" + +#: 6a0db6cfac2441b6b52b131acdc42943 discord.role.Role.edit:3 of +msgid "Edits the role." +msgstr "" + +#: 1342d2d0aed64ae7ba75ee42534a7a8b discord.role.Role.delete:5 +#: discord.role.Role.edit:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_roles` permission to use " +"this." +msgstr "" + +#: discord.role.Role.edit:13 e453bb534cfc463fb008712c93126d97 of +msgid "" +"Edits are no longer in-place, the newly edited role is returned instead. " +"Added ``icon`` and ``unicode_emoji``." +msgstr "" + +#: b13aa6c81fc8460b8170b67aca970828 discord.role.Role.edit:18 of +msgid "The new role name to change to." +msgstr "" + +#: ca4744954a454ba08c142db3547c4ee5 discord.role.Role.edit:21 of +msgid "The new permissions to change to." +msgstr "" + +#: 57f0dcf8c8a84faf89677dc7c270c68a discord.role.Role.edit:24 of +msgid "The new colour to change to. (aliased to color as well)" +msgstr "" + +#: discord.role.Role.edit:27 e9916faa46634b49ad0598b3084eaea2 of +msgid "Indicates if the role should be shown separately in the member list." +msgstr "" + +#: c4bff8c51bfe4f7b8d4f5211f9c79a79 discord.role.Role.edit:30 of +msgid "Indicates if the role should be mentionable by others." +msgstr "" + +#: 6d9bace9d861488894fc85bfcd50b3dc discord.role.Role.edit:33 of +msgid "" +"The new role's position. This must be below your top role's position, or " +"it will fail." +msgstr "" + +#: abeffd1a802842c2a6493224e6f02d2b discord.role.Role.edit:37 of +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "" + +#: bd9f0feaf75b4b3f8587fd19981f6ae2 discord.role.Role.edit:40 of +msgid "" +"A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP " +"is supported. If this argument is passed, ``unicode_emoji`` is set to " +"None. Only available to guilds that contain ``ROLE_ICONS`` in " +":attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "" + +#: 4a9a00d62a984236a0ad4aefa11e685f discord.role.Role.edit:50 of +msgid "The newly edited role." +msgstr "" + +#: 726a634f83fd43c6bacebf07a8dcfd2b discord.role.Role.edit:53 of +msgid "You do not have permissions to change the role." +msgstr "" + +#: b2728a1bd3684723b2562070971b253b discord.role.Role.edit:54 of +msgid "Editing the role failed." +msgstr "" + +#: 2ef1a6690c73422cb2edead785d1e265 discord.role.Role.edit:55 of +msgid "" +"An invalid position was given or the default role was asked to be " +"moved." +msgstr "" + +#: b1c68744b35b41d7b9fc7ad838756aff discord.role.Role.delete:3 of +msgid "Deletes the role." +msgstr "" + +#: 09634e2e93d24ddabd7e058a560ff8fa discord.role.Role.delete:9 of +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "" + +#: 8c1678106db14993b38b64ab433391a4 discord.role.Role.delete:12 of +msgid "You do not have permissions to delete the role." +msgstr "" + +#: 3d7c30b23b9c4b35ade1e6a1e0bd2d73 discord.role.Role.delete:13 of +msgid "Deleting the role failed." +msgstr "" + +#: 3ce6d748ce74481dbd88eaa208d8d38c discord.role.RoleTags:1 of +msgid "Represents tags on a role." +msgstr "" + +#: discord.role.RoleTags:3 f055b2214fc846c69dafe51a7828d5c9 of +msgid "" +"A role tag is a piece of extra information attached to a managed role " +"that gives it context for the reason the role is managed." +msgstr "" + +#: 7b96a689baf942ce8c8d44c556ca1315 discord.role.RoleTags:6 of +msgid "" +"While this can be accessed, a useful interface is also provided in the " +":class:`Role` and :class:`Guild` classes as well." +msgstr "" + +#: cefbfbe8367243c9873b7f3e6efd68cf discord.role.RoleTags:13 of +msgid "The bot's user ID that manages this role." +msgstr "" + +#: 05a238fa0ee54228891c9067f660ce29 discord.role.RoleTags:19 of +msgid "The integration ID that manages the role." +msgstr "" + +#: 32f901508cfe434eaa834608ef0a2813 discord.role.RoleTags.is_bot_managed:1 of +msgid "Whether the role is associated with a bot." +msgstr "" + +#: 99c432602c464398bf8657a5d7720033 +#: discord.role.RoleTags.is_premium_subscriber:1 of +msgid "" +"Whether the role is the premium subscriber, AKA \"boost\", role for the " +"guild." +msgstr "" + +#: 8cd2b27c79a1497d9fe2ed01efa457c8 discord.role.RoleTags.is_integration:1 of +msgid "Whether the role is managed by an integration." +msgstr "" + +#: ../../api/models.rst:220 501c6b29607b4c55ace35858ceb2e513 +msgid "Scheduled Event" +msgstr "" + +#: 10e0de9eb9274b9a90009e1d986359bb discord.scheduled_events.ScheduledEvent:1 +#: of +msgid "Represents a Discord Guild Scheduled Event." +msgstr "" + +#: 338d7d42898a41c1aa76bae4170d62d5 discord.scheduled_events.ScheduledEvent:7 +#: of +msgid "Checks if two scheduled events are equal." +msgstr "" + +#: c94e50d69c844f7ab6df2b14c4dfd011 discord.scheduled_events.ScheduledEvent:11 +#: of +msgid "Checks if two scheduled events are not equal." +msgstr "" + +#: 63533c1674a54dd38883de86d857fadd discord.scheduled_events.ScheduledEvent:15 +#: of +msgid "Returns the scheduled event's hash." +msgstr "" + +#: discord.scheduled_events.ScheduledEvent:19 e6e8056199704fb19bebfa19fbd84a0d +#: of +msgid "Returns the scheduled event's name." +msgstr "" + +#: 1dfe359919ac4a94a5753514a83b8ee4 discord.scheduled_events.ScheduledEvent:25 +#: of +msgid "The guild where the scheduled event is happening." +msgstr "" + +#: 7db26903f71241b8b5d862be13720ff4 discord.scheduled_events.ScheduledEvent:43 +#: of +msgid "The time when the event will start" +msgstr "" + +#: 4a373162831b42a280178408697638a0 discord.scheduled_events.ScheduledEvent:49 +#: of +msgid "The time when the event is supposed to end." +msgstr "" + +#: 7fa115df6d194b9eaf2c37b4960c54fb discord.scheduled_events.ScheduledEvent:55 +#: of +msgid "The status of the scheduled event." +msgstr "" + +#: beaedb41ec2840239f556ef2b031ce7c discord.scheduled_events.ScheduledEvent:57 +#: of +msgid ":class:`ScheduledEventStatus`" +msgstr "" + +#: 06f7d4894f104c109e7f423cb180b019 discord.scheduled_events.ScheduledEvent:61 +#: of +msgid "" +"The location of the event. See :class:`ScheduledEventLocation` for more " +"information." +msgstr "" + +#: 5e1cf8c0e6574b238759f48a2beb96bd discord.scheduled_events.ScheduledEvent:64 +#: of +msgid ":class:`ScheduledEventLocation`" +msgstr "" + +#: 0e52f18181e548e2b175255bd6ce27dd discord.scheduled_events.ScheduledEvent:68 +#: of +msgid "" +"The number of users that have marked themselves as interested in the " +"event." +msgstr "" + +#: dceb5b236844473e86a48e3ee1e9fc9e discord.scheduled_events.ScheduledEvent:74 +#: of +msgid "" +"The ID of the user who created the event. It may be ``None`` because " +"events created before October 25th, 2021 haven't had their creators " +"tracked." +msgstr "" + +#: 5ccd05fa01e64cf09322dd166b85f5c5 discord.scheduled_events.ScheduledEvent:82 +#: of +msgid "The resolved user object of who created the event." +msgstr "" + +#: 2dced7676e174ab0848be9afd308410a discord.scheduled_events.ScheduledEvent:88 +#: of +msgid "" +"The privacy level of the event. Currently, the only possible value is " +":attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there" +" is no need to use this attribute." +msgstr "" + +#: 4ea359d726ae4aa28a9dbe385e18693d discord.scheduled_events.ScheduledEvent:92 +#: of +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr "" + +#: 739d9ebd38654aa199a2ca98c2ac31b5 discord.ScheduledEvent.created_at:1 of +msgid "Returns the scheduled event's creation time in UTC." +msgstr "" + +#: 249062afc1644255b779d2c32eb3606f discord.ScheduledEvent.interested:1 of +msgid "An alias to :attr:`.subscriber_count`" +msgstr "" + +#: a6c5206b2783448885037dd254cfcc5a discord.ScheduledEvent.url:1 of +msgid "The url to reference the scheduled event." +msgstr "" + +#: 5438a938169f4597aa1a5242f21d12e2 discord.ScheduledEvent.cover:1 +#: discord.ScheduledEvent.image:1 of +msgid "Returns the scheduled event cover image asset, if available." +msgstr "" + +#: 5374a22bf91b40c59814524886eb6790 discord.ScheduledEvent.cover:3 of +msgid "Use the :attr:`image` property instead." +msgstr "" + +#: 0f0bbd18446341ed961bf49012e47619 +#: discord.scheduled_events.ScheduledEvent.edit:3 of +msgid "Edits the Scheduled Event's data" +msgstr "" + +#: 0825ab9a3ac7430aaf4fbebb5f494030 +#: discord.scheduled_events.ScheduledEvent.edit:5 of +msgid "" +"All parameters are optional unless ``location.type`` is " +":attr:`ScheduledEventLocationType.external`, then ``end_time`` is " +"required." +msgstr "" + +#: b05ee511b9f641ca968da622ca3cff17 +#: discord.scheduled_events.ScheduledEvent.edit:9 of +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "" + +#: 9240e0b449764b00832cc50af78f4c02 +#: discord.scheduled_events.ScheduledEvent.edit:12 of +msgid "The new name of the event." +msgstr "" + +#: 5466aa4697994643ad1e42485bcb4530 +#: discord.scheduled_events.ScheduledEvent.edit:15 of +msgid "The new description of the event." +msgstr "" + +#: c550fa6d58a24a3c8eaf6c88e9d288a2 +#: discord.scheduled_events.ScheduledEvent.edit:18 of +msgid "The location of the event." +msgstr "" + +#: 012b9b8518bf489b8b78ea88133fc122 +#: discord.scheduled_events.ScheduledEvent.edit:21 of +msgid "" +"The status of the event. It is recommended, however, to use " +":meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses " +"instead." +msgstr "" + +#: cc71d9959291468e8b68b66491f03ef4 +#: discord.scheduled_events.ScheduledEvent.edit:26 of +msgid "The new starting time for the event." +msgstr "" + +#: 2918c259d7114424aba68bcb28771575 +#: discord.scheduled_events.ScheduledEvent.edit:29 of +msgid "The new ending time of the event." +msgstr "" + +#: cdfb40b39a994b05a328decf47ec528d +#: discord.scheduled_events.ScheduledEvent.edit:40 +#: discord.scheduled_events.ScheduledEvent.edit:43 of +msgid "The cover image of the scheduled event." +msgstr "" + +#: discord.scheduled_events.ScheduledEvent.edit:43 +#: efc47c7c1d6d46ecb3948046ef60c88b of +msgid "" +"The cover image of the scheduled event. .. deprecated:: 2.7 Use the " +"`image` argument instead." +msgstr "" + +#: 1d36d39c01a24d3f9ecd5093343f501c +#: discord.scheduled_events.ScheduledEvent.edit:45 of +msgid "Use the `image` argument instead." +msgstr "" + +#: discord.scheduled_events.ScheduledEvent.edit:49 +#: ed2a50594a6c4c67b633ce1f269cae09 of +msgid "" +"The newly updated scheduled event object. This is only returned when " +"certain fields are updated." +msgstr "" + +#: 29af72e8c0344ccb8418d3680362e11f 8ea327279d484e47b555b10b24fe81ae +#: discord.scheduled_events.ScheduledEvent.cancel:14 +#: discord.scheduled_events.ScheduledEvent.complete:14 +#: discord.scheduled_events.ScheduledEvent.edit:51 +#: discord.scheduled_events.ScheduledEvent.start:14 +#: discord.stage_instance.StageInstance:59 of +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "" + +#: discord.scheduled_events.ScheduledEvent.delete:3 +#: ff7f51d150fb4766815a206e71c0dec7 of +msgid "Deletes the scheduled event." +msgstr "" + +#: 4958b434b9cb4d289319db632ca44181 +#: discord.scheduled_events.ScheduledEvent.start:3 of +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "" + +#: 0c1c2e3e84764a568b297d90d0b75c5c +#: discord.scheduled_events.ScheduledEvent.cancel:7 +#: discord.scheduled_events.ScheduledEvent.start:7 of +msgid "" +"This method can only be used if :attr:`.status` is " +":attr:`ScheduledEventStatus.scheduled`." +msgstr "" + +#: a64cb72cf711477f9207ff71bbd6fe6f +#: discord.scheduled_events.ScheduledEvent.cancel:13 +#: discord.scheduled_events.ScheduledEvent.complete:13 +#: discord.scheduled_events.ScheduledEvent.start:13 of +msgid "The newly updated scheduled event object." +msgstr "" + +#: 8cae4739d8e44a1fab241670b0bf776d +#: discord.scheduled_events.ScheduledEvent.complete:3 of +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "" + +#: d4a3e8de49d348b89d7b8477fd4bf250 +#: discord.scheduled_events.ScheduledEvent.complete:7 of +msgid "" +"This method can only be used if :attr:`.status` is " +":attr:`ScheduledEventStatus.active`." +msgstr "" + +#: 9914bb7334d24671a216557961e06dda +#: discord.scheduled_events.ScheduledEvent.cancel:3 of +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "" + +#: 68731f25d3ac41da925136d5120ea267 +#: discord.scheduled_events.ScheduledEvent.subscribers:1 of +msgid "" +"Returns an :class:`AsyncIterator` representing the users or members " +"subscribed to the event." +msgstr "" + +#: 0918ed64d7194f8c99486ce6f9bbb63a +#: discord.scheduled_events.ScheduledEvent.subscribers:3 of +msgid "" +"The ``after`` and ``before`` parameters must represent member or user " +"objects and meet the :class:`abc.Snowflake` abc." +msgstr "" + +#: 650d1964db3d415184de61f1f7b17d35 +#: discord.scheduled_events.ScheduledEvent.subscribers:8 of +msgid "" +"Even is ``as_member`` is set to ``True``, if the user is outside the " +"guild, it will be a :class:`User` object." +msgstr "" + +#: 5402be59de4d467f84400c7be1993911 +#: discord.scheduled_events.ScheduledEvent.subscribers:12 of +msgid "The maximum number of results to return." +msgstr "" + +#: discord.scheduled_events.ScheduledEvent.subscribers:15 +#: ecd0ce1df77242cb97d8dc7cceec24b4 of +msgid "" +"Whether to fetch :class:`Member` objects instead of user objects. There " +"may still be :class:`User` objects if the user is outside the guild." +msgstr "" + +#: b8de116ec76b417bb07bca3005600f2c +#: discord.scheduled_events.ScheduledEvent.subscribers:20 of +msgid "" +"Retrieves users before this date or object. If a datetime is provided, it" +" is recommended to use a UTC aware datetime. If the datetime is naive, it" +" is assumed to be local time." +msgstr "" + +#: c6856b5aac894500b8b84fcc31b1b38a +#: discord.scheduled_events.ScheduledEvent.subscribers:25 of +msgid "" +"Retrieves users after this date or object. If a datetime is provided, it " +"is recommended to use a UTC aware datetime. If the datetime is naive, it " +"is assumed to be local time." +msgstr "" + +#: 8671805c66244008905e0ebf131d47f0 +#: discord.scheduled_events.ScheduledEvent.subscribers:30 of +msgid "" +"Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. " +"If ``as_member`` is set to ``False`` or the user is outside the guild, it" +" will be a :class:`User` object." +msgstr "" + +#: aa2b527516c44c569aff79684995a1ba +#: discord.scheduled_events.ScheduledEvent.subscribers:34 of +msgid "Fetching the subscribed users failed." +msgstr "" + +#: 96236c596b12476284b35f3f352e6df6 +#: discord.scheduled_events.ScheduledEvent.subscribers:35 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr "" + +#: bd1bc81cad8b496aa9b9a5e90585f5b5 +#: discord.scheduled_events.ScheduledEvent.subscribers:49 of +msgid "Getting members instead of user objects: ::" +msgstr "" + +#: discord.scheduled_events.ScheduledEventLocation:1 +#: ef94d3ad86b54127b54e63206f010f5d of +msgid "Represents a scheduled event's location." +msgstr "" + +#: 9aa9d7eadef24ce28f0064e5b979e562 +#: discord.scheduled_events.ScheduledEventLocation:3 of +msgid "" +"Setting the ``value`` to its corresponding type will set the location " +"type automatically:" +msgstr "" + +#: 7bc32d48f49d4be99491c05be1a98851 +#: discord.scheduled_events.ScheduledEventLocation:6 of +msgid "Type of Input" +msgstr "" + +#: 29525c9aa20c4dda9afbbf810b4096fd +#: discord.scheduled_events.ScheduledEventLocation:6 of +msgid "Location Type" +msgstr "" + +#: df99d5de02784c35a91a783590e60dd9 +#: discord.scheduled_events.ScheduledEventLocation:8 of +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr "" + +#: d87e2ab2c93848258ff304f6fcc46ca4 +#: discord.scheduled_events.ScheduledEventLocation:8 of +msgid "" +":attr:`ScheduledEventLocationType.stage_instance` " +":attr:`ScheduledEventLocationType.voice` " +":attr:`ScheduledEventLocationType.external`" +msgstr "" + +#: d242449192c44c94af25f194a83e40ae +#: discord.scheduled_events.ScheduledEventLocation:17 of +msgid "The actual location of the scheduled event." +msgstr "" + +#: 55879a88833246c9ae72fb9d33df5445 +#: discord.scheduled_events.ScheduledEventLocation:19 of +msgid "" +"Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, " +":class:`Object`]" +msgstr "" + +#: 3dce7682f6a949d98c73d003368d6139 +#: discord.scheduled_events.ScheduledEventLocation:23 of +msgid "The type of location." +msgstr "" + +#: da80a8bae0e64be2bb5e162a771b6a93 +#: discord.scheduled_events.ScheduledEventLocation:25 of +msgid ":class:`ScheduledEventLocationType`" +msgstr "" + +#: ../../api/models.rst:231 bd728eaba2b94cb59255cd2be9d0a4a5 +msgid "Welcome Screen" +msgstr "" + +#: 3a9a9b015d3843bbb893b7756919f4f3 discord.welcome_screen.WelcomeScreen:1 of +msgid "Represents the welcome screen of a guild." +msgstr "" + +#: 1d1b937ea9854e96a28ef28316e74f1e discord.welcome_screen.WelcomeScreen:7 of +msgid "The description text displayed on the welcome screen." +msgstr "" + +#: a6c019bb099f4ef5a5dffc399c47e5d0 discord.welcome_screen.WelcomeScreen:13 of +msgid "A list of channels displayed on welcome screen." +msgstr "" + +#: 29ebb991339244c98e862232952bed14 discord.welcome_screen.WelcomeScreen:15 of +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "" + +#: ab609b9ab2954498ac49f8cbf81a92f1 discord.WelcomeScreen.enabled:1 of +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "" + +#: 4bf7a0f55663483493297c10bc4d1fe7 discord.WelcomeScreen.guild:1 of +msgid "The guild this welcome screen belongs to." +msgstr "" + +#: cc0bf1a0c7e84527bf801eed13078bc4 discord.welcome_screen.WelcomeScreen.edit:3 +#: of +msgid "Edits the welcome screen." +msgstr "" + +#: 6f82ed1675044aa699bde2749a2ab5e7 +#: discord.welcome_screen.WelcomeScreen.edit:22 of +msgid "Example" +msgstr "" + +#: discord.welcome_screen.WelcomeScreen.edit:38 +#: e31a24db1a4e4e9391ec0fd6872992ac of +msgid "" +"Welcome channels can only accept custom emojis if " +":attr:`~Guild.premium_tier` is level 2 or above." +msgstr "" + +#: d6341ad4205a4369988579907602c902 +#: discord.welcome_screen.WelcomeScreenChannel:1 of +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "" + +#: 5c9f94dfbcaf49beb2c47bb0f81fe100 +#: discord.welcome_screen.WelcomeScreenChannel:7 of +msgid "The channel that is being referenced." +msgstr "" + +#: 8d53c1fea1ed4bc4b42468d6682605b5 +#: discord.welcome_screen.WelcomeScreenChannel:9 of +msgid ":class:`abc.Snowflake`" +msgstr "" + +#: d1574884bdf44266b4c3364b6f302c7a +#: discord.welcome_screen.WelcomeScreenChannel:13 of +msgid "The description of the channel that is shown on the welcome screen." +msgstr "" + +#: db5cf07c9c1c4763bb1b294c64f3d247 +#: discord.welcome_screen.WelcomeScreenChannel:19 of +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "" + +#: ../../api/models.rst:244 e2ae072aa4324f3fb90878fc5cfbd742 +msgid "Onboarding" +msgstr "" + +#: discord.onboarding.Onboarding:1 f51c0b9e44d241c2a01c5cb93e225f1e of +msgid "Represents the onboarding flow for a guild." +msgstr "" + +#: 271b317948ee4af9ac01057fa6097d2e discord.onboarding.Onboarding:7 of +msgid "A list of prompts displayed in the onboarding flow." +msgstr "" + +#: 53d298867f0c486d98071115179a949f discord.onboarding.Onboarding:9 of +msgid "List[:class:`OnboardingPrompt`]" +msgstr "" + +#: 96c4cd419cd3476793dc4c22dc0b8175 discord.onboarding.Onboarding:13 of +msgid "Whether onboarding is enabled in the guild." +msgstr "" + +#: b3abc10736334f98852bb312a0b4df26 discord.onboarding.Onboarding:19 of +msgid "The current onboarding mode." +msgstr "" + +#: dc0e91b6bea547bb823242eb1af6537d discord.onboarding.Onboarding:21 of +msgid ":class:`OnboardingMode`" +msgstr "" + +#: ../../docstring ac0131664589453fb988bfb2f8a3e052 +#: discord.Onboarding.default_channels:1 of +msgid "The channels that members are opted into by default." +msgstr "" + +#: d20857ae9f4f49299f0af0e6a13c5f15 discord.onboarding.Onboarding.edit:3 of +msgid "Edits this onboarding flow." +msgstr "" + +#: 2d2ecabe5aee4e3596e250d144f1b17f discord.onboarding.Onboarding.edit:23 of +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "" + +#: 7d4d8143818740ffbfe9e04ffa131da6 discord.onboarding.Onboarding.add_prompt:3 +#: of +msgid "Adds a new onboarding prompt." +msgstr "" + +#: 0dd701dcf1ed49b09e55f614e36c0301 discord.onboarding.Onboarding.add_prompt:9 +#: discord.onboarding.OnboardingPrompt:13 of +msgid "The type of onboarding prompt." +msgstr "" + +#: 6700d1737c4640a1a5e0c6c939a0fa53 discord.onboarding.Onboarding.add_prompt:12 +#: discord.onboarding.OnboardingPrompt:19 of +msgid "The prompt's title." +msgstr "" + +#: 12fc1d61e1c04c398375cfcebedcf0be discord.onboarding.Onboarding.add_prompt:15 +#: discord.onboarding.OnboardingPrompt:25 of +msgid "The list of options available in the prompt." +msgstr "" + +#: 70201762314944bdbac8ef5b336e95a7 discord.onboarding.Onboarding.add_prompt:18 +#: discord.onboarding.OnboardingPrompt:31 of +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "" + +#: c3b4464213de424f9c6a0efe01a7ad89 discord.onboarding.Onboarding.add_prompt:21 +#: discord.onboarding.OnboardingPrompt:37 of +msgid "Whether the user is required to answer this prompt." +msgstr "" + +#: 736b84d05e0a460ca50bbea976a37066 discord.onboarding.Onboarding.add_prompt:24 +#: discord.onboarding.OnboardingPrompt:43 of +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "" + +#: d14ad3d6830b490ca80590d0877dd87a discord.onboarding.Onboarding.add_prompt:27 +#: of +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "" + +#: 5a0236baae0848e6b052bb23a9d0afc0 +#: discord.onboarding.Onboarding.append_prompt:3 of +msgid "Append an onboarding prompt onto this flow." +msgstr "" + +#: b4c7b2ff81fc46aaaa37979ad8eb246a +#: discord.onboarding.Onboarding.append_prompt:9 of +msgid "The onboarding prompt to append." +msgstr "" + +#: 8564639152384b80938ce5ca87315fb2 +#: discord.onboarding.Onboarding.append_prompt:12 of +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "" + +#: 975dd453a349453f9b0b86b8a4300162 discord.onboarding.Onboarding.get_prompt:3 +#: of +msgid "Get an onboarding prompt with the given ID." +msgstr "" + +#: 16e168dd301b427b842e30432a032d54 discord.onboarding.Onboarding.get_prompt:6 +#: of +msgid "The ID of the prompt to get." +msgstr "" + +#: 2327423e92d74575b26527572486abe2 discord.onboarding.Onboarding.get_prompt:9 +#: of +msgid "The matching prompt, or None if it didn't exist." +msgstr "" + +#: 750e3a157b1e43b8a91675c7fbf92d5e discord.onboarding.Onboarding.get_prompt:10 +#: of +msgid ":class:`OnboardingPrompt`" +msgstr "" + +#: de814b3d090c4b76828a46c8f937f906 +#: discord.onboarding.Onboarding.delete_prompt:3 of +msgid "Delete an onboarding prompt with the given ID." +msgstr "" + +#: discord.onboarding.Onboarding.delete_prompt:9 +#: f972e03f78734bd890086b0e3e25cd2a of +msgid "The ID of the prompt to delete." +msgstr "" + +#: cdcf43e9ffdf4c77952652485c2867e2 +#: discord.onboarding.Onboarding.delete_prompt:12 of +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "" + +#: 09d52410084d43a39931d71b0da0e2c2 +#: discord.onboarding.Onboarding.delete_prompt:18 of +msgid "No prompt with this ID exists." +msgstr "" + +#: discord.onboarding.OnboardingPrompt:1 e9bbcc00172d4571aeb8a1aaa2fcffcc of +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "" + +#: 40574c40da6a4ed6beca51ba233bead3 discord.onboarding.OnboardingPrompt:7 of +msgid "The id of the prompt." +msgstr "" + +#: 685b6eedf1484c94aeea4dff12247f40 discord.onboarding.OnboardingPrompt:15 of +msgid ":class:`PromptType`" +msgstr "" + +#: 83dacb7ae96c43a4b4917f49fb6e496b discord.onboarding.OnboardingPrompt:27 of +msgid "List[:class:`PromptOption`]" +msgstr "" + +#: 4512d47250fd4664bc1928c5050aabf3 discord.onboarding.PromptOption:1 of +msgid "" +"Represents an onboarding prompt option displayed in " +":class:`OnboardingPrompt`." +msgstr "" + +#: 5d260ad66d5746919fedb99cc3ebaeb1 discord.onboarding.PromptOption:7 of +msgid "The id of the prompt option." +msgstr "" + +#: 39216b8c9a634b2fa67406bbd8a8f7e3 discord.onboarding.PromptOption:13 of +msgid "The channels assigned to the user when they select this option." +msgstr "" + +#: 6efdd1d676b6498ea7a7b933c7a4fcc8 discord.onboarding.PromptOption:15 +#: discord.onboarding.PromptOption:21 of +msgid "List[:class:`Snowflake`]" +msgstr "" + +#: bf357dbe14854415b2edcde082511a2d discord.onboarding.PromptOption:19 of +msgid "The roles assigned to the user when they select this option." +msgstr "" + +#: bea61aebacbf44cd938740a0f103f3de discord.onboarding.PromptOption:25 of +msgid "The emoji displayed with the option." +msgstr "" + +#: 201b7a7c20b7462080d7ef962f18c186 discord.onboarding.PromptOption:27 of +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "" + +#: d5adad86add84b7980b126a6cd5977bf discord.onboarding.PromptOption:31 of +msgid "The option's title." +msgstr "" + +#: 1e50bdeb3b6748af981acd85600a1abb discord.onboarding.PromptOption:37 of +msgid "The option's description." +msgstr "" + +#: ../../api/models.rst:262 336df85a4c564d0e9187eaaab07e05fc +msgid "Integration" +msgstr "" + +#: 1785bfbb2cbe44d7b237f2f2c73a769b discord.integrations.Integration:1 of +msgid "Represents a guild integration." +msgstr "" + +#: 9796bc5b9de64095a1c6c4b1297d91e1 discord.integrations.BotIntegration:13 +#: discord.integrations.Integration:13 +#: discord.integrations.StreamIntegration:13 of +msgid "The integration name." +msgstr "" + +#: discord.integrations.BotIntegration:19 discord.integrations.Integration:19 +#: discord.integrations.StreamIntegration:19 ee79d1da943c4e048638ebf74603e904 +#: of +msgid "The guild of the integration." +msgstr "" + +#: a15dc03a69304c0ea67001bdcc74eeea discord.integrations.BotIntegration:25 +#: discord.integrations.Integration:25 +#: discord.integrations.StreamIntegration:25 of +msgid "The integration type (i.e. Twitch)." +msgstr "" + +#: 7bd5e756a20541969248ddb62fce3937 discord.integrations.BotIntegration:31 +#: discord.integrations.Integration:31 +#: discord.integrations.StreamIntegration:31 of +msgid "Whether the integration is currently enabled." +msgstr "" + +#: d3600becb7c747b58990065d4e6a10e1 discord.integrations.Integration:37 of +msgid "The account linked to this integration." +msgstr "" + +#: 21d3b7a2c2794cbb899e0d71e058a150 discord.integrations.BotIntegration:45 +#: discord.integrations.Integration:39 +#: discord.integrations.StreamIntegration:69 of +msgid ":class:`IntegrationAccount`" +msgstr "" + +#: 457c653cc8d74125bcd46da778f939b9 discord.integrations.BotIntegration:37 +#: discord.integrations.Integration:43 of +msgid "The user that added this integration." +msgstr "" + +#: 8b3ffbaa59b14c90a9fc7afa45026e2d discord.integrations.Integration.delete:3 +#: of +msgid "Deletes the integration." +msgstr "" + +#: dd5935769aea469ba10a8a1d3a8bbc1b discord.integrations.Integration.delete:9 +#: of +msgid "" +"The reason the integration was deleted. Shows up on the audit log. .. " +"versionadded:: 2.0" +msgstr "" + +#: 734f9399d86e4b8e9a1def95909ec9c3 discord.integrations.Integration.delete:9 +#: of +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "" + +#: discord.integrations.Integration.delete:14 ea6d867ff2b64f0784fe1cd4a3643563 +#: of +msgid "You do not have permission to delete the integration." +msgstr "" + +#: discord.integrations.Integration.delete:15 fc5b286ea45942b0aa4ccc4fa2650448 +#: of +msgid "Deleting the integration failed." +msgstr "" + +#: 051f5baa31ad4608a77a9235e725f749 discord.integrations.IntegrationAccount:1 +#: of +msgid "Represents an integration account." +msgstr "" + +#: b46ce6c022144379a08da3c7e379031d discord.integrations.IntegrationAccount:7 +#: of +msgid "The account ID." +msgstr "" + +#: 50cde552d4454560ae462e981472bd31 discord.integrations.IntegrationAccount:13 +#: of +msgid "The account name." +msgstr "" + +#: d4f2fb2b97b0466daffc259ba311fa14 discord.integrations.BotIntegration:1 of +msgid "Represents a bot integration on discord." +msgstr "" + +#: 0b0e4b93e0074ce3bde5c03b1389b3ef discord.integrations.BotIntegration:43 +#: discord.integrations.StreamIntegration:67 of +msgid "The integration account information." +msgstr "" + +#: 3d2f746f188b48fcaa0c20d7e321d9b1 discord.integrations.BotIntegration:49 of +msgid "The application tied to this integration." +msgstr "" + +#: 6f321f9ee8bf422d9c0d4d54a6dc99b9 discord.integrations.BotIntegration:51 of +msgid ":class:`IntegrationApplication`" +msgstr "" + +#: a7dc168070fb49c3a3446ea00d0e15df +#: discord.integrations.IntegrationApplication:1 of +msgid "Represents an application for a bot integration." +msgstr "" + +#: acce68a625bc416282a380ec7f49a537 +#: discord.integrations.IntegrationApplication:7 of +msgid "The ID for this application." +msgstr "" + +#: de98dede40cc4d77a38831d433b5387d +#: discord.integrations.IntegrationApplication:13 of +msgid "The application's name." +msgstr "" + +#: bffed0c8dada4975a6e439912fba1f4e +#: discord.integrations.IntegrationApplication:19 of +msgid "The application's icon hash." +msgstr "" + +#: 3e80d9ebb4f64ac7b9acda712293a428 +#: discord.integrations.IntegrationApplication:25 of +msgid "The application's description. Can be an empty string." +msgstr "" + +#: 0c1c24e1fe04467eab04f0003f56c375 +#: discord.integrations.IntegrationApplication:31 of +msgid "The summary of the application. Can be an empty string." +msgstr "" + +#: aea523fa81074e9dbd69e8c156914b31 +#: discord.integrations.IntegrationApplication:37 of +msgid "The bot user on this application." +msgstr "" + +#: c68676e831784f818ed983ef682555db discord.integrations.StreamIntegration:1 of +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "" + +#: 24d03d37cb52482d89c62b6b84ef4311 discord.integrations.StreamIntegration:37 +#: of +msgid "Where the integration is currently syncing." +msgstr "" + +#: 3593d31955bc4632bb4985471e78e098 discord.integrations.StreamIntegration:43 +#: of +msgid "" +"Whether emoticons should be synced for this integration (currently twitch" +" only)." +msgstr "" + +#: 6e0ac92b80784da497c721645009c8e6 discord.integrations.StreamIntegration:49 +#: of +msgid "" +"The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as " +"well." +msgstr "" + +#: 7a4de949a3f049bb9a4c83c33675d557 discord.integrations.StreamIntegration:51 +#: of +msgid ":class:`ExpireBehaviour`" +msgstr "" + +#: discord.integrations.StreamIntegration:55 e03d6eec6012477790d4eae99a4f1a39 +#: of +msgid "The grace period (in days) for expiring subscribers." +msgstr "" + +#: c030974a1da14562a4a19d1b747cf27f discord.integrations.StreamIntegration:61 +#: of +msgid "The user for the integration." +msgstr "" + +#: 34ac350a5f24416c9dd75923281ec2c7 discord.integrations.StreamIntegration:73 +#: of +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "" + +#: 677c8eaf2fb84d439ecf639d5a7032b2 discord.StreamIntegration.expire_behavior:1 +#: of +msgid "An alias for :attr:`expire_behaviour`." +msgstr "" + +#: 0e4777b133bd43ef9717d00fa475dfe6 discord.StreamIntegration.role:1 of +msgid "The role which the integration uses for subscribers." +msgstr "" + +#: 762cedc36f1645f48f9f5a0d9d2fc27e +#: discord.integrations.StreamIntegration.edit:3 of +msgid "Edits the integration." +msgstr "" + +#: 27c5d6ff298146d0841521848de21afb +#: discord.integrations.StreamIntegration.edit:9 of +msgid "" +"The behaviour when an integration subscription lapses. Aliased to " +"``expire_behavior`` as well." +msgstr "" + +#: 7b5cde27ae5e419bb307f66f6fac1144 +#: discord.integrations.StreamIntegration.edit:12 of +msgid "" +"The period (in days) where the integration will ignore lapsed " +"subscriptions." +msgstr "" + +#: 583eabb6e09b477bae17d461579d8e60 +#: discord.integrations.StreamIntegration.edit:15 of +msgid "" +"Where emoticons should be synced for this integration (currently twitch " +"only)." +msgstr "" + +#: 5c7199415d0646a0a3771e3e3f68769b +#: discord.integrations.StreamIntegration.edit:18 of +msgid "You do not have permission to edit the integration." +msgstr "" + +#: 7ee08cacd7934777ba8ce2f3f00e8696 +#: discord.integrations.StreamIntegration.edit:20 of +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "" + +#: 18a0bc5e019c479aa91eced9307c5419 +#: discord.integrations.StreamIntegration.sync:3 of +msgid "Syncs the integration." +msgstr "" + +#: 4888b65407a843ceaeb05eccbe0cc4e8 +#: discord.integrations.StreamIntegration.sync:8 of +msgid "You do not have permission to sync the integration." +msgstr "" + +#: 03487c76dd8843a5ba8ae916bddd7e62 +#: discord.integrations.StreamIntegration.sync:9 of +msgid "Syncing the integration failed." +msgstr "" + +#: ../../api/models.rst:280 9cf29fbd2890454db490e0730bd67152 +msgid "Widget" +msgstr "" + +#: 1d87c6fd0c164a4585b06b69648cfad6 discord.widget.Widget:1 of +msgid "Represents a :class:`Guild` widget." +msgstr "" + +#: discord.widget.Widget:7 eb2b35ab9969443bb0ec92c7427dcacf of +msgid "Checks if two widgets are the same." +msgstr "" + +#: 595eef4d74ad40719f2926f63d720866 discord.widget.Widget:11 of +msgid "Checks if two widgets are not the same." +msgstr "" + +#: 77237a33c4324d729d14829db8440658 discord.widget.Widget:15 of +msgid "Returns the widget's JSON URL." +msgstr "" + +#: 9b2d03f0d394413c849737a5730a5637 discord.widget.Widget:25 of +msgid "The guild's name." +msgstr "" + +#: bd6ffaf6e5aa4480b9a3ec32545bb678 discord.widget.Widget:31 of +msgid "The accessible voice channels in the guild." +msgstr "" + +#: 433e644b5a464d99965275aa2bdf5113 discord.widget.Widget:33 of +msgid "List[:class:`WidgetChannel`]" +msgstr "" + +#: 2cdd2806026540edb70d2f1f54362cf6 discord.widget.Widget:37 of +msgid "" +"The online members in the server. Offline members do not appear in the " +"widget." +msgstr "" + +#: 491aab7c0228443e98dd0634065be810 discord.widget.Widget:42 of +msgid "" +"Due to a Discord limitation, if this data is available the users will be " +"\"anonymized\" with linear IDs and discriminator information being " +"incorrect. Likewise, the number of members retrieved is capped." +msgstr "" + +#: 994e3f551fdc4c33aff57bbf415915ea discord.Widget.created_at:1 of +msgid "Returns the member's creation time in UTC." +msgstr "" + +#: b990bc2341be4bda99857899e6781163 discord.Widget.json_url:1 of +msgid "The JSON URL of the widget." +msgstr "" + +#: 1814a1e713b24e2d97c981eff1c125f9 discord.Widget.invite_url:1 of +msgid "The invite URL for the guild, if available." +msgstr "" + +#: 840a71ef091143abb364c22f4d133ca6 discord.widget.Widget.fetch_invite:3 of +msgid "" +"Retrieves an :class:`Invite` from the widget's invite URL. This is the " +"same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "" + +#: d75451ea4129492c9596eba0da52ecf1 discord.widget.Widget.fetch_invite:8 of +msgid "" +"Whether to include count information in the invite. This fills the " +":attr:`Invite.approximate_member_count` and " +":attr:`Invite.approximate_presence_count` fields." +msgstr "" + +#: discord.widget.Widget.fetch_invite:13 ff90e8c1588b42c5a22917055eec9364 of +msgid "The invite from the widget's invite URL." +msgstr "" + +#: 580b931e16cc43dda7c757392c9d60e9 discord.widget.Widget.fetch_invite:14 of +msgid ":class:`Invite`" +msgstr "" + +#: 3acbe0815eda46edb6098d348f866bfe discord.widget.WidgetChannel:1 of +msgid "Represents a \"partial\" widget channel." +msgstr "" + +#: ded97df4dda74dd080c94aaa4e540000 discord.widget.WidgetChannel:23 of +msgid "The channel's ID." +msgstr "" + +#: 72f9a68665cd4bf7aac6cf2bf68c1cd7 discord.widget.WidgetChannel:35 of +msgid "The channel's position" +msgstr "" + +#: d5394f7afc754b288c64a3f1f72932d5 discord.widget.WidgetMember:1 of +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "" + +#: 9999d783bb9f4dc18b91d2cd85068ebe discord.widget.WidgetMember:7 of +msgid "Checks if two widget members are the same." +msgstr "" + +#: 35731aff615f4dff845ae775b414311a discord.widget.WidgetMember:11 of +msgid "Checks if two widget members are not the same." +msgstr "" + +#: 0f4e9d0cd50a4b1d91351ab5d94c3979 discord.widget.WidgetMember:15 of +msgid "Return the widget member's hash." +msgstr "" + +#: 7bb172beacfe4617aa83c641cc3f2576 discord.widget.WidgetMember:19 of +msgid "Returns the widget member's `name#discriminator`." +msgstr "" + +#: 7443575f9f214e1699b8e4cfa95ab02c discord.widget.WidgetMember:23 of +msgid "The member's ID." +msgstr "" + +#: discord.widget.WidgetMember:29 ed8828093ef343208bf15ddf3093d61e of +msgid "The member's username." +msgstr "" + +#: 476e5b58d05d4f0ba6d0c2efc1a612bc discord.widget.WidgetMember:35 of +msgid "The member's discriminator." +msgstr "" + +#: 52e4f22308a84c2e9d95fd17ea2b4e5f discord.widget.WidgetMember:41 of +msgid "Whether the member is a bot." +msgstr "" + +#: 7fb6bb5298914dfaada7d31d17e859c0 discord.widget.WidgetMember:47 of +msgid "The member's status." +msgstr "" + +#: c2adee63344e4654956898d0f1e443a6 discord.widget.WidgetMember:49 of +msgid ":class:`Status`" +msgstr "" + +#: 157122b9e8b24251880d68a737d4d522 discord.widget.WidgetMember:53 of +msgid "The member's nickname." +msgstr "" + +#: discord.widget.WidgetMember:59 f619f9599f374b6c8f1df8b0f1765a39 of +msgid "The member's avatar hash." +msgstr "" + +#: 45684373c5e74f8fb347af80b03ed751 discord.widget.WidgetMember:65 of +msgid "The member's activity." +msgstr "" + +#: a1689f0e7f6244d8a119ce54d04afd64 discord.widget.WidgetMember:67 of +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "" + +#: b3ff818af6974ac9af066044bf4ba6ca discord.widget.WidgetMember:71 of +msgid "Whether the member is currently deafened." +msgstr "" + +#: discord.widget.WidgetMember:77 fc4b2322da844f30885f5d2bff97bace of +msgid "Whether the member is currently muted." +msgstr "" + +#: discord.widget.WidgetMember:83 e24cd9e568b849f7a5b64fe9242d31f6 of +msgid "Whether the member is currently being suppressed." +msgstr "" + +#: 2eb48de5180449159d623794c7ef1d80 discord.widget.WidgetMember:89 of +msgid "Which channel the member is connected to." +msgstr "" + +#: baf0d47ab52a4e7f9ad33ad1297b6245 discord.widget.WidgetMember:91 of +msgid "Optional[:class:`WidgetChannel`]" +msgstr "" + +#: be1c1bedfca64980a23a4e6ce258f0d1 discord.WidgetMember.display_name:1 of +msgid "Returns the member's display name." +msgstr "" + +#: ../../api/models.rst:299 37c503ce08c645ed80617cb4dae9b391 +msgid "Threads" +msgstr "" + +#: 862c0af81fa74b42ae0c1fc3e4927c60 discord.threads.Thread:1 of +msgid "Represents a Discord thread." +msgstr "" + +#: a53a2504fd6b4fe3a4779e7a2316dde8 discord.threads.Thread:7 of +msgid "Checks if two threads are equal." +msgstr "" + +#: d317c8430ff34f91a4b7d991b79bd5f7 discord.threads.Thread:11 of +msgid "Checks if two threads are not equal." +msgstr "" + +#: 561a44e9bb8b491e8c7b78ee3fd6701d discord.threads.Thread:15 of +msgid "Returns the thread's hash." +msgstr "" + +#: discord.threads.Thread:19 f1beb12f175941abb922b3500042939f of +msgid "Returns the thread's name." +msgstr "" + +#: 4858970bd7154bc89032f2bc4f72baa7 discord.threads.Thread:25 of +msgid "The thread name." +msgstr "" + +#: discord.threads.Thread:31 f197d86c764149bfb3fd7c1eacf9a3b3 of +msgid "The guild the thread belongs to." +msgstr "" + +#: c3245fdb024f4dbd9d3ce6b9e53ca810 discord.threads.Thread:37 of +msgid "The thread ID." +msgstr "" + +#: cb093b6a1fdd4cfcb644c15c0e577728 discord.threads.Thread:40 of +msgid "This ID is the same as the thread starting message ID." +msgstr "" + +#: 60d6679beded46c194c1da5401f65110 discord.threads.Thread:46 of +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "" + +#: 679daece3daa4e4cbb295a2b5337dd5f discord.threads.Thread:52 of +msgid "The user's ID that created this thread." +msgstr "" + +#: b1064ff6697546238155084f98843c81 discord.threads.Thread:58 of +msgid "" +"The last message ID of the message sent to this thread. It may *not* " +"point to an existing or valid message." +msgstr "" + +#: 96b104d5ba9746c6bc54bee3d95bfdcf discord.threads.Thread:65 of +msgid "" +"The number of seconds a member must wait between sending messages in this" +" thread. A value of `0` denotes that it is disabled. Bots and users with " +":attr:`~Permissions.manage_channels` or " +":attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "" + +#: 518ddd8e2aea44fcbf0b4e1d7fb21da1 discord.threads.Thread:74 of +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "" + +#: 5b10830c99d1452194e55ee1a0291464 discord.threads.Thread:80 of +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "" + +#: c311e65b40b6488db53add6297be7cba discord.threads.Thread:86 of +msgid "" +"A thread member representing yourself, if you've joined the thread. This " +"could not be available." +msgstr "" + +#: 3488c9668abc47e8a839d445f9eed2a9 discord.threads.Thread:89 of +msgid "Optional[:class:`ThreadMember`]" +msgstr "" + +#: 21c84d957185468f97d2e7b36ec22056 discord.threads.Thread:93 of +msgid "Whether the thread is archived." +msgstr "" + +#: b4eafe5a4f7a4a088e54ccbe39314d36 discord.threads.Thread:99 of +msgid "Whether the thread is locked." +msgstr "" + +#: 6f26e3e892c0426b8ffcae0f1d4b79a5 discord.threads.Thread:105 of +msgid "" +"Whether non-moderators can add other non-moderators to this thread. This " +"is always ``True`` for public threads." +msgstr "" + +#: 0c3bc69cc45443009fda8cfda1204d10 discord.threads.Thread:112 of +msgid "" +"The duration in minutes until the thread is automatically archived due to" +" inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "" + +#: discord.threads.Thread:119 ff2833e886b544118d6856cce8f59537 of +msgid "" +"An aware timestamp of when the thread's archived status was last updated " +"in UTC." +msgstr "" + +#: cbd4c982ba7741ba9045fcb0a9bd7f11 discord.threads.Thread:125 of +msgid "" +"An aware timestamp of when the thread was created. Only available for " +"threads created after 2022-01-09." +msgstr "" + +#: discord.threads.Thread:132 e212d34b2b1c416494deb7d202253ad9 of +msgid "Extra features of the thread." +msgstr "" + +#: discord.channel.CategoryChannel:64 discord.channel.ForumChannel:102 +#: discord.channel.StageChannel:93 discord.channel.TextChannel:98 +#: discord.channel.VoiceChannel:114 discord.threads.Thread:136 +#: f03b50bb386e47e88f5080d349b75439 of +msgid ":class:`ChannelFlags`" +msgstr "" + +#: a9b329ac47594a1ca69498f273e2226e discord.threads.Thread:140 of +msgid "" +"Number of messages ever sent in a thread. It's similar to message_count " +"on message creation, but will not decrement the number when a message is " +"deleted." +msgstr "" + +#: 4e301d5d8f414b4a8fca6cb4433976e7 discord.CategoryChannel.type:1 +#: discord.DMChannel.type:1 discord.ForumChannel.type:1 +#: discord.GroupChannel.type:1 discord.StageChannel.type:1 +#: discord.TextChannel.type:1 discord.Thread.type:1 discord.VoiceChannel.type:1 +#: of +msgid "The channel's Discord type." +msgstr "" + +#: 6685fa4f98da4f4fbad14622dc43bd59 discord.Thread.parent:1 of +msgid "The parent channel this thread belongs to." +msgstr "" + +#: 3bb2c4499f774c7db3a93a7a4840b242 discord.Thread.owner:1 of +msgid "The member this thread belongs to." +msgstr "" + +#: de6170f8f1db4c83a177129fd8a80e69 discord.Thread.mention:1 of +msgid "The string that allows you to mention the thread." +msgstr "" + +#: b55dcf3cd4e84201a89d95165638fb0d discord.Thread.jump_url:1 of +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "" + +#: 65ee281822674cdf9142045aa15e51f5 discord.Thread.members:1 of +msgid "" +"A list of thread members in this thread, including the bot if it is a " +"member of this thread." +msgstr "" + +#: 1b86fa2a3a8c426889ae42c19b19f672 discord.Thread.members:3 of +msgid "" +"This requires :attr:`Intents.members` to be properly filled. Most of the " +"time however, this data is not provided by the gateway and a call to " +":meth:`fetch_members` is needed." +msgstr "" + +#: 3f3c5952d3e44e838cda0dd3b470fed5 discord.Thread.applied_tags:1 of +msgid "A list of tags applied to this thread." +msgstr "" + +#: 520a7a4a8aeb471a9616b98069fe4e20 discord.Thread.applied_tags:3 of +msgid "This is only available for threads in forum channels." +msgstr "" + +#: 22ee64cf3e304d3fa699868a43f6e342 discord.Thread.applied_tags:5 +#: discord.channel.ForumChannel:110 of +msgid "List[:class:`ForumTag`]" +msgstr "" + +#: 7d496f753ec4435baf11b02c3eecff1d discord.Thread.last_message:1 of +msgid "Returns the last message from this thread in cache." +msgstr "" + +#: 79224463831a451c8339369ad55335d1 discord.ForumChannel.last_message:3 +#: discord.StageChannel.last_message:3 discord.TextChannel.last_message:3 +#: discord.Thread.last_message:3 discord.Thread.starting_message:3 +#: discord.VoiceChannel.last_message:3 of +msgid "The message might not be valid or point to an existing message." +msgstr "" + +#: 086f64f83b2e45448c6e193790788fb9 discord.ForumChannel.last_message:5 +#: discord.StageChannel.last_message:5 discord.TextChannel.last_message:5 +#: discord.Thread.last_message:5 discord.VoiceChannel.last_message:5 of +msgid "Reliable Fetching" +msgstr "" + +#: 1fa6735ff47b46a5a2bd90070d218c40 discord.ForumChannel.last_message:8 +#: discord.StageChannel.last_message:8 discord.TextChannel.last_message:8 +#: discord.Thread.last_message:8 discord.VoiceChannel.last_message:8 of +msgid "" +"For a slightly more reliable method of fetching the last message, " +"consider using either :meth:`history` or :meth:`fetch_message` with the " +":attr:`last_message_id` attribute." +msgstr "" + +#: 53538facaa654a67be082b8dfbf4f8d3 discord.ForumChannel.last_message:13 +#: discord.StageChannel.last_message:13 discord.TextChannel.last_message:13 +#: discord.Thread.last_message:13 discord.VoiceChannel.last_message:13 of +msgid "The last message in this channel or ``None`` if not found." +msgstr "" + +#: ../../docstring 8bb271610b164ef2a44fba616a0bb416 +#: discord.ForumChannel.last_message:14 +#: discord.InteractionMetadata.interacted_message:4 +#: discord.InteractionMetadata.original_response_message:4 +#: discord.StageChannel.last_message:14 discord.TextChannel.last_message:14 +#: discord.Thread.last_message:14 discord.Thread.starting_message:9 +#: discord.VoiceChannel.last_message:14 discord.interactions.Interaction:54 +#: discord.raw_models.AutoModActionExecutionEvent:72 +#: discord.raw_models.AutoModActionExecutionEvent:86 +#: discord.raw_models.RawMessageDeleteEvent:25 +#: discord.raw_models.RawMessageUpdateEvent:36 of +msgid "Optional[:class:`Message`]" +msgstr "" + +#: discord.Thread.category:1 fa406e35bd84467385fd2950bc239ea7 of +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "" + +#: 3ecfd31222b1423d888799e280392ed4 discord.Thread.category:3 of +msgid "The parent channel's category." +msgstr "" + +#: 5c2fca147f364702ad1752ee26abc80a discord.Thread.category:4 of +msgid "Optional[:class:`CategoryChannel`]" +msgstr "" + +#: discord.Thread.category:6 discord.Thread.category_id:6 +#: e66dee0dc32745b5b1c3998855c064eb of +msgid "The parent channel was not cached and returned ``None``." +msgstr "" + +#: 2722f4ac082d4e9b8f104458a252afbf discord.Thread.category_id:1 of +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "" + +#: 142b2cc7a5094cb8aa3990e91a2a036a discord.Thread.category_id:3 of +msgid "The parent channel's category ID." +msgstr "" + +#: 65899ce1f85a4946b96f26fe16255a80 discord.Thread.starting_message:1 of +msgid "Returns the message that started this thread." +msgstr "" + +#: 3a6d325fb82747a7bc19ddda517f3b17 discord.Thread.starting_message:6 of +msgid "The ID for this message is the same as the thread ID." +msgstr "" + +#: 9609686473534ab295e3ecdb511944f3 discord.Thread.starting_message:8 of +msgid "" +"The message that started this thread or ``None`` if not found in the " +"cache." +msgstr "" + +#: b9b0a2dd3d2e4ecc887943971386974f discord.threads.Thread.is_pinned:1 of +msgid "" +"Whether the thread is pinned to the top of its parent forum channel. " +":rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 1e601881276b4c0f8d04536a4d310638 discord.threads.Thread.is_private:1 of +msgid "Whether the thread is a private thread." +msgstr "" + +#: a157bbbcad26493495551f13f22a9b57 discord.threads.Thread.is_private:3 of +msgid "" +"A private thread is only viewable by those that have been explicitly " +"invited or have :attr:`~.Permissions.manage_threads`." +msgstr "" + +#: 1a00e42e8d4b4436ae5a3eda59611a61 discord.threads.Thread.is_news:1 of +msgid "Whether the thread is a news thread." +msgstr "" + +#: c770f278fc9741068b5f5caa810a47ec discord.threads.Thread.is_news:3 of +msgid "" +"A news thread is a thread that has a parent that is a news channel, i.e. " +":meth:`.TextChannel.is_news` is ``True``." +msgstr "" + +#: be6f1dd770614a5d8bf4700202115bf4 discord.threads.Thread.is_nsfw:1 of +msgid "Whether the thread is NSFW or not." +msgstr "" + +#: 80c412eccc484737bba543d510696dd2 discord.threads.Thread.is_nsfw:3 of +msgid "" +"An NSFW thread is a thread that has a parent that is an NSFW channel, " +"i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "" + +#: 692f32fef56d4dc2a04da0f0d03690c3 discord.abc.GuildChannel.permissions_for:1 +#: discord.channel.VocalGuildChannel.permissions_for:1 +#: discord.channel._TextChannel.permissions_for:1 +#: discord.threads.Thread.permissions_for:1 of +msgid "" +"Handles permission resolution for the :class:`~discord.Member` or " +":class:`~discord.Role`." +msgstr "" + +#: 42fd14322cd84ff585c47df80340632a discord.threads.Thread.permissions_for:4 of +msgid "" +"Since threads do not have their own permissions, they inherit them from " +"the parent channel. This is a convenience method for calling " +":meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "" + +#: 5f9a51f4c1324ef39f021d40602fc2ca discord.abc.GuildChannel.permissions_for:23 +#: discord.channel.VocalGuildChannel.permissions_for:23 +#: discord.channel._TextChannel.permissions_for:23 +#: discord.threads.Thread.permissions_for:10 of +msgid "" +"The object to resolve permissions for. This could be either a member or a" +" role. If it's a role then member overwrites are not computed." +msgstr "" + +#: 4affbef6d844449eb70b5f03da656576 discord.abc.GuildChannel.permissions_for:28 +#: discord.channel.VocalGuildChannel.permissions_for:28 +#: discord.channel._TextChannel.permissions_for:28 +#: discord.threads.Thread.permissions_for:15 of +msgid "The resolved permissions for the member or role." +msgstr "" + +#: 32bedaab337c4ea6a781177cc1e64553 discord.abc.GuildChannel.permissions_for:29 +#: discord.channel.VocalGuildChannel.permissions_for:29 +#: discord.channel._TextChannel.permissions_for:29 +#: discord.threads.Thread.permissions_for:16 ebe51a2429f948418f2ba027284602e4 +#: of +msgid ":class:`~discord.Permissions`" +msgstr "" + +#: 93eb5aa115234b06b0dc1fb131cbdda0 discord.threads.Thread.permissions_for:18 +#: of +msgid "The parent channel was not cached and returned ``None``" +msgstr "" + +#: discord.channel.StageChannel.delete_messages:3 +#: discord.channel.VoiceChannel.delete_messages:3 +#: discord.channel._TextChannel.delete_messages:3 +#: discord.threads.Thread.delete_messages:3 efb41e6c99054ced96096e8407c04478 of +msgid "" +"Deletes a list of messages. This is similar to :meth:`Message.delete` " +"except it bulk deletes multiple messages." +msgstr "" + +#: 95d403544c7b470d8e62307238c84394 +#: discord.channel.StageChannel.delete_messages:6 +#: discord.channel.VoiceChannel.delete_messages:6 +#: discord.channel._TextChannel.delete_messages:6 +#: discord.threads.Thread.delete_messages:6 of +msgid "" +"As a special case, if the number of messages is 0, then nothing is done. " +"If the number of messages is 1 then single message delete is done. If " +"it's more than two, then bulk delete is used." +msgstr "" + +#: 44d243e208e74dabaf00f2898f37a386 +#: discord.channel.StageChannel.delete_messages:10 +#: discord.channel.VoiceChannel.delete_messages:10 +#: discord.channel._TextChannel.delete_messages:10 +#: discord.threads.Thread.delete_messages:10 of +msgid "" +"You cannot bulk delete more than 100 messages or messages that are older " +"than 14 days old." +msgstr "" + +#: 12ac8c2d1ee24602b36d469637750012 +#: discord.channel.StageChannel.delete_messages:13 +#: discord.channel.VoiceChannel.delete_messages:13 +#: discord.channel._TextChannel.delete_messages:13 +#: discord.threads.Thread.delete_messages:13 of +msgid "" +"You must have the :attr:`~Permissions.manage_messages` permission to use " +"this." +msgstr "" + +#: 81b2505f5c46461fbe068c205bb88ae6 discord.threads.Thread.delete_messages:16 +#: of +msgid "Usable only by bot accounts." +msgstr "" + +#: 258275aa7a7f40928cd773403e9d2750 +#: discord.channel.StageChannel.delete_messages:17 +#: discord.channel.VoiceChannel.delete_messages:17 +#: discord.channel._TextChannel.delete_messages:17 +#: discord.threads.Thread.delete_messages:19 of +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "" + +#: 8fc880d585134a17a0024216a1164444 +#: discord.channel.StageChannel.delete_messages:20 +#: discord.channel.StageChannel.purge:38 +#: discord.channel.VoiceChannel.delete_messages:20 +#: discord.channel.VoiceChannel.purge:38 +#: discord.channel._TextChannel.delete_messages:20 +#: discord.channel._TextChannel.purge:38 +#: discord.threads.Thread.delete_messages:22 discord.threads.Thread.purge:38 of +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "" + +#: a1442b5bbdf74f6e8b31ae84a2726b54 +#: discord.channel.StageChannel.delete_messages:23 +#: discord.channel.VoiceChannel.delete_messages:23 +#: discord.channel._TextChannel.delete_messages:23 +#: discord.threads.Thread.delete_messages:25 of +msgid "The number of messages to delete was more than 100." +msgstr "" + +#: dd1d020ebc714c82be6ea10ecba7ab9c discord.threads.Thread.delete_messages:26 +#: of +msgid "" +"You do not have proper permissions to delete the messages, or you're " +"not using a bot account." +msgstr "" + +#: 8411b93430f2431482fd0973f5fe5166 +#: discord.channel.StageChannel.delete_messages:25 +#: discord.channel.VoiceChannel.delete_messages:25 +#: discord.channel._TextChannel.delete_messages:25 +#: discord.threads.Thread.delete_messages:27 of +msgid "If single delete, then the message was already deleted." +msgstr "" + +#: 313dc26247974242aaf1193cdd259b8f +#: discord.channel.StageChannel.delete_messages:26 +#: discord.channel.VoiceChannel.delete_messages:26 +#: discord.channel._TextChannel.delete_messages:26 +#: discord.threads.Thread.delete_messages:28 of +msgid "Deleting the messages failed." +msgstr "" + +#: 20bf7bf6e69540dc87705f873d0610d7 discord.channel.StageChannel.purge:3 +#: discord.channel.VoiceChannel.purge:3 discord.channel._TextChannel.purge:3 +#: discord.threads.Thread.purge:3 of +msgid "" +"Purges a list of messages that meet the criteria given by the predicate " +"``check``. If a ``check`` is not provided then all messages are deleted " +"without discrimination." +msgstr "" + +#: 3465d6c0938946a886a3bc9197eefef8 discord.threads.Thread.purge:7 of +msgid "" +"You must have the :attr:`~Permissions.manage_messages` permission to " +"delete messages even if they are your own (unless you are a user " +"account). The :attr:`~Permissions.read_message_history` permission is " +"also needed to retrieve message history." +msgstr "" + +#: 48531b89c2704243bdba0081c736b094 discord.channel.StageChannel.purge:13 +#: discord.channel.VoiceChannel.purge:13 discord.channel._TextChannel.purge:13 +#: discord.threads.Thread.purge:13 of +msgid "" +"The number of messages to search through. This is not the number of " +"messages that will be deleted, though it can be." +msgstr "" + +#: 73a25e191e4d427eb290e5ad194aeb46 discord.channel.StageChannel.purge:17 +#: discord.channel.VoiceChannel.purge:17 discord.channel._TextChannel.purge:17 +#: discord.threads.Thread.purge:17 of +msgid "" +"The function used to check if a message should be deleted. It must take a" +" :class:`Message` as its sole parameter." +msgstr "" + +#: 6e83155f849f4352a4bfa760384b8b9e discord.channel.StageChannel.purge:21 +#: discord.channel.VoiceChannel.purge:21 discord.channel._TextChannel.purge:21 +#: discord.threads.Thread.purge:21 of +msgid "Same as ``before`` in :meth:`history`." +msgstr "" + +#: 7aa18cb895d644e19053e2eec14ee6c0 discord.channel.StageChannel.purge:24 +#: discord.channel.VoiceChannel.purge:24 discord.channel._TextChannel.purge:24 +#: discord.threads.Thread.purge:24 of +msgid "Same as ``after`` in :meth:`history`." +msgstr "" + +#: 083fb0803d4f4b939e1a15944a2584cf discord.channel.StageChannel.purge:27 +#: discord.channel.VoiceChannel.purge:27 discord.channel._TextChannel.purge:27 +#: discord.threads.Thread.purge:27 of +msgid "Same as ``around`` in :meth:`history`." +msgstr "" + +#: 0a6dd8d4b88c4a3e9b3e4e250790250e discord.channel.StageChannel.purge:30 +#: discord.channel.VoiceChannel.purge:30 discord.channel._TextChannel.purge:30 +#: discord.threads.Thread.purge:30 of +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "" + +#: 7981dc8e7bf44631bc14eaefc415734a discord.channel.StageChannel.purge:33 +#: discord.channel.VoiceChannel.purge:33 discord.channel._TextChannel.purge:33 +#: discord.threads.Thread.purge:33 of +msgid "" +"If ``True``, use bulk delete. Setting this to ``False`` is useful for " +"mass-deleting a bot's own messages without " +":attr:`Permissions.manage_messages`. When ``True``, will fall back to " +"single delete if messages are older than two weeks." +msgstr "" + +#: discord.channel.StageChannel.purge:41 discord.channel.VoiceChannel.purge:41 +#: discord.channel._TextChannel.purge:41 discord.threads.Thread.purge:41 +#: e2aad5ac64c24915bdc0bbe81ec6228f of +msgid "The list of messages that were deleted." +msgstr "" + +#: b0c8e3b1df6f47d9a418cb9029926cb7 discord.channel.StageChannel.purge:42 +#: discord.channel.VoiceChannel.purge:42 discord.channel._TextChannel.purge:42 +#: discord.threads.Thread.purge:42 of +msgid "List[:class:`.Message`]" +msgstr "" + +#: 75f5a744aaeb45b9800325ba52e32825 discord.channel.StageChannel.purge:44 +#: discord.channel.VoiceChannel.purge:44 discord.channel._TextChannel.purge:44 +#: discord.threads.Thread.purge:44 of +msgid "You do not have proper permissions to do the actions required." +msgstr "" + +#: 55ac3c5f07e84d59b3459547d1ec5ebb discord.channel.StageChannel.purge:45 +#: discord.channel.VoiceChannel.purge:45 discord.channel._TextChannel.purge:45 +#: discord.threads.Thread.purge:45 of +msgid "Purging the messages failed." +msgstr "" + +#: 67669bca174940f0a790b768a423a88b discord.channel.StageChannel.purge:49 +#: discord.channel.VoiceChannel.purge:49 discord.channel._TextChannel.purge:49 +#: discord.threads.Thread.purge:49 of +msgid "Deleting bot's messages ::" +msgstr "" + +#: 4496559920f34393bb3246284304db51 discord.threads.Thread.edit:3 of +msgid "Edits the thread." +msgstr "" + +#: discord.threads.Thread.edit:5 ec5c1a6a155042b3b86f50bc6ff94b25 of +msgid "" +"Editing the thread requires :attr:`.Permissions.manage_threads`. The " +"thread creator can also edit ``name``, ``archived`` or " +"``auto_archive_duration``. Note that if the thread is locked then only " +"those with :attr:`.Permissions.manage_threads` can send messages in it or" +" unarchive a thread." +msgstr "" + +#: discord.threads.Thread.edit:10 f0ab4c069b414542ae59c42963bee817 of +msgid "The thread must be unarchived to be edited." +msgstr "" + +#: 498910bc39f641c0aa938c6f996f063a discord.threads.Thread.edit:13 of +msgid "The new name of the thread." +msgstr "" + +#: 9664f07837e0479bb44fa5828ec3b4d4 discord.threads.Thread.edit:16 of +msgid "Whether to archive the thread or not." +msgstr "" + +#: 63f577001ef343a3ba34c99075155b12 discord.threads.Thread.edit:19 of +msgid "Whether to lock the thread or not." +msgstr "" + +#: 83b23a4a59684d8792b9edcf4730a552 discord.threads.Thread.edit:22 of +msgid "" +"Whether non-moderators can add other non-moderators to this thread. Only " +"available for private threads." +msgstr "" + +#: cf29fb446325413491772632704014f3 discord.threads.Thread.edit:26 of +msgid "" +"The new duration in minutes before a thread is automatically archived for" +" inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "" + +#: 1156a52c234a4a16a525c4ee1e8d2aa3 discord.threads.Thread.edit:34 of +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "" + +#: 16778a16ff164603a54eef19b4f71952 discord.threads.Thread.edit:37 of +msgid "" +"Whether to pin the thread or not. This only works if the thread is part " +"of a forum." +msgstr "" + +#: 0da7c0a3c631463692bb26a46134936a discord.threads.Thread.edit:40 of +msgid "" +"The set of tags to apply to the thread. Each tag object should have an ID" +" set. .. versionadded:: 2.3" +msgstr "" + +#: 4b882218e71646c4bde6153d4e8fce26 discord.threads.Thread.edit:40 of +msgid "" +"The set of tags to apply to the thread. Each tag object should have an ID" +" set." +msgstr "" + +#: discord.threads.Thread.edit:45 f3242dd7014845a89c338d87a47dc9a2 of +msgid "The newly edited thread." +msgstr "" + +#: 0be10d93f961436c9de4fab78f0fe327 +#: discord.channel.ForumChannel.create_thread:68 +#: discord.channel.TextChannel.create_thread:40 discord.threads.Thread.edit:46 +#: of +msgid ":class:`Thread`" +msgstr "" + +#: 0d0cd43a3658484b94e7206b30bcf60f discord.threads.Thread.edit:48 of +msgid "You do not have permissions to edit the thread." +msgstr "" + +#: a5f03015ee4640d79c0fe07e078aaa88 discord.threads.Thread.edit:49 of +msgid "Editing the thread failed." +msgstr "" + +#: 05c3fee091fc403fa1184f8c24a0b544 discord.threads.Thread.archive:3 of +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "" + +#: c625b40bb4bc47c2b3ef3646b70b9001 discord.threads.Thread.archive:6 of +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "" + +#: 5bbc21eca8354cd8a2ba719986db0064 discord.threads.Thread.archive:9 +#: discord.threads.Thread.unarchive:5 of +msgid "The updated thread." +msgstr "" + +#: 8e12b8fb6f0544c286a3fb3bb00d7a52 discord.threads.Thread.unarchive:3 of +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "" + +#: 31eb981658ed4cc9a37411b903861206 discord.threads.Thread.join:3 of +msgid "Joins this thread." +msgstr "" + +#: be140a45a17d41898ac50df0617089ee discord.threads.Thread.join:5 of +msgid "" +"You must have :attr:`~Permissions.send_messages_in_threads` to join a " +"thread. If the thread is private, :attr:`~Permissions.manage_threads` is " +"also needed." +msgstr "" + +#: discord.threads.Thread.join:8 e06f3725eaaf408db90393e6f3ada095 of +msgid "You do not have permissions to join the thread." +msgstr "" + +#: 7d12848dcb3f4861a351c970261c2b1b discord.threads.Thread.join:9 of +msgid "Joining the thread failed." +msgstr "" + +#: discord.threads.Thread.leave:3 ff71a333b5ae4e6bbd890b237dad840e of +msgid "Leaves this thread." +msgstr "" + +#: bdb4a9ea2f0a47a08d6dca16dff62451 discord.threads.Thread.leave:5 of +msgid "Leaving the thread failed." +msgstr "" + +#: 1b05a68ae3c84a648f1ad70729c77a36 discord.threads.Thread.add_user:3 of +msgid "Adds a user to this thread." +msgstr "" + +#: 4a0ae931e5564397891f5e173f57aea1 discord.threads.Thread.add_user:5 of +msgid "" +"You must have :attr:`~Permissions.send_messages_in_threads` to add a user" +" to a public thread. If the thread is private and :attr:`invitable` is " +"``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "" + +#: 1856ba808a5345d09d7679fedb68f710 discord.threads.Thread.add_user:11 of +msgid "The user to add to the thread." +msgstr "" + +#: 780131b5bb2b4a7386a00c1dd2604c8b discord.threads.Thread.add_user:14 of +msgid "You do not have permissions to add the user to the thread." +msgstr "" + +#: 739e34ad4e53466fa316fee1c363010e discord.threads.Thread.add_user:15 of +msgid "Adding the user to the thread failed." +msgstr "" + +#: 0bb51be8537b4cc6ae5e2913f7af4fab discord.threads.Thread.remove_user:3 of +msgid "Removes a user from this thread." +msgstr "" + +#: 8dbe55c513b84d41af8ad3e22098bab3 discord.threads.Thread.remove_user:5 of +msgid "" +"You must have :attr:`~Permissions.manage_threads` or be the creator of " +"the thread to remove a user." +msgstr "" + +#: discord.threads.Thread.remove_user:8 e72e4aeb9b2e48bea51c447675b82634 of +msgid "The user to remove from the thread." +msgstr "" + +#: c9902821760b43a5b3e58a1ff58ced44 discord.threads.Thread.remove_user:11 of +msgid "You do not have permissions to remove the user from the thread." +msgstr "" + +#: 424ee87877a14d00b91eef06804bf321 discord.threads.Thread.remove_user:12 of +msgid "Removing the user from the thread failed." +msgstr "" + +#: bfa27a74cae14a589e4212797383ae0f discord.threads.Thread.fetch_members:3 of +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "" + +#: 17c8b9aeddc44d2c98cd4241c194830c discord.threads.Thread.fetch_members:5 of +msgid "" +"This requires :attr:`Intents.members` to get information about members " +"other than yourself." +msgstr "" + +#: ab88896940db4fa48943613f620be701 discord.threads.Thread.fetch_members:8 of +msgid "All thread members in the thread." +msgstr "" + +#: 86a3f975569646a6a58e60647d1dfcde discord.threads.Thread.fetch_members:9 of +msgid "List[:class:`ThreadMember`]" +msgstr "" + +#: 71f3a9dbbb2a4b6e92dd4582e5e33c7d discord.threads.Thread.fetch_members:11 of +msgid "Retrieving the members failed." +msgstr "" + +#: 266518b94fca48c29a23d520a7a430f1 discord.threads.Thread.delete:3 of +msgid "Deletes this thread." +msgstr "" + +#: b3acb93535cc4ece8625c5d7d5b3ad76 discord.threads.Thread.delete:5 of +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "" + +#: 4457d46863cb4e2790ebd1ba60137630 discord.threads.Thread.delete:7 of +msgid "You do not have permissions to delete this thread." +msgstr "" + +#: 7744db38370a490aba33b006de6375d7 discord.threads.Thread.delete:8 of +msgid "Deleting the thread failed." +msgstr "" + +#: 860838b6020e49b0ae2028d20f4083f2 discord.threads.ThreadMember:1 of +msgid "Represents a Discord thread member." +msgstr "" + +#: ba525c7b07824c139f36bdecc842f020 discord.threads.ThreadMember:7 of +msgid "Checks if two thread members are equal." +msgstr "" + +#: 630e0a97a888475789d5f3ebacba3327 discord.threads.ThreadMember:11 of +msgid "Checks if two thread members are not equal." +msgstr "" + +#: 8302c36b3dbf42f2ae1d459d2c78c905 discord.threads.ThreadMember:15 of +msgid "Returns the thread member's hash." +msgstr "" + +#: ceb09394c4c4467b8f2d416c408764b3 discord.threads.ThreadMember:19 of +msgid "Returns the thread member's name." +msgstr "" + +#: b4aacab5225840ca94a608170900ccfa discord.threads.ThreadMember:25 of +msgid "The thread member's ID." +msgstr "" + +#: cc00b147152243bb8f89b459191c1daf discord.threads.ThreadMember:31 of +msgid "The thread's ID." +msgstr "" + +#: 985132367fb04e298906610d56501aec discord.threads.ThreadMember:37 of +msgid "The time the member joined the thread in UTC." +msgstr "" + +#: 97fc6a907f064db0a1c8e12ba6c89f42 discord.ThreadMember.thread:1 of +msgid "The thread this member belongs to." +msgstr "" + +#: ../../api/models.rst:320 74f4a8b9588440d094786e1993d7e7b4 +msgid "Stages" +msgstr "" + +#: 27cae1cff3b1483ba2927229b7e76ea6 discord.channel.StageChannel:1 of +msgid "Represents a Discord guild stage channel." +msgstr "" + +#: cbc78674793e480aaaf2d52a99574eb8 discord.channel.CategoryChannel:9 +#: discord.channel.DMChannel:7 discord.channel.ForumChannel:7 +#: discord.channel.GroupChannel:7 discord.channel.StageChannel:9 +#: discord.channel.TextChannel:7 discord.channel.VoiceChannel:7 of +msgid "Checks if two channels are equal." +msgstr "" + +#: 91b7e5fb35174e4c8cab7571141a7cd9 discord.channel.CategoryChannel:13 +#: discord.channel.DMChannel:11 discord.channel.ForumChannel:11 +#: discord.channel.GroupChannel:11 discord.channel.StageChannel:13 +#: discord.channel.TextChannel:11 discord.channel.VoiceChannel:11 of +msgid "Checks if two channels are not equal." +msgstr "" + +#: 40b19f0e11a242c3878748f60e579d3c discord.channel.DMChannel:15 +#: discord.channel.ForumChannel:15 discord.channel.GroupChannel:15 +#: discord.channel.StageChannel:17 discord.channel.TextChannel:15 +#: discord.channel.VoiceChannel:15 of +msgid "Returns the channel's hash." +msgstr "" + +#: c3008f4769c14c198b601e8cc3c70be8 discord.channel.ForumChannel:19 +#: discord.channel.StageChannel:21 discord.channel.TextChannel:19 +#: discord.channel.VoiceChannel:19 of +msgid "Returns the channel's name." +msgstr "" + +#: b116e2cea92b420eac9aea8cc1ab81f0 discord.channel.ForumChannel:23 +#: discord.channel.StageChannel:25 discord.channel.TextChannel:23 +#: discord.channel.VoiceChannel:23 of +msgid "The channel name." +msgstr "" + +#: discord.channel.ForumChannel:29 discord.channel.StageChannel:31 +#: discord.channel.TextChannel:29 discord.channel.VoiceChannel:29 +#: e4d03f1e47a9494392429ae5f2172724 of +msgid "The guild the channel belongs to." +msgstr "" + +#: 10d9af8b3c114f4f9be973e412b03fb3 discord.channel.ForumChannel:35 +#: discord.channel.StageChannel:37 discord.channel.TextChannel:35 +#: discord.channel.VoiceChannel:35 of +msgid "The channel ID." +msgstr "" + +#: 821d258afb4a4a4db55ea4e35e29266f discord.channel.StageChannel:43 of +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "" + +#: 7bce4c601b7e4d13af2c0eeb1288ed61 discord.channel.ForumChannel:41 +#: discord.channel.StageChannel:49 discord.channel.TextChannel:41 +#: discord.channel.VoiceChannel:41 of +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "" + +#: 17d5c49b53b94e559f645697fdc954fc discord.channel.ForumChannel:57 +#: discord.channel.StageChannel:55 discord.channel.TextChannel:53 +#: discord.channel.VoiceChannel:47 of +msgid "" +"The position in the channel list. This is a number that starts at 0. e.g." +" the top channel is position 0. Can be ``None`` if the channel was " +"received in an interaction." +msgstr "" + +#: df3465d34dd146e4aa85ec747685d5e0 discord.channel.StageChannel:68 of +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "" + +#: 75bbd3cfaa304f20b19991a13e1b8aac discord.channel.StageChannel:74 of +msgid "" +"The region for the stage channel's voice communication. A value of " +"``None`` indicates automatic voice region detection." +msgstr "" + +#: 88d6ddb0b6ae4b87b31b7db5c79da00b discord.channel.StageChannel:77 +#: discord.channel.VoiceChannel:71 of +msgid "Optional[:class:`VoiceRegion`]" +msgstr "" + +#: 2a5f6761e17f48c2b0d616d81972d964 discord.channel.StageChannel:81 +#: discord.channel.StageChannel.edit:32 of +msgid "The camera video quality for the stage channel's participants." +msgstr "" + +#: 1ea0cbbbbdeb41d28a69cf68b30e94ce discord.channel.StageChannel:85 +#: discord.channel.VoiceChannel:79 of +msgid ":class:`VideoQualityMode`" +msgstr "" + +#: 0e3d32b5c2244ca6a0d83a892a081f8d discord.channel.CategoryChannel:60 +#: discord.channel.ForumChannel:98 discord.channel.StageChannel:89 +#: discord.channel.TextChannel:94 discord.channel.VoiceChannel:110 of +msgid "Extra features of the channel." +msgstr "" + +#: dfd71d1f5420428fbfb980d8e3bf715c discord.channel.StageChannel:97 of +msgid "" +"The ID of the last message sent to this channel. It may not always point " +"to an existing or valid message. .. versionadded:: 2.5" +msgstr "" + +#: 675ecc5cb3b84438b270c726510b3052 discord.StageChannel.requesting_to_speak:1 +#: of +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "" + +#: discord.StageChannel.speakers:1 e1fb97ff67e449668ed24643520eeaf6 of +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "" + +#: df3a44abedf640f6b0b890c8ba159e58 discord.StageChannel.listeners:1 of +msgid "A list of members who are listening in the stage channel." +msgstr "" + +#: 47f3fed9c90f4f96a742e7c04818b2d5 discord.channel.StageChannel.is_nsfw:1 +#: discord.channel.VoiceChannel.is_nsfw:1 +#: discord.channel._TextChannel.is_nsfw:1 of +msgid "Checks if the channel is NSFW." +msgstr "" + +#: 0605656b32984ab9a75c79ef67a728b8 discord.ForumChannel.last_message:1 +#: discord.StageChannel.last_message:1 discord.TextChannel.last_message:1 +#: discord.VoiceChannel.last_message:1 of +msgid "Fetches the last message from this channel in cache." +msgstr "" + +#: c129d88ab0874303b120799a19d7c0ec +#: discord.channel.StageChannel.delete_messages:24 +#: discord.channel.VoiceChannel.delete_messages:24 +#: discord.channel._TextChannel.delete_messages:24 of +msgid "You do not have proper permissions to delete the messages." +msgstr "" + +#: d32cf9eeeb9847b2830a4a6c876ef451 discord.channel.StageChannel.purge:7 +#: discord.channel.VoiceChannel.purge:7 discord.channel._TextChannel.purge:7 of +msgid "" +"You must have the :attr:`~Permissions.manage_messages` permission to " +"delete messages even if they are your own. The " +":attr:`~Permissions.read_message_history` permission is also needed to " +"retrieve message history." +msgstr "" + +#: 4a1a304024aa4bbb960259df3ba1226e discord.channel.StageChannel.webhooks:3 +#: discord.channel.VoiceChannel.webhooks:3 +#: discord.channel._TextChannel.webhooks:3 of +msgid "Gets the list of webhooks from this channel." +msgstr "" + +#: 85ddcd8c95604e5fb9d65095ba79d614 discord.channel.StageChannel.webhooks:7 +#: discord.channel.VoiceChannel.webhooks:7 +#: discord.channel._TextChannel.webhooks:7 of +msgid "The webhooks for this channel." +msgstr "" + +#: 77801db3060a4d5a90b6e7d0b67b7bc3 +#: discord.channel.StageChannel.create_webhook:3 +#: discord.channel.VoiceChannel.create_webhook:3 +#: discord.channel._TextChannel.create_webhook:3 of +msgid "Creates a webhook for this channel." +msgstr "" + +#: 1ea0953ddb0b4b89b78d9d96a62ccf8f +#: discord.channel.StageChannel.create_webhook:7 +#: discord.channel.VoiceChannel.create_webhook:7 +#: discord.channel._TextChannel.create_webhook:7 of +msgid "Added the ``reason`` keyword-only parameter." +msgstr "" + +#: c3a5508c1b064afc9513a06272a1fd9c +#: discord.channel.StageChannel.create_webhook:11 +#: discord.channel.VoiceChannel.create_webhook:11 +#: discord.channel._TextChannel.create_webhook:11 of +msgid "The webhook's name." +msgstr "" + +#: 969c1c3c82834ac695633f8b76d5447b +#: discord.channel.StageChannel.create_webhook:14 +#: discord.channel.VoiceChannel.create_webhook:14 +#: discord.channel._TextChannel.create_webhook:14 of +msgid "" +"A :term:`py:bytes-like object` representing the webhook's default avatar." +" This operates similarly to :meth:`~ClientUser.edit`." +msgstr "" + +#: 879233ad70174408b4dfc419d65951e2 +#: discord.channel.StageChannel.create_webhook:18 +#: discord.channel.VoiceChannel.create_webhook:18 +#: discord.channel._TextChannel.create_webhook:18 of +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "" + +#: ad33f0ecada7446aa29ccb4cb4652d46 +#: discord.channel.StageChannel.create_webhook:21 +#: discord.channel.VoiceChannel.create_webhook:21 +#: discord.channel._TextChannel.create_webhook:21 +#: discord.channel._TextChannel.follow:21 of +msgid "The created webhook." +msgstr "" + +#: a1ab293dca0a4d679744b60f873832a7 +#: discord.channel.StageChannel.create_webhook:22 +#: discord.channel.VoiceChannel.create_webhook:22 +#: discord.channel._TextChannel.create_webhook:22 +#: discord.channel._TextChannel.follow:22 of +msgid ":class:`Webhook`" +msgstr "" + +#: discord.channel.StageChannel.create_webhook:24 +#: discord.channel.VoiceChannel.create_webhook:24 +#: discord.channel._TextChannel.create_webhook:24 +#: fcad9386059d42feb4e79e5a14931208 of +msgid "Creating the webhook failed." +msgstr "" + +#: 81fb2b5fd70b4af792ed7a8d92cbfb55 +#: discord.channel.StageChannel.create_webhook:25 +#: discord.channel.VoiceChannel.create_webhook:25 +#: discord.channel._TextChannel.create_webhook:25 of +msgid "You do not have permissions to create a webhook." +msgstr "" + +#: d3cd17c5683f4d2caae0468890e3c3c7 discord.StageChannel.moderators:1 of +msgid "A list of members who are moderating the stage channel." +msgstr "" + +#: 713c44f071794ebf9a814632d2c5da11 discord.channel.CategoryChannel.clone:3 +#: discord.channel.StageChannel.clone:3 discord.channel.VoiceChannel.clone:3 +#: discord.channel._TextChannel.clone:3 of +msgid "" +"Clones this channel. This creates a channel with the same properties as " +"this channel." +msgstr "" + +#: discord.abc.GuildChannel.move:7 discord.channel.CategoryChannel.clone:6 +#: discord.channel.CategoryChannel.move:7 discord.channel.StageChannel.clone:6 +#: discord.channel.VoiceChannel.clone:6 discord.channel._TextChannel.clone:6 +#: fa64ba8bf0624293b23cc2cc03daf2b4 of +msgid "" +"You must have the :attr:`~discord.Permissions.manage_channels` permission" +" to do this." +msgstr "" + +#: discord.channel.CategoryChannel.clone:12 +#: discord.channel.StageChannel.clone:12 discord.channel.VoiceChannel.clone:12 +#: discord.channel._TextChannel.clone:12 f1500ea7686647ea9b0c9b51d0928759 of +msgid "" +"The name of the new channel. If not provided, defaults to this channel " +"name." +msgstr "" + +#: dc75b4e91a0f4f2a8abef5896e012117 discord.channel.CategoryChannel.clone:16 +#: discord.channel.StageChannel.clone:16 discord.channel.VoiceChannel.clone:16 +#: discord.channel._TextChannel.clone:16 of +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "" + +#: a01edf3b9cdb4626b6737bfec16c617d discord.channel.CategoryChannel.clone:20 +#: discord.channel.StageChannel.clone:20 discord.channel.VoiceChannel.clone:20 +#: discord.channel._TextChannel.clone:20 of +msgid ":class:`.abc.GuildChannel`" +msgstr "" + +#: c874643e34984fb09f53a0612a9a1078 discord.StageChannel.instance:1 of +msgid "The running stage instance of the stage channel." +msgstr "" + +#: afc6e38cd59a4c7abae58394c72b2365 +#: discord.channel.StageChannel.create_instance:3 of +msgid "Create a stage instance." +msgstr "" + +#: 3788fffc313c4e17a7031c304b84dbf1 discord.channel.CategoryChannel.edit:5 +#: discord.channel.ForumChannel.edit:5 +#: discord.channel.StageChannel.create_instance:5 +#: discord.channel.StageChannel.edit:5 discord.channel.TextChannel.edit:5 +#: discord.channel.VoiceChannel.edit:5 +#: discord.stage_instance.StageInstance.delete:5 +#: discord.stage_instance.StageInstance.edit:5 of +msgid "" +"You must have the :attr:`~Permissions.manage_channels` permission to use " +"this." +msgstr "" + +#: 2adbed76c2d44058b5a23660c0a6936c +#: discord.channel.StageChannel.create_instance:11 of +msgid "The stage instance's topic." +msgstr "" + +#: 994336115c4548ed991343f91b95e7fa +#: discord.channel.StageChannel.create_instance:14 of +msgid "" +"The stage instance's privacy level. Defaults to " +":attr:`StagePrivacyLevel.guild_only`." +msgstr "" + +#: 3d38fa02f61b4c99b5009ad293c0c00b +#: discord.channel.StageChannel.create_instance:17 of +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "" + +#: 6f7613a62cef4e20be3e6ff16a3812b7 +#: discord.channel.StageChannel.create_instance:20 of +msgid "" +"Send a notification to everyone in the server that the stage instance has" +" started. Defaults to ``False``. Requires the ``mention_everyone`` " +"permission." +msgstr "" + +#: daf699fa9af443fa9da0a51deed5c85c +#: discord.channel.StageChannel.create_instance:24 of +msgid "The newly created stage instance." +msgstr "" + +#: 155260cb1d8e4613b0448e82854766f1 +#: discord.channel.StageChannel.create_instance:25 +#: discord.channel.StageChannel.fetch_instance:8 of +msgid ":class:`StageInstance`" +msgstr "" + +#: 2a69f4fcb45f4ade8fa8261598454b6d +#: discord.channel.StageChannel.create_instance:27 +#: discord.stage_instance.StageInstance.edit:18 of +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "" + +#: 0f850c713bbc4f9fa722dd28c79d5b11 +#: discord.channel.StageChannel.create_instance:28 of +msgid "You do not have permissions to create a stage instance." +msgstr "" + +#: aae387d47ca645c7af000d7f0627891d +#: discord.channel.StageChannel.create_instance:29 of +msgid "Creating a stage instance failed." +msgstr "" + +#: 34c2a00adb6f4848aa1cd3b0959f47dd +#: discord.channel.StageChannel.fetch_instance:3 of +msgid "Gets the running :class:`StageInstance`." +msgstr "" + +#: 2a8212724eb0417fb86677800297dd9a +#: discord.channel.StageChannel.fetch_instance:7 of +msgid "The stage instance." +msgstr "" + +#: 08abc5c686b84d1bbce3950ce0a84e85 +#: discord.channel.StageChannel.fetch_instance:10 of +msgid "The stage instance or channel could not be found." +msgstr "" + +#: 6be6f1a53cc74484b55ebb05b7623f48 +#: discord.channel.StageChannel.fetch_instance:11 of +msgid "Getting the stage instance failed." +msgstr "" + +#: b2e2f851c87a4d75806ec5d84d91f6a8 discord.channel.CategoryChannel.edit:3 +#: discord.channel.ForumChannel.edit:3 discord.channel.StageChannel.edit:3 +#: discord.channel.TextChannel.edit:3 discord.channel.VoiceChannel.edit:3 of +msgid "Edits the channel." +msgstr "" + +#: ac71816f1a7040fdabbd0b7c4113ab4a discord.channel.StageChannel.edit:8 of +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "" + +#: 70e1ecd5420a44c482cdc6d7970e356e discord.channel.CategoryChannel.edit:11 +#: discord.channel.StageChannel.edit:11 discord.channel.TextChannel.edit:14 +#: discord.channel.VoiceChannel.edit:11 of +msgid "" +"Edits are no longer in-place, the newly edited channel is returned " +"instead." +msgstr "" + +#: b3042033fc1f41e0a7ca362c7fc6b2b4 discord.channel.StageChannel.edit:14 +#: discord.channel.VoiceChannel.edit:14 of +msgid "The new channel's name." +msgstr "" + +#: 9a4fe72c71564b6dac1e273987ca267d discord.channel.ForumChannel.edit:12 +#: discord.channel.StageChannel.edit:16 discord.channel.TextChannel.edit:21 +#: discord.channel.VoiceChannel.edit:20 of +msgid "The new channel's position." +msgstr "" + +#: 28b85d3d9a3e42c690aebcdc756b8659 discord.channel.ForumChannel.edit:16 +#: discord.channel.StageChannel.edit:18 discord.channel.TextChannel.edit:25 +#: discord.channel.VoiceChannel.edit:22 of +msgid "" +"Whether to sync permissions with the channel's new or pre-existing " +"category. Defaults to ``False``." +msgstr "" + +#: 7a7108c1fdb34bed8937a7877d4f1c06 discord.channel.ForumChannel.edit:19 +#: discord.channel.StageChannel.edit:21 discord.channel.TextChannel.edit:28 +#: discord.channel.VoiceChannel.edit:25 of +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "" + +#: c0b3b7fe32594f7c93abe776da7dd8f6 discord.channel.ForumChannel.edit:26 +#: discord.channel.StageChannel.edit:25 discord.channel.TextChannel.edit:39 +#: discord.channel.VoiceChannel.edit:29 of +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "" + +#: discord.channel.CategoryChannel.edit:23 discord.channel.ForumChannel.edit:28 +#: discord.channel.StageChannel.edit:27 discord.channel.TextChannel.edit:41 +#: discord.channel.VoiceChannel.edit:31 e9fbe45828cb4bd19e93296ab98065b3 of +msgid "" +"The overwrites to apply to channel permissions. Useful for creating " +"secret channels." +msgstr "" + +#: 639187546700401c86775c5aba5f968d discord.channel.StageChannel.edit:29 of +msgid "" +"The new region for the stage channel's voice communication. A value of " +"``None`` indicates automatic voice region detection." +msgstr "" + +#: 5384b04c47d543fba5d0b8687447bac9 discord.channel.StageChannel.edit:32 of +msgid "" +"The camera video quality for the stage channel's participants. .. " +"versionadded:: 2.0" +msgstr "" + +#: discord.channel.StageChannel.edit:37 ec14d9ad4d8e40c0b6eda5434bf8fba5 of +msgid "" +"The newly edited stage channel. If the edit was only positional then " +"``None`` is returned instead." +msgstr "" + +#: b3f5e65f48c64c678a5cb3a165db1a5a discord.channel.StageChannel.edit:39 of +msgid "Optional[:class:`.StageChannel`]" +msgstr "" + +#: cd77eae84e4c47198b881cc8c19d7012 discord.channel.StageChannel.edit:41 +#: discord.channel.VoiceChannel.edit:47 of +msgid "If the permission overwrite information is not in proper form." +msgstr "" + +#: discord.channel.ForumChannel.edit:61 discord.channel.StageChannel.edit:42 +#: discord.channel.TextChannel.edit:56 discord.channel.VoiceChannel.edit:48 +#: eee74368fc62419e83a5fa7e4547b372 of +msgid "You do not have permissions to edit the channel." +msgstr "" + +#: discord.channel.ForumChannel.edit:62 discord.channel.StageChannel.edit:43 +#: discord.channel.TextChannel.edit:57 discord.channel.VoiceChannel.edit:49 +#: f4eee836c1ef4595a1249c72fc4aa856 of +msgid "Editing the channel failed." +msgstr "" + +#: 09cedcdcfe6748fd9851abb128364216 discord.CategoryChannel.category:1 +#: discord.ForumChannel.category:1 discord.StageChannel.category:1 +#: discord.TextChannel.category:1 discord.VoiceChannel.category:1 of +msgid "The category this channel belongs to." +msgstr "" + +#: 79a25807046443a6bc1b79a1b106bd6e discord.CategoryChannel.category:3 +#: discord.ForumChannel.category:3 discord.StageChannel.category:3 +#: discord.TextChannel.category:3 discord.VoiceChannel.category:3 of +msgid "If there is no category then this is ``None``." +msgstr "" + +#: 48031388459c4cebb09fdaaa927a12bd discord.CategoryChannel.changed_roles:1 +#: discord.ForumChannel.changed_roles:1 discord.StageChannel.changed_roles:1 +#: discord.TextChannel.changed_roles:1 discord.VoiceChannel.changed_roles:1 of +msgid "" +"Returns a list of roles that have been overridden from their default " +"values in the :attr:`~discord.Guild.roles` attribute." +msgstr "" + +#: discord.abc.Connectable.connect:3 f7deaa2bbc044f24af765d5b1e3a0b1c of +msgid "" +"Connects to voice and creates a :class:`VoiceClient` to establish your " +"connection to the voice server." +msgstr "" + +#: d70b0c0665824f279f6f2d8f4c33368a discord.abc.Connectable.connect:6 of +msgid "This requires :attr:`Intents.voice_states`." +msgstr "" + +#: 43aeaecd4b2643a6bc63951f0bafe328 discord.abc.Connectable.connect:9 of +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "" + +#: 3c5bc8937793432ca7daa817aed76aa8 discord.abc.Connectable.connect:12 of +msgid "" +"Whether the bot should automatically attempt a reconnect if a part of the" +" handshake fails or the gateway goes down." +msgstr "" + +#: 614c4fd2722841e08c133eba1eea755c discord.abc.Connectable.connect:17 of +msgid "" +"A type that subclasses :class:`~discord.VoiceProtocol` to connect with. " +"Defaults to :class:`~discord.VoiceClient`." +msgstr "" + +#: a7e95f41fa914cf38d3b0c61c7b2ff7a discord.abc.Connectable.connect:21 of +msgid "A voice client that is fully connected to the voice server." +msgstr "" + +#: 978309374c9a4fcaa9ec5d4b81c4ea4f discord.abc.Connectable.connect:22 of +msgid ":class:`~discord.VoiceProtocol`" +msgstr "" + +#: discord.abc.Connectable.connect:24 ef6bea38102e444ea718dad6b316d70b of +msgid "Could not connect to the voice channel in time." +msgstr "" + +#: 3803ca73e6ff4e6e8a3660e0fb82b23c discord.abc.Connectable.connect:25 of +msgid "You are already connected to a voice channel." +msgstr "" + +#: 2d6a9796e95542f184dc8040a1e90187 discord.abc.Connectable.connect:26 of +msgid "The opus library has not been loaded." +msgstr "" + +#: 8284b6f7a985425eb7b9096b97fee46f discord.abc.GuildChannel.create_invite:3 of +msgid "Creates an instant invite from a text or voice channel." +msgstr "" + +#: 70c428800cb74bfdb244a446a5c7f7ed discord.abc.GuildChannel.create_invite:5 of +msgid "" +"You must have the :attr:`~discord.Permissions.create_instant_invite` " +"permission to do this." +msgstr "" + +#: bbb89bbf5cd24082927b096b88b65cfe discord.abc.GuildChannel.create_invite:9 +#: discord.channel.VoiceChannel.create_activity_invite:11 of +msgid "" +"How long the invite should last in seconds. If it's 0 then the invite " +"doesn't expire. Defaults to ``0``." +msgstr "" + +#: bedcf4e2057b460d975ee26ec8e6b9f3 discord.abc.GuildChannel.create_invite:13 +#: discord.channel.VoiceChannel.create_activity_invite:14 of +msgid "" +"How many uses the invite could be used for. If it's 0 then there are " +"unlimited uses. Defaults to ``0``." +msgstr "" + +#: a639ea144cef4a2d8e7b0b5d1a2db86a discord.abc.GuildChannel.create_invite:17 +#: discord.channel.VoiceChannel.create_activity_invite:17 of +msgid "" +"Denotes that the invite grants temporary membership (i.e. they get kicked" +" after they disconnect). Defaults to ``False``." +msgstr "" + +#: 6eeeb747c2df4cf4b68c675601f7d3bf discord.abc.GuildChannel.create_invite:21 +#: discord.channel.VoiceChannel.create_activity_invite:20 of +msgid "" +"Indicates if a unique invite URL should be created. Defaults to True. If " +"this is set to ``False`` then it will return a previously created invite." +msgstr "" + +#: 3e5d68bfef38424ea4dd2e8dec8ea22e discord.abc.GuildChannel.create_invite:26 +#: discord.channel.VoiceChannel.create_activity_invite:24 of +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "" + +#: discord.abc.GuildChannel.create_invite:29 f7c3557ed02049ffa29494923a1632a1 +#: of +msgid "" +"The type of target for the voice channel invite, if any. .. " +"versionadded:: 2.0" +msgstr "" + +#: 7856f6d98f9b4686a4aae6e6dc45240f discord.abc.GuildChannel.create_invite:29 +#: of +msgid "The type of target for the voice channel invite, if any." +msgstr "" + +#: ba2d82cc52254953bd13d32eceaf43ef discord.abc.GuildChannel.create_invite:34 +#: of +msgid "" +"The user whose stream to display for this invite, required if " +"`target_type` is `TargetType.stream`. The user must be streaming in the " +"channel. .. versionadded:: 2.0" +msgstr "" + +#: 5aaa5f7dc0ff4ce587ae704ccf6526fa discord.abc.GuildChannel.create_invite:34 +#: of +msgid "" +"The user whose stream to display for this invite, required if " +"`target_type` is `TargetType.stream`. The user must be streaming in the " +"channel." +msgstr "" + +#: discord.abc.GuildChannel.create_invite:40 f1e931cf80764eb79c66781cbe3eb218 +#: of +msgid "" +"The id of the embedded application for the invite, required if " +"`target_type` is `TargetType.embedded_application`. .. versionadded:: " +"2.0" +msgstr "" + +#: 46f587a58bad446fbfa6950cdc349794 discord.abc.GuildChannel.create_invite:40 +#: of +msgid "" +"The id of the embedded application for the invite, required if " +"`target_type` is `TargetType.embedded_application`." +msgstr "" + +#: 5abd69aa39664224ab1cde302dbba8ee discord.abc.GuildChannel.create_invite:46 +#: of +msgid "" +"The scheduled event object to link to the event. Shortcut to " +":meth:`.Invite.set_scheduled_event` See " +":meth:`.Invite.set_scheduled_event` for more info on event invite " +"linking. .. versionadded:: 2.0" +msgstr "" + +#: discord.abc.GuildChannel.create_invite:46 fa1870165cd547d0ac1334f32bb75083 +#: of +msgid "" +"The scheduled event object to link to the event. Shortcut to " +":meth:`.Invite.set_scheduled_event`" +msgstr "" + +#: d5fe56ca5d4e4b62bb563b9daab914c9 discord.abc.GuildChannel.create_invite:49 +#: of +msgid "" +"See :meth:`.Invite.set_scheduled_event` for more info on event invite " +"linking." +msgstr "" + +#: ad6d07cc0ecc4daf8e70e62b42c54694 discord.abc.GuildChannel.create_invite:55 +#: discord.channel.VoiceChannel.create_activity_invite:27 of +msgid "The invite that was created." +msgstr "" + +#: a44a756d8ef54c06b9c598b3c5057293 discord.abc.GuildChannel.create_invite:56 +#: discord.channel.VoiceChannel.create_activity_invite:28 of +msgid ":class:`~discord.Invite`" +msgstr "" + +#: c31e3444e11d47d5a0c7c01273e242e2 discord.abc.GuildChannel.create_invite:58 +#: discord.channel.VoiceChannel.create_activity_invite:31 of +msgid "Invite creation failed." +msgstr "" + +#: discord.abc.GuildChannel.create_invite:59 e7cf9d4d551c4341a736ddfb07f036b8 +#: of +msgid "The channel that was passed is a category or an invalid channel." +msgstr "" + +#: 76d4b05d53d24bb89f07ef3ea80937ae discord.abc.GuildChannel.delete:3 of +msgid "Deletes the channel." +msgstr "" + +#: 790b7e62afe845a6b6bb0860e617ff2e discord.abc.GuildChannel.delete:5 of +msgid "" +"You must have :attr:`~discord.Permissions.manage_channels` permission to " +"use this." +msgstr "" + +#: 8db538d28f594660bf8aa72c650e4d61 discord.abc.GuildChannel.delete:8 of +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "" + +#: 0bde2d677c4c442d81074ef53bffa892 discord.abc.GuildChannel.delete:12 of +msgid "You do not have proper permissions to delete the channel." +msgstr "" + +#: 76703abb28a94196bc3fe2539ff0fd17 discord.abc.GuildChannel.delete:13 of +msgid "The channel was not found or was already deleted." +msgstr "" + +#: 2242d4491ce5454f938e820c8e6e0f88 discord.abc.GuildChannel.delete:14 of +msgid "Deleting the channel failed." +msgstr "" + +#: dbc4b30c00eb410ebe53ad9b4896990c discord.abc.GuildChannel.invites:3 of +msgid "Returns a list of all active instant invites from this channel." +msgstr "" + +#: 5fcbbff57b014ff6a73619b4e701ef56 discord.abc.GuildChannel.invites:5 of +msgid "" +"You must have :attr:`~discord.Permissions.manage_channels` to get this " +"information." +msgstr "" + +#: 05cac3b74a5f4adaad5d3d265f4819de discord.abc.GuildChannel.invites:8 of +msgid "List[:class:`~discord.Invite`]" +msgstr "" + +#: 61992eebcf9d49e5b62a6f71ca4ffa9d discord.CategoryChannel.jump_url:1 +#: discord.DMChannel.jump_url:1 discord.ForumChannel.jump_url:1 +#: discord.GroupChannel.jump_url:1 discord.StageChannel.jump_url:1 +#: discord.TextChannel.jump_url:1 discord.VoiceChannel.jump_url:1 of +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "" + +#: 6811b1001649454db7b2e3ee65c02d6a discord.StageChannel.members:1 +#: discord.VoiceChannel.members:1 of +msgid "Returns all members that are currently inside this voice channel." +msgstr "" + +#: 928cb0355b304182beda16e7827b0e90 discord.abc.GuildChannel.move:3 +#: discord.channel.CategoryChannel.move:3 of +msgid "A rich interface to help move a channel relative to other channels." +msgstr "" + +#: 62bbf4b228aa4f73963ec11bde6809b4 discord.abc.GuildChannel.move:5 +#: discord.channel.CategoryChannel.move:5 of +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "" + +#: 64354ecf425049c18b97220a3cc8b93f discord.abc.GuildChannel.move:12 +#: discord.channel.CategoryChannel.move:12 of +msgid "" +"Voice channels will always be sorted below text channels. This is a " +"Discord limitation." +msgstr "" + +#: 19e6d5cf82be4209980612975d29dff8 discord.abc.GuildChannel.move:17 +#: discord.channel.CategoryChannel.move:17 of +msgid "" +"Whether to move the channel to the beginning of the channel list (or " +"category if given). This is mutually exclusive with ``end``, ``before``, " +"and ``after``." +msgstr "" + +#: 28d86464680f49afa0f33bf4938eac79 discord.abc.GuildChannel.move:21 +#: discord.channel.CategoryChannel.move:21 of +msgid "" +"Whether to move the channel to the end of the channel list (or category " +"if given). This is mutually exclusive with ``beginning``, ``before``, and" +" ``after``." +msgstr "" + +#: 1f21d2ba65cc4e88bc94ccc4a533aba5 discord.abc.GuildChannel.move:25 +#: discord.channel.CategoryChannel.move:25 of +msgid "" +"The channel that should be before our current channel. This is mutually " +"exclusive with ``beginning``, ``end``, and ``after``." +msgstr "" + +#: 6f149660295343d2bef512e3122f3cf9 discord.abc.GuildChannel.move:28 +#: discord.channel.CategoryChannel.move:28 of +msgid "" +"The channel that should be after our current channel. This is mutually " +"exclusive with ``beginning``, ``end``, and ``before``." +msgstr "" + +#: 243b0f6c1dd942f09e1f66f4333f2937 discord.abc.GuildChannel.move:31 +#: discord.channel.CategoryChannel.move:31 of +msgid "" +"The number of channels to offset the move by. For example, an offset of " +"``2`` with ``beginning=True`` would move it 2 after the beginning. A " +"positive number moves it below while a negative number moves it above. " +"Note that this number is relative and computed after the ``beginning``, " +"``end``, ``before``, and ``after`` parameters." +msgstr "" + +#: b8bbf52e3eb842fab9307ed3207602b0 discord.abc.GuildChannel.move:38 +#: discord.channel.CategoryChannel.move:38 of +msgid "" +"The category to move this channel under. If ``None`` is given then it " +"moves it out of the category. This parameter is ignored if moving a " +"category channel." +msgstr "" + +#: b43c9a7f761945eaa7ff4de5fc52e741 discord.abc.GuildChannel.move:42 +#: discord.channel.CategoryChannel.move:42 of +msgid "Whether to sync the permissions with the category (if given)." +msgstr "" + +#: discord.abc.GuildChannel.move:44 discord.channel.CategoryChannel.move:44 +#: e78b0fba71c449c6b22bc68d7a42b8b7 of +msgid "The reason for the move." +msgstr "" + +#: discord.abc.GuildChannel.move:47 discord.channel.CategoryChannel.move:47 +#: eb8261bde35e4cf4b4cd36dcbf3084a6 of +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "" + +#: discord.abc.GuildChannel.move:48 discord.channel.CategoryChannel.move:48 +#: ec5967cc04484df9aaaa322214ff2ebf of +msgid "You do not have permissions to move the channel." +msgstr "" + +#: 13385efe88d34243bb30e64a26401394 dec5694062304b0e9d3ed0f5c54038b7 +#: discord.abc.GuildChannel.move:49 discord.channel.CategoryChannel.move:49 of +msgid "Moving the channel failed." +msgstr "" + +#: b7dc82bf54634320a5031a32b5afd0e0 discord.CategoryChannel.overwrites:1 +#: discord.ForumChannel.overwrites:1 discord.StageChannel.overwrites:1 +#: discord.TextChannel.overwrites:1 discord.VoiceChannel.overwrites:1 of +msgid "Returns all of the channel's overwrites." +msgstr "" + +#: d2fe158d967147c8b4ef1867798ca82b discord.CategoryChannel.overwrites:3 +#: discord.ForumChannel.overwrites:3 discord.StageChannel.overwrites:3 +#: discord.TextChannel.overwrites:3 discord.VoiceChannel.overwrites:3 of +msgid "" +"This is returned as a dictionary where the key contains the target which " +"can be either a :class:`~discord.Role` or a :class:`~discord.Member` and " +"the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "" + +#: cf5f4a1ff74146fb903c23deb37c3299 discord.CategoryChannel.overwrites:7 +#: discord.ForumChannel.overwrites:7 discord.StageChannel.overwrites:7 +#: discord.TextChannel.overwrites:7 discord.VoiceChannel.overwrites:7 of +msgid "The channel's permission overwrites." +msgstr "" + +#: 83956f5a5333400b902ec3cbf55ef987 discord.CategoryChannel.overwrites:8 +#: discord.ForumChannel.overwrites:8 discord.StageChannel.overwrites:8 +#: discord.TextChannel.overwrites:8 discord.VoiceChannel.overwrites:8 of +msgid "" +"Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], " +":class:`~discord.PermissionOverwrite`]" +msgstr "" + +#: discord.abc.GuildChannel.overwrites_for:1 f9b2ad6e19814664ac9b8151811dd122 +#: of +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "" + +#: 424f1b06e4ca49da8f3ae55bd2b5a833 discord.abc.GuildChannel.overwrites_for:4 +#: of +msgid "The role or user denoting whose overwrite to get." +msgstr "" + +#: 941badf662e24af6bdb04e39a1020079 discord.abc.GuildChannel.overwrites_for:8 +#: of +msgid "The permission overwrites for this object." +msgstr "" + +#: discord.abc.GuildChannel.overwrites_for:9 fc3fff034d7048b592fe35dcd866a631 +#: of +msgid ":class:`~discord.PermissionOverwrite`" +msgstr "" + +#: ad61cc31ac914379a2e312de3d43ffe8 discord.abc.GuildChannel.permissions_for:4 +#: discord.channel.VocalGuildChannel.permissions_for:4 +#: discord.channel._TextChannel.permissions_for:4 of +msgid "This function takes into consideration the following cases:" +msgstr "" + +#: a116f87071af41338aeba09a8eb992af discord.abc.GuildChannel.permissions_for:6 +#: discord.channel.VocalGuildChannel.permissions_for:6 +#: discord.channel._TextChannel.permissions_for:6 of +msgid "Guild owner" +msgstr "" + +#: 412081ad6b56428da03c40fe91e46896 discord.abc.GuildChannel.permissions_for:7 +#: discord.channel.VocalGuildChannel.permissions_for:7 +#: discord.channel._TextChannel.permissions_for:7 of +msgid "Guild roles" +msgstr "" + +#: 3d8a5b7caf8449499a5df8e5f52da039 discord.abc.GuildChannel.permissions_for:8 +#: discord.channel.VocalGuildChannel.permissions_for:8 +#: discord.channel._TextChannel.permissions_for:8 of +msgid "Channel overrides" +msgstr "" + +#: discord.abc.GuildChannel.permissions_for:9 +#: discord.channel.VocalGuildChannel.permissions_for:9 +#: discord.channel._TextChannel.permissions_for:9 +#: f5a7c4f10acd4fc78ace8d9c7ae71a1e of +msgid "Member overrides" +msgstr "" + +#: bb22b5f45b9744aba2495cbe1c5c3927 discord.abc.GuildChannel.permissions_for:11 +#: discord.channel.VocalGuildChannel.permissions_for:11 +#: discord.channel._TextChannel.permissions_for:11 of +msgid "" +"If a :class:`~discord.Role` is passed, then it checks the permissions " +"someone with that role would have, which is essentially:" +msgstr "" + +#: 7792fc4132114a33a1d0dd6a31c0d67f discord.abc.GuildChannel.permissions_for:14 +#: discord.channel.VocalGuildChannel.permissions_for:14 +#: discord.channel._TextChannel.permissions_for:14 of +msgid "The default role permissions" +msgstr "" + +#: a9f75d8e2445493f8f13f904067552f4 discord.abc.GuildChannel.permissions_for:15 +#: discord.channel.VocalGuildChannel.permissions_for:15 +#: discord.channel._TextChannel.permissions_for:15 of +msgid "The permissions of the role used as a parameter" +msgstr "" + +#: discord.abc.GuildChannel.permissions_for:16 +#: discord.channel.VocalGuildChannel.permissions_for:16 +#: discord.channel._TextChannel.permissions_for:16 +#: f7edbbec0ac84cbc88a8a26badcac519 of +msgid "The default role permission overwrites" +msgstr "" + +#: 6174d926cc1b4b0d99f7af83decc22fe discord.abc.GuildChannel.permissions_for:17 +#: discord.channel.VocalGuildChannel.permissions_for:17 +#: discord.channel._TextChannel.permissions_for:17 of +msgid "The permission overwrites of the role used as a parameter" +msgstr "" + +#: 0de4faae977c4d34ba5ebf875178efb2 discord.abc.GuildChannel.permissions_for:19 +#: discord.channel.VocalGuildChannel.permissions_for:19 +#: discord.channel._TextChannel.permissions_for:19 of +msgid "The object passed in can now be a role object." +msgstr "" + +#: 5afc09453dd94d4aa2b35273e549c663 +#: discord.CategoryChannel.permissions_synced:1 +#: discord.ForumChannel.permissions_synced:1 +#: discord.StageChannel.permissions_synced:1 +#: discord.TextChannel.permissions_synced:1 +#: discord.VoiceChannel.permissions_synced:1 of +msgid "" +"Whether the permissions for this channel are synced with the category it " +"belongs to." +msgstr "" + +#: 981749f5cb0242b8855f2826a6dc6bf4 +#: discord.CategoryChannel.permissions_synced:4 +#: discord.ForumChannel.permissions_synced:4 +#: discord.StageChannel.permissions_synced:4 +#: discord.TextChannel.permissions_synced:4 +#: discord.VoiceChannel.permissions_synced:4 of +msgid "If there is no category then this is ``False``." +msgstr "" + +#: 3a5fa731cfa147c7a0bfaa31890a8fe1 discord.abc.GuildChannel.set_permissions:3 +#: of +msgid "" +"Sets the channel specific permission overwrites for a target in the " +"channel." +msgstr "" + +#: 3ef3986ccc4a47cf960c7dd5d60a5557 discord.abc.GuildChannel.set_permissions:6 +#: of +msgid "" +"The ``target`` parameter should either be a :class:`~discord.Member` or a" +" :class:`~discord.Role` that belongs to guild." +msgstr "" + +#: b07e547adb1545f8a3616be524559dd4 discord.abc.GuildChannel.set_permissions:9 +#: of +msgid "" +"The ``overwrite`` parameter, if given, must either be ``None`` or " +":class:`~discord.PermissionOverwrite`. For convenience, you can pass in " +"keyword arguments denoting :class:`~discord.Permissions` attributes. If " +"this is done, then you cannot mix the keyword arguments with the " +"``overwrite`` parameter." +msgstr "" + +#: 764ab65cb31c493594eaa77947707624 discord.abc.GuildChannel.set_permissions:15 +#: of +msgid "" +"If the ``overwrite`` parameter is ``None``, then the permission " +"overwrites are deleted." +msgstr "" + +#: 146970e2d3814a7188e3cbb525453e55 discord.abc.GuildChannel.set_permissions:18 +#: of +msgid "" +"You must have the :attr:`~discord.Permissions.manage_roles` permission to" +" use this." +msgstr "" + +#: 346d7572d6cd45afa3d668860d51d232 discord.abc.GuildChannel.set_permissions:22 +#: of +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "" + +#: 637f3a1a21694797a9ac311c64c0c911 discord.abc.GuildChannel.set_permissions:26 +#: of +msgid "Setting allow and deny: ::" +msgstr "" + +#: 810d95b1d4994c63862f68887c77e831 discord.abc.GuildChannel.set_permissions:31 +#: of +msgid "Deleting overwrites ::" +msgstr "" + +#: dae2ea6fc6544c64bf6008937d45f7d0 discord.abc.GuildChannel.set_permissions:35 +#: of +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "" + +#: 03cfeadeceb24469845f590f9734b5ac discord.abc.GuildChannel.set_permissions:43 +#: of +msgid "The member or role to overwrite permissions for." +msgstr "" + +#: dcf66235aaf14217aaf08ce4c7556408 discord.abc.GuildChannel.set_permissions:46 +#: of +msgid "" +"The permissions to allow and deny to the target, or ``None`` to delete " +"the overwrite." +msgstr "" + +#: 6f036719a4ef44aeb1c05e3412443113 discord.abc.GuildChannel.set_permissions:50 +#: of +msgid "" +"A keyword argument list of permissions to set for ease of use. Cannot be " +"mixed with ``overwrite``." +msgstr "" + +#: 9efb0463f8ca4001ab156472387d2537 discord.abc.GuildChannel.set_permissions:56 +#: of +msgid "You do not have permissions to edit channel specific permissions." +msgstr "" + +#: 61bb29fcb29e4916a4342d95e7354727 discord.abc.GuildChannel.set_permissions:57 +#: of +msgid "Editing channel specific permissions failed." +msgstr "" + +#: 4e7647606bd44e0b98e6cf273cb2d1ec discord.abc.GuildChannel.set_permissions:58 +#: of +msgid "The role or member being edited is not part of the guild." +msgstr "" + +#: discord.abc.GuildChannel.set_permissions:59 eed46e2237c8429cb10297b23b78e9a2 +#: of +msgid "" +"The overwrite parameter invalid or the target type was not " +":class:`~discord.Role` or :class:`~discord.Member`." +msgstr "" + +#: aac395884ca44a2f930fe268dfbcf173 discord.StageChannel.voice_states:1 +#: discord.VoiceChannel.voice_states:1 of +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "" + +#: discord.StageChannel.voice_states:7 discord.VoiceChannel.voice_states:7 +#: ff1a46da477a45748d4878f27e338736 of +msgid "" +"This function is intentionally low level to replace :attr:`members` when " +"the member cache is unavailable." +msgstr "" + +#: b0a39ba35b224de5b9bc4829d6564c07 discord.StageChannel.voice_states:10 +#: discord.VoiceChannel.voice_states:10 of +msgid "The mapping of member ID to a voice state." +msgstr "" + +#: discord.StageChannel.voice_states:11 discord.VoiceChannel.voice_states:11 +#: e44ca07452324be283fc857fbc182383 of +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "" + +#: d1f3c8bd47f140719e5c0b888ad99b67 discord.stage_instance.StageInstance:1 of +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "" + +#: cfd9e47e9aba457a8d7e7dcded874e46 discord.stage_instance.StageInstance:9 of +msgid "Checks if two stage instances are equal." +msgstr "" + +#: 5389094ace54424ab29560b4eba7477d discord.stage_instance.StageInstance:13 of +msgid "Checks if two stage instances are not equal." +msgstr "" + +#: 10b764b2654e41ff8f3a68cfa60abf67 discord.stage_instance.StageInstance:17 of +msgid "Returns the stage instance's hash." +msgstr "" + +#: dc0cb661be4645ffb0ee5fb775fac7fc discord.stage_instance.StageInstance:21 of +msgid "The stage instance's ID." +msgstr "" + +#: 4b99c1a221404ba48edaaa5f27026cd5 discord.stage_instance.StageInstance:27 of +msgid "The guild that the stage instance is running in." +msgstr "" + +#: 25ae9212c60a42ae92f03be0294d125c discord.stage_instance.StageInstance:33 of +msgid "The ID of the channel that the stage instance is running in." +msgstr "" + +#: 4496cdcdbe394897845762e5db5b8d62 discord.stage_instance.StageInstance:39 of +msgid "The topic of the stage instance." +msgstr "" + +#: 753d7151d11749ed9ce37a2371108611 discord.stage_instance.StageInstance:45 of +msgid "The privacy level of the stage instance." +msgstr "" + +#: 0adc3279736942f287a3d9e1774aa984 discord.stage_instance.StageInstance:47 of +msgid ":class:`StagePrivacyLevel`" +msgstr "" + +#: 203e2e85a6de4714bcf5108fc81cba3f discord.stage_instance.StageInstance:51 of +msgid "Whether discoverability for the stage instance is disabled." +msgstr "" + +#: a0333acf6c3442b5b56ad839722b7f60 discord.stage_instance.StageInstance:57 of +msgid "The scheduled event linked with the stage instance, if any." +msgstr "" + +#: ../../docstring 1829c4b5e5394d688644ccb61fc9b59a +#: discord.StageInstance.channel:1 of +msgid "The channel that stage instance is running in." +msgstr "" + +#: 961d71895bdf42e1a265dcb3b977d9bc discord.stage_instance.StageInstance.edit:3 +#: of +msgid "Edits the stage instance." +msgstr "" + +#: bf4cb416b05f4dc5b4de3fed388dc439 discord.stage_instance.StageInstance.edit:9 +#: of +msgid "The stage instance's new topic." +msgstr "" + +#: 6bf6a4420bdd44b198d0f9df963a8335 +#: discord.stage_instance.StageInstance.edit:12 of +msgid "The stage instance's new privacy level." +msgstr "" + +#: be797d5ca83f47919ca615b971ce92e0 +#: discord.stage_instance.StageInstance.edit:15 of +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "" + +#: 98a2aed69860406c92d9d7430af6e0c4 +#: discord.stage_instance.StageInstance.edit:19 of +msgid "You do not have permissions to edit the stage instance." +msgstr "" + +#: 1d9e265f57774641925c72942fecadf6 +#: discord.stage_instance.StageInstance.edit:20 of +msgid "Editing a stage instance failed." +msgstr "" + +#: 97baaaa1bd20483e9f048aa3d113c954 +#: discord.stage_instance.StageInstance.delete:3 of +msgid "Deletes the stage instance." +msgstr "" + +#: bce1bcc41ea341de90f034daecd0731c +#: discord.stage_instance.StageInstance.delete:9 of +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "" + +#: discord.stage_instance.StageInstance.delete:12 +#: f52b3342df8f489d8b6254c7c5c7ab13 of +msgid "You do not have permissions to delete the stage instance." +msgstr "" + +#: 9ee431d14a7f4af6b46c49f8b807926f +#: discord.stage_instance.StageInstance.delete:13 of +msgid "Deleting the stage instance failed." +msgstr "" + +#: ../../api/models.rst:334 dd317db3c9cb4a29aeb80d2b10ad338c +msgid "Interactions" +msgstr "" + +#: 775ea52457284cd4a51e8046ea22bf5e discord.interactions.Interaction:1 of +msgid "Represents a Discord interaction." +msgstr "" + +#: 40047a7f0dad4c7889963527d0ff04a6 discord.interactions.Interaction:3 of +msgid "" +"An interaction happens when a user does an action that needs to be " +"notified. Current examples are application commands, components, and " +"modals." +msgstr "" + +#: 6008728ed3b44140a9d0d21ecc5f3928 discord.interactions.Interaction:10 +#: discord.interactions.InteractionMetadata:9 +#: discord.interactions.MessageInteraction:17 of +msgid "The interaction's ID." +msgstr "" + +#: c6a9f7b9c9cf4b248b01fab6c0256cce discord.interactions.Interaction:16 +#: discord.interactions.InteractionMetadata:15 +#: discord.interactions.MessageInteraction:23 of +msgid "The interaction type." +msgstr "" + +#: 1fc0cdfa3ed24c29b2f792d652f54f7b discord.interactions.Interaction:18 +#: discord.interactions.InteractionMetadata:17 +#: discord.interactions.MessageInteraction:25 of +msgid ":class:`InteractionType`" +msgstr "" + +#: d271e7c0211841a98f87ff7809f85656 discord.interactions.Interaction:22 of +msgid "The guild ID the interaction was sent from." +msgstr "" + +#: ../../docstring 6592055219f343cb9bdd6913260e9096 +#: da78be11664f477fa8875f0a7b3cf40d discord.Interaction.cached_channel:1 +#: discord.interactions.Interaction:28 of +msgid "The channel the interaction was sent from." +msgstr "" + +#: discord.interactions.Interaction:30 fe765f9ca0464f1b81b27493ad00183c of +msgid "" +"Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, " +":class:`Thread`]]" +msgstr "" + +#: d4988af767804657b320108c5d7b3467 discord.interactions.Interaction:34 of +msgid "The ID of the channel the interaction was sent from." +msgstr "" + +#: 1cc256002cdd4d539edb65e587c2f9a7 discord.interactions.Interaction:40 of +msgid "The application ID that the interaction was for." +msgstr "" + +#: 6eeedd965eac44a5b905a06d37c570d7 discord.interactions.Interaction:46 of +msgid "" +"The user or member that sent the interaction. Will be `None` in PING " +"interactions." +msgstr "" + +#: discord.interactions.Interaction:48 e4df7cd48a2e428086b0c54763d2c4da of +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "" + +#: 752abdff761c400093ceddf3d5ba43cf discord.interactions.Interaction:52 of +msgid "The message that sent this interaction." +msgstr "" + +#: 6248830208cd4b49ae1952d3cb094507 discord.interactions.Interaction:58 of +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "" + +#: 28ba605672334ec98d75cfc20d4534bc discord.interactions.Interaction:65 +#: discord.interactions.MessageInteraction:41 of +msgid "The raw interaction data." +msgstr "" + +#: 62d4b92033714c14a7e588f356deec68 discord.interactions.Interaction:67 +#: discord.interactions.MessageInteraction:43 +#: discord.raw_models.AutoModActionExecutionEvent:112 +#: discord.raw_models.RawAuditLogEntryEvent:60 +#: discord.raw_models.RawBulkMessageDeleteEvent:33 +#: discord.raw_models.RawIntegrationDeleteEvent:29 +#: discord.raw_models.RawMemberRemoveEvent:23 +#: discord.raw_models.RawMessageDeleteEvent:33 +#: discord.raw_models.RawMessageUpdateEvent:29 +#: discord.raw_models.RawReactionActionEvent:83 +#: discord.raw_models.RawReactionClearEmojiEvent:59 +#: discord.raw_models.RawReactionClearEvent:27 +#: discord.raw_models.RawScheduledEventSubscription:37 +#: discord.raw_models.RawThreadDeleteEvent:41 +#: discord.raw_models.RawThreadMembersUpdateEvent:29 +#: discord.raw_models.RawThreadUpdateEvent:33 +#: discord.raw_models.RawTypingEvent:41 +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent:27 of +msgid ":class:`dict`" +msgstr "" + +#: 431e63b876fc4e95ab4746e9607e8cef discord.interactions.Interaction:71 of +msgid "The user's locale." +msgstr "" + +#: d1b67b9a517e4afa987f5d8808f281ec discord.interactions.Interaction:77 of +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "" + +#: bc95434233944967b59146866853dc61 discord.interactions.Interaction:83 of +msgid "The custom ID for the interaction." +msgstr "" + +#: 87681089c6c34a3a8b90710e070e432f discord.interactions.Interaction:89 of +msgid "" +"Entitlements that apply to the invoking user, showing access to premium " +"SKUs." +msgstr "" + +#: 7a446b1615f949e2a8791a93cf39f86a discord.interactions.Interaction:93 of +msgid "list[:class:`Entitlement`]" +msgstr "" + +#: 02eac2317d8042c1973ec01e54f167da discord.interactions.Interaction:97 of +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "" + +#: 575fb80fa5ad41f294d33252d69885fc discord.interactions.Interaction:101 +#: discord.interactions.InteractionMetadata:29 of +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr "" + +#: 5792e58158d04e58899ee162f1c542e7 discord.interactions.Interaction:105 of +msgid "The context in which this command was executed." +msgstr "" + +#: 149351b7df664788a413093688677723 discord.interactions.Interaction:109 of +msgid "Optional[:class:`InteractionContextType`]" +msgstr "" + +#: 4464cbbf3555444890e48eaf0e78176d discord.Interaction.client:1 of +msgid "Returns the client that sent the interaction." +msgstr "" + +#: 55c70be45b73482ca42cefdb013a99f3 discord.Interaction.guild:1 of +msgid "The guild the interaction was sent from." +msgstr "" + +#: bd66fcea2cc64e7793c0f6867ab2d4f3 +#: discord.interactions.Interaction.is_command:1 of +msgid "Indicates whether the interaction is an application command." +msgstr "" + +#: 26ede07ec91341e19637c9b51fbf2327 +#: discord.interactions.Interaction.is_component:1 of +msgid "Indicates whether the interaction is a message component." +msgstr "" + +#: ../../docstring 2059802134ba4fd1847a6c6046b12b09 +#: discord.Interaction.cached_channel:4 of +msgid "" +"Note that due to a Discord limitation, DM channels are not resolved since" +" there is no data to complete them. These are :class:`PartialMessageable`" +" instead." +msgstr "" + +#: 38c0562356cc42cd894edfbccb261023 discord.Interaction.permissions:1 of +msgid "" +"The resolved permissions of the member in the channel, including " +"overwrites." +msgstr "" + +#: ac78027c2cfd40abbeb784e00ead560e discord.Interaction.permissions:3 of +msgid "" +"In a non-guild context where this doesn't apply, an empty permissions " +"object is returned." +msgstr "" + +#: ../../docstring 7909ba6d6a2f41f6b6462a9351d9e4f4 +#: discord.Interaction.app_permissions:1 of +msgid "" +"The resolved permissions of the application in the channel, including " +"overwrites." +msgstr "" + +#: ../../docstring cad185e4c9f94be694c4f320b7c90829 +#: discord.Interaction.response:1 of +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "" + +#: ../../docstring 4699990c15104a26b6d4c952657ddce3 +#: discord.Interaction.response:3 of +msgid "" +"A response can only be done once. If secondary messages need to be sent, " +"consider using :attr:`followup` instead." +msgstr "" + +#: ../../docstring 8fdd84284e2a497bade0d8001a36e09a +#: discord.Interaction.followup:1 of +msgid "Returns the followup webhook for followup interactions." +msgstr "" + +#: 2de1a112cdb84a6f9936002cc8f558aa +#: discord.interactions.Interaction.original_response:3 of +msgid "" +"Fetches the original interaction response message associated with the " +"interaction." +msgstr "" + +#: discord.interactions.Interaction.original_response:5 +#: f98e672573a846dfa70a7a495bb85fd5 of +msgid "" +"If the interaction response was :meth:`InteractionResponse.send_message` " +"then this would return the message that was sent using that response. " +"Otherwise, this would return the message that triggered the interaction." +msgstr "" + +#: 2f3891340d1d4328a53b411abf6e1d34 +#: discord.interactions.Interaction.original_response:9 of +msgid "Repeated calls to this will return a cached value." +msgstr "" + +#: 4bc04d411af54a45b89a5c855ec2ab0f +#: discord.interactions.Interaction.original_message:3 +#: discord.interactions.Interaction.original_response:11 of +msgid "The original interaction response message." +msgstr "" + +#: c142aeb5a3c949ccb4255648b0bd5d10 +#: discord.interactions.Interaction.original_message:6 +#: discord.interactions.Interaction.original_response:14 of +msgid "Fetching the original response message failed." +msgstr "" + +#: 49b41174c824449cbd07131376945e32 +#: discord.interactions.Interaction.original_message:7 +#: discord.interactions.Interaction.original_response:15 of +msgid "The channel for the message could not be resolved." +msgstr "" + +#: 816552f68597445d88271545aff5d020 +#: discord.interactions.Interaction.original_message:1 of +msgid "An alias for :meth:`original_response`." +msgstr "" + +#: 1850b83f26c04738a5ca8083908d7be2 +#: discord.interactions.Interaction.edit_original_response:3 of +msgid "Edits the original interaction response message." +msgstr "" + +#: 514bff746a3d4cd8b9ee478107a9cb8b +#: discord.interactions.Interaction.edit_original_response:5 of +msgid "" +"This is a lower level interface to :meth:`InteractionMessage.edit` in " +"case you do not want to fetch the message and save an HTTP request." +msgstr "" + +#: 943be66eb84e4bbe8c3da8f3df723e6c +#: discord.interactions.Interaction.edit_original_response:8 of +msgid "" +"This method is also the only way to edit the original message if the " +"message sent was ephemeral." +msgstr "" + +#: 5d0e4e83b4f24731b34a35e79c46a8c1 +#: discord.interactions.Interaction.edit_original_response:12 +#: discord.interactions.InteractionMessage.edit:6 of +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "" + +#: 78ab2785551d40aebdd0c9db2b357a8e +#: discord.interactions.Interaction.edit_original_response:15 +#: discord.interactions.InteractionMessage.edit:9 +#: discord.interactions.InteractionResponse.edit_message:10 of +msgid "A list of embeds to edit the message with." +msgstr "" + +#: 1bfea59e058349e6983197c48ebab23c +#: discord.interactions.Interaction.edit_original_response:18 +#: discord.interactions.InteractionMessage.edit:12 +#: discord.interactions.InteractionResponse.edit_message:13 of +msgid "" +"The embed to edit the message with. ``None`` suppresses the embeds. This " +"should not be mixed with the ``embeds`` parameter." +msgstr "" + +#: 60ad98432301495e81b9d767d8bc2752 +#: discord.interactions.Interaction.edit_original_response:22 +#: discord.interactions.InteractionMessage.edit:16 of +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "" + +#: 6f346031716245248cab708988aa9e2b +#: discord.interactions.Interaction.edit_original_response:25 +#: discord.interactions.InteractionMessage.edit:19 of +msgid "" +"A list of files to send with the content. This cannot be mixed with the " +"``file`` parameter." +msgstr "" + +#: ded433826a6d40e98463ddc4efddb20e +#: discord.interactions.Interaction.edit_original_response:33 +#: discord.interactions.InteractionMessage.edit:27 +#: discord.interactions.InteractionResponse.send_message:28 of +msgid "" +"Controls the mentions being processed in this message. See " +":meth:`.abc.Messageable.send` for more information." +msgstr "" + +#: 57b7e0b2c9594f87a4f6a794d8f8311d +#: discord.interactions.Interaction.edit_original_message:3 +#: discord.interactions.Interaction.edit_original_response:49 +#: discord.interactions.InteractionMessage.edit:43 of +msgid "The newly edited message." +msgstr "" + +#: c9d4555a10334b05844245ef0bb77543 +#: discord.interactions.Interaction.edit_original_message:4 +#: discord.interactions.Interaction.edit_original_response:50 +#: discord.interactions.InteractionMessage.edit:44 of +msgid ":class:`InteractionMessage`" +msgstr "" + +#: b305b4b190304f928eacfe9998ad4a2b +#: discord.interactions.Interaction.edit_original_message:7 +#: discord.interactions.Interaction.edit_original_response:53 +#: discord.interactions.InteractionMessage.edit:47 of +msgid "Edited a message that is not yours." +msgstr "" + +#: 0e2e17416ca94d62957d593de02de4f8 +#: discord.interactions.Interaction.edit_original_message:8 +#: discord.interactions.Interaction.edit_original_response:54 +#: discord.interactions.InteractionMessage.edit:48 of +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "" + +#: a5114f88c58f463b828b0bbcdf8ea0cf +#: discord.interactions.Interaction.edit_original_message:9 +#: discord.interactions.Interaction.edit_original_response:55 +#: discord.interactions.InteractionMessage.edit:49 +#: discord.interactions.InteractionResponse.send_message:52 of +msgid "The length of ``embeds`` was invalid." +msgstr "" + +#: bd6d58e2d23149ba9ce01594ee1923f7 +#: discord.interactions.Interaction.edit_original_message:1 of +msgid "An alias for :meth:`edit_original_response`." +msgstr "" + +#: 14276a4f9e5c4b63a629f832a0753117 +#: discord.interactions.Interaction.delete_original_response:3 of +msgid "Deletes the original interaction response message." +msgstr "" + +#: 50fb04a60e7a46c78e90ee08c279dec5 +#: discord.interactions.Interaction.delete_original_response:5 of +msgid "" +"This is a lower level interface to :meth:`InteractionMessage.delete` in " +"case you do not want to fetch the message and save an HTTP request." +msgstr "" + +#: discord.interactions.Interaction.delete_original_response:9 +#: discord.interactions.InteractionMessage.delete:6 +#: febbc9cba8d34c6586876cd40429ec3b of +msgid "" +"If provided, the number of seconds to wait before deleting the message. " +"The waiting is done in the background and deletion failures are ignored." +msgstr "" + +#: 7dd0c5d8414b42298fbe212d13c29826 a1d88591f3784ab0a14ee62252f107fb +#: discord.interactions.Interaction.delete_original_message:4 +#: discord.interactions.Interaction.delete_original_response:14 of +msgid "Deleted a message that is not yours." +msgstr "" + +#: a6e99b1e2f7f4e65b5d8d9ba6c333fd3 +#: discord.interactions.Interaction.delete_original_message:1 of +msgid "An alias for :meth:`delete_original_response`." +msgstr "" + +#: cbc7c9a8ce5944ef82d469e98f491d7e discord.interactions.Interaction.respond:3 +#: of +msgid "" +"Sends either a response or a message using the followup webhook " +"determined by whether the interaction has been responded to or not." +msgstr "" + +#: c94a1b5cbea24b01a9797e6870ae5ea4 discord.interactions.Interaction.edit:6 +#: discord.interactions.Interaction.respond:6 of +msgid "" +"The response, its type depending on whether it's an interaction response " +"or a followup." +msgstr "" + +#: b30852d11460457eabb6784aba94a706 discord.interactions.Interaction.respond:7 +#: of +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "" + +#: 8d35bb67672a42fcac023f5995852b4d discord.interactions.Interaction.edit:3 of +msgid "" +"Either respond to the interaction with an edit_message or edits the " +"existing response, determined by whether the interaction has been " +"responded to or not." +msgstr "" + +#: 0e02b73f63d349c093e61f6adb60397f discord.interactions.Interaction.edit:7 of +msgid "" +"Union[:class:`discord.InteractionMessage`, " +":class:`discord.WebhookMessage`]" +msgstr "" + +#: discord.interactions.Interaction.to_dict:1 f62b32c6deba4ae285103dd2f354292c +#: of +msgid "Converts this interaction object into a dict." +msgstr "" + +#: 0ad066b6f53a48738838e07593cedea5 discord.interactions.Interaction.to_dict:3 +#: of +msgid "" +"A dictionary of :class:`str` interaction keys bound to the respective " +"value." +msgstr "" + +#: 5c107ee8b22644db9b4cfed7056afc3e discord.interactions.Interaction.to_dict:4 +#: of +msgid "Dict[:class:`str`, Any]" +msgstr "" + +#: 6a080d45f7f94f7b9996e3e689aeea4f discord.interactions.InteractionResponse:1 +#: of +msgid "Represents a Discord interaction response." +msgstr "" + +#: 749dee81631c46d0bfd9f420bc223e79 discord.interactions.InteractionResponse:3 +#: of +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "" + +#: 1a1c87556c5b46338759b67959814cae +#: discord.interactions.InteractionResponse.is_done:1 of +msgid "Indicates whether an interaction response has been done before." +msgstr "" + +#: 9fc4846fbb464219b452b4608fae6d7a +#: discord.interactions.InteractionResponse.is_done:3 of +msgid "An interaction can only be responded to once." +msgstr "" + +#: 2cd8394c7ee440b7914ed17796762aff +#: discord.interactions.InteractionResponse.defer:3 of +msgid "Defers the interaction response." +msgstr "" + +#: cd531d8e26754adbb67ccfcc5557bc1c +#: discord.interactions.InteractionResponse.defer:5 of +msgid "" +"This is typically used when the interaction is acknowledged and a " +"secondary action will be done later." +msgstr "" + +#: discord.interactions.InteractionResponse.defer:8 +#: fac744047d0f466996a2066c3f50d6ed of +msgid "This can only be used with the following interaction types:" +msgstr "" + +#: 9a9bf857983c496b92e769a2c61e3277 +#: discord.interactions.InteractionResponse.defer:10 of +msgid ":attr:`InteractionType.application_command`" +msgstr "" + +#: 4e88a14c0f274842afb4125ddc39972c +#: discord.interactions.InteractionResponse.defer:11 of +msgid ":attr:`InteractionType.component`" +msgstr "" + +#: cafbe6d28edb4eaaa0289f186f485ee7 +#: discord.interactions.InteractionResponse.defer:12 of +msgid ":attr:`InteractionType.modal_submit`" +msgstr "" + +#: 2ba82ddad23d446db6d9655546f3b84d +#: discord.interactions.InteractionResponse.defer:15 of +msgid "" +"The follow-up response will also be non-ephemeral if the `ephemeral` " +"argument is ``False``, and ephemeral if ``True``." +msgstr "" + +#: c027019699d74cfdbd10025be90b90c1 +#: discord.interactions.InteractionResponse.defer:19 of +msgid "" +"Indicates whether the deferred message will eventually be ephemeral. This" +" only applies to :attr:`InteractionType.application_command` " +"interactions, or if ``invisible`` is ``False``." +msgstr "" + +#: 781f8954cb5d49dd958f065940a34ed9 +#: discord.interactions.InteractionResponse.defer:24 of +msgid "" +"Indicates whether the deferred type should be 'invisible' " +"(:attr:`InteractionResponseType.deferred_message_update`) instead of " +"'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In" +" the Discord UI, this is represented as the bot thinking of a response. " +"You must eventually send a followup message via " +":attr:`Interaction.followup` to make this thinking state go away. This " +"parameter does not apply to interactions of type " +":attr:`InteractionType.application_command`." +msgstr "" + +#: cf570c86c50649c0bbd0dd376d345eb7 +#: discord.interactions.InteractionResponse.defer:32 of +msgid "Deferring the interaction failed." +msgstr "" + +#: 190377437a99469fbe3f65af715e569b 5fd8b575c5ea4556be228e6ffd03fc31 +#: c2f8b5e3b60f49c2ae55cb0c96d9c761 +#: discord.interactions.InteractionResponse.defer:33 +#: discord.interactions.InteractionResponse.edit_message:50 +#: discord.interactions.InteractionResponse.pong:8 +#: discord.interactions.InteractionResponse.premium_required:12 +#: discord.interactions.InteractionResponse.send_autocomplete_result:9 +#: discord.interactions.InteractionResponse.send_message:53 +#: discord.interactions.InteractionResponse.send_modal:10 of +msgid "This interaction has already been responded to before." +msgstr "" + +#: 726629a0abdc4eefbda7fd1c98f15b7f +#: discord.interactions.InteractionResponse.pong:3 of +msgid "Pongs the ping interaction." +msgstr "" + +#: bbf97771852d403bb3d12542b445d11e +#: discord.interactions.InteractionResponse.pong:5 of +msgid "This should rarely be used." +msgstr "" + +#: 63865b257fb148eca22c5902537a160a +#: discord.interactions.InteractionResponse.pong:7 of +msgid "Ponging the interaction failed." +msgstr "" + +#: 04fc7140a0054bbfab98eb1ef5eb9db2 +#: discord.interactions.InteractionResponse.send_message:3 of +msgid "Responds to this interaction by sending a message." +msgstr "" + +#: cf022833321e4d4e952d42c919a9e58a +#: discord.interactions.InteractionResponse.send_message:9 of +msgid "" +"A list of embeds to send with the content. Maximum of 10. This cannot be " +"mixed with the ``embed`` parameter." +msgstr "" + +#: discord.interactions.InteractionResponse.send_message:13 +#: fa988857e557477dbba1ebe2e0cdea53 of +msgid "" +"The rich embed for the content to send. This cannot be mixed with " +"``embeds`` parameter." +msgstr "" + +#: 7a2fc6f963a74c2bb23e22c1eefbb2ac +#: discord.interactions.InteractionResponse.send_message:20 of +msgid "The view to send with the message." +msgstr "" + +#: 78aa02922d154229b23d02e952d96cad +#: discord.interactions.InteractionResponse.send_message:23 of +msgid "" +"Indicates if the message should only be visible to the user who started " +"the interaction. If a view is sent with an ephemeral message, and it has " +"no timeout set then the timeout is set to 15 minutes." +msgstr "" + +#: 64e02398ff574112aa7da5406a0677d0 +#: discord.interactions.InteractionResponse.send_message:32 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message we just sent." +msgstr "" + +#: 80d3084bbff64deb9a18d1bb91999e24 +#: discord.interactions.InteractionResponse.send_message:47 of +msgid "The interaction object associated with the sent message." +msgstr "" + +#: 818f06aff6094b08a83db537c72141a4 +#: discord.interactions.InteractionResponse.send_message:48 of +msgid ":class:`.Interaction`" +msgstr "" + +#: discord.interactions.InteractionResponse.edit_message:49 +#: discord.interactions.InteractionResponse.send_message:51 +#: e2024a8f3ffb496d9c436a8a62f58ff2 of +msgid "You specified both ``embed`` and ``embeds``." +msgstr "" + +#: bf8a8d7d68404c6c8dc528e78ef7571b +#: discord.interactions.InteractionResponse.edit_message:3 of +msgid "" +"Responds to this interaction by editing the original message of a " +"component or modal interaction." +msgstr "" + +#: 4b5180a1cf0647009a0d600d9383e0a5 +#: discord.interactions.InteractionResponse.edit_message:7 of +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "" + +#: 9a19c321a52f419daee55b3f6b21c3ef +#: discord.interactions.InteractionResponse.edit_message:17 of +msgid "" +"A new file to add to the message. This cannot be mixed with ``files`` " +"parameter." +msgstr "" + +#: b1b174a3fec84e6db5e7e9611be7966d +#: discord.interactions.InteractionResponse.edit_message:20 of +msgid "" +"A list of new files to add to the message. Must be a maximum of 10. This " +"cannot be mixed with the ``file`` parameter." +msgstr "" + +#: 32c68b7cc33841258ae96c0c02aa2da0 +#: discord.interactions.InteractionResponse.send_autocomplete_result:1 of +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "" + +#: bc6555a8e3324ec7a29849428b192cb1 +#: discord.interactions.InteractionResponse.send_autocomplete_result:5 of +msgid "A list of choices." +msgstr "" + +#: d864284c89884ed3ad8949b4cf99011e +#: discord.interactions.InteractionResponse.send_autocomplete_result:8 of +msgid "Sending the result failed." +msgstr "" + +#: 8e54ac9007de4a4d829ed4df0e5915e2 +#: discord.interactions.InteractionResponse.send_modal:1 of +msgid "" +"|coro| Responds to this interaction by sending a modal dialog. This " +"cannot be used to respond to another modal dialog submission." +msgstr "" + +#: discord.interactions.InteractionResponse.send_modal:6 +#: f4c62420e64349f492d00f247c09a447 of +msgid "The modal dialog to display to the user." +msgstr "" + +#: discord.interactions.InteractionResponse.send_modal:9 +#: f2b153a0e68f499980aa1d0581b95ffd of +msgid "Sending the modal failed." +msgstr "" + +#: discord.interactions.InteractionResponse.send_modal:12 +#: fa2c7415a5394f01aea0cdbeac5bf9ae of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "" + +#: 78617e1aed38430384dba4d8cca25d12 +#: discord.interactions.InteractionResponse.premium_required:3 of +msgid "" +"Responds to this interaction by sending a premium required message. " +":rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "" + +#: discord.interactions.InteractionResponse.premium_required:9 +#: f77a39a6089f4253a884d8819df78f12 of +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "" + +#: c0b870f0e79d48c0b613e7df8c1d8588 discord.interactions.InteractionMessage:1 +#: of +msgid "Represents the original interaction response message." +msgstr "" + +#: d7736f47631844a6b757d1233dc575ad discord.interactions.InteractionMessage:3 +#: of +msgid "" +"This allows you to edit or delete the message associated with the " +"interaction response. To retrieve this object see " +":meth:`Interaction.original_response`." +msgstr "" + +#: discord.interactions.InteractionMessage:6 f9dbfcff943e4cc0907be97e5dc96b40 +#: of +msgid "" +"This inherits from :class:`discord.Message` with changes to :meth:`edit` " +"and :meth:`delete` to work." +msgstr "" + +#: 1c9fdeee1518456d982525c4a87964e9 +#: discord.interactions.InteractionMessage.delete:11 of +msgid "The message was deleted already." +msgstr "" + +#: 27715675c1044bd4b769e8ae37b2f93b discord.interactions.MessageInteraction:1 +#: of +msgid "Represents a Discord message interaction." +msgstr "" + +#: discord.interactions.MessageInteraction:3 eb49b29ecd8048b3b781d3a2cce3478d +#: of +msgid "" +"This is sent on the message object when the message is a response to an " +"interaction without an existing message e.g. application command." +msgstr "" + +#: 69521c9fc5714a6a8859ddff3efb8403 discord.interactions.MessageInteraction:10 +#: of +msgid "See :class:`InteractionMetadata`." +msgstr "" + +#: a79b8da007c44f1e96437ee14ccfea66 discord.interactions.MessageInteraction:13 +#: of +msgid "Responses to message components do not include this property." +msgstr "" + +#: 58f0b598df8f4b0a9e46d1dc7f600c24 discord.interactions.MessageInteraction:29 +#: of +msgid "The name of the invoked application command." +msgstr "" + +#: 7f960d2316a846959186aa98cc5bdc80 discord.interactions.InteractionMetadata:21 +#: discord.interactions.MessageInteraction:35 of +msgid "The user that sent the interaction." +msgstr "" + +#: aefc043c2e7a4936b14e77ad181e747f discord.interactions.InteractionMetadata:1 +#: of +msgid "Represents metadata about an interaction." +msgstr "" + +#: 4b72b7fa0dd34800b112fd5124349780 discord.interactions.InteractionMetadata:3 +#: of +msgid "" +"This is sent on the message object when the message is related to an " +"interaction" +msgstr "" + +#: discord.interactions.InteractionMetadata:27 ec5f1e75991d4361b15dd4324d59c3e2 +#: of +msgid "" +"The authorizing user or server for the installation(s) relevant to the " +"interaction." +msgstr "" + +#: 9e25574cf7a64ecaa23396bb90495acb discord.interactions.InteractionMetadata:33 +#: of +msgid "" +"The ID of the original response message. Only present on interaction " +"follow-up messages." +msgstr "" + +#: bdf5d71153fc41698afcb762ceb8b3b3 discord.interactions.InteractionMetadata:39 +#: of +msgid "" +"The ID of the message that triggered the interaction. Only present on " +"interactions of type :attr:`InteractionType.component`." +msgstr "" + +#: 29e6e31887114b448358d1e098c402bb discord.interactions.InteractionMetadata:46 +#: of +msgid "" +"The metadata of the interaction that opened the model. Only present on " +"interactions of type :attr:`InteractionType.modal_submit`." +msgstr "" + +#: ../../docstring b58e0939843b4f7f8bd3c352c93fd161 +#: discord.InteractionMetadata.original_response_message:1 of +msgid "" +"The original response message. Returns ``None`` if the message is not in " +"cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "" + +#: ../../docstring 24c26cbf637d43e586c71ac57e489433 +#: discord.InteractionMetadata.interacted_message:1 of +msgid "" +"The message that triggered the interaction. Returns ``None`` if the " +"message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "" + +#: 65790c58c3bd4a77a1c2045e8c1d395f +#: discord.interactions.AuthorizingIntegrationOwners:1 of +msgid "" +"Contains details on the authorizing user or server for the " +"installation(s) relevant to the interaction." +msgstr "" + +#: 2722a330072a40ff9d26d694ccf3e59b +#: discord.interactions.AuthorizingIntegrationOwners:7 of +msgid "The ID of the user that authorized the integration." +msgstr "" + +#: discord.interactions.AuthorizingIntegrationOwners:9 +#: discord.interactions.AuthorizingIntegrationOwners:17 +#: e9458a1d2e184ba08cb95ee060a70b67 of +msgid ":class:`int` | None" +msgstr "" + +#: dfb1816376444865bf9fa592dd94e3bf +#: discord.interactions.AuthorizingIntegrationOwners:13 of +msgid "" +"The ID of the guild that authorized the integration. This will be ``0`` " +"if the integration was triggered from the user in the bot's DMs." +msgstr "" + +#: ../../docstring c561ef72045447c8bcaefae99bea4069 +#: discord.AuthorizingIntegrationOwners.user:1 of +msgid "" +"The user that authorized the integration. Returns ``None`` if the user is" +" not in cache, or if :attr:`user_id` is ``None``." +msgstr "" + +#: ../../docstring b6d1a54d63184868baf3162b671055f8 +#: discord.AuthorizingIntegrationOwners.guild:1 of +msgid "" +"The guild that authorized the integration. Returns ``None`` if the guild " +"is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "" + +#: 325eccff689b463a930829aa10f85c86 discord.components.Component:1 of +msgid "Represents a Discord Bot UI Kit Component." +msgstr "" + +#: 2d12acff11104cfdae9f7130c251450e discord.components.Component:3 of +msgid "Currently, the only components supported by Discord are:" +msgstr "" + +#: 709fc995d26b4c83ac251992b4d0284c discord.components.Component:5 of +msgid ":class:`ActionRow`" +msgstr "" + +#: 006ee8a5eae04575b71c25f80734fddc discord.components.Component:6 of +msgid ":class:`Button`" +msgstr "" + +#: 0c5375d482ec498eaa71bfd03f2a8133 discord.components.Component:7 of +msgid ":class:`SelectMenu`" +msgstr "" + +#: c058b048558c41e796780dc8fd7e13b3 discord.components.Component:9 of +msgid "This class is abstract and cannot be instantiated." +msgstr "" + +#: discord.components.ActionRow:11 discord.components.Component:15 +#: f81c11da386445dbbb02292e3bc450c1 of +msgid "The type of component." +msgstr "" + +#: c7fa145264a345959a3d9ee21d0d3f9b discord.components.ActionRow:13 +#: discord.components.Component:17 discord.components.SelectMenu:22 of +msgid ":class:`ComponentType`" +msgstr "" + +#: 9f7d8de88aed40a08872c3374e05f049 discord.components.ActionRow:1 of +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "" + +#: 52afa1f78ae7497c8060bdb4a963d379 discord.components.ActionRow:3 of +msgid "This is a component that holds up to 5 children components in a row." +msgstr "" + +#: 93341d8aa4fb44959bf727bb0998ab94 discord.components.ActionRow:5 +#: discord.components.Button:3 of +msgid "This inherits from :class:`Component`." +msgstr "" + +#: 3248a4ea4e8c4849a1e3cfd557671f33 discord.components.ActionRow:17 of +msgid "The children components that this holds, if any." +msgstr "" + +#: discord.components.Button:1 e0b3fcd3375d4bfb8695df0a7104c162 of +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "" + +#: discord.components.Button:7 e84696cb443c46b1a00676610ca02b0d of +msgid "" +"The user constructible and usable type to create a button is " +":class:`discord.ui.Button` not this one." +msgstr "" + +#: 17316ef8cf2e41eea87856713d44d589 discord.components.Button:14 of +msgid "The style of the button." +msgstr "" + +#: 9b26c0ad72604068a56d44df8deaf10e discord.components.Button:16 of +msgid ":class:`.ButtonStyle`" +msgstr "" + +#: 3e0bad6d875e4b708e06d95b7bc848df discord.components.Button:20 of +msgid "" +"The ID of the button that gets received during an interaction. If this " +"button is for a URL, it does not have a custom ID." +msgstr "" + +#: dbc3fc6e82d449c498ff55cedadec8f1 discord.components.Button:27 of +msgid "The URL this button sends you to." +msgstr "" + +#: 92ad8e5b06b44eaeb61e9ec6fe198505 discord.components.Button:33 of +msgid "Whether the button is disabled or not." +msgstr "" + +#: cf2143a753e04aaba2c533fd326bcdbd discord.components.Button:39 of +msgid "The label of the button, if any." +msgstr "" + +#: a1bedc695439492f85e0988db64713a1 discord.components.Button:45 of +msgid "The emoji of the button, if available." +msgstr "" + +#: 2f8502a4187e40f597d6496424c5ac3a discord.components.Button:47 of +msgid "Optional[:class:`PartialEmoji`]" +msgstr "" + +#: 76a7eb849b774f21a8d3351ab54c814a discord.components.Button:51 of +msgid "The ID of the SKU this button refers to." +msgstr "" + +#: 6efb83e0de88482cb68cfc583e02da9a discord.components.SelectMenu:1 of +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "" + +#: 7bdf0a195f7349158b0f1f4e36fb930b discord.components.SelectMenu:3 of +msgid "" +"A select menu is functionally the same as a dropdown, however on mobile " +"it renders a bit differently." +msgstr "" + +#: discord.components.SelectMenu:8 fc6946db0ea245a69657a6935ca95a1a of +msgid "" +"The user constructible and usable type to create a select menu is " +":class:`discord.ui.Select` not this one." +msgstr "" + +#: 1f0a74344d894d50bbcf2e95bba368ca discord.components.SelectMenu:15 of +msgid "" +"Added support for :attr:`ComponentType.user_select`, " +":attr:`ComponentType.role_select`, " +":attr:`ComponentType.mentionable_select`, and " +":attr:`ComponentType.channel_select`." +msgstr "" + +#: 2102950811c74486ab9b1026c9caddb1 discord.components.SelectMenu:20 of +msgid "The select menu's type." +msgstr "" + +#: b88d7aba2c9f46f88b681a6b575cb84e discord.components.SelectMenu:26 of +msgid "The ID of the select menu that gets received during an interaction." +msgstr "" + +#: c13453267e014bf98fe6f803e5a076c7 discord.components.SelectMenu:32 of +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "" + +#: 3fdc6cc88eee4898b8468f5a5a44e7d2 discord.components.SelectMenu:38 of +msgid "" +"The minimum number of items that must be chosen for this select menu. " +"Defaults to 1 and must be between 0 and 25." +msgstr "" + +#: 33a222b1a7e9441f86f5ce875be10c72 discord.components.SelectMenu:45 of +msgid "" +"The maximum number of items that must be chosen for this select menu. " +"Defaults to 1 and must be between 1 and 25." +msgstr "" + +#: d4e8136b7e634c6daa20e200a532bc0d discord.components.SelectMenu:52 of +msgid "" +"A list of options that can be selected in this menu. Will be an empty " +"list for all component types except for " +":attr:`ComponentType.string_select`." +msgstr "" + +#: d343089d09514315960da0c7bf2b3de2 discord.components.SelectMenu:56 of +msgid "List[:class:`SelectOption`]" +msgstr "" + +#: 5352d7de29a64f59834df1c06284439b discord.components.SelectMenu:60 of +msgid "" +"A list of channel types that can be selected. Will be an empty list for " +"all component types except for :attr:`ComponentType.channel_select`." +msgstr "" + +#: 1c0857ba83824e07ae47f6b53750d2fa discord.components.SelectMenu:64 of +msgid "List[:class:`ChannelType`]" +msgstr "" + +#: 4d0bc3e8202f4bea84931cee7392c89d discord.components.SelectMenu:68 of +msgid "Whether the select is disabled or not." +msgstr "" + +#: ../../api/models.rst:389 c885c2e7084646b998c51b1c9bafc0aa +msgid "Emoji" +msgstr "" + +#: a4f545bdd7dc437c9d245d238586c702 discord.emoji.Emoji:1 of +msgid "Represents a custom emoji." +msgstr "" + +#: a3349dfb97b44db9b3ecbbee8e3a01ff discord.emoji.Emoji:3 of +msgid "" +"Depending on the way this object was created, some attributes can have a " +"value of ``None``." +msgstr "" + +#: 44bf70fa78894c1daddd55e9d90838e2 discord.emoji.Emoji:10 +#: discord.partial_emoji.PartialEmoji:12 of +msgid "Checks if two emoji are the same." +msgstr "" + +#: d2a07b8aa3ab40839e60c1d979b40ceb discord.emoji.Emoji:14 +#: discord.partial_emoji.PartialEmoji:16 of +msgid "Checks if two emoji are not the same." +msgstr "" + +#: 4c8a36b9a18a42cc928f6013bb72307c discord.emoji.Emoji:18 +#: discord.partial_emoji.PartialEmoji:20 of +msgid "Return the emoji's hash." +msgstr "" + +#: 7cf57bf9d537462a8b495549c81e2242 discord.emoji.Emoji:22 of +msgid "" +"Returns an iterator of ``(field, value)`` pairs. This allows this class " +"to be used as an iterable in list/dict/etc constructions." +msgstr "" + +#: 2a7b951e1a5b452d93036b3794628d0d discord.emoji.Emoji:27 +#: discord.partial_emoji.PartialEmoji:24 of +msgid "Returns the emoji rendered for discord." +msgstr "" + +#: 14ea0733e1d541da9fea4210dc039209 discord.emoji.Emoji:31 of +msgid "The name of the emoji." +msgstr "" + +#: b6e01311a7694deeba97d6ea2b8240e8 discord.emoji.Emoji:43 of +msgid "" +"If colons are required to use this emoji in the client (:PJSalt: vs " +"PJSalt)." +msgstr "" + +#: 880bd48f7776420995813479f53ac12a discord.emoji.Emoji:49 of +msgid "Whether an emoji is animated or not." +msgstr "" + +#: 69dcc8a19c474fdb8fad0b3391750694 discord.emoji.Emoji:55 of +msgid "If this emoji is managed by a Twitch integration." +msgstr "" + +#: a1e8a33a32c64b71bef5731eeaa07cd3 discord.emoji.Emoji:61 of +msgid "The guild ID the emoji belongs to." +msgstr "" + +#: 33a23d7c29004eaaa37ca543e08ac512 discord.emoji.Emoji:67 of +msgid "Whether the emoji is available for use." +msgstr "" + +#: db162171483149d08942625fc5b9ac36 discord.emoji.Emoji:73 of +msgid "" +"The user that created the emoji. This can only be retrieved using " +":meth:`Guild.fetch_emoji` and having the " +":attr:`~Permissions.manage_emojis` permission." +msgstr "" + +#: 62dffac0a0724a6383eb42c22cd717c4 discord.Emoji.created_at:1 of +msgid "Returns the emoji's creation time in UTC." +msgstr "" + +#: 94a262936d7443e284a5b0bca6175dc3 discord.Emoji.url:1 of +msgid "Returns the URL of the emoji." +msgstr "" + +#: 5dfaa3531d0646b0bf85c2b34e72fb67 discord.Emoji.roles:1 of +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "" + +#: d76d5cc472e547e2893bf6d83d18cb1b discord.Emoji.roles:3 of +msgid "If roles is empty, the emoji is unrestricted." +msgstr "" + +#: 04b446a6ff504bf8a407983e47aaeb77 discord.Emoji.guild:1 of +msgid "The guild this emoji belongs to." +msgstr "" + +#: a9a8d25d86ae4c3496bc37cd89b9ea7d discord.emoji.Emoji.is_usable:1 of +msgid "" +"Whether the bot can use this emoji. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 496fefc520c1400a95b50c17283f2426 discord.emoji.Emoji.delete:3 of +msgid "Deletes the custom emoji." +msgstr "" + +#: aca7f87a81bc40f8855d7c68ddee4b7c discord.emoji.Emoji.edit:3 of +msgid "Edits the custom emoji." +msgstr "" + +#: 9eeff73ac06d4e61bc1a6e1a62c484b2 discord.emoji.Emoji.edit:8 of +msgid "The newly updated emoji is returned." +msgstr "" + +#: b1be944c7f23429e8685fd13dcaf8082 discord.emoji.Emoji.edit:12 of +msgid "The new emoji name." +msgstr "" + +#: 7a765fb4a9714da9b98d6d67185e6ad0 discord.emoji.Emoji.edit:15 of +msgid "" +"A list of roles that can use this emoji. An empty list can be passed to " +"make it available to everyone." +msgstr "" + +#: 9a6b2a99c62d43668117ae80889fa7d7 discord.emoji.Emoji.edit:18 of +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "" + +#: b2b4c21efd88459db5e27419833f6c0b discord.emoji.Emoji.edit:21 of +msgid "You are not allowed to edit emojis." +msgstr "" + +#: 29b4b67b766647a38d168494e1cfa898 discord.emoji.Emoji.edit:22 of +msgid "An error occurred editing the emoji." +msgstr "" + +#: 89165b83444e45609f6f4d2352594759 discord.emoji.Emoji.edit:24 of +msgid "The newly updated emoji." +msgstr "" + +#: discord.partial_emoji.PartialEmoji:1 f39d6b6e8b3044fba02ad0bd00f8d7f6 of +msgid "Represents a \"partial\" emoji." +msgstr "" + +#: 5d68be3976954c49971d9c1525d67938 discord.partial_emoji.PartialEmoji:3 of +msgid "This model will be given in two scenarios:" +msgstr "" + +#: 0bd5bd19fa184dfd8018db6e2035c59c discord.partial_emoji.PartialEmoji:5 of +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "" + +#: 391bf6eb223945c8bb01c03d034bfa67 discord.partial_emoji.PartialEmoji:6 of +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "" + +#: 9a2e957e6c0f49419644ab64c951ea5d discord.partial_emoji.PartialEmoji:28 of +msgid "" +"The custom emoji name, if applicable, or the unicode codepoint of the " +"non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. " +"removing a reaction with a deleted emoji)." +msgstr "" + +#: a7a51594069a438f8acd9bbca571858b discord.partial_emoji.PartialEmoji:36 of +msgid "Whether the emoji is animated or not." +msgstr "" + +#: 23ce1e8f521549d09f31a673daa9a7bf discord.partial_emoji.PartialEmoji:42 of +msgid "The ID of the custom emoji, if applicable." +msgstr "" + +#: 4e68e8b298ae489096c3076a1bad8b8c +#: discord.partial_emoji.PartialEmoji.from_str:1 of +msgid "" +"Converts a Discord string representation of an emoji to a " +":class:`PartialEmoji`." +msgstr "" + +#: b51ef4ea5b024d89a5e6790bee09dbb7 +#: discord.partial_emoji.PartialEmoji.from_str:3 of +msgid "The formats accepted are:" +msgstr "" + +#: d92c174300aa4cb682ca65c243bd2886 +#: discord.partial_emoji.PartialEmoji.from_str:5 of +msgid "``a:name:id``" +msgstr "" + +#: 7e7e15b82eda46b69f622b8d207a7938 +#: discord.partial_emoji.PartialEmoji.from_str:6 of +msgid "````" +msgstr "" + +#: 068b659b889a46e6af015102dbae96ba +#: discord.partial_emoji.PartialEmoji.from_str:7 of +msgid "``name:id``" +msgstr "" + +#: 26451483b7b345a89034cdb9f5bee4a7 +#: discord.partial_emoji.PartialEmoji.from_str:8 of +msgid "``<:name:id>``" +msgstr "" + +#: 0004bb49447249e5a5fb57df035e4181 +#: discord.partial_emoji.PartialEmoji.from_str:10 of +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "" + +#: 682f94e2acc1488989fc736ca8c488b4 +#: discord.partial_emoji.PartialEmoji.from_str:15 of +msgid "The string representation of an emoji." +msgstr "" + +#: 18e7d4d4e1e44093ab57f3037fb1e861 +#: discord.partial_emoji.PartialEmoji.from_str:18 of +msgid "The partial emoji from this string." +msgstr "" + +#: 1eda185924ee4e90b494cdb8b767c886 +#: discord.partial_emoji.PartialEmoji.from_str:19 +#: discord.raw_models.RawReactionActionEvent:32 +#: discord.raw_models.RawReactionClearEmojiEvent:27 of +msgid ":class:`PartialEmoji`" +msgstr "" + +#: 591c4b9c436d4c1e9ea45212c5423557 +#: discord.partial_emoji.PartialEmoji.is_custom_emoji:1 of +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "" + +#: discord.partial_emoji.PartialEmoji.is_unicode_emoji:1 +#: e3856358c4bb4995809b5f40633b3838 of +msgid "Checks if this is a Unicode emoji." +msgstr "" + +#: 53d2c4b30a8b4edab0af741a907d0fe5 discord.PartialEmoji.created_at:1 of +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "" + +#: 07396e8cbb974e699724356e6ef8a4f3 discord.PartialEmoji.url:1 of +msgid "Returns the URL of the emoji, if it is custom." +msgstr "" + +#: 1ef7bcbcbc1248db84780ad13df86a2f discord.PartialEmoji.url:3 of +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "" + +#: ../../api/models.rst:404 a26c3fb538cc4eae85bc9b01ec610081 +msgid "Channels" +msgstr "" + +#: 1cf47d24b7704b8dad853e268978d801 discord.channel.TextChannel:1 of +msgid "Represents a Discord text channel." +msgstr "" + +#: 28cadf33bcaa4284b510b25b352040ba discord.channel.ForumChannel:47 +#: discord.channel.TextChannel:47 of +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "" + +#: de489b1b036047c99f633e4585c04d92 discord.channel.ForumChannel:64 +#: discord.channel.TextChannel:60 of +msgid "" +"The last message ID of the message sent to this channel. It may *not* " +"point to an existing or valid message." +msgstr "" + +#: 77a34e9892e94686b1a5737a8469fde8 discord.channel.ForumChannel:71 +#: discord.channel.TextChannel:67 discord.channel.VoiceChannel:91 of +msgid "" +"The number of seconds a member must wait between sending messages in this" +" channel. A value of `0` denotes that it is disabled. Bots and users with" +" :attr:`~Permissions.manage_channels` or " +":attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "" + +#: discord.channel.CategoryChannel:50 discord.channel.ForumChannel:80 +#: discord.channel.TextChannel:76 fab80e171db445d78867efd958f0536b of +msgid "If the channel is marked as \"not safe for work\"." +msgstr "" + +#: 50ed6ace112b45399a2e24de081c9951 discord.channel.CategoryChannel:54 +#: discord.channel.ForumChannel:84 discord.channel.TextChannel:80 of +msgid "" +"To check if the channel or the guild of that channel are marked as NSFW, " +"consider :meth:`is_nsfw` instead." +msgstr "" + +#: 39c3e1849aea42b1a5e44b6b35945813 discord.channel.ForumChannel:90 +#: discord.channel.TextChannel:86 of +msgid "" +"The default auto archive duration in minutes for threads created in this " +"channel." +msgstr "" + +#: c03fe611956149aba94e3914962f92df discord.channel.ForumChannel:122 +#: discord.channel.TextChannel:102 of +msgid "" +"The initial slowmode delay to set on newly created threads in this " +"channel." +msgstr "" + +#: 59a76c086f30476faaab4e29e854acd4 discord.channel.TextChannel.is_news:1 of +msgid "Checks if the channel is a news/announcements channel." +msgstr "" + +#: 550e2832cc16427dbd968ae91bf8abb0 discord.TextChannel.news:1 of +msgid "Equivalent to :meth:`is_news`." +msgstr "" + +#: 1d1be76fe7b04528b2c3ee29212c3c84 discord.channel.CategoryChannel.edit:8 +#: discord.channel.TextChannel.edit:8 discord.channel.VoiceChannel.edit:8 of +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "" + +#: 63058ac2db904abc8c2ac2b98b8a38b0 discord.channel.TextChannel.edit:11 of +msgid "The ``type`` keyword-only parameter was added." +msgstr "" + +#: b736174baf734a728df41ae7c8846701 discord.channel.ForumChannel.edit:8 +#: discord.channel.TextChannel.edit:17 of +msgid "The new channel name." +msgstr "" + +#: 795407065f204ab394d5d71e46f4f9e4 discord.channel.ForumChannel.edit:22 +#: discord.channel.TextChannel.edit:31 of +msgid "" +"Specifies the slowmode rate limit for user in this channel, in seconds. A" +" value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "" + +#: discord.channel.TextChannel.edit:34 eb56e78bf81c46edb931dd15152cf3e9 of +msgid "" +"Change the type of this text channel. Currently, only conversion between " +":attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This " +"is only available to guilds that contain ``NEWS`` in " +":attr:`Guild.features`." +msgstr "" + +#: aec9e5551cb74af8b49d87aceac3742b discord.channel.ForumChannel.edit:30 +#: discord.channel.TextChannel.edit:43 of +msgid "" +"The new default auto archive duration in minutes for threads created in " +"this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "" + +#: 2b1b27b29de74dada9a54eb48be4b94e discord.channel.ForumChannel.edit:33 +#: discord.channel.TextChannel.edit:46 of +msgid "" +"The new default slowmode delay in seconds for threads created in this " +"channel. .. versionadded:: 2.3" +msgstr "" + +#: a07120a4d00149718bbcb809103cc6a7 discord.channel.ForumChannel.edit:33 +#: discord.channel.TextChannel.edit:46 of +msgid "" +"The new default slowmode delay in seconds for threads created in this " +"channel." +msgstr "" + +#: b15a139dcf17430b9bda24a4052d3504 discord.channel.TextChannel.edit:51 of +msgid "" +"The newly edited text channel. If the edit was only positional then " +"``None`` is returned instead." +msgstr "" + +#: 9e006a134f6d4a5c98852ac3f6ee4da7 discord.channel.TextChannel.edit:53 of +msgid "Optional[:class:`.TextChannel`]" +msgstr "" + +#: 0fc3c3b030404e49b32d2e3452611428 discord.channel.ForumChannel.edit:60 +#: discord.channel.TextChannel.edit:55 of +msgid "" +"If position is less than 0 or greater than the number of channels, or if" +" the permission overwrite information is not in proper form." +msgstr "" + +#: be26239c94d04849849334d27feda04c discord.channel.TextChannel.create_thread:3 +#: of +msgid "Creates a thread in this text channel." +msgstr "" + +#: discord.channel.ForumChannel.create_thread:5 +#: discord.channel.TextChannel.create_thread:5 fbf735600cc44f92ab131b1a3b735685 +#: of +msgid "" +"To create a public thread, you must have " +":attr:`~discord.Permissions.create_public_threads`. For a private thread," +" :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "" + +#: 515f99b3674c4b6296c673589b16743a +#: discord.channel.TextChannel.create_thread:14 of +msgid "" +"A snowflake representing the message to create the thread with. If " +"``None`` is passed then a private thread is created. Defaults to " +"``None``." +msgstr "" + +#: 79387b6c65034148b278684aec8e838f +#: discord.channel.TextChannel.create_thread:23 of +msgid "" +"The type of thread to create. If a ``message`` is passed then this " +"parameter is ignored, as a thread created with a message is always a " +"public thread. By default, this creates a private thread if this is " +"``None``." +msgstr "" + +#: 3a1d717daba84e828fbd005b5afebc7d +#: discord.channel.TextChannel.create_thread:28 of +msgid "" +"Specifies the slowmode rate limit for users in this thread, in seconds. A" +" value of ``0`` disables slowmode. The maximum value possible is " +"``21600``." +msgstr "" + +#: 799bd650e7ad4728a8c423f25d53bc64 +#: discord.channel.TextChannel.create_thread:32 of +msgid "" +"Whether non-moderators can add other non-moderators to this thread. Only " +"available for private threads, where it defaults to True." +msgstr "" + +#: 0102ac1b4d7c4838bb44d69f8d60d28c +#: discord.channel.ForumChannel.create_thread:64 +#: discord.channel.TextChannel.create_thread:36 of +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "" + +#: discord.channel.ForumChannel.create_thread:67 +#: discord.channel.TextChannel.create_thread:39 +#: fd6df08adf534a90b14c140cbd59529b of +msgid "The created thread" +msgstr "" + +#: discord.channel.ForumChannel.create_thread:71 +#: discord.channel.TextChannel.create_thread:43 +#: f3041c1cfd4f4cd0b84d05aec3166d18 of +msgid "Starting the thread failed." +msgstr "" + +#: 53020510c3264070868a136e9d819a55 +#: discord.channel._TextChannel.archived_threads:1 of +msgid "" +"Returns an :class:`~discord.AsyncIterator` that iterates over all " +"archived threads in the guild." +msgstr "" + +#: discord.channel._TextChannel.archived_threads:3 +#: eade018b8df94654aade6c41b12a606a of +msgid "" +"You must have :attr:`~Permissions.read_message_history` to use this. If " +"iterating over private threads then :attr:`~Permissions.manage_threads` " +"is also required." +msgstr "" + +#: d96d787d544246e8955385af1e212084 +#: discord.channel._TextChannel.archived_threads:9 of +msgid "" +"The number of threads to retrieve. If ``None``, retrieves every archived " +"thread in the channel. Note, however, that this would make it a slow " +"operation." +msgstr "" + +#: 18c4a1c74591444e8ab0eadccd6068a4 +#: discord.channel._TextChannel.archived_threads:14 of +msgid "Retrieve archived channels before the given date or ID." +msgstr "" + +#: 47e0f3baf0144f1ba8b3c4d5ef0bfe34 +#: discord.channel._TextChannel.archived_threads:17 of +msgid "Whether to retrieve private archived threads." +msgstr "" + +#: 53a32620bfa14fbb874c660624fe5617 +#: discord.channel._TextChannel.archived_threads:20 of +msgid "" +"Whether to retrieve private archived threads that you've joined. You " +"cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "" + +#: 7893ab8ad95343709b667196bff9d808 +#: discord.channel._TextChannel.archived_threads:24 of +msgid ":class:`Thread` -- The archived threads." +msgstr "" + +#: 2d87b8ad74d74790955f8a8f7521ae0c +#: discord.channel._TextChannel.archived_threads:26 of +msgid "You do not have permissions to get archived threads." +msgstr "" + +#: 00056e8969fc401c9d8d3a593d399d7b +#: discord.channel._TextChannel.archived_threads:27 of +msgid "The request to get the archived threads failed." +msgstr "" + +#: 2e2ff553e8684e86a18df67eca7e1566 +#: discord.channel._TextChannel.archived_threads:29 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr "" + +#: dd7fe9e0e5104c1bb97c25dc8254e260 discord.channel._TextChannel.follow:1 of +msgid "Follows a channel using a webhook." +msgstr "" + +#: 20936b5e624649fe9dc85c8cc9da0a31 discord.channel._TextChannel.follow:3 of +msgid "Only news channels can be followed." +msgstr "" + +#: 4e6a755a76a24f0dac7823c73d8eeed5 discord.channel._TextChannel.follow:7 of +msgid "" +"The webhook returned will not provide a token to do webhook actions, as " +"Discord does not provide it." +msgstr "" + +#: 3a6238bf9ce5438aa21950c2d2f44a49 discord.channel._TextChannel.follow:13 of +msgid "The channel you would like to follow from." +msgstr "" + +#: 0e891d00bbcf4a789ddad17a6d35832c discord.channel._TextChannel.follow:16 of +msgid "" +"The reason for following the channel. Shows up on the destination guild's" +" audit log. .. versionadded:: 1.4" +msgstr "" + +#: 7c0e19b5677c49e9ace5407d47115d0c discord.channel._TextChannel.follow:16 of +msgid "" +"The reason for following the channel. Shows up on the destination guild's" +" audit log." +msgstr "" + +#: 6e59b434e5ea44f28ea64487973c3373 discord.channel._TextChannel.follow:24 of +msgid "Following the channel failed." +msgstr "" + +#: aafe6d980d8c46cd89c2a0d6c857ced5 discord.channel._TextChannel.follow:25 of +msgid "You do not have the permissions to create a webhook." +msgstr "" + +#: d3a81ce636a44a9e88b3eea449b50f70 discord.ForumChannel.members:1 +#: discord.TextChannel.members:1 of +msgid "Returns all members that can see this channel." +msgstr "" + +#: discord.ForumChannel.threads:1 discord.TextChannel.threads:1 +#: f4fe0d12fcea454aa752afbccfa50240 of +msgid "Returns all the threads that you can see." +msgstr "" + +#: 3d9ee502ea0640118b0f4cf0cbb8e626 discord.channel.ForumChannel:1 of +msgid "Represents a Discord forum channel." +msgstr "" + +#: 4b34ca608be34c5597336cc69ea91cf2 discord.channel.ForumChannel:51 of +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr "" + +#: b083e6a86b634b1894c54f243b988735 discord.channel.ForumChannel:106 of +msgid "The set of tags that can be used in a forum channel." +msgstr "" + +#: cae1b545239a43b6aa72e818246d1b4a discord.channel.ForumChannel:114 of +msgid "The default sort order type used to order posts in this channel." +msgstr "" + +#: 163ca8890cd8438d88981ac907297672 discord.channel.ForumChannel:118 of +msgid "Optional[:class:`SortOrder`]" +msgstr "" + +#: 79295ddcd99444a28326d80b16bcb8e8 discord.channel.ForumChannel:130 of +msgid "The default forum reaction emoji." +msgstr "" + +#: 301a6e58f833446e89b741b0196dbd33 discord.channel.ForumChannel:134 of +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "" + +#: 718249dfc3d4489791382f41a839e150 discord.ForumChannel.guidelines:1 of +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "" + +#: 8dae47fc78014be6bdc6ca09757b5007 discord.ForumChannel.requires_tag:1 of +msgid "" +"Whether a tag is required to be specified when creating a thread in this " +"forum channel." +msgstr "" + +#: discord.ForumChannel.requires_tag:3 ef72d447ccb444db82cfbcc3779bc392 of +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "" + +#: 790f262d27f049caa2b496ed4373523e discord.channel.ForumChannel.get_tag:1 of +msgid "" +"Returns the :class:`ForumTag` from this forum channel with the given ID, " +"if any." +msgstr "" + +#: 193050a1c4bb4382bbbf16fdfabd0435 discord.channel.ForumChannel.get_tag:8 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\`" +" \\| \\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: c16a388e069d4526b2674948441ecfbf discord.channel.ForumChannel.edit:37 of +msgid "" +"The default sort order type to use to order posts in this channel. .. " +"versionadded:: 2.3" +msgstr "" + +#: a743fff2abf44d978975cbef0b68d112 discord.channel.ForumChannel.edit:37 of +msgid "The default sort order type to use to order posts in this channel." +msgstr "" + +#: 60f31611259c42a69519afb9d55367d7 discord.channel.ForumChannel.edit:41 of +msgid "" +"The default reaction emoji. Can be a unicode emoji or a custom emoji in " +"the forms: :class:`Emoji`, snowflake ID, string representation (eg. " +"''). .. versionadded:: 2.5" +msgstr "" + +#: discord.channel.ForumChannel.edit:47 f1f62f3c054949af950dbe405e52b553 of +msgid "" +"The set of tags that can be used in this channel. Must be less than `20`." +" .. versionadded:: 2.3" +msgstr "" + +#: 0b5e325a38434b46b84bf970a8b2c356 discord.channel.ForumChannel.edit:47 of +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "" + +#: 7efd5463c5cf4f67b497827921ab640b discord.channel.ForumChannel.edit:51 of +msgid "" +"Whether a tag should be required to be specified when creating a thread " +"in this channel. .. versionadded:: 2.3" +msgstr "" + +#: 46f1ffe182e64c9ba4a690d9f6460f58 discord.channel.ForumChannel.edit:51 of +msgid "" +"Whether a tag should be required to be specified when creating a thread " +"in this channel." +msgstr "" + +#: 794542333a414e1999fcca0dd25f516b discord.channel.ForumChannel.edit:56 of +msgid "" +"The newly edited forum channel. If the edit was only positional then " +"``None`` is returned instead." +msgstr "" + +#: discord.channel.ForumChannel.edit:58 e6117095200744589214d6b9a9606502 of +msgid "Optional[:class:`.ForumChannel`]" +msgstr "" + +#: 20d73b30bc03404db6cebb419fc013d2 +#: discord.channel.ForumChannel.create_thread:3 of +msgid "Creates a thread in this forum channel." +msgstr "" + +#: 2b7967c4efa54bc092954aa4b4790943 +#: discord.channel.ForumChannel.create_thread:32 of +msgid "The time to wait before deleting the thread." +msgstr "" + +#: discord.channel.ForumChannel.create_thread:50 +#: fd82b9157d3e4afbbbc2d483895a3773 of +msgid "A list of tags to apply to the new thread." +msgstr "" + +#: 5812e2412483464bb0330be789353b43 +#: discord.channel.ForumChannel.create_thread:57 of +msgid "" +"The number of seconds a member must wait between sending messages in the " +"new thread. A value of `0` denotes that it is disabled. Bots and users " +"with :attr:`~Permissions.manage_channels` or " +":attr:`~Permissions.manage_messages` bypass slowmode. If not provided, " +"the forum channel's default slowmode is used." +msgstr "" + +#: 176b5d8e42a149aca568b2ab47d6d85d discord.channel.VoiceChannel:1 of +msgid "Represents a Discord guild voice channel." +msgstr "" + +#: 74371b3956454f0dbed25b2bb2c7a21d discord.channel.VoiceChannel:83 of +msgid "" +"The ID of the last message sent to this channel. It may not always point " +"to an existing or valid message." +msgstr "" + +#: 43512047185a49aabc1a03e1af965a58 discord.channel.VoiceChannel:102 of +msgid "The channel's status, if set." +msgstr "" + +#: 0a27deab81dd461da942e57ef12425b8 discord.channel.VoiceChannel.edit:16 of +msgid "The new channel's bitrate." +msgstr "" + +#: 9b247bddd4ac418d8e12d122b4570e72 discord.channel.VoiceChannel.edit:18 of +msgid "The new channel's user limit." +msgstr "" + +#: 1f0f56119b9e41deb242811f7c8ca21f discord.channel.VoiceChannel.edit:33 of +msgid "" +"The new region for the voice channel's voice communication. A value of " +"``None`` indicates automatic voice region detection. .. versionadded:: " +"1.7" +msgstr "" + +#: beddf16d24b343009db491a281c45474 discord.channel.VoiceChannel.edit:33 of +msgid "" +"The new region for the voice channel's voice communication. A value of " +"``None`` indicates automatic voice region detection." +msgstr "" + +#: 8429bc1f3b3d4ad6a65ac7f3de8ef5f1 discord.channel.VoiceChannel.edit:43 of +msgid "" +"The newly edited voice channel. If the edit was only positional then " +"``None`` is returned instead." +msgstr "" + +#: 477c17bee0a64b0e8d0b82aa34a7a062 discord.channel.VoiceChannel.edit:45 of +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "" + +#: d817b78eacdf48e6812d05f13985393f +#: discord.channel.VoiceChannel.create_activity_invite:3 of +msgid "A shortcut method that creates an instant activity invite." +msgstr "" + +#: 71034e6b918e41a88b295c40378de972 +#: discord.channel.VoiceChannel.create_activity_invite:5 of +msgid "" +"You must have the :attr:`~discord.Permissions.start_embedded_activities` " +"permission to do this." +msgstr "" + +#: b79c6282c8e440628022aaa3a2d90857 +#: discord.channel.VoiceChannel.create_activity_invite:9 of +msgid "" +"The activity to create an invite for which can be an application id as " +"well." +msgstr "" + +#: 403a4833625a48e8b746bd791d33f1b5 +#: discord.channel.VoiceChannel.create_activity_invite:30 of +msgid "If the activity is not a valid activity or application id." +msgstr "" + +#: 1cd7a8f6f43b4fa4ad315833918a527f discord.channel.VoiceChannel.set_status:3 +#: of +msgid "Sets the status of the voice channel." +msgstr "" + +#: discord.channel.VoiceChannel.set_status:5 f8d1b48374784102ba343b5bf2ed84bf +#: of +msgid "" +"You must have the :attr:`~Permissions.set_voice_channel_status` " +"permission to use this." +msgstr "" + +#: 29ad9a928c66456baf52fec8cf63ba65 discord.channel.VoiceChannel.set_status:8 +#: of +msgid "The new status." +msgstr "" + +#: 66a3cccc28684da3a091335c07727ef8 discord.channel.VoiceChannel.set_status:11 +#: of +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "" + +#: 4667178d35264140a0c30c1a62d3e94f discord.channel.VoiceChannel.set_status:14 +#: of +msgid "You do not have proper permissions to set the status." +msgstr "" + +#: discord.channel.VoiceChannel.set_status:15 e577ec72d87b44f997070b042dfd5927 +#: of +msgid "Setting the status failed." +msgstr "" + +#: a9d340ffed6841aea33ff4985cddcbcc discord.channel.CategoryChannel:1 of +msgid "Represents a Discord channel category." +msgstr "" + +#: 7c1573d6fd0245109df230dd8ecbf388 discord.channel.CategoryChannel:3 of +msgid "These are useful to group channels to logical compartments." +msgstr "" + +#: 63e3c6221a184d2b9688c0e5bc1bd14e discord.channel.CategoryChannel:17 of +msgid "Returns the category's hash." +msgstr "" + +#: 936f63cab2574f28a0c5410be52d8880 discord.channel.CategoryChannel:21 of +msgid "Returns the category's name." +msgstr "" + +#: c1df12ed1a724f27be3f2c4803917b8a discord.channel.CategoryChannel:25 of +msgid "The category name." +msgstr "" + +#: 911563f1a0a1497593ab58c660c51247 discord.channel.CategoryChannel:31 of +msgid "The guild the category belongs to." +msgstr "" + +#: 9eaf9fd54ae14ef49c4283bd42bdc435 discord.channel.CategoryChannel:37 of +msgid "The category channel ID." +msgstr "" + +#: c80d0d015c2a49e2bf6092504cb5d3d2 discord.channel.CategoryChannel:43 of +msgid "" +"The position in the category list. This is a number that starts at 0. " +"e.g. the top category is position 0. Can be ``None`` if the channel was " +"received in an interaction." +msgstr "" + +#: discord.channel.CategoryChannel.is_nsfw:1 e9979dc9e1ca4edf9bbab4d0d9d940ff +#: of +msgid "Checks if the category is NSFW." +msgstr "" + +#: discord.channel.CategoryChannel.edit:14 ef4264b15f4a43e9bd1f8cbd08812001 of +msgid "The new category's name." +msgstr "" + +#: 33ce503ce56e47ccb5a39480e2a788ff discord.channel.CategoryChannel.edit:16 of +msgid "The new category's position." +msgstr "" + +#: a435247eccb243ac905d04ca7c85813e discord.channel.CategoryChannel.edit:18 of +msgid "To mark the category as NSFW or not." +msgstr "" + +#: 997e5dc2ce0c405a80238b62e7946484 discord.channel.CategoryChannel.edit:21 of +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "" + +#: 73ae0571d02d466cac576ee0903571f3 discord.channel.CategoryChannel.edit:26 of +msgid "" +"The newly edited category channel. If the edit was only positional then " +"``None`` is returned instead." +msgstr "" + +#: discord.channel.CategoryChannel.edit:28 ee95be99ea4940da9448b273185c78c0 of +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "" + +#: 480b9252595a4ed4b1b95eb359604cbd discord.channel.CategoryChannel.edit:30 of +msgid "If position is less than 0 or greater than the number of categories." +msgstr "" + +#: c2f46b9891fe40ada146763803d531ed discord.channel.CategoryChannel.edit:31 of +msgid "You do not have permissions to edit the category." +msgstr "" + +#: c5809c792a1740ffb03db9155e4d695c discord.channel.CategoryChannel.edit:32 of +msgid "Editing the category failed." +msgstr "" + +#: 4f08c36f4ffc40d4badff0801f721889 discord.CategoryChannel.channels:1 of +msgid "Returns the channels that are under this category." +msgstr "" + +#: c90b3a756a4048228b28ad9566918ebb discord.CategoryChannel.channels:3 of +msgid "" +"These are sorted by the official Discord UI, which places voice channels " +"below the text channels." +msgstr "" + +#: 48caa2a52a4144049a492c2f01a7eff0 discord.CategoryChannel.text_channels:1 of +msgid "Returns the text channels that are under this category." +msgstr "" + +#: 8f45774d9356475e874aee31fda3247d discord.CategoryChannel.voice_channels:1 of +msgid "Returns the voice channels that are under this category." +msgstr "" + +#: 7569c68aba4545afb640a92e84fb4953 discord.CategoryChannel.stage_channels:1 of +msgid "Returns the stage channels that are under this category." +msgstr "" + +#: aa08e4cb2f0940eb8d70ec09350d030d discord.CategoryChannel.forum_channels:1 of +msgid "Returns the forum channels that are under this category." +msgstr "" + +#: 0bcafb6404fc4a5b9e418a9dcff0bc95 +#: discord.channel.CategoryChannel.create_text_channel:3 of +msgid "" +"A shortcut method to :meth:`Guild.create_text_channel` to create a " +":class:`TextChannel` in the category." +msgstr "" + +#: c15aa9c3711542d79aab55cbf96ac79d +#: discord.channel.CategoryChannel.create_voice_channel:3 of +msgid "" +"A shortcut method to :meth:`Guild.create_voice_channel` to create a " +":class:`VoiceChannel` in the category." +msgstr "" + +#: discord.channel.CategoryChannel.create_stage_channel:3 +#: e44eb392ee574f87bf54665424c1f131 of +msgid "" +"A shortcut method to :meth:`Guild.create_stage_channel` to create a " +":class:`StageChannel` in the category." +msgstr "" + +#: c39adbc2bbd645db8ff6528b2cacb1f0 +#: discord.channel.CategoryChannel.create_forum_channel:3 of +msgid "" +"A shortcut method to :meth:`Guild.create_forum_channel` to create a " +":class:`ForumChannel` in the category." +msgstr "" + +#: 9bcfa7dd51134c0c971d4c30899cbb1e discord.channel.DMChannel:1 of +msgid "Represents a Discord direct message channel." +msgstr "" + +#: 7241a3894f7647c99e02bf6dc83f92d7 discord.channel.DMChannel:19 +#: discord.channel.GroupChannel:19 of +msgid "Returns a string representation of the channel" +msgstr "" + +#: c5d76213f75c4f70b94ea6aa3082417c discord.channel.DMChannel:23 of +msgid "" +"The user you are participating with in the direct message channel. If " +"this channel is received through the gateway, the recipient information " +"may not be always available." +msgstr "" + +#: 07d26c6d19384c6f86ae530ce8a92741 discord.channel.DMChannel:31 +#: discord.channel.GroupChannel:29 of +msgid "The user presenting yourself." +msgstr "" + +#: aea97e16a41843c3a2d833abae3ca0a2 discord.channel.DMChannel:37 of +msgid "The direct message channel ID." +msgstr "" + +#: cec5a91670184d8594a8168b49e63c77 discord.DMChannel.created_at:1 of +msgid "Returns the direct message channel's creation time in UTC." +msgstr "" + +#: 2e3a7be955924d12b02a8a67a62243ce discord.channel.DMChannel.permissions_for:1 +#: discord.channel.GroupChannel.permissions_for:1 of +msgid "Handles permission resolution for a :class:`User`." +msgstr "" + +#: 8a6bd8833e2e4eb1b5b91fec38efc1a7 discord.channel.DMChannel.permissions_for:3 +#: discord.channel.GroupChannel.permissions_for:3 of +msgid "This function is there for compatibility with other channel types." +msgstr "" + +#: 5bd63434d23d47ef9405d7cd8f3c0792 discord.channel.DMChannel.permissions_for:5 +#: discord.channel.GroupChannel.permissions_for:5 of +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "" + +#: b7f135a3e450454281ecbc95203edfe9 discord.channel.DMChannel.permissions_for:7 +#: discord.channel.GroupChannel.permissions_for:7 of +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "" + +#: 37714f0cf619431f859f64895e535122 discord.channel.DMChannel.permissions_for:9 +#: discord.channel.GroupChannel.permissions_for:9 of +msgid "" +":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a" +" DM." +msgstr "" + +#: 0fd9fff73f23420c954048e6c55bbdae +#: discord.channel.DMChannel.permissions_for:10 +#: discord.channel.GroupChannel.permissions_for:10 of +msgid "" +":attr:`~Permissions.manage_messages`: You cannot delete others messages " +"in a DM." +msgstr "" + +#: 920a461af4a3409b80dd9b62fe593c74 +#: discord.channel.DMChannel.permissions_for:13 of +msgid "" +"The user to check permissions for. This parameter is ignored but kept for" +" compatibility with other ``permissions_for`` methods." +msgstr "" + +#: 026abc8c403d492f8f529f5167663614 +#: discord.channel.DMChannel.permissions_for:17 of +msgid "The resolved permissions." +msgstr "" + +#: 298831af02f147868ac4921ae73b06f5 +#: discord.channel.DMChannel.permissions_for:18 +#: discord.channel.GroupChannel.permissions_for:19 of +msgid ":class:`Permissions`" +msgstr "" + +#: 587dfd4e44d94e0b83037e4ac8322626 discord.channel.GroupChannel:1 of +msgid "Represents a Discord group channel." +msgstr "" + +#: d0cd14f31ea34431802b867a7472c004 discord.channel.GroupChannel:23 of +msgid "The users you are participating with in the group channel." +msgstr "" + +#: 74146d0fcd3c407c9fc17f2a05fa99de discord.channel.GroupChannel:25 of +msgid "List[:class:`User`]" +msgstr "" + +#: 7121cf484eba4970baaae8e6ee478918 discord.channel.GroupChannel:35 of +msgid "The group channel ID." +msgstr "" + +#: d5f6eb22ab8d44a981bfc691f53389f8 discord.channel.GroupChannel:41 of +msgid "The user that owns the group channel." +msgstr "" + +#: c7b8c4b9b857405a99a74a647c686d89 discord.channel.GroupChannel:47 of +msgid "The owner ID that owns the group channel." +msgstr "" + +#: c8b1d45e983b4d1da2b160d717b4ff0d discord.channel.GroupChannel:55 of +msgid "The group channel's name if provided." +msgstr "" + +#: 30d7f57d10b64076a00032ca63ac35d0 discord.GroupChannel.icon:1 of +msgid "Returns the channel's icon asset if available." +msgstr "" + +#: 7c9677f5993443998c6a715088f59cc9 +#: discord.channel.GroupChannel.permissions_for:12 of +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "" + +#: 2293199313574b40a04178d0acff383f +#: discord.channel.GroupChannel.permissions_for:15 of +msgid "The user to check permissions for." +msgstr "" + +#: 0185dc41947d440b9deb847368a4ad47 +#: discord.channel.GroupChannel.permissions_for:18 of +msgid "The resolved permissions for the user." +msgstr "" + +#: 3d3e36f11c1c49d094ec86d55a8aa936 discord.channel.GroupChannel.leave:3 of +msgid "Leave the group." +msgstr "" + +#: 69e56047815d4e7f8cc89dc9d6a54e5a discord.channel.GroupChannel.leave:5 of +msgid "If you are the only one in the group, this deletes it as well." +msgstr "" + +#: dfeb38c2641d49a7b989615d03053502 discord.channel.GroupChannel.leave:7 of +msgid "Leaving the group failed." +msgstr "" + +#: ../../api/models.rst:464 209e72461fff4eaeb235cc21aa5f1997 +msgid "Stickers" +msgstr "" + +#: 3f954ebeebec484e93c4d6d0bc7d901f discord.sticker.Sticker:1 of +msgid "Represents a sticker." +msgstr "" + +#: d7e569b01dcb4dcb8c79e2a0ca7cd9b0 discord.sticker.GuildSticker:9 +#: discord.sticker.StandardSticker:9 discord.sticker.Sticker:9 of +msgid "Returns the name of the sticker." +msgstr "" + +#: 9f3b6e968acc47f09ad051f70e94b1d1 discord.sticker.GuildSticker:13 +#: discord.sticker.StandardSticker:13 discord.sticker.Sticker:13 of +msgid "Checks if the sticker is equal to another sticker." +msgstr "" + +#: 8d7c7c56f12947279193129bd979cf00 discord.sticker.GuildSticker:17 +#: discord.sticker.StandardSticker:17 discord.sticker.Sticker:17 of +msgid "Checks if the sticker is not equal to another sticker." +msgstr "" + +#: discord.sticker.GuildSticker:21 discord.sticker.StandardSticker:21 +#: discord.sticker.Sticker:21 discord.sticker.StickerItem:21 +#: e70e6c2d80344d49b442735fce54a425 of +msgid "The sticker's name." +msgstr "" + +#: 39127218ef194b2580d66ec98a1b28ef discord.sticker.GuildSticker:27 +#: discord.sticker.StandardSticker:27 discord.sticker.Sticker:27 +#: discord.sticker.StickerItem:27 of +msgid "The id of the sticker." +msgstr "" + +#: dffad35450864bf1ae2ea28d86a0cbe2 discord.sticker.GuildSticker:33 +#: discord.sticker.StandardSticker:33 discord.sticker.Sticker:33 of +msgid "The description of the sticker." +msgstr "" + +#: 6bad54d4ee5a461daf1e24145a5bf9b4 discord.sticker.StandardSticker:39 +#: discord.sticker.Sticker:39 of +msgid "The id of the sticker's pack." +msgstr "" + +#: 5e0919e094cc42b68aecea6053e15de7 discord.sticker.GuildSticker:39 +#: discord.sticker.StandardSticker:45 discord.sticker.Sticker:45 +#: discord.sticker.StickerItem:33 of +msgid "The format for the sticker's image." +msgstr "" + +#: 0947335f49564c9a9845a931f348d155 discord.sticker.GuildSticker:41 +#: discord.sticker.StandardSticker:47 discord.sticker.Sticker:47 +#: discord.sticker.StickerItem:35 of +msgid ":class:`StickerFormatType`" +msgstr "" + +#: discord.sticker.Sticker:51 discord.sticker.StickerItem:39 +#: eb58efe02ae4445b8b7404efa57f07f4 of +msgid "The URL for the sticker's image." +msgstr "" + +#: b017f2694c78454e89e712049f8fc4c0 discord.Sticker.created_at:1 of +msgid "Returns the sticker's creation time in UTC." +msgstr "" + +#: d4bf0a56f70a4156b6ffafbaf1a1afd1 discord.sticker.StickerPack:1 of +msgid "Represents a sticker pack." +msgstr "" + +#: 7c3867828aa74c04afe3890251c409ad discord.sticker.StickerPack:9 of +msgid "Returns the name of the sticker pack." +msgstr "" + +#: 2e25f7b511344bf0ac7e847f84491b10 discord.sticker.StickerPack:13 of +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "" + +#: a01a06b8cb664d62af6c4e831878f7a3 discord.sticker.StickerPack:17 of +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "" + +#: ae74f28032104407a1c56df0f1ad5552 discord.sticker.StickerPack:21 of +msgid "The name of the sticker pack." +msgstr "" + +#: ca4212b8b0034d669bd2d68773ad42bb discord.sticker.StickerPack:27 of +msgid "The description of the sticker pack." +msgstr "" + +#: 2fa56ee1b62f4cab80779d0358130504 discord.sticker.StickerPack:33 of +msgid "The id of the sticker pack." +msgstr "" + +#: 3464c8109245401db50402e242ad469c discord.sticker.StickerPack:39 of +msgid "The stickers of this sticker pack." +msgstr "" + +#: 12af66b1cde54e739d49c8abdd86adc7 discord.sticker.StickerPack:41 of +msgid "List[:class:`StandardSticker`]" +msgstr "" + +#: 7e61663b01f54ce58a991cb28b24a3fb discord.sticker.StickerPack:45 of +msgid "The SKU ID of the sticker pack." +msgstr "" + +#: discord.sticker.StickerPack:51 e5656f2a93a04683b9380630ab8ea347 of +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "" + +#: 5429b72888314c36b9c4115c199cb57e discord.sticker.StickerPack:57 of +msgid "The sticker used for the cover of the sticker pack." +msgstr "" + +#: d23dcc1a3c8f460291e14581057aa60f discord.sticker.StickerPack:59 of +msgid ":class:`StandardSticker`" +msgstr "" + +#: d4b50052f21143d0b34a3b0349704a5e discord.StickerPack.banner:1 of +msgid "The banner asset of the sticker pack." +msgstr "" + +#: 7d3ec7ac0f5d4d02a92463f865795cac discord.sticker.StickerItem:1 of +msgid "Represents a sticker item." +msgstr "" + +#: aeebdd818d504901bd5f56b41ddea95e discord.sticker.StickerItem:9 of +msgid "Returns the name of the sticker item." +msgstr "" + +#: 92d1d9b5f6f549d7a52b697301991631 discord.sticker.StickerItem:13 of +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "" + +#: db2f4c0ca4824bed9036a3918862e12a discord.sticker.StickerItem:17 of +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "" + +#: bc424429bee740d58c7f5c49268a1a41 discord.sticker.StickerItem.fetch:3 of +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "" + +#: aab251a927704361a8eb0a7bac7c1fec discord.sticker.StickerItem.fetch:6 of +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "" + +#: 53245ab104a4472a9bbd9315097855bd discord.sticker.StickerItem.fetch:8 of +msgid "Retrieving the sticker failed." +msgstr "" + +#: d438c58c4df44c4cb5fbd8aebc4006ac discord.sticker.StandardSticker:1 of +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "" + +#: 20f99ef51faa468db4bb70032e2cdcff discord.sticker.StandardSticker:51 of +msgid "A list of tags for the sticker." +msgstr "" + +#: 00a3cf8e2d85423291148ef40b05a77c discord.sticker.StandardSticker:57 of +msgid "The sticker's sort order within its pack." +msgstr "" + +#: a4c42c93c98c4f6ea491f30ed70e3170 discord.sticker.StandardSticker.pack:3 of +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "" + +#: 73939f1df54b4f518d868e7aa7a100da discord.sticker.StandardSticker.pack:5 of +msgid "The retrieved sticker pack." +msgstr "" + +#: 301b3051d4f44a809194f97c0341c309 discord.sticker.StandardSticker.pack:6 of +msgid ":class:`StickerPack`" +msgstr "" + +#: 74bf6b15cbab4cccbe0810c233d03692 discord.sticker.StandardSticker.pack:8 of +msgid "The corresponding sticker pack was not found." +msgstr "" + +#: ae617817e9644df1884c000f7b6bb2a1 discord.sticker.StandardSticker.pack:9 of +msgid "Retrieving the sticker pack failed." +msgstr "" + +#: 2211977338284dabb4ddd3a5298bc2ee discord.sticker.GuildSticker:1 of +msgid "Represents a sticker that belongs to a guild." +msgstr "" + +#: 008d75de22e74fcbb1201a5d468699bf discord.sticker.GuildSticker:45 of +msgid "Whether this sticker is available for use." +msgstr "" + +#: bf5e70691eb048d29e5620a2952c0e85 discord.sticker.GuildSticker:51 of +msgid "The ID of the guild that this sticker is from." +msgstr "" + +#: 963a7a7f1b5a409987d9b1e2032a1e60 discord.sticker.GuildSticker:57 of +msgid "" +"The user that created this sticker. This can only be retrieved using " +":meth:`Guild.fetch_sticker` and having the " +":attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "" + +#: 33b4d3cc6f954c71a16ce001c71ed4bc discord.sticker.GuildSticker:64 of +msgid "The name of a unicode emoji that represents this sticker." +msgstr "" + +#: ../../docstring 32601811227a49d499e3c7a5322cf44b +#: discord.GuildSticker.guild:1 of +msgid "" +"The guild that this sticker is from. Could be ``None`` if the bot is not " +"in the guild." +msgstr "" + +#: 630cb9a5fcdb4f388ddfc0cde1b04c9d discord.sticker.GuildSticker.edit:3 of +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "" + +#: 2c3c71774c97407c95bf4470d6d5e978 discord.sticker.GuildSticker.edit:6 of +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "" + +#: 67bff4eece154a76ae3986ffd8f99287 discord.sticker.GuildSticker.edit:9 of +msgid "The sticker's new description. Can be ``None``." +msgstr "" + +#: 74ac0f952f264e6b857c92b03be46775 discord.sticker.GuildSticker.edit:15 of +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "" + +#: a88be413ad224db0a16c5d0076d53205 discord.sticker.GuildSticker.edit:18 of +msgid "The newly modified sticker." +msgstr "" + +#: discord.sticker.GuildSticker.edit:21 e271c8e5775b42dabbd868b1f3142981 of +msgid "You are not allowed to edit stickers." +msgstr "" + +#: 417424ce11a344fba8235344e4fd0d5e discord.sticker.GuildSticker.edit:22 of +msgid "An error occurred editing the sticker." +msgstr "" + +#: ../../api/models.rst:492 fa3209921266443fb19f43b396c4c0a6 +msgid "Events" +msgstr "" + +#: b79f190d2d0948f089814f349c0d9261 +#: discord.raw_models.AutoModActionExecutionEvent:1 of +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "" + +#: discord.raw_models.AutoModActionExecutionEvent:7 +#: f59bbb3db9c544e1ad828a596a22de9e of +msgid "The action that was executed." +msgstr "" + +#: 21fa4c5e146c472590b1421c4f265e69 +#: discord.raw_models.AutoModActionExecutionEvent:9 of +msgid ":class:`AutoModAction`" +msgstr "" + +#: 9d152ca0b57c4831a63ac4f3ba694587 +#: discord.raw_models.AutoModActionExecutionEvent:13 of +msgid "The ID of the rule that the action belongs to." +msgstr "" + +#: 0938f0fdbfc14cbfb9a98c6e970f09f0 +#: discord.raw_models.AutoModActionExecutionEvent:19 of +msgid "The category of trigger the rule belongs to." +msgstr "" + +#: 5903ec8f839b4c2d9dc2d902b5329cf4 +#: discord.raw_models.AutoModActionExecutionEvent:27 of +msgid "The ID of the guild that the action was executed in." +msgstr "" + +#: c1359aa34c5d40eaac3b6c9def40e077 +#: discord.raw_models.AutoModActionExecutionEvent:33 of +msgid "The guild that the action was executed in, if cached." +msgstr "" + +#: 31088a4e5f2646258619cfbe0fe78c89 +#: discord.raw_models.AutoModActionExecutionEvent:39 of +msgid "The ID of the user that triggered the action." +msgstr "" + +#: 22f1087adfc24aa8a6944aef5c2cd09d +#: discord.raw_models.AutoModActionExecutionEvent:45 of +msgid "The member that triggered the action, if cached." +msgstr "" + +#: 58e17c63ce814fd58836e40f1411127e +#: discord.raw_models.AutoModActionExecutionEvent:51 of +msgid "The ID of the channel in which the member's content was posted." +msgstr "" + +#: dc0207d3dd944e11bcd1577a7aa4e96d +#: discord.raw_models.AutoModActionExecutionEvent:57 of +msgid "The channel in which the member's content was posted, if cached." +msgstr "" + +#: 376755f7365b4605974de6a4391d2d09 +#: discord.raw_models.AutoModActionExecutionEvent:59 of +msgid "" +"Optional[Union[:class:`TextChannel`, :class:`Thread`, " +":class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "" + +#: 906da4869ca74857aa12c64689988056 +#: discord.raw_models.AutoModActionExecutionEvent:63 of +msgid "" +"The ID of the message that triggered the action. This is only available " +"if the message was not blocked." +msgstr "" + +#: dc4532a7e5b34a9ab4851febbf01cbf2 +#: discord.raw_models.AutoModActionExecutionEvent:70 of +msgid "The message that triggered the action, if cached." +msgstr "" + +#: 3e754965c0ba4ad9b0aed65749f28b2f +#: discord.raw_models.AutoModActionExecutionEvent:76 of +msgid "" +"The ID of the system auto moderation message that was posted as a result " +"of the action." +msgstr "" + +#: 4c3d95bc6e42436cbc78c2640f190d2f +#: discord.raw_models.AutoModActionExecutionEvent:83 of +msgid "" +"The system auto moderation message that was posted as a result of the " +"action, if cached." +msgstr "" + +#: c58f51b1d6334159a2a60f2d322e8d45 +#: discord.raw_models.AutoModActionExecutionEvent:90 of +msgid "The content of the message that triggered the action." +msgstr "" + +#: 6ffde4d983ac42b0969d9ce742636544 +#: discord.raw_models.AutoModActionExecutionEvent:96 of +msgid "The word or phrase configured that was matched in the content." +msgstr "" + +#: bde7642f0ba14c51bfb2f81f07a2932e +#: discord.raw_models.AutoModActionExecutionEvent:102 of +msgid "The substring in the content that was matched." +msgstr "" + +#: b6afb38f8d2e49ebb42b29492db03440 +#: discord.raw_models.AutoModActionExecutionEvent:108 of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 499fc1b5ce724e788a72c35bf2ce080c discord.raw_models.RawTypingEvent:1 of +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "" + +#: 6aefe6592d3e481bb194f15c9aff3208 discord.raw_models.RawTypingEvent:7 of +msgid "The channel ID where the typing originated from." +msgstr "" + +#: 14b6274d91774c6eaae92facfb26f9d8 discord.raw_models.RawTypingEvent:13 of +msgid "The ID of the user that started typing." +msgstr "" + +#: 7162af01584f4ceca217802b5fd67f12 discord.raw_models.RawTypingEvent:19 of +msgid "When the typing started as an aware datetime in UTC." +msgstr "" + +#: 074d97d9348f4fb69e34d69ea0c05149 discord.raw_models.RawTypingEvent:25 of +msgid "The guild ID where the typing originated from, if applicable." +msgstr "" + +#: 9d2a1fd74db74e858c41d60042891f83 discord.raw_models.RawTypingEvent:31 of +msgid "" +"The member who started typing. Only available if the member started " +"typing in a guild." +msgstr "" + +#: 68202a289cc64633add155d110e551b5 discord.raw_models.RawTypingEvent:37 of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 083fd25a4caf4f438e18f06ecfc329a3 discord.raw_models.RawMessageDeleteEvent:1 +#: of +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "" + +#: 591b40b272cb4d6fa4456a1483cd349d discord.raw_models.RawMessageDeleteEvent:5 +#: of +msgid "The channel ID where the deletion took place." +msgstr "" + +#: cba8549241ae4f2b8ec7e2b036915985 discord.raw_models.RawMessageDeleteEvent:11 +#: of +msgid "The guild ID where the deletion took place, if applicable." +msgstr "" + +#: b885728f638f4102888b355dd2fde5bd discord.raw_models.RawMessageDeleteEvent:17 +#: of +msgid "The message ID that got deleted." +msgstr "" + +#: 51825d7c41ac41bc9bd7aaf54e8731c5 discord.raw_models.RawMessageDeleteEvent:23 +#: of +msgid "The cached message, if found in the internal message cache." +msgstr "" + +#: 80e8bcebb6c846b9a94201322d201f11 discord.raw_models.RawMessageDeleteEvent:29 +#: of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 9758fa2c23934519aa0a31b619561841 +#: discord.raw_models.RawBulkMessageDeleteEvent:1 of +msgid "" +"Represents the event payload for a :func:`on_raw_bulk_message_delete` " +"event." +msgstr "" + +#: 95fdfdb30b0b44c0ad31616a5630431b +#: discord.raw_models.RawBulkMessageDeleteEvent:5 of +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "" + +#: 2c4db09f55444e179276a27886c53ab1 +#: discord.raw_models.RawBulkMessageDeleteEvent:7 of +msgid "Set[:class:`int`]" +msgstr "" + +#: 9e257c61cf59469dafe62914243b17ab +#: discord.raw_models.RawBulkMessageDeleteEvent:11 of +msgid "The channel ID where the message got deleted." +msgstr "" + +#: discord.raw_models.RawBulkMessageDeleteEvent:17 +#: f5e94fb1e9b74e7cb97320acf2b8fd2d of +msgid "The guild ID where the message got deleted, if applicable." +msgstr "" + +#: 8eab388727794972a7906a9c73529e53 +#: discord.raw_models.RawBulkMessageDeleteEvent:23 of +msgid "The cached messages, if found in the internal message cache." +msgstr "" + +#: 859990ca3d474b82ab8a25c709399af3 +#: discord.raw_models.RawBulkMessageDeleteEvent:25 of +msgid "List[:class:`Message`]" +msgstr "" + +#: df91c3ca90284cba833f8d2303683970 +#: discord.raw_models.RawBulkMessageDeleteEvent:29 of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 872290794a8b426ea016c6cb478edf1c discord.raw_models.RawMessageUpdateEvent:1 +#: of +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "" + +#: discord.raw_models.RawMessageUpdateEvent:5 fa312fddcc7640858f6f5dc198669a1a +#: of +msgid "The message ID that got updated." +msgstr "" + +#: 07c75520606b4ce8b11422018fe961f4 discord.raw_models.RawMessageUpdateEvent:11 +#: of +msgid "The channel ID where the update took place." +msgstr "" + +#: 6c11263af97b4adf9f96d3420215db95 discord.raw_models.RawMessageUpdateEvent:19 +#: of +msgid "The guild ID where the message got updated, if applicable." +msgstr "" + +#: b265740494834d0a910c37f8097fff5a discord.raw_models.RawMessageUpdateEvent:27 +#: of +msgid "" +"The raw data sent by the `gateway " +"`_" +msgstr "" + +#: 262dc5905556459587d9ae798ee82024 discord.raw_models.RawMessageUpdateEvent:33 +#: of +msgid "" +"The cached message, if found in the internal message cache. Represents " +"the message before it is modified by the data in " +":attr:`RawMessageUpdateEvent.data`." +msgstr "" + +#: discord.raw_models.RawReactionActionEvent:1 ffe7a35941da4ee0ba78d8c78549e0c7 +#: of +msgid "" +"Represents the payload for a :func:`on_raw_reaction_add` or " +":func:`on_raw_reaction_remove` event." +msgstr "" + +#: 7d5dc4e9d47e4f288265ecc59e7a8ee7 discord.raw_models.RawReactionActionEvent:6 +#: of +msgid "The message ID that got or lost a reaction." +msgstr "" + +#: 79c663166bf54130b292c2b3b0c02da7 +#: discord.raw_models.RawReactionActionEvent:12 of +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "" + +#: 349706d55fec46638e81b043bb480718 +#: discord.raw_models.RawReactionActionEvent:18 of +msgid "The channel ID where the reaction got added or removed." +msgstr "" + +#: 1a761539da4e42edb15d580870eea3e2 +#: discord.raw_models.RawReactionActionEvent:24 of +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "" + +#: 109ca37f75c440149342c11e3d196458 +#: discord.raw_models.RawReactionActionEvent:30 of +msgid "The custom or unicode emoji being used." +msgstr "" + +#: 79d0117cef804316937d5fd65887a66a +#: discord.raw_models.RawReactionActionEvent:36 of +msgid "" +"The member who added the reaction. Only available if the reaction occurs " +"within a guild." +msgstr "" + +#: d59b3f7188164f7690a5236089a3edd9 +#: discord.raw_models.RawReactionActionEvent:44 of +msgid "" +"The event type that triggered this action. Can be ``REACTION_ADD`` for " +"reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "" + +#: 3d57daf4600347369012e4666cfa9e32 +#: discord.raw_models.RawReactionActionEvent:60 of +msgid "" +"A list of hex codes this reaction can be. Only available if `event_type` " +"is `REACTION_ADD` and this emoji has super reactions available." +msgstr "" + +#: 6de13fa5309f426d97885e856de66c2d discord.raw_models.RawAuditLogEntryEvent:45 +#: discord.raw_models.RawReactionActionEvent:63 +#: discord.raw_models.RawReactionActionEvent:69 +#: discord.raw_models.RawReactionClearEmojiEvent:45 of +msgid "Optional[:class:`list`]" +msgstr "" + +#: a0ae038460cc4afeb1f55fc31edad93b +#: discord.raw_models.RawReactionActionEvent:67 +#: discord.raw_models.RawReactionClearEmojiEvent:43 of +msgid "Alias for :attr:`burst_colours`." +msgstr "" + +#: 8be7e177048b48c58c5069f7bace65bb +#: discord.raw_models.RawReactionActionEvent:73 of +msgid "The type of reaction added." +msgstr "" + +#: be68507029b84b93bc3189b87e423c23 +#: discord.raw_models.RawReactionActionEvent:75 +#: discord.raw_models.RawReactionClearEmojiEvent:51 of +msgid ":class:`ReactionType`" +msgstr "" + +#: 57fcb3b89ea343e49b6121016bbf056a +#: discord.raw_models.RawReactionActionEvent:79 of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 9c55b78745534bf3908765bfe80b3a96 discord.raw_models.RawReactionClearEvent:1 +#: of +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "" + +#: 5b0c86bf3fe74bc59f7526bb295a5f6b +#: discord.raw_models.RawReactionClearEmojiEvent:7 +#: discord.raw_models.RawReactionClearEvent:5 of +msgid "The message ID that got its reactions cleared." +msgstr "" + +#: 3fc3b9a31e0843e99300bef5908239ae +#: discord.raw_models.RawReactionClearEmojiEvent:13 +#: discord.raw_models.RawReactionClearEvent:11 of +msgid "The channel ID where the reactions got cleared." +msgstr "" + +#: discord.raw_models.RawReactionClearEmojiEvent:19 +#: discord.raw_models.RawReactionClearEvent:17 ed2e7768cefa4a21841b18d806ae7e22 +#: of +msgid "The guild ID where the reactions got cleared." +msgstr "" + +#: 00c10feb478642c796ce040922822aa6 discord.raw_models.RawReactionClearEvent:23 +#: of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 4f6f4cd8c25a4c269e81552330a5af16 +#: discord.raw_models.RawReactionClearEmojiEvent:1 of +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "" + +#: discord.raw_models.RawReactionClearEmojiEvent:25 +#: e93ddf7f5f2f4108a62c97c24c102d5f of +msgid "The custom or unicode emoji being removed." +msgstr "" + +#: discord.raw_models.RawReactionClearEmojiEvent:31 +#: e0a6e4a865e6478f984e5c7a61eca7bf of +msgid "Whether this reaction was a burst (super) reaction." +msgstr "" + +#: 8da8ed8c042d43a09d679902449a5d5c +#: discord.raw_models.RawReactionClearEmojiEvent:37 of +msgid "The available HEX codes of the removed super reaction." +msgstr "" + +#: 6c4c75d113254029b77ba850debfcfd3 +#: discord.raw_models.RawReactionClearEmojiEvent:39 of +msgid ":class:`list`" +msgstr "" + +#: 248f1f73e30940a49c621a94e90983d6 +#: discord.raw_models.RawReactionClearEmojiEvent:49 of +msgid "The type of reaction removed." +msgstr "" + +#: 1b350547602f48838cf645fbc4a9540b +#: discord.raw_models.RawReactionClearEmojiEvent:55 of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: ae35ffa2bd784c71850e872f6dc0176f +#: discord.raw_models.RawIntegrationDeleteEvent:1 of +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "" + +#: discord.raw_models.RawIntegrationDeleteEvent:7 +#: e3281dac58fa4334a67caf80cb45df51 of +msgid "The ID of the integration that got deleted." +msgstr "" + +#: 9326171cc2334890a65c282bf5939c5c +#: discord.raw_models.RawIntegrationDeleteEvent:13 of +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "" + +#: discord.raw_models.RawIntegrationDeleteEvent:19 +#: f5b124b805c5449a8cc33744ded015d9 of +msgid "The guild ID where the integration got deleted." +msgstr "" + +#: 74b0025e77e44f66aa7e45c9924f9b43 +#: discord.raw_models.RawIntegrationDeleteEvent:25 of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: discord.raw_models.RawThreadDeleteEvent:1 f71bc55131744337a32f55761bd384ae +#: of +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "" + +#: discord.raw_models.RawThreadDeleteEvent:7 ed66c4fafdab48dfb26fdc88526903cb +#: of +msgid "The ID of the thread that was deleted." +msgstr "" + +#: 80173e2d13a74455851c296207108a67 discord.raw_models.RawThreadDeleteEvent:13 +#: of +msgid "The channel type of the deleted thread." +msgstr "" + +#: c56a434ae2034ed1a139116a20d9e828 discord.raw_models.RawThreadDeleteEvent:15 +#: discord.raw_models.RawThreadUpdateEvent:15 of +msgid ":class:`discord.ChannelType`" +msgstr "" + +#: c942d9a66ae943129c00dacecda6bda0 discord.raw_models.RawThreadDeleteEvent:19 +#: of +msgid "The ID of the guild the deleted thread belonged to." +msgstr "" + +#: 5e55c49746e44da78344b275882d7dab discord.raw_models.RawThreadDeleteEvent:25 +#: of +msgid "The ID of the channel the thread belonged to." +msgstr "" + +#: 52970a93b1f7408b8648ba6d7da2481c discord.raw_models.RawThreadDeleteEvent:31 +#: of +msgid "" +"The thread that was deleted. This may be ``None`` if deleted thread is " +"not found in internal cache." +msgstr "" + +#: 6e59f1f4561a4ff4a56f3257e62223a3 discord.raw_models.RawThreadDeleteEvent:33 +#: of +msgid "Optional[:class:`discord.Thread`]" +msgstr "" + +#: b14b3e97de234e28b4104e5a613cbb95 discord.raw_models.RawThreadDeleteEvent:37 +#: of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 8abc932b7db9477aa37671ad8555a946 +#: discord.raw_models.RawScheduledEventSubscription:1 of +msgid "" +"Represents the payload for a :func:`raw_scheduled_event_user_add` or " +":func:`raw_scheduled_event_user_remove` event." +msgstr "" + +#: 7b3ca844c2e4433ca2f6f4532db57804 +#: discord.raw_models.RawScheduledEventSubscription:8 of +msgid "The event ID where the typing originated from." +msgstr "" + +#: 2589e072a10945fd91844cf562e522f8 +#: discord.raw_models.RawScheduledEventSubscription:14 of +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "" + +#: discord.raw_models.RawScheduledEventSubscription:20 +#: fc2d5f7de1334ecfa878e4a54efbe2d7 of +msgid "The guild where the subscription/unsubscription happened." +msgstr "" + +#: 6f7667c231954a3b85809427b6c178ce +#: discord.raw_models.RawScheduledEventSubscription:26 of +msgid "" +"Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event " +"called." +msgstr "" + +#: db759799a9584ace958e5d19d8bda3a8 +#: discord.raw_models.RawScheduledEventSubscription:33 of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 57f6174c02b04d4f89daad19a99de172 discord.raw_models.RawMemberRemoveEvent:1 +#: of +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "" + +#: c043b937892d446e8be670d14755b111 discord.raw_models.RawMemberRemoveEvent:7 +#: of +msgid "The user that left the guild." +msgstr "" + +#: discord.raw_models.RawMemberRemoveEvent:9 e9afa44e8d8f48eba0a9330f7bb79265 +#: of +msgid ":class:`discord.User`" +msgstr "" + +#: discord.raw_models.RawMemberRemoveEvent:13 f5d1f7b186934cb59089bb69614223e3 +#: of +msgid "The ID of the guild the user left." +msgstr "" + +#: 82c67a590a6f41b5912e8b043427212a discord.raw_models.RawMemberRemoveEvent:19 +#: of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 50e584b568b144d8ab8195b6f228fdb1 discord.raw_models.RawThreadUpdateEvent:1 +#: of +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "" + +#: 6825333ca162418ab57606ff1740b8dc discord.raw_models.RawThreadUpdateEvent:7 +#: of +msgid "The ID of the updated thread." +msgstr "" + +#: 18e0d2ab7dc1463891dec1fa3cf9a37f discord.raw_models.RawThreadUpdateEvent:13 +#: of +msgid "The channel type of the updated thread." +msgstr "" + +#: 59e5a8efef2346bbb2ee80ea21c011a7 discord.raw_models.RawThreadUpdateEvent:19 +#: of +msgid "The ID of the guild the thread belongs to." +msgstr "" + +#: 619f2bcdd29345aa865973f05c3a9648 discord.raw_models.RawThreadUpdateEvent:25 +#: of +msgid "The ID of the channel the thread belongs to." +msgstr "" + +#: 56d86a0d67224029bf5c3db6a2af6a27 discord.raw_models.RawThreadUpdateEvent:31 +#: of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 4852d50180674582ac786b3068cb2017 discord.raw_models.RawThreadUpdateEvent:37 +#: of +msgid "The thread, if it could be found in the internal cache." +msgstr "" + +#: 150d503109894b5b87c17829594f7b55 discord.raw_models.RawThreadUpdateEvent:39 +#: of +msgid ":class:`discord.Thread` | None" +msgstr "" + +#: a64458b6da9e449597a58d378bf385d3 +#: discord.raw_models.RawThreadMembersUpdateEvent:1 of +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "" + +#: b031a4ae017f4ad49cba8881b024de8e +#: discord.raw_models.RawThreadMembersUpdateEvent:7 of +msgid "The ID of the thread that was updated." +msgstr "" + +#: b0e8229bc54c408f913f222cb0c8db77 +#: discord.raw_models.RawThreadMembersUpdateEvent:13 of +msgid "The ID of the guild the thread is in." +msgstr "" + +#: cd08b36b1ca744f0bfe69607abde1f45 +#: discord.raw_models.RawThreadMembersUpdateEvent:19 of +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "" + +#: a30e73121303499994de20efcdb448ea +#: discord.raw_models.RawThreadMembersUpdateEvent:25 of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 1655071d2beb439380bead37316806c7 discord.raw_models.RawAuditLogEntryEvent:1 +#: of +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "" + +#: 83c9b3e36e7d46d79ffc9f4d380a4e5d discord.raw_models.RawAuditLogEntryEvent:7 +#: of +msgid "The action that was done." +msgstr "" + +#: 3ed7e6ec47a54369b7d127872cd53b81 discord.raw_models.RawAuditLogEntryEvent:9 +#: of +msgid ":class:`AuditLogAction`" +msgstr "" + +#: 3ed3876549944886804d62c1af6c5744 discord.raw_models.RawAuditLogEntryEvent:13 +#: of +msgid "The entry ID." +msgstr "" + +#: c71f08f112ca4b1a8bbccbaf514cdac1 discord.raw_models.RawAuditLogEntryEvent:19 +#: of +msgid "The ID of the guild this action came from." +msgstr "" + +#: 7738f7e468004076bc8ec1e83b91154f discord.raw_models.RawAuditLogEntryEvent:25 +#: of +msgid "The ID of the user who initiated this action." +msgstr "" + +#: 0f17e043ff2f4e349a147254f66412cc discord.raw_models.RawAuditLogEntryEvent:31 +#: of +msgid "The ID of the target that got changed." +msgstr "" + +#: 8b94f30533de478d925794511806a750 discord.raw_models.RawAuditLogEntryEvent:37 +#: of +msgid "The reason this action was done." +msgstr "" + +#: 18a298908f194ee0ab2a9223ede03164 discord.raw_models.RawAuditLogEntryEvent:43 +#: of +msgid "The changes that were made to the target." +msgstr "" + +#: 1a572cf26ed44102b41930008de5b09b discord.raw_models.RawAuditLogEntryEvent:49 +#: of +msgid "" +"Extra information that this entry has that might be useful. For most " +"actions, this is ``None``. However, in some cases it contains extra " +"information. See :class:`AuditLogAction` for which actions have this " +"field filled out." +msgstr "" + +#: 56c299547cc748adba656f35026ca822 discord.raw_models.RawAuditLogEntryEvent:54 +#: of +msgid "Any" +msgstr "" + +#: discord.raw_models.RawAuditLogEntryEvent:58 eac6487fc7d14ee89b983b7dd83f84f8 +#: of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: 1cde686644bc47ec941a3e368aa2874a +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent:1 of +msgid "" +"Represents the payload for an :func:`on_raw_voice_channel_status_update` " +"event." +msgstr "" + +#: 5fffb927d5c44084b4bff9b07be28069 +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent:7 of +msgid "The channel ID where the voice channel status update originated from." +msgstr "" + +#: 17207373f8ab4b6084c706e3f9052280 +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent:13 of +msgid "The guild ID where the voice channel status update originated from." +msgstr "" + +#: 285d830f117547f699bbf453aa4268b7 +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent:19 of +msgid "The new new voice channel status." +msgstr "" + +#: c6e09cd5881145a5b95550e3f54faf4f +#: discord.raw_models.RawVoiceChannelStatusUpdateEvent:25 of +msgid "" +"The raw data sent by the `gateway " +"`_." +msgstr "" + +#: ../../api/models.rst:577 eae4e206e45a463f80727bc3e3eee504 +msgid "Webhooks" +msgstr "" + +#: 657eceaa87cd4bc9b144d286afe67c5e +#: discord.webhook.async_.PartialWebhookGuild:1 of +msgid "Represents a partial guild for webhooks." +msgstr "" + +#: 0e1a2663052f464386761f009fafc287 +#: discord.webhook.async_.PartialWebhookChannel:3 +#: discord.webhook.async_.PartialWebhookGuild:3 of +msgid "These are typically given for channel follower webhooks." +msgstr "" + +#: 63fdae50745f4e43bf58c07d12c4ed00 +#: discord.webhook.async_.PartialWebhookChannel:1 of +msgid "Represents a partial channel for webhooks." +msgstr "" + +#~ msgid "" +#~ "A list of features that the guild" +#~ " has. The features that a guild " +#~ "can have are subject to arbitrary " +#~ "change by Discord. You can find a" +#~ " catalog of guild features `here " +#~ "`_." +#~ msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/sinks.po b/docs/locales/en/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..6466bc0cc0 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/sinks.po @@ -0,0 +1,190 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/sinks.rst:4 da5ec43759ab47fdb55072ef2d386b77 +msgid "Sinks" +msgstr "" + +#: ../../api/sinks.rst:7 69ccca52dd344eba81f86600350345de +msgid "Core" +msgstr "" + +#: 0142ecf442b940a78a28dc08a1ce93cb discord.sinks.core.Filters:1 of +msgid "Filters for :class:`~.Sink`" +msgstr "" + +#: ../../api/sinks.rst 378afe544b724d8f90393291fdc85369 +#: fab663f2aebe45c48cdc3b54b4e31005 +msgid "Parameters" +msgstr "" + +#: 0703f5343d364e319360f8c62ab449e0 discord.sinks.core.Filters:5 of +msgid "Container of all Filters." +msgstr "" + +#: discord.sinks.core.Sink:1 eb6c1cd03ec9420db458b64f82b0e54d of +msgid "A sink \"stores\" recorded audio data." +msgstr "" + +#: discord.sinks.core.Sink:3 f84d8b866bf9422c8920ca48f7442fd7 of +msgid "Can be subclassed for extra customizablilty." +msgstr "" + +#: 46f6384351cd4250abdc80e42a256c2f discord.sinks.core.Sink:6 of +msgid "" +"It is recommended you use the officially provided sink classes, such as " +":class:`~discord.sinks.WaveSink`." +msgstr "" + +#: 7e2733f87658404cba7b6fe06dd64f29 discord.sinks.core.Sink:10 of +msgid "just replace the following like so: ::" +msgstr "" + +#: ../../api/sinks.rst 0132a5cc6ea140e993f0c67c578b8564 +#: 3a24bec2087b4fd2828ce8bcf7bfcce6 49d6e90fbe7345e296ddb91c800584da +#: 7640928653394b188296110e0ec788fb 77e45956053343f4a15cfc2f1834d79a +#: 817268b268934544944a1cdba3c85456 98ec647e22e34424b43cef44e33d1f5d +#: a75ba41f4c624334b98deb28f10ff722 db671b98041f42c69d09637b747da230 +#: e41d37b52642478ba8b5960322091c62 e7eb3ded3c57413c9ee86ee3409252f9 +msgid "Raises" +msgstr "" + +#: 2750e2c115da40ecaf706f78f45897a8 discord.sinks.core.Sink:20 of +msgid "An invalid encoding type was specified." +msgstr "" + +#: 01169f852b5a4038ae7d519f251930b4 1588985c20834c0ba74aaef6231a58bd +#: 45b9ef0215544a9d860e550bc4ccb921 4e7509b88ea04946bc020fc4de77c0b6 +#: 7d38b47a020b40cdb95c6af18cc1d6d1 b356e78d934c4cd9993fc61cbe1af4e9 +#: bea313c3e6fa42beba3ab64e756ce223 discord.sinks.core.Sink:21 +#: discord.sinks.m4a.M4ASink.format_audio:3 +#: discord.sinks.mka.MKASink.format_audio:3 +#: discord.sinks.mkv.MKVSink.format_audio:3 +#: discord.sinks.mp3.MP3Sink.format_audio:3 +#: discord.sinks.mp4.MP4Sink.format_audio:3 +#: discord.sinks.ogg.OGGSink.format_audio:3 +#: discord.sinks.wave.WaveSink.format_audio:3 fc1928b8934a4555af9965d0c2317ea2 +#: of +msgid "Audio may only be formatted after recording is finished." +msgstr "" + +#: ce7e04b04b104eaf98b124fe959e2088 discord.sinks.core.Sink.get_all_audio:1 of +msgid "Gets all audio files." +msgstr "" + +#: 377a9171544b4e1a90582106b504271e discord.sinks.core.Sink.get_user_audio:1 of +msgid "Gets the audio file(s) of one specific user." +msgstr "" + +#: 8c98ad6ace2a490eb332d994e20ee698 discord.sinks.core.AudioData:1 of +msgid "" +"Handles data that's been completely decrypted and decoded and is ready to" +" be saved to file." +msgstr "" + +#: 691bcb7057ff4b668a6924f1567447bb discord.sinks.core.AudioData.write:1 of +msgid "Writes audio data." +msgstr "" + +#: 156dcea554294f688d2303b360e8eeb5 c514847e5b65402d9c119e0fba871115 +#: discord.sinks.core.AudioData.cleanup:3 discord.sinks.core.AudioData.write:3 +#: of +msgid "The AudioData is already finished writing." +msgstr "" + +#: 8878b11f4bb44242b182551f312611e0 discord.sinks.core.AudioData.cleanup:1 of +msgid "Finishes and cleans up the audio data." +msgstr "" + +#: bcc4d0731438457bb3b42134f2de664d discord.sinks.core.AudioData.on_format:1 of +msgid "Called when audio data is formatted." +msgstr "" + +#: 4328bd3adc894e768723c4be7aa942e0 discord.sinks.core.AudioData.on_format:3 of +msgid "The AudioData is still writing." +msgstr "" + +#: 570b9f01ec964f44a6f4e780cd307291 discord.sinks.core.RawData:1 of +msgid "" +"Handles raw data from Discord so that it can be decrypted and decoded to " +"be used." +msgstr "" + +#: ../../api/sinks.rst:23 169639fab74b449ba82498b86bb44876 +msgid "Sink Classes" +msgstr "" + +#: 433ebcc0d30f4d9fbd220456a7abbbeb discord.sinks.wave.WaveSink:1 of +msgid "A special sink for .wav(wave) files." +msgstr "" + +#: 08a57363e08c4ea6a322cda7ca882dd2 285ad63cdb584ebd94d7e557e5314619 +#: 665fa3dc297f4f22b0369bd5cbd3b255 6e115579af2240c3ada2216ac756d626 +#: 8edc17c4981b4fc6881cb2c4ccca081d c5088f6657d347dab6bb07ea09dccd7d +#: discord.sinks.m4a.M4ASink.format_audio:1 +#: discord.sinks.mka.MKASink.format_audio:1 +#: discord.sinks.mkv.MKVSink.format_audio:1 +#: discord.sinks.mp3.MP3Sink.format_audio:1 +#: discord.sinks.mp4.MP4Sink.format_audio:1 +#: discord.sinks.ogg.OGGSink.format_audio:1 +#: discord.sinks.wave.WaveSink.format_audio:1 f5b24a38289c496a9f4d55948337d7b2 +#: of +msgid "Formats the recorded audio." +msgstr "" + +#: 0d6886be966b465182e4ac7708898391 47a74f69bb6540ef9f21dfaa43684d36 +#: 6bad2ce294a342759f75493790b102b5 9fa092f5912b4cc794dc15ec1615bb3c +#: b4bafc34899b43ada086ab5e6ca5064b bee146d8a4ce454ca6ab676a1f751bdd +#: discord.sinks.m4a.M4ASink.format_audio:4 +#: discord.sinks.mka.MKASink.format_audio:4 +#: discord.sinks.mkv.MKVSink.format_audio:4 +#: discord.sinks.mp3.MP3Sink.format_audio:4 +#: discord.sinks.mp4.MP4Sink.format_audio:4 +#: discord.sinks.ogg.OGGSink.format_audio:4 +#: discord.sinks.wave.WaveSink.format_audio:4 f1da7192debb4976a99f255ff8f3d860 +#: of +msgid "Formatting the audio failed." +msgstr "" + +#: d0b8264ce4284da5b4f00d3bd6fc0b27 discord.sinks.mp3.MP3Sink:1 of +msgid "A special sink for .mp3 files." +msgstr "" + +#: 12c1601a144f47c2b658cdb1638c2a1a discord.sinks.mp4.MP4Sink:1 of +msgid "A special sink for .mp4 files." +msgstr "" + +#: discord.sinks.m4a.M4ASink:1 ec93398e6fab40c3963078ee6efec8fd of +msgid "A special sink for .m4a files." +msgstr "" + +#: caa9e491104c47bf87dbe04c48e5107d discord.sinks.mkv.MKVSink:1 of +msgid "A special sink for .mkv files." +msgstr "" + +#: 90d4defae7c241bbb26aeec83cfe661e discord.sinks.mka.MKASink:1 of +msgid "A special sink for .mka files." +msgstr "" + +#: 3bf2e13e0ec743b19e3d9c47ef3fc435 discord.sinks.ogg.OGGSink:1 of +msgid "A special sink for .ogg files." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/ui_kit.po b/docs/locales/en/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..7802407342 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,979 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/ui_kit.rst:4 cef9c4161ab944be895b73e34a1e959e +msgid "Bot UI Kit" +msgstr "" + +#: ../../api/ui_kit.rst:6 114eb7a552d7423185c807d0039a9d70 +msgid "The library has helpers to help create component-based UIs." +msgstr "" + +#: ../../api/ui_kit.rst:10 795a5badeccd4169beae11dbdaee8acf +msgid "Shortcut decorators" +msgstr "" + +#: 7169fb06bff6465a96fab24a71cd6cdc discord.ui.button.button:1 of +msgid "A decorator that attaches a button to a component." +msgstr "" + +#: 0a98301d144642f3af77faae9044333b discord.ui.button.button:3 of +msgid "" +"The function being decorated should have three parameters, ``self`` " +"representing the :class:`discord.ui.View`, the :class:`discord.ui.Button`" +" being pressed and the :class:`discord.Interaction` you receive." +msgstr "" + +#: a581c27589c34afeb3bc17c4b0000164 discord.ui.button.button:9 of +msgid "" +"Premium and link buttons cannot be created with this decorator. Consider " +"creating a :class:`Button` object manually instead. These types of " +"buttons do not have a callback associated since Discord doesn't handle " +"them when clicked." +msgstr "" + +#: ../../api/ui_kit.rst 0eb33b6aec414778a7e06b676fd526f3 +#: 0fde91581db244e9a38eaa1298517198 16f62a630b6c42649b13ec913a13f066 +#: 196110ed1f174bbc90e8e7f376d23b2d 26b856f134bd43d89d7bd04e9508cec1 +#: 31274878cbf8429eb4cbbaab562f687a 3310aa20be5a488690708eb9e3dd0fcc +#: 402dffb461e445cba56e4e1afcc98a38 53499c7c38dd43799b5780dfd21b3b02 +#: 68f0e04b65fd43ccad6348c57bad93ba 7075cd32ada643e1afe2b1b1e2540a78 +#: 7c40b29c39174637a4378923ab36d01b 7f8342f4fa72464f92c9c3cffcfcbda4 +#: 87b1f760ee304fdcb8d3158dad1f9687 89289390586d4a4cab63303506125e33 +#: 8ca8779b464a40069954fb8439451723 99b19d97768746f6aad0d4c9f04602fc +#: a32d29d036704b3aadf3893a40c1fd58 a5c25727efd240d7b3b1f5647ed24ce6 +#: bb7676b81f53410c845e5d60a69a03a4 beefc8c24f164c63a80136a8c5e5e925 +#: ca073ce612814d8abbb2857a4f7c31cc d1dc3c0514e641c29d06f205b7feefc9 +#: db02240fc27a4c479381b1273800b086 dce921ab81d64865ba38df542fa4386f +#: dde97b21e9124139901056550166fb09 de7bcf10bc5947e99f4931c26c17c8c2 +#: e6eacbc6685647afaa993a9e034c2c9e ee24240ba8fe4d32b79a3dbd84647890 +#: f4f99caceafc4e0b857149cb71c15de8 ffbafb20b66d44b193637453dd85a141 +msgid "Parameters" +msgstr "" + +#: discord.ui.button.button:15 e96eba4f6dc741feb44abc732fe9b174 of +msgid "The label of the button, if any." +msgstr "" + +#: 180c7d621c86482cb6b43ceaf4fde368 discord.ui.button.button:18 of +msgid "" +"The ID of the button that gets received during an interaction. It is " +"recommended not to set this parameter to prevent conflicts." +msgstr "" + +#: ac7a0de67602471fb341ca7230448a62 discord.ui.button.button:22 of +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "" + +#: 48333a30942940d4bf4fad7e72e2aa33 discord.ui.button.button:25 of +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "" + +#: c138b390419e4f4194bf27c7e5da9e82 discord.ui.button.button:28 of +msgid "" +"The emoji of the button. This can be in string form or a " +":class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "" + +#: 7226675e37a14baba12bf447b1d4a11e c7feafdb9ed34fceaaf137f89a8fad12 +#: discord.ui.button.Button:28 discord.ui.button.button:32 of +msgid "" +"The relative row this button belongs to. A Discord component can only " +"have 5 rows. By default, items are arranged automatically into those 5 " +"rows. If you'd like to control the relative positioning of the row then " +"passing an index is advised. For example, row=1 will show up before " +"row=2. Defaults to ``None``, which is automatic ordering. The row number " +"must be between 0 and 4 (i.e. zero indexed)." +msgstr "" + +#: ../../api/ui_kit.rst 4847b534d3c14deba4061b428620b95b +#: 48dd419af0df473f93e5e713b7748656 49a56da0430b431f8c729950b9c55006 +#: 4d44fb14e809440e8f7f915460300e06 5354adfbc0cb4f498d3e07dc0ed3d63c +#: 67269ff08c06462b82bff968f744feea 69ca8cba0b9a411d8e19abd29f7f1ed4 +#: 74e20e420edc4715b4995ab7938b2023 76d49544901349599337569d52510ee9 +#: 787aeffb30b548a38cbe20f0a065de37 79d2f21642c04d77b8bce27656a52f8f +#: 9764068d3bfa4df68a9821f82609e559 9b9d0befc3c64fb9bae98aba514956f0 +#: a0b7807032194a53a18ea1511e4f67d3 ae8f754f5d1a446e866e9443cd10081d +#: b1890cceac0449368e45eca0e3cc227a b96d252eb71246cba2ed7ce0fa575e98 +#: c8632725e7ca4cb18d9ec87f8986c8b6 d36c9dfb2e944d03935e93d529a40227 +#: e1405bf6c4334211ba770e0674f150f9 e5ecb31082e14aa3861296ff5854437a +#: e6251a3992ae4babb7e79b06a31ea11d e6517eae45a3404e899c0bdfabdf3aea +#: f041071e4093433a9cac0a03ce5ab140 f360a94646744e36b9934341c7885ed7 +#: f66852d0a07246dbb596fa01e203d767 f8f0d423ecf24626a1247f45667e5bfd +msgid "Return type" +msgstr "" + +#: 15a54ae1a66549eab609150b6dc69f6b 2e9d4fbae0e54c02b65dcc5c67eccab2 +#: 8b2126220f0a40489f72fbb6541865ab 9d801d79daf4416b8d3f256723d14e9e +#: bedc28aed63d4c35821a3df7a988ceba da524bc45bed4882b24144a6de72d3b3 +#: discord.ui.button.button:39 discord.ui.select.channel_select:19 +#: discord.ui.select.mentionable_select:17 discord.ui.select.role_select:17 +#: discord.ui.select.select:55 discord.ui.select.string_select:19 +#: discord.ui.select.user_select:17 fd120175bb8541ecb5ca7146883b6156 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, " +"bound\\= Item\\)\\, " +"\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, " +"bound\\= Item\\)\\, " +"\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr "" + +#: 23ebf0c41e1a46c9b96eaaed21d7b029 discord.ui.select.select:1 of +msgid "A decorator that attaches a select menu to a component." +msgstr "" + +#: 00b2b61db8b84ae2b5053febef93fed2 discord.ui.select.select:3 of +msgid "" +"The function being decorated should have three parameters, ``self`` " +"representing the :class:`discord.ui.View`, the :class:`discord.ui.Select`" +" being pressed and the :class:`discord.Interaction` you receive." +msgstr "" + +#: 1a447e447e4947d4ab6031c89b6fa2c8 discord.ui.select.select:7 of +msgid "" +"In order to get the selected items that the user has chosen within the " +"callback use :attr:`Select.values`." +msgstr "" + +#: 5178e617c8584c74ae12204643b4cc51 discord.ui.select.select:12 of +msgid "Creating select menus of different types is now supported." +msgstr "" + +#: acf48d755e5d47f7b645a78fdecb9b9d d47cd55a76154d2c8296ed8d52f4fe49 +#: discord.ui.select.Select:16 discord.ui.select.select:15 of +msgid "" +"The type of select to create. Must be one of " +":attr:`discord.ComponentType.string_select`, " +":attr:`discord.ComponentType.user_select`, " +":attr:`discord.ComponentType.role_select`, " +":attr:`discord.ComponentType.mentionable_select`, or " +":attr:`discord.ComponentType.channel_select`." +msgstr "" + +#: 3e3120d48b4f41869c6ac4d4a11ae788 46f50cc5d1d241dea802bc7c51e5b497 +#: cf7265a79f204a609bac4e3eeac79c31 discord.ui.Select.placeholder:1 +#: discord.ui.select.Select:26 discord.ui.select.select:21 of +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "" + +#: c98d6ddb36f4423f855f14a8bcaa452a discord.ui.select.select:24 of +msgid "" +"The ID of the select menu that gets received during an interaction. It is" +" recommended not to set this parameter to prevent conflicts." +msgstr "" + +#: 4bbd3f8002fd49ddb09b40d45fb48efe c01d219ac90b445594257aa88fe409ff +#: discord.ui.select.Select:48 discord.ui.select.select:28 of +msgid "" +"The relative row this select menu belongs to. A Discord component can " +"only have 5 rows. By default, items are arranged automatically into those" +" 5 rows. If you'd like to control the relative positioning of the row " +"then passing an index is advised. For example, row=1 will show up before " +"row=2. Defaults to ``None``, which is automatic ordering. The row number " +"must be between 0 and 4 (i.e. zero indexed)." +msgstr "" + +#: 3ce98d78639e4b00b541949c1579c3e3 discord.ui.select.select:35 of +msgid "" +"The minimum number of items that must be chosen for this select menu. " +"Defaults to 1 and must be between 0 and 25." +msgstr "" + +#: 796b9050ceed4aeba3ead0a0b4cd7d4d 79d61d2476ba400ca5d40331e2c47372 +#: discord.ui.select.Select:33 discord.ui.select.select:39 of +msgid "" +"The maximum number of items that must be chosen for this select menu. " +"Defaults to 1 and must be between 1 and 25." +msgstr "" + +#: discord.ui.select.select:43 eb85122a049d4e5ba8a1ac9fdbd6ee30 of +msgid "" +"A list of options that can be selected in this menu. Only valid for the " +":attr:`discord.ComponentType.string_select` type." +msgstr "" + +#: 21bc9c9ab88c428699fe8f30713d0445 discord.ui.select.select:47 of +msgid "" +"The channel types that should be selectable. Only valid for the " +":attr:`discord.ComponentType.channel_select` type. Defaults to all " +"channel types." +msgstr "" + +#: b1d29705ace44ca3872c15046d01f845 discord.ui.select.select:52 of +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "" + +#: 17e132379dad4798922af2a9271f7996 discord.ui.select.string_select:1 of +msgid "" +"A shortcut for :meth:`discord.ui.select` with select type " +":attr:`discord.ComponentType.string_select`." +msgstr "" + +#: 98d5b30855cc484ca89f0acdd2e1c1e7 discord.ui.select.user_select:1 of +msgid "" +"A shortcut for :meth:`discord.ui.select` with select type " +":attr:`discord.ComponentType.user_select`." +msgstr "" + +#: 69ea07d124aa4d38b3ba835ae1545eac discord.ui.select.role_select:1 of +msgid "" +"A shortcut for :meth:`discord.ui.select` with select type " +":attr:`discord.ComponentType.role_select`." +msgstr "" + +#: 27e5bbcab67147e5b4a8d3f3dd62addc discord.ui.select.mentionable_select:1 of +msgid "" +"A shortcut for :meth:`discord.ui.select` with select type " +":attr:`discord.ComponentType.mentionable_select`." +msgstr "" + +#: 4a0b40ad90df4fbb98a435ebcb063111 discord.ui.select.channel_select:1 of +msgid "" +"A shortcut for :meth:`discord.ui.select` with select type " +":attr:`discord.ComponentType.channel_select`." +msgstr "" + +#: ../../api/ui_kit.rst:34 e335cba9c74a4f6186149901c830873d +msgid "Objects" +msgstr "" + +#: 51e6a1596c4a449f9a81c52ebddaa39e discord.ui.view.View:1 of +msgid "Represents a UI view." +msgstr "" + +#: 16b83c8a92c745c8b399ffc3a72f0772 discord.ui.modal.Modal:3 +#: discord.ui.view.View:3 ef81e6ce764b40beb46714a774f98ce0 of +msgid "This object must be inherited to create a UI within Discord." +msgstr "" + +#: 2f917e72a1924778a62c52611093344a discord.ui.view.View:8 of +msgid "The initial items attached to this view." +msgstr "" + +#: 447ce0fa50bb4a4b82ed7747b529452c 807b8f486b1846ca85e2c78b609a287d +#: discord.ui.modal.Modal:19 discord.ui.view.View:11 of +msgid "" +"Timeout in seconds from last interaction with the UI before no longer " +"accepting input. If ``None`` then there is no timeout." +msgstr "" + +#: 880d25828d79404c9b741921ea68a63e discord.ui.view.View:17 of +msgid "" +"Timeout from last interaction with the UI before no longer accepting " +"input. If ``None`` then there is no timeout." +msgstr "" + +#: 3bb28eba0b6e4a33bf70e6ec23f7f0ce 480fbf0b10fa416d83a78fe20327dbce +#: 869c217ef1fb4f1bb558c0c275307664 90ac82a2463949f8a34cca59e7616985 +#: c0f3dd62da99471bbbb9ef04603415f0 discord.ui.view.View of +msgid "type" +msgstr "" + +#: 974b8aac4f3643038bdeb783f44ea94d discord.ui.view.View:20 of +msgid "Optional[:class:`float`]" +msgstr "" + +#: 8ffab86883334a96855bfa18b8fa7750 discord.ui.view.View:24 of +msgid "The list of children attached to this view." +msgstr "" + +#: 3682451fd9d94fd0b7d5c2f0000be28e discord.ui.view.View:26 of +msgid "List[:class:`Item`]" +msgstr "" + +#: 390e0de65aca4e25bf50e5ae6a456657 discord.ui.view.View:30 of +msgid "" +"Whether to disable the view when the timeout is reached. Defaults to " +"``False``." +msgstr "" + +#: 4d45955820034f44b44354116cd9d1f7 81901a6370e14b888c56185b26f75c5c +#: a20a4215e0ea431eb8fb5f8afaff44f3 discord.ui.view.View:32 +#: discord.ui.view.View.interaction_check:23 discord.ui.view.View.wait:8 of +msgid ":class:`bool`" +msgstr "" + +#: 6e02983bce14423ca205b74a4644a71f discord.ui.view.View:36 of +msgid "" +"The message that this view is attached to. If ``None`` then the view has " +"not been sent with a message." +msgstr "" + +#: 62493226680b4bc3bb9641549d93df08 discord.ui.view.View:39 of +msgid "Optional[:class:`.Message`]" +msgstr "" + +#: discord.ui.view.View:43 fbf42b30d6ff425694a8364a242cd8cc of +msgid "" +"The parent interaction which this view was sent from. If ``None`` then " +"the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "" + +#: discord.ui.view.View:46 f5c57d9fa43643e8a8f9e9a19428dfb3 of +msgid "Optional[:class:`.Interaction`]" +msgstr "" + +#: c392f64e411a44c39ed13c8cc5125f2a discord.ui.view.View.from_message:1 of +msgid "Converts a message's components into a :class:`View`." +msgstr "" + +#: 565b68cabf4b4ba5a94ed222b1bdb166 discord.ui.view.View.from_message:3 of +msgid "" +"The :attr:`.Message.components` of a message are read-only and separate " +"types from those in the ``discord.ui`` namespace. In order to modify and " +"edit message components they must be converted into a :class:`View` " +"first." +msgstr "" + +#: 440ace76c1c843a0a6a9ed83aba2d54c discord.ui.view.View.from_message:9 of +msgid "The message with components to convert into a view." +msgstr "" + +#: b159c65de392440fac77f0ec9989f160 discord.ui.view.View.from_message:12 of +msgid "The timeout of the converted view." +msgstr "" + +#: ../../api/ui_kit.rst 28a3de2a47e54084b6f9a9b85e58ffda +#: bdf962475cee47d4ae16bdb523f4bdd4 cebca2833179445fb4e661e106d5cc43 +#: f4f15b52c843401587586464af1f15be +msgid "Returns" +msgstr "" + +#: 64c266a59d7f48e683effda66301b9a2 discord.ui.view.View.from_message:15 of +msgid "" +"The converted view. This always returns a :class:`View` and not one of " +"its subclasses." +msgstr "" + +#: 9718cb2e8075430da95c8d900f3ed7d8 discord.ui.view.View.from_message:17 of +msgid ":class:`View`" +msgstr "" + +#: d149c73fdd87423abab34ae033ad3bb2 discord.ui.view.View.add_item:1 of +msgid "Adds an item to the view." +msgstr "" + +#: 651c40af34754b2cbca1243c29182544 discord.ui.view.View.add_item:4 of +msgid "The item to add to the view." +msgstr "" + +#: ../../api/ui_kit.rst 024152e81dad464c8dea98a5986784a2 +#: a8beb6c0b45f41f3802af4f176357b18 acf1210671c64fe0a94869a2ec5777fd +msgid "Raises" +msgstr "" + +#: 0c2448b08bed49c9b3a36391e2dfe223 discord.ui.view.View.add_item:7 of +msgid "An :class:`Item` was not passed." +msgstr "" + +#: 98c9ab34af564e9bb33dff8527ada782 discord.ui.view.View.add_item:8 of +msgid "" +"Maximum number of children has been exceeded (25) or the row the item" +" is trying to be added to is full." +msgstr "" + +#: 06d7048de769474a8bb1a6d4a2dc4250 0f024bf23b354403841f7dde8d71621a +#: 14e8aec6cbaf4828aec5b04bd5b670b0 3c90e45f56914ab3a3afc07c95abbe60 +#: 5ca2db4b948a4526bbe2f7733e9e1540 8a6327ab096844d5ab16d2316f29be99 +#: c0e5fc96f0134c3ca7023b6236f2a3fd c28cd0a90c6243f48951aebe91f5a89c +#: df7ded422fee4a2f97fa22d4a7adac87 discord.ui.modal.Modal.on_error:14 +#: discord.ui.modal.Modal.on_timeout:6 discord.ui.modal.Modal.stop:4 +#: discord.ui.view.View.add_item:10 discord.ui.view.View.clear_items:4 +#: discord.ui.view.View.disable_all_items:7 +#: discord.ui.view.View.enable_all_items:7 +#: discord.ui.view.View.on_check_failure:9 discord.ui.view.View.on_error:18 +#: discord.ui.view.View.on_timeout:6 discord.ui.view.View.remove_item:7 +#: discord.ui.view.View.stop:6 e8a673c7ef7448448155a519934deb7a +#: f0b9b386cb7f440d9ded8cbb48862408 fe97129bcb4d4e258ff0beb4c6390702 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 0fab940276ef4a7dae31257c2ac244a7 discord.ui.view.View.remove_item:1 of +msgid "Removes an item from the view." +msgstr "" + +#: 59807342ce744d8d886b5e2235ab0e2b discord.ui.view.View.remove_item:4 of +msgid "The item to remove from the view." +msgstr "" + +#: 3b8def86b7f849908a1d6f20d2c80e17 discord.ui.view.View.clear_items:1 of +msgid "Removes all items from the view." +msgstr "" + +#: 23615972dcdb414abf5f848a9a2ee1ee discord.ui.view.View.get_item:1 of +msgid "" +"Get an item from the view with the given custom ID. Alias for " +"`utils.get(view.children, custom_id=custom_id)`." +msgstr "" + +#: cbb9b6731f96427fb3201cdf6793994c discord.ui.view.View.get_item:4 of +msgid "The custom_id of the item to get" +msgstr "" + +#: 98fa144afc194f7d8515bd447103d0a2 discord.ui.view.View.get_item:7 of +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "" + +#: 3d6d6e176c7f414092ad530cfe34fc1b discord.ui.view.View.get_item:8 of +msgid "Optional[:class:`Item`]" +msgstr "" + +#: 1a6fca5291324410a90c948c1a5ba32b 24255cea69ed481396a70f77f164a517 +#: 34fbdd6619144a00b71dc4a9dfbdf301 69e9487f1d3f4f93adcadb433feb339b +#: 770fffa13a5f46cca1d7d0a054cb695f 8b341b66e04245dd9e4f5a2f1f5e69eb +#: cca85a1077c94196a7736c41aeb0a7f5 discord.ui.item.Item.callback:1 +#: discord.ui.modal.Modal.callback:1 discord.ui.modal.Modal.on_error:1 +#: discord.ui.modal.Modal.on_timeout:1 discord.ui.view.View.interaction_check:1 +#: discord.ui.view.View.on_error:1 discord.ui.view.View.on_timeout:1 +#: e969a0150e5149c3b6be69868a5dcd77 e983730f42794becb4c575857dd306d4 of +msgid "|coro|" +msgstr "" + +#: 21ac5f9f249141399e37682106a8d163 discord.ui.view.View.interaction_check:3 of +msgid "" +"A callback that is called when an interaction happens within the view " +"that checks whether the view should process item callbacks for the " +"interaction." +msgstr "" + +#: a5732571b1b646038917e1dd222eb895 discord.ui.view.View.interaction_check:6 of +msgid "" +"This is useful to override if, for example, you want to ensure that the " +"interaction author is a given user." +msgstr "" + +#: cac332ec85fd4e678581cb07369b113e discord.ui.view.View.interaction_check:9 of +msgid "The default implementation of this returns ``True``." +msgstr "" + +#: 6dd6d3e0de674b37b56463799d4e5796 discord.ui.view.View.interaction_check:11 +#: of +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "" + +#: a6e651afda894717a3c7eeb4b0efc534 discord.ui.view.View.interaction_check:15 +#: of +msgid "" +"If an exception occurs within the body then the check is considered a " +"failure and :meth:`on_error` is called." +msgstr "" + +#: 1a432a43d45d41dd97862b1f0f19af7e 79b0908f8b1e4c90a0dbb2d347d1dd8c +#: discord.ui.view.View.interaction_check:19 +#: discord.ui.view.View.on_check_failure:6 of +msgid "The interaction that occurred." +msgstr "" + +#: 44b3331c42c24dd0871d7b6a7ac96dbe discord.ui.view.View.interaction_check:22 +#: of +msgid "Whether the view children's callbacks should be called." +msgstr "" + +#: 0bb24bab4e6440df876e7c91b96d1b76 discord.ui.view.View.on_timeout:3 of +msgid "" +"A callback that is called when a view's timeout elapses without being " +"explicitly stopped." +msgstr "" + +#: 27d3ccf10dd24da88cdb7c2a3974f10c discord.ui.view.View.on_check_failure:1 of +msgid "" +"|coro| A callback that is called when a :meth:`View.interaction_check` " +"returns ``False``. This can be used to send a response when a check " +"failure occurs." +msgstr "" + +#: 0d75dddb92724f969f33febce6cfc3c3 discord.ui.view.View.on_error:3 of +msgid "" +"A callback that is called when an item's callback or " +":meth:`interaction_check` fails with an error." +msgstr "" + +#: 875e47bef4214d1c8f6c288059a65b3b 99e74ef3f5f9466680a35e8deda8f23c +#: discord.ui.modal.Modal.on_error:5 discord.ui.view.View.on_error:6 of +msgid "The default implementation prints the traceback to stderr." +msgstr "" + +#: 2238043a3f944ee984d06ec6486cb852 93edd4d9bd60459aa302fa40cea76916 +#: discord.ui.modal.Modal.on_error:8 discord.ui.view.View.on_error:9 of +msgid "The exception that was raised." +msgstr "" + +#: 5709e63245134c1cb16bcce2366bfb46 discord.ui.view.View.on_error:12 of +msgid "The item that failed the dispatch." +msgstr "" + +#: 24dd9c6954ba4b6f8baae26063abdfe1 93c2f8cbaba342cb942380efba1bcd38 +#: discord.ui.modal.Modal.on_error:11 discord.ui.view.View.on_error:15 of +msgid "The interaction that led to the failure." +msgstr "" + +#: a29f8a3d5bdb4aec85165d9368bcf74a discord.ui.view.View.stop:1 of +msgid "Stops listening to interaction events from this view." +msgstr "" + +#: d55bc70ac28e4e31bcdca08c3436896c discord.ui.view.View.stop:3 of +msgid "This operation cannot be undone." +msgstr "" + +#: acc1711d1e2247a99930ff1d6dc94787 discord.ui.view.View.is_finished:1 of +msgid "Whether the view has finished interacting." +msgstr "" + +#: 3dd17f55957b46f69f70d89163d80c06 5e86d04d3f744d8e85483af1cc8e54f3 +#: discord.ui.modal.Modal.wait:4 discord.ui.view.View.is_dispatching:4 +#: discord.ui.view.View.is_finished:4 discord.ui.view.View.is_persistent:7 +#: f3f660e1e53145d7adcbd25a47dc519d ff0aea3ebb2f44c0874d3d169b0fc412 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 201608b51af64b808fe79c226b6a3ff4 discord.ui.view.View.is_dispatching:1 of +msgid "Whether the view has been added for dispatching purposes." +msgstr "" + +#: a7c94233f3944c7f91a2fddae3d48713 discord.ui.view.View.is_persistent:1 of +msgid "Whether the view is set up as persistent." +msgstr "" + +#: af57e2f1c3d241c79c75bc007dc6f9e6 discord.ui.view.View.is_persistent:3 of +msgid "" +"A persistent view has all their components with a set ``custom_id`` and a" +" :attr:`timeout` set to ``None``." +msgstr "" + +#: a350e14ae6094bf9a45da3bba4581ba1 discord.ui.view.View.wait:1 of +msgid "Waits until the view has finished interacting." +msgstr "" + +#: 12f9450397a54aaebb6c26b3063d3ffa discord.ui.view.View.wait:3 of +msgid "" +"A view is considered finished when :meth:`stop` is called, or it times " +"out." +msgstr "" + +#: c95bfa514bbd4d9590e3220c31c0c6c5 discord.ui.view.View.wait:6 of +msgid "" +"If ``True``, then the view timed out. If ``False`` then the view finished" +" normally." +msgstr "" + +#: 314de3c4bde54717b2849331287e748e discord.ui.view.View.disable_all_items:1 of +msgid "Disables all items in the view." +msgstr "" + +#: 4072920264ba4042a24a4149853585d3 discord.ui.view.View.disable_all_items:4 of +msgid "A list of items in `self.children` to not disable from the view." +msgstr "" + +#: bf174030a36b4632b1cf6e1fc5fe4038 discord.ui.view.View.enable_all_items:1 of +msgid "Enables all items in the view." +msgstr "" + +#: 156efa1c1fbf4918af0b9e99b8099feb discord.ui.view.View.enable_all_items:4 of +msgid "A list of items in `self.children` to not enable from the view." +msgstr "" + +#: 20e96e2aa54a45bfa5ad1c493abb7dd9 discord.ui.item.Item:1 of +msgid "Represents the base UI item that all UI components inherit from." +msgstr "" + +#: 9a2765dfcfb646e084e717be3bed4b85 discord.ui.item.Item:3 of +msgid "The current UI items supported are:" +msgstr "" + +#: 0b1b92a5722e4ab398df7f16d1135628 discord.ui.item.Item:5 of +msgid ":class:`discord.ui.Button`" +msgstr "" + +#: b7356742ae8c4acebf71b6dc048626a3 discord.ui.item.Item:6 of +msgid ":class:`discord.ui.Select`" +msgstr "" + +#: 718197200d854b84879705c60c0d53e8 82ecd677a8ae42efab9547d6e0c64ca6 +#: discord.ui.Button.view:1 discord.ui.Item.view:1 discord.ui.Select.view:1 +#: eece3a9744f2405a8e83f30be0252a22 of +msgid "The underlying view for this item." +msgstr "" + +#: 055cf67df1e94d0592bbc5d22013c323 c8cd5c6c52b2432086a54d8ebaf9dade +#: discord.ui.item.Item.callback:3 e3934636086a444ea2d8e67a258834cb of +msgid "The callback associated with this UI item." +msgstr "" + +#: 253657b63da14170bec87bc80bc4c38a 30a9c108e9d24604ac60bf1e911af72d +#: 94fcbdc6f4a7448fbbebfa233bf60049 discord.ui.item.Item.callback:5 of +msgid "This can be overridden by subclasses." +msgstr "" + +#: 2dfbae61c770488cbbe415c1fe433949 9083cdfe2ae24b2f950208892462f7bb +#: c4a0d0cb7af54912ad4f4e1cfb4aff78 discord.ui.item.Item.callback:8 of +msgid "The interaction that triggered this UI item." +msgstr "" + +#: d3ed8c14fbc14d40be6691f7709cfe09 discord.ui.button.Button:1 of +msgid "Represents a UI button." +msgstr "" + +#: 3e0672a1b2d64d418a64a8f5033f2572 5f26973a49434bcf9f88e06a44a7629c +#: discord.ui.Button.style:1 discord.ui.button.Button:6 of +msgid "The style of the button." +msgstr "" + +#: bc22a9734365447c827b37fcf29a072c discord.ui.button.Button:9 of +msgid "" +"The ID of the button that gets received during an interaction. If this " +"button is for a URL, it does not have a custom ID." +msgstr "" + +#: 47abb7d1e6094637a97fa3df6a95a8e8 discord.ui.Button.url:1 +#: discord.ui.button.Button:13 f2929e3d104a48f08a200c52f438e072 of +msgid "The URL this button sends you to." +msgstr "" + +#: 1800abfd6ac44f59ae3181e5274b405c 2eb02a2f95694738aa23bf512070f586 +#: discord.ui.Button.disabled:1 discord.ui.button.Button:16 of +msgid "Whether the button is disabled or not." +msgstr "" + +#: 3aa00fa1b0524f57b5984d7f80d72c47 discord.ui.button.Button:19 of +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "" + +#: 3faa2a41847245938c5f2b330a599f40 74f13428fd0a40f39ee7531329565abf +#: discord.ui.Button.emoji:1 discord.ui.button.Button:22 of +msgid "The emoji of the button, if available." +msgstr "" + +#: bf020129ab2a4825b8dfff6074481348 discord.ui.Button.sku_id:1 +#: discord.ui.button.Button:25 e113ed73331e4e739300825d1691dd3f of +msgid "The ID of the SKU this button refers to." +msgstr "" + +#: discord.ui.Button.custom_id:1 e6884781decb43808438d3e9817dd29b of +msgid "The ID of the button that gets received during an interaction." +msgstr "" + +#: 47b62faa29564d4f9cc2e549f6863c4d discord.ui.Button.custom_id:3 of +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "" + +#: 24753a72351f419db69690e215d59991 discord.ui.Button.label:1 of +msgid "The label of the button, if available." +msgstr "" + +#: b77915704f4243b096bd2422d12bbb91 discord.ui.select.Select:1 of +msgid "Represents a UI select menu." +msgstr "" + +#: 97252e0d347f4d1f99a112d6313bfe29 discord.ui.select.Select:3 of +msgid "This is usually represented as a drop down menu." +msgstr "" + +#: a8c107f041ed4021944056e98e4b13ee discord.ui.select.Select:5 of +msgid "" +"In order to get the selected items that the user has chosen, use " +":attr:`Select.values`." +msgstr "" + +#: 3c3698117004495d830d4610d318dff0 discord.ui.select.Select:11 of +msgid "" +"Added support for :attr:`discord.ComponentType.string_select`, " +":attr:`discord.ComponentType.user_select`, " +":attr:`discord.ComponentType.role_select`, " +":attr:`discord.ComponentType.mentionable_select`, and " +":attr:`discord.ComponentType.channel_select`." +msgstr "" + +#: 177b62b01c754dd780a7a3d22484d19d discord.ui.select.Select:22 of +msgid "" +"The ID of the select menu that gets received during an interaction. If " +"not given then one is generated for you." +msgstr "" + +#: 4eebabd7f0d44d08a9418e9bb1f45933 discord.ui.select.Select:29 of +msgid "" +"The minimum number of items that must be chosen for this select menu. " +"Defaults to 1 and must be between 1 and 25." +msgstr "" + +#: 16f0527ad7e44487bb43ccfda1c635eb discord.ui.select.Select:37 of +msgid "" +"A list of options that can be selected in this menu. Only valid for " +"selects of type :attr:`discord.ComponentType.string_select`." +msgstr "" + +#: 6f486dcced0f4699b0055a1ecd5b20fc discord.ui.select.Select:41 of +msgid "" +"A list of channel types that can be selected in this menu. Only valid for" +" selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "" + +#: 6ccb04df725844a182a2639c2457b4b5 796771ff82554675a187cca6828acb7c +#: discord.ui.Select.disabled:1 discord.ui.select.Select:45 of +msgid "Whether the select is disabled or not." +msgstr "" + +#: a925d6a693154f52a7d0daad0c744686 discord.ui.Select.custom_id:1 of +msgid "The ID of the select menu that gets received during an interaction." +msgstr "" + +#: 7fd54b986674467abbb28a2ced73f7d5 discord.ui.Select.min_values:1 of +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "" + +#: 3d4f7caeeeee4bf9849176d0b17c48b8 discord.ui.Select.max_values:1 of +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "" + +#: 9e37bef3ace54b26a73d62ad34fee227 discord.ui.Select.channel_types:1 of +msgid "A list of channel types that can be selected in this menu." +msgstr "" + +#: d7b6d5871f744324b100f604ccaa833a discord.ui.Select.options:1 of +msgid "A list of options that can be selected in this menu." +msgstr "" + +#: d623f3b744a14701a12c06831d410d96 discord.ui.select.Select.add_option:1 of +msgid "Adds an option to the select menu." +msgstr "" + +#: 0e6d15c2f7ae4c29986e7dd0f1154f23 discord.ui.select.Select.add_option:3 of +msgid "" +"To append a pre-existing :class:`discord.SelectOption` use the " +":meth:`append_option` method instead." +msgstr "" + +#: 0abfcec6e5a4408a803463cec892a147 discord.ui.select.Select.add_option:7 of +msgid "" +"The label of the option. This is displayed to users. Can only be up to " +"100 characters." +msgstr "" + +#: 067e5b5806b14e759abb23e9b4e860a9 discord.ui.select.Select.add_option:11 of +msgid "" +"The value of the option. This is not displayed to users. If not given, " +"defaults to the label. Can only be up to 100 characters." +msgstr "" + +#: 760c50e112a04650a33bf2c56834b14f discord.ui.select.Select.add_option:15 of +msgid "" +"An additional description of the option, if any. Can only be up to 100 " +"characters." +msgstr "" + +#: 042ab23dcae24d1389ceba8d72659509 discord.ui.select.Select.add_option:19 of +msgid "" +"The emoji of the option, if available. This can either be a string " +"representing the custom or unicode emoji or an instance of " +":class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "" + +#: 27eb750afa664a6ea5cf41996fc3cacc discord.ui.select.Select.add_option:23 of +msgid "Whether this option is selected by default." +msgstr "" + +#: 7eff0916811d4ee2b31c189597562605 discord.ui.select.Select.add_option:26 +#: discord.ui.select.Select.append_option:7 e190a9601c2e43eb88aaeb92ae48a1a1 of +msgid "The number of options exceeds 25." +msgstr "" + +#: 21ff2a9da99b4440929eb12965b39a31 discord.ui.select.Select.append_option:1 of +msgid "Appends an option to the select menu." +msgstr "" + +#: c84b351523dc43f8916def7991ada61a discord.ui.select.Select.append_option:4 of +msgid "The option to append to the select menu." +msgstr "" + +#: b886031b28ca473eb760ef8253f0f94c discord.ui.Select.values:1 of +msgid "" +"List[:class:`str`] | List[:class:`discord.Member` | " +":class:`discord.User`]] | List[:class:`discord.Role`]] | " +"List[:class:`discord.Member` | :class:`discord.User` | " +":class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None:" +" A list of values that have been selected by the user. This will be " +"``None`` if the select has not been interacted with yet." +msgstr "" + +#: b9270d5d3b734251840a9f06eb712027 discord.ui.modal.Modal:1 of +msgid "Represents a UI Modal dialog." +msgstr "" + +#: d1f45a3b27da4ba69428076fe7aa9191 discord.ui.modal.Modal:8 of +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "" + +#: 3534571d450444f3b728e0d7629b67a7 discord.ui.modal.Modal:11 of +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "" + +#: d3eb5f8c8d2e48efad25d189c53c8702 discord.ui.modal.Modal:15 of +msgid "" +"The ID of the modal dialog that gets received during an interaction. Must" +" be 100 characters or fewer." +msgstr "" + +#: 0dfdf29800e044d89a49e207c803d984 discord.ui.Modal.title:1 of +msgid "The title of the modal dialog." +msgstr "" + +#: 06dd349526264f8a9df66fcb7980af2a discord.ui.Modal.children:1 of +msgid "The child components associated with the modal dialog." +msgstr "" + +#: 686f5e94a69c4dec802fd25dc3c06607 discord.ui.Modal.custom_id:1 of +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "" + +#: discord.ui.modal.Modal.callback:3 e78cf6c4472c4a7480c4d9b0b79dd7bf of +msgid "" +"The coroutine that is called when the modal dialog is submitted. Should " +"be overridden to handle the values submitted by the user." +msgstr "" + +#: 4d2a53d8fa0a403eb48b376ee949adf4 discord.ui.modal.Modal.callback:7 of +msgid "The interaction that submitted the modal dialog." +msgstr "" + +#: 2027446701754f3794b31d4a61853116 discord.ui.modal.Modal.add_item:1 of +msgid "Adds an InputText component to the modal dialog." +msgstr "" + +#: 698b0ffc9e8a48dd9571951f9059c7aa discord.ui.modal.Modal.add_item:4 of +msgid "The item to add to the modal dialog" +msgstr "" + +#: c4180d38f8514641b975d5b03834cdd5 discord.ui.modal.Modal.remove_item:1 of +msgid "Removes an InputText component from the modal dialog." +msgstr "" + +#: d745be688d5c42638330608e48ad46a2 discord.ui.modal.Modal.remove_item:4 of +msgid "The item to remove from the modal dialog." +msgstr "" + +#: 10c0de82d08242399b35eb6d50cae8b4 discord.ui.modal.Modal.stop:1 of +msgid "Stops listening to interaction events from the modal dialog." +msgstr "" + +#: 844abb1d49a849aa83ab65a5d6348a36 discord.ui.modal.Modal.wait:1 of +msgid "Waits for the modal dialog to be submitted." +msgstr "" + +#: 39116ddd5b794673b34f99da06860ff1 discord.ui.modal.Modal.on_error:3 of +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "" + +#: 716ac8fecc0a4170a9381cec6a9e2ef9 discord.ui.modal.Modal.on_timeout:3 of +msgid "" +"A callback that is called when a modal's timeout elapses without being " +"explicitly stopped." +msgstr "" + +#: 7cc19a1bcc8d474fb7b13e76fe9325ac discord.ui.input_text.InputText:1 of +msgid "Represents a UI text input field." +msgstr "" + +#: 391f2a60ad1a446b9b869244f8074585 46ab89f240c04a70b1772095a8585e87 +#: discord.ui.InputText.style:1 discord.ui.input_text.InputText:6 of +msgid "The style of the input text field." +msgstr "" + +#: 53336a0409494b719bad7895bab5d8e3 7dd47d92ba824a4d802daaecff316b4a +#: discord.ui.InputText.custom_id:1 discord.ui.input_text.InputText:9 of +msgid "The ID of the input text field that gets received during an interaction." +msgstr "" + +#: 484601a95ea846b98aac3f5c46029167 discord.ui.input_text.InputText:12 of +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "" + +#: bd55b842a60843b5a8cf3c66d215464b discord.ui.input_text.InputText:16 of +msgid "" +"The placeholder text that is shown if nothing is selected, if any. Must " +"be 100 characters or fewer." +msgstr "" + +#: df92d651e5fa4be1bdc8bcae6e21e348 discord.ui.input_text.InputText:20 of +msgid "" +"The minimum number of characters that must be entered. Defaults to 0 and " +"must be less than 4000." +msgstr "" + +#: discord.ui.input_text.InputText:24 e01a7fc394d841cda09f68b1b136d1f1 of +msgid "" +"The maximum number of characters that can be entered. Must be between 1 " +"and 4000." +msgstr "" + +#: 3c95c7168cee4a3ca835e439caf1363f 584df796ba3345878a51cb7cbbd2ad12 +#: discord.ui.InputText.required:1 discord.ui.input_text.InputText:28 of +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "" + +#: 4b3080c9570045559a3b3f095cd7ede9 discord.ui.input_text.InputText:31 of +msgid "" +"Pre-fills the input text field with this value. Must be 4000 characters " +"or fewer." +msgstr "" + +#: 2f957dcccb3d47ae8f08c48419ea39a1 discord.ui.input_text.InputText:35 of +msgid "" +"The relative row this input text field belongs to. A modal dialog can " +"only have 5 rows. By default, items are arranged automatically into those" +" 5 rows. If you'd like to control the relative positioning of the row " +"then passing an index is advised. For example, row=1 will show up before " +"row=2. Defaults to ``None``, which is automatic ordering. The row number " +"must be between 0 and 4 (i.e. zero indexed)." +msgstr "" + +#: 53bbbf9910f6434a86d331c806dc2485 discord.ui.InputText.label:1 of +msgid "The label of the input text field." +msgstr "" + +#: 8532b6f3c3b54fa1adac3f290721896e discord.ui.InputText.placeholder:1 of +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "" + +#: 0841d9930482419a831cb90ca1d54c5f discord.ui.InputText.min_length:1 of +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "" + +#: 6369ccce3bbe48e2ac99040cf9f3a39b discord.ui.InputText.max_length:1 of +msgid "The maximum number of characters that can be entered." +msgstr "" + +#: 7eef7bc7f5434d39baab02325cc1ee35 discord.ui.InputText.value:1 of +msgid "The value entered in the text field." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/utils.po b/docs/locales/en/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..f59470c925 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/utils.po @@ -0,0 +1,819 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/utils.rst:6 b2f28caecc924db59cc0bfda2cf725bb +msgid "Utility Functions" +msgstr "" + +#: discord.utils.find:1 e551a85abadc4f54a50aee8720846873 of +msgid "" +"A helper to return the first element found in the sequence that meets the" +" predicate. For example: ::" +msgstr "" + +#: 9281f3d427c24c5199324b441b758af9 discord.utils.find:6 of +msgid "" +"would find the first :class:`~discord.Member` whose name is 'Mighty' and " +"return it. If an entry is not found, then ``None`` is returned." +msgstr "" + +#: 8e363292f30e4a8c8001b4f2a413d3f5 discord.utils.find:9 of +msgid "" +"This is different from :func:`py:filter` due to the fact it stops the " +"moment it finds a valid entry." +msgstr "" + +#: ../../api/utils.rst 050571d8ce744379a07e80a62aa94870 +#: 1c60fdf432a34262b02af7df598af358 201c050fc14d44f0810c776b20c676a1 +#: 35c87733e7a44f0abc2df0b1b7ea12be 39fbbccdd8e84cfbb3dd88b8836b653e +#: 4182382f67e146d09cff1cbee0f070a5 4b7d6b239eb844b0a07455620184eb3e +#: 55701d63ab734c498871b0f9b16d1c6d 5f476066bcaf4eae9d5ca625db8badcf +#: 6a62a020e98a4607844e6a1d92754354 7a0f3e4603c446ee80192ad6a4c2a275 +#: 8a406056f674402fbda55a5b21a97010 8cd9a4a6430f4d4083e18c8cf19fcf48 +#: 94c84324850542b18825d9ad059adfca 966fc85ec97e4462a08892e3238a8de7 +#: ab4317ac344e484ab6269743deb00536 ac91098994644d18b800c34e375c9751 +#: b2325f4789474a608227307565f07ab8 b2eaf3d8463e41408acf895a2e2016b6 +#: b4007756f3b14b119341325d85618f45 d084c891f79846a089b9181a6952a853 +#: discord.utils.get_or_fetch e235bd384d1b429d8285ad37f2d4a591 +#: f8bf8feea079450998152dcff00e95c1 of +msgid "Parameters" +msgstr "" + +#: 9fa7a6562c90425ba95278c8fb52c572 discord.utils.find:13 of +msgid "A function that returns a boolean-like result." +msgstr "" + +#: bf625ed56ac94e4e9c16375a29c802e4 discord.utils.find:15 of +msgid "The iterable to search through." +msgstr "" + +#: ../../api/utils.rst 02dcab3cde5943e6b6bb51bb073c78d3 +#: 17bce3950d8d41f999cfc959de1c8005 2b2c738b3ccb483f9981028c7a67eb93 +#: 2eb1e3111512438984551edfa1d65489 392e00c2a71444519c80974c8388009c +#: 3c6d52d4b8354e06b6ce0fcf3b086c85 54a28def4381478084624d76e12f9f45 +#: 6284d5d5ec2c4d81b0867bef1a730df0 737183e407f044cfbdeb3520b0664458 +#: 74261c6f68334a9c9832b03ab14c173c 77e1c55771274774bc9154f8b83f65fc +#: 7b6ea48218734b5d9fdac096eb1869e9 8c58ff1ae8594e3885fc52f7276a6393 +#: abf23af895704f009e6e57170df2e2c3 ae19383e27b04626a84993ee6c1dc6c2 +#: b240a7e64248402482220648f8d25d89 b91f8eeb2b9144e8ae6b7ef21d93a779 +#: bfc10ea03c514b9788b46e71d6bb66fd c287aafc3232425da8ccd5cca5f25e2d +#: cf3a47a3633248deb7dd10cf5aabac09 discord.utils.get_or_fetch +#: eaf3c063f00646c9a476d69b6683b0ac eb0e0c983f3c4751858bc3209d71caf8 +#: f43529e1bd0a4b11aa3c197db4892dee of +msgid "Return type" +msgstr "" + +#: 1f9579e8c87641de83f52a1e20a4f328 b44d8109461742229a137bc4ba3bceef +#: discord.utils.find:18 discord.utils.get:40 discord.utils.sleep_until:17 +#: f5452727e7f94436b7f9a74b23e539ab of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\" +" \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: 1bf4fedf587c4b5fbebab4a690e1e45d discord.utils.get:1 of +msgid "" +"A helper that returns the first element in the iterable that meets all " +"the traits passed in ``attrs``. This is an alternative for " +":func:`~discord.utils.find`." +msgstr "" + +#: 7e04bf3fc16d4bdd8184628cad06f709 discord.utils.get:5 of +msgid "" +"When multiple attributes are specified, they are checked using logical " +"AND, not logical OR. Meaning they have to meet every attribute passed in " +"and not one of them." +msgstr "" + +#: discord.utils.get:9 e17e9bba8fca4009a6e42a4491469d8a of +msgid "" +"To have a nested attribute search (i.e. search by ``x.y``) then pass in " +"``x__y`` as the keyword argument." +msgstr "" + +#: 8ce8eccaa5d54963817ec2ccbfcd4897 discord.utils.get:12 of +msgid "" +"If nothing is found that matches the attributes passed, then ``None`` is " +"returned." +msgstr "" + +#: 3521bfb272664038a752ad0c4215b894 3924fb9efa21466e8ad1606af419115d +#: discord.utils.get:16 discord.utils.get_or_fetch:28 of +msgid "Examples" +msgstr "" + +#: discord.utils.get:17 ebf141cbc71a4423aa0f9536eaa183a4 of +msgid "Basic usage:" +msgstr "" + +#: 6eb8c1d8a594429bbe9089eaa7e1ac0a discord.utils.get:23 of +msgid "Multiple attribute matching:" +msgstr "" + +#: discord.utils.get:29 e122d883c8ba4dc9a17922e005f6f3a0 of +msgid "Nested attribute matching:" +msgstr "" + +#: discord.utils.get:36 ece83686d52643cdb6c8406fde3c7285 of +msgid "An iterable to search through." +msgstr "" + +#: discord.utils.get:38 fe5bcc80273940e1a3c9d8a61010ca49 of +msgid "Keyword arguments that denote attributes to search with." +msgstr "" + +#: 047a5517f469416aab2b765c3711e2c9 813a458483fc4657bb6de6015318ea4c +#: discord.utils.get_or_fetch:1 discord.utils.sleep_until:1 of +msgid "|coro|" +msgstr "" + +#: 6059a0ee37c84b7c968bbb3180cd4061 discord.utils.get_or_fetch:3 of +msgid "" +"Attempts to get an attribute from the object in cache. If it fails, it " +"will attempt to fetch it. If the fetch also fails, an error will be " +"raised." +msgstr "" + +#: 99c21646a64544a7a66635fe89a62488 discord.utils.get_or_fetch:7 of +msgid "The object to use the get or fetch methods in" +msgstr "" + +#: 722b7174a36e40d9ad7f4158e4dec713 discord.utils.get_or_fetch:10 of +msgid "" +"The attribute to get or fetch. Note the object must have both a ``get_`` " +"and ``fetch_`` method for this attribute." +msgstr "" + +#: d12701e421f14168a8c064b63bbca7d1 discord.utils.get_or_fetch:13 of +msgid "The ID of the object" +msgstr "" + +#: bebeace681de4c4b82947227d8b175ce discord.utils.get_or_fetch:16 of +msgid "" +"The default value to return if the object is not found, instead of " +"raising an error." +msgstr "" + +#: ../../api/utils.rst 1fec765e695e4742b8b12fe2c089354f +#: 2518caf557d74fe89605eb9ccea011f7 2cada1fbf84b404fb2628ac3f35b19ed +#: 36f7538b818747bba0d09bfdca701d0c 410c4260d88e4f388018236761fc0965 +#: 5a9fd330b31e4c7c8844cdf8c620430b 5e2662c472244430a1c5f927e8ad5742 +#: 6a6845d4e22b436ca97dfac93491f478 7fd927630bce466fb5d388f8d11fcdb4 +#: 8035ef1de15d4808923a8f8d047577bc 80cac2a2e81441b287f204bf5131b09d +#: 96d038e7361c4ea69e5d5fb8389f92dd b9b2c90b77b84eb5805166bc365f005b +#: c1a779448b8c416f9893dcbbbc8b8ae1 c2f878aa2d944761ba684104b753f875 +#: c9e6df7e45324f84a24e0117930a36a1 discord.utils.get_or_fetch +#: e4958f5419174efea8ba08cb566b5fe0 fa6b89a60707475d9f9f29fe605228b4 of +msgid "Returns" +msgstr "" + +#: 44457c74e11f4bcb86593baff8be9dab discord.utils.get_or_fetch:19 of +msgid "The object found or the default value." +msgstr "" + +#: 30b0356fd64d4d41b7a8e2cad0506d17 discord.utils.get_or_fetch of +msgid "Raises" +msgstr "" + +#: discord.utils.get_or_fetch:22 f118d1f7f46440f8b25a14d07b483c94 of +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "" + +#: 044578fd72984f17b794e0b1b3b98deb discord.utils.get_or_fetch:23 of +msgid "Invalid ID for the object" +msgstr "" + +#: a32ef12495724e3592521d9a0b9e1a9a discord.utils.get_or_fetch:24 of +msgid "An error occurred fetching the object" +msgstr "" + +#: 8cf54e47d9784ec687e61aee0ab3215c discord.utils.get_or_fetch:25 of +msgid "You do not have permission to fetch the object" +msgstr "" + +#: 10c9649c25a64cd0a556bf2a290e0a61 discord.utils.get_or_fetch:29 of +msgid "Getting a guild from a guild ID: ::" +msgstr "" + +#: 78c2fa52a132456abfb980a83613441d discord.utils.get_or_fetch:33 of +msgid "" +"Getting a channel from the guild. If the channel is not found, return " +"None: ::" +msgstr "" + +#: discord.utils.oauth_url:1 fe4a3d1e945e470898618bbdafc75294 of +msgid "" +"A helper function that returns the OAuth2 URL for inviting the bot into " +"guilds." +msgstr "" + +#: 6922f1e7d23c4cdca00cb7eb5a3f919f discord.utils.oauth_url:5 of +msgid "The client ID for your bot." +msgstr "" + +#: 53556372d4e94d1fb9ab93f8b9843b8a discord.utils.oauth_url:8 of +msgid "" +"The permissions you're requesting. If not given then you won't be " +"requesting any permissions." +msgstr "" + +#: 96730f42a5cf4cba83bbb44013b202c2 discord.utils.oauth_url:12 of +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "" + +#: 45c5f11bfe894ccaadeefd066064da1f discord.utils.oauth_url:15 of +msgid "An optional valid redirect URI." +msgstr "" + +#: cd3dfb289ce14729873225317a503d8f discord.utils.oauth_url:18 of +msgid "" +"An optional valid list of scopes. Defaults to ``('bot',)``. .. " +"versionadded:: 1.7" +msgstr "" + +#: 0c9e2a41e0514b69a182b945cf09782e discord.utils.oauth_url:18 of +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "" + +#: a58d963b26244f65946d3ce5d9507396 discord.utils.oauth_url:23 of +msgid "" +"Whether to disallow the user from changing the guild dropdown. .. " +"versionadded:: 2.0" +msgstr "" + +#: 33c3ea449b084bbba0bac77189221864 discord.utils.oauth_url:23 of +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "" + +#: dddb7780a58c4d02a9e33a83610456f6 discord.utils.oauth_url:28 of +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "" + +#: 00e022b285884d4caddb3d3d92874d00 1691932c989c44919f5464baf2015706 +#: 35c97cbad62a46f6bbbcc1e7cd22ec91 365ce5216faf447abc535b71d88ddd14 +#: 7f98ae082d164224a29428f14d1e0e6d 9590c8c38e8b4cf78813d5435267d058 +#: 983c0fcb3ba3401e9e63e6128fb8cc0d discord.utils.escape_markdown:21 +#: discord.utils.escape_mentions:18 discord.utils.format_dt:36 +#: discord.utils.oauth_url:29 discord.utils.remove_markdown:19 +#: discord.utils.resolve_invite:8 discord.utils.resolve_template:10 of +msgid ":class:`str`" +msgstr "" + +#: 744cadce5cf74df4b0bff0d86815d9bd discord.utils.remove_markdown:1 of +msgid "A helper function that removes markdown characters." +msgstr "" + +#: dd119c77246d4c808920c17ba3cd4e62 discord.utils.remove_markdown:6 of +msgid "" +"This function is not markdown aware and may remove meaning from the " +"original text. For example, if the input contains ``10 * 5`` then it will" +" be converted into ``10 5``." +msgstr "" + +#: 4f53660c7b22469a88a4b9d71b7e3b7e discord.utils.remove_markdown:10 of +msgid "The text to remove markdown from." +msgstr "" + +#: a8a0bc5695a34e19b9e67a672ebbc601 discord.utils.remove_markdown:13 of +msgid "" +"Whether to leave links alone when removing markdown. For example, if a " +"URL in the text contains characters such as ``_`` then it will be left " +"alone. Defaults to ``True``." +msgstr "" + +#: a07ce7398e2448098358b434ba711f00 discord.utils.remove_markdown:18 of +msgid "The text with the markdown special characters removed." +msgstr "" + +#: 8dfc3e36bdd74417ac27356ec9ecb8d8 discord.utils.escape_markdown:1 of +msgid "A helper function that escapes Discord's markdown." +msgstr "" + +#: 8d7409e0a4bb46fa8923de1e64781442 discord.utils.escape_markdown:4 of +msgid "The text to escape markdown from." +msgstr "" + +#: c185975ffa2e45ba87bba442cd8de2cc discord.utils.escape_markdown:7 of +msgid "" +"Whether to escape the markdown characters as needed. This means that it " +"does not escape extraneous characters if it's not necessary, e.g. " +"``**hello**`` is escaped into ``\\*\\*hello**`` instead of " +"``\\*\\*hello\\*\\*``. Note however that this can open you up to some " +"clever syntax abuse. Defaults to ``False``." +msgstr "" + +#: 671aab37aa2840b3ae919cb1ca5d756f discord.utils.escape_markdown:14 of +msgid "" +"Whether to leave links alone when escaping markdown. For example, if a " +"URL in the text contains characters such as ``_`` then it will be left " +"alone. This option is not supported with ``as_needed``. Defaults to " +"``True``." +msgstr "" + +#: 114cb57eb6be46778579ab942ac8a33c discord.utils.escape_markdown:20 of +msgid "The text with the markdown special characters escaped with a slash." +msgstr "" + +#: 92d7cc35f363403b9589b8ca920d471e discord.utils.escape_mentions:1 of +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "" + +#: 211f6b0061a04ff0b830caab837a2a42 discord.utils.escape_mentions:5 of +msgid "This does not include channel mentions." +msgstr "" + +#: 3bc32d1196534e289a79d7d33bbf3888 discord.utils.escape_mentions:9 of +msgid "" +"For more granular control over what mentions should be escaped within " +"messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "" + +#: 49f4649faee743348413613de50a095a discord.utils.escape_mentions:14 of +msgid "The text to escape mentions from." +msgstr "" + +#: d5330c7ee270424fad80aca4a9bf2687 discord.utils.escape_mentions:17 of +msgid "The text with the mentions removed." +msgstr "" + +#: bfa4bf501e754a7a8e564daf92173adc discord.utils.raw_mentions:1 of +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "" + +#: 2b8d9969221f4e3b842ecd4c5b0ff7ed discord.utils.raw_mentions:6 of +msgid "The string to get user mentions from." +msgstr "" + +#: discord.utils.raw_mentions:9 ff66d05ec8364c5bb85c870a70b62b85 of +msgid "A list of user IDs found in the string." +msgstr "" + +#: 7683abc8d79f4cff8f52ada8f6f537fe b7adc5671b74425aa0dc7620d4e36e60 +#: bf95fb3638ae4162a3ede56e570d575d discord.utils.raw_channel_mentions:10 +#: discord.utils.raw_mentions:10 discord.utils.raw_role_mentions:10 of +msgid "List[:class:`int`]" +msgstr "" + +#: a1bdaec1c08143d09c3070b44e4546db discord.utils.raw_channel_mentions:1 of +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "" + +#: discord.utils.raw_channel_mentions:6 ef551f719496417da562512dee9448b1 of +msgid "The string to get channel mentions from." +msgstr "" + +#: bbe74131d518497b942a440880a52043 discord.utils.raw_channel_mentions:9 of +msgid "A list of channel IDs found in the string." +msgstr "" + +#: 090aaefa36ea42ce8ac9a82def9de7c9 discord.utils.raw_role_mentions:1 of +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "" + +#: aad51dd511f94d5faf5c31f04e4975a3 discord.utils.raw_role_mentions:6 of +msgid "The string to get role mentions from." +msgstr "" + +#: 27df55b1abed40ad926dbd266a1b38ba discord.utils.raw_role_mentions:9 of +msgid "A list of role IDs found in the string." +msgstr "" + +#: 0b0a46fc6d8148818f7321a47619a716 discord.utils.resolve_invite:1 of +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "" + +#: 7852632e3bfc4c818c1f732dabda5b61 discord.utils.resolve_invite:4 of +msgid "The invite." +msgstr "" + +#: 7f73d202fc844dd3bdcdd567127959e0 discord.utils.resolve_invite:7 of +msgid "The invite code." +msgstr "" + +#: 2cdcdcf9d2bf4ffd9559d511ef27090d discord.utils.resolve_template:1 of +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "" + +#: 9a9b237ba8764f16a2735e97b8ba92cd discord.utils.resolve_template:6 of +msgid "The code." +msgstr "" + +#: 382208b003a849349169f0693d92fe85 discord.utils.resolve_template:9 of +msgid "The template code." +msgstr "" + +#: 759a5b88a9474bde911dc404a88a4c7d discord.utils.sleep_until:3 of +msgid "Sleep until a specified time." +msgstr "" + +#: 498fcacad5e542c9b535af7c5ac323bb discord.utils.sleep_until:5 of +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "" + +#: 356a2d3a17414064a0332ba1c9110db4 discord.utils.sleep_until:10 of +msgid "" +"The timestamp in which to sleep until. If the datetime is naive then it " +"is assumed to be local time." +msgstr "" + +#: 46cdf4f783574bbd845beea1f3778f06 discord.utils.sleep_until:14 of +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "" + +#: b2522dd48dfa4bea8fcd24de4d79178d discord.utils.utcnow:1 of +msgid "" +"A helper function to return an aware UTC datetime representing the " +"current time." +msgstr "" + +#: be409753e4dc466f8c77ca040ecaeccb discord.utils.utcnow:3 of +msgid "" +"This should be preferred to :meth:`datetime.datetime.utcnow` since it is " +"an aware datetime, compared to the naive datetime in the standard " +"library." +msgstr "" + +#: 683514a7b0d641748f3c0d70b7009595 discord.utils.utcnow:8 of +msgid "The current aware datetime in UTC." +msgstr "" + +#: 3d3d51edb6044a099f7629a77d8811e9 56bd424aabf44587a6ffcec02aaa5af0 +#: discord.utils.snowflake_time:8 discord.utils.utcnow:9 of +msgid ":class:`datetime.datetime`" +msgstr "" + +#: db52e7d27432444ebc061c6347543444 discord.utils.snowflake_time:1 of +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "" + +#: 1445cceebae94da79f69c7ec2c82b3b8 discord.utils.snowflake_time:4 of +msgid "The snowflake ID." +msgstr "" + +#: 050dbdb6689b438184c22d7a4a9c4e1d discord.utils.snowflake_time:7 of +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "" + +#: 7ddbe7752a5e4bbb8c60ae498b445f46 discord.utils.parse_time:1 of +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "" + +#: 87b7502a035c4f7a94b7b1d26819abef discord.utils.parse_time:4 of +msgid "The timestamp to convert." +msgstr "" + +#: c723db34011f49828d3bb12fed23d6a9 discord.utils.parse_time:7 of +msgid "The converted datetime object." +msgstr "" + +#: aa502e7ed02045ffa2fd6ab5aec5825c discord.utils.parse_time:8 of +msgid "Optional[:class:`datetime.datetime`]" +msgstr "" + +#: c3e3a912c4c747749a63ac1951adc0cd discord.utils.format_dt:1 of +msgid "" +"A helper function to format a :class:`datetime.datetime` for presentation" +" within Discord." +msgstr "" + +#: 014018350bde44a1af3b87f0a256c312 discord.utils.format_dt:3 of +msgid "" +"This allows for a locale-independent way of presenting data using Discord" +" specific Markdown." +msgstr "" + +#: 47c889fce51d4655894d69995fd09e64 discord.utils.format_dt:6 of +msgid "Style" +msgstr "" + +#: 9d872289da7647aa939a4249ed2116fc discord.utils.format_dt:6 of +msgid "Example Output" +msgstr "" + +#: 04d70e88eed741e8b7baec36dedd45a4 discord.utils.format_dt:6 of +msgid "Description" +msgstr "" + +#: d9773363dfdd4110be3202594b90deac discord.utils.format_dt:8 of +msgid "t" +msgstr "" + +#: 01f669f9d718485dabce66ae18c650d8 discord.utils.format_dt:8 of +msgid "22:57" +msgstr "" + +#: 4505dbbdb65643d689966d6ad5241fe9 discord.utils.format_dt:8 of +msgid "Short Time" +msgstr "" + +#: 7e56e826b4c54267b72e5e1333ce0835 discord.utils.format_dt:10 of +msgid "T" +msgstr "" + +#: 1db4a09a55cd497685f2e7e43eb40b7e discord.utils.format_dt:10 of +msgid "22:57:58" +msgstr "" + +#: discord.utils.format_dt:10 e2d7da40ee0a4cefb235c71f5059c1ba of +msgid "Long Time" +msgstr "" + +#: 0398eefcdaa9424e8095fc7c978adb69 discord.utils.format_dt:12 of +msgid "d" +msgstr "" + +#: 44d935830a894d798035c30178c37847 discord.utils.format_dt:12 of +msgid "17/05/2016" +msgstr "" + +#: 88dc24f2daf64b9b82ab2b5ccc55ef52 discord.utils.format_dt:12 of +msgid "Short Date" +msgstr "" + +#: c9ee5decc37b48bcb25bd130c3d5dc5f discord.utils.format_dt:14 of +msgid "D" +msgstr "" + +#: 3c3e68c2c7b34fa8975ca83d45c6e0d0 discord.utils.format_dt:14 of +msgid "17 May 2016" +msgstr "" + +#: 4dab2a15edd0492e8a71438ceb43b912 discord.utils.format_dt:14 of +msgid "Long Date" +msgstr "" + +#: 5efb87fd0d8744eb878c558c2f961a3c discord.utils.format_dt:16 of +msgid "f (default)" +msgstr "" + +#: a0b3a00fe113498a930293b0366f9ac8 discord.utils.format_dt:16 of +msgid "17 May 2016 22:57" +msgstr "" + +#: cebb638af4a44e89b22972425a3e8afc discord.utils.format_dt:16 of +msgid "Short Date Time" +msgstr "" + +#: 3e3fe2959acc44be92e90ac97ccb20f0 discord.utils.format_dt:18 of +msgid "F" +msgstr "" + +#: 59f32996a6ea4df6b6b3f171f6204b5e discord.utils.format_dt:18 of +msgid "Tuesday, 17 May 2016 22:57" +msgstr "" + +#: 5d1bb8a7e0e94646aa89baef02aa1b35 discord.utils.format_dt:18 of +msgid "Long Date Time" +msgstr "" + +#: 36677a24a28c4e50908c73cdfc0ce8cb discord.utils.format_dt:20 of +msgid "R" +msgstr "" + +#: 2ef4165bf158419caff2c9444a4a275d discord.utils.format_dt:20 of +msgid "5 years ago" +msgstr "" + +#: b4009f9e19a74f9c9c43a0d25e49b637 discord.utils.format_dt:20 of +msgid "Relative Time" +msgstr "" + +#: 8f6bdcb0e1b746d294b046b91e82acfa discord.utils.format_dt:23 of +msgid "" +"Note that the exact output depends on the user's locale setting in the " +"client. The example output presented is using the ``en-GB`` locale." +msgstr "" + +#: 7a8890fe32364076971c15c65e42d0af discord.utils.format_dt:29 of +msgid "The datetime to format." +msgstr "" + +#: 752d22d96de1489489a0e1045d3f1702 discord.utils.format_dt:32 of +msgid "The style to format the datetime with." +msgstr "" + +#: 1247f6c9467c4399a21d45c6c2540b8f discord.utils.format_dt:35 of +msgid "The formatted string." +msgstr "" + +#: 3dbe398f94684d7d81111c3a9d78ddee discord.utils.time_snowflake:1 of +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "" + +#: 4f0a375b5445437c9b32c94bb126d2eb discord.utils.time_snowflake:3 of +msgid "" +"When using as the lower end of a range, use ``time_snowflake(high=False) " +"- 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "" + +#: discord.utils.time_snowflake:6 fd7692997b8d4147ae031cc74d728ea2 of +msgid "" +"When using as the higher end of a range, use ``time_snowflake(high=True) " +"+ 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "" + +#: 156dc943215f43459e046968ed3d56f3 707b6da896314b699199545f50ffaa4c +#: discord.utils.generate_snowflake:5 discord.utils.time_snowflake:10 of +msgid "" +"A datetime object to convert to a snowflake. If naive, the timezone is " +"assumed to be local time." +msgstr "" + +#: 4d4b4aed7951406c98672889e6af4aff discord.utils.time_snowflake:14 of +msgid "Whether to set the lower 22 bit to high or low." +msgstr "" + +#: 36df0fad6db443f498326d3435c79e77 685eec1e29a2446e99fd2c65c95ed67e +#: discord.utils.generate_snowflake:9 discord.utils.time_snowflake:17 of +msgid "The snowflake representing the time given." +msgstr "" + +#: 1592ca8f639d49108573be44e12cd05c discord.utils.generate_snowflake:10 +#: discord.utils.time_snowflake:18 f921d097fcff48d2ba649bf347797916 of +msgid ":class:`int`" +msgstr "" + +#: c8903060dda24558a54ef44d79166e0a discord.utils.generate_snowflake:1 of +msgid "" +"Returns a numeric snowflake pretending to be created at the given date " +"but more accurate and random than :func:`time_snowflake`. If dt is not " +"passed, it makes one from the current time using utcnow." +msgstr "" + +#: 342ee272ba1a47d28edeb42756e01b5e discord.utils.basic_autocomplete:1 of +msgid "" +"A helper function to make a basic autocomplete for slash commands. This " +"is a pretty standard autocomplete and will return any options that start " +"with the value from the user, case-insensitive. If the ``values`` " +"parameter is callable, it will be called with the AutocompleteContext." +msgstr "" + +#: 548784abce704512a534212ed4f89380 discord.utils.basic_autocomplete:5 of +msgid "" +"This is meant to be passed into the :attr:`discord.Option.autocomplete` " +"attribute." +msgstr "" + +#: 71b0b09a76194f82a93177616dd8e775 discord.utils.basic_autocomplete:8 of +msgid "" +"Possible values for the option. Accepts an iterable of :class:`str`, a " +"callable (sync or async) that takes a single argument of " +":class:`.AutocompleteContext`, or a coroutine. Must resolve to an " +"iterable of :class:`str`." +msgstr "" + +#: 42efe68651a145729d12aa25efb1c936 discord.utils.basic_autocomplete:12 of +msgid "A wrapped callback for the autocomplete." +msgstr "" + +#: 62cb574c35064e82b913901dea277846 discord.utils.basic_autocomplete:13 of +msgid "" +"Callable[[:class:`.AutocompleteContext`], " +"Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`]," +" Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "" + +#: 3701cd6df81947f6b20b79fcfdf29842 discord.utils.basic_autocomplete:15 of +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "" + +#: 38fdef3a74ae45a48840ee240fd21411 discord.utils.basic_autocomplete:18 +#: discord.utils.filter_params:12 f0afb50f77a84f8a8f6c19c3c315c4c4 of +msgid "Example" +msgstr "" + +#: 94bfe37178034b48a425cb2ffe69a1cd discord.utils.as_chunks:1 of +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "" + +#: 640eef2dc9a746c299d6db0ada4512c9 discord.utils.as_chunks:7 of +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "" + +#: 2262035739314e6d8569f13a615f7cf5 discord.utils.as_chunks:10 of +msgid "The iterator to chunk, can be sync or async." +msgstr "" + +#: 1625a9682d7245ecb50b94b93e94221b discord.utils.as_chunks:13 of +msgid "The maximum chunk size." +msgstr "" + +#: discord.utils.as_chunks:16 e3de94aceeb44a3aafdddf7c05d7465c of +msgid "A new iterator which yields chunks of a given size." +msgstr "" + +#: 3648eed64c0e442d8e3e1df5cea6d046 discord.utils.as_chunks:17 of +msgid "" +"Union[:class:`collections.abc.Iterator`, " +":class:`collections.abc.AsyncIterator`]" +msgstr "" + +#: c36eedeb288e42c78bc4a987d84c2d5d discord.utils.filter_params:1 of +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "" + +#: d88520e24b1d4208890200ce4d45cbe8 discord.utils.filter_params:4 of +msgid "The initial parameters to filter." +msgstr "" + +#: 8f56edb34ffa4871b090fe88f83da282 discord.utils.filter_params:7 of +msgid "" +"Key to value pairs where the key's contents would be moved to the value, " +"or if the value is None, remove key's contents (see code example)." +msgstr "" + +#: 8da4e468cec14bc380a9febfd1ecb5f6 discord.utils.warn_deprecated:1 of +msgid "" +"Warn about a deprecated function, with the ability to specify details " +"about the deprecation. Emits a DeprecationWarning." +msgstr "" + +#: discord.utils.warn_deprecated:5 e3d8c023dd1c4350ac0fbd6bf2429a05 of +msgid "The name of the deprecated function." +msgstr "" + +#: 1aba31edeed24fc0bf925b49f4d01770 discord.utils.deprecated:5 +#: discord.utils.warn_deprecated:8 ed5919ff292b4888b37ac2b10a02a9e3 of +msgid "A recommended alternative to the function." +msgstr "" + +#: 5b13e7161cf943cab770cdf8f1dbc614 b9b3be6c3207442c804878da48136de5 +#: discord.utils.deprecated:8 discord.utils.warn_deprecated:11 of +msgid "" +"The version in which the function was deprecated. This should be in the " +"format ``major.minor(.patch)``, where the patch version is optional." +msgstr "" + +#: 0d693d37c2264cc7b13fe7d0cfabc551 a626227cb070430481695b7033d08037 +#: discord.utils.deprecated:12 discord.utils.warn_deprecated:15 of +msgid "" +"The version in which the function is planned to be removed. This should " +"be in the format ``major.minor(.patch)``, where the patch version is " +"optional." +msgstr "" + +#: 99f204a0f2054cc1ba92951549f7fbb6 discord.utils.deprecated:16 +#: discord.utils.warn_deprecated:19 f683b72936684971a741eb6883ee293c of +msgid "" +"A reference that explains the deprecation, typically a URL to a page such" +" as a changelog entry or a GitHub issue/PR." +msgstr "" + +#: ae34e1033c72447ba27713944dacffcb c47d7142272b415fb0e9cc38033dabb9 +#: discord.utils.deprecated:20 discord.utils.warn_deprecated:23 of +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "" + +#: a7e969196e094149b160e9b2d531f047 discord.utils.warn_deprecated:26 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: discord.utils.deprecated:1 efa18c465579446cbbcd9b510d81a062 of +msgid "" +"A decorator implementation of :func:`warn_deprecated`. This will " +"automatically call :func:`warn_deprecated` when the decorated function is" +" called." +msgstr "" + +#: c062d6ae6db141b5ba8ffe616b229d28 discord.utils.deprecated:23 of +msgid "" +"Whether to use the qualified name of the function in the deprecation " +"warning. If ``False``, the short name of the function will be used " +"instead. For example, __qualname__ will display as ``Client.login`` while" +" __name__ will display as ``login``. Defaults to ``True``." +msgstr "" + +#: discord.utils.deprecated:28 f8e97d5772924b948068e5d0a2b93af1 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ " +"\\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ " +"\\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/version_info.po b/docs/locales/en/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..148745f015 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/version_info.po @@ -0,0 +1,47 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/version_info.rst:4 e2693c05b8734ff3bd738ea8e3f79b49 +msgid "Version Related Info" +msgstr "" + +#: ../../api/version_info.rst:6 0e23d91f6e6a4d3da6ff964b98836926 +msgid "" +"There are two main ways to query version information about the library. " +"For guarantees, check :ref:`version_guarantees`." +msgstr "" + +#: ../../api/version_info.rst:10 655eab73191943599a3ac9db5642e146 +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "" + +#: ../../api/version_info.rst:12 4331afd1ca6f4c91ac3258eaf4901282 +msgid "" +"Just like :obj:`py:sys.version_info` the valid values for " +"``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "" + +#: ../../api/version_info.rst:17 a03a04703c6647bc83580f977672decf +msgid "" +"A string representation of the version. e.g. ``'1.0.0rc1'``. This is " +"based off of :pep:`440`." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/voice.po b/docs/locales/en/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..e6aff2e3ee --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/voice.po @@ -0,0 +1,1025 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/voice.rst:4 d7b0a6618d484ba1b7adda020e2d5f7c +msgid "Voice Related" +msgstr "" + +#: ../../api/voice.rst:7 e1136ab1790544e081feafd9f400987d +msgid "Objects" +msgstr "" + +#: discord.voice_client.VoiceClient:1 ec3682ebcd66478c91ba6f769605c2bd of +msgid "Represents a Discord voice connection." +msgstr "" + +#: 7f911d83faff403797bc9208eca7a850 discord.voice_client.VoiceClient:3 of +msgid "" +"You do not create these, you typically get them from e.g. " +":meth:`VoiceChannel.connect`." +msgstr "" + +#: 36a29fc8e1be46c1a5352da439a5ecbf discord.voice_client.VoiceClient:8 of +msgid "The voice connection session ID." +msgstr "" + +#: 2fcfffeabaf7443ebf721c1610289eb3 6920c629202a446eb012541840b29852 +#: 9c79837399e6407aa5eed5ce9856233c ae85be689738478c8c55931c8bfabb80 +#: dc52e60ff0b643c18a5be52a79f3a6d7 discord.player.PCMAudio +#: discord.voice_client.VoiceClient eee0ca9ed52f4b2bb028227099beabf7 of +msgid "type" +msgstr "" + +#: 793cf2c355174fd7997308d4d9a965ec 8aa94617d01a4f03b9a588e904a22916 +#: 964fa49cd5a840778b2d0de9f6e4cefe discord.voice_client.VoiceClient:10 +#: discord.voice_client.VoiceClient:16 discord.voice_client.VoiceClient:22 of +msgid ":class:`str`" +msgstr "" + +#: c8eec95e8f044116ab027b3ebdd05b77 discord.voice_client.VoiceClient:14 of +msgid "The voice connection token." +msgstr "" + +#: 4ce8872157ad499c94e8f82c673b159a discord.voice_client.VoiceClient:20 of +msgid "The endpoint we are connecting to." +msgstr "" + +#: 918a8f624381475a95a7078b155dff74 discord.voice_client.VoiceClient:26 of +msgid "The voice channel connected to." +msgstr "" + +#: d71979b351204fd49b0e0e85dc0cc9c6 discord.voice_client.VoiceClient:28 of +msgid ":class:`abc.Connectable`" +msgstr "" + +#: 459ead7dba7b415d956100716e15ad0f discord.voice_client.VoiceClient:32 of +msgid "The event loop that the voice client is running on." +msgstr "" + +#: d9b30661623f430c953f825b8cbba403 discord.voice_client.VoiceClient:34 of +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr "" + +#: 26feab966bfa4f1fad07f094b7edee5a discord.voice_client.VoiceClient:38 of +msgid "" +"In order to use PCM based AudioSources, you must have the opus library " +"installed on your system and loaded through :func:`opus.load_opus`. " +"Otherwise, your AudioSources must be opus encoded (e.g. using " +":class:`FFmpegOpusAudio`) or the library will not be able to transmit " +"audio." +msgstr "" + +#: ../../api/voice.rst 097916a2827d4169afabc5b5f61c309f +#: 0a1db135ede34233a02cc2111512a49f 2456beac41954a5e95e27b81e6120484 +#: 52330df6b9d74b889c44ecd31ad0bc37 5abdb5e4ddf34de2babfca2950a76dd4 +#: 6475a382392d403e94c6c2d0e49e5aaa 69d41da7ec2e48caa0398ba00f33e5fd +#: 71a09c9337f54d45b2723985acaf9fd5 771c2db901254eee9b8b03d63009dc7c +#: 77a01818697c49a09c752278468a1f99 7f35660d885a4fcebc23c4570f774ee8 +#: 95bd3ccff86b423f850c85a5c16d83be ac4f165d6599452db25226ff0a7e7d7f +#: b0cff60b27144f489fb963f023b9288d b660228e1b894281802c261ae32d2654 +#: b9921e9cbf8f4e13b9611c85e2c50035 discord.player.FFmpegOpusAudio.from_probe +#: e4c505fd25a34b1aaf027a23ce478576 f4deaf0307e544339f4fcaac7b0558bc +#: fab43f55cb8d46c18309ff5fddc61816 fb01f37a3ce2458bb7237088803d269a of +msgid "Parameters" +msgstr "" + +#: 1b19524198b745bd85d0277ffff05c3b discord.VoiceClient.guild:1 of +msgid "The guild we're connected to, if applicable." +msgstr "" + +#: 0ae00dbd951449cab37e06a27e8fe724 discord.VoiceClient.user:1 of +msgid "The user connected to voice (i.e. ourselves)." +msgstr "" + +#: 51d4b8a5a0ee4c83adc7d042188795dc discord.VoiceClient.latency:1 of +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "" + +#: 480ab595bf334146ba4cf867b73467e4 discord.VoiceClient.latency:3 of +msgid "" +"This could be referred to as the Discord Voice WebSocket latency and is " +"an analogue of user's voice latencies as seen in the Discord client." +msgstr "" + +#: 69cfcf62fc9b4036877b01ad9bf6de19 discord.VoiceClient.average_latency:1 of +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "" + +#: 0124a63448a04d09bceabbe0a56e9ad4 036633cf1fdc42ba93a48b21ba9acb09 +#: 15f431251e504476916f5401b3eabcf0 21a0e341554c4244a49b0b723301f8fc +#: 2b2f5a6a6de94ee699bb6965bf262bd0 386aa5eafc2b4c1b83f7f87bd8c9c87b +#: b4b9fb6ef0894b0b95bc06faa3e8c620 cca2eef9de4c41988818f576564c4e3a +#: discord.player.FFmpegOpusAudio.from_probe:1 +#: discord.player.FFmpegOpusAudio.probe:1 +#: discord.voice_client.VoiceClient.disconnect:1 +#: discord.voice_client.VoiceClient.move_to:1 +#: discord.voice_client.VoiceProtocol.connect:1 +#: discord.voice_client.VoiceProtocol.disconnect:1 +#: discord.voice_client.VoiceProtocol.on_voice_server_update:1 +#: discord.voice_client.VoiceProtocol.on_voice_state_update:1 of +msgid "|coro|" +msgstr "" + +#: be3fe67562924e85984c23095c2faca1 +#: discord.voice_client.VoiceClient.disconnect:3 of +msgid "Disconnects this voice client from voice." +msgstr "" + +#: ../../api/voice.rst 0683fdfd1bb2405aa95b2b4b2c0bbd1a +#: 06d93b1e976b437e847218ce968f0293 07b51b94b0f44720be2a13ca0086ab66 +#: 11a61da9e14a4eac83035d9762df668a 170782bc8dac49cf85c15f8bd820fdce +#: 1e6cefcdd84e40e9a18bfcce7bb99d64 221f54b949984748ab0ba4335a5489d0 +#: 234ab6e89ed44bf299fd9a9b6c03740e 2646ac699d59498f8a95fbdc8a0d9239 +#: 3151fce786ad4f619809a9c3b0f9280f 4da06b8539464fd7914552d93cc91452 +#: 4ff780af4f2d4047832ca6fd2fb69c1d 52372051be784eec985737e4b1a63e48 +#: 58475ca4bf0f412399121be3c74b7050 6e566ab77b634a078605db6e2267b8e7 +#: 6fbacc9e2b784528a38eaa2d676bbddd 842f6f1f3a3c4b6fbcea7bd6791fd09e +#: 8771b3930fbe4b44b28b7e32de6036ca a0e56fae902348afaa3d88522fc6a165 +#: b3d3d728afd3400c96992e02f0d272f7 c79a00961d4842a8acb4b23dd0a780d1 +#: c9d8428298034204a7ab4ea957d0f6e1 d3ee0127c9a94ee183118b00b3885b54 +#: d880fe4362264a78b055f8853042db4d discord.player.FFmpegOpusAudio.from_probe +#: ea83c92fc5ad425f90ecc0e31baf3f2f ee9592f37b57465499c3033adfcf68f4 +#: f2a653c8141d46fdbe33cb351ba19af8 f2b636d7a9e24d8e8b49f78d1b2e4900 +#: fa5bcb9db5c84928996fa5c02addb075 feb84d9eed6c4e908e12e23157aa4670 of +msgid "Return type" +msgstr "" + +#: 0ebe6629f33548aca669b37b29a40845 27ab56fb42554bcb96724dbd580097da +#: 2f5356a8850141ef89065109e7ae2978 4ab12054d12a4439898aeda79a0ffa04 +#: 61534759588043399e891c911b5f3db3 6a64640d3165434a8b13b147a92f5bec +#: 729b005c366f4f4c822b8bc5e2c466e6 72a72023fec44b2b8eafea45739fe0d3 +#: 785db422570a4def861b61e7bb64a738 9a9bff1263ae418c8ae68c2e23e0b3f7 +#: ae57b387bc984feab8f549402dd26036 b914d46b053b4af4a12e99411ae4111f +#: b9398b8c3baf4badaaaf3efe5a013c04 discord.opus.load_opus:34 +#: discord.player.AudioSource.cleanup:7 discord.player.FFmpegAudio.cleanup:7 +#: discord.player.PCMVolumeTransformer.cleanup:7 +#: discord.voice_client.VoiceClient.disconnect:7 +#: discord.voice_client.VoiceClient.move_to:9 +#: discord.voice_client.VoiceClient.pause:4 +#: discord.voice_client.VoiceClient.resume:4 +#: discord.voice_client.VoiceClient.send_audio_packet:15 +#: discord.voice_client.VoiceClient.stop:4 +#: discord.voice_client.VoiceProtocol.cleanup:11 +#: discord.voice_client.VoiceProtocol.connect:21 +#: discord.voice_client.VoiceProtocol.disconnect:11 +#: discord.voice_client.VoiceProtocol.on_voice_server_update:14 +#: discord.voice_client.VoiceProtocol.on_voice_state_update:14 +#: e232bb429cf140b3819b63938f75afaa fc569a544ec14408a5b129a075fe4692 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: discord.voice_client.VoiceClient.move_to:3 eeefd3d7363a4f8aa22085b12b874163 +#: of +msgid "Moves you to a different voice channel." +msgstr "" + +#: 69a8eb0817b44122afedbee3993cb7c1 discord.voice_client.VoiceClient.move_to:6 +#: of +msgid "The channel to move to. Must be a voice channel." +msgstr "" + +#: a86c97c8ba4b4ccf88f5143cc8aaf141 +#: discord.voice_client.VoiceClient.is_connected:1 of +msgid "Indicates if the voice client is connected to voice." +msgstr "" + +#: 28146b1e321f4406b70404110817a8d4 28552688575c4203b74fcd559f72956d +#: 3b701c385cb547a6a11c23abdb4d3c10 53c368e1a52442cf8c4569c2730cb2b6 +#: 767c2c6c49084e0caa82953c0237857d 93a9aeb391524022b9bfb3b3a425106b +#: discord.player.AudioSource.is_opus:4 +#: discord.player.FFmpegOpusAudio.is_opus:4 +#: discord.player.FFmpegPCMAudio.is_opus:4 +#: discord.voice_client.VoiceClient.is_connected:4 +#: discord.voice_client.VoiceClient.is_paused:4 +#: discord.voice_client.VoiceClient.is_playing:4 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 57fc8c271dcf4672a13c0d09af0bc893 discord.voice_client.VoiceClient.play:1 of +msgid "Plays an :class:`AudioSource`." +msgstr "" + +#: 6604a136571448a2b914b46492771b17 discord.voice_client.VoiceClient.play:3 of +msgid "" +"The finalizer, ``after`` is called after the source has been exhausted or" +" an error occurred." +msgstr "" + +#: 298919aaef5348af8a476707b4450545 discord.voice_client.VoiceClient.play:6 of +msgid "" +"If an error happens while the audio player is running, the exception is " +"caught and the audio player is then stopped. If no after callback is " +"passed, any caught exception will be displayed as if it were raised." +msgstr "" + +#: d3139e51c8ee42158ddcb51791fa2885 discord.voice_client.VoiceClient.play:11 of +msgid "The audio source we're reading from." +msgstr "" + +#: 38aa862e64a848fb9737c3be39577ce1 discord.voice_client.VoiceClient.play:14 of +msgid "" +"The finalizer that is called after the stream is exhausted. This function" +" must have a single parameter, ``error``, that denotes an optional " +"exception that was raised during playing." +msgstr "" + +#: discord.voice_client.VoiceClient.play:19 f15d43596eda4ec0b7250dc97d4b689c of +msgid "" +"If True, an awaitable will be returned, which can be used to wait for " +"audio to stop playing. This awaitable will return an exception if raised," +" or None when no exception is raised. If False, None is returned and the" +" function does not block. .. versionadded:: v2.5" +msgstr "" + +#: af1ade50379d4cd49b29f986f921795b discord.voice_client.VoiceClient.play:19 of +msgid "" +"If True, an awaitable will be returned, which can be used to wait for " +"audio to stop playing. This awaitable will return an exception if raised," +" or None when no exception is raised." +msgstr "" + +#: 70a489db9279448f8f1e8eb85633e140 discord.voice_client.VoiceClient.play:23 of +msgid "If False, None is returned and the function does not block." +msgstr "" + +#: ../../api/voice.rst 07b869f2652f4453880532931e0146b8 +#: 1a1842ba50904c8e90560e0e2311f5e2 1b7d21b2367044c79adb064f19e07f07 +#: 3876e4149e7941698b0637877bbf309a 4a531e0220044095ab49b23d02bed1e5 +#: 5b7803a2e1d247959c819a77e6831756 7e5e1c4e93574828be02e609a6ff2ef5 +#: 97e4eeebc8584766b8472cc2fb858209 cecb7dc4cdef46e082ef7c10e8821e55 +#: d007fcbd8757434b91652320071c7a09 discord.player.FFmpegOpusAudio.from_probe +#: of +msgid "Raises" +msgstr "" + +#: 9b4977b2920e46ef89d6fa086eed6796 discord.voice_client.VoiceClient.play:28 of +msgid "Already playing audio or not connected." +msgstr "" + +#: 2c32184f081e4d3091dc8b7027c90f34 discord.voice_client.VoiceClient.play:29 of +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "" + +#: discord.voice_client.VoiceClient.play:30 e2707b00b2434be5ab663ddbaa2b1c97 of +msgid "Source is not opus encoded and opus is not loaded." +msgstr "" + +#: bf26224880174deca44c625c5d7338ae discord.voice_client.VoiceClient.play:32 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| " +"\\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr "" + +#: discord.voice_client.VoiceClient.unpack_audio:1 +#: f504c11b5df84968beb921a3ecfefcfe of +msgid "" +"Takes an audio packet received from Discord and decodes it into pcm audio" +" data. If there are no users talking in the channel, `None` will be " +"returned." +msgstr "" + +#: c0870bc727bc4716abb4c5cec379c3fc +#: discord.voice_client.VoiceClient.unpack_audio:4 of +msgid "You must be connected to receive audio." +msgstr "" + +#: 4035b1908df1464298c43f79d47c7880 +#: discord.voice_client.VoiceClient.unpack_audio:9 of +msgid "" +"Bytes received by Discord via the UDP connection used for sending and " +"receiving voice data." +msgstr "" + +#: 22fb81c7c5d74f0098058bea9d24f593 +#: discord.voice_client.VoiceClient.start_recording:1 of +msgid "" +"The bot will begin recording audio from the current voice channel it is " +"in. This function uses a thread so the current code line will not be " +"stopped. Must be in a voice channel to use. Must not be already " +"recording." +msgstr "" + +#: 42a99458681a4c63a75ff3bae3d4a57d +#: discord.voice_client.VoiceClient.start_recording:9 of +msgid "A Sink which will \"store\" all the audio data." +msgstr "" + +#: 9e56273896d04fe18541e1faae58f269 +#: discord.voice_client.VoiceClient.start_recording:12 of +msgid "A function which is called after the bot has stopped recording." +msgstr "" + +#: 127ca437b79e49ec827c36b61535fe39 +#: discord.voice_client.VoiceClient.start_recording:15 of +msgid "Args which will be passed to the callback function." +msgstr "" + +#: 345367535c76470281d0aebec874d6fb +#: discord.voice_client.VoiceClient.start_recording:17 of +msgid "" +"If True, the recordings of subsequent users will start with silence. This" +" is useful for recording audio just as it was heard." +msgstr "" + +#: 0129914a84dd42f78a94558d9c6d78b2 +#: discord.voice_client.VoiceClient.start_recording:21 of +msgid "Not connected to a voice channel." +msgstr "" + +#: c67a79b83ac64d21ac3835a3cba3003e +#: discord.voice_client.VoiceClient.start_recording:22 of +msgid "Already recording." +msgstr "" + +#: a9cf5b332ce2468589c4b7661294abcf +#: discord.voice_client.VoiceClient.start_recording:23 of +msgid "Must provide a Sink object." +msgstr "" + +#: 603f2190da994c9299b2bdfa9d7daab8 +#: discord.voice_client.VoiceClient.stop_recording:1 of +msgid "Stops the recording. Must be already recording." +msgstr "" + +#: 1d0feb804c5f4998a3a3b6ef09938280 3cffc9df03e94ceea9d7f785d5186ee9 +#: discord.voice_client.VoiceClient.stop_recording:6 +#: discord.voice_client.VoiceClient.toggle_pause:6 of +msgid "Not currently recording." +msgstr "" + +#: b6aff79c184a48ebbed06c780190ebf4 +#: discord.voice_client.VoiceClient.toggle_pause:1 of +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "" + +#: discord.voice_client.VoiceClient.is_playing:1 +#: f78d41db49fc4152b00c5f70257e56ec of +msgid "Indicates if we're currently playing audio." +msgstr "" + +#: 76ef11546be5411a9f6964c8fd40fc02 +#: discord.voice_client.VoiceClient.is_paused:1 of +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "" + +#: 078a6c259afe4409a4475f652b0e7f88 discord.voice_client.VoiceClient.stop:1 of +msgid "Stops playing audio." +msgstr "" + +#: 2216d420fd7c49c891491be2adb1896f discord.voice_client.VoiceClient.pause:1 of +msgid "Pauses the audio playing." +msgstr "" + +#: 73455b7f90e845ee9744e8c4eda03f86 discord.voice_client.VoiceClient.resume:1 +#: of +msgid "Resumes the audio playing." +msgstr "" + +#: ccad892b561941b9be6b0247b7d092dc discord.VoiceClient.source:1 of +msgid "The audio source being played, if playing." +msgstr "" + +#: 6eb8859de16c4f2fa84d7d41983cceba discord.VoiceClient.source:3 of +msgid "" +"This property can also be used to change the audio source currently being" +" played." +msgstr "" + +#: 7f2243ca2fe440b791ce4cc95fd94958 +#: discord.voice_client.VoiceClient.send_audio_packet:1 of +msgid "Sends an audio packet composed of the data." +msgstr "" + +#: dde0285d86d1429084b5817343862b06 +#: discord.voice_client.VoiceClient.send_audio_packet:3 of +msgid "You must be connected to play audio." +msgstr "" + +#: 98badc5455d34bafb986af7ffbac9a2d +#: discord.voice_client.VoiceClient.send_audio_packet:6 of +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "" + +#: 4a3d7f4095d54101b9925170f9af6e54 +#: discord.voice_client.VoiceClient.send_audio_packet:9 of +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "" + +#: 08803b6e20e1411fab86e349e2e8e49a +#: discord.voice_client.VoiceClient.send_audio_packet:12 of +msgid "You are not connected." +msgstr "" + +#: 1ca03a935f684bf1a08536d41c8a9612 +#: discord.voice_client.VoiceClient.send_audio_packet:13 of +msgid "Encoding the data failed." +msgstr "" + +#: discord.voice_client.VoiceProtocol:1 f2844a86f9fd4343a918929c51912b97 of +msgid "A class that represents the Discord voice protocol." +msgstr "" + +#: ae6cf4d84a8a4d8bbb01dc5d80f0bc2d discord.voice_client.VoiceProtocol:3 of +msgid "" +"This is an abstract class. The library provides a concrete implementation" +" under :class:`VoiceClient`." +msgstr "" + +#: accd8a733e4b4bc2b22d8f2839ff52ac discord.voice_client.VoiceProtocol:6 of +msgid "" +"This class allows you to implement a protocol to allow for an external " +"method of sending voice, such as Lavalink_ or a native library " +"implementation." +msgstr "" + +#: df53f4cee6ed47d69868708c84cbdb80 discord.voice_client.VoiceProtocol:9 of +msgid "" +"These classes are passed to :meth:`abc.Connectable.connect " +"`." +msgstr "" + +#: discord.voice_client.VoiceProtocol:14 fa32e0685f39406384e72c7b9144baf1 of +msgid "The client (or its subclasses) that started the connection request." +msgstr "" + +#: discord.voice_client.VoiceProtocol:17 e16ec818f25d4fddad575fd8d76afe2c of +msgid "The voice channel that is being connected to." +msgstr "" + +#: 6d96f84aee2a482e9e9ad8b2ab7cce78 +#: discord.voice_client.VoiceProtocol.on_voice_state_update:3 of +msgid "" +"An abstract method that is called when the client's voice state has " +"changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "" + +#: 1539ca4620934988956683793045c8fc +#: discord.voice_client.VoiceProtocol.on_voice_state_update:7 of +msgid "" +"The raw `voice state payload`__. .. _voice_state_update_payload: " +"https://discord.com/developers/docs/resources/voice#voice-state-object " +"__ voice_state_update_payload_" +msgstr "" + +#: 48bd947053204f28b7732886369ed779 +#: discord.voice_client.VoiceProtocol.on_voice_state_update:7 of +msgid "The raw `voice state payload`__." +msgstr "" + +#: 687e709bbbf0455399519510c189eb8a +#: discord.voice_client.VoiceProtocol.on_voice_server_update:3 of +msgid "" +"An abstract method that is called when initially connecting to voice. " +"This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "" + +#: 6f7c2101abd34c3f8d08dba198616b24 +#: discord.voice_client.VoiceProtocol.on_voice_server_update:7 of +msgid "" +"The raw `voice server update payload`__. .. " +"_voice_server_update_payload: " +"https://discord.com/developers/docs/topics/gateway#voice-server-update-" +"voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "" + +#: 56fb90b544e34e0da1dcbdcb68f8ee40 +#: discord.voice_client.VoiceProtocol.on_voice_server_update:7 of +msgid "The raw `voice server update payload`__." +msgstr "" + +#: 15f758c06e8545c5a207dd1ef50fdd20 +#: discord.voice_client.VoiceProtocol.connect:3 of +msgid "" +"An abstract method called when the client initiates the connection " +"request." +msgstr "" + +#: discord.voice_client.VoiceProtocol.connect:5 +#: f3d9bcfb8fe844868a6a188fbbbb86c4 of +msgid "" +"When a connection is requested initially, the library calls the " +"constructor under ``__init__`` and then calls :meth:`connect`. If " +":meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "" + +#: 6a93faa7b4814d8c8b06035acd8d27cd +#: discord.voice_client.VoiceProtocol.connect:9 of +msgid "" +"Within this method, to start the voice connection flow it is recommended " +"to use :meth:`Guild.change_voice_state` to start the flow. After which, " +":meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be " +"called. The order that these two are called is unspecified." +msgstr "" + +#: 52fae36523ff4d64827f5ceb1a73e433 +#: discord.voice_client.VoiceProtocol.connect:15 of +msgid "The timeout for the connection." +msgstr "" + +#: 63d7b7f77e3246d49c17215bf8b2ae7d +#: discord.voice_client.VoiceProtocol.connect:18 of +msgid "Whether reconnection is expected." +msgstr "" + +#: 31402a8e837b49688a5441ed8cde2d8f +#: discord.voice_client.VoiceProtocol.disconnect:3 of +msgid "An abstract method called when the client terminates the connection." +msgstr "" + +#: 661b5828612c4f76a98e93330261ea1a +#: discord.voice_client.VoiceProtocol.disconnect:5 of +msgid "See :meth:`cleanup`." +msgstr "" + +#: 1ad7a2bd10dc4be5b03c46f6238ba93b +#: discord.voice_client.VoiceProtocol.disconnect:8 of +msgid "Whether the disconnection was forced." +msgstr "" + +#: 62bf494b5c6748648e9814c9a0e0e749 +#: discord.voice_client.VoiceProtocol.cleanup:1 of +msgid "" +"This method *must* be called to ensure proper clean-up during a " +"disconnect." +msgstr "" + +#: c99b55f1341a43eebc7180bc5b921ece +#: discord.voice_client.VoiceProtocol.cleanup:3 of +msgid "" +"It is advisable to call this from within :meth:`disconnect` when you are " +"completely done with the voice protocol instance." +msgstr "" + +#: 454e51becc6b4aa98fd1b2b08c39ab38 +#: discord.voice_client.VoiceProtocol.cleanup:6 of +msgid "" +"This method removes it from the internal state cache that keeps track of " +"currently alive voice clients. Failure to clean-up will cause subsequent " +"connections to report that it's still connected." +msgstr "" + +#: 6564199ed4364bd892d670b97afa2ecd discord.player.AudioSource:1 of +msgid "Represents an audio stream." +msgstr "" + +#: cf25724172b4441abf2ff2192b8f32e5 discord.player.AudioSource:3 of +msgid "" +"The audio stream can be Opus encoded or not, however if the audio stream " +"is not Opus encoded then the audio format must be 16-bit 48KHz stereo " +"PCM." +msgstr "" + +#: 50ac8d94d685498fbdad97a65885518b discord.player.AudioSource:8 of +msgid "The audio source reads are done in a separate thread." +msgstr "" + +#: 43f562d474ac4f259f5972023ab8ed5e 675add47c72f4f398833a67d9f40191d +#: 67765f2befd54922806d108acabf11dc 9da1fbf002de4b63875e3031da399d50 +#: discord.player.AudioSource.read:1 discord.player.FFmpegOpusAudio.read:1 +#: discord.player.FFmpegPCMAudio.read:1 discord.player.PCMAudio.read:1 +#: discord.player.PCMVolumeTransformer.read:1 e8e10259edc64c879644f1a9b201db6e +#: of +msgid "Reads 20ms worth of audio." +msgstr "" + +#: 2b98519b39494c03b8c9200db1d6a6cf 2d1d2696964848d29041d7ec229c47ea +#: 58f4c65835214f0080d92cb708c5d81b 622981fd3609493ab6b287bc25e013ef +#: discord.player.AudioSource.read:3 discord.player.FFmpegOpusAudio.read:3 +#: discord.player.FFmpegPCMAudio.read:3 discord.player.PCMAudio.read:3 +#: discord.player.PCMVolumeTransformer.read:3 e3a40f1afe8b4883b1c536cf435e7293 +#: of +msgid "Subclasses must implement this." +msgstr "" + +#: 028b3a5cfc9d4c03be777fa025bbe90e 328fd72ba7f5414bbe2da58a9d00b5df +#: 491f29403af749d29f65817e991ad0d8 b76c8c55963741aab1253004def750a9 +#: discord.player.AudioSource.read:5 discord.player.FFmpegOpusAudio.read:5 +#: discord.player.FFmpegPCMAudio.read:5 discord.player.PCMAudio.read:5 +#: discord.player.PCMVolumeTransformer.read:5 ef4ae5ce12c34064887e8328ae00b0a7 +#: of +msgid "" +"If the audio is complete, then returning an empty :term:`py:bytes-like " +"object` to signal this is the way to do so." +msgstr "" + +#: 48d370c95fa84a8d9de06c098830922e 810791910e94420d82963ba06eef394b +#: 88f35ac8d9da447cb483a6b809e12c79 a029ad04c1064ffda7caf9582997d2d0 +#: ce3e1975fc974db2a114fe56549b6bc1 discord.player.AudioSource.read:8 +#: discord.player.FFmpegOpusAudio.read:8 discord.player.FFmpegPCMAudio.read:8 +#: discord.player.PCMAudio.read:8 discord.player.PCMVolumeTransformer.read:8 of +msgid "" +"If :meth:`~AudioSource.is_opus` method returns ``True``, then it must " +"return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth" +" of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms " +"worth of audio)." +msgstr "" + +#: ../../api/voice.rst 0a9acaf5f7ce499198d57d6632bf9596 +#: 2f7252b244004532b0e908a77d38f6b8 6d76efb6ea404cfc981cd37f90e8a27a +#: a5945b62e8394839b7db89093a2c291d a6c6108c14654afc85fa299bd2e2d9d9 +#: d96374d07b1e4b93abdc3984aa2338a8 d98c0854b3da4474b294f6d01aa940ab +#: dee8f0cd7c114339a6b21b0ebfe53d19 discord.player.FFmpegOpusAudio.from_probe +#: of +msgid "Returns" +msgstr "" + +#: 0e2bd56840a142639a45c2d166f1fce2 371829d959f044f3ab0a82196195c124 +#: 799b9590449a4eddb9fa665c3767dff4 aa1dffcc093e4cd4a6794116ff9b5c9a +#: d98131655fe1461c83ac202b820ea844 discord.player.AudioSource.read:13 +#: discord.player.FFmpegOpusAudio.read:13 discord.player.FFmpegPCMAudio.read:13 +#: discord.player.PCMAudio.read:13 discord.player.PCMVolumeTransformer.read:13 +#: of +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "" + +#: 22df61c5286d495faaeabfccc2cfebb1 2305960da46f48f6a95b6593d34c1aac +#: c886363fbf8a470a99ad6a99bc3760a8 discord.player.AudioSource.read:14 +#: discord.player.FFmpegOpusAudio.read:14 discord.player.FFmpegPCMAudio.read:14 +#: discord.player.PCMAudio.read:14 discord.player.PCMVolumeTransformer.read:14 +#: edb97626a1724e93b55584e44a7e4a44 febad82c34014a1f9680a5e84ccb5ccc of +msgid ":class:`bytes`" +msgstr "" + +#: 441627e81b294f4e9712c623a70d3e00 6d11292606384b7aa2726296be6efa43 +#: discord.player.AudioSource.is_opus:1 +#: discord.player.FFmpegOpusAudio.is_opus:1 +#: discord.player.FFmpegPCMAudio.is_opus:1 f933a708c92045868a9caa15f8015d92 of +msgid "Checks if the audio source is already encoded in Opus." +msgstr "" + +#: 29e9300bf3e24bcfb0045c59fbaf93ac a6544280b0d94cf092b8461e4608eee8 +#: bbac2762b28c49e18fe322f9591280b4 discord.player.AudioSource.cleanup:1 +#: discord.player.FFmpegAudio.cleanup:1 +#: discord.player.PCMVolumeTransformer.cleanup:1 of +msgid "Called when clean-up is needed to be done." +msgstr "" + +#: 1b31cd5b6fa44ef8b1ed95d966efcddf 557038e96505404694c861b87a5076af +#: 6d8eb37aadee4ea8ad39f10c48e9956f discord.player.AudioSource.cleanup:3 +#: discord.player.FFmpegAudio.cleanup:3 +#: discord.player.PCMVolumeTransformer.cleanup:3 of +msgid "" +"Useful for clearing buffer data or processes after it is done playing " +"audio." +msgstr "" + +#: 454c3a56198942dd91cabdbdac97d3e4 discord.player.PCMAudio:1 of +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "" + +#: 3044964ce61e4da5a28ead256611eb9a discord.player.PCMAudio:5 of +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "" + +#: d92892017cd542f78639516b8b416117 discord.player.PCMAudio:7 of +msgid ":term:`py:file object`" +msgstr "" + +#: discord.player.FFmpegAudio:1 fce50d418e1a49a4bb5c684f1e1ac753 of +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "" + +#: b29e6aec2cbf4e37a9f46fcab1071fa1 discord.player.FFmpegAudio:3 of +msgid "" +"User created AudioSources using FFmpeg differently from how " +":class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass" +" this." +msgstr "" + +#: 2b8ab32191da45798a3bea06b09cad1e 6bfee17debc94240a86d9d31ee71e75a +#: discord.player.FFmpegOpusAudio:1 discord.player.FFmpegPCMAudio:1 of +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "" + +#: 7abcb38cf7144b9a8a0a350e7c64fc27 discord.player.FFmpegPCMAudio:3 of +msgid "This launches a sub-process to a specific input file given." +msgstr "" + +#: 40161dae93a5444592d3b38086c0bbd5 91b78b16596942698136b40beb390887 +#: discord.player.FFmpegOpusAudio:18 discord.player.FFmpegPCMAudio:7 of +msgid "" +"You must have the ffmpeg or avconv executable in your path environment " +"variable in order for this to work." +msgstr "" + +#: discord.player.FFmpegPCMAudio:11 e1f5be3b142f4c60996984791631220f of +msgid "" +"The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is " +"``True`` then this is a file-like object that is passed to the stdin of " +"ffmpeg." +msgstr "" + +#: b18d98307af54783b5509b299f373832 discord.player.FFmpegOpusAudio:43 +#: discord.player.FFmpegPCMAudio:16 ee979d778a514578afa221436f337ae6 of +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "" + +#: 21ce334995aa4931bcc3071260ba9289 discord.player.FFmpegOpusAudio:46 +#: discord.player.FFmpegPCMAudio:19 f5acb595a683400e9c9246fb48d1b253 of +msgid "" +"If ``True``, denotes that ``source`` parameter will be passed to the " +"stdin of ffmpeg. Defaults to ``False``." +msgstr "" + +#: 374ca46ede85471e8c4796af9955f286 discord.player.FFmpegOpusAudio:50 +#: discord.player.FFmpegPCMAudio:23 ef5575dc64624e11a2c1919f793f55d6 of +msgid "" +"A file-like object to pass to the Popen constructor. Could also be an " +"instance of ``subprocess.PIPE``." +msgstr "" + +#: 452e450be3f544b7bbb5e50227089276 66021a8ed46e44e0ad3a8d872261a124 +#: discord.player.FFmpegOpusAudio:54 discord.player.FFmpegPCMAudio:27 of +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "" + +#: 79971e5fc9e6447cb18c13317097b842 b8cd968276cf470896aa34aaa8858222 +#: discord.player.FFmpegOpusAudio:57 discord.player.FFmpegPCMAudio:30 of +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "" + +#: 732d7e069def4da7a6802b95b9c16ff7 cfe616123f1744e89d7e549cdae8baa1 +#: discord.player.FFmpegOpusAudio:60 discord.player.FFmpegPCMAudio:33 of +msgid "The subprocess failed to be created." +msgstr "" + +#: 9dc5129d03a44f96a1113824ad234006 discord.player.FFmpegOpusAudio:3 of +msgid "" +"This launches a sub-process to a specific input file given. However, " +"rather than producing PCM packets like :class:`FFmpegPCMAudio` does that " +"need to be encoded to Opus, this class produces Opus packets, skipping " +"the encoding step done by the library." +msgstr "" + +#: 1eb0937b784c4f5a8744e7c5d6627f73 discord.player.FFmpegOpusAudio:7 of +msgid "" +"Alternatively, instead of instantiating this class directly, you can use " +":meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec " +"information. This can be used to opportunistically skip pointless re-" +"encoding of existing Opus audio data for a boost in performance at the " +"cost of a short initial delay to gather the information. The same can be " +"achieved by passing ``copy`` to the ``codec`` parameter, but only if you " +"know that the input source is Opus encoded beforehand." +msgstr "" + +#: 4097804468e6405b98c9e9a7b816e268 discord.player.FFmpegOpusAudio:22 of +msgid "" +"The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is" +" ``True`` then this is a file-like object that is passed to the stdin of " +"ffmpeg." +msgstr "" + +#: 6012d88e487c49daa51b2a8bf0029b6b discord.player.FFmpegOpusAudio:27 of +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "" + +#: c6bb03f73f714f3696b1d71832aa6dd7 discord.player.FFmpegOpusAudio:30 of +msgid "" +"The codec to use to encode the audio data. Normally this would be just " +"``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to " +"opportunistically skip pointlessly re-encoding Opus audio data by passing" +" ``copy`` as the codec value. Any values other than ``copy``, ``opus``, " +"or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +" .. warning:: Do not provide this parameter unless you are certain " +"that the audio input is already Opus encoded. For typical use " +":meth:`FFmpegOpusAudio.from_probe` should be used to determine the " +"proper value for this parameter." +msgstr "" + +#: c802b41b6d7c4883b9a394014bcc25c0 discord.player.FFmpegOpusAudio:30 of +msgid "" +"The codec to use to encode the audio data. Normally this would be just " +"``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to " +"opportunistically skip pointlessly re-encoding Opus audio data by passing" +" ``copy`` as the codec value. Any values other than ``copy``, ``opus``, " +"or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "" + +#: 09a411b1eaf34bc69f3bfbeb340af7d3 discord.player.FFmpegOpusAudio:38 of +msgid "" +"Do not provide this parameter unless you are certain that the audio input" +" is already Opus encoded. For typical use " +":meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper" +" value for this parameter." +msgstr "" + +#: 35f1693ec571498197d28d5d66518671 discord.player.FFmpegOpusAudio.from_probe:3 +#: of +msgid "" +"A factory method that creates a :class:`FFmpegOpusAudio` after probing " +"the input source for audio codec and bitrate information." +msgstr "" + +#: 41e640e3d8f14aa0a4cc4e58026ee763 discord.player.FFmpegOpusAudio.from_probe:7 +#: of +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "" + +#: discord.player.FFmpegOpusAudio.from_probe:9 e38b99fa71bc4e8492387ca26352a623 +#: of +msgid "" +"The probing method used to determine bitrate and codec information. As a " +"string, valid values are ``native`` to use ffprobe (or avprobe) and " +"``fallback`` to use ffmpeg (or avconv). As a callable, it must take two " +"string arguments, ``source`` and ``executable``. Both parameters are the" +" same values passed to this factory function. ``executable`` will default" +" to ``ffmpeg`` if not provided as a keyword argument." +msgstr "" + +#: a2d8c7a8d4774b2f9fb7fd738de46c8d +#: discord.player.FFmpegOpusAudio.from_probe:16 of +msgid "" +"The remaining parameters to be passed to the :class:`FFmpegOpusAudio` " +"constructor, excluding ``bitrate`` and ``codec``." +msgstr "" + +#: discord.player.FFmpegOpusAudio.from_probe:19 +#: e14ec376d42c48c681eb7482ec2bbc94 of +msgid "An instance of this class." +msgstr "" + +#: 91039cd3f1a646fd93a389dc3e904682 +#: discord.player.FFmpegOpusAudio.from_probe:20 of +msgid ":class:`FFmpegOpusAudio`" +msgstr "" + +#: 3053ad3525814d9b9594f43d09f6897f db6a307d1e144376a9adfd32cd860429 +#: discord.player.FFmpegOpusAudio.from_probe:22 +#: discord.player.FFmpegOpusAudio.probe:16 of +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "" + +#: 6cc842547fd3432eba8e2eee96e8c792 +#: discord.player.FFmpegOpusAudio.from_probe:23 +#: discord.player.FFmpegOpusAudio.probe:17 e0336172704945ea9e77c9f6e061ce96 of +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "" + +#: 15fd471b8f1d4008b6dcecbdd944d531 +#: discord.player.FFmpegOpusAudio.from_probe:26 of +msgid "Examples" +msgstr "" + +#: 5bb31401509a4000a5ac24d2e4fccdcd +#: discord.player.FFmpegOpusAudio.from_probe:27 of +msgid "" +"Use this function to create an :class:`FFmpegOpusAudio` instance instead " +"of the constructor: ::" +msgstr "" + +#: 24863a6c90b147e3b3513066b31da439 +#: discord.player.FFmpegOpusAudio.from_probe:32 of +msgid "" +"If you are on Windows and don't have ffprobe installed, use the " +"``fallback`` method to probe using ffmpeg instead: ::" +msgstr "" + +#: 5f3cfac1b6574d86a3845b06726769ea +#: discord.player.FFmpegOpusAudio.from_probe:38 of +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "" + +#: aa8415fa4b594f4ea8734411049ff2fe discord.player.FFmpegOpusAudio.probe:3 of +msgid "Probes the input source for bitrate and codec information." +msgstr "" + +#: 07a37479b48e47c2942cbb79eabfe372 discord.player.FFmpegOpusAudio.probe:6 of +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "" + +#: c1a1cca3f2da464795bf0e0b01c1e012 discord.player.FFmpegOpusAudio.probe:8 of +msgid "" +"Identical to the ``method`` parameter for " +":meth:`FFmpegOpusAudio.from_probe`." +msgstr "" + +#: 23cde3d76b3a4182bfe7f7d9b665280c discord.player.FFmpegOpusAudio.probe:10 of +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "" + +#: 00c5fe83aed044d5ae6120952dda1239 discord.player.FFmpegOpusAudio.probe:13 of +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "" + +#: 4546934e84b647eeaab2d6b3fb42f1fe discord.player.FFmpegOpusAudio.probe:14 of +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "" + +#: discord.player.PCMVolumeTransformer:1 e96c63f1e2ae4283862ed283aa007033 of +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "" + +#: 73a707c638464a5e95fc9ad86306f669 discord.player.PCMVolumeTransformer:3 of +msgid "" +"This does not work on audio sources that have :meth:`AudioSource.is_opus`" +" set to ``True``." +msgstr "" + +#: 35d32bf867b441eba8a6e6873210647c discord.player.PCMVolumeTransformer:7 of +msgid "The original AudioSource to transform." +msgstr "" + +#: 5a7f62f4887b41f892643cd0f9875629 discord.player.PCMVolumeTransformer:10 of +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "" + +#: b25b8f369b194c0588eff0b0bc4b849d discord.player.PCMVolumeTransformer:14 of +msgid "Not an audio source." +msgstr "" + +#: 04045b3895c64369adf33b5585c7a5d4 discord.player.PCMVolumeTransformer:15 of +msgid "The audio source is opus encoded." +msgstr "" + +#: 3618db04a8bf4ade8f80c7f6badc6dcb discord.PCMVolumeTransformer.volume:1 of +msgid "" +"Retrieves or sets the volume as a floating point percentage (e.g. ``1.0``" +" for 100%)." +msgstr "" + +#: ../../api/voice.rst:51 ed47d49eed814b809c78cc4bb0732cac +msgid "Opus Library" +msgstr "" + +#: 22e8938e9f34444eb6d6894735b125b8 discord.opus.load_opus:1 of +msgid "Loads the libopus shared library for use with voice." +msgstr "" + +#: afe64cf940e5486696ce22d97e7f0a0e discord.opus.load_opus:3 of +msgid "" +"If this function is not called then the library uses the function " +":func:`ctypes.util.find_library` and then loads that one if available." +msgstr "" + +#: discord.opus.load_opus:6 e0503cede5cf472bb7f490681eae194b of +msgid "" +"Not loading a library and attempting to use PCM based AudioSources will " +"lead to voice not working." +msgstr "" + +#: 15797ca758624cdd9e5a2bf2903b9c1b discord.opus.load_opus:9 of +msgid "This function propagates the exceptions thrown." +msgstr "" + +#: afe43f95849942968874292393a7fcc5 discord.opus.load_opus:13 of +msgid "" +"The bitness of the library must match the bitness of your python " +"interpreter. If the library is 64-bit then your python interpreter must " +"be 64-bit as well. Usually if there's a mismatch in bitness then the load" +" will throw an exception." +msgstr "" + +#: 1a73eb3b82294411b6413c19cc7f2dac discord.opus.load_opus:20 of +msgid "" +"On Windows, this function should not need to be called as the binaries " +"are automatically loaded." +msgstr "" + +#: cb3839f007134b0494f90eceb2d946e7 discord.opus.load_opus:25 of +msgid "" +"On Windows, the .dll extension is not necessary. However, on Linux the " +"full extension is required to load the library, e.g. ``libopus.so.1``. On" +" Linux however, :func:`ctypes.util.find_library` will usually find the " +"library automatically without you having to call this." +msgstr "" + +#: 327817cde81f4049bd3f39b9d09ab729 discord.opus.load_opus:31 of +msgid "The filename of the shared library." +msgstr "" + +#: discord.opus.is_loaded:1 e8dbd72423d7404eb8cc41395b1aca77 of +msgid "" +"Function to check if opus lib is successfully loaded either via the " +":func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "" + +#: ac6afe44563847638f4fd78ddaf09561 discord.opus.is_loaded:4 of +msgid "This must return ``True`` for voice to work." +msgstr "" + +#: bd1e2285c4c64e288ecf523960eb60ef discord.opus.is_loaded:6 of +msgid "Indicates if the opus library has been loaded." +msgstr "" + +#: 7e7adaac9a18484590ca895cd62bf0f4 discord.opus.is_loaded:7 of +msgid ":class:`bool`" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/api/webhooks.po b/docs/locales/en/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..a72fffd831 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,1282 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../api/webhooks.rst:4 9e237853b6974d7a8ff25dfe852a6d11 +msgid "Webhook Support" +msgstr "" + +#: ../../api/webhooks.rst:6 33c0738132ee4d2cb28a05405a8c229b +msgid "" +"Pycord offers support for creating, editing, and executing webhooks " +"through the :class:`Webhook` class." +msgstr "" + +#: 54762879672a46deade9460a7b561492 discord.webhook.async_.Webhook:1 of +msgid "Represents an asynchronous Discord webhook." +msgstr "" + +#: 6130f4c50d5c45348a4b8700b8749b08 discord.webhook.async_.Webhook:3 of +msgid "" +"Webhooks are a form to send messages to channels in Discord without a bot" +" user or authentication." +msgstr "" + +#: 2802a4be3d954ea6ac5ed96edb9a9ee4 discord.webhook.async_.Webhook:6 of +msgid "" +"There are two main ways to use Webhooks. The first is through the ones " +"received by the library such as :meth:`.Guild.webhooks` and " +":meth:`.TextChannel.webhooks`. The ones received by the library will " +"automatically be bound using the library's internal HTTP session." +msgstr "" + +#: dc823f1bd57a4d748871bf198faff87f discord.webhook.async_.Webhook:11 of +msgid "" +"The second form involves creating a webhook object manually using the " +":meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "" + +#: discord.webhook.async_.Webhook:14 f867b6076f3b414b863f2e50bcd71f69 of +msgid "" +"For example, creating a webhook from a URL and using :doc:`aiohttp " +"`:" +msgstr "" + +#: discord.webhook.async_.Webhook:26 ec565b094bc14d95b4f18fd1cf8b70d4 of +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "" + +#: 0f99b9ceb45740a89e4a7bc12c91e1be dc8818835a2a415e91e864c41617c1f6 +#: discord.webhook.async_.Webhook:32 discord.webhook.sync.SyncWebhook:9 of +msgid "Checks if two webhooks are equal." +msgstr "" + +#: 57e5d2ff7e674b70b1cf5a365d0aea05 603bc49aeff04503875d0e8b59b50e85 +#: discord.webhook.async_.Webhook:36 discord.webhook.sync.SyncWebhook:13 of +msgid "Checks if two webhooks are not equal." +msgstr "" + +#: a29f89c3884241678664d1eee50c1e62 discord.webhook.async_.Webhook:40 +#: discord.webhook.sync.SyncWebhook:17 f67c6e3c0c584db6b9a8f1fa014acd8a of +msgid "Returns the webhook's hash." +msgstr "" + +#: 2f5354a5e28d48a18d49b336417b9908 discord.webhook.async_.Webhook:42 +#: discord.webhook.sync.SyncWebhook:19 e2c2d969ba244d58ae00978769243829 of +msgid "Webhooks are now comparable and hashable." +msgstr "" + +#: 3ed2fd63f3bd469a8e02a4173568af01 9ce39e01859943ada5b04b9feca0629d +#: discord.webhook.async_.Webhook:47 discord.webhook.sync.SyncWebhook:24 of +msgid "The webhook's ID" +msgstr "" + +#: 05226483bba4422686ebd5e1759e03eb 072b763bd6954d3887f1377e27a1cf78 +#: 1c5ffd2d40474cd69c8be7d2369fa2bd 399c74a3ba7a4edf8f85c0dbfa06b384 +#: 7f6a88023911415b9572f52fd6745bf6 867fb1d0956c45a688a9bccd4d0e39d2 +#: 8ec37bba20ef472bbd5212b0e31c1f90 977e58a364e54f12a0e7ab82f7953c1e +#: 9ee22664aca94669b7f1f42eee35554d a175b7d3b082438481a88e170e3b56ee +#: a7888f4831c04a9d8543768f6e1124bc c62c2bc7e9dc40df90d661c4f5495935 +#: d7094652b36144c0bfebb152aa3641a5 d78e692debe24339a7306250c641697d +#: discord.webhook.async_.Webhook discord.webhook.sync.SyncWebhook +#: ef7491e47bbe4bc6a92a3f236a1243b5 f3f076cd019940dbac5d2fde2b488ffb +#: f89922b9fe28493d8b9865e2221e51c6 fcd7cc29aa6642c69b150c09448a7cc2 of +msgid "type" +msgstr "" + +#: 184ca03bc9b9433d9d4dddb9314f7e79 8b68ef30b943469eb2d5429f2eb295e0 +#: discord.webhook.async_.Webhook:49 discord.webhook.sync.SyncWebhook:26 of +msgid ":class:`int`" +msgstr "" + +#: 23d4eb2113df49e59ec53bb2ab1ec13d 9d87af4b6a0a46fab4c6bae84cf5672d +#: discord.webhook.async_.Webhook:53 discord.webhook.sync.SyncWebhook:30 of +msgid "The type of the webhook." +msgstr "" + +#: 6528be88792745c6af85081b08b61ae2 bbca3d9eb4cb4108a6ce498ea4c5e5c4 +#: discord.webhook.async_.Webhook:57 discord.webhook.sync.SyncWebhook:34 of +msgid ":class:`WebhookType`" +msgstr "" + +#: 1953f318f067447d92c2841b3eee95f0 46f8d685eb114e3a8bafa7a33030f297 +#: discord.webhook.async_.Webhook:61 discord.webhook.sync.SyncWebhook:38 of +msgid "" +"The authentication token of the webhook. If this is ``None`` then the " +"webhook cannot be used to make requests." +msgstr "" + +#: 39cd7a6cc7614da0951dcb4fd2941973 5649761eac8c4357bf37e0ee72ed10a8 +#: 9fe496235d7840c398a8639d961be6d3 b51554387f2146e2a8d4785717942922 +#: discord.webhook.async_.Webhook:64 discord.webhook.async_.Webhook:89 +#: discord.webhook.sync.SyncWebhook:41 discord.webhook.sync.SyncWebhook:66 of +msgid "Optional[:class:`str`]" +msgstr "" + +#: 002478d171954c4db75c0f7a56587338 3d66f509729149c8bbac1ca7158b6d1d +#: discord.webhook.async_.Webhook:68 discord.webhook.sync.SyncWebhook:45 of +msgid "The guild ID this webhook is for." +msgstr "" + +#: 1b1adc2b50f9480baf153d1c675d23cf 34f98475bb884d7a8a4d349034bec7ac +#: 5d430eaf86a048df9dec47af3be3b9b3 c32911d397be4cf89ac379159b2f6d57 +#: discord.webhook.async_.Webhook:70 discord.webhook.async_.Webhook:76 +#: discord.webhook.sync.SyncWebhook:47 discord.webhook.sync.SyncWebhook:53 of +msgid "Optional[:class:`int`]" +msgstr "" + +#: 5df24bb44a7644778c46c75edf333f6f discord.webhook.async_.Webhook:74 +#: discord.webhook.sync.SyncWebhook:51 f66a9b011d8744dab4f5db75a3354512 of +msgid "The channel ID this webhook is for." +msgstr "" + +#: 4219fda06ac7415fafeabc7dc92505fa cedfbbf319e24b1eaf5c66b0d7c90479 +#: discord.webhook.async_.Webhook:80 discord.webhook.sync.SyncWebhook:57 of +msgid "" +"The user this webhook was created by. If the webhook was received without" +" authentication then this will be ``None``." +msgstr "" + +#: 86343165e9814a6f82275ef89a1bf72b dbf3fdf8db6f4a6aaa23cdd208067234 +#: discord.webhook.async_.Webhook:83 discord.webhook.sync.SyncWebhook:60 of +msgid "Optional[:class:`abc.User`]" +msgstr "" + +#: 1b3eba38201c4dcb92a79961d72806c3 8bc7666887ed4603a6232806b47a4c2d +#: discord.webhook.async_.Webhook:87 discord.webhook.sync.SyncWebhook:64 of +msgid "The default name of the webhook." +msgstr "" + +#: b53f00434bb847d8a9a05f1842e7e1eb discord.webhook.async_.Webhook:93 +#: discord.webhook.sync.SyncWebhook:70 e84cc4c1e7a6427c9575f5db957431f4 of +msgid "" +"The guild of the channel that this webhook is following. Only given if " +":attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "" + +#: 1e87802b937d4ba987fbf4449c3ddd65 d52a790cb9e7434e88c6340f52a355a2 +#: discord.webhook.async_.Webhook:98 discord.webhook.sync.SyncWebhook:75 of +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "" + +#: 4334d13ae69f4f6bb91c758ff189fa68 6b7f2c1f04ab47fbaccb2d8da7fe625b +#: discord.webhook.async_.Webhook:102 discord.webhook.sync.SyncWebhook:79 of +msgid "" +"The channel that this webhook is following. Only given if :attr:`type` is" +" :attr:`WebhookType.channel_follower`." +msgstr "" + +#: 2834bba8c9944769b38d885305df7bba 8de51b6d44fa4737ab540ddd87c185e5 +#: discord.webhook.async_.Webhook:107 discord.webhook.sync.SyncWebhook:84 of +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "" + +#: ../../api/webhooks.rst 2a6dbf19fec0401da878f409a1223406 +#: 2a7ce2d14e6f4d43b8c18dff80d69818 4741bbc19cc448e7a02b3f14ab40082c +#: 47f64a1ccedb412d84512fcc3de54af9 4b8e494f55ce467a83a0dcf8564c7128 +#: 5a1d6647cea44a9d9b3b953b03be20a7 65b91ca4c67a4c6e9e223bd4baa39cb6 +#: 65d278375a114be1ad47244bad120056 729868ab3cdb4d64b21427008b0e502a +#: 81a7bc9a0f9b44f096f6bc43e2b732df 89516d3e3b6e4664bc4cb33c0a15da00 +#: 8d2ed0e6e1f04493bea6cde65a3b803e 8d70d5eaacf6471eb3976571a766f5ac +#: aeac642079b24da39a55b480d7f11f21 b6ec5afcc4844a89a37ff06b1fce8728 +#: b9fbe6d21b144e38a3b8bddecb0cd260 baac432c9cbe4b4dafaea5b2e243ef22 +#: bab986faa9b84b6eab3766e5dc4f65be bb88186e3c324dc9ae129eed893ed95a +#: c1637efd86d14f01a5ab87bf13ff0a9a dd2dadd1bc354860a8d3bfd963efa172 +#: e2fc7b85f0a54cf2bc9583210cbc562a eaa61028dd334053a6054d950e115f67 +#: ecefa989d6bf4423817f8af3a9760b04 fca3bbdeba264d51b10896fc9ba953ab +#: ff360a3fe64d475c8bb0223c151e15b2 +msgid "Parameters" +msgstr "" + +#: 018110b6f40d477fb9910915d427bea0 80def0fef9c746b99c1c6e318bf3e746 +#: discord.SyncWebhook.url:1 discord.Webhook.url:1 of +msgid "Returns the webhook's url." +msgstr "" + +#: 7060f29dd7d1487eb9d7de8d9442330e 8a221f21eb4f46038c4abbfa44db1805 +#: discord.webhook.async_.Webhook.partial:1 +#: discord.webhook.sync.SyncWebhook.partial:1 of +msgid "Creates a partial :class:`Webhook`." +msgstr "" + +#: 0592a0870448481e81add88499153b79 4255bef48a8b4c979d2947ded336c0a0 +#: discord.webhook.async_.Webhook.partial:4 +#: discord.webhook.sync.SyncWebhook.partial:4 of +msgid "The ID of the webhook." +msgstr "" + +#: b4570f53785d4f84b44fbd4766c2c1a4 c26ef7a4a733461089c7cc53d5264381 +#: discord.webhook.async_.Webhook.partial:7 +#: discord.webhook.sync.SyncWebhook.partial:7 of +msgid "The authentication token of the webhook." +msgstr "" + +#: 169396a9a2a44033b16911dd71982574 6ba95c33a1c147bcae02dd0fb1ad126f +#: discord.webhook.async_.Webhook.from_url:7 +#: discord.webhook.async_.Webhook.partial:10 of +msgid "" +"The session to use to send requests with. Note that the library does not " +"manage the session and will not close it. .. versionadded:: 2.0" +msgstr "" + +#: 0392881964294df0adb890e3948ef49a 5d12b915f2fe409e9134257c1fce1245 +#: discord.webhook.async_.Webhook.from_url:7 +#: discord.webhook.async_.Webhook.partial:10 of +msgid "" +"The session to use to send requests with. Note that the library does not " +"manage the session and will not close it." +msgstr "" + +#: 4059598390a3493db4f0464693630d6f discord.webhook.async_.Webhook.from_url:14 +#: discord.webhook.async_.Webhook.partial:17 f56210d48c314e5ea934feb4104820be +#: of +msgid "" +"The bot authentication token for authenticated requests involving the " +"webhook. .. versionadded:: 2.0" +msgstr "" + +#: 064c5bda421e4afe8052ed60c0c4571e 16b667fd36e34ab399f839558bbc75ad +#: b89e527c039d4ac4bfb0a83251f0555f discord.webhook.async_.Webhook.from_url:14 +#: discord.webhook.async_.Webhook.partial:17 +#: discord.webhook.sync.SyncWebhook.from_url:13 +#: discord.webhook.sync.SyncWebhook.partial:16 e533e1fc79ea4a9d894e7d4a9696bd95 +#: of +msgid "" +"The bot authentication token for authenticated requests involving the " +"webhook." +msgstr "" + +#: ../../api/webhooks.rst 12571487fd124a6eb98a51b7920fe0e0 +#: 1d8bc33d958e4f5badb9f73b71839d26 3b3abc39ee1844b0bb02a7aafaee63e2 +#: 6e5d965f5a2349cfb6a0986aa9c2b95c 741af853c2694404a8ef56d3c940e9cf +#: 9ec5fe0284294ee9a5fd8a662fc09e1d a5c71bce8be04ac48397306b296e5072 +#: a69a2f45e4084666a57a753f4330b119 b3acc75316bb4d99b9aaf08576b709ec +#: bbb70b8fcf224bc2921b14e7a306d2f9 be0a1ab8a2254c6fbb9f6bbbc1297311 +#: bfbbab2561944cb7815d1807ed46bbf4 bfccb2081a444eabb4f9950ff32a1f1c +#: ca07b32fc1e442589857078a4fc9fcdd +msgid "Returns" +msgstr "" + +#: 36c2aaac7c1c430ab6e86cbec6344fd5 36f56ffb485d46158134af3f3b72d49e +#: 5ef04c727fa84405952bca3ed5f64830 a9420415c08a419f937591ef861c05bd +#: discord.webhook.async_.Webhook.from_url:20 +#: discord.webhook.async_.Webhook.partial:23 +#: discord.webhook.sync.SyncWebhook.from_url:17 +#: discord.webhook.sync.SyncWebhook.partial:20 of +msgid "" +"A partial :class:`Webhook`. A partial webhook is just a webhook object " +"with an ID and a token." +msgstr "" + +#: ../../api/webhooks.rst 0061f3f374b842f89f81294919e7b332 +#: 0e582d4c476141f2a5dfb615c6d02191 17f68472dcba42fe8f0af144bff7693b +#: 1c93c2d555534835830b25ff5e8de975 21a35e447c374a698149c8cee0fb0f2e +#: 29a4d73f6f654bdb95f59cdb8283b986 3524ae7c70fe448da373ac18c91541b4 +#: 3a0de5cee95f4f069e27cab0d5bd36ad 41dc47e592ff45e9804d032c9de5487c +#: 5e09707da35846aea09a89d60f3c1644 6543b487b51f491093b0a7518bdaff2b +#: 6699173541df4cf0b2d64dc1b9e32155 829bc489f8b4466ca10e8cb4aba00216 +#: a4b300f6a3534ff4b69575c05386db6f aa5695c654474111925b8ffa2a2c9e8b +#: b7c09fab2c2a41bbbdccb0e3bd1c1551 cac2e021160d479aa7aadb818c8ac8e2 +#: d7c1fa42b71d435e943f6847ae61ff6d e4cbe6ca2eb842c8a8500ec39b672a77 +#: ef9b57f90dde4f56a2ccfe907ae6f69a fd3f5c1073b64aef85851f24f370d2a7 +msgid "Return type" +msgstr "" + +#: 059596f78a2a4bc9a8f8dc47c0d72545 0ccfcf6854e942f9b2da580aab110e81 +#: 601902981989407daf93c9fcbb016b17 6abca8c4a9b04a5886c172663749bb17 +#: a0f0f04098a04adb95f6e6abc687ad8f discord.webhook.async_.Webhook.fetch:21 +#: discord.webhook.async_.Webhook.from_url:22 +#: discord.webhook.async_.Webhook.partial:25 +#: discord.webhook.sync.SyncWebhook.from_url:19 +#: discord.webhook.sync.SyncWebhook.partial:22 of +msgid ":class:`Webhook`" +msgstr "" + +#: 62db58ad3bb54bedaf637267dc5a1fee 7149d5e4edae46c987d2af3fcb4ebd5f +#: discord.webhook.async_.Webhook.from_url:1 +#: discord.webhook.sync.SyncWebhook.from_url:1 of +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "" + +#: 4f9eae91845a4c379810ccd3aad3cc56 7c5b01df522d472f80c1a9f78fa193e0 +#: discord.webhook.async_.Webhook.from_url:4 +#: discord.webhook.sync.SyncWebhook.from_url:4 of +msgid "The URL of the webhook." +msgstr "" + +#: ../../api/webhooks.rst 28e9e782dcad43c79f853109d7b92168 +#: 3080f4116f3e474a964564620d33d546 3a5fb2ca5abe4ff9a7d5135aa47cb20d +#: 43431d37eb44432ab097b3c8bd6eebaa 44a3c53d49f14587bd21ab912ce74102 +#: 595a6c1517874a3ca096bfc82e4eb846 636efb42801a4e0ab427b4b82d656c51 +#: 63a102f3ac9b44338a3a33437fe21c10 735b30610b2d466fbc18d717607b17af +#: 783798e7c763484396703d61f4209dbc 8846e8c581084bd88c4286cea6adbada +#: 897b5cd4992649b8a43bef0460638485 a319616061d3489dbd1dd48a4fee5c2d +#: a4b28b0d5cbc42bc82da2d2681de25c1 c8082c50852f4964a1162bc2b99d28b7 +#: d518bcc0541b4feb921292e91cf26a84 e9c9c989994a48a696dd689ad339f5bb +#: eb44bdd7071642c4a7ccb7218511163e f80dfcc52ab24a2faf78d0c8ae0f3e45 +#: fcb19d9c341241e4bf05a85eca2c35fa +msgid "Raises" +msgstr "" + +#: 022c94d40db7432aa9cf6f59be93c970 discord.webhook.async_.Webhook.from_url:24 +#: discord.webhook.sync.SyncWebhook.from_url:21 +#: fd13911f4fb04a6a8c733764abc6c038 of +msgid "The URL is invalid." +msgstr "" + +#: 3c670e77e3014641b345ff9edcb30e48 5abfca86c9ce4e8ba1b1400f5b041625 +#: 5b3ab39649904daa96a5df16fe43ada9 65809090934a42c385643aa8161f76c5 +#: 98db0506d8664e9883d7d98092812915 99fc496d0ac84fd1b6254e9e641ae26a +#: a07e1c7805a6456eb5fae0f8e1d4e9a7 d750fbe688d34b7aa89e230293149b20 +#: discord.webhook.async_.Webhook.delete:1 +#: discord.webhook.async_.Webhook.delete_message:1 +#: discord.webhook.async_.Webhook.edit:1 +#: discord.webhook.async_.Webhook.edit_message:1 +#: discord.webhook.async_.Webhook.fetch:1 +#: discord.webhook.async_.Webhook.fetch_message:1 +#: discord.webhook.async_.Webhook.send:1 +#: discord.webhook.async_.WebhookMessage.delete:1 +#: discord.webhook.async_.WebhookMessage.edit:1 +#: fdac30d2f8df4bb79aeba08a36bff1af of +msgid "|coro|" +msgstr "" + +#: 06063b46c8fa47e5aa54f5814933d47a c00659f5b83642ed863a181fe19bf563 +#: discord.webhook.async_.Webhook.fetch:3 +#: discord.webhook.sync.SyncWebhook.fetch:1 of +msgid "Fetches the current webhook." +msgstr "" + +#: 128848745b104f83b614d254f783f575 discord.webhook.async_.Webhook.fetch:5 +#: discord.webhook.sync.SyncWebhook.fetch:3 fd68769bc4214fb9b2ab6cb849349357 of +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "" + +#: d017065daedf4887aaa434a7884526ba d8056223bc7b452588e155d2a25a0e6a +#: discord.webhook.async_.Webhook.fetch:11 +#: discord.webhook.sync.SyncWebhook.fetch:7 of +msgid "" +"When fetching with an unauthenticated webhook, i.e. " +":meth:`is_authenticated` returns ``False``, then the returned webhook " +"does not contain any user information." +msgstr "" + +#: 2678d85a6195438ead791df56aba8df8 7bc22bff719a48868bb779b991673888 +#: a3b0757465ff40988f39230e3583ac71 a4d0c0aa071342de89544bd3e9a7b773 +#: a5e2023263e54bc9b57bc000f2d35cb6 d2c9412a9a9540379a2cf7e75301ed37 +#: discord.webhook.async_.Webhook.delete:11 +#: discord.webhook.async_.Webhook.edit:22 +#: discord.webhook.async_.Webhook.fetch:16 +#: discord.webhook.sync.SyncWebhook.delete:9 +#: discord.webhook.sync.SyncWebhook.edit:18 +#: discord.webhook.sync.SyncWebhook.fetch:12 of +msgid "" +"Whether to use the bot token over the webhook token if available. " +"Defaults to ``True``." +msgstr "" + +#: 273850f6ead544f3b039a7fc9a36a66b discord.webhook.async_.Webhook.fetch:20 +#: discord.webhook.sync.SyncWebhook.fetch:16 f0d7a0df843d452d9308fe6926d375e4 +#: of +msgid "The fetched webhook." +msgstr "" + +#: 1042ce16b0744e7eb7b3e2ba09d38b89 9581e77c1dfb4ff891ce35b50293fd58 +#: discord.webhook.async_.Webhook.fetch:23 +#: discord.webhook.sync.SyncWebhook.fetch:19 of +msgid "Could not fetch the webhook" +msgstr "" + +#: ac9d6dc8a5e94357a2e6169cb134288a be725566b076491d86a4709022702a7c +#: discord.webhook.async_.Webhook.fetch:24 +#: discord.webhook.sync.SyncWebhook.fetch:20 of +msgid "Could not find the webhook by this ID" +msgstr "" + +#: 2b80475f32b64b1cb7d4b297023aeabe 4fb58470918e432bbeb2fc2fe82f1a7f +#: 95dfabf235cb4b9aaf48598815661b67 99bdd9cfc74e4f4c8aa76af7a2ece6f9 +#: discord.webhook.async_.Webhook.delete:20 +#: discord.webhook.async_.Webhook.fetch:25 +#: discord.webhook.sync.SyncWebhook.delete:16 +#: discord.webhook.sync.SyncWebhook.fetch:21 of +msgid "This webhook does not have a token associated with it." +msgstr "" + +#: b98fb63484e64e238162e965364b8f0e discord.webhook.async_.Webhook.delete:3 +#: discord.webhook.sync.SyncWebhook.delete:1 fa3754c578994f009aeddfcebd10e908 +#: of +msgid "Deletes this Webhook." +msgstr "" + +#: 41d7fe3477004c43900875770aa5e2b1 cd9be7a2d2974b00948398efa1c82331 +#: discord.webhook.async_.Webhook.delete:6 +#: discord.webhook.sync.SyncWebhook.delete:4 of +msgid "" +"The reason for deleting this webhook. Shows up on the audit log. .. " +"versionadded:: 1.4" +msgstr "" + +#: b038db542f144f3495620fc573cdad90 d1cc11d81a834d5684d1741fa4437b2e +#: discord.webhook.async_.Webhook.delete:6 +#: discord.webhook.sync.SyncWebhook.delete:4 of +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "" + +#: 1044d0d698e040529c945421e1302e6e 4cde6ae633004199abdcb5396fe41a15 +#: discord.webhook.async_.Webhook.delete:11 +#: discord.webhook.async_.Webhook.edit:22 of +msgid "" +"Whether to use the bot token over the webhook token if available. " +"Defaults to ``True``. .. versionadded:: 2.0" +msgstr "" + +#: 45efc6b25d14483b87436e3ecf9fd1f6 discord.webhook.async_.Webhook.delete:17 +#: discord.webhook.sync.SyncWebhook.delete:13 eddf95f3a67e4642bc193431f42deb08 +#: of +msgid "Deleting the webhook failed." +msgstr "" + +#: 3b285a7aeb9f427daeb7bd5e53ff5a86 536f14d418644251b5ff1b7e5ec01288 +#: discord.webhook.async_.Webhook.delete:18 +#: discord.webhook.async_.Webhook.edit:29 +#: discord.webhook.sync.SyncWebhook.delete:14 +#: discord.webhook.sync.SyncWebhook.edit:26 e1f647d0018b4547ad3f3ba402104247 +#: ee60ed9a009c4fa09656abd081f253cf of +msgid "This webhook does not exist." +msgstr "" + +#: 71f5a227d7c44b61a6eef981e23dddc5 85e69036989b4731be5731dfcd41306a +#: discord.webhook.async_.Webhook.delete:19 +#: discord.webhook.sync.SyncWebhook.delete:15 of +msgid "You do not have permissions to delete this webhook." +msgstr "" + +#: 89935539aa134092ac26de7c313688be a670d75bf6e24f2ab26632be661e51c2 +#: discord.webhook.async_.Webhook.edit:3 +#: discord.webhook.sync.SyncWebhook.edit:1 of +msgid "Edits this Webhook." +msgstr "" + +#: a6532d34b6a9471cac961393098701e6 discord.webhook.async_.Webhook.edit:6 +#: discord.webhook.sync.SyncWebhook.edit:4 e242bdfc90f84563bb08b4a578fe643a of +msgid "The webhook's new default name." +msgstr "" + +#: beac2aa1cdaf423b85631336044144f5 bf637234fa6c42e8b1aa7f77b6d274d2 +#: discord.webhook.async_.Webhook.edit:9 +#: discord.webhook.sync.SyncWebhook.edit:7 of +msgid "" +"A :term:`py:bytes-like object` representing the webhook's new default " +"avatar." +msgstr "" + +#: 31a547df48b649ea82615ac1728ab8e3 discord.webhook.async_.Webhook.edit:12 of +msgid "" +"The webhook's new channel. This requires an authenticated webhook. .. " +"versionadded:: 2.0" +msgstr "" + +#: 4f9bd57c61d94fd3a99ab909c3c3191a 5b3c6db14fb245dfb10e78a5d84c0838 +#: discord.webhook.async_.Webhook.edit:12 +#: discord.webhook.sync.SyncWebhook.edit:10 of +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "" + +#: 6bdcdf3cdaae445cbdfd9515165491ee a2237b9b7cf84433bed33ef1d5ea7785 +#: discord.webhook.async_.Webhook.edit:17 +#: discord.webhook.sync.SyncWebhook.edit:13 of +msgid "" +"The reason for editing this webhook. Shows up on the audit log. .. " +"versionadded:: 1.4" +msgstr "" + +#: 493fa2a1bfc14309912031da714d1d75 discord.webhook.async_.Webhook.edit:17 +#: discord.webhook.sync.SyncWebhook.edit:13 e92ca34e199847288c58367a4b032e09 of +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "" + +#: 4f747bf4be1a48ebb06ecc3d8dbf1852 7b3a47d8d38b48809a95ebfc7dc82b14 +#: discord.webhook.async_.Webhook.edit:28 +#: discord.webhook.sync.SyncWebhook.edit:25 of +msgid "Editing the webhook failed." +msgstr "" + +#: a968a18c0a7541e08b3c4153b1a98a97 discord.webhook.async_.Webhook.edit:30 +#: discord.webhook.sync.SyncWebhook.edit:27 eb556b3e565e4e8090be3be7eecbde0b of +msgid "" +"This webhook does not have a token associated with it, or it tried " +"editing a channel without authentication." +msgstr "" + +#: 42d37765dc084fecb1b5885e6b7e4abe discord.webhook.async_.Webhook.edit:32 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr "" + +#: 04fff9e0abfb46a4904b63e06103f1ba d7b2819abc7d4e308bec9e2c19ab9261 +#: discord.webhook.async_.Webhook.send:3 +#: discord.webhook.sync.SyncWebhook.send:1 of +msgid "Sends a message using the webhook." +msgstr "" + +#: c5e799be8ade40e995feec52b7c333a0 discord.webhook.async_.Webhook.send:5 +#: discord.webhook.sync.SyncWebhook.send:3 e939b3c1c0d244ec8c03f29cbd41840e of +msgid "" +"The content must be a type that can convert to a string through " +"``str(content)``." +msgstr "" + +#: 1b6688110e8b417d9bee52af7467dbb0 discord.webhook.async_.Webhook.send:7 +#: discord.webhook.sync.SyncWebhook.send:5 e72113abad1b4144aa87980fa08569cd of +msgid "" +"To upload a single file, the ``file`` parameter should be used with a " +"single :class:`File` object." +msgstr "" + +#: 0831d821492945b0a04d2f131a91cf8c 63ec2bb4d5414b35bd9c625c36c49c81 +#: discord.webhook.async_.Webhook.send:10 +#: discord.webhook.sync.SyncWebhook.send:8 of +msgid "" +"If the ``embed`` parameter is provided, it must be of type :class:`Embed`" +" and it must be a rich embed type. You cannot mix the ``embed`` parameter" +" with the ``embeds`` parameter, which must be a :class:`list` of " +":class:`Embed` objects to send." +msgstr "" + +#: 0a8bf2ad589c441980181bba4eb1bfa1 da60f05732dc43f5958cf2351d73c9bd +#: discord.webhook.async_.Webhook.send:15 +#: discord.webhook.sync.SyncWebhook.send:13 of +msgid "The content of the message to send." +msgstr "" + +#: 497b38600d5b47be9c1ede2086ce1e43 discord.webhook.async_.Webhook.send:18 of +msgid "" +"Whether the server should wait before sending a response. This " +"essentially means that the return type of this function changes from " +"``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of " +"webhook is :attr:`WebhookType.application` then this is always set to " +"``True``." +msgstr "" + +#: 329f894d60e8418babd0615535838d79 75fd2675f2e44032be336c27e95f0425 +#: discord.webhook.async_.Webhook.send:24 +#: discord.webhook.sync.SyncWebhook.send:21 of +msgid "" +"The username to send with this message. If no username is provided then " +"the default username for the webhook is used." +msgstr "" + +#: 415ad7a79b724742b603af8dfd4a1d34 discord.webhook.async_.Webhook.send:28 +#: discord.webhook.sync.SyncWebhook.send:25 ed3035289e594e30a8faada7130a8ad3 of +msgid "" +"The avatar URL to send with this message. If no avatar URL is provided " +"then the default avatar for the webhook is used. If this is not a string " +"then it is explicitly cast using ``str``." +msgstr "" + +#: 57b92cca2540465fa3d09723f5190ae3 bdec6f4cafa148e3918db01822d37174 +#: discord.webhook.async_.Webhook.send:33 +#: discord.webhook.sync.SyncWebhook.send:30 of +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: d3e1180ae6b24785be8cca3925c9f1d5 discord.webhook.async_.Webhook.send:36 of +msgid "" +"Indicates if the message should only be visible to the user. This is only" +" available to :attr:`WebhookType.application` webhooks. If a view is sent" +" with an ephemeral message, and it has no timeout set then the timeout is" +" set to 15 minutes. .. versionadded:: 2.0" +msgstr "" + +#: 2073461bc84348999d9dc4844da44c6f discord.webhook.async_.Webhook.send:36 of +msgid "" +"Indicates if the message should only be visible to the user. This is only" +" available to :attr:`WebhookType.application` webhooks. If a view is sent" +" with an ephemeral message, and it has no timeout set then the timeout is" +" set to 15 minutes." +msgstr "" + +#: 3362b95bd934419c9251381914e90628 7c30236d94224488a57c2332448cb6e6 +#: 7c6e08154ecc4ca69dc4a064b23455ef b3a137449ab44e4aae5afd8b4c86108b +#: d5da797dde68461daf15dbe5cbc015df d67be620b0914c15b92a79cd02cb6319 +#: discord.webhook.async_.Webhook.edit_message:31 +#: discord.webhook.async_.Webhook.send:44 +#: discord.webhook.async_.WebhookMessage.edit:21 +#: discord.webhook.sync.SyncWebhook.edit_message:22 +#: discord.webhook.sync.SyncWebhook.send:33 +#: discord.webhook.sync.SyncWebhookMessage.edit:14 of +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "" + +#: 27765acd077d4a3b9e30f2fa38359bd7 34064a7e9e464392a61a70d956a57dfb +#: 7b7808e744a04aadb3d5e42c0f305be7 8d9cff7ca166417db59a8343a80ea9f0 +#: 9f5ad9e7cee54181848d2e2db990f038 +#: discord.webhook.async_.Webhook.edit_message:36 +#: discord.webhook.async_.Webhook.send:47 +#: discord.webhook.async_.WebhookMessage.edit:26 +#: discord.webhook.sync.SyncWebhook.edit_message:25 +#: discord.webhook.sync.SyncWebhook.send:36 +#: discord.webhook.sync.SyncWebhookMessage.edit:17 +#: f80272a359f441769b153488a3dec6eb of +msgid "" +"A list of files to send with the content. This cannot be mixed with the " +"``file`` parameter." +msgstr "" + +#: 7964d458be5e410b8d83db53a682494d 7c09cfd88d8a4109851ed05a46ae1e58 +#: discord.webhook.async_.Webhook.send:51 +#: discord.webhook.sync.SyncWebhook.send:40 of +msgid "" +"The rich embed for the content to send. This cannot be mixed with " +"``embeds`` parameter." +msgstr "" + +#: 33169aeae0d04196aaa9cdba77c5523a 4129e6e69a744c9f9011157faafde27a +#: discord.webhook.async_.Webhook.send:55 +#: discord.webhook.sync.SyncWebhook.send:44 of +msgid "" +"A list of embeds to send with the content. Maximum of 10. This cannot be " +"mixed with the ``embed`` parameter." +msgstr "" + +#: 38548540ca534e32b82858dc7e869d49 5ad6432e50fc4f0b8637b5f042754c8c +#: discord.webhook.async_.Webhook.send:59 +#: discord.webhook.sync.SyncWebhook.send:48 of +msgid "" +"Controls the mentions being processed in this message. .. versionadded::" +" 1.4" +msgstr "" + +#: 25a24ffcb57243e3a6aac660e58f40df a46016c132a14ba9a0b18b8a658f78d0 +#: discord.webhook.async_.Webhook.send:59 +#: discord.webhook.sync.SyncWebhook.send:48 of +msgid "Controls the mentions being processed in this message." +msgstr "" + +#: 5ace0f92a6434f1d842e58de5574440d discord.webhook.async_.Webhook.send:64 of +msgid "" +"The view to send with the message. You can only send a view if this " +"webhook is not partial and has state attached. A webhook has state " +"attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "" + +#: a2103cbca1a146e8b97c4431646b37c6 discord.webhook.async_.Webhook.send:64 of +msgid "" +"The view to send with the message. You can only send a view if this " +"webhook is not partial and has state attached. A webhook has state " +"attached if the webhook is managed by the library." +msgstr "" + +#: 1091b11fcf1a4d4da35ba6893f4e8510 discord.webhook.async_.Webhook.send:72 of +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "" + +#: cb9cb046f73843b5a03fe43fd7beb042 discord.webhook.async_.Webhook.send:72 of +msgid "The thread to send this webhook to." +msgstr "" + +#: 7a187519aa2940c9905505a4d17452f9 ce59182ca5ae46a7aa023fb15a759cff +#: discord.webhook.async_.Webhook.send:77 +#: discord.webhook.sync.SyncWebhook.send:58 of +msgid "" +"The name of the thread to create. Only works for forum channels. .. " +"versionadded:: 2.0" +msgstr "" + +#: 66b29f938d6744b793c75e144a609c1b cec0156f9702482e87281e9c7d4b5888 +#: discord.webhook.async_.Webhook.send:77 +#: discord.webhook.sync.SyncWebhook.send:58 of +msgid "The name of the thread to create. Only works for forum channels." +msgstr "" + +#: ba1f4ffdfcad4ef7b7b25ce1bcdec3a8 discord.webhook.async_.Webhook.send:82 of +msgid "" +"A list of tags to apply to the message. Only works for threads. .. " +"versionadded:: 2.5" +msgstr "" + +#: discord.webhook.async_.Webhook.send:82 e8959512ab2c4d488d564a97603a1a45 of +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "" + +#: 2e5f0ac61f574217a527c43908d96ed6 discord.webhook.async_.Webhook.send:87 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message we just sent." +msgstr "" + +#: 37f414a7bd1b4e68b81070bd20ade192 discord.webhook.async_.Webhook.send:91 of +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: dc0e0acf8e3b475f9037531ba1341c62 discord.webhook.async_.Webhook.send:91 of +msgid "The poll to send." +msgstr "" + +#: 198202cf1d9c4722873b76551c23a666 discord.webhook.async_.Webhook.send:96 +#: discord.webhook.sync.SyncWebhook.send:66 e0b22d0c21d741aa88a1390bece4595d of +msgid "" +"If ``wait`` is ``True`` then the message that was sent, otherwise " +"``None``." +msgstr "" + +#: df72ee848bf246b3b47dd71ddf117195 discord.webhook.async_.Webhook.send:97 of +msgid "Optional[:class:`WebhookMessage`]" +msgstr "" + +#: 7f8a38b849e445d6ba889e6cd458100e bfbf2157a6bb43c4b27470ab17ae6444 +#: discord.webhook.async_.Webhook.send:99 +#: discord.webhook.sync.SyncWebhook.send:69 of +msgid "Sending the message failed." +msgstr "" + +#: 14297b15634c4d1c8e59a5505bef80ae bcb74264d1f94f878a08026994728ba7 +#: discord.webhook.async_.Webhook.send:100 +#: discord.webhook.sync.SyncWebhook.send:70 of +msgid "This webhook was not found." +msgstr "" + +#: 288565c3281349929137c3cbd84263c1 57e9e2c90b6345d78dbd1c5a212a020a +#: discord.webhook.async_.Webhook.send:101 +#: discord.webhook.sync.SyncWebhook.send:71 of +msgid "The authorization token for the webhook is incorrect." +msgstr "" + +#: 1a57e7a87a114e19b05434cb16f239d9 discord.webhook.async_.Webhook.send:102 of +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "" + +#: d0ae47fd31c846c989dafd4048aca5c0 discord.webhook.async_.Webhook.send:103 of +msgid "The length of ``embeds`` was invalid." +msgstr "" + +#: 24d33e686b2541a7991efe6371d53143 discord.webhook.async_.Webhook.send:104 of +msgid "" +"Either there was no token associated with this webhook, ``ephemeral`` was" +" passed with the improper webhook type, there was no state attached " +"with this webhook when giving it a view, you specified both " +"``thread_name`` and ``thread``, or ``applied_tags`` was passed with " +"neither ``thread_name`` nor ``thread`` specified." +msgstr "" + +#: b698d80096f7403ba6c9c5f4f56f8cc4 discord.SyncWebhook.avatar:1 +#: discord.Webhook.avatar:1 fb5c67f696704406ada2e50fc20c3b5a of +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "" + +#: aa7e7e77e9a6417bbcad10b68769112a cd4bafd5cdd748e68418c0fe6a77903f +#: discord.SyncWebhook.avatar:3 discord.Webhook.avatar:3 of +msgid "" +"If the webhook does not have a traditional avatar, an asset for the " +"default avatar is returned instead." +msgstr "" + +#: b0e5df787afd4134a9f27c14cfa0806f discord.SyncWebhook.channel:1 +#: discord.Webhook.channel:1 ec155bb383b3493db6d592f118ef175d of +msgid "The text channel this webhook belongs to." +msgstr "" + +#: 022253ecc6494569a37a64e3989de332 49f080cdd3004ec4a04e580041816ff8 +#: c66385e00fac41c189ea7d82d85d0db9 discord.SyncWebhook.channel:3 +#: discord.SyncWebhook.guild:3 discord.Webhook.channel:3 +#: discord.Webhook.guild:3 fd82aac7debd473aa87a4ac0207e9c07 of +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "" + +#: 2bb647713cb24bc2b8fc3564e3c354d3 51ccbb8f14b1435a9cddb90967145461 +#: discord.SyncWebhook.created_at:1 discord.Webhook.created_at:1 of +msgid "Returns the webhook's creation time in UTC." +msgstr "" + +#: 3ebd689f276a43cab2c962219ed428bd +#: discord.webhook.async_.Webhook.fetch_message:3 of +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "" + +#: c416c824f58646938cc10f1ce57ed672 +#: discord.webhook.async_.Webhook.fetch_message:8 +#: discord.webhook.sync.SyncWebhook.fetch_message:6 +#: fe03e2f34f3949aebe2b2c2aeb8f376a of +msgid "The message ID to look for." +msgstr "" + +#: 1b801aa3da694b1fb0a41e006f67db48 54c1624e152d44a1b49022a5be33c6ed +#: c5e6600bf7394a67aa8724a86d9a8276 d3b17fa5d4074e1db1ae04d6532cc0b1 +#: discord.webhook.async_.Webhook.delete_message:14 +#: discord.webhook.async_.Webhook.fetch_message:11 +#: discord.webhook.sync.SyncWebhook.delete_message:12 +#: discord.webhook.sync.SyncWebhook.fetch_message:9 of +msgid "The ID of the thread that contains the message." +msgstr "" + +#: 6ab628d937b6459aafb88ff400bca888 764b8caa264548efafbde9aa61f2bd13 +#: discord.webhook.async_.Webhook.fetch_message:14 +#: discord.webhook.sync.SyncWebhook.fetch_message:12 of +msgid "The message asked for." +msgstr "" + +#: 3d4d1bd7b0fd48aaaccf3c7f3168d80d +#: discord.webhook.async_.Webhook.fetch_message:15 of +msgid ":class:`~discord.WebhookMessage`" +msgstr "" + +#: 7207fe3b68f64f8a8c140da81aa900da adc0d8e7494b4b28a27689f4642a99bf +#: discord.webhook.async_.Webhook.fetch_message:17 +#: discord.webhook.sync.SyncWebhook.fetch_message:15 of +msgid "The specified message was not found." +msgstr "" + +#: c26879650f5d433c814783394ac3ecf4 +#: discord.webhook.async_.Webhook.fetch_message:18 +#: discord.webhook.sync.SyncWebhook.fetch_message:16 +#: e527d204d3684032bdc3fc71333dcb56 of +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: 3b2a515c5b8448499ac19916bebbd377 92494eb4200f4da19d323bc789631de0 +#: discord.webhook.async_.Webhook.fetch_message:19 +#: discord.webhook.sync.SyncWebhook.fetch_message:17 of +msgid "Retrieving the message failed." +msgstr "" + +#: 15d7ddb34d114f7a99c69037b8bc39fa 1776e8cab52642f6a978d91bbf648938 +#: 4d11b05888b04d598188a4d96d126217 5b05a764b5944c69861df40833dc56b8 +#: c26a2b16d5d94bd3a65a5149327152aa +#: discord.webhook.async_.Webhook.fetch_message:20 +#: discord.webhook.async_.WebhookMessage.edit:58 +#: discord.webhook.sync.SyncWebhook.edit_message:40 +#: discord.webhook.sync.SyncWebhook.fetch_message:18 +#: discord.webhook.sync.SyncWebhookMessage.edit:35 of +msgid "There was no token associated with this webhook." +msgstr "" + +#: 52d58c37da744b78934404b08a05d5ef cd00141236a54abb9ac3b84eae0a578b +#: discord.SyncWebhook.guild:1 discord.Webhook.guild:1 of +msgid "The guild this webhook belongs to." +msgstr "" + +#: 53da81ecbe5a4d4bb63f4b4f776c0d41 c46e8899998c48fdbcc590fa47717cef +#: discord.webhook.async_.BaseWebhook.is_authenticated:1 of +msgid "" +"Whether the webhook is authenticated with a bot token. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: b6d6fa1f6451445c81ef826852a24c77 d39d405809f54a778e5db34e04b3fc95 +#: discord.webhook.async_.BaseWebhook.is_partial:1 of +msgid "" +"Whether the webhook is a \"partial\" webhook. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: c1b9dd3681ee4a8584c4cd79ed1d4977 c7eadbacb5ac4096b9b9bada91e833d2 +#: discord.webhook.async_.Webhook.edit_message:3 +#: discord.webhook.sync.SyncWebhook.edit_message:1 of +msgid "Edits a message owned by this webhook." +msgstr "" + +#: 3eefa1a227ea4f96b8d847a3a507fd6e 9971472f245b415aaadbb8956285f297 +#: discord.webhook.async_.Webhook.edit_message:5 +#: discord.webhook.sync.SyncWebhook.edit_message:3 of +msgid "" +"This is a lower level interface to :meth:`WebhookMessage.edit` in case " +"you only have an ID." +msgstr "" + +#: 2d67b9ca76344875adb757cf10cd8511 8af6785c98bc455e81d47c71f41501d8 +#: discord.webhook.async_.Webhook.edit_message:10 +#: discord.webhook.async_.WebhookMessage.edit:7 of +msgid "" +"The edit is no longer in-place, instead the newly edited message is " +"returned." +msgstr "" + +#: 5a82c8e80c41438cae3f995cf46fe2d6 a9e4ea6e61aa408ea880bd28b50cb2f8 +#: discord.webhook.async_.Webhook.edit_message:14 +#: discord.webhook.sync.SyncWebhook.edit_message:9 of +msgid "The message ID to edit." +msgstr "" + +#: 1bc930d388a74891b13d38e6263f9603 7cbd742ce2934ba58758ac9b9bd76dad +#: 9271f9c8ad084cebb3ed15f2dc0c2dc9 +#: discord.webhook.async_.Webhook.edit_message:17 +#: discord.webhook.async_.WebhookMessage.edit:11 +#: discord.webhook.sync.SyncWebhook.edit_message:12 +#: discord.webhook.sync.SyncWebhookMessage.edit:4 +#: ed34e4fc95fb47acbc1577c836be845a of +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "" + +#: 20312965a9b94e4fadbed393402e9263 85dd5e157ee54e66a6e28d78c61dc7bd +#: d8f2037a79c5458fba497be4b8086130 +#: discord.webhook.async_.Webhook.edit_message:20 +#: discord.webhook.async_.WebhookMessage.edit:14 +#: discord.webhook.sync.SyncWebhook.edit_message:15 +#: discord.webhook.sync.SyncWebhookMessage.edit:7 +#: eaf9bef906a241228685837428b088e2 of +msgid "A list of embeds to edit the message with." +msgstr "" + +#: 75f6749124da45c898b2058893bbcf1b 76fc68e7bd934eaf8fd9d73f92e66aa4 +#: a427e1e0136e41efaf57f2ffdb117ca2 b9494426284345ffbacd4b90e110c519 +#: discord.webhook.async_.Webhook.edit_message:23 +#: discord.webhook.async_.WebhookMessage.edit:17 +#: discord.webhook.sync.SyncWebhook.edit_message:18 +#: discord.webhook.sync.SyncWebhookMessage.edit:10 of +msgid "" +"The embed to edit the message with. ``None`` suppresses the embeds. This " +"should not be mixed with the ``embeds`` parameter." +msgstr "" + +#: 1261a847eaa24dc5a94da52ea090d093 6db59c19de404a34aa15bd6d90797c9b +#: discord.webhook.async_.Webhook.edit_message:27 +#: discord.webhook.async_.WebhookMessage.edit:32 of +msgid "" +"A list of attachments to keep in the message. If ``[]`` is passed then " +"all attachments are removed." +msgstr "" + +#: d973a268394c4f73b7f8296b53b752a4 +#: discord.webhook.async_.Webhook.edit_message:31 +#: discord.webhook.async_.WebhookMessage.edit:21 +#: ec50809a68e94bfcad75d7052dd6e7e9 of +msgid "" +"The file to upload. This cannot be mixed with ``files`` parameter. .. " +"versionadded:: 2.0" +msgstr "" + +#: 0648f797465242acbb5ad4fdefade223 2c367cdfe97d4ad0ab9138716b92addd +#: discord.webhook.async_.Webhook.edit_message:36 +#: discord.webhook.async_.WebhookMessage.edit:26 of +msgid "" +"A list of files to send with the content. This cannot be mixed with the " +"``file`` parameter. .. versionadded:: 2.0" +msgstr "" + +#: 67a35408e50b4bed92ac9a3f9e48eea7 8a2bb7cfd1b6467c9c7274a714affc32 +#: cb74411660504cafa28540cb949c8383 +#: discord.webhook.async_.Webhook.edit_message:42 +#: discord.webhook.async_.WebhookMessage.edit:38 +#: discord.webhook.sync.SyncWebhook.edit_message:29 +#: discord.webhook.sync.SyncWebhookMessage.edit:21 +#: e35ae8c47975407d87c8b79a106b96f8 of +msgid "" +"Controls the mentions being processed in this message. See " +":meth:`.abc.Messageable.send` for more information." +msgstr "" + +#: 18109d101eef4900888ecf232da08764 +#: discord.webhook.async_.Webhook.edit_message:46 of +msgid "" +"The updated view to update this message with. If ``None`` is passed then " +"the view is removed. The webhook must have state attached, similar to " +":meth:`send`. .. versionadded:: 2.0" +msgstr "" + +#: 1f6dedbbd77046aba39f88c90128c87e +#: discord.webhook.async_.Webhook.edit_message:46 of +msgid "" +"The updated view to update this message with. If ``None`` is passed then " +"the view is removed. The webhook must have state attached, similar to " +":meth:`send`." +msgstr "" + +#: 3ffcd5e8c19c43a893c62a8a241bb38e c8e07f2912274c8690eea158d709400e +#: discord.webhook.async_.Webhook.edit_message:53 +#: discord.webhook.sync.SyncWebhook.edit_message:33 of +msgid "The thread that contains the message." +msgstr "" + +#: 0e58b4588c244b2795b9a25162938b69 13349759eb4d4dd8802d0bed0cb95c2b +#: 67c4905f360444e286aa49fcfa2b1b10 ba994c7eba3048d7a5330aa66e6223a2 +#: discord.webhook.async_.Webhook.edit_message:56 +#: discord.webhook.async_.WebhookMessage.edit:48 +#: discord.webhook.sync.SyncWebhook.send:63 +#: discord.webhook.sync.SyncWebhookMessage.edit:25 of +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: c6dc3ee101f54698aeca7d6697305461 +#: discord.webhook.async_.Webhook.edit_message:59 of +msgid "The newly edited webhook message." +msgstr "" + +#: d23329b2f76a4159a4087965b502de6e de7030ddb3b642eab991d82d5465c6f6 +#: discord.webhook.async_.Webhook.edit_message:60 +#: discord.webhook.async_.WebhookMessage.edit:52 of +msgid ":class:`WebhookMessage`" +msgstr "" + +#: 2911c1f972ab4f1288075c647b177fe6 6071f2c259c143f7bbd0333a204b45d3 +#: 6b5a68c2d6384ab18f5c9c56e376ce4d d84d5cea09fe494b9d14bf275d256589 +#: discord.webhook.async_.Webhook.edit_message:62 +#: discord.webhook.async_.WebhookMessage.edit:54 +#: discord.webhook.sync.SyncWebhook.edit_message:36 +#: discord.webhook.sync.SyncWebhookMessage.edit:31 of +msgid "Editing the message failed." +msgstr "" + +#: 614c1f2626bb459b86310fb14a6766a5 97fab4294de84554a109d5cd2c95a4bd +#: ad39ad3511944866a16078d24a752fd5 +#: discord.webhook.async_.Webhook.edit_message:63 +#: discord.webhook.async_.WebhookMessage.edit:55 +#: discord.webhook.sync.SyncWebhook.edit_message:37 +#: discord.webhook.sync.SyncWebhookMessage.edit:32 +#: e85aed7299274aa8a607ea5efecdcd76 of +msgid "Edited a message that is not yours." +msgstr "" + +#: 05ce44d9433040619f0f644b8b548189 0ee40fbeeaed44cd89a5c938b564313c +#: 5cf2e6a486c747f695d24c1dd923ea49 6eac1c3b7292418d9bdc9468d9fd736b +#: d13931c4ffe84322bebc37b53d758401 +#: discord.webhook.async_.Webhook.edit_message:64 +#: discord.webhook.async_.WebhookMessage.edit:56 +#: discord.webhook.sync.SyncWebhook.edit_message:38 +#: discord.webhook.sync.SyncWebhook.send:72 +#: discord.webhook.sync.SyncWebhookMessage.edit:33 of +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "" + +#: 434643453fe94810856e9d1711091f11 4fc8b66942cb4839b20e5560afa7501e +#: b3eab12f8e87462abedbcfa904a6e147 +#: discord.webhook.async_.Webhook.edit_message:65 +#: discord.webhook.async_.WebhookMessage.edit:57 +#: discord.webhook.sync.SyncWebhook.edit_message:39 +#: discord.webhook.sync.SyncWebhook.send:73 +#: discord.webhook.sync.SyncWebhookMessage.edit:34 +#: e8b9d1bf3500443ca1d1f7af7e64ab46 efe8437bf03e4fe99966973bbda26d5e of +msgid "The length of ``embeds`` was invalid" +msgstr "" + +#: 2edea985551c4f80a4872296178d9704 +#: discord.webhook.async_.Webhook.edit_message:66 of +msgid "" +"There was no token associated with this webhook or the webhook had no" +" state." +msgstr "" + +#: 15dea039ddd742c2811ae0ba4a4022a6 5c9da7d28dce4982bb84fd12dbbcecb0 +#: discord.webhook.async_.Webhook.delete_message:3 +#: discord.webhook.sync.SyncWebhook.delete_message:1 of +msgid "Deletes a message owned by this webhook." +msgstr "" + +#: d5c47868890b4d0cafffe8e6d913036b db8c1747493a459087e6b3b081ac0d5e +#: discord.webhook.async_.Webhook.delete_message:5 +#: discord.webhook.sync.SyncWebhook.delete_message:3 of +msgid "" +"This is a lower level interface to :meth:`WebhookMessage.delete` in case " +"you only have an ID." +msgstr "" + +#: 234aadd0447949f7ab7b01771bb782e7 6d1658d87fd344908d39bdff91044acb +#: discord.webhook.async_.Webhook.delete_message:11 +#: discord.webhook.sync.SyncWebhook.delete_message:9 of +msgid "The message ID to delete." +msgstr "" + +#: 08193ea844e54abdbec4d40e9e9ec844 091a2a3956304512919d443b2dfc9323 +#: cf6413728c3f4601bd518d470cd6aa52 +#: discord.webhook.async_.Webhook.delete_message:17 +#: discord.webhook.async_.WebhookMessage.delete:12 +#: discord.webhook.sync.SyncWebhook.delete_message:15 +#: discord.webhook.sync.SyncWebhookMessage.delete:10 +#: f107745635884aef9d7b126413adaca2 of +msgid "Deleting the message failed." +msgstr "" + +#: 922e88d327a343d08e8a5cea1070c9c1 9be5c7332c714e99ba44b7e8ea204674 +#: discord.webhook.async_.Webhook.delete_message:18 +#: discord.webhook.sync.SyncWebhook.delete_message:16 of +msgid "Deleted a message that is not yours." +msgstr "" + +#: 28f726448b1a4165867a73648669ed22 56f1e679fe0149e591ce572cd88e0d1a +#: 8e0ca3a0c65c4e00a88b8200783d8b3f b41bf4df2b96442ca315d4798262ea41 +#: c46e105b902f43849250fbc1da24ed70 +#: discord.webhook.async_.Webhook.delete_message:20 +#: discord.webhook.async_.WebhookMessage.delete:14 +#: discord.webhook.sync.SyncWebhook.delete:18 +#: discord.webhook.sync.SyncWebhook.delete_message:18 +#: discord.webhook.sync.SyncWebhookMessage.delete:12 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 50e22ee16b5848178dc9b232382ae7e0 d71174eb01124078b8485ecf5425ec05 +#: discord.webhook.async_.WebhookMessage:1 +#: discord.webhook.sync.SyncWebhookMessage:1 of +msgid "Represents a message sent from your webhook." +msgstr "" + +#: 1c655677226f4830aedb23fb6f1837a8 c733980eb8534faf99bb803c964524c3 +#: discord.webhook.async_.WebhookMessage:3 +#: discord.webhook.sync.SyncWebhookMessage:3 of +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "" + +#: 33093f55fb9f4195a31a391a774f446b 8da32e9c443f44618a2d11ad25586f60 +#: discord.webhook.async_.WebhookMessage:6 +#: discord.webhook.sync.SyncWebhookMessage:6 of +msgid "" +"This inherits from :class:`discord.Message` with changes to :meth:`edit` " +"and :meth:`delete` to work." +msgstr "" + +#: 8d76438ac0a449f096840bc580b21c7a a2e790bc16394691bb3ba3168ece42f6 +#: discord.webhook.async_.WebhookMessage.edit:3 +#: discord.webhook.sync.SyncWebhookMessage.edit:1 of +msgid "Edits the message." +msgstr "" + +#: 465ce5ddd21b444aadbfef12107dcd6c +#: discord.webhook.async_.WebhookMessage.edit:32 of +msgid "" +"A list of attachments to keep in the message. If ``[]`` is passed then " +"all attachments are removed. .. versionadded:: 2.0" +msgstr "" + +#: 40f8551587c84121952e24867cb7b103 +#: discord.webhook.async_.WebhookMessage.edit:42 of +msgid "" +"The updated view to update this message with. If ``None`` is passed then " +"the view is removed. .. versionadded:: 2.0" +msgstr "" + +#: bbe0cec8d8fd472a8414d1f64c871ac9 +#: discord.webhook.async_.WebhookMessage.edit:42 of +msgid "" +"The updated view to update this message with. If ``None`` is passed then " +"the view is removed." +msgstr "" + +#: 0d4acea514904c8b82ce6ba49a8d5093 +#: discord.webhook.async_.WebhookMessage.edit:51 +#: discord.webhook.sync.SyncWebhookMessage.edit:28 +#: ea51e461eb4b4e72921bd90176465112 of +msgid "The newly edited message." +msgstr "" + +#: 1512b9e2d2e74beea6be22bd4a805a28 16f52ca9ace24fb38a6dd193b112cc64 +#: discord.webhook.async_.WebhookMessage.delete:3 +#: discord.webhook.sync.SyncWebhookMessage.delete:1 of +msgid "Deletes the message." +msgstr "" + +#: 243b13bacd334531b0be3088f532d8cd +#: discord.webhook.async_.WebhookMessage.delete:6 of +msgid "" +"If provided, the number of seconds to wait before deleting the message. " +"The waiting is done in the background and deletion failures are ignored." +msgstr "" + +#: 96b6ad26e0cc4979923a463e329f90b3 aba4600cb0384affabc1e3f706cd8796 +#: discord.webhook.async_.WebhookMessage.delete:10 +#: discord.webhook.sync.SyncWebhookMessage.delete:8 of +msgid "You do not have proper permissions to delete the message." +msgstr "" + +#: b83c32c0775b4ad2903f16caa49b75cf +#: discord.webhook.async_.WebhookMessage.delete:11 +#: discord.webhook.sync.SyncWebhookMessage.delete:9 +#: f04e4a0b1cbf4f3daade0da691833e50 of +msgid "The message was deleted already." +msgstr "" + +#: cc1d33c5b8a84a29876ee006017500e9 discord.webhook.sync.SyncWebhook:1 of +msgid "Represents a synchronous Discord webhook." +msgstr "" + +#: d85dc67cc7ae41b887606e9f7b9836e0 discord.webhook.sync.SyncWebhook:3 of +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "" + +#: 840907faec8c45c0952ebfdb3349d390 b9c19a7dc665479f9dd4388f7783d712 +#: discord.webhook.sync.SyncWebhook.from_url:7 +#: discord.webhook.sync.SyncWebhook.partial:10 of +msgid "" +"The session to use to send requests with. Note that the library does not " +"manage the session and will not close it. If not given, the ``requests`` " +"auto session creation functions are used instead." +msgstr "" + +#: 4d5326bd667b4df2bebe23caaa5cc701 be82f96debd24cffb17feed64f30b7e9 +#: discord.webhook.sync.SyncWebhook.edit:23 +#: discord.webhook.sync.SyncWebhook.fetch:17 of +msgid ":class:`SyncWebhook`" +msgstr "" + +#: discord.webhook.sync.SyncWebhook.edit:22 e975ac9571684c7395ba098a454e852b of +msgid "The newly edited webhook." +msgstr "" + +#: discord.webhook.sync.SyncWebhook.send:16 f39da5d0640d48a48876001d0283dff5 of +msgid "" +"Whether the server should wait before sending a response. This " +"essentially means that the return type of this function changes from " +"``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "" + +#: 99c8f76e0bc64453945947d86b5cd9c4 discord.webhook.sync.SyncWebhook.send:53 of +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "" + +#: discord.webhook.sync.SyncWebhook.send:53 f63e656d3dc04732bf975f2c2a580042 of +msgid "The thread to send this message to." +msgstr "" + +#: 4df5c9ff55674ecfa020102b402e3263 discord.webhook.sync.SyncWebhook.send:67 of +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "" + +#: 785676d5bd474edb981f1c1aedd4a3e0 discord.webhook.sync.SyncWebhook.send:74 of +msgid "" +"There was no token associated with this webhook, or you specified both" +" a thread to send to and a thread to create (the ``thread`` and " +"``thread_name`` parameters)." +msgstr "" + +#: a709c1c1f25a4ac4a42ce45594910a31 +#: discord.webhook.sync.SyncWebhook.fetch_message:1 of +msgid "" +"Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this " +"webhook." +msgstr "" + +#: 09f5ec74a83d4d6e94100ebb8ed78e9d +#: discord.webhook.sync.SyncWebhook.fetch_message:13 of +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr "" + +#: 6a516df32c234c288fde2ccfabba3553 +#: discord.webhook.sync.SyncWebhook.edit_message:44 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr "" + +#: 0b0928b5ee704cc3b030ef3abee75509 +#: discord.webhook.sync.SyncWebhookMessage.edit:29 of +msgid ":class:`SyncWebhookMessage`" +msgstr "" + +#: a6721a5618a04f06a9461c10e2957767 +#: discord.webhook.sync.SyncWebhookMessage.delete:4 of +msgid "" +"If provided, the number of seconds to wait before deleting the message. " +"This blocks the thread." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/changelog.po b/docs/locales/en/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..26e3e5699a --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/changelog.po @@ -0,0 +1,2384 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.16.0\n" + +#: ../../changelog.md:1 538c3900cdf645fb81a5016feccfc3f1 +msgid "Changelog" +msgstr "" + +#: ../../changelog.md:3 59b7befcb03e461784d4c83ce3619000 +msgid "All notable changes to this project will be documented in this file." +msgstr "" + +#: ../../changelog.md:5 219721d277fe48a5bba5899c9aa17a84 +msgid "" +"The format is based on [Keep a " +"Changelog](https://keepachangelog.com/en/1.0.0/), and this project " +"adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) " +"when possible (see our [Version Guarantees] for more info)." +msgstr "" + +#: ../../changelog.md:9 caecfc688ef04c74afa24c4ffba6275d +msgid "[Unreleased]" +msgstr "" + +#: ../../changelog.md:11 65e6b786129440299583dbd277d24b45 +msgid "" +"These changes are available on the `master` branch, but have not yet been" +" released." +msgstr "" + +#: ../../changelog.md:13 b32d85acd95341dfb2e580a11f6272ca +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "" + +#: ../../changelog.md:15 ../../changelog.md:58 ../../changelog.md:165 +#: ../../changelog.md:425 ../../changelog.md:498 ../../changelog.md:553 +#: ../../changelog.md:569 ../../changelog.md:637 ../../changelog.md:738 +#: ../../changelog.md:827 e8cf33c496dc4074adbbcfbbce555d76 +msgid "Added" +msgstr "" + +#: ../../changelog.md:17 73f8d143b51e4d75ba380e16b08e6dcb +msgid "" +"Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-" +"Development/pycord/pull/2528))" +msgstr "" + +#: ../../changelog.md:19 dd48eb67d9264c6f9c8c34eff1f8dc21 +msgid "" +"Added the following `AppInfo` attributes: `approximate_guild_count`, " +"`approximate_user_install_count`, `custom_install_url`, `install_params`," +" `interactions_endpoint_url`, `redirect_uris`, " +"`role_connections_verification_url`, and `tags`. " +"([#2520](https://github.com/Pycord-Development/pycord/pull/2520))" +msgstr "" + +#: ../../changelog.md:23 c3f3b5baaf6d4bf3a3deaa582d1444a1 +msgid "" +"Added `Member.guild_banner` and `Member.display_banner` properties. " +"([#2556](https://github.com/Pycord-Development/pycord/pull/2556))" +msgstr "" + +#: ../../changelog.md:26 ../../changelog.md:129 ../../changelog.md:255 +#: ../../changelog.md:406 ../../changelog.md:452 ../../changelog.md:529 +#: ../../changelog.md:668 ../../changelog.md:770 ../../changelog.md:877 +#: 6f3f624eef944b38a861d712cf1c2dd3 +msgid "Changed" +msgstr "" + +#: ../../changelog.md:28 dd5ffa5028be44a282b2ac8924972f1f +msgid "" +"Renamed `cover` property of `ScheduledEvent` and `cover` argument of " +"`ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-" +"Development/pycord/pull/2496))" +msgstr "" + +#: ../../changelog.md:31 9fe0dfdfa63e4ad4b9c4e4043aef28b3 +msgid "" +"⚠️ **This Version Removes Support For Python 3.8** ⚠️ " +"([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "" + +#: ../../changelog.md:34 ../../changelog.md:591 +#: 5b535d4b52244097b05ec474ea2121c6 +msgid "Deprecated" +msgstr "" + +#: ../../changelog.md:36 effae79d201c4ca0a0e3943743dfc1b5 +msgid "" +"Deprecated `AppInfo.summary` in favor of `AppInfo.description`. " +"([#2520](https://github.com/Pycord-Development/pycord/pull/2520))" +msgstr "" + +#: ../../changelog.md:39 ../../changelog.md:89 ../../changelog.md:297 +#: ../../changelog.md:412 ../../changelog.md:462 ../../changelog.md:480 +#: ../../changelog.md:491 ../../changelog.md:519 ../../changelog.md:545 +#: ../../changelog.md:558 ../../changelog.md:601 ../../changelog.md:615 +#: ../../changelog.md:622 ../../changelog.md:630 ../../changelog.md:678 +#: ../../changelog.md:784 ../../changelog.md:890 ../../changelog.md:927 +#: 25748af9e8d041dc8b2c9e7a88663f4f +msgid "Fixed" +msgstr "" + +#: ../../changelog.md:41 8b40273b3f334953b36d4e726019a6d1 +msgid "" +"Fixed `EntitlementIterator` behavior with `limit > 100`. " +"([#2555](https://github.com/Pycord-Development/pycord/pull/2555))" +msgstr "" + +#: ../../changelog.md:43 9ac720e03f6142e4ac4e0b6de0379c55 +msgid "" +"Fixed missing `stacklevel` parameter in `warn_deprecated` function call " +"inside `@utils.deprecated`. ([#2500](https://github.com/Pycord-" +"Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:45 e2f55b08f081473c867e0e027c8cf264 +msgid "" +"Fixed the typehint in `ConnectionState._polls` to reflect actual " +"behavior, changing it from `Guild` to `Poll`. ([#2500](https://github.com" +"/Pycord-Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:48 2fb12f31fbda4dd38ac5d75d20c470af +msgid "" +"Fixed missing `__slots__` attributes in `RawReactionClearEmojiEvent` and " +"`RawMessagePollVoteEvent`. ([#2500](https://github.com/Pycord-" +"Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:51 15b4372aa41846c2bfe24bd729e63048 +msgid "" +"Fixed the type of `ForumChannel.default_sort_order`, changing it from " +"`int` to `SortOrder`. ([#2500](https://github.com/Pycord-" +"Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:53 7869c915b3f14f07a5bf3a4475157805 +msgid "" +"Fixed `PartialMessage`s causing errors when created from " +"`PartialMessageable`. ([#2568](https://github.com/Pycord-" +"Development/pycord/pull/2500))" +msgstr "" + +#: ../../changelog.md:56 2ea9c95bdc934b7bbbe972ad30512eb5 +msgid "[2.6.0] - 2024-07-09" +msgstr "" + +#: ../../changelog.md:60 ee1185f07728432d90acac5a21dbec45 +msgid "" +"Added `banner` parameter to `ClientUser.edit`. " +"([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "" + +#: ../../changelog.md:62 d88667c6f5dd4c8789c7f597cbcc5b58 +msgid "" +"Added `user` argument to `Paginator.edit`. ([#2390](https://github.com" +"/Pycord-Development/pycord/pull/2390))" +msgstr "" + +#: ../../changelog.md:64 9e482633187e4f5c8fa1c1970503e1e5 +msgid "" +"Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. " +"([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "" + +#: ../../changelog.md:66 73f8d143b51e4d75ba380e16b08e6dcb +msgid "" +"Added `Guild.search_members`. ([#2418](https://github.com/Pycord-" +"Development/pycord/pull/2418))" +msgstr "" + +#: ../../changelog.md:68 479db9f659c0426e8a65b42d3e86c344 +msgid "" +"Added bulk banning up to 200 users through `Guild.bulk_ban`. " +"([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "" + +#: ../../changelog.md:70 f56f60d027c34c1c96d0aae7504b6cfb +msgid "" +"Added `member` data to the `raw_reaction_remove` event. " +"([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "" + +#: ../../changelog.md:72 f9988dfe7b23484b9ba4809f9bb95d74 +msgid "" +"Added `Poll` and all related features. ([#2408](https://github.com" +"/Pycord-Development/pycord/pull/2408))" +msgstr "" + +#: ../../changelog.md:74 9ac720e03f6142e4ac4e0b6de0379c55 +msgid "" +"Added `stacklevel` param to `utils.warn_deprecated` and " +"`utils.deprecated`. ([#2450](https://github.com/Pycord-" +"Development/pycord/pull/2450))" +msgstr "" + +#: ../../changelog.md:76 a8616b9a932f4606b85de797fc499ba7 +msgid "" +"Added support for user-installable applications. " +"([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "" + +#: ../../changelog.md:78 1c4f1fdcf05c43aba319d2e797df1b3e +msgid "" +"Added support for one-time purchases for Discord monetization. " +"([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "" + +#: ../../changelog.md:80 44550f6f16534a32aae326204a92f827 +msgid "" +"Added `Attachment.title`. ([#2486](https://github.com/Pycord-" +"Development/pycord/pull/2486))" +msgstr "" + +#: ../../changelog.md:82 fc13286743f845d19a7cab16bf48759f +msgid "" +"Added `MemberFlags`. ([#2489](https://github.com/Pycord-" +"Development/pycord/pull/2489))" +msgstr "" + +#: ../../changelog.md:83 90ea693eff9d4606a4c04da0d022efe1 +msgid "" +"Added `bypass_verification` parameter to `Member.edit`. " +"([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "" + +#: ../../changelog.md:85 b0e2a36ec1474943ac739d3a17c79296 +msgid "" +"Added `RoleFlags`. ([#2487](https://github.com/Pycord-" +"Development/pycord/pull/2487))" +msgstr "" + +#: ../../changelog.md:86 1acba6757cf74da68c1302cbed5100b5 +msgid "" +"Added `MessageCall` information. ([#2488](https://github.com/Pycord-" +"Development/pycord/pull/2488))" +msgstr "" + +#: ../../changelog.md:91 7ae94f40f23e4016ad3583ccfa6c742c +msgid "" +"Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect " +"actual behavior. ([#2386](https://github.com/Pycord-" +"Development/pycord/pull/2386))" +msgstr "" + +#: ../../changelog.md:93 4b405ed8d3174be9b4285624ed111389 +msgid "" +"Fixed a deprecation warning from being displayed when running `python -m " +"discord -v` by replacing the deprecated module. " +"([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "" + +#: ../../changelog.md:96 21ab8865343f4f4a95f4e6fb558290f9 +msgid "" +"Fixed `Paginator.edit` to no longer set user to the bot. " +"([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "" + +#: ../../changelog.md:98 9d69c269ed79425ab60e09f9b5e2ee4b +msgid "" +"Fixed `NameError` in some instances of `Interaction`. " +"([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "" + +#: ../../changelog.md:100 7c13dbe9d92449f4b9c00b812d03c2df +msgid "" +"Fixed interactions being ignored due to `PartialMessage.id` being of type" +" `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "" + +#: ../../changelog.md:102 e2f55b08f081473c867e0e027c8cf264 +msgid "" +"Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual " +"behavior. ([#2400](https://github.com/Pycord-" +"Development/pycord/pull/2400))" +msgstr "" + +#: ../../changelog.md:104 8b40273b3f334953b36d4e726019a6d1 +msgid "" +"Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. " +"([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "" + +#: ../../changelog.md:106 384fcb271c8a4306af44212e2fe7c84d +msgid "" +"Fixed invalid data being passed to `Interaction._guild` in certain cases." +" ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "" + +#: ../../changelog.md:108 ef1005168cfb44b6b8f2055793ee601d +msgid "" +"Fixed option typehints being ignored when using `parameter_name`. " +"([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "" + +#: ../../changelog.md:110 7869c915b3f14f07a5bf3a4475157805 +msgid "" +"Fixed parameter `embed=None` causing `AttributeError` on " +"`PartialMessage.edit`. ([#2446](https://github.com/Pycord-" +"Development/pycord/pull/2446))" +msgstr "" + +#: ../../changelog.md:112 2ca84f4587674ad0afe6b33699c76e45 +msgid "" +"Fixed paginator to revert state if a page update callback fails. " +"([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "" + +#: ../../changelog.md:114 878001efd2cc45dead2ee90071cecf01 +msgid "" +"Fixed missing `application_id` in `Entitlement.delete`. " +"([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "" + +#: ../../changelog.md:116 ab1ed3f8483145bea5b24fad05b5648f +msgid "" +"Fixed issues with enums as `Option` types with long descriptions or too " +"many values. ([#2463](https://github.com/Pycord-" +"Development/pycord/pull/2463))" +msgstr "" + +#: ../../changelog.md:118 55d4ea1bd82340bcb8c23812b5179448 +msgid "" +"Fixed many inaccurate type hints throughout the library. " +"([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "" + +#: ../../changelog.md:120 447daa976adc419590670e36e28bb3e7 +msgid "" +"Fixed `AttributeError` due to `discord.Option` being initialised with " +"`input_type` set to `None`. ([#2464](https://github.com/Pycord-" +"Development/pycord/pull/2464))" +msgstr "" + +#: ../../changelog.md:122 6861ca06f105483bbc97a0928b422c0a +msgid "" +"Fixed `remove_application_command` causing issues while reloading " +"extensions. ([#2480](https://github.com/Pycord-" +"Development/pycord/pull/2480))" +msgstr "" + +#: ../../changelog.md:124 0fe082c072ae49f581e23f1910056ed8 +msgid "" +"Fixed outdated logic for filtering and sorting audit log entries. " +"([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "" + +#: ../../changelog.md:126 af74ad39a1b34e1fa81b9328b1540ea5 +msgid "" +"Further fixed logic when fetching audit logs. ([#2492](https://github.com" +"/Pycord-Development/pycord/pull/2492))" +msgstr "" + +#: ../../changelog.md:131 c07af9a4c1fd4892ae280f8510c5161f +msgid "" +"Changed the type of `Guild.bitrate_limit` to `int`. " +"([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "" + +#: ../../changelog.md:133 552325d759394d788ef5af5370590ced +msgid "" +"HTTP requests that fail with a 503 status are now re-tried. " +"([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "" + +#: ../../changelog.md:135 3131b38385834d42af1359ccf1b8e9e8 +msgid "" +"`option` decorator now accepts `input_type`. ([#2417](https://github.com" +"/Pycord-Development/pycord/pull/2417))" +msgstr "" + +#: ../../changelog.md:137 38abe22de33943b2b3ff6091e2c3779f +msgid "" +"`Option` may be used instead of `BridgeOption` until 2.7. " +"([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "" + +#: ../../changelog.md:139 b9cb2502b6574133b0e491e40833d831 +msgid "" +"`Guild.query_members` now accepts `limit=None` to retrieve all members. " +"([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "" + +#: ../../changelog.md:141 8824c580ff8d4c56916af84ce8747115 +msgid "" +"`ApplicationCommand.guild_only` is now deprecated in favor of " +"`ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-" +"Development/pycord/pull/2409))" +msgstr "" + +#: ../../changelog.md:144 effae79d201c4ca0a0e3943743dfc1b5 +msgid "" +"`Message.interaction` is now deprecated in favor of " +"`Message.interaction_metadata`. ([#2409](https://github.com/Pycord-" +"Development/pycord/pull/2409))" +msgstr "" + +#: ../../changelog.md:146 e81f05b83a034f228f9c15b92cb49ffc +msgid "" +"Replaced `Client.fetch_entitlements` with `Client.entitlements`, which " +"returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-" +"Development/pycord/pull/2490))" +msgstr "" + +#: ../../changelog.md:149 0edc039bb53f4074aa6c2ef293fea3ec +msgid "" +"Changed the error message that appears when attempting to add a " +"subcommand group to a subcommand group. ([#2275](https://github.com" +"/Pycord-Development/pycord/pull/2275))" +msgstr "" + +#: ../../changelog.md:152 ../../changelog.md:290 ../../changelog.md:538 +#: ../../changelog.md:779 cb54f87243e542f6bdc3742c26311fa6 +msgid "Removed" +msgstr "" + +#: ../../changelog.md:154 3d4304bdaaab400c8603287757c112a5 +msgid "" +"Removed the `delete_message_days` parameter from ban methods. Please use " +"`delete_message_seconds` instead. ([#2421](https://github.com/Pycord-" +"Development/pycord/pull/2421))" +msgstr "" + +#: ../../changelog.md:157 313a2244ebdf459f93aaf6f06a33ba51 +msgid "" +"Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of " +"the `before` and `after` parameters. ([#2371](https://github.com/Pycord-" +"Development/pycord/pull/2371))" +msgstr "" + +#: ../../changelog.md:160 4d2440e51f8346a5894152a1e3ac6351 +msgid "" +"Removed the `vanity_code` parameter from `Guild.edit`. " +"([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "" + +#: ../../changelog.md:163 6a0c9c7b35c54520a5ae4547c8382a6e +msgid "[2.5.0] - 2024-03-02" +msgstr "" + +#: ../../changelog.md:167 60a5bb23d20a46b29897ff0b90b12c68 +msgid "" +"Added method to start bot via async context manager. " +"([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "" + +#: ../../changelog.md:169 41d21b3f7d62487ab79ebdd02c96a138 +msgid "" +"Added parameters `author`, `footer`, `image` and `thumbnail` to " +"`discord.Embed` initializer. ([#1996](https://github.com/Pycord-" +"Development/pycord/pull/1996))" +msgstr "" + +#: ../../changelog.md:171 7556f2bd45294900b546bcc8bc4cc855 +msgid "" +"Added events `on_bridge_command`, `on_bridge_command_completion`, and " +"`on_bridge_command_error`. ([#1916](https://github.com/Pycord-" +"Development/pycord/pull/1916))" +msgstr "" + +#: ../../changelog.md:174 f83032a1921645c2b52208a2cd0d80f5 +msgid "" +"Added the `@client.once()` decorator, which serves as a one-time event " +"listener. ([#1940](https://github.com/Pycord-" +"Development/pycord/pull/1940))" +msgstr "" + +#: ../../changelog.md:176 3dc5ef7302d8499f8f3b37132cad769a +msgid "" +"Added support for text-related features in `StageChannel`. " +"([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "" + +#: ../../changelog.md:178 b26f8600ddae4ee7adf165d713c4c520 +msgid "" +"Added support for one-time event listeners in `Client.listen`. " +"([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "" + +#: ../../changelog.md:180 4c1d702a0fd34e05b931d0149b6d2e88 +msgid "" +"Added `current_page` argument to `Paginator.update()`. " +"([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "" + +#: ../../changelog.md:182 c424e9e7177746638415ee55b969a529 +msgid "" +"Added application flag `application_auto_moderation_rule_create_badge`. " +"([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "" + +#: ../../changelog.md:184 40bb9fff0d8f40258b28fc994bd31db7 +msgid "" +"Added support for recording silence via new `sync_start` argument in " +"`VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-" +"Development/pycord/pull/1984))" +msgstr "" + +#: ../../changelog.md:187 af0b802a69904f288b90a992f9990483 +msgid "" +"Added `custom_message` to AutoModActionMetadata. " +"([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "" + +#: ../../changelog.md:189 15c6731b295e4b0b8cd7e1340c6ea545 +msgid "" +"Added support for [voice messages](https://github.com/discord/discord-" +"api-docs/pull/6082). ([#2016](https://github.com/Pycord-" +"Development/pycord/pull/2016))" +msgstr "" + +#: ../../changelog.md:192 07bdc41bd4bd46c58757b555174359fc +msgid "" +"Added `data` attribute to all [Raw Event " +"payloads](https://docs.pycord.dev/en/master/api/models.html#events). " +"([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "" + +#: ../../changelog.md:195 cb7c3646df2f43cda8a3b34f6d418af1 +msgid "" +"Added and documented missing `AuditLogAction` enums. " +"([#2030](https://github.com/Pycord-Development/pycord/pull/2030), " +"[#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "" + +#: ../../changelog.md:198 9d551823bcc84935a681e5d58adf5111 +msgid "" +"Added AutoMod-related models for `AuditLogDiff` enums. " +"([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "" + +#: ../../changelog.md:200 c3f3b5baaf6d4bf3a3deaa582d1444a1 +msgid "" +"Added `Interaction.respond` and `Interaction.edit` as shortcut responses." +" ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "" + +#: ../../changelog.md:202 6b5e8bebd67e407cb1bac3eba6d5726b +msgid "" +"Added `view.parent` which is set when the view is sent by " +"`interaction.response.send_message`. ([#2036](https://github.com/Pycord-" +"Development/pycord/pull/2036))" +msgstr "" + +#: ../../changelog.md:205 00f359112aa840c6816d75ab0587ad80 +msgid "" +"Added methods `bridge.Bot.walk_bridge_commands` and " +"`BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-" +"Development/pycord/pull/1867))" +msgstr "" + +#: ../../changelog.md:208 b21a35a76bac4e2d9ae6a07c7a3a696a +msgid "" +"Added support for usernames and modified multiple methods accordingly. " +"([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "" + +#: ../../changelog.md:210 74a9e9832d4c4a6fa8734778209c65e4 +msgid "" +"Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. " +"([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "" + +#: ../../changelog.md:212 f2ec2163c71c48b9a21d3bd75fff5064 +msgid "" +"Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`." +" ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "" + +#: ../../changelog.md:214 85eb170585cb42f598e263c7b60a31e0 +msgid "" +"Added embedded activities Gartic Phone and Jamspace. " +"([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "" + +#: ../../changelog.md:216 7959cb02aa124f1b82dc5adbc03e84c5 +msgid "" +"Added `bridge.Context` type as a `Union` of subclasses. " +"([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "" + +#: ../../changelog.md:218 ade46dafe4b44075b82a661d0516635f +msgid "" +"Added support for type-hinting slash command options with " +"`typing.Annotated`. ([#2124](https://github.com/Pycord-" +"Development/pycord/pull/2124))" +msgstr "" + +#: ../../changelog.md:220 62effd5e105647abaa72932b226b2ce3 +msgid "" +"Added `suppress` and `allowed_mentions` parameters to `Webhook` and " +"`InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-" +"Development/pycord/pull/2138))" +msgstr "" + +#: ../../changelog.md:223 343032650b214f1eb5ffe747555db443 +msgid "" +"Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end " +"of a play. ([#2194](https://github.com/Pycord-" +"Development/pycord/pull/2194))" +msgstr "" + +#: ../../changelog.md:225 42ed7327fefc4b54872053b06dc3d128 +msgid "" +"Added support for custom bot status. ([#2206](https://github.com/Pycord-" +"Development/pycord/pull/2206))" +msgstr "" + +#: ../../changelog.md:227 72df647a50374daa932d83ec54fadbce +msgid "" +"Added function `Guild.delete_auto_moderation_rule`. " +"([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "" + +#: ../../changelog.md:229 dddf1b7b1aba48dfb0f3282e4d0658a2 +msgid "" +"Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-" +"Development/pycord/pull/2112))" +msgstr "" + +#: ../../changelog.md:231 3b2c11ddd69145ff9b65a168d5f20f04 +msgid "" +"Added `ForumChannel.default_reaction_emoji` attribute. " +"([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "" + +#: ../../changelog.md:233 199637891bab425183cc270c18b0a5db +msgid "" +"Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` " +"and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-" +"Development/pycord/pull/2178))" +msgstr "" + +#: ../../changelog.md:236 4620d311330a4c04b6b2b7b4de078652 +msgid "" +"Added `applied_tags` parameter to `Webhook.send` method. " +"([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "" + +#: ../../changelog.md:238 90293effcc9a4c0cbe82b4d50f4e2604 +msgid "" +"Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-" +"Development/pycord/pull/2131))" +msgstr "" + +#: ../../changelog.md:240 f1c971d407c9454c85b3b93e5be66b65 +msgid "" +"Added support for guild onboarding related features. " +"([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "" + +#: ../../changelog.md:242 4f80fa16c23e41c19ad5f98cb4764338 +msgid "" +"Added support for monetization related objects and events. " +"([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "" + +#: ../../changelog.md:244 5a3c464362f34da28e03de42a50c57e9 +msgid "" +"Added `AttachmentFlags` and attachment attributes `expires_at`, " +"`issued_at` and `hm`. ([#2342](https://github.com/Pycord-" +"Development/pycord/pull/2342))" +msgstr "" + +#: ../../changelog.md:246 4d570b6175b846b7b096d02a18bf1053 +msgid "" +"Added `invitable` and `slowmode_delay` to `Thread` creation methods. " +"([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "" + +#: ../../changelog.md:248 6e961ffbbb9c4e43a860891df7ed6fa5 +msgid "" +"Added support for voice channel statuses. ([#2368](https://github.com" +"/Pycord-Development/pycord/pull/2368))" +msgstr "" + +#: ../../changelog.md:250 ee841b6b671d4856b893970d196abd64 +msgid "" +"Added `enforce_nonce` parameter for message sending. " +"([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "" + +#: ../../changelog.md:252 2608a06bd147422aa67260fc397061b3 +msgid "" +"Added audit log support for voice channel status. " +"([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "" + +#: ../../changelog.md:257 62c9fe1681134e18a42748c961355bce +msgid "" +"Changed default for all `name_localizations` and " +"`description_localizations` attributes from being `None` to being " +"`MISSING`. ([#1866](https://github.com/Pycord-" +"Development/pycord/pull/1866))" +msgstr "" + +#: ../../changelog.md:260 3f5b3c8765174ac6aaefd7493e389482 +msgid "" +"Changed `ffmpeg` output suppression when recording voice channels. " +"([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "" + +#: ../../changelog.md:262 13ea43a34662409ebbeff058009c3b87 +msgid "" +"Changed file-upload size limit from 8 MB to 25 MB accordingly. " +"([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "" + +#: ../../changelog.md:264 f55ea4e73a9c4391a525b1222242d5f5 +msgid "" +"Changed the behavior of retrieving bans to accurately reflect the API. " +"([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "" + +#: ../../changelog.md:266 67638ee2ed544e56b98bc22db8fea02a +msgid "" +"Changed `Interaction.channel` to be received from the gateway, allowing " +"it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com" +"/Pycord-Development/pycord/pull/2025))" +msgstr "" + +#: ../../changelog.md:269 97745879546247a08a47059715774c5b +msgid "" +"Changed `DMChannel.recipients` to potentially be `None`. " +"([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "" + +#: ../../changelog.md:271 7088fa09f41846e5892a329b6bcd8349 +msgid "" +"Changed the behavior to store `view.message` when receiving a component " +"interaction, while also changing `view.message` not to be set when " +"sending view through `InteractionResponse.send_message`. " +"([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "" + +#: ../../changelog.md:275 ef5d6a731203421cbcc58f074cd546f0 +msgid "" +"Changed the fetching of attributes shared between text-based and Slash " +"Commands in Bridge Commands to be dynamic. ([#1867](https://github.com" +"/Pycord-Development/pycord/pull/1867))" +msgstr "" + +#: ../../changelog.md:278 64963eb32d2d4c1c9c9ffee138a09b38 +msgid "" +"`discord.Embed` attributes (such as author, footer, etc.) now return " +"instances of their respective classes when set and `None` otherwise. " +"([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "" + +#: ../../changelog.md:281 89f503d44fe24e02b7b7b79a544e6188 +msgid "" +"Changed `default_avatar` behavior to depend on the user's username " +"migration status. ([#2087](https://github.com/Pycord-" +"Development/pycord/pull/2087))" +msgstr "" + +#: ../../changelog.md:283 56adce95538e45d49665b92cda9b9641 +msgid "" +"Changed type hints of `command_prefix` and `help_command` arguments to be" +" accurate. ([#2099](https://github.com/Pycord-" +"Development/pycord/pull/2099))" +msgstr "" + +#: ../../changelog.md:285 3bab78924e3d402698ce98a72ddc2c78 +msgid "" +"Replaced `orjson` features with `msgspec` in the codebase. " +"([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "" + +#: ../../changelog.md:287 ca59a473432d434ca872411f9c66003d +msgid "" +"`BridgeOption` must now be used for arguments in bridge commands. " +"([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "" + +#: ../../changelog.md:292 4e49791b54b244ee933a82f9e04437e2 +msgid "" +"Removed `Client.once` in favour of `once` argument in `Client.listen`. " +"([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "" + +#: ../../changelog.md:294 ca26e991f22d4e3d8c6e230f0539ed50 +msgid "" +"Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of " +"individual classes. ([#2063](https://github.com/Pycord-" +"Development/pycord/pull/2063))" +msgstr "" + +#: ../../changelog.md:299 0b59939241624a3193186fcb744f65f7 +msgid "" +"Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-" +"Development/pycord/pull/1957) when using listeners in cogs. " +"([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "" + +#: ../../changelog.md:302 1d99b367a7c04345a26271b2bf0023e2 +msgid "" +"Fixed an issue in editing webhook messages in forum posts and private " +"threads. ([#1981](https://github.com/Pycord-" +"Development/pycord/pull/1981))." +msgstr "" + +#: ../../changelog.md:304 7ed9c8e2674b4eea8e16efe2e7916c19 +msgid "" +"Fixed `View.message` not being set when view is sent using webhooks, " +"including `Interaction.followup.send` or when a message is edited. " +"([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "" + +#: ../../changelog.md:307 26359420acd84d13b7ec8078c585de73 +msgid "" +"Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. " +"([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "" + +#: ../../changelog.md:309 579b45e396024f64912f08f8cfca16ec +msgid "" +"Fixed scheduled events breaking when changing the location from external " +"to a channel. ([#1998](https://github.com/Pycord-" +"Development/pycord/pull/1998))" +msgstr "" + +#: ../../changelog.md:311 18befe9e39544595a7a2036d48d19470 +msgid "" +"Fixed boolean converter breaking for Bridge Commands. " +"([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "" + +#: ../../changelog.md:313 084a586848d74bfeb5f2ceba591293d0 +msgid "" +"Fixed bridge command options not working. ([#1999](https://github.com" +"/Pycord-Development/pycord/pull/1999))" +msgstr "" + +#: ../../changelog.md:315 83b3c68f47754e73ab88708fc8a2ffb2 +msgid "" +"Fixed `TypeError` being raised when passing `name` argument to bridge " +"groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "" + +#: ../../changelog.md:317 a3a4c596689748fe814636d674727419 +msgid "" +"Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-" +"Development/pycord/pull/2029))" +msgstr "" + +#: ../../changelog.md:319 1b761f69f40f462b8e4ef9190b7fc1d6 +msgid "" +"Fixed the functionality to override the default " +"`on_application_command_error` behavior using listeners. " +"([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "" + +#: ../../changelog.md:322 fae4d3fe283e4ea396db05e19418ce5d +msgid "" +"Fixed unloading of cogs with bridge commands. ([#2048](https://github.com" +"/Pycord-Development/pycord/pull/2048))" +msgstr "" + +#: ../../changelog.md:324 eaf24d26663f4e6380db8ad8f0172cbe +msgid "" +"Fixed the `individual` slash command synchronization method. " +"([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "" + +#: ../../changelog.md:326 84c4af7114434feaa1fecfd718dc694c +msgid "" +"Fixed an issue that occurred when `webhooks_update` event payload channel" +" ID was `None`. ([#2078](https://github.com/Pycord-" +"Development/pycord/pull/2078))" +msgstr "" + +#: ../../changelog.md:328 47c28724914e4fc9a18709531f47c88d +msgid "" +"Fixed major `TypeError` when an `AuditLogEntry` has no user. " +"([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "" + +#: ../../changelog.md:330 1e8ecddada0440e8b28a3c9be07f3423 +msgid "" +"Fixed `HTTPException` when trying to create a forum thread with files. " +"([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "" + +#: ../../changelog.md:332 a148a83edd1f4f7b845a87b1a987c516 +msgid "" +"Fixed `before_invoke` not being run for `SlashCommandGroup`. " +"([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "" + +#: ../../changelog.md:334 1aa560acbffb489b9c0495cf0b24c36e +msgid "" +"Fixed `AttributeError` when accessing a `Select` object's values when it " +"hasn't been interacted with. ([#2104](https://github.com/Pycord-" +"Development/pycord/pull/2104))" +msgstr "" + +#: ../../changelog.md:336 1770b0d4e2994906acfa30119c7eb482 +msgid "" +"Fixed `before_invoke` being run twice for slash subcommands. " +"([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "" + +#: ../../changelog.md:338 df13f489e5fa4cc48904626e021c027d +msgid "" +"Fixed `Guild._member_count` sometimes not being set. " +"([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "" + +#: ../../changelog.md:340 269b54a1fd2744a7866a615c72ace4a8 +msgid "" +"Fixed `Thread.applied_tags` not being updated. " +"([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "" + +#: ../../changelog.md:342 86b89f547c6b4a358f432cf4d398f640 +msgid "" +"Fixed type hinting of `author` property of `ApplicationContext` to " +"include type-hinting of `User` or `Member`. ([#2148](https://github.com" +"/Pycord-Development/pycord/pull/2148))" +msgstr "" + +#: ../../changelog.md:345 2fb12f31fbda4dd38ac5d75d20c470af +msgid "" +"Fixed missing `delete_after` parameter in overload type-hinting for " +"`Webhook.send()`. ([#2156](https://github.com/Pycord-" +"Development/pycord/pull/2156))" +msgstr "" + +#: ../../changelog.md:347 2b542989e4474b1497f08ac6f19f99ed +msgid "" +"Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. " +"([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "" + +#: ../../changelog.md:349 b5e55bb544e94272b3397bbc0e072ec3 +msgid "" +"Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com" +"/Pycord-Development/pycord/pull/2185))" +msgstr "" + +#: ../../changelog.md:351 3de52ce55e8b41e2a5815592bb6257ec +msgid "" +"Fixed inaccurate `Union` type hint of `values` argument of " +"`basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "" + +#: ../../changelog.md:353 8fa8ea140ced4a4fa64c9d534c7f71d0 +msgid "" +"Fixed initial message inside of the create thread payload sending legacy " +"beta payload. ([#2191](https://github.com/Pycord-" +"Development/pycord/pull/2191))" +msgstr "" + +#: ../../changelog.md:355 cc7d5fa68e994d34aa693f5bb2f1ffd0 +msgid "" +"Fixed a misplaced payload object inside of the thread creation payload. " +"([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "" + +#: ../../changelog.md:357 c17344409e9f492a8fd6b8c55ed614aa +msgid "" +"Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. " +"([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "" + +#: ../../changelog.md:359 12ea4e48fc584a9c87ef676eeacfcd07 +msgid "" +"Fixed `ffmpeg` being terminated prematurely when piping audio stream. " +"([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "" + +#: ../../changelog.md:361 9c6fac01828f43d9a61aee72f31c1792 +msgid "" +"Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. " +"([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "" + +#: ../../changelog.md:363 7327cd43427e488999e090c78cac0b79 +msgid "" +"Fixed `AttributeError` when running permission checks without the `bot` " +"scope. ([#2113](https://github.com/Pycord-" +"Development/pycord/issues/2113))" +msgstr "" + +#: ../../changelog.md:365 d458144f63124e12a6e0d9f8f9cb952b +msgid "" +"Fixed `Option` not working on bridge commands because " +"`ext.commands.Command` doesn't recognize them. " +"([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "" + +#: ../../changelog.md:367 8f18e8d005b1496387f152f3df8662b7 +msgid "" +"Fixed offset-aware tasks causing `TypeError` when being prepared. " +"([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "" + +#: ../../changelog.md:369 d15ec1bf07934c9d86604965290c99bf +msgid "" +"Fixed `AttributeError` when serializing commands with `Annotated` type " +"hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "" + +#: ../../changelog.md:371 2eb6e57c0a364efd86ffa8096f540133 +msgid "" +"Fixed `Intents.all()` returning the wrong value. " +"([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "" + +#: ../../changelog.md:373 5b2283d5d5e640999855ad3042fc5e6b +msgid "" +"Fixed `AuditLogIterator` not respecting the `after` parameter. " +"([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "" + +#: ../../changelog.md:375 d3b786079fea46bc8786e6b5154c03ed +msgid "" +"Fixed `AttributeError` when failing to establish initial websocket " +"connection. ([#2301](https://github.com/Pycord-" +"Development/pycord/pull/2301))" +msgstr "" + +#: ../../changelog.md:377 b25e60c5a037415e80243abad7f9df8f +msgid "" +"Fixed `AttributeError` caused by `command.cog` being `MISSING`. " +"([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "" + +#: ../../changelog.md:379 c5f685e545da4356aeb4de2f2f183a84 +msgid "" +"Fixed `self.use_default_buttons` being assumed truthy by " +"`Paginator.update`. ([#2319](https://github.com/Pycord-" +"Development/pycord/pull/2319))" +msgstr "" + +#: ../../changelog.md:381 17ed8177c40a476fb48f4d90f37837c7 +msgid "" +"Fixed `AttributeError` when comparing application commands with non-" +"command objects. ([#2299](https://github.com/Pycord-" +"Development/pycord/issues/2299))" +msgstr "" + +#: ../../changelog.md:383 5114e2e8307349088415bbbee6af60e4 +msgid "" +"Fixed `AttributeError` when copying groups on startup. " +"([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "" + +#: ../../changelog.md:385 25663b9a9dd74370984ab38a6e476f27 +msgid "" +"Fixed application command options causing errors if declared through the " +"option decorator or kwarg. ([#2332](https://github.com/Pycord-" +"Development/pycord/issues/2332))" +msgstr "" + +#: ../../changelog.md:388 2541f029d7454ba394deb4a01dde2485 +msgid "" +"Fixed options declared using the parameter default value syntax always " +"being optional. ([#2333](https://github.com/Pycord-" +"Development/pycord/issues/2333))" +msgstr "" + +#: ../../changelog.md:390 c9faa78167bc4750a0684c8cbbd64895 +msgid "" +"Fixed `BridgeContext` type hints raising an exception for unsupported " +"option type. ([#2337](https://github.com/Pycord-" +"Development/pycord/pull/2337))" +msgstr "" + +#: ../../changelog.md:392 1658273ee130473d997c5e510ecbc0fa +msgid "" +"Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to " +"`None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "" + +#: ../../changelog.md:394 d8a3e43d20754ef092f3f8d19b138f0d +msgid "" +"Fixed `AttributeError` due to `entitlements` not being included in " +"`Interaction.__slots__`. ([#2345](https://github.com/Pycord-" +"Development/pycord/pull/2345))" +msgstr "" + +#: ../../changelog.md:397 099b69ec664541e0a8052975795d65e4 +msgid "" +"Fixed `Thread.me` being out of date and added the thread owner to " +"`Thread.members` on creation. ([#1296](https://github.com/Pycord-" +"Development/pycord/issues/1296))" +msgstr "" + +#: ../../changelog.md:399 80ef1c27fc7b4fa48c2db376d01949dd +msgid "" +"Fixed keyword argument wildcard of `bridge.has_permissions` having the " +"wrong type hint. ([#2364](https://github.com/Pycord-" +"Development/pycord/pull/2364))" +msgstr "" + +#: ../../changelog.md:401 8ef80de7fad747f88bcdb50c5d39b51b +msgid "" +"Fixed enum to support stringified annotations. " +"([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "" + +#: ../../changelog.md:404 b4456318b5c84fd28244fb8d7f496360 +msgid "[2.4.1] - 2023-03-20" +msgstr "" + +#: ../../changelog.md:408 c8c94e0963114de48a89fd2659fc7763 +msgid "" +"Updated the values of the `Color.embed_background()` classmethod to " +"correspond with new theme colors in the app. ([#1931](https://github.com" +"/Pycord-Development/pycord/pull/1931))" +msgstr "" + +#: ../../changelog.md:414 abf8d94bacef493cb4fe23a98730bc28 +msgid "" +"Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect " +"actual behavior. ([#1838](https://github.com/Pycord-" +"Development/pycord/pull/1838))" +msgstr "" + +#: ../../changelog.md:416 2cdfa2779b0e4b8f9ab4144401a89802 +msgid "" +"Fixed the voice IP discovery due to the recent [announced " +"change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486)." +" ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "" + +#: ../../changelog.md:419 aaf94f670e8340a5b177fe6ae162358b +msgid "" +"Fixed `reason` being passed to the wrong method in " +"`guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-" +"Development/pycord/pull/1960))" +msgstr "" + +#: ../../changelog.md:423 c101984320c34ce99992f9fe847e0e88 +msgid "[2.4.0] - 2023-02-10" +msgstr "" + +#: ../../changelog.md:427 617814850e83401ebf06752624c50095 +msgid "" +"Added new AutoMod trigger metadata properties `regex_patterns`, " +"`allow_list`, and `mention_total_limit`; and added the `mention_spam` " +"trigger type. ([#1809](https://github.com/Pycord-" +"Development/pycord/pull/1809))" +msgstr "" + +#: ../../changelog.md:430 7fd8831246324c0ba80b842014371a93 +msgid "" +"Added missing `image` parameter to `Guild.create_scheduled_event()` " +"method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "" + +#: ../../changelog.md:432 b33dbeef25f54b92a273ab153577e67e +msgid "" +"New `ApplicationRoleConnectionMetadata` class for application role " +"connection metadata, along with the " +"`fetch_role_connection_metadata_records` and " +"`update_role_connection_metadata_records` methods in `Client`. " +"([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "" + +#: ../../changelog.md:436 dd48eb67d9264c6f9c8c34eff1f8dc21 +msgid "" +"Added new message types, `role_subscription_purchase`, " +"`interaction_premium_upsell`, `stage_start`, `stage_end`, " +"`stage_speaker`, `stage_raise_hand`, `stage_topic`, and " +"`guild_application_premium_subscription`. ([#1852](https://github.com" +"/Pycord-Development/pycord/pull/1852))" +msgstr "" + +#: ../../changelog.md:440 f5ee939eced64359a65e9e63f4c50556 +msgid "" +"Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-" +"Development/pycord/pull/1859))" +msgstr "" + +#: ../../changelog.md:442 ee535bdbc1cd4d558c6fa469a5b0d528 +msgid "" +"Added new `suppress_notifications` to `MessageFlags`. " +"([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "" + +#: ../../changelog.md:444 fa69515bb7074d55a6b5abe0177aac95 +msgid "" +"Added GIF sticker format type to the `StickerFormatType` enum. " +"([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "" + +#: ../../changelog.md:446 17096d6218ec43a3bbef7cb4f25eead2 +msgid "" +"Added new raw events: `raw_member_remove`, `raw_thread_update`, and " +"`raw_thread_member_remove`. ([#1880](https://github.com/Pycord-" +"Development/pycord/pull/1880))" +msgstr "" + +#: ../../changelog.md:449 9f7c5aed80f847d0ba8cec2331f54a86 +msgid "" +"Improved support for setting channel types & added new channel types for " +"`discord.Option`. ([#1883](https://github.com/Pycord-" +"Development/pycord/pull/1883))" +msgstr "" + +#: ../../changelog.md:454 571ca9ff303e4bd994e1179a0cadb5b3 +msgid "" +"Changed `EmbeddedActivity` values to update accordingly with the new " +"activities. ([#1859](https://github.com/Pycord-" +"Development/pycord/pull/1859))" +msgstr "" + +#: ../../changelog.md:456 464da00a553d4cfa9819fc2f0f8e848f +msgid "" +"Advanced version info is now stored as a dict in `version_info.advanced` " +"instead of attributes on the `version_info` object. " +"([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "" + +#: ../../changelog.md:459 39533606d2e9446793b556a39247934e +msgid "" +"The `version_info.release_level` attribute has been reverted to its " +"previous name, `releaselevel`. ([#1920](https://github.com/Pycord-" +"Development/pycord/pull/1920))" +msgstr "" + +#: ../../changelog.md:464 416058062bb045498b964ebab56acb3a +msgid "" +"Fixed bugs in `Page.update_files` where file objects stored in memory " +"were causing an `AttributeError`, and `io.BytesIO` files didn't send " +"properly more than once. ([#1869](https://github.com/Pycord-" +"Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-" +"Development/pycord/pull/1881))" +msgstr "" + +#: ../../changelog.md:468 8818ab33e8604db2877b20c041af6723 +msgid "" +"Fixed bridge groups missing the `parent` attribute. " +"([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "" + +#: ../../changelog.md:470 9fe0dfdfa63e4ad4b9c4e4043aef28b3 +msgid "" +"Fixed issues with creating auto moderation rules. " +"([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "" + +#: ../../changelog.md:473 ea5b04755aae4a53a625348b5d5f945d +msgid "[2.3.3] - 2023-02-10" +msgstr "" + +#: ../../changelog.md:475 a66717a0773c4de7be264d65696be04e +msgid "" +"Fixed an unhandled `KeyError` exception when receiving GIF stickers, " +"causing crashes. ([#1915](https://github.com/Pycord-" +"Development/pycord/pull/1915))" +msgstr "" + +#: ../../changelog.md:478 aeae11c1ec9e4f4ca20b998880bc4e5b +msgid "[2.3.2] - 2022-12-03" +msgstr "" + +#: ../../changelog.md:482 c49932aeab584576ad0d13c3a8073143 +msgid "" +"Fixed another `AttributeError` relating to the new `bridge_commands` " +"attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-" +"Development/pycord/pull/1815))" +msgstr "" + +#: ../../changelog.md:484 7b22f35de99640918b24cf129a8708a1 +msgid "" +"Fixed an `AttributeError` in select relating to the select type. " +"([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "" + +#: ../../changelog.md:486 b940bd229d2b4e6891eec2561e8e815c +msgid "" +"Fixed `Thread.applied_tags` always returning an empty list. " +"([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "" + +#: ../../changelog.md:489 1b92099482524c32940e7b2962f78c68 +msgid "[2.3.1] - 2022-11-27" +msgstr "" + +#: ../../changelog.md:493 25bce91323db4cbea6c7e706497a5fbb +msgid "" +"Fixed `AttributeError` relating to the new `bridge_commands` attribute on" +" `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-" +"Development/pycord/pull/1802))" +msgstr "" + +#: ../../changelog.md:496 eeb4225156bc403cb9430c14142f0030 +msgid "[2.3.0] - 2022-11-23" +msgstr "" + +#: ../../changelog.md:500 1f69a42547d7413d81ac3be425763eca +msgid "" +"New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com" +"/Pycord-Development/pycord/pull/1676))" +msgstr "" + +#: ../../changelog.md:502 faba5859b8964373ba18f34a5830b58a +msgid "" +"Python 3.11 support. ([#1680](https://github.com/Pycord-" +"Development/pycord/pull/1680))" +msgstr "" + +#: ../../changelog.md:503 b5eceae1a70b4eb08fd9c86ed7d3e253 +msgid "" +"New select types `user`, `role`, `mentionable`, and `channel` - Along " +"with their respective types and shortcut decorators. " +"([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "" + +#: ../../changelog.md:506 99a675fe67cf47bd8552026dcb0d7680 +msgid "" +"Added support for age-restricted (NSFW) commands. " +"([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "" + +#: ../../changelog.md:508 ee8b90ba67724d46a3efd5335b0a029a +msgid "" +"New flags: `PublicUserFlags.active_developer` & " +"`ApplicationFlags.active`. ([#1776](https://github.com/Pycord-" +"Development/pycord/pull/1776))" +msgstr "" + +#: ../../changelog.md:510 0d7ed354cec246a1884bb62b4a30455b +msgid "" +"Support for new forum features including tags, default slowmode, and " +"default sort order. ([#1636](https://github.com/Pycord-" +"Development/pycord/pull/1636))" +msgstr "" + +#: ../../changelog.md:512 3d7339c7a4b34b419ca2b385c99b2160 +msgid "" +"Support for new thread attributes `total_message_sent` and `is_pinned`. " +"([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "" + +#: ../../changelog.md:514 d92eb373bc624dffac6f0e1dc5e5fc95 +msgid "" +"Added `bridge_commands` attribute to `ext.bridge.Bot` for access to " +"bridge command objects. ([#1787](https://github.com/Pycord-" +"Development/pycord/pull/1787))" +msgstr "" + +#: ../../changelog.md:516 2a37ee55e00e4e68b43bcf62c0b6c16b +msgid "" +"Updated `Guild.features` to include new and previously missing features. " +"([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "" + +#: ../../changelog.md:521 b96a634b3523470b9c6321bfe1d0d386 +msgid "" +"Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-" +"Development/pycord/pull/1695))" +msgstr "" + +#: ../../changelog.md:523 cc90297f0d5b47c7b04fcc3561b2ee44 +msgid "" +"Fix audit log overwrite type always resulting in `None`. " +"([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "" + +#: ../../changelog.md:525 6b8dca9744d84dd1afaf7c1f2c36bbc2 +msgid "" +"Fixed error when using `suppress` kwarg in `send()`. " +"([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & " +"[#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "" + +#: ../../changelog.md:531 90671804020b41aba86f0d541ac50a3e +msgid "" +"`get_application_command()` type kwarg now defaults to " +"`ApplicationCommand`, so all command types can be retrieved by default. " +"([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "" + +#: ../../changelog.md:534 7421d3fe662f4595af3381037136c502 +msgid "" +"`get_application_command()` now supports retrieving subcommands and " +"subcommand groups. ([#1678](https://github.com/Pycord-" +"Development/pycord/pull/1678))" +msgstr "" + +#: ../../changelog.md:540 160d0b3650564e17b6e25a2cf3bebf73 +msgid "" +"Removed the guild feature `PRIVATE_THREADS` due to paywall limitation " +"removal. ([#1789](https://github.com/Pycord-" +"Development/pycord/pull/1789))" +msgstr "" + +#: ../../changelog.md:543 a11bd7aede7844c6b417faeae902549d +msgid "[2.2.2] - 2022-10-05" +msgstr "" + +#: ../../changelog.md:547 c79e6592f08f41d387a756efa462ff76 +msgid "" +"Fixed `parent` attribute of second-level subcommands being set to the " +"base level command instead of the direct parent. " +"([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "" + +#: ../../changelog.md:551 804d49d35a1a4950bb1844cb14422c04 +msgid "[2.2.1] - 2022-10-05" +msgstr "" + +#: ../../changelog.md:555 96fc9a6acc3d412eb0e4fe8e93e6bce4 +msgid "" +"New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com" +"/Pycord-Development/pycord/pull/1672))" +msgstr "" + +#: ../../changelog.md:560 8a3332dafa3c405198ec6819e0e4d90a +msgid "" +"Fixed a `TypeError` in `ban()` methods related to the new " +"`delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-" +"Development/pycord/pull/1666))" +msgstr "" + +#: ../../changelog.md:562 cdff853f73034e329f46051f2eee14d5 +msgid "" +"Fixed broken `cog` and `parent` attributes on commands in cogs. " +"([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "" + +#: ../../changelog.md:564 6e43909d03324ff994e8e0c5521b4ab8 +msgid "" +"Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com" +"/Pycord-Development/pycord/pull/1672))" +msgstr "" + +#: ../../changelog.md:567 7c216775f43c4a4283eada7e4c5566be +msgid "[2.2.0] - 2022-10-02" +msgstr "" + +#: ../../changelog.md:571 887646ff61cc484c8fb5a1b77f4705b3 +msgid "" +"New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-" +"Development/pycord/pull/1613))" +msgstr "" + +#: ../../changelog.md:573 1cab4dd437fc47059e14c6622b309200 +msgid "" +"`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com" +"/Pycord-Development/pycord/pull/1587))" +msgstr "" + +#: ../../changelog.md:575 628dc16b78d7462d9e752a6fd5c34f0d +msgid "" +"`proxy` and `proxy_auth` params to many Webhook-related methods. " +"([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "" + +#: ../../changelog.md:577 62fc2f7a9b7647efb0eaeabe6e18b131 +msgid "" +"`delete_message_seconds` parameter in ban methods. " +"([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "" + +#: ../../changelog.md:579 86674d77e2244a8f9a2273474845bc45 +msgid "" +"New `View.get_item()` method. ([#1659](https://github.com/Pycord-" +"Development/pycord/pull/1659))" +msgstr "" + +#: ../../changelog.md:581 eaa5c0bba1a24094995e8bb0a52b7ca0 +msgid "" +"Permissions support for bridge commands. ([#1642](https://github.com" +"/Pycord-Development/pycord/pull/1642))" +msgstr "" + +#: ../../changelog.md:583 f3da627f546c4aebadcf3322597750da +msgid "" +"New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-" +"Development/pycord/pull/1642))" +msgstr "" + +#: ../../changelog.md:585 a38f4867cf0f404abe8d1ad795209e2d +msgid "" +"New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` " +"functions in `discord.utils`. ([#1658](https://github.com/Pycord-" +"Development/pycord/pull/1658))" +msgstr "" + +#: ../../changelog.md:587 26da248bd5434e7680514324dcafcc7b +msgid "" +"New methods `original_response`, `edit_original_response` & " +"`delete_original_response` for `Interaction` objects. " +"([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "" + +#: ../../changelog.md:593 baabee44115f413aa4b2ab853daa0515 +msgid "" +"The `delete_message_days` parameter in ban methods is now deprecated. " +"Please use `delete_message_seconds` instead. ([#1557](https://github.com" +"/Pycord-Development/pycord/pull/1557))" +msgstr "" + +#: ../../changelog.md:596 b2bc78f7cb2248968d7778e804059d3a +msgid "" +"The `original_message`, `edit_original_message` & " +"`delete_original_message` methods for `Interaction` are now deprecated. " +"Please use the respective `original_response`, `edit_original_response` &" +" `delete_original_response` methods instead. ([#1609](https://github.com" +"/Pycord-Development/pycord/pull/1609))" +msgstr "" + +#: ../../changelog.md:603 f1a6ff967fae4e4ab7aaa03fb71040ee +msgid "" +"Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-" +"Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-" +"Development/pycord/pull/1631))" +msgstr "" + +#: ../../changelog.md:606 e24fad332ee74561882cb0fe5683d373 +msgid "" +"Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-" +"Development/pycord/pull/1624))" +msgstr "" + +#: ../../changelog.md:608 1658154957934f93aea580480a93f06d +msgid "" +"Removed unnecessary instance check in autocomplete. " +"([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "" + +#: ../../changelog.md:610 8f96626aeee2407ead9a59ec45dabc1a +msgid "" +"Interaction responses are now passed the respective `proxy` and " +"`proxy_auth` params as defined in `Client`. ([#1655](https://github.com" +"/Pycord-Development/pycord/pull/1655))" +msgstr "" + +#: ../../changelog.md:613 2dd2c8f954934bb593bf96a65aaf49ce +msgid "[2.1.3] - 2022-09-06" +msgstr "" + +#: ../../changelog.md:617 f97d21f188914b99a02eddf404a430d9 +msgid "" +"Fix TypeError in `process_application_commands`. " +"([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "" + +#: ../../changelog.md:620 20f3c230725b4f879eaf13fe8fab8861 +msgid "[2.1.2] - 2022-09-06" +msgstr "" + +#: ../../changelog.md:624 020eedc585cf44a2858529c8d43b6b54 +msgid "" +"Fix subcommands having MISSING cog attribute. ([#1594](https://github.com" +"/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com" +"/Pycord-Development/pycord/pull/1605))" +msgstr "" + +#: ../../changelog.md:628 439fb1afd83545f8b5d955600ad11510 +msgid "[2.1.1] - 2022-08-25" +msgstr "" + +#: ../../changelog.md:632 e74d531343704a3faafa44b907a76e3f +msgid "" +"Bridge command detection in cogs. ([#1592](https://github.com/Pycord-" +"Development/pycord/pull/1592))" +msgstr "" + +#: ../../changelog.md:635 d08ad13239c7439cbbd09aae4a16c23d +msgid "[2.1.0] - 2022-08-25" +msgstr "" + +#: ../../changelog.md:639 a86271dbc38645919c2c274f65be4447 +msgid "" +"Support for add, sub, union, intersect, and inverse operations on classes" +" inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-" +"Development/pycord/pull/1486))" +msgstr "" + +#: ../../changelog.md:641 59b42b5316384e81b6ef5f2cfeee36ff +msgid "" +"A `disable_on_timeout` kwarg in the `View` constructor. " +"([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "" + +#: ../../changelog.md:643 790b53c72a3f4db5a92d35f0bf430bfc +msgid "" +"New `mention` property for `SlashCommand` objects, allowing a shortcut " +"for the new command markdown syntax. ([#1523](https://github.com/Pycord-" +"Development/pycord/pull/1523))" +msgstr "" + +#: ../../changelog.md:646 1acff13e3a664d0bb3d8a584de44f9fe +msgid "" +"An `app_commands_badge` value on `ApplicationFlags`. " +"([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and " +"[#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "" + +#: ../../changelog.md:649 5a44482095724e8c854fb0dac8a1b688 +msgid "" +"A new `fetch_application` method in the `Client` object. " +"([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "" + +#: ../../changelog.md:651 f384ae7bd39d4645a038b219cc5e3d41 +msgid "" +"New `on_check_failure` event method for the `View` class. " +"([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "" + +#: ../../changelog.md:653 84fd56364f2e426f8059ab543cf8fa9f +msgid "" +"A `set_mfa_required` method to `Guild`. ([#1552](https://github.com" +"/Pycord-Development/pycord/pull/1552))" +msgstr "" + +#: ../../changelog.md:655 116daae4f3be479d91f71c1dfb2e158e +msgid "" +"Support for command groups with bridge commands. " +"([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:657 aa264304900847509610971067c61d13 +msgid "" +"Support for `Attachment` type options for bridge commands. " +"([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:659 f3a1898c5fb94d22ad268c1b80c06956 +msgid "" +"`is_app` property for `BridgeContext` to better differentiate context " +"types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:661 6bbb2d7903f94ccf928e6d4a39d6181c +msgid "" +"Support for localization on bridge commands. ([#1496](https://github.com" +"/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:663 bf536e2d15b34745aa6202fefc7ecb86 +msgid "" +"A `filter_params` helper function in `discord.utils`. " +"([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:665 e9a5cb929d2a400996754846071ec5b6 +msgid "" +"Support for `InteractionMessage` via the `message` property of `View`. " +"([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "" + +#: ../../changelog.md:670 c7cf6d82811f4e0ba66b43ed62394be3 +msgid "" +"Use `slash_variant` and `ext_variant` attributes instead of " +"`get_application_command()` and `get_ext_command()` methods on " +"`BridgeCommand`. ([#1496](https://github.com/Pycord-" +"Development/pycord/pull/1496))" +msgstr "" + +#: ../../changelog.md:673 682dcf307b394f4ca5b2553b815c3fdf +msgid "" +"Set `store` kwarg default to `False` in load_extension(s) method. " +"([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "" + +#: ../../changelog.md:675 1656bec918854d6297b74bb1e35a904f +msgid "" +"`commands.has_permissions()` check now returns `True` in DM channels. " +"([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "" + +#: ../../changelog.md:680 a16756bd1a69469ab4a723abc6249124 +msgid "" +"Fix `VoiceChannel`/`CategoryChannel` data being invalidated on " +"`Option._invoke`. ([#1490](https://github.com/Pycord-" +"Development/pycord/pull/1490))" +msgstr "" + +#: ../../changelog.md:682 22c69d421a4e44b5a09e1885e5b1db36 +msgid "" +"Fix type issues in `options.py` ([#1473](https://github.com/Pycord-" +"Development/pycord/pull/1473))" +msgstr "" + +#: ../../changelog.md:684 43a5393c21bc440c8ada7fe235818b31 +msgid "" +"Fix KeyError on AutoModActionExecution when the bot lacks the Message " +"Content Intent. ([#1521](https://github.com/Pycord-" +"Development/pycord/pull/1521))" +msgstr "" + +#: ../../changelog.md:686 c18c8cdfbd014c69bef54df5485b077e +msgid "" +"Large code/documentation cleanup & minor bug fixes. " +"([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "" + +#: ../../changelog.md:688 ef4e07eeca0e4f6dab9c34646800eb9c +msgid "" +"Fix `Option` with type `str` raising AttributeError when `min_length` or " +"`max_length` kwargs are passed. ([#1527](https://github.com/Pycord-" +"Development/pycord/pull/1527))" +msgstr "" + +#: ../../changelog.md:690 74ba25ff24a7407f928e6a503cd7731a +msgid "" +"Fix `load_extensions` parameters not being passed through correctly. " +"([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "" + +#: ../../changelog.md:692 42f99fb9ec3c420883afd8002c0674b7 +msgid "" +"Fix `SlashCommandGroup` descriptions to use the correct default string. " +"([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and " +"[#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "" + +#: ../../changelog.md:695 dfdb859c67e84007954866826f1092dd +msgid "" +"Fix Enum type options breaking due to `from_datatype()` method & Fix " +"minor typing import. ([#1541](https://github.com/Pycord-" +"Development/pycord/pull/1541))" +msgstr "" + +#: ../../changelog.md:697 fe6004afac3c4280b63fe9d2117f045d +msgid "" +"Adjust category and guild `_channels` attributes to work with NoneType " +"positions. ([#1530](https://github.com/Pycord-" +"Development/pycord/pull/1530))" +msgstr "" + +#: ../../changelog.md:699 203cde94f8b84494a4910014cfd9cb86 +msgid "" +"Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-" +"Development/pycord/pull/1550))" +msgstr "" + +#: ../../changelog.md:701 885263a2dea84a019d8ff1bf6fe28a1e +msgid "" +"Improve sticker creation by checking for minimum and maximum length on " +"`name` and `description`. ([#1546](https://github.com/Pycord-" +"Development/pycord/pull/1546))" +msgstr "" + +#: ../../changelog.md:703 f409a2d1bf8941ad8e5dd38c6fa02f97 +msgid "" +"Fix threads created with a base message being set to the wrong " +"`message_reference`. ([#1551](https://github.com/Pycord-" +"Development/pycord/pull/1551))" +msgstr "" + +#: ../../changelog.md:705 db74b72ec1cb4f2ca20c8ec590aecc57 +msgid "" +"Avoid unnecessary calls to `sync_commands` during runtime. " +"([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "" + +#: ../../changelog.md:707 48cc76eeeb3045a58736326078a0219d +msgid "" +"Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout " +"task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "" + +#: ../../changelog.md:709 e8f97a297155469dad5bf1c0065f7248 +msgid "" +"Respect limit argument in `Guild.bans()`. ([#1573](https://github.com" +"/Pycord-Development/pycord/pull/1573))" +msgstr "" + +#: ../../changelog.md:711 753591c9db444d1583e1ca24ba55377c +msgid "" +"Fix `before` argument in `on_scheduled_event_update` event always set to " +"`None` by converting ID to `int`. ([#1580](https://github.com/Pycord-" +"Development/pycord/pull/1580))" +msgstr "" + +#: ../../changelog.md:714 6f46f75334964b6e803da39b08058134 +msgid "" +"Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. " +"([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "" + +#: ../../changelog.md:716 f8eb486c25734047862d39115603e056 +msgid "" +"Apply `cog_check` method to `ApplicationCommand` invocations. " +"([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "" + +#: ../../changelog.md:718 98838fe24b00482b90f84b4aeef38bdf +msgid "" +"Fix `Interaction.edit_original_message()` using `ConnectionState` instead" +" of `InteractionMessageState`. ([#1565](https://github.com/Pycord-" +"Development/pycord/pull/1565))" +msgstr "" + +#: ../../changelog.md:721 1a3f1825ed6940388193b1ef07b1dc76 +msgid "" +"Fix required parameters validation error. ([#1589](https://github.com" +"/Pycord-Development/pycord/pull/1589))" +msgstr "" + +#: ../../changelog.md:724 ../../changelog.md:731 +#: 4b8d0071a17948a789b4a3850b4cfd3e +msgid "Security" +msgstr "" + +#: ../../changelog.md:726 595d6f7ff4074370b90bec1e9625132b +msgid "" +"Improved fix for application-based bots without the bot scope " +"([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "" + +#: ../../changelog.md:729 0cd65ab173c0451bb9ae1ba3fb40b232 +msgid "[2.0.1] - 2022-08-16" +msgstr "" + +#: ../../changelog.md:733 ee4dccbc90654cbcb8d0c05f33e124bd +msgid "" +"Fix for application-based bots without the bot scope " +"([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "" + +#: ../../changelog.md:736 97414cf074d2496da5acf484c69838a0 +msgid "[2.0.0] - 2022-07-08" +msgstr "" + +#: ../../changelog.md:740 f926a09ced2d481492984936a41f6dc7 +msgid "" +"New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-" +"Development/pycord/pull/1370))" +msgstr "" + +#: ../../changelog.md:742 1ecb7fa75dff41449dde4615b6e710bf +msgid "" +"New `invisible` kwarg to `defer()` method. ([#1379](https://github.com" +"/Pycord-Development/pycord/pull/1379))" +msgstr "" + +#: ../../changelog.md:744 59e7463435234e16866270f9f67f3107 +msgid "" +"Support for audit log event type 121 " +"`APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com" +"/Pycord-Development/pycord/pull/1424))" +msgstr "" + +#: ../../changelog.md:746 825af1ddcde1480883171e981e1da9cb +msgid "" +"New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-" +"Development/pycord/pull/1440))" +msgstr "" + +#: ../../changelog.md:748 98bfc9d190a748579e55cb74c092cc50 +msgid "" +"A shortcut `jump_url` property to users. ([#1444](https://github.com" +"/Pycord-Development/pycord/pull/1444))" +msgstr "" + +#: ../../changelog.md:750 63e71264efce40bc9ac3f7f177759671 +msgid "" +"Ability for webhooks to create forum posts. ([#1405](https://github.com" +"/Pycord-Development/pycord/pull/1405))" +msgstr "" + +#: ../../changelog.md:752 583f0a83c644415fbd248eee5f5d8fc5 +msgid "" +"New `message` property to `View` ([#1446](https://github.com/Pycord-" +"Development/pycord/pull/1446))" +msgstr "" + +#: ../../changelog.md:754 03269af61aef4530b0588510928b25ab +msgid "" +"Support for `error`, `before_invoke`, and `after_invoke` handlers on " +"`BridgeCommand`. ([#1411](https://github.com/Pycord-" +"Development/pycord/pull/1411))" +msgstr "" + +#: ../../changelog.md:756 d30d886bcbdc4227805bd6ddb03ba9ae +msgid "" +"New `thread` property to `Message`. ([#1447](https://github.com/Pycord-" +"Development/pycord/pull/1447))" +msgstr "" + +#: ../../changelog.md:758 eaf48b5278cf458da58e8d6c74d872d5 +msgid "" +"A `starting_message` property to `Thread`. ([#1447](https://github.com" +"/Pycord-Development/pycord/pull/1447))" +msgstr "" + +#: ../../changelog.md:760 618f1139d2854adb9498024de569eae4 +msgid "" +"An `app_permissions` property to `Interaction` and `ApplicationContext`. " +"([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "" + +#: ../../changelog.md:762 da574ae3b081432787fabf3ce7643b08 +msgid "" +"Support for loading folders in `load_extension`, and a new helper " +"function `load_extensions`. ([#1423](https://github.com/Pycord-" +"Development/pycord/pull/1423))" +msgstr "" + +#: ../../changelog.md:764 bcd876b3c5524167af08b9c49fc9461d +msgid "" +"Support for AutoMod ([#1316](https://github.com/Pycord-" +"Development/pycord/pull/1316))" +msgstr "" + +#: ../../changelog.md:765 8963ace1487b41d689eaed24f1cbf62f +msgid "" +"Support for `min_length` and `max_length` kwargs in `Option`. " +"([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "" + +#: ../../changelog.md:767 8768c70fc00d4e31b7a80d6b00075daa +msgid "" +"Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-" +"Development/pycord/pull/1434))" +msgstr "" + +#: ../../changelog.md:772 ee060919f00041db8b5be55cafb2c8c8 +msgid "" +"Updated to new sticker limit for premium guilds. " +"([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "" + +#: ../../changelog.md:774 dc5c99a601e643378a95fd67cc096a3a +msgid "" +"Replace deprecated endpoint in `HTTPClient.change_my_nickname`. " +"([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "" + +#: ../../changelog.md:776 8c2807db86ce44949802e774add43122 +msgid "" +"Updated deprecated IDENTIFY packet connection properties. " +"([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "" + +#: ../../changelog.md:781 32f1c00be9d246c9bbd61f553109e4a9 +msgid "" +"`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region " +"should be used instead). ([#1429](https://github.com/Pycord-" +"Development/pycord/pull/1429))" +msgstr "" + +#: ../../changelog.md:786 1eee8306295b44818cb2b0ba52d0cc16 +msgid "" +"Change `guild_only` to `dm_permission` in application command `to_dict` " +"method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "" + +#: ../../changelog.md:788 c7e8ed3ea27249a3ba3139f4749fe67f +msgid "" +"Fix `repr(ScheduledEventLocation)` raising TypeError. " +"([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "" + +#: ../../changelog.md:790 138b4b66eaaa464cbd8b470b39dfe3cf +msgid "" +"Fix `repr(TextChannel)` raising AttributeError. " +"([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "" + +#: ../../changelog.md:792 83f10b99afb54627877654d2f7d13542 +msgid "" +"Fix application command validation. ([#1372](https://github.com/Pycord-" +"Development/pycord/pull/1372))" +msgstr "" + +#: ../../changelog.md:794 f5ed697972464eef896be8d20a91d41f +msgid "" +"Fix scheduled event `cover` property raising AttributeError. " +"([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "" + +#: ../../changelog.md:796 718f4fb72ad84abbb9e6433b4106c70a +msgid "" +"Fix `SlashCommandGroup` treating optional arguments as required. " +"([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "" + +#: ../../changelog.md:798 3af4499fd5724a2bbab36758855eefba +msgid "" +"Fix `remove_application_command` not always removing commands. " +"([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "" + +#: ../../changelog.md:800 df77a6f8c2884f96a9ead31c3040ff3a +msgid "" +"Fix busy-loop in `DecodeManager` when the decode queue is empty, causing " +"100% CPU consumption. ([#1395](https://github.com/Pycord-" +"Development/pycord/pull/1395))" +msgstr "" + +#: ../../changelog.md:802 879a1e7ca8194078b8b54e0d9399b4b4 +msgid "" +"Fix incorrect activities and permissions on `Interaction` and `Option` " +"objects. ([#1365](https://github.com/Pycord-" +"Development/pycord/pull/1365))" +msgstr "" + +#: ../../changelog.md:804 2e5cc67d0f334713aa04357850b3b8d6 +msgid "" +"Converted PartialMember `deaf` and `mute` from str annotation (incorrect)" +" to bool annotation. ([#1424](https://github.com/Pycord-" +"Development/pycord/pull/1424))" +msgstr "" + +#: ../../changelog.md:806 980b8f6131b547259c6e3243f776160f +msgid "" +"Use `PUT` instead of `POST` in `HTTPClient.join_thread`. " +"([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "" + +#: ../../changelog.md:808 1579cb6ca4374946ae9d2aa00c6a2a05 +msgid "" +"Fix enum options not setting `input_type` to a SlashCommandOptionType. " +"([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "" + +#: ../../changelog.md:810 1addb165c9c3437ca5dca418e2638d46 +msgid "" +"Fixed TypeError when using thread options. ([#1427](https://github.com" +"/Pycord-Development/pycord/pull/1427))" +msgstr "" + +#: ../../changelog.md:812 d4ea2324cedb4d729a6e016ed9914ed1 +msgid "" +"Allow voice channels in PartialMessage. ([#1441](https://github.com" +"/Pycord-Development/pycord/pull/1441))" +msgstr "" + +#: ../../changelog.md:814 d965df96de2444d2a3da4bac5f41fa32 +msgid "" +"Fixed `AuditLogAction.target_type` for application command permission " +"updates. ([#1445](https://github.com/Pycord-" +"Development/pycord/pull/1445))" +msgstr "" + +#: ../../changelog.md:816 a426447d83a0416b82a2ad38cf28f165 +msgid "" +"Fix bridge commands to ignore the ephemeral kwarg. " +"([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "" + +#: ../../changelog.md:818 8f82c1560e2a4beca1d49b51032693c7 +msgid "" +"Update `thread.members` on `thread.fetch_members`. " +"([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "" + +#: ../../changelog.md:820 169dd0974f7f4141bb15b782abd500b7 +msgid "" +"Fix the error when Discord doesn't send the `app_permissions` data in " +"`Interaction`. ([#1467](https://github.com/Pycord-" +"Development/pycord/pull/1467))" +msgstr "" + +#: ../../changelog.md:822 448ef13918d4482281df46bd975272f7 +msgid "" +"Fix AttributeError when voice client `play()` function isn't completed " +"yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "" + +#: ../../changelog.md:825 dbcf3c4d21c14c479387995847602e95 +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "" + +#: ../../changelog.md:829 71808897a05a4d3791bc6f9dac867d50 +msgid "" +"A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com" +"/Pycord-Development/pycord/pull/1245))" +msgstr "" + +#: ../../changelog.md:831 1666cc8af144493294f14e435b91e247 +msgid "" +"New `reason` kwarg to `Thread.delete_messages`. " +"([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "" + +#: ../../changelog.md:833 64598eb221be468cb4460731ecb291b8 +msgid "" +"A new `jump_url` property to channel and thread objects. " +"([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & " +"[#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "" + +#: ../../changelog.md:836 65fefed9ae734de68d3bf2484df13eee +msgid "" +"New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-" +"Development/pycord/pull/1258))" +msgstr "" + +#: ../../changelog.md:838 e51f6c5505f84ed69127a68178587f84 +msgid "" +"An `EmbedField` object. ([#1181](https://github.com/Pycord-" +"Development/pycord/pull/1181))" +msgstr "" + +#: ../../changelog.md:840 3b7406b62a0941a398ac7fdd33ea2a0b +msgid "" +"Option names and descriptions are now validated locally. " +"([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "" + +#: ../../changelog.md:842 35ae30f3f43e476885400ce345466da2 +msgid "" +"Component field limits are now enforced at the library level " +"([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & " +"[#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "" + +#: ../../changelog.md:845 6d7c1c2574e84c82aa22abf622baf28d +msgid "" +"Support providing option channel types as a list. " +"([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "" + +#: ../../changelog.md:847 e7e85506316f4046a79bf1bee7c0213e +msgid "" +"New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-" +"Development/pycord/pull/1282))" +msgstr "" + +#: ../../changelog.md:849 20413647edf3450886b175cd2f53edc2 +msgid "" +"ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-" +"Development/pycord/pull/1288))" +msgstr "" + +#: ../../changelog.md:851 d29d910018724595a72b329b086dae1b +msgid "" +"Implement `None` check for check_guilds. ([#1291](https://github.com" +"/Pycord-Development/pycord/pull/1291))" +msgstr "" + +#: ../../changelog.md:853 3f5d50f736184fe7a6b787749d53834d +msgid "" +"A debug warning to catch deprecated perms v1 usage until v2 perms are " +"implemented. ([#1301](https://github.com/Pycord-" +"Development/pycord/pull/1301))" +msgstr "" + +#: ../../changelog.md:855 715f3642c43e4b818b36ac879254a1ad +msgid "" +"A new `files` parameter to `Page` object. ([#1300](https://github.com" +"/Pycord-Development/pycord/pull/1300))" +msgstr "" + +#: ../../changelog.md:857 18a0ab7cdda64c26a907d972cd3cc5bf +msgid "" +"A `disable_all_items` and `enable_all_items` methods to `View` object. " +"([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & " +"[#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "" + +#: ../../changelog.md:860 a1b658522e74433b8248a8632c132c83 +msgid "" +"New `is_nsfw` attribute to voice channels. ([#1317](https://github.com" +"/Pycord-Development/pycord/pull/1317))" +msgstr "" + +#: ../../changelog.md:862 45b48efa33e2445ea77ca5d350cbc1f7 +msgid "" +"Support for Permissions v2. ([#1328](https://github.com/Pycord-" +"Development/pycord/pull/1328))" +msgstr "" + +#: ../../changelog.md:864 9201af3619a241128b9361d32485948e +msgid "" +"Allow using Enum to specify option choices. ([#1292](https://github.com" +"/Pycord-Development/pycord/pull/1292))" +msgstr "" + +#: ../../changelog.md:866 bd0157bc4b0f4b8f8628064afc16fae9 +msgid "" +"The `file` and `files` parameters to " +"`InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-" +"Development/pycord/pull/1340))" +msgstr "" + +#: ../../changelog.md:868 6e19fe31455347129e5a8bc95d7b3572 +msgid "" +"A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-" +"Development/pycord/pull/1348))" +msgstr "" + +#: ../../changelog.md:870 99861fea2ef74154a4150f91fa8eef16 +msgid "" +"Forum channels support. ([#1249](https://github.com/Pycord-" +"Development/pycord/pull/1249))" +msgstr "" + +#: ../../changelog.md:872 0a54f2b4c9764c26a62124a36810df1f +msgid "" +"Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-" +"Development/pycord/pull/1274))" +msgstr "" + +#: ../../changelog.md:874 99d5ef66098a46d3a923357f8a26c740 +msgid "" +"Support event covers for audit logs. ([#1355](https://github.com/Pycord-" +"Development/pycord/pull/1355))" +msgstr "" + +#: ../../changelog.md:879 3fc4ac26224f413589a65d539f172b72 +msgid "" +"Removed implicit defer call in `View`. ([#1260](https://github.com" +"/Pycord-Development/pycord/pull/1260))" +msgstr "" + +#: ../../changelog.md:881 c6ba3c12853545738f571c0366063c82 +msgid "" +"`Option` class and usage were rewritten. ([#1251](https://github.com" +"/Pycord-Development/pycord/pull/1251))" +msgstr "" + +#: ../../changelog.md:883 916c6e9e2e524421870ac2ad12af1c1b +msgid "" +"`description` argument of `PageGroup` is now optional. " +"([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "" + +#: ../../changelog.md:885 8d7dea175fb24794a355b13007c92e01 +msgid "" +"Allow `Modal.children` to be set on initialization. " +"([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "" + +#: ../../changelog.md:887 eb953d6d30db42809fb6a250571f29b1 +msgid "" +"Renamed `delete_exiting` to `delete_existing` (typo). " +"([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "" + +#: ../../changelog.md:892 0a9c258c97ff43d290fc0293f47f9978 +msgid "" +"Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is" +" not passed. ([#1256](https://github.com/Pycord-" +"Development/pycord/pull/1256))" +msgstr "" + +#: ../../changelog.md:894 6a79d4a32b634bd3a7b74c101fa54a7e +msgid "" +"Fix channel parsing in slash command invocations. " +"([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "" + +#: ../../changelog.md:896 05aa589e0a9a469d96f811423c1b3bd2 +msgid "" +"Make the channel `position` attribute optional. " +"([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "" + +#: ../../changelog.md:898 3da23a6d6d4b4324a36f0b33cc59f82e +msgid "" +"Fix `PaginatorMenu` to use interaction routes for updates. " +"([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "" + +#: ../../changelog.md:900 d463353b612449e89a9a7015a794e5e2 +msgid "" +"Fix `PartialMessage.edit()` behavior when `content` is `None`. " +"([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "" + +#: ../../changelog.md:902 15b4372aa41846c2bfe24bd729e63048 +msgid "" +"Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing " +"`custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-" +"Development/pycord/pull/1270))" +msgstr "" + +#: ../../changelog.md:904 7d105926ee684e439657e29d1a57156a +msgid "" +"Fix `process_application_commands` command not found fallback. " +"([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "" + +#: ../../changelog.md:906 54b42e8bc31145a9a8831d96c1c7a836 +msgid "" +"Fix interaction response race condition. ([#1039](https://github.com" +"/Pycord-Development/pycord/pull/1039))" +msgstr "" + +#: ../../changelog.md:908 5797d5a4023d458aa6eaefe95fdcbe70 +msgid "" +"Remove voice client when the bot disconnects. ([#1273](https://github.com" +"/Pycord-Development/pycord/pull/1273))" +msgstr "" + +#: ../../changelog.md:910 98b7cc4cbd3b4529bd64539cdc0166e7 +msgid "" +"Fix conversion exception in `ext.bridge`. ([#1250](https://github.com" +"/Pycord-Development/pycord/pull/1250))" +msgstr "" + +#: ../../changelog.md:912 89cd1c71990c439c8187661846e4817c +msgid "" +"`Context.me` returns ClientUser when guilds intent is absent. " +"([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "" + +#: ../../changelog.md:914 6a993686d0f6440f9058ad662abc3eb7 +msgid "" +"Updated `Message.edit` type-hinting overload and removed resulting " +"redundant overloads. ([#1299](https://github.com/Pycord-" +"Development/pycord/pull/1299))" +msgstr "" + +#: ../../changelog.md:916 fec7f8bc5c1c40638b2c7541a613f3b3 +msgid "" +"Improved validation regex for command names & options. " +"([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "" + +#: ../../changelog.md:918 1b22b1b48af64ab082e28d5be38e9470 +msgid "" +"Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com" +"/Pycord-Development/pycord/pull/1323))" +msgstr "" + +#: ../../changelog.md:920 109809acf2d545559ad5bd7c1d9d668d +msgid "" +"Multiple fixes and enhancements for `PageGroup` handling. " +"([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "" + +#: ../../changelog.md:922 c648e6fc6f44425195f326fb578e61d3 +msgid "" +"Make `TextChannel._get_channel` async. ([#1358](https://github.com" +"/Pycord-Development/pycord/pull/1358))" +msgstr "" + +#: ../../changelog.md:925 7de5791d77fa4367bcc58a2b9db9f7dc +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "" + +#: ../../changelog.md:929 681f7f806d614707ae86fcc2e8c3042e +msgid "" +"Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-" +"Development/pycord/pull/1240))" +msgstr "" + +#: ../../changelog.md:968 c3d9893dfd4c43e1af3405c2b96d7e8a +msgid "Older Versions" +msgstr "" + +#: ../../changelog.md:970 f2ab2347b52c49258384ff69cb70c6ce +msgid "" +"A changelog for versions prior to v2.0 can be found " +"[here](old_changelog.rst)." +msgstr "" + +#~ msgid "" +#~ "Fixed inaccurate `Union` type hint of" +#~ " `values` argument of `basic_autocomplete` " +#~ "to include `Iterable[OptionChoice]`. " +#~ "([#2164](https://github.com/Pycord-" +#~ "Development/pycord/pull/2164))" +#~ msgstr "" + +#~ msgid "" +#~ "Fix type issues in options.py " +#~ "([#1473](https://github.com/Pycord-" +#~ "Development/pycord/pull/1473))" +#~ msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/cogs.po b/docs/locales/en/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..542a97f9bf --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/cogs.po @@ -0,0 +1,118 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../cogs.rst:7 c8ac825e6b994a9aa60b3bcbe6c34043 +msgid "Cogs" +msgstr "" + +#: ../../cogs.rst:9 2f754881bfc94c2998a3ae81ef02f86b +msgid "" +"There comes a point in your bot's development when you want to organize a" +" collection of commands, listeners, and some state into one class. Cogs " +"allow you to do just that." +msgstr "" + +#: ../../cogs.rst:11 9107f5b551204d178a48c1f69d6cbba5 +msgid "The gist:" +msgstr "" + +#: ../../cogs.rst:13 f173fd127aeb4f5abadc830d73d74ffb +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "" + +#: ../../cogs.rst:14 5cfe1bcf770d4bf59444548582bd4859 +msgid "" +"Every command is marked with the :func:`discord.command` decorator or the" +" corresponding shortcut command decorator." +msgstr "" + +#: ../../cogs.rst:15 321f3f7b3a1d413790527b3d7b821138 +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "" + +#: ../../cogs.rst:16 77021c1918474cfcb90679c1faeb4f6f +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "" + +#: ../../cogs.rst:17 b1c663eca3844c198e4539ce53c4c756 +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "" + +#: ../../cogs.rst:20 9e5fcbbf6d574ef796df6335903ce9bc +msgid "Quick Example" +msgstr "" + +#: ../../cogs.rst:22 2026f5d8c0ae400980fc4ddc47d46d2a +msgid "" +"This example cog defines a ``Greetings`` category for your commands, with" +" a single slash command named ``hello`` as well as a listener to listen " +"to an :ref:`Event `." +msgstr "" + +#: ../../cogs.rst:47 bd6a08fc260d4f339594086965422dae +msgid "A couple of technical notes to take into consideration:" +msgstr "" + +#: ../../cogs.rst:49 16d111580cb940cdb64948e7ed41192a +msgid "" +"All listeners must be explicitly marked via decorator, " +":meth:`~.Cog.listener`." +msgstr "" + +#: ../../cogs.rst:50 202723f7a4984aba9f44561f14721b3c +msgid "" +"The name of the cog is automatically derived from the class name but can " +"be overridden." +msgstr "" + +#: ../../cogs.rst:51 fbcb39ba8b6f4e43b17b48546e9b9348 +msgid "" +"All commands must now take a ``self`` parameter to allow usage of " +"instance attributes that can be used to maintain state." +msgstr "" + +#: ../../cogs.rst:54 29313ee75df44d1a9e587cf204e86eea +msgid "Cog Registration" +msgstr "" + +#: ../../cogs.rst:56 934a0af7f99a4fa39afbc59c69c7a904 +msgid "" +"Once you have defined your cogs, you need to tell the bot to register the" +" cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "" + +#: ../../cogs.rst:62 fab3613b468549498b33327e5bb3bf81 +msgid "" +"This binds the cog to the bot, adding all commands and listeners to the " +"bot automatically." +msgstr "" + +#: ../../cogs.rst:65 0961f63000044a2ebc4c847b0c2a4c5b +msgid "Using Cogs" +msgstr "" + +#: ../../cogs.rst:67 c63e277a7d6d4e788a85d37fadc395d5 +msgid "" +"Just as we remove a cog by its name, we can also retrieve it by its name " +"as well. This allows us to use a cog as an inter-command communication " +"protocol to share data. For example:" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/discord.po b/docs/locales/en/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..4988e12fc2 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/discord.po @@ -0,0 +1,206 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../discord.rst:6 33e43ca11bae43869384b9a001d402c5 +msgid "Creating a Bot Account" +msgstr "" + +#: ../../discord.rst:8 3e751380298444d89e24a9b137569b63 +msgid "" +"In order to work with the library and the Discord API in general, we must" +" first create a Discord Bot account." +msgstr "" + +#: ../../discord.rst:10 a009330b55dd40a884d07ebe7e8352a6 +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "" + +#: ../../discord.rst:12 ../../discord.rst:66 138839594467417c9675ccdf255cc4bb +#: bb20d2b0e2524050ab13ce5fd4a482ca +msgid "" +"Make sure you're logged on to the `Discord website " +"`_." +msgstr "" + +#: ../../discord.rst:13 ../../discord.rst:67 209f0e33c5f34083972973ce750ad6db +#: a0e135fa837f4998a28119f05ceb6af2 +msgid "" +"Navigate to the `application page " +"`_" +msgstr "" + +#: ../../discord.rst:14 8c4ca040e8b048b8b8ce6fc7a59af681 +msgid "Click on the \"New Application\" button." +msgstr "" + +#: ../../discord.rst:16 4e50539b117d483bb8eb9759d23a2539 +msgid "The new application button." +msgstr "" + +#: ../../discord.rst:19 52b1dfecf4d848d88c423e85bf047e23 +msgid "Give the application a name and click \"Create\"." +msgstr "" + +#: ../../discord.rst:21 988abcf0f00347ef842e50b52ecba727 +msgid "The new application form filled in." +msgstr "" + +#: ../../discord.rst:24 35ed8c8ca0f14f7baa654c2f03c3ba78 +msgid "" +"Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add " +"Bot\"." +msgstr "" + +#: ../../discord.rst:26 061a88735e9d40ad82c8de617ae95c2d +msgid "Click \"Yes, do it!\" to continue." +msgstr "" + +#: ../../discord.rst:28 3a47c4b483f740c3b4009c9aba483465 +msgid "The Add Bot button." +msgstr "" + +#: ../../discord.rst:30 d1f8406f0481452aa310463424432f3c +msgid "" +"Make sure that **Public Bot** is ticked if you want others to invite your" +" bot." +msgstr "" + +#: ../../discord.rst:32 36fc0348a1294783bf756b3b0c9a2355 +msgid "" +"You should also make sure that **Require OAuth2 Code Grant** is unchecked" +" unless you are developing a service that needs it. If you're unsure, " +"then **leave it unchecked**." +msgstr "" + +#: ../../discord.rst:35 01d0a7156bbd466ea4bf21c6bf0913a6 +msgid "How the Bot User options should look like for most people." +msgstr "" + +#: ../../discord.rst:38 ddc3c7c497f84a098fa8c5cfba4fd530 +msgid "Copy the token using the \"Copy\" button." +msgstr "" + +#: ../../discord.rst:40 426cb6a680fa41499bd38d4ae7819100 +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "" + +#: ../../discord.rst:44 129caf4fb8bb46f0bc98b6b92e7bca8f +msgid "" +"It should be worth noting that this token is essentially your bot's " +"password. You should **never** share this with someone else. In doing so," +" someone can log in to your bot and do malicious things, such as leaving " +"servers, ban all members inside a server, or pinging everyone " +"maliciously." +msgstr "" + +#: ../../discord.rst:49 d429905610504813999425db219641c2 +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "" + +#: ../../discord.rst:51 818ab0f6513e4ff3b471954ebecf6dfc +msgid "" +"If you accidentally leaked your token, click the \"Regenerate\" button as" +" soon as possible. This revokes your old token and re-generates a new " +"one. Now you need to use the new token to login." +msgstr "" + +#: ../../discord.rst:55 0f49e12494fd4e018447b1bba17bc382 +msgid "" +"And that's it. You now have a bot account and you can login with that " +"token." +msgstr "" + +#: ../../discord.rst:60 0052dd2bf92f4c989bfab9b2ce496602 +msgid "Inviting Your Bot" +msgstr "" + +#: ../../discord.rst:62 3cfb9a2d30924b95bccc6eaac0f84223 +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "" + +#: ../../discord.rst:64 bf66ea40eeee44b3af812f949c00c78b +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "" + +#: ../../discord.rst:68 2001c08cb12c4281918a3f464d52a876 +msgid "Click on your bot's page." +msgstr "" + +#: ../../discord.rst:69 99b77c0d8af94410b1f4693baf7185bb +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "" + +#: ../../discord.rst:71 bb51cd2efd3a48a98ce9a2521a48e9c2 +msgid "How the OAuth2 tab should look like." +msgstr "" + +#: ../../discord.rst:74 f3c6ed7d8baf44d184bcf20d581b054f +msgid "" +"Tick the \"bot\" and \"applications.commands\" checkboxes under " +"\"scopes\"." +msgstr "" + +#: ../../discord.rst:76 8ffd745846934f7ca86dedb218dcebd2 +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "" + +#: ../../discord.rst:79 750d4f736cfa4a4998c8ad41361d6d2b +msgid "" +"Tick the permissions required for your bot to function under \"Bot " +"Permissions\"." +msgstr "" + +#: ../../discord.rst:81 9c76f59e0e924ca6a418399e8b78beae +msgid "" +"Please be aware of the consequences of requiring your bot to have the " +"\"Administrator\" permission." +msgstr "" + +#: ../../discord.rst:83 8338660304a84ac98f834d371fa8aee8 +msgid "" +"Bot owners must have 2FA enabled for certain actions and permissions when" +" added in servers that have Server-Wide 2FA enabled. Check the `2FA " +"support page `_ for more information." +msgstr "" + +#: ../../discord.rst:85 6e7943e8fbc5422a838dfee812ed741d +msgid "The permission checkboxes with some permissions checked." +msgstr "" + +#: ../../discord.rst:88 cb8beb1bc6bc416b96d88850c1f12815 +msgid "" +"Now the resulting URL can be used to add your bot to a server. Copy and " +"paste the URL into your browser, choose a server to invite the bot to, " +"and click \"Authorize\"." +msgstr "" + +#: ../../discord.rst:93 4e365dc410804016a5a0858c3201d95b +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "" + +#: ../../discord.rst:95 76f2e35cf05545138dcec93407f45af6 +msgid "" +"If you want to generate this URL dynamically at run-time inside your bot " +"and using the :class:`discord.Permissions` interface, you can use " +":func:`discord.utils.oauth_url`." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/ext/bridge/api.po b/docs/locales/en/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..b58f8920a2 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,782 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-09-06 23:44+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.16.0\n" + +#: ../../ext/bridge/api.rst:4 6fa316d9035a4819abf06d5ae0850304 +msgid "API Reference" +msgstr "" + +#: ../../ext/bridge/api.rst:6 1a9c41e32afc4f6c9827f80b27baa9a6 +msgid "" +"The reference manual that follows details the API of Pycord's bridge " +"command extension module." +msgstr "" + +#: ../../ext/bridge/api.rst:10 606ed0684e934b9da103e40b3af328cb +msgid "" +"Using the prefixed command version (which uses the ``ext.commands`` " +"extension) of bridge commands in guilds requires " +":attr:`Intents.message_context` to be enabled." +msgstr "" + +#: ../../ext/bridge/api.rst:17 80e0f4c32fba4a9186acd1dd80023cb7 +msgid "Bots" +msgstr "" + +#: ../../ext/bridge/api.rst:20 bc31060dab2848688f900873f58824d8 +msgid "Bot" +msgstr "" + +#: 850dd85571d6439399b7f0a0340472e1 discord.ext.bridge.bot.Bot:1 of +msgid "" +"Represents a discord bot, with support for cross-compatibility between " +"command types." +msgstr "" + +#: 34f98446e5144990aba7a0cd2abf6a62 discord.ext.bridge.bot.Bot:3 of +msgid "" +"This class is a subclass of :class:`.ext.commands.Bot` and as a result " +"anything that you can do with a :class:`.ext.commands.Bot` you can do " +"with this bot." +msgstr "" + +#: ../../ext/bridge/api.rst 08bff09c730c4b5bb565bdaf3e105965 +#: 0936a9c30a344f258129933949a2fe06 2712df298b134b468aa30aa758768e1d +#: 2893cea81e8f4c3c99c350ae184b88ad 3a31bead22ec46cfab167528f73388b2 +#: 3cf8dd9f30944cd5ada56237da8290df 3e6ba5715e114d6fae10fa8ce19898f4 +#: 485704f10e284a189c55eacd55ea3968 530632fafabb426d8c56d3caece3f7b2 +#: 5492abf2718b4206b9d9d7d5f287fca0 864d918f2bc34eba95e43108295e2471 +#: 95d1ec3d0f144201a711952e040146be bb06477aff3d4ac398c2b90dfc77b732 +#: be224dfe5e9f4390b28f0c12baedd70e c4851b106cef42399e6a64f61c78fd3e +#: d414290a24964ae2827a233b80f9d820 daf51d42250a4b68a63ce4a569ff39d8 +#: ecc99c5f64b747e49d92d73c86da310a fcee5fb1439849cb91efe93d9ca99a9e +#: fe14b112db024067910f4c9edd3a2966 +msgid "Parameters" +msgstr "" + +#: 22b7c6d14796429fb28865fbed90ee9e +#: discord.ext.bridge.bot.BotBase.add_bridge_command:1 of +msgid "" +"Takes a :class:`.BridgeCommand` and adds both a slash and traditional " +"(prefix-based) version of the command to the bot." +msgstr "" + +#: d20cb8aae77c4788bf65f2a78f61b172 +#: discord.ext.bridge.bot.BotBase.bridge_command:1 of +msgid "" +"A shortcut decorator that invokes :func:`bridge_command` and adds it to " +"the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "" + +#: ../../ext/bridge/api.rst a01549abab034ce9aada5ab30d72a4ca +msgid "Returns" +msgstr "" + +#: 81f3afc0052540ee82f717b2768752eb +#: discord.ext.bridge.bot.BotBase.bridge_command:4 of +msgid "" +"A decorator that converts the provided method into an " +":class:`.BridgeCommand`, adds both a slash and traditional (prefix-based)" +" version of the command to the bot, and returns the " +":class:`.BridgeCommand`." +msgstr "" + +#: ../../ext/bridge/api.rst 145bd739c2fe4aff906e41e5bcc428ad +#: 59d0f08676f541b5b40d4eb3830146af 5ba572703a4e4af88ec233bfad6f0c14 +#: 648fa6421bf940e5b202bd6565384518 7f5fa723e8af44a78f11ee8eb2f6ff67 +#: c102617394d14eb786c58ca83d415312 cb3f7e3974f148e19e43b78db36e24e6 +#: e198af69a1d8498ea9d0efdb944c67b4 +msgid "Return type" +msgstr "" + +#: 7c4ef82e00da4b50a94fd04a73b7f9e9 +#: discord.ext.bridge.bot.BotBase.bridge_command:6 of +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "" + +#: 2c6205c46bcb426b9704199b6cc54bf4 cdfc2954c8984d69b6de2a61ed0884ff +#: discord.ext.bridge.bot.BotBase.bridge_group:1 +#: discord.ext.bridge.core.bridge_group:1 of +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "" + +#: 707c2ec5657142f58d78b7c9667c251e +#: discord.ext.bridge.bot.BotBase.bridge_group:4 of +msgid "" +"Keyword arguments that are directly passed to the respective command " +"constructors. (:class:`.SlashCommandGroup` and " +":class:`.ext.commands.Group`)" +msgstr "" + +#: ../../ext/bridge/api.rst:36 da27d30dccd247caae719c36f0098a25 +msgid "AutoShardedBot" +msgstr "" + +#: 642e409bd50148c39b57d779a5e53e72 discord.ext.bridge.bot.AutoShardedBot:1 of +msgid "" +"This is similar to :class:`.Bot` except that it is inherited from " +":class:`.ext.commands.AutoShardedBot` instead." +msgstr "" + +#: ../../ext/bridge/api.rst:44 3ecf92ca4a444ddcb8cb77d32bd0251d +msgid "Event Reference" +msgstr "" + +#: ../../ext/bridge/api.rst:46 ca9c771601074ca7b1f674a8805fdcdf +msgid "" +"These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "" + +#: ../../ext/bridge/api.rst:51 c2782ddd3e0647b296bf2254f882d589 +msgid "" +"An error handler that is called when an error is raised inside a command " +"either through user input error, check failure, or an error in your own " +"code." +msgstr "" + +#: ../../ext/bridge/api.rst:55 ../../ext/bridge/api.rst:67 +#: ../../ext/bridge/api.rst:77 e098ee37ebf04ac493756d6f20633bc4 +#: e899524679a1438fb1615fb8fe418aff ffa1a0bd33ce45888d7e9b6b0304db8a +msgid "The invocation context." +msgstr "" + +#: ../../ext/bridge/api.rst:57 90261a604f954587a3fe4112c77c9c8e +msgid "The error that was raised." +msgstr "" + +#: ../../ext/bridge/api.rst:62 ad460825d379451b99f7a1106384c367 +msgid "" +"An event that is called when a command is found and is about to be " +"invoked." +msgstr "" + +#: ../../ext/bridge/api.rst:64 fc46a91034124a9dba3517b0e7d02a96 +msgid "" +"This event is called regardless of whether the command itself succeeds " +"via error or completes." +msgstr "" + +#: ../../ext/bridge/api.rst:72 be6a86f6768d467d8415e4fd7403792c +msgid "An event that is called when a command has completed its invocation." +msgstr "" + +#: ../../ext/bridge/api.rst:74 acaa45c6fcbb4bbaa212789fe3d0a1a0 +msgid "" +"This event is called only if the command succeeded, i.e. all checks have " +"passed and users input them correctly." +msgstr "" + +#: ../../ext/bridge/api.rst:81 93ed9e62cb4d424eb61036785e8f42b7 +msgid "Commands" +msgstr "" + +#: ../../ext/bridge/api.rst:84 e2aeb6f20c00463b99f145618ad57950 +msgid "BridgeCommand" +msgstr "" + +#: 7f6eb99fd9284122b01c9373d31e4126 a0c6dbe8972d4ad4ae67079c14bf9e8d +#: discord.ext.bridge.core.BridgeCommand:1 +#: discord.ext.bridge.core.BridgeCommandGroup:1 of +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "" + +#: 3ed668f86ee448458bf66c209f08687c discord.ext.bridge.core.BridgeCommand:4 +#: discord.ext.bridge.core.BridgeCommandGroup:4 +#: f096041bd94348b8809ae058ce510c72 of +msgid "" +"The callback to invoke when the command is executed. The first argument " +"will be a :class:`BridgeContext`, and any additional arguments will be " +"passed to the callback. This callback must be a coroutine." +msgstr "" + +#: 200935417b504aaebb24dd1a99bfcaa4 discord.ext.bridge.core.BridgeCommand:7 of +msgid "Parent of the BridgeCommand." +msgstr "" + +#: 484e0bd2743e4f18a5f09ffcb1c749d9 7f6dd7f8a2ee460b99a72804e8aea788 +#: discord.ext.bridge.core.BridgeCommand:10 +#: discord.ext.bridge.core.BridgeCommandGroup:8 +#: discord.ext.bridge.core.BridgeCommandGroup.command:4 +#: discord.ext.bridge.core.bridge_command:4 f0f21d359a4a48ea86df915710a12562 +#: f9f0d50c11aa402ea2a874490f653e3b of +msgid "" +"Keyword arguments that are directly passed to the respective command " +"constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "" + +#: discord.ext.bridge.core.BridgeCommand:15 f37ea5004f7d46b79174fffb4bbe6dfb of +msgid "The slash command version of this bridge command." +msgstr "" + +#: 0dcaa4de42d7417ab675d15d95c0545e 3233f6d67e434cb4930d286b1cedbf93 +#: 530c706f8f2d4cde86d4b9959a708cf9 695ca16e39234b53a145ba1a621e6ef6 +#: c199030b71784af6aa7369b62ea3c70a discord.ext.bridge.core.BridgeCommand +#: discord.ext.bridge.core.BridgeCommandGroup fcd3136ef9a54e679fb18bae06554cee +#: of +msgid "type" +msgstr "" + +#: cbc6f859d39248e7a83d97cd457b250e discord.ext.bridge.core.BridgeCommand:17 of +msgid ":class:`.BridgeSlashCommand`" +msgstr "" + +#: 2f51e8a9edc4443f9d679a119e619cf5 discord.ext.bridge.core.BridgeCommand:21 of +msgid "The prefix-based version of this bridge command." +msgstr "" + +#: discord.ext.bridge.core.BridgeCommand:23 e63578c4dc7f46c89c6203e32b68347d of +msgid ":class:`.BridgeExtCommand`" +msgstr "" + +#: 191eaf3d235142118f52b1abb1b5cb13 +#: discord.ext.bridge.BridgeCommand.name_localizations:1 of +msgid "" +"Returns name_localizations from :attr:`slash_variant` You can edit/set " +"name_localizations directly with .. code-block:: python3" +msgstr "" + +#: 201f3f3932184f08a7790734fe0c0df9 +#: discord.ext.bridge.BridgeCommand.name_localizations:4 of +msgid "" +"bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale" +" # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": " +"...}" +msgstr "" + +#: 9000d83f46db48c88492fd4b3d99c08b +#: discord.ext.bridge.BridgeCommand.description_localizations:1 of +msgid "" +"Returns description_localizations from :attr:`slash_variant` You can " +"edit/set description_localizations directly with .. code-block:: python3" +msgstr "" + +#: 664bc2c5a41e47f7b116b97ca69052f3 +#: discord.ext.bridge.BridgeCommand.description_localizations:4 of +msgid "" +"bridge_command.description_localizations[\"en-UK\"] = ... # or any other" +" locale # or bridge_command.description_localizations = {\"en-UK\": ..., " +"\"fr-FR\": ...}" +msgstr "" + +#: b3a675d4098741a9b1cae5c41f38c6e9 +#: discord.ext.bridge.core.BridgeCommand.add_to:1 of +msgid "" +"Adds the command to a bot. This method is inherited by " +":class:`.BridgeCommandGroup`." +msgstr "" + +#: ae52f8a5e5d4453bb3cbb37559232e97 +#: discord.ext.bridge.core.BridgeCommand.add_to:4 of +msgid "The bot to add the command to." +msgstr "" + +#: 89a3b017daba4d45b6db08bfd3046c9b 927e81b21d1f42ca92a240294c3af3ee +#: discord.ext.bridge.context.BridgeExtContext.delete:12 +#: discord.ext.bridge.core.BridgeCommand.add_to:7 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: c48326d91a0342ecb10271b42baf00ab +#: discord.ext.bridge.core.BridgeCommand.error:1 of +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "" + +#: discord.ext.bridge.core.BridgeCommand.error:3 +#: f6d650ad1c6f44ba94471825a2363aef of +msgid "" +"This error handler is limited to the command it is defined to. However, " +"higher scope handlers (per-cog and global) are still invoked afterwards " +"as a catch-all. This handler also functions as the handler for both the " +"prefixed and slash versions of the command." +msgstr "" + +#: df78c1bea8514032ad90b19418a581e1 +#: discord.ext.bridge.core.BridgeCommand.error:8 of +msgid "" +"This error handler takes two parameters, a :class:`.BridgeContext` and a " +":class:`~discord.DiscordException`." +msgstr "" + +#: 83b35fe23ddd442b8b4ed5835267be7e +#: discord.ext.bridge.core.BridgeCommand.error:12 of +msgid "The coroutine to register as the local error handler." +msgstr "" + +#: ../../ext/bridge/api.rst 2ed336ac83374dbab238cdfaae50a01b +#: 41965c0d21844dfa8e47f852e6d14b56 5bb2b8d65a0c4d5d93576c19239e7330 +#: a2b73e3775c045e7a5f824ee24cf0092 +msgid "Raises" +msgstr "" + +#: 6b619def53b84a94af6ad1abb1e294fe ad1c8992416b44389487ffb94fa63520 +#: bd351550f69a4824a31d1028f2f9d016 +#: discord.ext.bridge.core.BridgeCommand.after_invoke:13 +#: discord.ext.bridge.core.BridgeCommand.before_invoke:13 +#: discord.ext.bridge.core.BridgeCommand.error:15 of +msgid "The coroutine passed is not actually a coroutine." +msgstr "" + +#: 035eaa995b2348dcaab9e35ed861a5c1 +#: discord.ext.bridge.core.BridgeCommand.before_invoke:1 of +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "" + +#: bef6d6b4b0fb43fc923b5777b3bff7bc +#: discord.ext.bridge.core.BridgeCommand.before_invoke:3 of +msgid "" +"This hook is called directly before the command is called, making it " +"useful for any sort of set up required. This hook is called for both the " +"prefixed and slash versions of the command." +msgstr "" + +#: 7d6d731c61084aeabd82697f41f21a56 +#: discord.ext.bridge.core.BridgeCommand.before_invoke:7 of +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "" + +#: 7e4e42913fa342cd92afead956d25c58 +#: discord.ext.bridge.core.BridgeCommand.before_invoke:10 of +msgid "The coroutine to register as the pre-invoke hook." +msgstr "" + +#: 6e32363e7d914b69b7f319b7f1472e4f +#: discord.ext.bridge.core.BridgeCommand.after_invoke:1 of +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "" + +#: 9d8cd8a28f2e47deb002d8312d3a351b +#: discord.ext.bridge.core.BridgeCommand.after_invoke:3 of +msgid "" +"This hook is called directly after the command is called, making it " +"useful for any sort of clean up required. This hook is called for both " +"the prefixed and slash versions of the command." +msgstr "" + +#: 94e3d86c469f48e9a68759fa1e7cf54d +#: discord.ext.bridge.core.BridgeCommand.after_invoke:7 of +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "" + +#: 3721ef9b30b5455cb9d3e7201a173f6c +#: discord.ext.bridge.core.BridgeCommand.after_invoke:10 of +msgid "The coroutine to register as the post-invoke hook." +msgstr "" + +#: ../../ext/bridge/api.rst:92 cfe096223cd243a497dd1834b89a6210 +msgid "BridgeCommandGroup" +msgstr "" + +#: 0f525e459e0749eda68c2f757c2b4b7c +#: discord.ext.bridge.core.BridgeCommandGroup:13 of +msgid "The slash command version of this command group." +msgstr "" + +#: d5f80ea868be4479b31c15d7c145a257 +#: discord.ext.bridge.core.BridgeCommandGroup:15 of +msgid ":class:`.SlashCommandGroup`" +msgstr "" + +#: 6ee6e20458ca445b83f5a44bb94c21cd +#: discord.ext.bridge.core.BridgeCommandGroup:19 of +msgid "The prefix-based version of this command group." +msgstr "" + +#: 501cd7140e8f448bb10ec476988ea419 +#: discord.ext.bridge.core.BridgeCommandGroup:21 of +msgid ":class:`.ext.commands.Group`" +msgstr "" + +#: 0aaeec7bdf1f444392d736e0edaa40dd +#: discord.ext.bridge.core.BridgeCommandGroup:25 of +msgid "List of bridge commands in this group" +msgstr "" + +#: c5d8310ad9cf403f8de8dc56d6bf3c26 +#: discord.ext.bridge.core.BridgeCommandGroup:27 of +msgid "List[:class:`.BridgeCommand`]" +msgstr "" + +#: 6da69d8c508343b4862328abf6d1d42b +#: discord.ext.bridge.core.BridgeCommandGroup:31 of +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "" + +#: 3c0f50029ec14982b2c178a7a22b62de +#: discord.ext.bridge.core.BridgeCommandGroup:33 of +msgid "Optional[:class:`.SlashCommand`]" +msgstr "" + +#: 737188b67b894eaf9961484f4cd68c2b +#: discord.ext.bridge.core.BridgeCommandGroup.walk_commands:1 of +msgid "" +"An iterator that recursively walks through all the bridge group's " +"subcommands." +msgstr "" + +#: be375185d935402f9bece4e8479efc7d +#: discord.ext.bridge.core.BridgeCommandGroup.walk_commands of +msgid "Yields" +msgstr "" + +#: ab1ffcf146a34b59b7be85e9fc72e879 +#: discord.ext.bridge.core.BridgeCommandGroup.walk_commands:3 of +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr "" + +#: discord.ext.bridge.core.BridgeCommandGroup.walk_commands:6 +#: e2ad6ebfe5824570a21d38811de1a22e of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\" +" " +"\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr "" + +#: a8e41674d62e47c884b4b94285c8c79e +#: discord.ext.bridge.core.BridgeCommandGroup.command:1 of +msgid "A decorator to register a function as a subcommand." +msgstr "" + +#: ../../ext/bridge/api.rst:100 85c6676b73cd4e3598474888a69220ee +msgid "Decorators" +msgstr "" + +#: 0ea58971f2c64f7384ea418f5e94e192 discord.ext.bridge.core.bridge_command:1 of +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "" + +#: cb885a3f5922444ca8d68724b2adb497 discord.ext.bridge.core.bridge_group:4 of +msgid "" +"Keyword arguments that are directly passed to the respective command " +"constructors (:class:`.SlashCommandGroup` and " +":class:`.ext.commands.Group`)." +msgstr "" + +#: 54e3f1a6164142ada5b4642e8008c3f2 discord.ext.bridge.core.map_to:1 of +msgid "" +"To be used with bridge command groups, map the main command to a slash " +"subcommand." +msgstr "" + +#: d21ac3819ede416f8f28497cd60b5369 discord.ext.bridge.core.map_to:4 of +msgid "The new name of the mapped command." +msgstr "" + +#: 192392e47e3f47bebb2f929f1f778892 discord.ext.bridge.core.map_to:7 of +msgid "The new description of the mapped command." +msgstr "" + +#: 09a8c314d2334ca2a33f0ccae64de705 discord.ext.bridge.core.map_to:11 of +msgid "Example" +msgstr "" + +#: d8cba8f60cac4e78b72ecefd5e198a09 discord.ext.bridge.core.map_to:23 of +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "" + +#: 8748247655d94525be995419809f53cc discord.ext.bridge.core.guild_only:1 of +msgid "" +"Intended to work with :class:`.ApplicationCommand` and " +":class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the" +" command to only run in guilds, and also registers the command as guild " +"only client-side (on discord)." +msgstr "" + +#: 7e61ec9dd3b545c785883dd2349fb166 discord.ext.bridge.core.guild_only:4 of +msgid "" +"Basically a utility function that wraps both " +":func:`discord.ext.commands.guild_only` and " +":func:`discord.commands.guild_only`." +msgstr "" + +#: 96dc0b24c06542e580f588b6df02e7c8 discord.ext.bridge.core.is_nsfw:1 of +msgid "" +"Intended to work with :class:`.ApplicationCommand` and " +":class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the" +" command to only run in nsfw contexts, and also registers the command as " +"nsfw client-side (on discord)." +msgstr "" + +#: c8d25c4b9711421cb1eee1d8f1f6e7c3 discord.ext.bridge.core.is_nsfw:4 of +msgid "" +"Basically a utility function that wraps both " +":func:`discord.ext.commands.is_nsfw` and " +":func:`discord.commands.is_nsfw`." +msgstr "" + +#: 061033f4c75446c3a6b9fa17e864fc13 discord.ext.bridge.core.is_nsfw:8 of +msgid "" +"In DMs, the prefixed-based command will always run as the user's privacy " +"settings cannot be checked directly." +msgstr "" + +#: 24bf1747781640e4af98e4808495d17e discord.ext.bridge.core.has_permissions:1 +#: of +msgid "" +"Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, " +"adds a :func:`~ext.commands.check` that locks the command to be run by " +"people with certain permissions inside guilds, and also registers the " +"command as locked behind said permissions." +msgstr "" + +#: 36a8f1cc8cd048fda5579993cf4f1d0f discord.ext.bridge.core.has_permissions:5 +#: of +msgid "" +"Basically a utility function that wraps both " +":func:`discord.ext.commands.has_permissions` and " +":func:`discord.commands.default_permissions`." +msgstr "" + +#: 02a8d1d690944a72b8679c14f57ae747 discord.ext.bridge.core.has_permissions:9 +#: of +msgid "An argument list of permissions to check for." +msgstr "" + +#: ../../ext/bridge/api.rst:120 3d796982686f494da2668a0e0a9544d6 +msgid "Command Subclasses" +msgstr "" + +#: 68ab0eb1255f4b6dbc35bd39a029ff61 discord.ext.bridge.core.BridgeExtCommand:1 +#: of +msgid "" +"A subclass of :class:`.ext.commands.Command` that is used for bridge " +"commands." +msgstr "" + +#: discord.ext.bridge.core.BridgeExtGroup:1 f99dd00f0e1f43a484a58f999c68ca01 of +msgid "" +"A subclass of :class:`.ext.commands.Group` that is used for bridge " +"commands." +msgstr "" + +#: c12038ebec8d4aceae4cc60ed8ba17bb +#: discord.ext.bridge.core.BridgeSlashCommand:1 of +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "" + +#: b0e79ad4368c482fadf8d443f9584918 discord.ext.bridge.core.BridgeSlashGroup:1 +#: of +msgid "" +"A subclass of :class:`.SlashCommandGroup` that is used for bridge " +"commands." +msgstr "" + +#: ../../ext/bridge/api.rst:131 57393fd3d3f242b4a5a8386b55b8818a +msgid "Context" +msgstr "" + +#: ../../ext/bridge/api.rst:134 45b8f55c8a7c450aadf96ee2bc5d0bf2 +msgid "BridgeContext" +msgstr "" + +#: 72208e8dc06d49b48ffb951c4a7c0dc5 discord.ext.bridge.context.BridgeContext:1 +#: of +msgid "" +"The base context class for compatibility commands. This class is an " +":term:`abstract base class` (also known as an ``abc``), which is " +"subclassed by :class:`BridgeExtContext` and " +":class:`BridgeApplicationContext`. The methods in this class are meant to" +" give parity between the two contexts, while still allowing for all of " +"their functionality." +msgstr "" + +#: a0c5063715dc4110a62fc98f24680696 discord.ext.bridge.context.BridgeContext:5 +#: of +msgid "" +"When this is passed to a command, it will either be passed as " +":class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since " +"they are two separate classes, it's easy to use the " +":attr:`BridgeContext.is_app` attribute. to make different functionality " +"for each context. For example, if you want to respond to a command with " +"the command type that it was invoked with, you can do the following:" +msgstr "" + +#: f30c4ce6aa1b461f8f83a8c6f0b97652 of typing._overload_dummy:1 +msgid "Helper for @overload to raise when called." +msgstr "" + +#: 0ce390d55fbb4f518af7dbde2a8fc4b4 12f4cce4c9d24748b98e3746f8edba6a +#: 47958ab3fa804196bbed67e7d4128770 9cbe5a9cbe914b528ad81f23a4ad5481 +#: 9eeff2bc29d04f65a81322028a9e98bb de66e4aa5b244b38acf315ebadaa5346 +#: discord.ext.bridge.context.BridgeContext.defer:1 +#: discord.ext.bridge.context.BridgeContext.edit:1 +#: discord.ext.bridge.context.BridgeContext.reply:1 +#: discord.ext.bridge.context.BridgeContext.respond:1 +#: discord.ext.bridge.context.BridgeExtContext.delete:1 +#: discord.ext.bridge.core.BridgeOption.convert:1 of +msgid "|coro|" +msgstr "" + +#: d1ad409f80644b6994ba2e04cd0d70c6 +#: discord.ext.bridge.context.BridgeContext.respond:3 of +msgid "" +"Responds to the command with the respective response type to the current " +"context. In :class:`BridgeExtContext`, this will be " +":meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this " +"will be :meth:`~.ApplicationContext.respond`." +msgstr "" + +#: 21394f711ded49cdb6a23566b0a7cd53 d4ce5e66006147babe02bdf635472c9f +#: discord.ext.bridge.context.BridgeContext.reply:6 +#: discord.ext.bridge.context.BridgeContext.respond:8 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`" +" \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\|" +" \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr "" + +#: discord.ext.bridge.context.BridgeContext.reply:3 +#: ecb38c12b5cb45f2b63ee4759b9a72ab of +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "" + +#: discord.ext.bridge.context.BridgeContext.defer:3 +#: e284edacef264148b98fd65cf5832a4f of +msgid "" +"Defers the command with the respective approach to the current context. " +"In :class:`BridgeExtContext`, this will be " +":meth:`~discord.abc.Messageable.trigger_typing` while in " +":class:`BridgeApplicationContext`, this will be " +":attr:`~.ApplicationContext.defer`. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 6b331c393af24345a6dc904dd6177bd9 +#: discord.ext.bridge.context.BridgeContext.defer:10 of +msgid "" +"There is no ``trigger_typing`` alias for this method. ``trigger_typing`` " +"will always provide the same functionality across contexts." +msgstr "" + +#: 62c545f510f84f8090befb9f0a37c7b1 +#: discord.ext.bridge.context.BridgeContext.edit:3 of +msgid "" +"Edits the original response message with the respective approach to the " +"current context. In :class:`BridgeExtContext`, this will have a custom " +"approach where :meth:`.respond` caches the message to be edited here. In " +":class:`BridgeApplicationContext`, this will be " +":attr:`~.ApplicationContext.edit`." +msgstr "" + +#: 829993f931c34774b02a374bee1d885f +#: discord.ext.bridge.context.BridgeContext.edit:8 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\`" +" \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr "" + +#: cc361c83e8314be5b9c5fcc6f9d9f97a discord.ext.bridge.BridgeContext.is_app:1 +#: of +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "" + +#: ../../ext/bridge/api.rst:143 832d7d0bc0914c3c8099fcd557339b87 +msgid "BridgeContext Subclasses" +msgstr "" + +#: discord.ext.bridge.context.BridgeApplicationContext:1 +#: edb2d387c93c49179b7615dd26d27b36 of +msgid "" +"The application context class for compatibility commands. This class is a" +" subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. " +"This class is meant to be used with :class:`BridgeCommand`." +msgstr "" + +#: ac8e72c3de8f4997993a1a37cc9da2b8 +#: discord.ext.bridge.context.BridgeExtContext:1 of +msgid "" +"The ext.commands context class for compatibility commands. This class is " +"a subclass of :class:`BridgeContext` and :class:`~.Context`. This class " +"is meant to be used with :class:`BridgeCommand`." +msgstr "" + +#: discord.ext.bridge.context.BridgeExtContext.delete:3 +#: f87476695de442659103636aadd364ae of +msgid "Deletes the original response message, if it exists." +msgstr "" + +#: c61014534796459d833957ad39ce0cc2 +#: discord.ext.bridge.context.BridgeExtContext.delete:6 of +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "" + +#: bfea474cbf854303b371c49f389e86a6 +#: discord.ext.bridge.context.BridgeExtContext.delete:9 of +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "" + +#: ../../ext/bridge/api.rst:162 be07208f849b4f75afd5cb572c0a4830 +msgid "Option" +msgstr "" + +#: ../../ext/bridge/api.rst:165 0b5ee756992f4209aeb8020d1f811b80 +msgid "BridgeOption" +msgstr "" + +#: 545f31dcbb4e4ab0ac92bc0c8e7e6b47 discord.ext.bridge.core.BridgeOption:1 of +msgid "" +"A subclass of :class:`discord.Option` which represents a selectable slash" +" command option and a prefixed command argument for bridge commands." +msgstr "" + +#: 761f4405d509432f87a2ac1b2dabf7ed +#: discord.ext.bridge.core.BridgeOption.convert:3 of +msgid "The method to override to do conversion logic." +msgstr "" + +#: 5c1ade82f7f841f08a5dbb10b20be098 +#: discord.ext.bridge.core.BridgeOption.convert:5 of +msgid "" +"If an error is found while converting, it is recommended to raise a " +":exc:`.CommandError` derived exception as it will properly propagate to " +"the error handlers." +msgstr "" + +#: 8bef3e5908644772b4ee25277a02cfe4 +#: discord.ext.bridge.core.BridgeOption.convert:10 of +msgid "The invocation context that the argument is being used in." +msgstr "" + +#: b947563417964b228a845d5f06eb65af +#: discord.ext.bridge.core.BridgeOption.convert:13 of +msgid "The argument that is being converted." +msgstr "" + +#: 93ae6d03448d48ce990b117e1505ec77 +#: discord.ext.bridge.core.BridgeOption.convert:16 of +msgid "A generic exception occurred when converting the argument." +msgstr "" + +#: 7854a83f22984d88ab55a993d5060ea2 +#: discord.ext.bridge.core.BridgeOption.convert:17 of +msgid "The converter failed to convert the argument." +msgstr "" + +#: 2fb1f6d9385a42efa294143acd847528 +#: discord.ext.bridge.core.BridgeOption.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr "" + +#~ msgid "" +#~ "Alias of :data:`typing.Union` [ " +#~ ":class:`.BridgeExtContext`, :class:`.BridgeApplicationContext`" +#~ " ] for typing convenience." +#~ msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/ext/bridge/index.po b/docs/locales/en/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..cd205b3ebb --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,38 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../ext/bridge/index.rst:4 8e92a85fefad410e8daabe8f96d6df34 +msgid "discord.ext.bridge" +msgstr "" + +#: ../../ext/bridge/index.rst:8 23a5963c0d484144bd55d09400c808b6 +msgid "" +"This module allows using one command callback in order to make both a " +"prefix command and a slash command. This page includes the API " +"reference/documentation for the module, but only contains a short " +"example. For a more detailed guide on how to use this, see our " +"`discord.ext.bridge guide `_." +msgstr "" + +#: ../../ext/bridge/index.rst:12 beb89b26b2aa4547affecbb8e5d4f488 +msgid "Example usage:" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/ext/commands/api.po b/docs/locales/en/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..27a1b1c51c --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,8248 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-12 14:51+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../ext/commands/api.rst:4 4725cf896a744071a08446633365c2de +msgid "API Reference" +msgstr "" + +#: ../../ext/commands/api.rst:6 80776e20ff0c4322aace15ec8c0d27bd +msgid "" +"The following section outlines the API of Pycord's prefixed command " +"extension module." +msgstr "" + +#: ../../ext/commands/api.rst:10 81068d91f0c1448f8317c7dfcba703f9 +msgid "" +"Using prefixed commands in guilds requires " +":attr:`Intents.message_content` to be enabled." +msgstr "" + +#: ../../ext/commands/api.rst:16 17dbf825697944a89c41e5c4af4e2602 +msgid "Bots" +msgstr "" + +#: ../../ext/commands/api.rst:19 a29e93a50d3b476bbe0cccd138a4d696 +msgid "Bot" +msgstr "" + +#: b469b90375a14a8b986f7b1b8a67a72d discord.ext.commands.bot.Bot:1 of +msgid "Represents a discord bot." +msgstr "" + +#: 4d17f20fad654fb4babd30e58d852b6c discord.ext.commands.bot.Bot:3 of +msgid "" +"This class is a subclass of :class:`discord.Bot` and as a result anything" +" that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "" + +#: 7d6d6af71a314aceb2ec965318f05bc3 discord.ext.commands.bot.Bot:7 of +msgid "" +"This class also subclasses :class:`.GroupMixin` to provide the " +"functionality to manage commands." +msgstr "" + +#: 11f3decf6af545119f242d17e4ea02d9 discord.ext.commands.bot.Bot:12 of +msgid "" +"Using prefixed commands requires :attr:`discord.Intents.message_content` " +"to be enabled." +msgstr "" + +#: 1197743250b64d25b9534197e3b19dd9 discord.ext.commands.bot.Bot:16 of +msgid "" +"The command prefix is what the message content must contain initially to " +"have a command invoked. This prefix could either be a string to indicate " +"what the prefix should be, or a callable that takes in the bot as its " +"first parameter and :class:`discord.Message` as its second parameter and " +"returns the prefix. This is to facilitate \"dynamic\" command prefixes. " +"This callable can be either a regular function or a coroutine." +msgstr "" + +#: discord.ext.commands.bot.Bot:24 fd93e34dd8834b20bc344422cf70e68a of +msgid "" +"An empty string as the prefix always matches, enabling prefix-less " +"command invocation. While this may be useful in DMs it should be avoided " +"in servers, as it's likely to cause performance issues and unintended " +"command invocations." +msgstr "" + +#: 78f9a5eccd1e4f9eb8008ffe838f1c23 discord.ext.commands.bot.Bot:29 of +msgid "" +"The command prefix could also be an iterable of strings indicating that " +"multiple checks for the prefix should be used and the first one to match " +"will be the invocation prefix. You can get this prefix via " +":attr:`.Context.prefix`. To avoid confusion empty iterables are not " +"allowed." +msgstr "" + +#: b786a1a7cee643dabc413b882de33d09 discord.ext.commands.bot.Bot:37 of +msgid "" +"When passing multiple prefixes be careful to not pass a prefix that " +"matches a longer prefix occurring later in the sequence. For example, if" +" the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be" +" matched to any message as the previous one matches messages starting " +"with ``!?``. This is especially important when passing an empty string, " +"it should always be last as no prefix after it will be matched." +msgstr "" + +#: c98aa001a62745c3a90ffa2e14f5a30a discord.ext.commands.bot.Bot:47 of +msgid "" +"Whether the commands should be case-insensitive. Defaults to ``False``. " +"This attribute does not carry over to groups. You must set it to every " +"group if you require group commands to be case-insensitive as well." +msgstr "" + +#: 108b348c252b4fc789b680c4989870da 1448a02e23c546f4aa4a5072438e16fb +#: 49345f7753d447cf9094bb2cdecd0929 54a780ec9c5b4270b61cb1c40f28ae63 +#: 6704eed5f747450d8dfdeaeec60cbbd4 6d8c11bb47b2404baadf295e73360b7c +#: 723b2bd90f97499ba5dc2f350d048982 8ea34deeeeef47bea5ed8bf17d465dd5 +#: 99c61ff23a9f43c1a74a3608cf5bc810 b010c0c3b0fa454a90311a3446f9c49b +#: bb7a8a01292b449d92d4b82befbce7c0 c68d85257a5e4af6bd219a6159648c77 +#: d6182d5081b04a73b45cdab6770e7195 de6c28dbc55944cba7b85d7aa7fcbd63 +#: discord.cog.CogMeta discord.ext.commands.Bot.store_url +#: discord.ext.commands.bot.Bot discord.ext.commands.context.Context +#: discord.ext.commands.converter.clean_content +#: discord.ext.commands.cooldowns.Cooldown discord.ext.commands.core.Command +#: discord.ext.commands.core.Group discord.ext.commands.core.GroupMixin +#: discord.ext.commands.errors.BadBoolArgument +#: discord.ext.commands.errors.BadColourArgument +#: discord.ext.commands.errors.BadFlagArgument +#: discord.ext.commands.errors.BadLiteralArgument +#: discord.ext.commands.errors.BadUnionArgument +#: discord.ext.commands.errors.BotMissingAnyRole +#: discord.ext.commands.errors.BotMissingPermissions +#: discord.ext.commands.errors.BotMissingRole +#: discord.ext.commands.errors.ChannelNotFound +#: discord.ext.commands.errors.ChannelNotReadable +#: discord.ext.commands.errors.CheckAnyFailure +#: discord.ext.commands.errors.CommandInvokeError +#: discord.ext.commands.errors.CommandOnCooldown +#: discord.ext.commands.errors.CommandRegistrationError +#: discord.ext.commands.errors.ConversionError +#: discord.ext.commands.errors.EmojiNotFound +#: discord.ext.commands.errors.ExpectedClosingQuoteError +#: discord.ext.commands.errors.GuildNotFound +#: discord.ext.commands.errors.GuildStickerNotFound +#: discord.ext.commands.errors.InvalidEndOfQuotedStringError +#: discord.ext.commands.errors.MaxConcurrencyReached +#: discord.ext.commands.errors.MemberNotFound +#: discord.ext.commands.errors.MessageNotFound +#: discord.ext.commands.errors.MissingAnyRole +#: discord.ext.commands.errors.MissingFlagArgument +#: discord.ext.commands.errors.MissingPermissions +#: discord.ext.commands.errors.MissingRequiredArgument +#: discord.ext.commands.errors.MissingRequiredFlag +#: discord.ext.commands.errors.MissingRole +#: discord.ext.commands.errors.PartialEmojiConversionFailure +#: discord.ext.commands.errors.RoleNotFound +#: discord.ext.commands.errors.ThreadNotFound +#: discord.ext.commands.errors.TooManyFlags +#: discord.ext.commands.errors.UnexpectedQuoteError +#: discord.ext.commands.errors.UserNotFound discord.ext.commands.flags.Flag +#: discord.ext.commands.help.DefaultHelpCommand +#: discord.ext.commands.help.HelpCommand +#: discord.ext.commands.help.MinimalHelpCommand +#: discord.ext.commands.help.Paginator e0d28de49a3749f3948e2f460a2bc193 +#: e20543c5f090466484011ef7bf9cb1c9 e81e864ce6e74c53a1da0ea0da311d4b +#: ed2d367aaec844adb55fb898bbffac16 f147a85e13784370a831501af464a220 of +msgid "type" +msgstr "" + +#: 028c17ce435547ffae49bfe544b27746 276711c2a624419c9122929d2b0cdce4 +#: 8eca1380293a4e09adb2fe3078136d93 af2f1296905749558682b61c1f7363ae +#: discord.abc.Messageable.can_send:4 discord.bot.BotBase.is_owner:18 +#: discord.ext.commands.bot.Bot:51 discord.ext.commands.bot.Bot:69 +#: discord.ext.commands.context.Context:97 +#: discord.ext.commands.converter.clean_content:10 +#: discord.ext.commands.converter.clean_content:16 +#: discord.ext.commands.converter.clean_content:22 +#: discord.ext.commands.converter.clean_content:30 +#: discord.ext.commands.core.Command:49 discord.ext.commands.core.Command:86 +#: discord.ext.commands.core.Command:97 discord.ext.commands.core.Command:112 +#: discord.ext.commands.core.Command:121 discord.ext.commands.core.Command:129 +#: discord.ext.commands.core.Command.can_run:15 +#: discord.ext.commands.core.Command.is_on_cooldown:8 +#: discord.ext.commands.core.Group:18 discord.ext.commands.core.Group:25 +#: discord.ext.commands.core.GroupMixin:15 +#: discord.ext.commands.errors.CommandRegistrationError:18 +#: discord.ext.commands.flags.Flag:48 +#: discord.ext.commands.help.DefaultHelpCommand:18 +#: discord.ext.commands.help.HelpCommand:24 +#: discord.ext.commands.help.MinimalHelpCommand:9 +#: e56be582fd2f43eb94adef4955c9abc0 f9b93a380a284e189dc49fa48f348b9d of +msgid ":class:`bool`" +msgstr "" + +#: a5c952c8f62649ff98c795f04e8a9a37 discord.ext.commands.bot.Bot:55 of +msgid "" +"The help command implementation to use. This can be dynamically set at " +"runtime. To remove the help command pass ``None``. For more information " +"on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "" + +#: 4e41dd2f6e474b968c86fe917f45284f discord.ext.commands.bot.Bot:59 of +msgid "Optional[:class:`.HelpCommand`]" +msgstr "" + +#: 7fa36f820e74436d9d890ec066f529db discord.ext.commands.bot.Bot:63 of +msgid "" +"Whether to strip whitespace characters after encountering the command " +"prefix. This allows for ``! hello`` and ``!hello`` to both work if the " +"``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "" + +#: ../../ext/commands/api.rst 024cbb8ca69e4f12a98419f0192bae96 +#: 0376d1f3354048868ddfbd60acc27c3f 0aeb5e483b864662a2c92eebe6f73d99 +#: 0d64926e9bea4ccd8315b15fc036fc4a 102f67d17332471589053ba459ce6673 +#: 108b930bfc3f4ea6bd10cbaf29718687 1801dd137def4a99846c6e603f11be1f +#: 183496d428a34f7fa249dc88301f8431 188381798d224cf9b16d6f04651426d2 +#: 261e22506dc44e6484564a98a9ec4011 2a95458e7d8643c2ba53f80511c7fd97 +#: 31bcf378e11c4b7ab87c5037821c6bda 3750ee9874a649329aece5d76398dd35 +#: 37a692f9433046b2adc05d7f464911ab 3bc1086271a94765a82ebba9760e62e2 +#: 3dbc0c3d62ea4dd1817205318f484376 3f6507abd3334942a24533f0ac0406f9 +#: 440b7315543740c799170efcdd4c8f0e 49e2026dab654b5ca1a75e1ff2ccedc9 +#: 4d9ef44a16e243bbb935cce7d88c9077 4f4b773ec13f47708179d77079b9f6f2 +#: 558e0cf6198b497cbdb8d7560555cc5b 563e5536890b484ba2cbd0130f1fd9b2 +#: 57fb1651bc2740c48fe01620a1aed31e 5b1a773778e843eea6be076e295ca033 +#: 634b9b9ff2e24fdd91b9e3cd5b880d80 746d82f9ccbd40149262634a1f669cd2 +#: 775f4dd1f7fb4a1b9380f86b62fb8056 798fa21ae55f4282b4274758b25d4a83 +#: 812d0fca4d1549339fe98076a893d054 8ff0aa5a5bb6453aa531130a984ee93d +#: 942d8503487448198ea61a6b6e8305d0 9e65520881584d7680f63c943351a497 +#: c30960c78b1a46e2ab2904693f41c626 c6adc9c02e9a4ce6b1595ac2630bf3b0 +#: ca919f2f99a9425793383e7999f3af1c cd224adfd8e945a795b92654c0537e46 +#: d18243f289de4f3aa562ec83d726eb9c discord.abc.Messageable.history +#: discord.client.Client.entitlements discord.client.Client.fetch_guilds +#: discord.client.Client.wait_for e42e172090a0442eba2ac0f76facbcb5 +#: e532d59c72474f99b0c1ce7c2be358e2 e979a2cb64c144f08aaf2803550cb543 +#: f49495cd4b3f496f96f84ac8aa1f87e4 fb6332a28a1242f5bede4ea1b4001c1a of +msgid "Parameters" +msgstr "" + +#: baeb56b4ff064e6aa001a5ea8f1091bf discord.bot.BotBase.after_invoke:1 of +msgid "" +"A decorator that registers a coroutine as a post-invoke hook. A post-" +"invoke hook is called directly after the command is called. This makes it" +" a useful function to clean-up database connections or any type of clean " +"up required. This post-invoke hook takes a sole parameter, a " +":class:`.Context`." +msgstr "" + +#: 32289ec6ecad415fbc1716cd28bb27a1 discord.bot.BotBase.after_invoke:9 of +msgid "" +"Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless " +"checks and argument parsing procedures succeed. This hook is, however, " +"**always** called regardless of the internal command callback raising an " +"error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-" +"up scenarios." +msgstr "" + +#: 1f4414f19cb245d88c190908023d9ac8 25b3652c08d44d8393ec6f0711deff0e +#: discord.bot.BotBase.after_invoke:16 +#: discord.ext.commands.core.Command.after_invoke:12 of +msgid "The coroutine to register as the post-invoke hook." +msgstr "" + +#: ../../ext/commands/api.rst 00e100a89db949b995244b5d7ea5c0e0 +#: 0257c75535174994a013c404eed4de3d 081141882b5340b1a80561ca9111ae72 +#: 0aaa7547a84144fc98f8383462258a5d 0d7bea2ab09344bda3df67dcce3ccdeb +#: 1604d3c4c756481bb44124fe1ee7d611 227204ee62a54c638c2f8b9a91f21145 +#: 2650f6c238e74f72b4357fd0f3649d83 2d00ed43b7e24723b1c4d6801312bdce +#: 3a49aabda5f543efb7eef2d44dc0035e 3cf4e4f8fc3944a4b6b9f023fcb9e6e1 +#: 4518277f66b34d9ea6be92e3704fe30a 5f1237616e624c018af062a4d89f032c +#: 630f4288af604d4dbc8e4177a7f21fac 65b2a4bfdd9f4cc8b834d6d484ef0034 +#: 77dbba5eef11464da6e6d8561993d040 7ae1c7e45ccf4e3583a54ff7c5d20a74 +#: 85f893142dbc4e559193fbceb66e29f8 9deb4f77a61449abb51bd5c6b99a742f +#: b3afb24572e449de8c461403f5864f56 b49c0073b56340ec9b78c3636e71e85c +#: bd10f9d638b347be80279e61dbb6e087 db7ea1055966404583fc0cb0b2c4d74f +#: db8e0299f4d5440f9756cf07c76ff3d2 discord.abc.Messageable.history +#: discord.client.Client.entitlements discord.client.Client.fetch_guilds +#: discord.client.Client.wait_for e20c74a6209b4f6ba2e2c83d146ec9b9 +#: f601fd2e0ec94ce3a040c5466afdf390 fd1ed033251349feb65a4373c39a3112 +#: fd688e2c9468425f8650382857f2fe9a of +msgid "Raises" +msgstr "" + +#: 2cb6dbd6878a4f67b5005054d4f2340f 7c6f3f25c6eb4f608a6c686dd14b8cad +#: 9824f3f114b94bd7a2ba929d2afe59d4 d8c011efa50c47929c394609e419d093 +#: discord.bot.BotBase.after_invoke:19 discord.bot.BotBase.before_invoke:18 +#: discord.client.Client.event:13 +#: discord.ext.commands.core.Command.after_invoke:15 +#: discord.ext.commands.core.Command.before_invoke:15 +#: discord.ext.commands.core.Command.error:11 of +msgid "The coroutine passed is not actually a coroutine." +msgstr "" + +#: ce34b808e8804ba09dcdbdd5e43f819b discord.bot.BotBase.before_invoke:1 of +msgid "" +"A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke" +" hook is called directly before the command is called. This makes it a " +"useful function to set up database connections or any type of set up " +"required. This pre-invoke hook takes a sole parameter, a " +":class:`.Context`." +msgstr "" + +#: b71fb7de34de469fb20971cf6703e7c3 discord.bot.BotBase.before_invoke:9 of +msgid "" +"The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are " +"only called if all checks and argument parsing procedures pass without " +"error. If any check or argument parsing procedures fail then the hooks " +"are not called." +msgstr "" + +#: 148cdbf1c8ed4fb8b616c3fd3c815e8d discord.bot.BotBase.before_invoke:15 +#: discord.ext.commands.core.Command.before_invoke:12 +#: ff1c1be395074d0bb084578f9648eed3 of +msgid "The coroutine to register as the pre-invoke hook." +msgstr "" + +#: 30a3ced0836b40dabba33773003dc2bd discord.bot.BotBase.check:1 of +msgid "" +"A decorator that adds a global check to the bot. A global check is " +"similar to a :func:`.check` that is applied on a per-command basis except" +" it is run before any command checks have been verified and applies to " +"every command the bot has." +msgstr "" + +#: 095a14ed7b60432a89818371f06efc90 discord.bot.BotBase.check:7 +#: discord.bot.BotBase.check_once:13 e5ff436d190a46d49314f31d064db949 of +msgid "" +"This function can either be a regular function or a coroutine. Similar to" +" a command :func:`.check`, this takes a single parameter of type " +":class:`.Context` and can only raise exceptions inherited from " +":exc:`.ApplicationCommandError`." +msgstr "" + +#: 123407d31ff24dd999888399d8c675ba 2f0dc352e6954dfd855ac44d79767155 +#: 34a0e26f2a9f4d4dadfcba125b8d60d8 587e23d4697f4a4f94f960f265e6d788 +#: 6a9a9b160ee24cf4bfd1c63a997e9b6d 6e75c57ecbba458cbf5f3669a2924ab2 +#: d64565eb8c0f49fabf5ba8ebd0408016 discord.bot.BotBase.check:12 +#: discord.bot.BotBase.check_once:18 discord.client.Client.add_listener:15 +#: discord.client.Client.change_presence:16 discord.client.Client.event:16 +#: discord.client.Client.listen:11 discord.ext.commands.bot.when_mentioned_or:8 +#: discord.ext.commands.core.before_invoke:11 +#: discord.ext.commands.core.has_any_role:22 +#: discord.ext.commands.core.has_permissions:21 of +msgid "Example" +msgstr "" + +#: bf4f1977d6504fd5aa739b28dc3f3390 discord.bot.BotBase.check_once:1 of +msgid "" +"A decorator that adds a \"call once\" global check to the bot. Unlike " +"regular global checks, this one is called only once per " +":meth:`.Bot.invoke` call. Regular global checks are called whenever a " +"command is called or :meth:`.Command.can_run` is called. This type of " +"check bypasses that and ensures that it's called only once, even inside " +"the default help command." +msgstr "" + +#: acbeb7009e4c42fb9f128986d2327e71 discord.bot.BotBase.check_once:8 of +msgid "" +"When using this function the :class:`.Context` sent to a group subcommand" +" may only parse the parent command and not the subcommands due to it " +"being invoked once per :meth:`.Bot.invoke` call." +msgstr "" + +#: 61aae0b994f947b8a1853fda41ee0156 66c60cbf615a4450a0177eb8da660fe0 +#: discord.ext.commands.core.GroupMixin.command:1 of +msgid "" +"A shortcut decorator that invokes :func:`.command` and adds it to the " +"internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "" + +#: ../../ext/commands/api.rst 00966068ccb2456abc827d903250b689 +#: 21b6898829444dfdb4d7580f4b8e8d68 21f49b5974d544ffa30d029b89640d48 +#: 2fccd0b36926425aa78d42b9de69dd3f 3befc35084eb4ca69d1eae3463158861 +#: 3e6b25fcdbcd450dba91025338af56fb 40cd0e3b914a4a93ba95b1043d54fb57 +#: 5112301599a2461ab64d607e13e31a0c 581f5bcbba424fdf8b15bcd0b8dc5711 +#: 60a9892afb20420f98ee9221fe525e3e 63cdadc9d8aa4bfabd4c2ebf92943762 +#: 6913a08768f04878a8aae3849f2adbcb 6a9df72d6343436e8a5d6be1812ec065 +#: 6d76557cfaf549eb9bbc18d2a380ba49 8e90d2f15b4941d98f8df75ea6d1f6f7 +#: 98009cff8e324960b08e4c96846a22ab a7e906d78e604e498c0790b35695e171 +#: ad5f35b147574d30a0a839258b537e52 ae1200f79d0048e199cda9ddbb154333 +#: b6a1edaf8c42494ba5a9e62d8f3d7a0a d0d2c521ec0e46899e9c57882edc2983 +#: dfe2da6e0d804d72b6ac73f14963c8f2 discord.client.Client.wait_for +#: e7bb28eb3fa44f87a1b2e6c2b6fd300f ec9b0c7dd290456795aee20a50830ab1 +#: f4e36f6415c74fc8a5a3d6a231c6612a of +msgid "Returns" +msgstr "" + +#: 230236e4038a412abf293a0551512e31 +#: discord.ext.commands.core.GroupMixin.command:4 +#: f2b7b7f29eb2477e9258c08e49fb3a95 of +msgid "" +"A decorator that converts the provided method into a Command, adds it to " +"the bot, then returns it." +msgstr "" + +#: ../../ext/commands/api.rst 05d8c3f799b246739284dcbebc3d5739 +#: 09d2baeccc6b4e50adbfb853f2ddf881 0d5178bf994b44cf926dcc67b591b256 +#: 0e729c9e43cf4805bafb0bab9cc41897 10722e3a6685409b8ad039a73479cf66 +#: 123b5e5640914f0c8b4e3046caba82cd 13f3ffb767a74f8e9e764aa5a74a089a +#: 198305646666451196d990dc353636ba 33ed8c12d23741c6880f5a1831375fdf +#: 378dd7f9c2a64e0189299a60058beda8 3bcb056fb2e14a0fb068215205695ca6 +#: 3c4a3dc146ea4ead9cbc60eaff2e0088 3c9ab793d144498097bcfd76a5b53eac +#: 410437ffc3e04b40a383df209d8b16f3 45ea3bdc5022438c98fa1d50fa047386 +#: 4c5fd8c24f5b4ad28a6e1aae56787d18 53e94d21edab4737b42673ee97fdb49c +#: 55536d0434d84487aa4b5a9de46e940b 5636ea5552c544f5b61e1173aabbd424 +#: 5c50e685ec2041e597da308a07641a2c 631a53d5fb644b1dbbe93c6614a7c4f2 +#: 6cbefb296dbe48689f75969f7d94f823 747e9c0cdf2f4e9bb919c9dc427e2cc2 +#: 77e4fafb7b5f4845b9d186a0206d03e2 83f34d28e50d49638d87349d48d2369e +#: 83f96d62a16b4d479ab2c81dd1f136f5 844194587e244cf2b26a421da5ef2919 +#: 853376070e4546b989f18c50a2d9817b 8ad6c4547b91438cac30d78cc6b56789 +#: 9014a07ae4274d518383c0faced251e7 9d5d85b51d48428ba902d02b951bcffb +#: 9d778ca7356943e294915c2454341f4a aa13bf25f19340fc931e80e3daed2919 +#: b45285c94435415aa6a5322e8781abbd b46102d67b324fd8a3c1c4ae247fa8b3 +#: ba9d73b43cc14b0c8711857654f83f62 bf756d9820a94075834d33924e09e0e2 +#: c34bb5212e8843d885c20cbf2eb7d819 c9bc8a557c184c6d9f063626b67cc4cd +#: cc0179f647c24dc9a5287080d1c62d99 cd347a646db3434e925a1c1ee2047412 +#: dd1387feedaf4788a91e66c7120bb6bf df0dfaebe66b4cf0840971e222e3f126 +#: discord.abc.Messageable.history discord.client.Client.entitlements +#: discord.client.Client.fetch_guilds discord.client.Client.wait_for +#: e33db6d356e34de5945d286505e336fa efde8f14120541b68759499f509605ce +#: f4e246fdf7f2458baa9253a36a4045e0 fc5da63fdcca41d5a4742949f05235c9 of +msgid "Return type" +msgstr "" + +#: 0fac82441bda46b2857b66cc3d6fc1ab 44da924bb9b14d1e8a47ed370ae96009 +#: discord.ext.commands.core.GroupMixin.command:5 of +msgid "Callable[..., :class:`Command`]" +msgstr "" + +#: 25ca5d10c25a43ab825740b2fb2874e4 discord.client.Client.event:1 of +msgid "A decorator that registers an event to listen to." +msgstr "" + +#: 6ced4d446c2447a7b3f807c6868b6598 discord.client.Client.event:3 of +msgid "" +"You can find more info about the events on the :ref:`documentation below " +"`." +msgstr "" + +#: 58e8a1624b6b47c18cba15aa21150688 discord.client.Client.event:5 of +msgid "" +"The events must be a :ref:`coroutine `, if not, " +":exc:`TypeError` is raised." +msgstr "" + +#: bd32e11d29e74bd6b0f29d4020cbd2b9 discord.client.Client.event:9 of +msgid "" +"This replaces any default handlers. Developers are encouraged to use " +":py:meth:`~discord.Client.listen` for adding additional handlers instead " +"of :py:meth:`~discord.Client.event` unless default method replacement is " +"intended." +msgstr "" + +#: 84c8e89006cc4917a75cff6dd4a7be7f discord.client.Client.event:25 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr "" + +#: 2d92005457764c1c8814201cecd4d501 b4303f71de864e7e98b980bd33ef7d84 +#: discord.ext.commands.core.GroupMixin.group:1 of +msgid "" +"A shortcut decorator that invokes :func:`.group` and adds it to the " +"internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "" + +#: dc51e15c515241e1b7db18a0e7ddfb03 +#: discord.ext.commands.core.GroupMixin.group:4 +#: fd3c8f26e2e64cbc919c3e72c8975e46 of +msgid "" +"A decorator that converts the provided method into a Group, adds it to " +"the bot, then returns it." +msgstr "" + +#: cdd278087924410f940c85c590d6565c +#: discord.ext.commands.core.GroupMixin.group:5 +#: ffe6eb92b0224834b83f3814c9c5df5f of +msgid "Callable[..., :class:`Group`]" +msgstr "" + +#: 439a5983b3e34e9ab7954fa7b9042e7d discord.client.Client.listen:1 of +msgid "" +"A decorator that registers another function as an external event " +"listener. Basically this allows you to listen to multiple events from " +"different places e.g. such as :func:`.on_ready`" +msgstr "" + +#: 2401d9783e7d4182918ca052d3e803b3 discord.client.Client.listen:5 of +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "" + +#: 5e016ce55c294e638a73a097f5997136 discord.client.Client.listen:7 of +msgid "The function being listened to is not a coroutine." +msgstr "" + +#: 55915adcdcbc4935b1637428f964dfbb discord.client.Client.add_listener:11 +#: discord.client.Client.listen:8 e21be3ea4d0446efaa81b5acd1c28fdd of +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "" + +#: discord.client.Client.listen:29 f56714807dea497f8cc547c870355a4c of +msgid "Would print one and two in an unspecified order." +msgstr "" + +#: 65dec0b829f94471a23a32db5dbbedb1 discord.client.Client.listen:35 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`Coro\\`\\`\\, bound\\= " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, " +"bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr "" + +#: discord.ext.commands.Bot.activity:1 ee245e9df3564ff19f3c70e347412642 of +msgid "The activity being used upon logging in." +msgstr "" + +#: 533f9a9e3798459b9be6f604992915b5 discord.ext.commands.Bot.activity:3 of +msgid "Optional[:class:`.BaseActivity`]" +msgstr "" + +#: 965049efae4b4ed685004789480c0f4d +#: discord.bot.ApplicationCommandMixin.add_application_command:1 of +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "" + +#: a65c13c994b94c719a718b96e4e93521 +#: discord.bot.ApplicationCommandMixin.add_application_command:3 of +msgid "" +"This is usually not called, instead the :meth:`command` or other shortcut" +" decorators are used instead." +msgstr "" + +#: 20ea5167076042deabb0d765a6285277 38bbdb3e941a4af0b99ed4c90132372c +#: 3ec982cd2dee46bfbf4f020d2e46a906 +#: discord.bot.ApplicationCommandMixin.add_application_command:9 +#: discord.ext.commands.core.GroupMixin.add_command:10 of +msgid "The command to add." +msgstr "" + +#: 0017e074dd134426b570354c2504b7db 2955a6e82aa6427ea4129e090d9e0e1a +#: 5f1082c1e4e04874900a56140fe3d2cc 62d9613a1121411c960009687e8cc328 +#: 63f22bb531d541109902fec69dcfcbfc 7d0a457d06344339819fc176a73566c2 +#: 7dbaac0f1ff047cbad5ca6c2242d4dc4 7e4abed9dc9d44818dc910ae2bb0e976 +#: af9c896fbca541199d50ed6f9311ec05 bb305a7b77fe4ff9a8e70816d97d46ae +#: d2e6da7f13ae45be9d21b97011a05d14 db30e1b1f2df4726842b6713f2dc4d6c +#: discord.abc.Messageable.trigger_typing:8 +#: discord.bot.ApplicationCommandMixin.add_application_command:12 +#: discord.bot.ApplicationCommandMixin.invoke_application_command:10 +#: discord.bot.ApplicationCommandMixin.process_application_commands:26 +#: discord.bot.ApplicationCommandMixin.sync_commands:55 +#: discord.bot.BotBase.add_check:10 +#: discord.bot.BotBase.on_application_command_error:14 +#: discord.bot.BotBase.remove_check:12 discord.client.Client.add_listener:12 +#: discord.client.Client.add_view:20 +#: discord.client.Client.before_identify_hook:18 discord.client.Client.clear:8 +#: discord.client.Client.connect:18 discord.client.Client.delete_invite:16 +#: discord.client.Client.login:14 discord.client.Client.on_error:15 +#: discord.client.Client.remove_listener:10 discord.client.Client.run:28 +#: discord.client.Client.start:11 discord.client.Client.wait_until_ready:6 +#: discord.cog.CogMixin.add_cog:24 discord.cog.CogMixin.reload_extension:26 +#: discord.cog.CogMixin.unload_extension:27 +#: discord.ext.commands.bot.BotBase.close:6 +#: discord.ext.commands.bot.BotBase.invoke:10 +#: discord.ext.commands.bot.BotBase.on_command_error:14 +#: discord.ext.commands.bot.BotBase.process_commands:21 +#: discord.ext.commands.context.Context.reinvoke:27 +#: discord.ext.commands.cooldowns.Cooldown.reset:4 +#: discord.ext.commands.core.Command.add_check:10 +#: discord.ext.commands.core.Command.remove_check:11 +#: discord.ext.commands.core.Command.reset_cooldown:7 +#: discord.ext.commands.core.Command.update:9 +#: discord.ext.commands.core.GroupMixin.add_command:16 +#: e03239f359674e139b092cf33b2fc6b8 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: ca5a955495a14c66abb490d1030e0cd0 discord.bot.BotBase.add_check:1 of +msgid "" +"Adds a global check to the bot. This is the non-decorator interface to " +":meth:`.check` and :meth:`.check_once`." +msgstr "" + +#: 90a3747872a741d39fb20a4e62affa2c discord.bot.BotBase.add_check:5 of +msgid "The function that was used as a global check." +msgstr "" + +#: 6434458ce10745d6a4d2a97b9da6450d discord.bot.BotBase.add_check:7 of +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "" + +#: 611c86c2efb64169bc1e0f178722f5f2 discord.cog.CogMixin.add_cog:1 of +msgid "Adds a \"cog\" to the bot." +msgstr "" + +#: 9dc96a6bb3b84a9d9242c5e1d477d2c4 discord.cog.CogMixin.add_cog:3 of +msgid "A cog is a class that has its own event listeners and commands." +msgstr "" + +#: 5a7030646e2649debc2d67517dff7e24 discord.cog.CogMixin.add_cog:7 of +msgid "" +":exc:`.ClientException` is raised when a cog with the same name is " +"already loaded." +msgstr "" + +#: discord.cog.CogMixin.add_cog:11 ff50388be9f44e8da25ecebf5b0a0b70 of +msgid "The cog to register to the bot." +msgstr "" + +#: da93463a84aa47688b8cdfcd1763e98c discord.cog.CogMixin.add_cog:14 of +msgid "" +"If a previously loaded cog with the same name should be ejected instead " +"of raising an error. .. versionadded:: 2.0" +msgstr "" + +#: 3076fac6693049dca8d5d9f83410f565 discord.cog.CogMixin.add_cog:14 of +msgid "" +"If a previously loaded cog with the same name should be ejected instead " +"of raising an error." +msgstr "" + +#: 3a5615d016404f33be6f8b2e7c7b8789 discord.cog.CogMixin.add_cog:20 of +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "" + +#: 2ea43d18eb7849e2babe871b171547ab discord.cog.CogMixin.add_cog:21 of +msgid "An error happened during loading." +msgstr "" + +#: c3e4756dc3be4e039b57e146c8ee4b70 discord.cog.CogMixin.add_cog:22 of +msgid "A cog with the same name is already loaded." +msgstr "" + +#: 892271b7879440eba8bad74a82d01f99 d4bd8f7f9afe4890b60e3c7608d4a53d +#: discord.ext.commands.core.GroupMixin.add_command:1 of +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "" + +#: 6e7cfb1130eb428fbd9da148ceb6848a db096b0658f14eb398b8c0901a0bb4a8 +#: discord.ext.commands.core.GroupMixin.add_command:3 of +msgid "" +"This is usually not called, instead the :meth:`~.GroupMixin.command` or " +":meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "" + +#: 881af903b3834288bf30777981226c3d d005cfa388ba4c9c93b28569e45a9895 +#: discord.ext.commands.core.GroupMixin.add_command:6 of +msgid "" +"Raise :exc:`.CommandRegistrationError` instead of generic " +":exc:`.ClientException`" +msgstr "" + +#: 4058311b664443489c2bdcf7ccdf0294 7c9098b1dbc6448dbaf83869211f25a2 +#: discord.ext.commands.core.GroupMixin.add_command:13 of +msgid "If the command or its alias is already registered by different command." +msgstr "" + +#: 0624e7fcbdab454e8a678d05ead1d15a 523abcff2f2e4510b53afb5e45c51c91 +#: discord.ext.commands.core.GroupMixin.add_command:14 of +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "" + +#: 02bd817bbaf44c34a50afab9bf939469 discord.client.Client.add_listener:1 of +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "" + +#: 034fe8fbfb664caba055dda25a8d01f2 discord.client.Client.add_listener:4 of +msgid "The function to call." +msgstr "" + +#: 4894173aaabd439d9e19b2422e82fb53 discord.client.Client.add_listener:7 of +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "" + +#: 88019ec42e9b4afe90bf593a2293878b discord.client.Client.add_listener:10 of +msgid "The ``func`` parameter is not a coroutine function." +msgstr "" + +#: d05412d810f4441fa9fc55ed14abaccb discord.client.Client.add_view:1 of +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "" + +#: 31f9b3425c8846d0bf9819c936651f8f discord.client.Client.add_view:3 of +msgid "" +"This method should be used for when a view is comprised of components " +"that last longer than the lifecycle of the program." +msgstr "" + +#: 9b1f1c7e6e204527b0b7f0e584cc5c50 discord.client.Client.add_view:9 of +msgid "The view to register for dispatching." +msgstr "" + +#: discord.client.Client.add_view:12 e571a3cbd785484d976fd3b2fd0a4cde of +msgid "" +"The message ID that the view is attached to. This is currently used to " +"refresh the view's state during message update events. If not given then " +"message update events are not propagated for the view." +msgstr "" + +#: discord.client.Client.add_view:17 e785ad522f2841a0bae2684ff1da2749 of +msgid "A view was not passed." +msgstr "" + +#: 41cdd2c26f04437d9e50356565bbe005 discord.client.Client.add_view:18 of +msgid "" +"The view is not persistent. A persistent view has no timeout and all " +"their components have an explicitly provided ``custom_id``." +msgstr "" + +#: 01a7d56f6fc64da79e759f8199be445b discord.ext.commands.Bot.allowed_mentions:1 +#: of +msgid "The allowed mention configuration." +msgstr "" + +#: 4d61bc9673774eaf9ec7b47ed96bb05c +#: discord.bot.ApplicationCommandMixin.application_command:1 of +msgid "" +"A shortcut decorator that invokes :func:`command` and adds it to the " +"internal command list via :meth:`~.Bot.add_application_command`." +msgstr "" + +#: 2322bb50ae2547e7b1a75b809b816a29 +#: discord.bot.ApplicationCommandMixin.application_command:6 of +msgid "" +"A decorator that converts the provided method into an " +":class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.application_command:8 +#: fa1dea0535a34d4f970b6c1933b766d6 of +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "" + +#: 3891c47a359a4c85b46a4ce0c7583dcf +#: discord.ext.commands.Bot.application_flags:1 of +msgid "The client's application flags." +msgstr "" + +#: b16cae8c17764094ab2a6221966688d1 discord.ext.commands.Bot.application_id:1 +#: of +msgid "The client's application ID." +msgstr "" + +#: 3805665860b74387aaf8deeb87f400fd discord.ext.commands.Bot.application_id:3 +#: of +msgid "" +"If this is not passed via ``__init__`` then this is retrieved through the" +" gateway when an event contains the data. Usually after " +":func:`~discord.on_connect` is called." +msgstr "" + +#: 236578d5657f4b75a93140c452d6f243 25dea9a1072d49a4a52f17e137de72c3 +#: 40abc24f54c34f2298f5012fb5ee7aff 41de831c34ab4a10a10e0efcf817263c +#: 4221da88b8e04f5daa5831179d2c8102 52ecf1b64db9436094a380bfd867b180 +#: 5718794be4e14211ae9436403f12609e 5978a98a88184e328613785e29a04c93 +#: 5b000a6fdae3492da6ed60fb279a55dd 62c513a80a3c4ec5b566f2dfe95621cb +#: 649c19de56d047de904a5b185d87a42c 78993876a1f6444389ced7ccf1897b45 +#: 84206d2ae0324e83b7a28e37d5dc1140 8d5d8cf44a1143208772382e441a15f3 +#: a429f06c46d147308e50e9a00d3c0ebc b29f0f791885488596a5ff1ec37ba539 +#: b42983e9e7764522bb4f34f045ad1da5 d424f44f65dc4c50bc16b509389106d6 +#: d878c81f64ca41a3ba4b287fe6201669 discord.abc.Messageable.fetch_message:1 +#: discord.abc.Messageable.pins:1 discord.abc.Messageable.send:1 +#: discord.abc.Messageable.trigger_typing:1 +#: discord.bot.ApplicationCommandMixin.get_application_context:1 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:1 +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:1 +#: discord.bot.ApplicationCommandMixin.invoke_application_command:1 +#: discord.bot.ApplicationCommandMixin.process_application_commands:1 +#: discord.bot.ApplicationCommandMixin.register_command:1 +#: discord.bot.ApplicationCommandMixin.register_commands:1 +#: discord.bot.ApplicationCommandMixin.sync_commands:1 +#: discord.bot.BotBase.is_owner:1 +#: discord.bot.BotBase.on_application_command_error:1 +#: discord.client.Client.application_info:1 +#: discord.client.Client.before_identify_hook:1 +#: discord.client.Client.change_presence:1 discord.client.Client.connect:1 +#: discord.client.Client.create_dm:1 discord.client.Client.create_guild:1 +#: discord.client.Client.delete_invite:1 discord.client.Client.fetch_channel:1 +#: discord.client.Client.fetch_guild:1 discord.client.Client.fetch_invite:1 +#: discord.client.Client.fetch_premium_sticker_packs:1 +#: discord.client.Client.fetch_role_connection_metadata_records:1 +#: discord.client.Client.fetch_skus:1 +#: discord.client.Client.fetch_stage_instance:1 +#: discord.client.Client.fetch_sticker:1 discord.client.Client.fetch_template:1 +#: discord.client.Client.fetch_user:1 discord.client.Client.fetch_webhook:1 +#: discord.client.Client.fetch_widget:1 +#: discord.client.Client.get_or_fetch_user:1 discord.client.Client.login:1 +#: discord.client.Client.on_error:1 discord.client.Client.start:1 +#: discord.client.Client.update_role_connection_metadata_records:1 +#: discord.client.Client.wait_for:1 discord.client.Client.wait_until_ready:1 +#: discord.ext.commands.bot.BotBase.close:1 +#: discord.ext.commands.bot.BotBase.get_context:1 +#: discord.ext.commands.bot.BotBase.get_prefix:1 +#: discord.ext.commands.bot.BotBase.invoke:1 +#: discord.ext.commands.bot.BotBase.on_command_error:1 +#: discord.ext.commands.bot.BotBase.process_commands:1 +#: discord.ext.commands.context.Context.invoke:1 +#: discord.ext.commands.context.Context.reinvoke:1 +#: discord.ext.commands.context.Context.reply:1 +#: discord.ext.commands.context.Context.send_help:1 +#: discord.ext.commands.converter.CategoryChannelConverter.convert:1 +#: discord.ext.commands.converter.ColourConverter.convert:1 +#: discord.ext.commands.converter.Converter.convert:1 +#: discord.ext.commands.converter.EmojiConverter.convert:1 +#: discord.ext.commands.converter.ForumChannelConverter.convert:1 +#: discord.ext.commands.converter.GameConverter.convert:1 +#: discord.ext.commands.converter.GuildChannelConverter.convert:1 +#: discord.ext.commands.converter.GuildConverter.convert:1 +#: discord.ext.commands.converter.GuildStickerConverter.convert:1 +#: discord.ext.commands.converter.InviteConverter.convert:1 +#: discord.ext.commands.converter.MemberConverter.convert:1 +#: discord.ext.commands.converter.MessageConverter.convert:1 +#: discord.ext.commands.converter.ObjectConverter.convert:1 +#: discord.ext.commands.converter.PartialEmojiConverter.convert:1 +#: discord.ext.commands.converter.PartialMessageConverter.convert:1 +#: discord.ext.commands.converter.RoleConverter.convert:1 +#: discord.ext.commands.converter.StageChannelConverter.convert:1 +#: discord.ext.commands.converter.TextChannelConverter.convert:1 +#: discord.ext.commands.converter.ThreadConverter.convert:1 +#: discord.ext.commands.converter.UserConverter.convert:1 +#: discord.ext.commands.converter.VoiceChannelConverter.convert:1 +#: discord.ext.commands.converter.clean_content.convert:1 +#: discord.ext.commands.converter.run_converters:1 +#: discord.ext.commands.core.Command.__call__:1 +#: discord.ext.commands.core.Command.can_run:1 +#: discord.ext.commands.flags.FlagConverter.convert:1 +#: discord.ext.commands.help.HelpCommand.command_callback:1 +#: discord.ext.commands.help.HelpCommand.filter_commands:1 +#: discord.ext.commands.help.HelpCommand.on_help_command_error:1 +#: discord.ext.commands.help.HelpCommand.prepare_help_command:1 +#: discord.ext.commands.help.HelpCommand.send_bot_help:1 +#: discord.ext.commands.help.HelpCommand.send_cog_help:1 +#: discord.ext.commands.help.HelpCommand.send_command_help:1 +#: discord.ext.commands.help.HelpCommand.send_error_message:1 +#: discord.ext.commands.help.HelpCommand.send_group_help:1 +#: e3601a366188485199c64c569dddce15 e377492e6ddb4255aa4fe483b4e6eadb +#: eb09d3aeb7ee496982cd2147e719a780 ed13365273a643888369cf52b1e8fb1a +#: fe4bb802cda24bcca261d0efa60e2fc0 of +msgid "|coro|" +msgstr "" + +#: 58bce22f218c4d7e972f6d8603a932db discord.client.Client.application_info:3 of +msgid "Retrieves the bot's application information." +msgstr "" + +#: 20ac1c8e924e4a74bfc8271a895ac046 discord.client.Client.application_info:5 of +msgid "The bot's application information." +msgstr "" + +#: ddd2ee7b903d4405b001c528caddc533 discord.client.Client.application_info:6 of +msgid ":class:`.AppInfo`" +msgstr "" + +#: 4bebc8aa589942539aac4fc7cb39bcb0 discord.client.Client.application_info:8 of +msgid "Retrieving the information failed somehow." +msgstr "" + +#: 37dcfe79744144d6b82955792c13e62b +#: discord.client.Client.before_identify_hook:3 of +msgid "" +"A hook that is called before IDENTIFYing a session. This is useful if you" +" wish to have more control over the synchronization of multiple " +"IDENTIFYing clients." +msgstr "" + +#: d04199f41dda4861a2bb97a9ceccc58a +#: discord.client.Client.before_identify_hook:7 of +msgid "The default implementation sleeps for 5 seconds." +msgstr "" + +#: 6ddc40ac88e94492a8be6d87f1e5473f +#: discord.client.Client.before_identify_hook:12 of +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "" + +#: 968a4b1e18b74b5fbbaafcd5a53b8e19 +#: discord.client.Client.before_identify_hook:15 of +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "" + +#: discord.ext.commands.Bot.cached_messages:1 e212e868790742248ba3a8d76f5ea528 +#: of +msgid "Read-only list of messages the connected client has cached." +msgstr "" + +#: 1a5853c1b8704ad5b75e31c63d16a5fe discord.client.Client.change_presence:3 of +msgid "Changes the client's presence." +msgstr "" + +#: 51fcf3308e2d482c8ccfe51009f5ae62 discord.client.Client.change_presence:6 of +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "" + +#: c6e5a0e37494498da3615b0e041001e2 discord.client.Client.change_presence:9 of +msgid "" +"Indicates what status to change to. If ``None``, then " +":attr:`.Status.online` is used." +msgstr "" + +#: 1b5a4b8162af4194b8d525d26a63f617 discord.client.Client.change_presence:13 of +msgid "If the ``activity`` parameter is not the proper type." +msgstr "" + +#: 8ce0e28322c74e469822ed7531e3c682 discord.client.Client.change_presence:22 of +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "" + +#: discord.client.Client.clear:1 e22dd1f501464842b709455fd8d77a6d of +msgid "Clears the internal state of the bot." +msgstr "" + +#: 15885728217642229cd612c0fcb9525e discord.client.Client.clear:3 of +msgid "" +"After this, the bot can be considered \"re-opened\", i.e. " +":meth:`is_closed` and :meth:`is_ready` both return ``False`` along with " +"the bot's internal cache cleared." +msgstr "" + +#: cbfb9a74a2ec448fa8ac94b59aac9515 discord.ext.commands.bot.BotBase.close:3 of +msgid "Closes the connection to Discord." +msgstr "" + +#: discord.ext.commands.Bot.cogs:1 ef290ef0d76a4205bca66cab42c47b0a of +msgid "A read-only mapping of cog name to cog." +msgstr "" + +#: 23309f092f064da6afced5088b16900c 585e5854876b422d856c9a7d7f4f3745 +#: discord.ext.commands.Bot.commands:1 discord.ext.commands.Group.commands:1 +#: discord.ext.commands.GroupMixin.commands:1 of +msgid "A unique set of commands without aliases that are registered." +msgstr "" + +#: 8e0bc55d2ece473b911a77a7184ef59c discord.client.Client.connect:3 of +msgid "" +"Creates a WebSocket connection and lets the WebSocket listen to messages " +"from Discord. This is a loop that runs the entire event system and " +"miscellaneous aspects of the library. Control is not resumed until the " +"WebSocket connection is terminated." +msgstr "" + +#: 6d7f1882aea04a02a4ef6b80ced08594 discord.client.Client.connect:9 of +msgid "" +"If we should attempt reconnecting, either due to internet failure or a " +"specific failure on Discord's part. Certain disconnects that lead to bad " +"state will not be handled (such as invalid sharding payloads or bad " +"tokens)." +msgstr "" + +#: 669921a33c214d4aa713229f40eea540 discord.client.Client.connect:15 of +msgid "" +"The gateway to connect to Discord is not found. Usually if this is " +"thrown then there is a Discord API outage." +msgstr "" + +#: 61b4497757cd4290acbdefb487ebd4aa discord.client.Client.connect:16 of +msgid "The WebSocket connection has been terminated." +msgstr "" + +#: af3102965b034ed883227ac3904af51c discord.client.Client.create_dm:3 of +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "" + +#: 84eb1de364fb4f44af43a334a3f0a7bc discord.client.Client.create_dm:5 of +msgid "" +"This should be rarely called, as this is done transparently for most " +"people." +msgstr "" + +#: 26efd0e745864817a629901f9d4274e0 discord.client.Client.create_dm:11 of +msgid "The user to create a DM with." +msgstr "" + +#: a5eed69dc19842e7be8ca4132ff21f2a discord.client.Client.create_dm:14 of +msgid "The channel that was created." +msgstr "" + +#: ca7c03d41e78401bb047c80cf470d632 discord.client.Client.create_dm:15 of +msgid ":class:`.DMChannel`" +msgstr "" + +#: 32894198e43c44e6be5d31d30af3a30d +#: discord.bot.ApplicationCommandMixin.create_group:1 of +msgid "" +"A shortcut method that creates a slash command group with no subcommands " +"and adds it to the internal command list via " +":meth:`add_application_command`." +msgstr "" + +#: c37bcf8a3fcc4623a52e5842e62a1bf5 +#: discord.bot.ApplicationCommandMixin.create_group:7 of +msgid "The name of the group to create." +msgstr "" + +#: 39b074dd62fe4a2c9593642d30d91cab 70182e1186984166914ebe5256fd2312 +#: discord.bot.ApplicationCommandMixin.create_group:10 +#: discord.bot.ApplicationCommandMixin.group:10 of +msgid "The description of the group to create." +msgstr "" + +#: 3daecf48b7c64c31b108f8dd881ff771 46500bc4b09146558d44dcee21047fca +#: discord.bot.ApplicationCommandMixin.create_group:13 +#: discord.bot.ApplicationCommandMixin.group:13 of +msgid "" +"A list of the IDs of each guild this group should be added to, making it " +"a guild command. This will be a global command if ``None`` is passed." +msgstr "" + +#: 3e5a4860a9d1483cb61b40ce198e5fee +#: discord.bot.ApplicationCommandMixin.create_group:17 of +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "" + +#: 7afd9a7e1abf445c9185ee1392202fd6 +#: discord.bot.ApplicationCommandMixin.create_group:19 +#: discord.bot.ApplicationCommandMixin.group:17 +#: e95710966abe488e8ce4970bd2f35160 of +msgid "The slash command group that was created." +msgstr "" + +#: 583248c24e104f60a8d7b44b63a93d8b discord.client.Client.create_guild:3 of +msgid "Creates a :class:`.Guild`." +msgstr "" + +#: 480ab82fc12b401f8b75d5ac50648a04 discord.client.Client.create_guild:5 of +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "" + +#: 751a75562aa647628af12ff17756d819 discord.client.Client.create_guild:8 of +msgid "The name of the guild." +msgstr "" + +#: 75d40bc85a17414a943100275453e7b5 discord.client.Client.create_guild:11 of +msgid "" +"The :term:`py:bytes-like object` representing the icon. See " +":meth:`.ClientUser.edit` for more details on what is expected." +msgstr "" + +#: 7ca63a3c7aca436ca90a0d584ad7a2bb discord.client.Client.create_guild:15 of +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "" + +#: 46ee421067d246aeabd1ba31f8c97032 discord.client.Client.create_guild:15 of +msgid "The code for a template to create the guild with." +msgstr "" + +#: 4312ec6459c5431e9821af9fc31fb0d5 discord.client.Client.create_guild:20 of +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "" + +#: 97536bb06f8049b5837ac583ff2dce33 c91fefbf98ca4abfadde5d5caadb9dc1 +#: discord.client.Client.create_guild:22 discord.client.Client.fetch_guild:26 +#: of +msgid ":class:`.Guild`" +msgstr "" + +#: discord.client.Client.create_guild:24 fe6c3f12bfb54bee919c57282004f16c of +msgid "Guild creation failed." +msgstr "" + +#: 76f88cf22b1d4c1ba41c3a09a320adf1 discord.client.Client.create_guild:25 of +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "" + +#: 0149655ae5be40f8b70d5d69362b94f0 discord.client.Client.delete_invite:3 of +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "" + +#: 12997acdfb41427eafde4adf144e6b6d discord.client.Client.delete_invite:5 of +msgid "" +"You must have the :attr:`~.Permissions.manage_channels` permission in the" +" associated guild to do this." +msgstr "" + +#: 16bd71de63f54315b81153e65c2efa00 discord.client.Client.delete_invite:9 of +msgid "The invite to revoke." +msgstr "" + +#: 3b8ea28dfd4b4aa6aae2fba880397f50 discord.client.Client.delete_invite:12 of +msgid "You do not have permissions to revoke invites." +msgstr "" + +#: 9ce1620b29d14465babd2e9ef51f9c80 discord.client.Client.delete_invite:13 of +msgid "The invite is invalid or expired." +msgstr "" + +#: 0e1b8d18fdd444df8b1e1bc2bfd61746 discord.client.Client.delete_invite:14 of +msgid "Revoking the invite failed." +msgstr "" + +#: discord.ext.commands.Bot.emojis:1 f053fc31a26848abb5f0b22c31bba150 of +msgid "The emojis that the connected client has." +msgstr "" + +#: 55996a99ae5a4b76bcf2980286829ff0 discord.client.Client.entitlements:1 of +msgid "" +"Returns an :class:`.AsyncIterator` that enables fetching the " +"application's entitlements." +msgstr "" + +#: 59b671a29aec481bb8db91eb772084d7 discord.client.Client.entitlements:6 of +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "" + +#: discord.client.Client.entitlements:9 fc74e3fd9066451da15dbb859f393f0b of +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "" + +#: a8980247c8994cc6a3315e3acd06b88b discord.client.Client.entitlements:12 of +msgid "" +"Retrieves guilds before this date or object. If a datetime is provided, " +"it is recommended to use a UTC-aware datetime. If the datetime is naive, " +"it is assumed to be local time." +msgstr "" + +#: d2f6b335c5d149edb5739256c2d0ac02 discord.client.Client.entitlements:17 of +msgid "" +"Retrieve guilds after this date or object. If a datetime is provided, it " +"is recommended to use a UTC-aware datetime. If the datetime is naive, it " +"is assumed to be local time." +msgstr "" + +#: 4468fb7df14b42d6b759894e1d023b0e discord.client.Client.entitlements:22 of +msgid "" +"The number of entitlements to retrieve. If ``None``, retrieves every " +"entitlement, which may be slow. Defaults to ``100``." +msgstr "" + +#: 103afa9d7a7c469186412d2b0f7fd59d discord.client.Client.entitlements:27 of +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "" + +#: discord.client.Client.entitlements:30 f7befb3d512042b89e8a107e5a39f44f of +msgid "" +"Whether to limit the fetched entitlements to those that have not ended. " +"Defaults to ``False``." +msgstr "" + +#: 1ac0e449c2064ee3872b93131ef5099f acdddbfef28f4deeba67e1c0eeae3126 +#: db580d1226264744a222ffee4584ffd4 discord.abc.Messageable.history +#: discord.bot.ApplicationCommandMixin.walk_application_commands +#: discord.client.Client.entitlements discord.client.Client.fetch_guilds +#: discord.client.Client.get_all_channels discord.client.Client.get_all_members +#: discord.ext.commands.cog.Cog.walk_commands +#: discord.ext.commands.core.GroupMixin.walk_commands +#: e2d006ad6c904920bebc27cd7a383901 of +msgid "Yields" +msgstr "" + +#: 22f913aa3bef434cb525ae9ec6673c3b discord.client.Client.entitlements:34 of +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr "" + +#: dcca79b2fa794e09b838c1ab709d75b9 discord.client.Client.entitlements:36 of +msgid "Retrieving the entitlements failed." +msgstr "" + +#: 295caaa8c9a047a1a1ee5c2029093ff0 discord.client.Client.entitlements:37 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr "" + +#: 1713b7f68ab24b69904742961b2e7c20 3321eb8445bb48ffb68d9cb74a155012 +#: c41d42eda335471399cd63c006bb2131 discord.abc.Messageable.history:39 +#: discord.client.Client.entitlements:40 discord.client.Client.fetch_guilds:35 +#: discord.client.Client.wait_for:42 discord.ext.commands.core.check:37 +#: discord.ext.commands.core.check_any:20 of +msgid "Examples" +msgstr "" + +#: 94bc24f4c61e41b5964c4a1322f961f1 9c43804aa1e84f4db26daf70ceda2518 +#: c44882f2d2fa4e16be22d009df4a9e97 discord.abc.Messageable.history:40 +#: discord.client.Client.entitlements:41 discord.client.Client.fetch_guilds:36 +#: of +msgid "Usage ::" +msgstr "" + +#: 30d73cc7fe64490fa9bc06ee689bd9ca 843417dafe404d64bc7fa228cb7035a1 +#: discord.client.Client.entitlements:46 discord.client.Client.fetch_guilds:41 +#: of +msgid "Flattening into a list ::" +msgstr "" + +#: 828a83477bcd4a6481593e689e4c7a6e 890c3220aa92482a88d9eb963d89a73f +#: discord.abc.Messageable.history:52 discord.client.Client.entitlements:50 +#: discord.client.Client.fetch_guilds:46 f3a460b6dbc644f1a519e478316d2ace of +msgid "All parameters are optional." +msgstr "" + +#: 8e4eb4c3e9b145dba548425d3c8bd29d discord.ext.commands.Bot.extensions:1 of +msgid "A read-only mapping of extension name to extension." +msgstr "" + +#: 97276bbeae3c4082aa2038967c3d1a7e discord.client.Client.fetch_application:1 +#: of +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "" + +#: c1b69445d0ac4ea887666dd2f395ccab discord.client.Client.fetch_application:5 +#: of +msgid "The application ID to retrieve information from." +msgstr "" + +#: d55c33490ff042be856a57e1e3950e4e discord.client.Client.fetch_application:8 +#: of +msgid "The application information." +msgstr "" + +#: discord.client.Client.fetch_application:9 e7a5155c45d6429799f5a97c8dfa4bc0 +#: of +msgid ":class:`.PartialAppInfo`" +msgstr "" + +#: discord.client.Client.fetch_application:11 fd59854a364349e9be47834da22da297 +#: of +msgid "An application with this ID does not exist." +msgstr "" + +#: b599a77bcabf40d6aa2b743085912ee5 discord.client.Client.fetch_application:12 +#: of +msgid "Retrieving the application failed." +msgstr "" + +#: discord.client.Client.fetch_channel:3 f979de9b2d7e43efb9fcc960cc1168f5 of +msgid "" +"Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or " +":class:`.Thread` with the specified ID." +msgstr "" + +#: 1b2978a016b84e08a0154c5e484807fb discord.client.Client.fetch_channel:7 of +msgid "" +"This method is an API call. For general usage, consider " +":meth:`get_channel` instead." +msgstr "" + +#: 88777b1026884b65845244f98566ac70 discord.client.Client.fetch_channel:11 of +msgid "The channel from the ID." +msgstr "" + +#: 27fa5ae581504a6a9713f76e82cc767c discord.client.Client.fetch_channel:12 of +msgid "" +"Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, " +":class:`.Thread`]" +msgstr "" + +#: 7325a3b3e22f45189185a1fbd5628349 discord.client.Client.fetch_channel:14 of +msgid "An unknown channel type was received from Discord." +msgstr "" + +#: 9235f18a77de465ab639f9dedb10cb0b discord.client.Client.fetch_channel:15 of +msgid "Retrieving the channel failed." +msgstr "" + +#: discord.client.Client.fetch_channel:16 f1d9c0f459c0447fb1203723387ced8f of +msgid "Invalid Channel ID." +msgstr "" + +#: 9410d10bcdb94e0b9d7c7f7c89b65810 discord.client.Client.fetch_channel:17 of +msgid "You do not have permission to fetch this channel." +msgstr "" + +#: de71bd64cf04416ea9bf2abe61ff72ef discord.client.Client.fetch_guild:3 of +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "" + +#: discord.client.Client.fetch_guild:7 edb1ce0678394fe9a6f1189463300018 of +msgid "" +"Using this, you will **not** receive :attr:`.Guild.channels`, " +":attr:`.Guild.members`, :attr:`.Member.activity` and " +":attr:`.Member.voice` per :class:`.Member`." +msgstr "" + +#: c79ec39844b242ddab93abb4013a80bb discord.client.Client.fetch_guild:12 of +msgid "" +"This method is an API call. For general usage, consider :meth:`get_guild`" +" instead." +msgstr "" + +#: discord.client.Client.fetch_guild:15 f3271bc911514fa7805b7c965fb3840d of +msgid "The guild's ID to fetch from." +msgstr "" + +#: 3b20121f198d4f388ed94fe5e12cdba9 discord.client.Client.fetch_guild:18 of +msgid "" +"Whether to include count information in the guild. This fills the " +":attr:`.Guild.approximate_member_count` and " +":attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "" + +#: 732356fbef43429eb694993f26d59533 discord.client.Client.fetch_guild:18 of +msgid "" +"Whether to include count information in the guild. This fills the " +":attr:`.Guild.approximate_member_count` and " +":attr:`.Guild.approximate_presence_count` fields." +msgstr "" + +#: a3f16751f69144a3b4797e7f1b235a0c discord.client.Client.fetch_guild:25 of +msgid "The guild from the ID." +msgstr "" + +#: a68501f7e36b4401a713f42b2c3a2f1e discord.client.Client.fetch_guild:28 of +msgid "You do not have access to the guild." +msgstr "" + +#: 7b41d7287cd448e680bd03c2ebdf67a0 discord.client.Client.fetch_guild:29 of +msgid "Getting the guild failed." +msgstr "" + +#: 22fe20229852494988db210ec83c4f4d discord.client.Client.fetch_guilds:1 of +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "" + +#: 4f617e895bd74f44b301bbfdc7c4d06b discord.client.Client.fetch_guilds:5 of +msgid "" +"Using this, you will only receive :attr:`.Guild.owner`, " +":attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per " +":class:`.Guild`." +msgstr "" + +#: 183ae9d745be416ebb36824adc018c25 discord.client.Client.fetch_guilds:10 of +msgid "" +"This method is an API call. For general usage, consider :attr:`guilds` " +"instead." +msgstr "" + +#: 5e0f42cbfd094760b0f8d936646ebd13 discord.client.Client.fetch_guilds:13 of +msgid "" +"The number of guilds to retrieve. If ``None``, it retrieves every guild " +"you have access to. Note, however, that this would make it a slow " +"operation. Defaults to ``100``." +msgstr "" + +#: discord.client.Client.fetch_guilds:19 f76547af39e240eda917471e6066d68f of +msgid "" +"Retrieves guilds before this date or object. If a datetime is provided, " +"it is recommended to use a UTC aware datetime. If the datetime is naive, " +"it is assumed to be local time." +msgstr "" + +#: cb18e3313c264059aed626e8ca209206 discord.client.Client.fetch_guilds:24 of +msgid "" +"Retrieve guilds after this date or object. If a datetime is provided, it " +"is recommended to use a UTC aware datetime. If the datetime is naive, it " +"is assumed to be local time." +msgstr "" + +#: bc466b15258f4b2aa8ac9a96e0f937d7 discord.client.Client.fetch_guilds:29 of +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr "" + +#: 15f4a4f866324c7ba489cd589b442544 discord.client.Client.fetch_guilds:31 of +msgid "Getting the guilds failed." +msgstr "" + +#: 75ee4f3a774e4d8f987a57c3125133f5 discord.client.Client.fetch_guilds:32 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr "" + +#: discord.client.Client.fetch_invite:3 ff98e5f070514ea2b279d2d1f6472a4f of +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "" + +#: 7fde0851174d4b20815dc8e56fc1e221 discord.client.Client.fetch_invite:7 of +msgid "" +"If the invite is for a guild you have not joined, the guild and channel " +"attributes of the returned :class:`.Invite` will be " +":class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` " +"respectively." +msgstr "" + +#: 7069a208e047405292e67ba908588d72 discord.client.Client.fetch_invite:12 of +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "" + +#: 7eb4713ed1164e76849f0cee607b077d discord.client.Client.fetch_invite:15 of +msgid "" +"Whether to include count information in the invite. This fills the " +":attr:`.Invite.approximate_member_count` and " +":attr:`.Invite.approximate_presence_count` fields." +msgstr "" + +#: 009f29d2f1774d75a283c895fcc1c121 discord.client.Client.fetch_invite:20 of +msgid "" +"Whether to include the expiration date of the invite. This fills the " +":attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "" + +#: a05f7b7813ee445883dbc3cbb934d233 discord.client.Client.fetch_invite:20 of +msgid "" +"Whether to include the expiration date of the invite. This fills the " +":attr:`.Invite.expires_at` field." +msgstr "" + +#: discord.client.Client.fetch_invite:26 e450c21618cc4c59822e7eca956eb52f of +msgid "" +"The ID of the scheduled event to be associated with the event. See " +":meth:`Invite.set_scheduled_event` for more info on event invite linking." +" .. versionadded:: 2.0" +msgstr "" + +#: 1b421bdc1a804a888d03595605dccbc8 discord.client.Client.fetch_invite:26 of +msgid "The ID of the scheduled event to be associated with the event." +msgstr "" + +#: 0a8572f3c1154620828f50adc2fc3755 discord.client.Client.fetch_invite:28 of +msgid "" +"See :meth:`Invite.set_scheduled_event` for more info on event invite " +"linking." +msgstr "" + +#: 67ada2da2c8f457abcdfe820c35edb34 discord.client.Client.fetch_invite:34 of +msgid "The invite from the URL/ID." +msgstr "" + +#: discord.client.Client.fetch_invite:35 f4512599faea4485b636174c2e95a371 of +msgid ":class:`.Invite`" +msgstr "" + +#: ae0ccbddaeb4447b81059e5f08572ab7 discord.client.Client.fetch_invite:37 of +msgid "The invite has expired or is invalid." +msgstr "" + +#: 7fa0a78b22de41ed8f3547cbc22044fd discord.client.Client.fetch_invite:38 of +msgid "Getting the invite failed." +msgstr "" + +#: d96e9f2b7e40438c9c764c153268da08 +#: discord.client.Client.fetch_premium_sticker_packs:3 of +msgid "Retrieves all available premium sticker packs." +msgstr "" + +#: be5f3a4b0acc431c9d9094685b52c871 +#: discord.client.Client.fetch_premium_sticker_packs:7 of +msgid "All available premium sticker packs." +msgstr "" + +#: d46c4e3e7bd0488c971b6236c132c575 +#: discord.client.Client.fetch_premium_sticker_packs:8 of +msgid "List[:class:`.StickerPack`]" +msgstr "" + +#: 6be215fce77e413fbf525b18952eacf9 +#: discord.client.Client.fetch_premium_sticker_packs:10 of +msgid "Retrieving the sticker packs failed." +msgstr "" + +#: 97b00444639641fc920ebe9efab0d1ba +#: discord.client.Client.fetch_role_connection_metadata_records:3 of +msgid "Fetches the bot's role connection metadata records." +msgstr "" + +#: afcef3e1573241dda22efc2bc8eb0113 +#: discord.client.Client.fetch_role_connection_metadata_records:7 of +msgid "The bot's role connection metadata records." +msgstr "" + +#: 1c6038fbd90940a99452e42246965fcd +#: discord.client.Client.fetch_role_connection_metadata_records:8 +#: discord.client.Client.update_role_connection_metadata_records:12 +#: f85d9e595c1d4f359d02d7b2baf0b555 of +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "" + +#: 1d947818db1f4e21a9a1a157a728523a discord.client.Client.fetch_skus:3 of +msgid "Fetches the bot's SKUs." +msgstr "" + +#: d7510512f1274c79ad9b92b41e15793a discord.client.Client.fetch_skus:7 of +msgid "The bot's SKUs." +msgstr "" + +#: a17b32aff2164b37be4992da3fa602b3 discord.client.Client.fetch_skus:8 of +msgid "List[:class:`.SKU`]" +msgstr "" + +#: discord.client.Client.fetch_stage_instance:3 +#: ff7eb61902374a9b9694a60b27e0b35f of +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "" + +#: 29afd240aa184ce2b8ed8ec77aaba1e9 +#: discord.client.Client.fetch_stage_instance:8 of +msgid "The stage channel ID." +msgstr "" + +#: 0c2c6ce8c1be4ce989544e552be5a9c0 +#: discord.client.Client.fetch_stage_instance:11 of +msgid "The stage instance from the stage channel ID." +msgstr "" + +#: b7086bac74e049e7aaf21d056f2891b3 +#: discord.client.Client.fetch_stage_instance:12 of +msgid ":class:`.StageInstance`" +msgstr "" + +#: discord.client.Client.fetch_stage_instance:14 +#: fa27d36619154f23b87e1454acdd2c5f of +msgid "The stage instance or channel could not be found." +msgstr "" + +#: 34b64cf26dd147618b0f7319a1740988 +#: discord.client.Client.fetch_stage_instance:15 of +msgid "Getting the stage instance failed." +msgstr "" + +#: discord.client.Client.fetch_sticker:3 f4fa9ab7c1a24513b89988310ac21c10 of +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "" + +#: 29648dc231984792ae7aa4469ac255e8 discord.client.Client.fetch_sticker:7 of +msgid "The sticker you requested." +msgstr "" + +#: discord.client.Client.fetch_sticker:8 f61c55e61f634f758236b63c220ed5c0 of +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "" + +#: discord.client.Client.fetch_sticker:10 fc7eb527b8b34720a79877daef24b860 of +msgid "Retrieving the sticker failed." +msgstr "" + +#: 5174684b72234a59aef76d140423d20d discord.client.Client.fetch_sticker:11 of +msgid "Invalid sticker ID." +msgstr "" + +#: ba25538202404ece8e0799e24cc225e8 discord.client.Client.fetch_template:3 of +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "" + +#: 7b26287c2057457497765948aa0f9c14 discord.client.Client.fetch_template:6 of +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "" + +#: adcdc3cfb5d64c07946c55aa2e3b0466 discord.client.Client.fetch_template:9 of +msgid "The template from the URL/code." +msgstr "" + +#: 2973bc0fd60c44818c36d29ab2bd1156 discord.client.Client.fetch_template:10 of +msgid ":class:`.Template`" +msgstr "" + +#: discord.client.Client.fetch_template:12 e4b1d12659f942f3bce704baf2b2f6d6 of +msgid "The template is invalid." +msgstr "" + +#: d65929c5b5a04a258026ede0724fc4df discord.client.Client.fetch_template:13 of +msgid "Getting the template failed." +msgstr "" + +#: 71afe2141b384fa5b9855d506b0f85f8 discord.client.Client.fetch_user:3 of +msgid "" +"Retrieves a :class:`~discord.User` based on their ID. You do not have to " +"share any guilds with the user to get this information, however many " +"operations do require that you do." +msgstr "" + +#: 63caafa99b464ecba062135b46365975 discord.client.Client.fetch_user:9 of +msgid "" +"This method is an API call. If you have :attr:`discord.Intents.members` " +"and member cache enabled, consider :meth:`get_user` instead." +msgstr "" + +#: 50a668aa170c4373aac97fc0a8a14b8a discord.client.Client.fetch_user:13 of +msgid "The user's ID to fetch from." +msgstr "" + +#: 0647be848cbd4b258ebcc87840b89635 discord.client.Client.fetch_user:16 of +msgid "The user you requested." +msgstr "" + +#: c908af689e304ea3bd9f626173a93765 discord.client.Client.fetch_user:17 of +msgid ":class:`~discord.User`" +msgstr "" + +#: discord.client.Client.fetch_user:19 f567052fb055456c8ad1fbc3829b2ea3 of +msgid "A user with this ID does not exist." +msgstr "" + +#: 0fa0e89be2e041a6a5cb91ce3b84f051 discord.client.Client.fetch_user:20 of +msgid "Fetching the user failed." +msgstr "" + +#: 9b847aa5ea2b4c86b5f64749b6132bcd discord.client.Client.fetch_webhook:3 of +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "" + +#: c5cc8c5449904509b773a938723d081b discord.client.Client.fetch_webhook:5 of +msgid "The webhook you requested." +msgstr "" + +#: discord.client.Client.fetch_webhook:6 e9b26972e0e8420a861e3228ac815486 of +msgid ":class:`.Webhook`" +msgstr "" + +#: ab91f98f4cbf49a19efa88ac091db2db discord.client.Client.fetch_webhook:8 of +msgid "Retrieving the webhook failed." +msgstr "" + +#: 4755f27ecf194457b272d0eb7a579cf4 discord.client.Client.fetch_webhook:9 of +msgid "Invalid webhook ID." +msgstr "" + +#: b6b0773a5d794264aad31f84bb06e24d discord.client.Client.fetch_webhook:10 of +msgid "You do not have permission to fetch this webhook." +msgstr "" + +#: 2f3d59f28dd84376becd6c9687f23b72 discord.client.Client.fetch_widget:3 of +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "" + +#: a56e920a963d4c6180465244f8ea2461 discord.client.Client.fetch_widget:7 of +msgid "The guild must have the widget enabled to get this information." +msgstr "" + +#: 35b8312d608f4df0bea14aedb684366f discord.client.Client.fetch_widget:10 of +msgid "The ID of the guild." +msgstr "" + +#: discord.client.Client.fetch_widget:13 efeb960cd7004534adc71634f17ed0cd of +msgid "The guild's widget." +msgstr "" + +#: ce6c7c941e4d42699364e7e4595e5773 discord.client.Client.fetch_widget:14 of +msgid ":class:`.Widget`" +msgstr "" + +#: 167e8f21acd347249d24f6d8970351f4 discord.client.Client.fetch_widget:16 of +msgid "The widget for this guild is disabled." +msgstr "" + +#: 7f5a896385554d7ea4671665ba911293 discord.client.Client.fetch_widget:17 of +msgid "Retrieving the widget failed." +msgstr "" + +#: 85ef0a2cbac449e680f8f39698ec1a9c discord.client.Client.get_all_channels:1 of +msgid "" +"A generator that retrieves every :class:`.abc.GuildChannel` the client " +"can 'access'." +msgstr "" + +#: 72d83d8cefd0467bbfcf9ddc6b6a47cf c91d10a08ad54d2980f75fb326863880 +#: discord.client.Client.get_all_channels:3 +#: discord.client.Client.get_all_members:3 of +msgid "This is equivalent to: ::" +msgstr "" + +#: 32d5a41f29ab4eab83ff4181703345a6 discord.client.Client.get_all_channels:11 +#: of +msgid "" +"Just because you receive a :class:`.abc.GuildChannel` does not mean that " +"you can communicate in said channel. " +":meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "" + +#: 9860d3eda1264a0c8df1f138ffe0bb12 discord.client.Client.get_all_channels:15 +#: of +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr "" + +#: 9dfe9cfdde67409dbe4f8f536a632605 discord.client.Client.get_all_members:1 of +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "" + +#: af882d2cbfb6416a9e8ae82fe4d00b7d discord.client.Client.get_all_members:9 of +msgid ":class:`.Member` -- A member the client can see." +msgstr "" + +#: beeb38432c18467199e1986a4a5a5802 +#: discord.bot.ApplicationCommandMixin.get_application_command:1 of +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "" + +#: c33347ffc3c742ffa39ad2da8713137b +#: discord.bot.ApplicationCommandMixin.get_application_command:7 of +msgid "The qualified name of the command to get." +msgstr "" + +#: 2f30620e074f4420a037b25f8352a23a +#: discord.bot.ApplicationCommandMixin.get_application_command:10 of +msgid "The guild ids associated to the command to get." +msgstr "" + +#: b6355726cccf49c08342b8e9bbe0f50f +#: discord.bot.ApplicationCommandMixin.get_application_command:13 of +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "" + +#: 8075abb274e04650a70502fe718d48e1 +#: discord.bot.ApplicationCommandMixin.get_application_command:16 +#: discord.ext.commands.core.GroupMixin.get_command:14 of +msgid "The command that was requested. If not found, returns ``None``." +msgstr "" + +#: a0421f9c994a4d42b5d1d086df607ef7 +#: discord.bot.ApplicationCommandMixin.get_application_command:17 +#: discord.bot.ApplicationCommandMixin.remove_application_command:12 of +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "" + +#: 211fd50ce0b145a58e93f891f7e62aac +#: discord.bot.ApplicationCommandMixin.get_application_context:3 of +msgid "Returns the invocation context from the interaction." +msgstr "" + +#: 5ff022119a8143e9b08a979f66a6e2a0 +#: discord.bot.ApplicationCommandMixin.get_application_context:5 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:5 of +msgid "" +"This is a more low-level counter-part for " +":meth:`.process_application_commands` to allow users more fine-grained " +"control over the processing." +msgstr "" + +#: 976de055999f46f58eea47f454eaef7a +#: discord.bot.ApplicationCommandMixin.get_application_context:9 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:9 of +msgid "The interaction to get the invocation context from." +msgstr "" + +#: 0802b984866b410088e3bb08e945ee73 +#: discord.bot.ApplicationCommandMixin.get_application_context:12 of +msgid "" +"The factory class that will be used to create the context. By default, " +"this is :class:`.ApplicationContext`. Should a custom class be provided, " +"it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "" + +#: 3b38ccebb4774f71be6c3c835dd6d70e +#: discord.bot.ApplicationCommandMixin.get_application_context:17 +#: discord.ext.commands.bot.BotBase.get_context:22 of +msgid "" +"The invocation context. The type of this can change via the ``cls`` " +"parameter." +msgstr "" + +#: 31df93db9f4145448a26c7500326286c +#: discord.bot.ApplicationCommandMixin.get_application_context:19 of +msgid ":class:`.ApplicationContext`" +msgstr "" + +#: 1557cc6eb4f447ad9db07037606871a3 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:3 of +msgid "Returns the autocomplete context from the interaction." +msgstr "" + +#: 42a5b4ca86ee472ca7a3804eace741a7 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:12 of +msgid "" +"The factory class that will be used to create the context. By default, " +"this is :class:`.AutocompleteContext`. Should a custom class be provided," +" it must be similar enough to :class:`.AutocompleteContext`\\'s " +"interface." +msgstr "" + +#: ca667b8dd303434b96f15be6e466fa15 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:17 of +msgid "" +"The autocomplete context. The type of this can change via the ``cls`` " +"parameter." +msgstr "" + +#: 75759b0976f74cb6b002eed64c030ee9 +#: discord.bot.ApplicationCommandMixin.get_autocomplete_context:19 of +msgid ":class:`.AutocompleteContext`" +msgstr "" + +#: 54305eefde134b89aedcd1a998ec40c6 discord.client.Client.get_channel:1 of +msgid "Returns a channel or thread with the given ID." +msgstr "" + +#: abb8574be99a40e3abe788514c73ab7a discord.client.Client.get_channel:4 +#: discord.client.Client.get_emoji:4 discord.client.Client.get_guild:4 +#: discord.client.Client.get_message:7 +#: discord.client.Client.get_or_fetch_user:6 +#: discord.client.Client.get_stage_instance:6 discord.client.Client.get_user:4 +#: of +msgid "The ID to search for." +msgstr "" + +#: 107b87ee058841a9966abb7b7ccf4fcb discord.client.Client.get_channel:7 of +msgid "The returned channel or ``None`` if not found." +msgstr "" + +#: 7f38faba9ead4fa386a53e29f69d7559 discord.client.Client.get_channel:8 of +msgid "" +"Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, " +":class:`.abc.PrivateChannel`]]" +msgstr "" + +#: b4d2e92605154bebadcedcbf79765885 discord.cog.CogMixin.get_cog:1 of +msgid "Gets the cog instance requested." +msgstr "" + +#: bb4e1d06781a402ab963ee718abec1bc discord.cog.CogMixin.get_cog:3 of +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "" + +#: 5ecdd5ca3b364d2bb11d4214a316a07a discord.cog.CogMixin.get_cog:6 of +msgid "" +"The name of the cog you are requesting. This is equivalent to the name " +"passed via keyword argument in class creation or the class name if " +"unspecified." +msgstr "" + +#: ceac76e5ab5e40dea8f50d62ced7e0f9 discord.cog.CogMixin.get_cog:11 of +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "" + +#: 076958fd76f448899e7a5f907e409cea discord.cog.CogMixin.get_cog:12 +#: discord.ext.commands.HelpCommand.cog:10 discord.ext.commands.core.Command:62 +#: of +msgid "Optional[:class:`Cog`]" +msgstr "" + +#: d555628fb6a74c5697817061624609d9 +#: discord.ext.commands.core.GroupMixin.get_command:1 of +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "" + +#: 77d72aaabce64e60a149d21b1319d604 +#: discord.ext.commands.core.GroupMixin.get_command:4 of +msgid "This could also be used as a way to get aliases." +msgstr "" + +#: 3f540ff7c6ba442abc0635a2ce276025 +#: discord.ext.commands.core.GroupMixin.get_command:6 of +msgid "" +"The name could be fully qualified (e.g. ``'foo bar'``) will get the " +"subcommand ``bar`` of the group command ``foo``. If a subcommand is not " +"found then ``None`` is returned just as usual." +msgstr "" + +#: d9354bca6a4948efb9716c2410e9413a +#: discord.ext.commands.core.GroupMixin.get_command:11 of +msgid "The name of the command to get." +msgstr "" + +#: 98d36fa1cabf419197df81cba05fdb4e discord.ext.commands.context.Context:56 +#: discord.ext.commands.context.Context:81 +#: discord.ext.commands.core.Command:103 +#: discord.ext.commands.core.GroupMixin.get_command:15 of +msgid "Optional[:class:`Command`]" +msgstr "" + +#: 7b7c1555a358410c85f6ef2538a9156b +#: discord.ext.commands.bot.BotBase.get_context:3 of +msgid "Returns the invocation context from the message." +msgstr "" + +#: c65ae05ccc974f74b5932810e2ba0643 +#: discord.ext.commands.bot.BotBase.get_context:5 of +msgid "" +"This is a more low-level counter-part for :meth:`.process_commands` to " +"allow users more fine-grained control over the processing." +msgstr "" + +#: 5291ea7e7d094bb28812eed968557647 +#: discord.ext.commands.bot.BotBase.get_context:8 of +msgid "" +"The returned context is not guaranteed to be a valid invocation context, " +":attr:`.Context.valid` must be checked to make sure it is. If the context" +" is not valid then it is not a valid candidate to be invoked under " +":meth:`~.Bot.invoke`." +msgstr "" + +#: 8b35a61c7ba94b27a0c920be2cbc9a74 +#: discord.ext.commands.bot.BotBase.get_context:14 of +msgid "The message to get the invocation context from." +msgstr "" + +#: 4106c84ada9b403a9888f3aca451fac7 +#: discord.ext.commands.bot.BotBase.get_context:17 of +msgid "" +"The factory class that will be used to create the context. By default, " +"this is :class:`.Context`. Should a custom class be provided, it must be " +"similar enough to :class:`.Context`\\'s interface." +msgstr "" + +#: a560748f69f04cf0a14045b10804954e +#: discord.ext.commands.bot.BotBase.get_context:24 of +msgid ":class:`.Context`" +msgstr "" + +#: 7b604a1feb4d46a2bca090967d256ef8 +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:3 of +msgid "" +"Gets the list of commands that are desynced from discord. If ``guild_id``" +" is specified, it will only return guild commands that are desynced from " +"said guild, else it will return global commands." +msgstr "" + +#: b60a51ab863e464eb9c454fdae9c6a22 +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:7 of +msgid "" +"This function is meant to be used internally, and should only be used if " +"you want to override the default command registration behavior." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:13 +#: e6a978a1641c44a283815caa0a1909c8 of +msgid "" +"The guild id to get the desynced commands for, else global commands if " +"unspecified." +msgstr "" + +#: 500100e533c44af7b7407da993c87eb1 +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:16 of +msgid "" +"If you already fetched the commands, you can pass them here to be used. " +"Not recommended for typical usage." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:19 +#: f817262ce5e64a8590082a8280041694 of +msgid "" +"A list of the desynced commands. Each will come with at least the ``cmd``" +" and ``action`` keys, which respectively contain the command and the " +"action to perform. Other keys may also be present depending on the " +"action, including ``id``." +msgstr "" + +#: ab7dff05807644ed96e2b974b63dff7e +#: discord.bot.ApplicationCommandMixin.get_desynced_commands:22 of +msgid "List[Dict[:class:`str`, Any]]" +msgstr "" + +#: 85c87b8fec81465c9020b141be856fb8 discord.client.Client.get_emoji:1 of +msgid "Returns an emoji with the given ID." +msgstr "" + +#: 157f1b3c941147a19ce8edf840834d4a discord.client.Client.get_emoji:7 of +msgid "The custom emoji or ``None`` if not found." +msgstr "" + +#: 1c0cbebe556443ec8b777892bbb413ca discord.client.Client.get_emoji:8 of +msgid "Optional[:class:`.Emoji`]" +msgstr "" + +#: 3c43e6dcda3848efb665d49d3cb97ad1 discord.client.Client.get_guild:1 of +msgid "Returns a guild with the given ID." +msgstr "" + +#: 0351a20e8ffe40e09099eb75e30dc93d discord.client.Client.get_guild:7 of +msgid "The guild or ``None`` if not found." +msgstr "" + +#: 4df5d4e82b5c432789f6a9477c590bd3 discord.client.Client.get_guild:8 of +msgid "Optional[:class:`.Guild`]" +msgstr "" + +#: ce8c96bbbff74f8bbd3ebd9b88d31149 discord.client.Client.get_message:1 of +msgid "Returns a message the given ID." +msgstr "" + +#: 560f12cac3994e419d298070a28577bf discord.client.Client.get_message:3 of +msgid "" +"This is useful if you have a message_id but don't want to do an API call " +"to access the message." +msgstr "" + +#: 3faa4e73ac324172bd8e447ab0a92e16 discord.client.Client.get_message:10 of +msgid "The returned message or ``None`` if not found." +msgstr "" + +#: 29a148422678430dbb20acdb70e8f5cb discord.client.Client.get_message:11 of +msgid "Optional[:class:`.Message`]" +msgstr "" + +#: 275a6d7b15584cc595412689b620e5d8 discord.client.Client.get_or_fetch_user:3 +#: of +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "" + +#: a0ddffa324eb4f69b621dc78d6085347 discord.client.Client.get_or_fetch_user:9 +#: discord.client.Client.get_user:7 of +msgid "The user or ``None`` if not found." +msgstr "" + +#: 6750b7f88cee434d86d97c6e26df794e discord.client.Client.get_or_fetch_user:10 +#: discord.client.Client.get_user:8 of +msgid "Optional[:class:`~discord.User`]" +msgstr "" + +#: discord.client.Client.get_partial_messageable:1 +#: e430c83c877c4c3cab0b0160e4441a7c of +msgid "Returns a partial messageable with the given channel ID." +msgstr "" + +#: 0906235be1c847718975e2d5950d3263 +#: discord.client.Client.get_partial_messageable:3 of +msgid "" +"This is useful if you have a channel_id but don't want to do an API call " +"to send messages to it." +msgstr "" + +#: 20f68ab6445a4e1eb3d21d94d48d56f5 +#: discord.client.Client.get_partial_messageable:9 of +msgid "The channel ID to create a partial messageable for." +msgstr "" + +#: discord.client.Client.get_partial_messageable:12 +#: f4cbce994233498eb9c3f7ab43945ed7 of +msgid "The underlying channel type for the partial messageable." +msgstr "" + +#: 448098dfa06645d1a21f0383e872fb66 +#: discord.client.Client.get_partial_messageable:15 of +msgid "The partial messageable" +msgstr "" + +#: 0c8f5fc1798148dc82d346f118df8ac8 +#: discord.client.Client.get_partial_messageable:16 of +msgid ":class:`.PartialMessageable`" +msgstr "" + +#: 6a88dea154924ac58b40c4ab9e98a394 discord.client.Client.get_poll:1 of +msgid "Returns a poll attached to the given message ID." +msgstr "" + +#: 4ad781ecc41c4c0fa34cdc928810b164 discord.client.Client.get_poll:4 of +msgid "The message ID of the poll to search for." +msgstr "" + +#: b3004ecd7bfe478c89204898761a7aa8 discord.client.Client.get_poll:7 of +msgid "The poll or ``None`` if not found." +msgstr "" + +#: 6070523df32e409d9b1fac2a8f96b3b4 discord.client.Client.get_poll:8 of +msgid "Optional[:class:`.Poll`]" +msgstr "" + +#: 05cce8cd9a4d41cb865b62006f90c2f3 +#: discord.ext.commands.bot.BotBase.get_prefix:3 of +msgid "" +"Retrieves the prefix the bot is listening to with the message as a " +"context." +msgstr "" + +#: c7ba4ac424cc4ca19751b328abfe0998 +#: discord.ext.commands.bot.BotBase.get_prefix:7 of +msgid "The message context to get the prefix of." +msgstr "" + +#: 4715b82f27524b18bb0212b3bd49ff25 +#: discord.ext.commands.bot.BotBase.get_prefix:10 of +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "" + +#: 23e4ab83cc1a4d03a15a745646a517a6 +#: discord.ext.commands.bot.BotBase.get_prefix:12 of +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "" + +#: 19d360590711420b85975a29897dd4da discord.client.Client.get_stage_instance:1 +#: of +msgid "Returns a stage instance with the given stage channel ID." +msgstr "" + +#: c1c509ff2b7c46abbd81eba5db015104 discord.client.Client.get_stage_instance:9 +#: of +msgid "The stage instance or ``None`` if not found." +msgstr "" + +#: 8afa09e8ce9f483187ee524cfbbb7769 discord.client.Client.get_stage_instance:10 +#: of +msgid "Optional[:class:`.StageInstance`]" +msgstr "" + +#: discord.client.Client.get_sticker:1 f3c2837e8008408bbf23da1bb066e7e6 of +msgid "Returns a guild sticker with the given ID." +msgstr "" + +#: 36b40417971b4043b37fd64a140e398f discord.client.Client.get_sticker:7 of +msgid "" +"To retrieve standard stickers, use :meth:`.fetch_sticker`. or " +":meth:`.fetch_premium_sticker_packs`." +msgstr "" + +#: 1d52b076ff9e4c908e00cd5a15c2ab81 discord.client.Client.get_sticker:10 of +msgid "The sticker or ``None`` if not found." +msgstr "" + +#: 72554f8103de4c6e9cb6a9beaf5e0b7d discord.client.Client.get_sticker:11 of +msgid "Optional[:class:`.GuildSticker`]" +msgstr "" + +#: ba4b9a4cd1454d8f96be7a8f51de1611 discord.client.Client.get_user:1 of +msgid "Returns a user with the given ID." +msgstr "" + +#: 3c6ffdbfdb4345c6a359147783febc67 discord.ext.commands.Bot.guilds:1 of +msgid "The guilds that the connected client is a member of." +msgstr "" + +#: 209488a932bb47e0931fac3e4d09609c discord.ext.commands.Bot.intents:1 of +msgid "The intents configured for this connection." +msgstr "" + +#: 3075bea48f2a4ca8852df93b0bd3498d discord.ext.commands.bot.BotBase.invoke:3 +#: of +msgid "" +"Invokes the command given under the invocation context and handles all " +"the internal event dispatch mechanisms." +msgstr "" + +#: 0f638f48f50f4c09993a064ea83cd283 +#: discord.bot.ApplicationCommandMixin.invoke_application_command:7 +#: discord.ext.commands.bot.BotBase.invoke:7 of +msgid "The invocation context to invoke." +msgstr "" + +#: 6e5ba81f8ba047ec86c62d502cf47bce +#: discord.bot.ApplicationCommandMixin.invoke_application_command:3 of +msgid "" +"Invokes the application command given under the invocation context and " +"handles all the internal event dispatch mechanisms." +msgstr "" + +#: 90e5eaa0acd44e75b0f81269d2e4704d discord.client.Client.is_closed:1 of +msgid "Indicates if the WebSocket connection is closed." +msgstr "" + +#: discord.client.Client.is_closed:4 discord.client.Client.is_ready:4 +#: f2d2ffb4c5de4294b00e0d6960df1d3d of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 118afb096dbb49fc99f4fa1d450cc94b discord.bot.BotBase.is_owner:3 of +msgid "" +"Checks if a :class:`~discord.User` or :class:`~discord.Member` is the " +"owner of this bot." +msgstr "" + +#: 0188040002234e448bfcefb5879da6d0 discord.bot.BotBase.is_owner:6 of +msgid "" +"If an :attr:`owner_id` is not set, it is fetched automatically through " +"the use of :meth:`~.Bot.application_info`." +msgstr "" + +#: discord.bot.BotBase.is_owner:9 ea92aef62ae14860a92b74b19f31e2fd of +msgid "" +"The function also checks if the application is team-owned if " +":attr:`owner_ids` is not set." +msgstr "" + +#: 75f037142b784ca0b0280584acb209a7 discord.bot.BotBase.is_owner:14 of +msgid "The user to check for." +msgstr "" + +#: 0518f3bb4aa1444db2ac2032b93b409a discord.bot.BotBase.is_owner:17 of +msgid "Whether the user is the owner." +msgstr "" + +#: 041173496c8247cf8d05c7ccbbfb734f discord.client.Client.is_ready:1 of +msgid "Specifies if the client's internal cache is ready for use." +msgstr "" + +#: d06516a48e6c46c6a3e32f6409bc7f1b discord.client.Client.is_ws_ratelimited:1 +#: of +msgid "Whether the WebSocket is currently rate limited." +msgstr "" + +#: 247b66b1c7ac49109fc876742bb3aa13 discord.client.Client.is_ws_ratelimited:3 +#: of +msgid "" +"This can be useful to know when deciding whether you should query members" +" using HTTP or via the gateway. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: cd244fd94faf4a6d80340bdcbf4fa037 discord.ext.commands.Bot.latency:1 of +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "" + +#: 68a27c5f06f046589b9966084c427b86 discord.ext.commands.Bot.latency:3 of +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "" + +#: 73ca6be9f6c44ea39c1efce5ee47bf23 discord.cog.CogMixin.load_extension:1 of +msgid "Loads an extension." +msgstr "" + +#: discord.cog.CogMixin.load_extension:3 f6a4fbb9fd74467f9c879de246769ffa of +msgid "" +"An extension is a python module that contains commands, cogs, or " +"listeners." +msgstr "" + +#: 975e840eaee14b4dbee8a00ddbbeda2f discord.cog.CogMixin.load_extension:6 of +msgid "" +"An extension must have a global function, ``setup`` defined as the entry " +"point on what to do when the extension is loaded. This entry point must " +"have a single argument, the ``bot``." +msgstr "" + +#: 3b164d7e34d1453b97c0f38f3f312a3f discord.cog.CogMixin.load_extension:10 of +msgid "" +"The extension passed can either be the direct name of a file within the " +"current working directory or a folder that contains multiple extensions." +msgstr "" + +#: 8e89d87054594008abe505c84310338c discord.cog.CogMixin.load_extension:14 of +msgid "" +"The extension or folder name to load. It must be dot separated like " +"regular Python imports if accessing a submodule. e.g. ``foo.test`` if you" +" want to import ``foo/test.py``." +msgstr "" + +#: 7f2cff7a3dcb41ef859adebe2c9703ac discord.cog.CogMixin.load_extension:19 +#: discord.cog.CogMixin.load_extensions:12 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"loading an extension using a relative path, e.g ``.foo.test``. Defaults " +"to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: 85cb40e2b8f843238e36491f437ae881 discord.cog.CogMixin.load_extension:19 +#: discord.cog.CogMixin.load_extensions:12 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"loading an extension using a relative path, e.g ``.foo.test``. Defaults " +"to ``None``." +msgstr "" + +#: 318cf231125c4652934e2e3dcd11f3b4 discord.cog.CogMixin.load_extension:27 +#: discord.cog.CogMixin.load_extensions:20 of +msgid "" +"If subdirectories under the given head directory should be recursively " +"loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "" + +#: discord.cog.CogMixin.load_extension:27 +#: discord.cog.CogMixin.load_extensions:20 e772cf6937df4d08811f8b5aca62ed7e of +msgid "" +"If subdirectories under the given head directory should be recursively " +"loaded. Defaults to ``False``." +msgstr "" + +#: 3cecd5dac3b1428186b2006eed2a09ea discord.cog.CogMixin.load_extension:34 +#: discord.cog.CogMixin.load_extensions:27 of +msgid "" +"If exceptions should be stored or raised. If set to ``True``, all " +"exceptions encountered will be stored in a returned dictionary as a load " +"status. If set to ``False``, if any exceptions are encountered they will " +"be raised and the bot will be closed. If no exceptions are encountered, a" +" list of loaded extension names will be returned. Defaults to ``False``." +" .. versionadded:: 2.0" +msgstr "" + +#: discord.cog.CogMixin.load_extension:34 +#: discord.cog.CogMixin.load_extensions:27 f8f0294e84b04031843107316a63aa39 of +msgid "" +"If exceptions should be stored or raised. If set to ``True``, all " +"exceptions encountered will be stored in a returned dictionary as a load " +"status. If set to ``False``, if any exceptions are encountered they will " +"be raised and the bot will be closed. If no exceptions are encountered, a" +" list of loaded extension names will be returned. Defaults to ``False``." +msgstr "" + +#: c16f13ff56c14c05b160e177859de1d9 discord.cog.CogMixin.load_extension:45 of +msgid "" +"If the store parameter is set to ``True``, a dictionary will be returned " +"that contains keys to represent the loaded extension names. The values " +"bound to each key can either be an exception that occurred when loading " +"that extension or a ``True`` boolean representing a successful load. If " +"the store parameter is set to ``False``, either a list containing a list " +"of loaded extensions or nothing due to an encountered exception." +msgstr "" + +#: 236d07f9e65049aead2c01b2e184cb28 discord.cog.CogMixin.load_extension:51 +#: discord.cog.CogMixin.load_extensions:44 of +msgid "" +"Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, " +":class:`bool`]], List[:class:`str`]]]" +msgstr "" + +#: 52b9fd3899444591860e9ea100e5b710 discord.cog.CogMixin.load_extension:53 +#: discord.cog.CogMixin.reload_extension:22 of +msgid "" +"The extension could not be imported. This is also raised if the name " +"of the extension could not be resolved using the provided ``package``" +" parameter." +msgstr "" + +#: a427a8d14c11445e824427e908258a19 discord.cog.CogMixin.load_extension:54 of +msgid "The extension is already loaded." +msgstr "" + +#: 94d3b957e1c145fba0c65ca08b4a9e7d discord.cog.CogMixin.load_extension:55 +#: discord.cog.CogMixin.reload_extension:23 of +msgid "The extension does not have a setup function." +msgstr "" + +#: 02cb58ade4144bd090d000ee9512e4e5 discord.cog.CogMixin.load_extension:56 of +msgid "The extension or its setup function had an execution error." +msgstr "" + +#: discord.cog.CogMixin.load_extensions:1 fc5ee1b90ff04683b6a6a0a44d25f634 of +msgid "Loads multiple extensions at once." +msgstr "" + +#: 8dbd82d2722b4abe982887f6fbd463cb discord.cog.CogMixin.load_extensions:3 of +msgid "" +"This method simplifies the process of loading multiple extensions by " +"handling the looping of ``load_extension``." +msgstr "" + +#: c6dc0ea347054e669a9fceb19b14f3df discord.cog.CogMixin.load_extensions:7 of +msgid "" +"The extension or folder names to load. It must be dot separated like " +"regular Python imports if accessing a submodule. e.g. ``foo.test`` if you" +" want to import ``foo/test.py``." +msgstr "" + +#: c4b1636eec6a4b959f385ec831af35b9 discord.cog.CogMixin.load_extensions:38 of +msgid "" +"If the store parameter is set to ``True``, a dictionary will be returned " +"that contains keys to represent the loaded extension names. The values " +"bound to each key can either be an exception that occurred when loading " +"that extension or a ``True`` boolean representing a successful load. If " +"the store parameter is set to ``False``, either a list containing names " +"of loaded extensions or nothing due to an encountered exception." +msgstr "" + +#: dff67721c328405f993460604610704e discord.cog.CogMixin.load_extensions:46 of +msgid "" +"A given extension could not be imported. This is also raised if the " +"name of the extension could not be resolved using the provided " +"``package`` parameter." +msgstr "" + +#: discord.cog.CogMixin.load_extensions:47 e26df7023d3e44de9392d0ee2666de5b of +msgid "A given extension is already loaded." +msgstr "" + +#: 9f8a6c8de9054e5d8f785f7013ff5426 discord.cog.CogMixin.load_extensions:48 of +msgid "A given extension does not have a setup function." +msgstr "" + +#: c7ee960eb3ed48cfa6219da68eda0e8a discord.cog.CogMixin.load_extensions:49 of +msgid "A given extension or its setup function had an execution error." +msgstr "" + +#: 0cd5999f08474ec09e84b3a0fcf53f6a discord.client.Client.login:3 of +msgid "Logs in the client with the specified credentials." +msgstr "" + +#: a83e8afd3b9a4df1aca1563503e19a4f discord.client.Client.login:6 of +msgid "" +"The authentication token. Do not prefix this token with anything as the " +"library will do it for you." +msgstr "" + +#: 4a7aece89b5d4b57b8a98d40cd1eb652 discord.client.Client.login:10 of +msgid "The token was in invalid type." +msgstr "" + +#: 96d7271f109c4e388ec84a0bd84841ed discord.client.Client.login:11 of +msgid "The wrong credentials are passed." +msgstr "" + +#: a224ce433d9d407eada620bbe58b79fb discord.client.Client.login:12 of +msgid "" +"An unknown HTTP related error occurred, usually when it isn't 200 or " +"the known incorrect credentials passing status code." +msgstr "" + +#: 06aaa4a06f1643458bac9277ab9c0586 +#: discord.bot.ApplicationCommandMixin.message_command:1 of +msgid "" +"A shortcut decorator that invokes :func:`command` and adds it to the " +"internal command list via :meth:`add_application_command`. This shortcut " +"is made specifically for :class:`.MessageCommand`." +msgstr "" + +#: 7d14b3bdf9634d46bdca6fcd9a21b9e3 +#: discord.bot.ApplicationCommandMixin.message_command:7 of +msgid "" +"A decorator that converts the provided method into a " +":class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "" + +#: 3a1f259101664820b1fdf332b5ba0384 +#: discord.bot.ApplicationCommandMixin.message_command:9 of +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "" + +#: 66802051ce734e8097ec34d915787746 +#: discord.bot.BotBase.on_application_command_error:3 +#: discord.ext.commands.bot.BotBase.on_command_error:3 of +msgid "The default command error handler provided by the bot." +msgstr "" + +#: 1cfd6552a76b4aa8a505f6638f251018 +#: discord.bot.BotBase.on_application_command_error:5 +#: discord.ext.commands.bot.BotBase.on_command_error:5 of +msgid "" +"By default, this prints to :data:`sys.stderr` however it could be " +"overridden to have a different implementation." +msgstr "" + +#: 2bccaf197b874b678e4c7e0f4392290a +#: discord.bot.BotBase.on_application_command_error:8 +#: discord.ext.commands.bot.BotBase.on_command_error:8 of +msgid "This only fires if you do not specify any listeners for command error." +msgstr "" + +#: discord.client.Client.on_error:3 edd24076077248e7b2b4b2ed5ab4d44f of +msgid "The default error handler provided by the client." +msgstr "" + +#: 0109e81b10394bdb842f6887198636a4 discord.client.Client.on_error:5 of +msgid "" +"By default, this prints to :data:`sys.stderr` however it could be " +"overridden to have a different implementation. Check " +":func:`~discord.on_error` for more details." +msgstr "" + +#: 373aeb873c344d82970e4a032b9ac217 discord.ext.commands.Bot.persistent_views:1 +#: of +msgid "A sequence of persistent views added to the client." +msgstr "" + +#: a6ba0d7629694f7f82906545519f7701 discord.ext.commands.Bot.polls:1 of +msgid "The polls that the connected client has." +msgstr "" + +#: 2a456fe204bb49ccba1c8ef998f0cc07 discord.ext.commands.Bot.private_channels:1 +#: of +msgid "The private channels that the connected client is participating on." +msgstr "" + +#: ceac0cfc384647d298f39f12c0acf7ed discord.ext.commands.Bot.private_channels:5 +#: of +msgid "" +"This returns only up to 128 most recent private channels due to an " +"internal working on how Discord deals with private channels." +msgstr "" + +#: 7182196090184bd2924a20549adf2d46 +#: discord.bot.ApplicationCommandMixin.process_application_commands:3 +#: discord.ext.commands.bot.BotBase.process_commands:3 of +msgid "" +"This function processes the commands that have been registered to the bot" +" and other groups. Without this coroutine, none of the commands will be " +"triggered." +msgstr "" + +#: ba527e37463647ce8c5432016f29f78c +#: discord.bot.ApplicationCommandMixin.process_application_commands:7 of +msgid "" +"By default, this coroutine is called inside the :func:`.on_interaction` " +"event. If you choose to override the :func:`.on_interaction` event, then " +"you should invoke this coroutine as well." +msgstr "" + +#: 50c7c9cad8cf4f289847762194b48a53 +#: discord.bot.ApplicationCommandMixin.process_application_commands:11 of +msgid "" +"This function finds a registered command matching the interaction id from" +" application commands and invokes it. If no matching command was found, " +"it replies to the interaction with a default message." +msgstr "" + +#: cb839530614640e8968e100adf2228d8 +#: discord.bot.ApplicationCommandMixin.process_application_commands:18 of +msgid "The interaction to process" +msgstr "" + +#: discord.bot.ApplicationCommandMixin.process_application_commands:21 +#: ff06c0ebce444f51a73fe1ee516f7264 of +msgid "" +"Whether to automatically sync and unregister the command if it is not " +"found in the internal cache. This will invoke the " +":meth:`~.Bot.sync_commands` method on the context of the command, either " +"globally or per-guild, based on the type of the command, respectively. " +"Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "" + +#: 6804d4b7ab9c43949f7ebec022a2b5e5 +#: discord.ext.commands.bot.BotBase.process_commands:7 of +msgid "" +"By default, this coroutine is called inside the :func:`.on_message` " +"event. If you choose to override the :func:`.on_message` event, then you " +"should invoke this coroutine as well." +msgstr "" + +#: discord.ext.commands.bot.BotBase.process_commands:11 +#: f62bf245cd8e481981dfd17614caa216 of +msgid "" +"This is built using other low level tools, and is equivalent to a call to" +" :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "" + +#: 2d7cb9beeb8349dd9c7fa0501f057e21 +#: discord.ext.commands.bot.BotBase.process_commands:14 of +msgid "" +"This also checks if the message's author is a bot and doesn't call " +":meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "" + +#: c4b59976df7f42f0a3c51d4f2e358b52 +#: discord.ext.commands.bot.BotBase.process_commands:18 of +msgid "The message to process commands for." +msgstr "" + +#: 164fb90b104045e89d7c1f0414020a3e +#: discord.bot.ApplicationCommandMixin.register_command:3 of +msgid "" +"Registers a command. If the command has ``guild_ids`` set, or if the " +"``guild_ids`` parameter is passed, the command will be registered as a " +"guild command for those guilds." +msgstr "" + +#: 78e53cdddda540b9a21a7fd370ac3b07 +#: discord.bot.ApplicationCommandMixin.register_command:7 of +msgid "The command to register." +msgstr "" + +#: 608b9bb60d2140218c03a6ef164385a0 +#: discord.bot.ApplicationCommandMixin.register_command:10 of +msgid "" +"Whether to force the command to be registered. If this is set to False, " +"the command will only be registered if it seems to already be registered " +"and up to date with our internal cache. Defaults to True." +msgstr "" + +#: dad7c61d72ce47a992ed88b6a217b991 +#: discord.bot.ApplicationCommandMixin.register_command:14 of +msgid "" +"A list of guild ids to register the command for. If this is not set, the " +"command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "" + +#: 4e1b3e10ead548c8804fdc8b0a1b2664 +#: discord.bot.ApplicationCommandMixin.register_command:18 of +msgid "The command that was registered" +msgstr "" + +#: 91dfc7d1b4eb4a6086d3b32f16fd9469 +#: discord.bot.ApplicationCommandMixin.register_command:19 of +msgid ":class:`~.ApplicationCommand`" +msgstr "" + +#: 62e8f2e9cd354bfaa1251489d46acd96 +#: discord.bot.ApplicationCommandMixin.register_commands:3 of +msgid "Register a list of commands." +msgstr "" + +#: c5082ea44ddf4a65ab929232d45ea410 +#: discord.bot.ApplicationCommandMixin.register_commands:8 of +msgid "" +"A list of commands to register. If this is not set (``None``), then all " +"commands will be registered." +msgstr "" + +#: af5a7516da5e45ec8955283376c7ce27 +#: discord.bot.ApplicationCommandMixin.register_commands:11 of +msgid "" +"If this is set, the commands will be registered as a guild command for " +"the respective guild. If it is not set, the commands will be registered " +"according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "" + +#: 4fae560ecd074d41a1539bb3058d9c8e +#: discord.bot.ApplicationCommandMixin.register_commands:15 +#: discord.bot.ApplicationCommandMixin.sync_commands:30 of +msgid "" +"The method to use when registering the commands. If this is set to " +"\"individual\", then each command will be registered individually. If " +"this is set to \"bulk\", then all commands will be registered in bulk. If" +" this is set to \"auto\", then the method will be determined " +"automatically. Defaults to \"bulk\"." +msgstr "" + +#: c70634c2e0434418a3a5d78525171060 +#: discord.bot.ApplicationCommandMixin.register_commands:20 +#: discord.bot.ApplicationCommandMixin.sync_commands:35 of +msgid "" +"Registers the commands regardless of the state of the command on Discord." +" This uses one less API call, but can result in hitting rate limits more " +"often. Defaults to False." +msgstr "" + +#: d41fd7f478444437aa26d461b53c89b0 +#: discord.bot.ApplicationCommandMixin.register_commands:24 +#: discord.bot.ApplicationCommandMixin.sync_commands:52 of +msgid "" +"Whether to delete existing commands that are not in the list of commands " +"to register. Defaults to True." +msgstr "" + +#: 9bd42b0833e541da9ea21e3253f0f1e1 +#: discord.bot.ApplicationCommandMixin.register_commands:27 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr "" + +#: discord.cog.CogMixin.reload_extension:1 f5bfe1db4bd748fbabc1c2d748a1ad3d of +msgid "Atomically reloads an extension." +msgstr "" + +#: discord.cog.CogMixin.reload_extension:3 e00b1c26b7c541efad26075cc3da1773 of +msgid "" +"This replaces the extension with the same extension, only refreshed. This" +" is equivalent to a :meth:`unload_extension` followed by a " +":meth:`load_extension` except done in an atomic way. That is, if an " +"operation fails mid-reload then the bot will roll back to the prior " +"working state." +msgstr "" + +#: 7397c9310acb4dc49acf1b6efd3fc08b discord.cog.CogMixin.reload_extension:9 of +msgid "" +"The extension name to reload. It must be dot separated like regular " +"Python imports if accessing a submodule. e.g. ``foo.test`` if you want to" +" import ``foo/test.py``." +msgstr "" + +#: 918b442226fd4dcab9ff66a48716b0ea discord.cog.CogMixin.reload_extension:14 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"reloading an extension using a relative path, e.g ``.foo.test``. Defaults" +" to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: 4f400cab8da54866b5de772471327cbc discord.cog.CogMixin.reload_extension:14 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"reloading an extension using a relative path, e.g ``.foo.test``. Defaults" +" to ``None``." +msgstr "" + +#: 84cf47932ab94200b27422be14d0bf12 ce093ca8e94b492b9baae5fe63c4e335 +#: discord.cog.CogMixin.reload_extension:21 +#: discord.cog.CogMixin.unload_extension:25 of +msgid "The extension was not loaded." +msgstr "" + +#: b6163285297844998306e8645322884b discord.cog.CogMixin.reload_extension:24 of +msgid "The extension setup function had an execution error." +msgstr "" + +#: a1ef0b2b55144410b778bb7ffb8be5b9 +#: discord.bot.ApplicationCommandMixin.remove_application_command:1 of +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.remove_application_command:7 +#: e62f5010bdd14887b34428f27772f090 of +msgid "The command to remove." +msgstr "" + +#: 36c1c6930d5745a4b82db78c7cc5dae2 +#: discord.bot.ApplicationCommandMixin.remove_application_command:10 of +msgid "" +"The command that was removed. If the command has not been added, ``None``" +" is returned instead." +msgstr "" + +#: 8c096a18316e4395b5a8c99d778633a6 discord.bot.BotBase.remove_check:1 of +msgid "" +"Removes a global check from the bot. This function is idempotent and will" +" not raise an exception if the function is not in the global checks." +msgstr "" + +#: d836f1015d2f4872921e7e2bd23cfd08 discord.bot.BotBase.remove_check:6 of +msgid "The function to remove from the global checks." +msgstr "" + +#: 52505a1773da45cd96132292f234668a discord.bot.BotBase.remove_check:8 of +msgid "" +"If the function was added with ``call_once=True`` in the " +":meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "" + +#: 4bce31052eae454cb922019dfa00224e discord.cog.CogMixin.remove_cog:1 of +msgid "Removes a cog from the bot and returns it." +msgstr "" + +#: 70dceeec61a3451a9e1f6bc70fbcfa91 discord.cog.CogMixin.remove_cog:3 of +msgid "" +"All registered commands and event listeners that the cog has registered " +"will be removed as well." +msgstr "" + +#: 4d06c08c84414815a3913eec615e16e7 discord.cog.CogMixin.remove_cog:6 of +msgid "If no cog is found then this method has no effect." +msgstr "" + +#: af1036bce59746d093abd81aab79b1d0 discord.cog.CogMixin.remove_cog:9 of +msgid "The name of the cog to remove." +msgstr "" + +#: discord.cog.CogMixin.remove_cog:12 e9f40ae4bcf146d9abae3c78d57f5fd5 of +msgid "The cog that was removed. ``None`` if not found." +msgstr "" + +#: 7e9562f29ff24c168294ced809e39c48 discord.cog.CogMixin.remove_cog:13 of +msgid "Optional[:class:`.Cog`]" +msgstr "" + +#: 72e56541aba94b5094116625bae069d9 +#: discord.ext.commands.core.GroupMixin.remove_command:1 of +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "" + +#: discord.ext.commands.core.GroupMixin.remove_command:4 +#: e1f8b4c4d35e4ad8b57c3d018b6f4174 of +msgid "This could also be used as a way to remove aliases." +msgstr "" + +#: d399c8aa90334ed29d8c347beafa631d +#: discord.ext.commands.core.GroupMixin.remove_command:7 of +msgid "The name of the command to remove." +msgstr "" + +#: 6edfdbe1280e4cf398df37fe2792d8ee +#: discord.ext.commands.core.GroupMixin.remove_command:10 of +msgid "" +"The command that was removed. If the name is not valid then ``None`` is " +"returned instead." +msgstr "" + +#: 99f6a7ad97a24341a814e6f291e294d2 +#: discord.ext.commands.core.GroupMixin.remove_command:12 of +msgid "Optional[:class:`.Command`]" +msgstr "" + +#: 89237b2df8894f028c8d6fe4b723ac9e discord.client.Client.remove_listener:1 of +msgid "Removes a listener from the pool of listeners." +msgstr "" + +#: 4126c6c0ad9d41f98850f0a0daf3d13f discord.client.Client.remove_listener:4 of +msgid "The function that was used as a listener to remove." +msgstr "" + +#: 04dcea9827704258a9e40aebaabf81cb discord.client.Client.remove_listener:6 of +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "" + +#: d770bb73dbb7401f974c801b9884b9d2 discord.client.Client.run:1 of +msgid "" +"A blocking call that abstracts away the event loop initialisation from " +"you." +msgstr "" + +#: 7cf3c2253ef341fd9ea4cd589e8a8f24 discord.client.Client.run:4 of +msgid "" +"If you want more control over the event loop then this function should " +"not be used. Use :meth:`start` coroutine or :meth:`connect` + " +":meth:`login`." +msgstr "" + +#: 81da8969b71546b2b65729eae997a16f discord.client.Client.run:8 of +msgid "Roughly Equivalent to: ::" +msgstr "" + +#: 4e683fc6fb4d4a70936b85ea61e72a74 discord.client.Client.run:20 of +msgid "" +"This function must be the last function to call due to the fact that it " +"is blocking. That means that registration of events or anything being " +"called after this function call will not execute until it returns." +msgstr "" + +#: dd492beae05f4a8d8cb809e7edef441e +#: discord.bot.ApplicationCommandMixin.slash_command:1 of +msgid "" +"A shortcut decorator that invokes :func:`command` and adds it to the " +"internal command list via :meth:`add_application_command`. This shortcut " +"is made specifically for :class:`.SlashCommand`." +msgstr "" + +#: 802ce9a737a9484c896d16f372e3b6de +#: discord.bot.ApplicationCommandMixin.slash_command:7 of +msgid "" +"A decorator that converts the provided method into a " +":class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "" + +#: 108e23f4f6284ab29c327401bf146ddc +#: discord.bot.ApplicationCommandMixin.slash_command:9 of +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "" + +#: 7634d59aa45e4d26b2c565151cc3782e discord.bot.ApplicationCommandMixin.group:1 +#: of +msgid "" +"A shortcut decorator that initializes the provided subclass of " +":class:`.SlashCommandGroup` and adds it to the internal command list via " +":meth:`add_application_command`." +msgstr "" + +#: 737591a4772a41f6bdeea4dd51546778 discord.bot.ApplicationCommandMixin.group:7 +#: of +msgid "" +"The name of the group to create. This will resolve to the name of the " +"decorated class if ``None`` is passed." +msgstr "" + +#: d76b1fe4d76f4ca69d1a0ade53afc1ce discord.client.Client.start:3 of +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "" + +#: 76b5f1a0b02348759deca85bc9662056 discord.client.Client.start:5 of +msgid "An unexpected keyword argument was received." +msgstr "" + +#: 63ac3c15418f4a8ab3731229e8c99da7 discord.ext.commands.Bot.status:1 of +msgid "The status being used upon logging on to Discord." +msgstr "" + +#: 1538eaf30f75407ab466133776dbc71e discord.ext.commands.Bot.stickers:1 of +msgid "The stickers that the connected client has." +msgstr "" + +#: discord.ext.commands.Bot.store_url:1 e5d3eb89db9845c5aec24b89323f4b32 of +msgid "The URL that leads to the application's store page for monetization." +msgstr "" + +#: 7f5438a9f9b340e0ab8f4b6c5f5cf6a3 discord.cog.CogMeta:37 +#: discord.cog.CogMeta:45 discord.ext.commands.Bot.store_url:5 +#: discord.ext.commands.HelpCommand.invoked_with:10 +#: discord.ext.commands.core.Command:10 discord.ext.commands.core.Command:79 +#: discord.ext.commands.errors.BadBoolArgument:11 +#: discord.ext.commands.errors.BadColourArgument:11 +#: discord.ext.commands.errors.ChannelNotFound:11 +#: discord.ext.commands.errors.CommandRegistrationError:12 +#: discord.ext.commands.errors.EmojiNotFound:11 +#: discord.ext.commands.errors.ExpectedClosingQuoteError:9 +#: discord.ext.commands.errors.GuildNotFound:11 +#: discord.ext.commands.errors.GuildStickerNotFound:11 +#: discord.ext.commands.errors.InvalidEndOfQuotedStringError:10 +#: discord.ext.commands.errors.MemberNotFound:12 +#: discord.ext.commands.errors.MessageNotFound:11 +#: discord.ext.commands.errors.PartialEmojiConversionFailure:12 +#: discord.ext.commands.errors.RoleNotFound:11 +#: discord.ext.commands.errors.ThreadNotFound:11 +#: discord.ext.commands.errors.UnexpectedQuoteError:9 +#: discord.ext.commands.errors.UserNotFound:12 +#: discord.ext.commands.flags.Flag:11 discord.ext.commands.flags.Flag:23 +#: discord.ext.commands.help.DefaultHelpCommand:49 +#: discord.ext.commands.help.DefaultHelpCommand:56 +#: discord.ext.commands.help.HelpCommand.command_not_found:14 +#: discord.ext.commands.help.HelpCommand.get_command_signature:8 +#: discord.ext.commands.help.HelpCommand.remove_mentions:6 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:22 +#: discord.ext.commands.help.MinimalHelpCommand:16 +#: discord.ext.commands.help.MinimalHelpCommand:23 +#: discord.ext.commands.help.MinimalHelpCommand:48 +#: discord.ext.commands.help.MinimalHelpCommand.get_command_signature:8 +#: discord.ext.commands.help.MinimalHelpCommand.get_ending_note:6 +#: discord.ext.commands.help.MinimalHelpCommand.get_opening_note:9 +#: discord.ext.commands.help.Paginator:13 +#: discord.ext.commands.help.Paginator:19 +#: discord.ext.commands.help.Paginator:34 of +msgid ":class:`str`" +msgstr "" + +#: 56dee18f303b43e79e6b6a77a2eadd69 +#: discord.bot.ApplicationCommandMixin.sync_commands:3 of +msgid "" +"Registers all commands that have been added through " +":meth:`.add_application_command`. This method cleans up all commands over" +" the API and should sync them with the internal cache of commands. It " +"attempts to register the commands in the most efficient way possible, " +"unless ``force`` is set to ``True``, in which case it will always " +"register all commands." +msgstr "" + +#: 2ab7c2937ad74760b370b73a6a8ba2ca +#: discord.bot.ApplicationCommandMixin.sync_commands:8 of +msgid "" +"By default, this coroutine is called inside the :func:`.on_connect` " +"event. If you choose to override the :func:`.on_connect` event, then you " +"should invoke this coroutine as well such as the following:" +msgstr "" + +#: 76d41f32c4ba46cfbd8dd7155cf5bd05 +#: discord.bot.ApplicationCommandMixin.sync_commands:20 of +msgid "" +"If you remove all guild commands from a particular guild, the library may" +" not be able to detect and update the commands accordingly, as it would " +"have to individually check for each guild. To force the library to " +"unregister a guild's commands, call this function with ``commands=[]`` " +"and ``guild_ids=[guild_id]``." +msgstr "" + +#: 952a63d7ebec443ea612b0602057c526 +#: discord.bot.ApplicationCommandMixin.sync_commands:27 of +msgid "" +"A list of commands to register. If this is not set (None), then all " +"commands will be registered." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.sync_commands:39 +#: e8fe7f09dcf84062a21c87edb848005f of +msgid "" +"A list of guild ids to register the commands for. If this is not set, the" +" commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "" + +#: 8f87ec3068be415190fee8343946adbf +#: discord.bot.ApplicationCommandMixin.sync_commands:43 of +msgid "Whether to register guild commands. Defaults to True." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.sync_commands:46 +#: f5a29066bc064defbb80514c03a3f884 of +msgid "" +"A list of guilds ids to check for commands to unregister, since the bot " +"would otherwise have to check all guilds. Unlike ``guild_ids``, this does" +" not alter the commands' :attr:`~.ApplicationCommand.guild_ids` " +"attribute, instead it adds the guild ids to a list of guilds to sync " +"commands for. If ``register_guild_commands`` is set to False, then this " +"parameter is ignored." +msgstr "" + +#: d3b66c696d4c429fa2944c1d45bf4f3e discord.cog.CogMixin.unload_extension:1 of +msgid "Unloads an extension." +msgstr "" + +#: 9a66a37183ff460ab14866054d375aeb discord.cog.CogMixin.unload_extension:3 of +msgid "" +"When the extension is unloaded, all commands, listeners, and cogs are " +"removed from the bot and the module is un-imported." +msgstr "" + +#: a598066c3fe44c7f8e0e5489ed9659e1 discord.cog.CogMixin.unload_extension:6 of +msgid "" +"The extension can provide an optional global function, ``teardown``, to " +"do miscellaneous clean-up if necessary. This function takes a single " +"parameter, the ``bot``, similar to ``setup`` from " +":meth:`~.Bot.load_extension`." +msgstr "" + +#: b32f49db4c9e4716a586f8f433a8babb discord.cog.CogMixin.unload_extension:12 of +msgid "" +"The extension name to unload. It must be dot separated like regular " +"Python imports if accessing a submodule. e.g. ``foo.test`` if you want to" +" import ``foo/test.py``." +msgstr "" + +#: b8bc526bb85d4212b18245588c6d2774 discord.cog.CogMixin.unload_extension:17 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"unloading an extension using a relative path, e.g ``.foo.test``. Defaults" +" to ``None``. .. versionadded:: 1.7" +msgstr "" + +#: 38ab1a9d45e54b7f9b7a2df37263d789 discord.cog.CogMixin.unload_extension:17 of +msgid "" +"The package name to resolve relative imports with. This is required when " +"unloading an extension using a relative path, e.g ``.foo.test``. Defaults" +" to ``None``." +msgstr "" + +#: 59b51e51c9d8441c8b1d6fa796ed8885 discord.cog.CogMixin.unload_extension:24 of +msgid "" +"The name of the extension could not be resolved using the provided " +"``package`` parameter." +msgstr "" + +#: 25ed7845b9674200a5ba81f4ea0a431d +#: discord.client.Client.update_role_connection_metadata_records:3 of +msgid "Updates the bot's role connection metadata records." +msgstr "" + +#: discord.client.Client.update_role_connection_metadata_records:8 +#: fa964cb583594724886c942b50bbb257 of +msgid "The new metadata records to send to Discord." +msgstr "" + +#: 896b8eabc98b4e468b4e0d752178c9b5 +#: discord.client.Client.update_role_connection_metadata_records:11 of +msgid "The updated role connection metadata records." +msgstr "" + +#: 65f4a38703104a058b05302678b5631e discord.ext.commands.Bot.user:1 of +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "" + +#: b2b91e77f7d741618fea041bc44a2047 +#: discord.bot.ApplicationCommandMixin.user_command:1 of +msgid "" +"A shortcut decorator that invokes :func:`command` and adds it to the " +"internal command list via :meth:`add_application_command`. This shortcut " +"is made specifically for :class:`.UserCommand`." +msgstr "" + +#: b1b309bd09ac4f3cba07626e0d84770e +#: discord.bot.ApplicationCommandMixin.user_command:7 of +msgid "" +"A decorator that converts the provided method into a " +":class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "" + +#: 43ff330447974841a60b8ce9ff1babcc +#: discord.bot.ApplicationCommandMixin.user_command:9 of +msgid "Callable[..., :class:`UserCommand`]" +msgstr "" + +#: 85e2b097c0464c2983971f8c305ef6db discord.ext.commands.Bot.users:1 of +msgid "Returns a list of all the users the bot can see." +msgstr "" + +#: abdc4c41e9c546b2b961ef5395b29fcf discord.ext.commands.Bot.voice_clients:1 of +msgid "Represents a list of voice connections." +msgstr "" + +#: 165917f65ed0449492cc9106a1860d96 discord.ext.commands.Bot.voice_clients:3 of +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "" + +#: 15de8e6d9e4640ca8681f96393db605e discord.client.Client.wait_for:3 of +msgid "Waits for a WebSocket event to be dispatched." +msgstr "" + +#: discord.client.Client.wait_for:5 f30e7c279c614fe78d5d370ebee54379 of +msgid "" +"This could be used to wait for a user to reply to a message, or to react " +"to a message, or to edit a message in a self-contained way." +msgstr "" + +#: 7ffe4d5b36924c5fbf56359a276435bf discord.client.Client.wait_for:9 of +msgid "" +"The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By " +"default, it does not timeout. Note that this does propagate the " +":exc:`asyncio.TimeoutError` for you in case of timeout and is provided " +"for ease of use." +msgstr "" + +#: 68218290695e4d94a40a0dfa0e6f0eb7 discord.client.Client.wait_for:14 of +msgid "" +"In case the event returns multiple arguments, a :class:`tuple` containing" +" those arguments is returned instead. Please check the " +":ref:`documentation ` for a list of events and their " +"parameters." +msgstr "" + +#: 891286b54b444d3e857a3e11ebd36f2c discord.client.Client.wait_for:19 of +msgid "This function returns the **first event that meets the requirements**." +msgstr "" + +#: 53489b7bb49642c6be5938b4b13c4a5d discord.client.Client.wait_for:22 of +msgid "" +"The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "" + +#: 6b6eeb0f83914b9cade3cb77db136009 discord.client.Client.wait_for:26 of +msgid "" +"A predicate to check what to wait for. The arguments must meet the " +"parameters of the event being waited for." +msgstr "" + +#: cdaf56492bf840f6bd28460c4343513a discord.client.Client.wait_for:30 of +msgid "" +"The number of seconds to wait before timing out and raising " +":exc:`asyncio.TimeoutError`." +msgstr "" + +#: a9dae933ab7e444fa98d09fc664439ac discord.client.Client.wait_for:34 of +msgid "" +"Returns no arguments, a single argument, or a :class:`tuple` of multiple " +"arguments that mirrors the parameters passed in the :ref:`event reference" +" `." +msgstr "" + +#: c18ac7e53ef548b3b012fd24da33f00e discord.client.Client.wait_for:39 of +msgid "Raised if a timeout is provided and reached." +msgstr "" + +#: 1efb0f90994a4d09b084d196cd2dbd19 discord.client.Client.wait_for:43 of +msgid "Waiting for a user reply: ::" +msgstr "" + +#: discord.client.Client.wait_for:57 fec96c30c379416b9f9c0ee73ed2280d of +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "" + +#: 4e183d241d704c97af61ff44652e8970 discord.client.Client.wait_until_ready:3 of +msgid "Waits until the client's internal cache is all ready." +msgstr "" + +#: discord.bot.ApplicationCommandMixin.walk_application_commands:1 +#: e5f1e9c359cb4fd1a94239b501fb3078 of +msgid "" +"An iterator that recursively walks through all application commands and " +"subcommands." +msgstr "" + +#: 8cf9700f44cb4982999c7f0e06fae9a7 +#: discord.bot.ApplicationCommandMixin.walk_application_commands:3 of +msgid "" +":class:`.ApplicationCommand` -- An application command from the internal " +"list of application commands." +msgstr "" + +#: 1456f4943caa4b34a8e69f60b5a07808 +#: discord.ext.commands.core.GroupMixin.walk_commands:1 of +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "" + +#: 49f59fb863cd4209bd0f1f4182299127 +#: discord.ext.commands.core.GroupMixin.walk_commands:3 of +msgid "Duplicates due to aliases are no longer returned" +msgstr "" + +#: c046361221d6494fa948452872c5775c +#: discord.ext.commands.core.GroupMixin.walk_commands:6 of +msgid "" +"Union[:class:`.Command`, :class:`.Group`] -- A command or group from the " +"internal list of commands." +msgstr "" + +#: ../../ext/commands/api.rst:53 083f5bc33dcb4586af8062833c6e2a40 +msgid "AutoShardedBot" +msgstr "" + +#: c43ed20f7e3248c99243a25c12d9b7c9 discord.ext.commands.bot.AutoShardedBot:1 +#: of +msgid "" +"This is similar to :class:`.Bot` except that it is inherited from " +":class:`discord.AutoShardedBot` instead." +msgstr "" + +#: ../../ext/commands/api.rst:61 0a9ee6adf3384fd2af3d470e981358f8 +msgid "Prefix Helpers" +msgstr "" + +#: 4c8b697e316940b296c4ff16559692be discord.ext.commands.bot.when_mentioned:1 +#: of +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "" + +#: 94c1395e027c46d6ade3d6e434844537 discord.ext.commands.bot.when_mentioned:3 +#: discord.ext.commands.bot.when_mentioned_or:3 of +msgid "" +"These are meant to be passed into the :attr:`.Bot.command_prefix` " +"attribute." +msgstr "" + +#: 871ad9b1ab9946a18c415864a779a250 discord.ext.commands.bot.when_mentioned:9 +#: of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr "" + +#: 23b7b72806634d609c92fb1e70fe4ad1 +#: discord.ext.commands.bot.when_mentioned_or:1 of +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "" + +#: 846bfc51b4944ad4983ff4d1d99850c1 +#: discord.ext.commands.bot.when_mentioned_or:5 of +msgid ":func:`.when_mentioned`" +msgstr "" + +#: c8eceea9e53d45cc97cfcbb42398acb9 +#: discord.ext.commands.bot.when_mentioned_or:15 of +msgid "" +"This callable returns another callable, so if this is done inside a " +"custom callable, you must call the returned callable, for example:" +msgstr "" + +#: c5b60bd7da7b4768b14a994651830b23 +#: discord.ext.commands.bot.when_mentioned_or:26 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| " +"\\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, " +"\\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, " +"\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr "" + +#: ../../ext/commands/api.rst:70 607f676f879e46c0bbd010f553a05c6b +msgid "Event Reference" +msgstr "" + +#: ../../ext/commands/api.rst:72 abda3f19786e42ea95de290e49493db7 +msgid "" +"These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "" + +#: ../../ext/commands/api.rst:77 9d47bcf3bdba46c0aee61570b0c50c1c +msgid "" +"An error handler that is called when an error is raised inside a command " +"either through user input error, check failure, or an error in your own " +"code." +msgstr "" + +#: ../../ext/commands/api.rst:81 dcb78c0a90ce4197baba03a1963d4490 +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "" + +#: ../../ext/commands/api.rst:83 ../../ext/commands/api.rst:95 +#: ../../ext/commands/api.rst:105 08d36c605612426784eaf9ec301a665e +#: discord.ext.commands.flags.FlagConverter.convert:8 +#: discord.ext.commands.help.HelpCommand.on_help_command_error:12 +#: discord.ext.commands.help.HelpCommand.prepare_help_command:16 of +msgid "The invocation context." +msgstr "" + +#: ../../ext/commands/api.rst:85 7db908c9bd4146148c671612f1a21c16 +#: discord.ext.commands.help.HelpCommand.on_help_command_error:15 of +msgid "The error that was raised." +msgstr "" + +#: ../../ext/commands/api.rst:90 347da799cd5c46d494faa3a6db00ab44 +msgid "" +"An event that is called when a command is found and is about to be " +"invoked." +msgstr "" + +#: ../../ext/commands/api.rst:92 c7110a45e2cb48e1b8de37062089a003 +msgid "" +"This event is called regardless of whether the command itself succeeds " +"via error or completes." +msgstr "" + +#: ../../ext/commands/api.rst:100 c0b551f9b80642cab7f482a5e253ccb0 +msgid "An event that is called when a command has completed its invocation." +msgstr "" + +#: ../../ext/commands/api.rst:102 e6df0f94dea4459b991e737d795fa1ac +msgid "" +"This event is called only if the command succeeded, i.e. all checks have " +"passed and the user input it correctly." +msgstr "" + +#: ../../ext/commands/api.rst:111 281bd859cfe442f290d3af15260bf4b3 +msgid "Commands" +msgstr "" + +#: ../../ext/commands/api.rst:114 2bc62b679dc241c8bbdad200cd956713 +msgid "Decorators" +msgstr "" + +#: 708aede471434da3975092e896c74818 discord.ext.commands.core.command:1 of +msgid "" +"A decorator that transforms a function into a :class:`.Command` or if " +"called with :func:`.group`, :class:`.Group`." +msgstr "" + +#: c63fd729dfb8408dafe13dc7810919fa discord.ext.commands.core.command:4 of +msgid "" +"By default the ``help`` attribute is received automatically from the " +"docstring of the function and is cleaned up with the use of " +"``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded " +"into :class:`str` using utf-8 encoding." +msgstr "" + +#: discord.ext.commands.core.command:9 e53325d7f3aa42c8a94797b99ede0e96 of +msgid "" +"All checks added using the :func:`.check` & co. decorators are added into" +" the function. There is no way to supply your own checks through this " +"decorator." +msgstr "" + +#: a0a1831b938245e4bc643705c843a97f discord.ext.commands.core.command:14 of +msgid "" +"The name to create the command with. By default, this uses the function " +"name unchanged." +msgstr "" + +#: 2dee1730ac3e4b508e2d0151bdc7b6fc discord.ext.commands.core.command:18 of +msgid "" +"The class to construct with. By default, this is :class:`.Command`. You " +"usually do not change this." +msgstr "" + +#: 8750c06b578949b2bec301ab09966274 discord.ext.commands.core.command:21 of +msgid "" +"Keyword arguments to pass into the construction of the class denoted by " +"``cls``." +msgstr "" + +#: 2164945e8ddc44eea1067cd31fd4dbee discord.ext.commands.core.command:24 of +msgid "If the function is not a coroutine or is already a command." +msgstr "" + +#: 578d8eb6b02947ff986b9f8f510ecdca discord.ext.commands.core.command:26 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, " +"\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, " +"bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, " +"\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, " +"bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, " +"\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, " +"\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, " +"bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\," +" \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr "" + +#: 55c95dbeda95432bbc44c8e8b1bbfb82 discord.ext.commands.core.group:1 of +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "" + +#: 0bdb03a91ab2407e8b5340be7023af87 discord.ext.commands.core.group:3 of +msgid "" +"This is similar to the :func:`.command` decorator but the ``cls`` " +"parameter is set to :class:`Group` by default." +msgstr "" + +#: 7fb2f6d0e28b47be902cbe75c475e17f discord.ext.commands.core.group:6 of +msgid "The ``cls`` parameter can now be passed." +msgstr "" + +#: 9e786b12bf0e42e587114de4fa12b997 discord.ext.commands.core.group:15 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, " +"\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, " +"bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, " +"\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, " +"bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, " +"\\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, " +"\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, " +"\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, " +"bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, " +"\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\," +" \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\," +" bound\\= Group\\)\\]\\]`" +msgstr "" + +#: ../../ext/commands/api.rst:123 be8eaaf347484952b041ca7193bfde75 +msgid "Command" +msgstr "" + +#: b2740c0e271c45ffa31ee9e4ef9110d9 discord.ext.commands.core.Command:1 of +msgid "A class that implements the protocol for a bot text command." +msgstr "" + +#: 38d70fc6a98e49428906980496be477e discord.ext.commands.core.Command:3 of +msgid "" +"These are not created manually, instead they are created via the " +"decorator or functional interface." +msgstr "" + +#: discord.ext.commands.core.Command:8 fea00179db634bc3b5280d608f1aaf46 of +msgid "The name of the command." +msgstr "" + +#: 74f8737bef614b73b50cc19b5b1fedcc discord.ext.commands.core.Command:14 of +msgid "The coroutine that is executed when the command is called." +msgstr "" + +#: 724c19721b204ffcb58a102838f26c9c discord.ext.commands.core.Command:16 of +msgid ":ref:`coroutine `" +msgstr "" + +#: 9cbe2b0ec42e48bc9b35c83c82e2940a discord.ext.commands.core.Command:20 of +msgid "The long help text for the command." +msgstr "" + +#: 1cae6d584b4042669667b6b5b19e8ca7 2fa587e86d45443b9e8de44d3a40adb3 +#: discord.ext.commands.context.Context:50 +#: discord.ext.commands.context.Context:63 +#: discord.ext.commands.context.Context:90 discord.ext.commands.core.Command:22 +#: discord.ext.commands.core.Command:28 discord.ext.commands.core.Command:34 of +msgid "Optional[:class:`str`]" +msgstr "" + +#: b746e9e3fb354ee1a6d3769b00a98e29 discord.ext.commands.core.Command:26 of +msgid "The short help text for the command." +msgstr "" + +#: dd8d8fc9f64e45ef87981bb7bc7471f4 discord.ext.commands.core.Command:32 of +msgid "A replacement for arguments in the default help text." +msgstr "" + +#: 42fc2c295e1243b79b516d3c03109b96 discord.ext.commands.core.Command:38 of +msgid "The list of aliases the command can be invoked under." +msgstr "" + +#: cf54b9762201480cab2c561bc2d887c4 discord.ext.commands.core.Command:40 of +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "" + +#: 0a79f1e290f24adc8156b6f1bd32b74e discord.ext.commands.core.Command:44 of +msgid "" +"A boolean that indicates if the command is currently enabled. If the " +"command is invoked while it is disabled, then :exc:`.DisabledCommand` is " +"raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "" + +#: discord.ext.commands.core.Command:53 f54613a1d2e0437eb1091031a27cd79a of +msgid "" +"The parent group that this command belongs to. ``None`` if there isn't " +"one." +msgstr "" + +#: 3df23d8b3d4345098f4d4afd3baff1e2 discord.ext.commands.core.Command:56 of +msgid "Optional[:class:`Group`]" +msgstr "" + +#: d8e1092e543f43618448013b2110ca43 discord.ext.commands.core.Command:60 of +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "" + +#: 8244542dc8084a9da29dd9ff51c67359 discord.ext.commands.core.Command:66 of +msgid "" +"A list of predicates that verifies if the command could be executed with " +"the given :class:`.Context` as the sole parameter. If an exception is " +"necessary to be thrown to signal failure, then one inherited from " +":exc:`.CommandError` should be used. Note that if the checks fail then " +":exc:`.CheckFailure` exception is raised to the :func:`.on_command_error`" +" event." +msgstr "" + +#: 94ebb1d8ffa74c098316e5fc504e71fd discord.ext.commands.core.Command:73 of +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "" + +#: 145735dc029546e0a341c7629552a704 discord.ext.commands.core.Command:77 of +msgid "The message prefixed into the default help command." +msgstr "" + +#: 9e57d5cbe57144f392610c29de2f9c85 discord.ext.commands.core.Command:83 of +msgid "" +"If ``True``\\, the default help command does not show this in the help " +"output." +msgstr "" + +#: 14cac0f6a6ae461ab7fe5343e0f7f3d0 discord.ext.commands.core.Command:90 of +msgid "" +"If ``False`` and a keyword-only argument is provided then the keyword " +"only argument is stripped and handled as if it was a regular argument " +"that handles :exc:`.MissingRequiredArgument` and default values in a " +"regular matter rather than passing the rest completely raw. If ``True`` " +"then the keyword-only argument will pass in the rest of the arguments in " +"a completely raw matter. Defaults to ``False``." +msgstr "" + +#: 093e94bdc8a74603b4cfab983620c699 discord.ext.commands.core.Command:101 of +msgid "The subcommand that was invoked, if any." +msgstr "" + +#: b9e5bf62202047d7a0dbd96c11552eb8 discord.ext.commands.core.Command:107 of +msgid "" +"If ``True`` and a variadic positional argument is specified, requires the" +" user to specify at least one argument. Defaults to ``False``." +msgstr "" + +#: 4d59accdbe704484b8e291b9fa4bcffd discord.ext.commands.core.Command:116 of +msgid "" +"If ``True``\\, ignores extraneous strings passed to a command if all its " +"requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and " +"``b``). Otherwise :func:`.on_command_error` and local error handlers are " +"called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "" + +#: discord.ext.commands.core.Command:125 f1dc7aea853f496cb8f912346dbd74ba of +msgid "" +"If ``True``\\, cooldown processing is done after argument parsing, which " +"calls converters. If ``False`` then cooldown processing is done first and" +" then the converters are called second. Defaults to ``False``." +msgstr "" + +#: acbffbc6ee1a4eae9845e9c260ca365f discord.ext.commands.core.Command:133 of +msgid "A dict of user provided extras to attach to the Command." +msgstr "" + +#: da23aa9c2f1b457c89b393dc1ce8d53d discord.ext.commands.core.Command:136 of +msgid "This object may be copied by the library." +msgstr "" + +#: bc8667441e1444d0897a7803d2b26f77 discord.cog.CogMeta:65 +#: discord.ext.commands.context.Context:35 +#: discord.ext.commands.core.Command:138 discord.ext.commands.core.GroupMixin:9 +#: discord.ext.commands.help.HelpCommand:44 of +msgid ":class:`dict`" +msgstr "" + +#: 349fc1bcfd9746f7be16678892cd7ec9 discord.ext.commands.core.Command:142 of +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "" + +#: 8f08e59bec544f6fa289612f427d41a9 discord.ext.commands.core.Command:143 of +msgid "" +"The cooldown applied when the command is invoked. ``None`` if the command" +" doesn't have a cooldown." +msgstr "" + +#: 90e414e8d0b44cd79cab048aefdf6405 +#: discord.ext.commands.core.Command.after_invoke:1 +#: discord.ext.commands.core.after_invoke:1 of +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "" + +#: d32e1cac49544fd5ae400c1fba138334 +#: discord.ext.commands.core.Command.after_invoke:3 of +msgid "" +"A post-invoke hook is called directly after the command is called. This " +"makes it a useful function to clean-up database connections or any type " +"of clean up required." +msgstr "" + +#: 51aa7afdb49f4da6ac20b1dcf6b57e06 +#: discord.ext.commands.core.Command.after_invoke:7 of +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "" + +#: 19f8492ddfb9427abc3cde521480b85d +#: discord.ext.commands.core.Command.after_invoke:9 of +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "" + +#: 7ae4c11caa124e808c7fb7b202116f45 +#: discord.ext.commands.core.Command.after_invoke:17 +#: discord.ext.commands.core.Command.before_invoke:17 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr "" + +#: 855503b6108245fcb68107267c49085e +#: discord.ext.commands.core.Command.before_invoke:1 +#: discord.ext.commands.core.before_invoke:1 of +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "" + +#: cf73320a95f4476b80a6f070ab5b02e3 +#: discord.ext.commands.core.Command.before_invoke:3 of +msgid "" +"A pre-invoke hook is called directly before the command is called. This " +"makes it a useful function to set up database connections or any type of " +"set up required." +msgstr "" + +#: 06e921e2b2fb4c21a72f500bd46a2810 +#: discord.ext.commands.core.Command.before_invoke:7 of +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "" + +#: 40fdc1fda7b94b879512d0e996f8258d +#: discord.ext.commands.core.Command.before_invoke:9 of +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "" + +#: discord.ext.commands.core.Command.error:1 e84346f5de634da79e860d51d22db014 +#: of +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "" + +#: discord.ext.commands.core.Command.error:3 f38c35e1e73e491699c0f0ddb73663c7 +#: of +msgid "" +"A local error handler is an :func:`.on_command_error` event limited to a " +"single command. However, the :func:`.on_command_error` is still invoked " +"afterwards as the catch-all." +msgstr "" + +#: 23a93b3beb964d8cbe69ad9ff6b02688 discord.ext.commands.core.Command.error:8 +#: of +msgid "The coroutine to register as the local error handler." +msgstr "" + +#: 20f06aa013104c82b4b355c39d43a727 discord.ext.commands.core.Command.error:13 +#: of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr "" + +#: ad8decf8dfa04986bacfea9596033dc8 +#: discord.ext.commands.core.Command.add_check:1 of +msgid "Adds a check to the command." +msgstr "" + +#: ade7620bbb9c4a79a2272aa1abd4ec09 +#: discord.ext.commands.core.Command.add_check:3 of +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "" + +#: 94e53b88c7864946aa8238fa03858fcf df2ebe85b1c24e0994ef469c4abbb696 +#: discord.ext.commands.core.Command.add_check:8 +#: discord.ext.commands.help.HelpCommand.add_check:6 of +msgid "The function that will be used as a check." +msgstr "" + +#: c9b66986248346dba1791fd1cb802588 +#: discord.ext.commands.core.Command.remove_check:1 of +msgid "Removes a check from the command." +msgstr "" + +#: 03c21e4d038949829e3d40810fc4b45d 765ac029ae7e480ab864cfded7dc1d08 +#: discord.ext.commands.core.Command.remove_check:3 +#: discord.ext.commands.help.HelpCommand.remove_check:3 of +msgid "" +"This function is idempotent and will not raise an exception if the " +"function is not in the command's checks." +msgstr "" + +#: 53d65f268cfb4a8ba97bcd294871ec32 dc6b6d44452748f48fb47d44228fb6fa +#: discord.ext.commands.core.Command.remove_check:9 +#: discord.ext.commands.help.HelpCommand.remove_check:9 of +msgid "The function to remove from the checks." +msgstr "" + +#: 2d740adac15a4ca48c6960d4946687a2 discord.ext.commands.core.Command.update:1 +#: of +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "" + +#: 3420696530994c2dbd03cb86dbc54b25 discord.ext.commands.core.Command.update:3 +#: of +msgid "" +"This works similarly to the :func:`.command` decorator in terms of " +"parameters in that they are passed to the :class:`Command` or subclass " +"constructors, sans the name and callback." +msgstr "" + +#: a94a96db6cea4071aed07dc63c09457a +#: discord.ext.commands.core.Command.__call__:3 of +msgid "Calls the internal callback that the command holds." +msgstr "" + +#: 06e2104d086e4245b4d7953660649bc0 +#: discord.ext.commands.core.Command.__call__:7 of +msgid "" +"This bypasses all mechanisms -- including checks, converters, invoke " +"hooks, cooldowns, etc. You must take care to pass the proper arguments " +"and types to this function." +msgstr "" + +#: 71c24cc891e04432849002e8709dfdf0 +#: discord.ext.commands.context.Context.invoke:27 +#: discord.ext.commands.core.Command.__call__:19 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr "" + +#: 6cd1c8a959c040b78e73444a59627b2c discord.ext.commands.core.Command.copy:1 of +msgid "Creates a copy of this command." +msgstr "" + +#: 1db5a8f7327d4ba1a4f75c7409af2b59 discord.ext.commands.core.Command.copy:3 of +msgid "A new instance of this command." +msgstr "" + +#: c0493f185aa540c18c9db1724fd3fb0e discord.ext.commands.core.Command.copy:4 of +msgid ":class:`Command`" +msgstr "" + +#: 422208602e70468a8cc4695ddaf9285c discord.ext.commands.Command.clean_params:1 +#: discord.ext.commands.Group.clean_params:1 of +msgid "" +"Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter " +"dictionary without the context or self parameters." +msgstr "" + +#: 697abd5fedc04c189332444f2135a9ac discord.ext.commands.Command.clean_params:4 +#: discord.ext.commands.Group.clean_params:4 of +msgid "Useful for inspecting signature." +msgstr "" + +#: 512c2c1ea4184e77bfd168579929e201 +#: discord.ext.commands.Command.full_parent_name:1 +#: discord.ext.commands.Group.full_parent_name:1 of +msgid "Retrieves the fully qualified parent command name." +msgstr "" + +#: c3494ed24b134e688ac5f49b5eb047d7 +#: discord.ext.commands.Command.full_parent_name:3 +#: discord.ext.commands.Group.full_parent_name:3 of +msgid "" +"This the base command name required to execute it. For example, in ``?one" +" two three`` the parent name would be ``one two``." +msgstr "" + +#: b6e4c6ca7e85435f9351a14cbf9b2bcb discord.ext.commands.Command.parents:1 +#: discord.ext.commands.Group.parents:1 of +msgid "Retrieves the parents of this command." +msgstr "" + +#: 21ee38bff0764697b17dd22c2db5ed96 discord.ext.commands.Command.parents:3 +#: discord.ext.commands.Group.parents:3 of +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "" + +#: 5eedd15d7f0045a89807cee976a97cc0 discord.ext.commands.Command.parents:5 +#: discord.ext.commands.Group.parents:5 of +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "" + +#: discord.ext.commands.Command.root_parent:1 +#: discord.ext.commands.Group.root_parent:1 e65c9a5c570a416f969edeec9068e39a of +msgid "Retrieves the root parent of this command." +msgstr "" + +#: 2f1f6da9123b4f4aa3d0a56f508f3e3b discord.ext.commands.Command.root_parent:3 +#: discord.ext.commands.Group.root_parent:3 of +msgid "If the command has no parents then it returns ``None``." +msgstr "" + +#: 6521e09bdf944e6db9d3f60cbe90b65f discord.ext.commands.Command.root_parent:5 +#: discord.ext.commands.Group.root_parent:5 of +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "" + +#: bcf9477a72ac4c729bb905cfcb4e2405 +#: discord.ext.commands.Command.qualified_name:1 +#: discord.ext.commands.Group.qualified_name:1 of +msgid "Retrieves the fully qualified command name." +msgstr "" + +#: d070d67e1ecf455b8dfd8194fa5d3e29 +#: discord.ext.commands.Command.qualified_name:3 +#: discord.ext.commands.Group.qualified_name:3 of +msgid "" +"This is the full parent name with the command name as well. For example, " +"in ``?one two three`` the qualified name would be ``one two three``." +msgstr "" + +#: 30141c30cc364576aac449f316b52da0 +#: discord.ext.commands.core.Command.is_on_cooldown:1 of +msgid "Checks whether the command is currently on cooldown." +msgstr "" + +#: 6e7a91b24b664b699c0791b676c4aaac +#: discord.ext.commands.core.Command.is_on_cooldown:4 of +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "" + +#: b4eff87099ad4ac9852614c8f3eb7862 +#: discord.ext.commands.core.Command.is_on_cooldown:7 of +msgid "A boolean indicating if the command is on cooldown." +msgstr "" + +#: 8a5495bda5cb470183ef2086755ce0f0 +#: discord.ext.commands.core.Command.reset_cooldown:1 of +msgid "Resets the cooldown on this command." +msgstr "" + +#: ca312cee971a438abb381bf66fb2cbff +#: discord.ext.commands.core.Command.reset_cooldown:4 of +msgid "The invocation context to reset the cooldown under." +msgstr "" + +#: 51fa09d7f11f43a1b781787a52ce8436 +#: discord.ext.commands.core.Command.get_cooldown_retry_after:1 of +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "" + +#: 45878d40a5fa4890ad42de0e8e9edc6e +#: discord.ext.commands.core.Command.get_cooldown_retry_after:6 of +msgid "The invocation context to retrieve the cooldown from." +msgstr "" + +#: discord.ext.commands.core.Command.get_cooldown_retry_after:9 +#: fdf38ba24dc14b689ad1e1eab70c6c1d of +msgid "" +"The amount of time left on this command's cooldown in seconds. If this is" +" ``0.0`` then the command isn't on cooldown." +msgstr "" + +#: 34090bfda6e1409eb479e3b919bede99 discord.ext.commands.cooldowns.Cooldown:13 +#: discord.ext.commands.cooldowns.Cooldown.get_retry_after:9 +#: discord.ext.commands.core.Command.get_cooldown_retry_after:11 +#: discord.ext.commands.errors.CommandOnCooldown:22 of +msgid ":class:`float`" +msgstr "" + +#: 3970666bdb78497b8d5a65197482a7bc +#: discord.ext.commands.core.Command.has_error_handler:1 of +msgid "" +"Checks whether the command has an error handler registered. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: a5a5f0ae305348feb8f1456838a1ee4a discord.ext.commands.Command.cog_name:1 +#: discord.ext.commands.Group.cog_name:1 of +msgid "The name of the cog this command belongs to, if any." +msgstr "" + +#: a359e8b0858f4bff80df0d29205d3ab0 discord.ext.commands.Command.short_doc:1 +#: discord.ext.commands.Group.short_doc:1 of +msgid "Gets the \"short\" documentation of a command." +msgstr "" + +#: 8f95d0a88a984f439e3dadb59ef199aa discord.ext.commands.Command.short_doc:3 +#: discord.ext.commands.Group.short_doc:3 of +msgid "" +"By default, this is the :attr:`.brief` attribute. If that lookup leads to" +" an empty string then the first line of the :attr:`.help` attribute is " +"used instead." +msgstr "" + +#: 0c0b9317fcac46ecae100cfc277bf9f6 discord.ext.commands.Command.signature:1 +#: discord.ext.commands.Group.signature:1 of +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "" + +#: cc5fd641e6244884961560f59e53c689 discord.ext.commands.core.Command.can_run:3 +#: of +msgid "" +"Checks if the command can be executed by checking all the predicates " +"inside the :attr:`~Command.checks` attribute. This also checks whether " +"the command is disabled." +msgstr "" + +#: 3950bda5fbf14e40adee997651342820 discord.ext.commands.core.Command.can_run:7 +#: of +msgid "Checks whether the command is disabled or not" +msgstr "" + +#: a6de3b877d0e4c7a991b4259bdb1f086 +#: discord.ext.commands.core.Command.can_run:11 of +msgid "The ctx of the command currently being invoked." +msgstr "" + +#: discord.ext.commands.core.Command.can_run:14 +#: ff73ac563b12400cbce6a1ad1f8c9d09 of +msgid "A boolean indicating if the command can be invoked." +msgstr "" + +#: 076a8f5c048c40b2bcc438d5a1ea5158 +#: discord.ext.commands.core.Command.can_run:17 of +msgid "" +"Any command error that was raised during a check call will be propagated" +" by this function." +msgstr "" + +#: ../../ext/commands/api.rst:142 29f1aee053a242acbeb1f2c4aecfe1da +msgid "Group" +msgstr "" + +#: 65da7b12e7ed47018fbcd2ff170d1f42 discord.ext.commands.core.Group:1 of +msgid "" +"A class that implements a grouping protocol for commands to be executed " +"as subcommands." +msgstr "" + +#: 44ff4fdaef554c62906b9c12c2cd9e96 discord.ext.commands.core.Group:4 of +msgid "" +"This class is a subclass of :class:`.Command` and thus all options valid " +"in :class:`.Command` are valid in here as well." +msgstr "" + +#: cd807d5e802148398e05f6c146d7f48a discord.ext.commands.core.Group:9 of +msgid "" +"Indicates if the group callback should begin parsing and invocation only " +"if no subcommand was found. Useful for making it an error handling " +"function to tell the user that no subcommand was found or to have " +"different functionality in case no subcommand was found. If this is " +"``False``, then the group callback will always be invoked first. This " +"means that the checks and the parsing dictated by its parameters will be " +"executed. Defaults to ``False``." +msgstr "" + +#: 91d77491c49d418ebb264e030f237dc4 discord.ext.commands.core.Group:22 of +msgid "" +"Indicates if the group's commands should be case-insensitive. Defaults to" +" ``False``." +msgstr "" + +#: b43b4fa9017b4d8f854052a65d37b34b discord.ext.commands.core.Group.copy:1 of +msgid "Creates a copy of this :class:`Group`." +msgstr "" + +#: bc8bbf36168a464287d18919b8ea1f56 discord.ext.commands.core.Group.copy:3 of +msgid "A new instance of this group." +msgstr "" + +#: 479727513b454596af0d83565a93505c discord.ext.commands.core.Group.copy:4 of +msgid ":class:`Group`" +msgstr "" + +#: ../../ext/commands/api.rst:167 843f0ae741c841bfa76f1b6f1d03c365 +msgid "GroupMixin" +msgstr "" + +#: b31eb1a7344948f0a4b726060f32dcc5 discord.ext.commands.core.GroupMixin:1 of +msgid "" +"A mixin that implements common functionality for classes that behave " +"similar to :class:`.Group` and are allowed to register commands." +msgstr "" + +#: 01122ecc57164cf2a9d1668806c98ec7 discord.ext.commands.core.GroupMixin:6 of +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "" + +#: b98c3fc6b795488fbf03190087b1ed2e discord.ext.commands.core.GroupMixin:13 of +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "" + +#: ../../ext/commands/api.rst:184 e2038f767482430fba55bbdb2a1b9bb1 +msgid "Cogs" +msgstr "" + +#: ../../ext/commands/api.rst:187 4b29b920e0514019815c861364b806d7 +msgid "Cog" +msgstr "" + +#: 1456f4943caa4b34a8e69f60b5a07808 +#: discord.ext.commands.cog.Cog.walk_commands:1 of +msgid "" +"An iterator that recursively walks through this cog's commands and " +"subcommands." +msgstr "" + +#: b0889f2d31ab45d59206aac0730ee26b +#: discord.ext.commands.cog.Cog.walk_commands:3 of +msgid "" +"Union[:class:`.Command`, :class:`.Group`] -- A command or group from the " +"cog." +msgstr "" + +#: discord.ext.commands.cog.Cog.get_commands:1 e903471dee0946f698493b70bbd6bfff +#: of +msgid "" +"A :class:`list` of commands that are defined inside this cog. .. note::" +" This does not include subcommands." +msgstr "" + +#: 10b1036c1fb04d5fadf115fd0156dc7d discord.ext.commands.cog.Cog.get_commands:1 +#: of +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "" + +#: c8f8940e1a334d72ace74656658dc636 discord.ext.commands.cog.Cog.get_commands:5 +#: of +msgid "This does not include subcommands." +msgstr "" + +#: 4eef2169b57545a39732b35f19317928 discord.ext.commands.cog.Cog.get_commands:6 +#: of +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "" + +#: ../../ext/commands/api.rst:195 9ffc5edca62a4591b776577d4c3be17a +msgid "CogMeta" +msgstr "" + +#: 6d3498e089d64e64bd39b02748feed7a discord.cog.CogMeta:1 of +msgid "A metaclass for defining a cog." +msgstr "" + +#: 818b7abc0e4e4c92ad300745b12e67f3 discord.cog.CogMeta:3 of +msgid "" +"Note that you should probably not use this directly. It is exposed purely" +" for documentation purposes along with making custom metaclasses to " +"intermix with other metaclasses such as the :class:`abc.ABCMeta` " +"metaclass." +msgstr "" + +#: 14bca144e04f49f2b6a2ffa5bd12bb21 discord.cog.CogMeta:7 of +msgid "" +"For example, to create an abstract cog mixin class, the following would " +"be done." +msgstr "" + +#: 8541d72ae9d240c5853b5b012bac5870 discord.cog.CogMeta:24 of +msgid "" +"When passing an attribute of a metaclass that is documented below, note " +"that you must pass it as a keyword-only argument to the class creation " +"like the following example:" +msgstr "" + +#: 4d0773ce7be443b3b02b0723cfa9ee2a discord.cog.CogMeta:35 of +msgid "" +"The cog name. By default, it is the name of the class with no " +"modification." +msgstr "" + +#: dbc8e995b5204e4b90abebe755df26d2 discord.cog.CogMeta:41 of +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "" + +#: 005387bb127242fc80381666a6e1faf3 discord.cog.CogMeta:49 of +msgid "" +"A list of attributes to apply to every command inside this cog. The " +"dictionary is passed into the :class:`Command` options at ``__init__``. " +"If you specify attributes inside the command attribute in the class, it " +"will override the one specified inside this attribute. For example:" +msgstr "" + +#: discord.cog.CogMeta:69 e654676f10784a318be772baf59e50ac of +msgid "" +"A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all " +"application commands have in the cog. You can override this by setting " +"``guild_ids`` per command." +msgstr "" + +#: discord.cog.CogMeta:74 f873bb0240304b34b00b4783ad8f63aa of +msgid "Optional[List[:class:`int`]]" +msgstr "" + +#: ../../ext/commands/api.rst:205 3ba5cbee70fb46a8a7289027a30c1154 +msgid "Help Commands" +msgstr "" + +#: ../../ext/commands/api.rst:208 a9b0e1487f8544b8bd6c8377c81509ad +msgid "HelpCommand" +msgstr "" + +#: 3728d038715e49f5a3791584fce2a04c discord.ext.commands.help.HelpCommand:1 of +msgid "The base implementation for help command formatting." +msgstr "" + +#: 4bf99b5a33634da38019379fa568c795 discord.ext.commands.help.HelpCommand:5 of +msgid "" +"Internally instances of this class are deep copied every time the command" +" itself is invoked to prevent a race condition mentioned in :dpy-" +"issue:`2123`." +msgstr "" + +#: 57d8ce635a7c4dfd85c2969ac2a3326d discord.ext.commands.help.HelpCommand:9 of +msgid "" +"This means that relying on the state of this class to be the same between" +" command invocations would not work as expected." +msgstr "" + +#: 8c76b92e97954a5fb2a3b8af6e6cc3db discord.ext.commands.help.HelpCommand:14 of +msgid "" +"The context that invoked this help formatter. This is generally set after" +" the help command assigned, :func:`command_callback`\\, has been called." +msgstr "" + +#: 92aebe5e9b4d4fecaa3da5db20b743c7 discord.ext.commands.help.HelpCommand:17 of +msgid "Optional[:class:`Context`]" +msgstr "" + +#: 28d3ba87fb3143faafc7eb87f9d151bf discord.ext.commands.help.HelpCommand:21 of +msgid "" +"Specifies if hidden commands should be shown in the output. Defaults to " +"``False``." +msgstr "" + +#: 1ec7123c827d411a81fe0bee61f34a24 discord.ext.commands.help.HelpCommand:28 of +msgid "" +"Specifies if commands should have their :attr:`.Command.checks` called " +"and verified. If ``True``, always calls :attr:`.Command.checks`. If " +"``None``, only calls :attr:`.Command.checks` in a guild setting. If " +"``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "" + +#: 308cf1e234b44a168f5eb03f15d8e8be +#: discord.ext.commands.help.DefaultHelpCommand:29 +#: discord.ext.commands.help.HelpCommand:35 +#: discord.ext.commands.help.MinimalHelpCommand:34 of +msgid "Optional[:class:`bool`]" +msgstr "" + +#: 1ccdbf4b50b44ab0b1fd37f54bd29a43 discord.ext.commands.help.HelpCommand:39 of +msgid "" +"A dictionary of options to pass in for the construction of the help " +"command. This allows you to change the command behaviour without actually" +" changing the implementation of the command. The attributes will be the " +"same as the ones passed in the :class:`.Command` constructor." +msgstr "" + +#: c57ad58f60af400783c843a1cebeb8b7 +#: discord.ext.commands.help.HelpCommand.add_check:1 of +msgid "Adds a check to the help command." +msgstr "" + +#: 54b841f106a3437e9947dfc91d5d0e84 +#: discord.ext.commands.help.HelpCommand.remove_check:1 of +msgid "Removes a check from the help command." +msgstr "" + +#: 59fa9d80d1b34f4bb1a23eb82603def1 +#: discord.ext.commands.help.HelpCommand.get_bot_mapping:1 of +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "" + +#: discord.ext.commands.HelpCommand.invoked_with:1 +#: fe94b765ac834e9bb6aa25e17682999d of +msgid "" +"Similar to :attr:`Context.invoked_with` except properly handles the case " +"where :meth:`Context.send_help` is used." +msgstr "" + +#: bad68c0718fe4f8dbbd049e0bb78b35a +#: discord.ext.commands.HelpCommand.invoked_with:4 of +msgid "" +"If the help command was used regularly then this returns the " +":attr:`Context.invoked_with` attribute. Otherwise, if the help command " +"was called using :meth:`Context.send_help` then it returns the internal " +"command name of the help command." +msgstr "" + +#: 9605ca58dc7540ba809f5b9944de8e93 +#: discord.ext.commands.HelpCommand.invoked_with:9 of +msgid "The command name that triggered this invocation." +msgstr "" + +#: 9d4ac7ff40e040b3b6a9aeb703e66c99 +#: discord.ext.commands.help.HelpCommand.get_command_signature:1 +#: discord.ext.commands.help.MinimalHelpCommand.get_command_signature:1 of +msgid "Retrieves the signature portion of the help page." +msgstr "" + +#: b3103498c74f46489696da57302a113e +#: discord.ext.commands.help.HelpCommand.get_command_signature:4 +#: discord.ext.commands.help.MinimalHelpCommand.get_command_signature:4 of +msgid "The command to get the signature of." +msgstr "" + +#: 0870226ae3fd45bbb1d7b250eedd749c +#: discord.ext.commands.help.HelpCommand.get_command_signature:7 +#: discord.ext.commands.help.MinimalHelpCommand.get_command_signature:7 of +msgid "The signature for the command." +msgstr "" + +#: a2e753b9567a47f8bc8fa70e5ad3c66d +#: discord.ext.commands.help.HelpCommand.remove_mentions:1 of +msgid "Removes mentions from the string to prevent abuse." +msgstr "" + +#: 1ba0ed368b63426894a070cbaab0c580 +#: discord.ext.commands.help.HelpCommand.remove_mentions:3 of +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "" + +#: 818a2ecc265d46fca2d1e230a5e1256f +#: discord.ext.commands.help.HelpCommand.remove_mentions:5 of +msgid "The string with mentions removed." +msgstr "" + +#: 6733db68c82649d2ad2b96e2b5b0606a discord.ext.commands.HelpCommand.cog:1 of +msgid "A property for retrieving or setting the cog for the help command." +msgstr "" + +#: discord.ext.commands.HelpCommand.cog:3 f0a6d3eda29d4e77884be9d27dc414c3 of +msgid "" +"When a cog is set for the help command, it is as-if the help command " +"belongs to that cog. All cog special methods will apply to the help " +"command, and it will be automatically unset on unload." +msgstr "" + +#: bd2865c7de154f0393060ce06ec5c389 discord.ext.commands.HelpCommand.cog:7 of +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "" + +#: b572e133ce4f4e49afc52d6cf5f868fc discord.ext.commands.HelpCommand.cog:9 of +msgid "The cog that is currently set for the help command." +msgstr "" + +#: a9b1544b7406441bbc26c947190156a5 +#: discord.ext.commands.help.HelpCommand.command_not_found:1 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:1 of +msgid "|maybecoro|" +msgstr "" + +#: 11b6366f06024bc18f31f51384b84719 +#: discord.ext.commands.help.HelpCommand.command_not_found:3 of +msgid "" +"A method called when a command is not found in the help command. This is " +"useful to override for i18n." +msgstr "" + +#: 870b0c00321c4963b624a270b9ec77ad +#: discord.ext.commands.help.HelpCommand.command_not_found:6 of +msgid "Defaults to ``No command called {0} found.``" +msgstr "" + +#: a7682b9639e94a5f8c68412a2d7a34bd +#: discord.ext.commands.help.HelpCommand.command_not_found:9 of +msgid "" +"The string that contains the invalid command. Note that this has had " +"mentions removed to prevent abuse." +msgstr "" + +#: discord.ext.commands.help.HelpCommand.command_not_found:13 +#: f966be26463f407884dbcda0640ec7c1 of +msgid "The string to use when a command has not been found." +msgstr "" + +#: 90f61b1e8c2b42159ea4d0f65e3ab6be +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:3 of +msgid "" +"A method called when a command did not have a subcommand requested in the" +" help command. This is useful to override for i18n." +msgstr "" + +#: 04095c7b194645cc8c006f273579b8b7 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:6 of +msgid "Defaults to either:" +msgstr "" + +#: bd93202046e7474bbfd1271fb5aebfa7 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:8 of +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "" + +#: 2f9dbb03410e41b39b38db1520d17207 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:9 of +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "" + +#: 1bd86a8162e147a2b78964b23a6da060 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:10 of +msgid "" +"``'Command \"{command.qualified_name}\" has no subcommand named " +"{string}'``" +msgstr "" + +#: d742621c65014debaf4e6ef8da190d11 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:11 of +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "" + +#: c7f990e681054582bab785f391126075 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:14 of +msgid "The command that did not have the subcommand requested." +msgstr "" + +#: de81605a27384dbb9bfee27cb9f993c6 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:17 of +msgid "" +"The string that contains the invalid subcommand. Note that this has had " +"mentions removed to prevent abuse." +msgstr "" + +#: bf836e28f2c04c2cb1c3ceb955a4c816 +#: discord.ext.commands.help.HelpCommand.subcommand_not_found:21 of +msgid "The string to use when the command did not have the subcommand requested." +msgstr "" + +#: 8cdeecd1f78a45a490d0b086b59dbfea +#: discord.ext.commands.help.HelpCommand.filter_commands:3 of +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "" + +#: c3c2bdabbbf04ae289fa869f1aac253a +#: discord.ext.commands.help.HelpCommand.filter_commands:5 of +msgid "" +"This takes into account the :attr:`verify_checks` and :attr:`show_hidden`" +" attributes." +msgstr "" + +#: 2e41bb491bbf4887818e70951501c8c3 +#: discord.ext.commands.help.HelpCommand.filter_commands:9 of +msgid "An iterable of commands that are getting filtered." +msgstr "" + +#: discord.ext.commands.help.HelpCommand.filter_commands:12 +#: e8074b04eb1b465ca6f97d8caa66f96c of +msgid "Whether to sort the result." +msgstr "" + +#: discord.ext.commands.help.HelpCommand.filter_commands:15 +#: f82defb618954648af121dc1a4a87f4f of +msgid "" +"An optional key function to pass to :func:`py:sorted` that takes a " +":class:`Command` as its sole parameter. If ``sort`` is passed as ``True``" +" then this will default as the command name." +msgstr "" + +#: 9f05a77eef2445268d540b4f9653f322 +#: discord.ext.commands.help.HelpCommand.filter_commands:20 of +msgid "A list of commands that passed the filter." +msgstr "" + +#: 0722f1eb0d854e748d5363eedae8ec27 +#: discord.ext.commands.help.HelpCommand.filter_commands:21 of +msgid "List[:class:`Command`]" +msgstr "" + +#: 1d7ab689f36d49ea84a4187da695f2cd +#: discord.ext.commands.help.HelpCommand.get_max_size:1 of +msgid "Returns the largest name length of the specified command list." +msgstr "" + +#: b0df17a168244fc881783a67405bc86d +#: discord.ext.commands.help.HelpCommand.get_max_size:4 of +msgid "A sequence of commands to check for the largest size." +msgstr "" + +#: 638a8223116c44afbc70a3490dc30977 +#: discord.ext.commands.help.HelpCommand.get_max_size:7 of +msgid "The maximum width of the commands." +msgstr "" + +#: 36db3ba452e247c3ad141758bb50a822 discord.ext.commands.cooldowns.Cooldown:7 +#: discord.ext.commands.cooldowns.Cooldown.get_tokens:9 +#: discord.ext.commands.errors.MaxConcurrencyReached:9 +#: discord.ext.commands.flags.Flag:42 +#: discord.ext.commands.help.DefaultHelpCommand:12 +#: discord.ext.commands.help.DefaultHelpCommand:42 +#: discord.ext.commands.help.HelpCommand.get_max_size:8 +#: discord.ext.commands.help.Paginator:25 of +msgid ":class:`int`" +msgstr "" + +#: 11d5736edd904be0909712cba6262a08 +#: discord.ext.commands.help.DefaultHelpCommand.get_destination:1 +#: discord.ext.commands.help.HelpCommand.get_destination:1 +#: discord.ext.commands.help.MinimalHelpCommand.get_destination:1 of +msgid "" +"Returns the :class:`~discord.abc.Messageable` where the help command will" +" be output." +msgstr "" + +#: 0da023124b764228803413e8e928ba2e 0fff7255071443deb952fb069385e343 +#: 221263475094489f990e402ae86805f6 4c8415699f38454caa3f28ff7645e137 +#: discord.ext.commands.help.DefaultHelpCommand.get_destination:3 +#: discord.ext.commands.help.HelpCommand.get_destination:3 +#: discord.ext.commands.help.HelpCommand.send_bot_help:11 +#: discord.ext.commands.help.HelpCommand.send_cog_help:11 +#: discord.ext.commands.help.HelpCommand.send_command_help:10 +#: discord.ext.commands.help.HelpCommand.send_error_message:6 +#: discord.ext.commands.help.HelpCommand.send_group_help:11 +#: discord.ext.commands.help.MinimalHelpCommand.get_destination:3 +#: f8c115ff7057440482dceb4d05d3c394 of +msgid "You can override this method to customise the behaviour." +msgstr "" + +#: 7463ee9371c746469ce380c3c6a9f69b +#: discord.ext.commands.help.DefaultHelpCommand.get_destination:5 +#: discord.ext.commands.help.HelpCommand.get_destination:5 +#: discord.ext.commands.help.MinimalHelpCommand.get_destination:5 of +msgid "By default, this returns the context's channel." +msgstr "" + +#: d4a4dc4660df41218b1ef139ba681fc6 +#: discord.ext.commands.help.DefaultHelpCommand.get_destination:7 +#: discord.ext.commands.help.HelpCommand.get_destination:7 +#: discord.ext.commands.help.MinimalHelpCommand.get_destination:7 of +msgid "The destination where the help command will be output." +msgstr "" + +#: 22ac12821be84e64abe4208c66e428ca +#: discord.ext.commands.help.DefaultHelpCommand.get_destination:8 +#: discord.ext.commands.help.HelpCommand.get_destination:8 +#: discord.ext.commands.help.MinimalHelpCommand.get_destination:8 of +msgid ":class:`.abc.Messageable`" +msgstr "" + +#: discord.ext.commands.help.HelpCommand.send_error_message:3 +#: ecf08844becf48199a5aba387a75a395 of +msgid "" +"Handles the implementation when an error happens in the help command. For" +" example, the result of :meth:`command_not_found` will be passed here." +msgstr "" + +#: 91bb9645a42e40298a5fa110a0f0f035 +#: discord.ext.commands.help.HelpCommand.send_error_message:8 of +msgid "" +"By default, this sends the error message to the destination specified by " +":meth:`get_destination`." +msgstr "" + +#: 145f3f00a2854c308de39ac9f2935d3d 1a16d349e6b147ea8072bbe46e99443b +#: 44d8a4471f8d46199d03cf08d9d852fb bb2b8cf7f8da4ab498331b3d6bfb0f42 +#: discord.ext.commands.help.HelpCommand.send_bot_help:15 +#: discord.ext.commands.help.HelpCommand.send_cog_help:15 +#: discord.ext.commands.help.HelpCommand.send_command_help:14 +#: discord.ext.commands.help.HelpCommand.send_error_message:13 +#: discord.ext.commands.help.HelpCommand.send_group_help:15 of +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "" + +#: discord.ext.commands.help.HelpCommand.send_error_message:16 +#: f7931984f74a4af5a0f13a3131100e8f of +msgid "" +"The error message to display to the user. Note that this has had mentions" +" removed to prevent abuse." +msgstr "" + +#: 62a23463e67743778ff5b5ffda0e1cb5 +#: discord.ext.commands.help.HelpCommand.on_help_command_error:3 of +msgid "" +"The help command's error handler, as specified by " +":ref:`ext_commands_error_handler`." +msgstr "" + +#: 2b2100cd275e4909a0cc009c6a3d63d9 +#: discord.ext.commands.help.HelpCommand.on_help_command_error:5 of +msgid "" +"Useful to override if you need some specific behaviour when the error " +"handler is called." +msgstr "" + +#: discord.ext.commands.help.HelpCommand.on_help_command_error:8 +#: f9b68e3eab0e4186b0e12bab0d4c59e5 of +msgid "" +"By default, this method does nothing and just propagates to the default " +"error handlers." +msgstr "" + +#: b1bcd236de8d485e97c9dcf3a2b6c09c +#: discord.ext.commands.help.HelpCommand.send_bot_help:3 of +msgid "" +"Handles the implementation of the bot command page in the help command. " +"This function is called when the help command is called with no " +"arguments." +msgstr "" + +#: 2d550440e5cf4edc8ced1cacaeea627b 8733bb9051b04e2f91d902a402af6929 +#: 92cd46fd01884b549196ce7d6f3affaf d2912db2232849caa145cdcedd335057 +#: discord.ext.commands.help.HelpCommand.send_bot_help:6 +#: discord.ext.commands.help.HelpCommand.send_cog_help:6 +#: discord.ext.commands.help.HelpCommand.send_command_help:5 +#: discord.ext.commands.help.HelpCommand.send_group_help:6 of +msgid "" +"It should be noted that this method does not return anything -- rather " +"the actual message sending should be done inside this method. Well-" +"behaved subclasses should use :meth:`get_destination` to know where to " +"send, as this is a customisation point for other users." +msgstr "" + +#: b39a59a79b09468a9c8275ebfce85a16 +#: discord.ext.commands.help.HelpCommand.send_bot_help:17 of +msgid "" +"Also, the commands in the mapping are not filtered. To do the filtering " +"you will have to call :meth:`filter_commands` yourself." +msgstr "" + +#: 02dcb1f0bd02493bbe5ae9e872616207 +#: discord.ext.commands.help.HelpCommand.send_bot_help:21 of +msgid "" +"A mapping of cogs to commands that have been requested by the user for " +"help. The key of the mapping is the :class:`~.commands.Cog` that the " +"command belongs to, or ``None`` if there isn't one, and the value is a " +"list of commands that belongs to that cog." +msgstr "" + +#: a828d648b1ea4065b69f360aaf334a2e +#: discord.ext.commands.help.HelpCommand.send_cog_help:3 of +msgid "" +"Handles the implementation of the cog page in the help command. This " +"function is called when the help command is called with a cog as the " +"argument." +msgstr "" + +#: 0fca5ad2726a4da3aa2b4cd57bc85212 +#: discord.ext.commands.help.HelpCommand.send_cog_help:17 of +msgid "" +"To get the commands that belong to this cog see :meth:`Cog.get_commands`." +" The commands returned not filtered. To do the filtering you will have to" +" call :meth:`filter_commands` yourself." +msgstr "" + +#: 98ac7e67a5fa4e958a227fe3594c0796 +#: discord.ext.commands.help.HelpCommand.send_cog_help:22 of +msgid "The cog that was requested for help." +msgstr "" + +#: 27ac13aaf6a54dcd9614dba2b03d98c9 +#: discord.ext.commands.help.HelpCommand.send_group_help:3 of +msgid "" +"Handles the implementation of the group page in the help command. This " +"function is called when the help command is called with a group as the " +"argument." +msgstr "" + +#: 8bc4bcfb9f3141838dbe400cd555c11c +#: discord.ext.commands.help.HelpCommand.send_group_help:17 of +msgid "" +"To get the commands that belong to this group without aliases see " +":attr:`Group.commands`. The commands returned not filtered. To do the " +"filtering you will have to call :meth:`filter_commands` yourself." +msgstr "" + +#: 481ed9cbfcfe4d5c945aedb7f564be2e +#: discord.ext.commands.help.HelpCommand.send_group_help:22 of +msgid "The group that was requested for help." +msgstr "" + +#: 55e69ff04387467396ff5f080c4b729c +#: discord.ext.commands.help.HelpCommand.send_command_help:3 of +msgid "Handles the implementation of the single command page in the help command." +msgstr "" + +#: 15230ebc88374c4696b38f30fd9070a2 +#: discord.ext.commands.help.HelpCommand.send_command_help:16 of +msgid "Showing Help" +msgstr "" + +#: discord.ext.commands.help.HelpCommand.send_command_help:19 +#: e5bdf0c519cc42b5ba11a16bd65b33aa of +msgid "" +"There are certain attributes and methods that are helpful for a help " +"command to show such as the following:" +msgstr "" + +#: 3491b2a4d9d74002b8ead57973164b4f +#: discord.ext.commands.help.HelpCommand.send_command_help:22 of +msgid ":attr:`Command.help`" +msgstr "" + +#: 0d6cc8451c074f339f08d2ea9ff6f289 +#: discord.ext.commands.help.HelpCommand.send_command_help:23 of +msgid ":attr:`Command.brief`" +msgstr "" + +#: discord.ext.commands.help.HelpCommand.send_command_help:24 +#: fd4e0a0770cb4dd583602d3067e81b24 of +msgid ":attr:`Command.short_doc`" +msgstr "" + +#: 76ce4a6e88d444ecbad32de75bc5fe22 +#: discord.ext.commands.help.HelpCommand.send_command_help:25 of +msgid ":attr:`Command.description`" +msgstr "" + +#: 20889f14e1744f53bf91b3810fd8bf36 +#: discord.ext.commands.help.HelpCommand.send_command_help:26 of +msgid ":meth:`get_command_signature`" +msgstr "" + +#: 3049f2cecc1b439da3d78baacd2005e2 +#: discord.ext.commands.help.HelpCommand.send_command_help:28 of +msgid "" +"There are more than just these attributes but feel free to play around " +"with these to help you get started to get the output that you want." +msgstr "" + +#: 0a14d7e642ed4889b30688b6c0048821 +#: discord.ext.commands.help.HelpCommand.send_command_help:32 of +msgid "The command that was requested for help." +msgstr "" + +#: 404a74fe43794d0fbed34f5c3d1ea920 +#: discord.ext.commands.help.HelpCommand.prepare_help_command:3 of +msgid "" +"A low level method that can be used to prepare the help command before it" +" does anything. For example, if you need to prepare some state in your " +"subclass before the command does its processing then this would be the " +"place to do it." +msgstr "" + +#: 85592828042a4467a6777ebda074bc0c +#: discord.ext.commands.help.HelpCommand.prepare_help_command:8 +#: discord.ext.commands.help.MinimalHelpCommand.get_ending_note:3 of +msgid "The default implementation does nothing." +msgstr "" + +#: discord.ext.commands.help.HelpCommand.prepare_help_command:12 +#: ea87701788ad4a47b061de81d0fe4850 of +msgid "" +"This is called *inside* the help command callback body. So all the usual " +"rules that happen inside apply here as well." +msgstr "" + +#: 210b8f6390bb4dc69b4eadd6b4ddfc9b +#: discord.ext.commands.help.HelpCommand.prepare_help_command:19 of +msgid "The argument passed to the help command." +msgstr "" + +#: 11a8f56569d6415181816fa4eefa4fb6 +#: discord.ext.commands.help.HelpCommand.command_callback:3 of +msgid "The actual implementation of the help command." +msgstr "" + +#: b6cdc3d230bc4daca9399775d44f4ce2 +#: discord.ext.commands.help.HelpCommand.command_callback:5 of +msgid "" +"It is not recommended to override this method and instead change the " +"behaviour through the methods that actually get dispatched." +msgstr "" + +#: 3f473bec01bb44ac91e8ff68715f11e9 +#: discord.ext.commands.help.HelpCommand.command_callback:8 of +msgid ":meth:`send_bot_help`" +msgstr "" + +#: 80edd5df25254ff99b0ad02aa9274411 +#: discord.ext.commands.help.HelpCommand.command_callback:9 of +msgid ":meth:`send_cog_help`" +msgstr "" + +#: discord.ext.commands.help.HelpCommand.command_callback:10 +#: eb6bdd4d05734e8991acd54e5104d075 of +msgid ":meth:`send_group_help`" +msgstr "" + +#: 6dee8753a3564294b028a06230aeb65f +#: discord.ext.commands.help.HelpCommand.command_callback:11 of +msgid ":meth:`send_command_help`" +msgstr "" + +#: 3c5f3d8e5cbe4e5aaa7c3f131a3045de +#: discord.ext.commands.help.HelpCommand.command_callback:12 of +msgid ":meth:`get_destination`" +msgstr "" + +#: 39474771f7684d45b5373b17b69f2f6e +#: discord.ext.commands.help.HelpCommand.command_callback:13 of +msgid ":meth:`command_not_found`" +msgstr "" + +#: discord.ext.commands.help.HelpCommand.command_callback:14 +#: f3c5d3d6839c4af5ba7d4184930ea80f of +msgid ":meth:`subcommand_not_found`" +msgstr "" + +#: d5005de494d94770b7117858517d4bad +#: discord.ext.commands.help.HelpCommand.command_callback:15 of +msgid ":meth:`send_error_message`" +msgstr "" + +#: 83cbfb0f715e49a2a63f2b66d6fc98ff +#: discord.ext.commands.help.HelpCommand.command_callback:16 of +msgid ":meth:`on_help_command_error`" +msgstr "" + +#: 05293fc84d7d40f29448138536a0d84d +#: discord.ext.commands.help.HelpCommand.command_callback:17 of +msgid ":meth:`prepare_help_command`" +msgstr "" + +#: ../../ext/commands/api.rst:216 280052a3bfce4f8a8146f4f398509707 +msgid "DefaultHelpCommand" +msgstr "" + +#: 9de62005f62e44ff9931e1d9a2f0d6a2 +#: discord.ext.commands.help.DefaultHelpCommand:1 of +msgid "The implementation of the default help command." +msgstr "" + +#: 98cc93d14ebe483c8ea65f00dd5b35bb +#: discord.ext.commands.help.DefaultHelpCommand:3 +#: discord.ext.commands.help.MinimalHelpCommand:3 of +msgid "This inherits from :class:`HelpCommand`." +msgstr "" + +#: 2d8f18b9ac2a4f7ebcfbc98885b666e5 +#: discord.ext.commands.help.DefaultHelpCommand:5 of +msgid "It extends it with the following attributes." +msgstr "" + +#: df8735e1f5c348a88ce9829e4c3bd4da +#: discord.ext.commands.help.DefaultHelpCommand:9 of +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "" + +#: ad75381379ab48acb3057dc68b6c4a37 +#: discord.ext.commands.help.DefaultHelpCommand:16 +#: discord.ext.commands.help.MinimalHelpCommand:7 of +msgid "" +"Whether to sort the commands in the output alphabetically. Defaults to " +"``True``." +msgstr "" + +#: discord.ext.commands.help.DefaultHelpCommand:22 +#: discord.ext.commands.help.MinimalHelpCommand:27 +#: fcb81f11c0f146b49699484d0ce0f808 of +msgid "" +"A tribool that indicates if the help command should DM the user instead " +"of sending it to the channel it received it from. If the boolean is set " +"to ``True``, then all help output is DM'd. If ``False``, none of the help" +" output is DM'd. If ``None``, then the bot will only DM when the help " +"message becomes too long (dictated by more than :attr:`dm_help_threshold`" +" characters). Defaults to ``False``." +msgstr "" + +#: bdb32d5c391a4020a14aa9e04df4dfb3 +#: discord.ext.commands.help.DefaultHelpCommand:33 +#: discord.ext.commands.help.MinimalHelpCommand:38 of +msgid "" +"The number of characters the paginator must accumulate before getting " +"DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "" + +#: 3ed75e87187148e5b3a2193a292ef53b +#: discord.ext.commands.help.DefaultHelpCommand:36 +#: discord.ext.commands.help.MinimalHelpCommand:41 of +msgid "Optional[:class:`int`]" +msgstr "" + +#: ca0e9178e75445c5bc4e6128b058880c +#: discord.ext.commands.help.DefaultHelpCommand:40 of +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "" + +#: 0ccd0499465045b780f7a265704d5d53 +#: discord.ext.commands.help.DefaultHelpCommand:46 of +msgid "" +"The command list's heading string used when the help command is invoked " +"with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "" + +#: 506d95ebb9664f17a10381534561613a +#: discord.ext.commands.help.DefaultHelpCommand:53 +#: discord.ext.commands.help.MinimalHelpCommand:45 of +msgid "" +"The string used when there is a command which does not belong to any " +"category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "" + +#: 1ad02dd72b1b4b84a48ebbb3b20dcf54 +#: discord.ext.commands.help.DefaultHelpCommand:60 +#: discord.ext.commands.help.MinimalHelpCommand:52 of +msgid "The paginator used to paginate the help command output." +msgstr "" + +#: discord.ext.commands.help.DefaultHelpCommand:62 +#: discord.ext.commands.help.MinimalHelpCommand:54 +#: eb7ca19c2ce740f49eafb5aa2225772f of +msgid ":class:`Paginator`" +msgstr "" + +#: 94814d7b6a2f4e74a8ef24ccfb43fc0b +#: discord.ext.commands.help.DefaultHelpCommand.shorten_text:1 of +msgid "Shortens text to fit into the :attr:`width`." +msgstr "" + +#: discord.ext.commands.converter.clean_content.convert:19 +#: discord.ext.commands.help.DefaultHelpCommand.get_ending_note:4 +#: discord.ext.commands.help.DefaultHelpCommand.shorten_text:5 +#: ea5d814f698e427c927fe26e57311142 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr "" + +#: d2d8ce0a6f2947739d49d1a3d2b80967 +#: discord.ext.commands.help.DefaultHelpCommand.get_ending_note:1 of +msgid "" +"Returns help command's ending note. This is mainly useful to override for" +" i18n purposes." +msgstr "" + +#: 561ce69694644ee584ffcd113fb09369 +#: discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:1 of +msgid "Indents a list of commands after the specified heading." +msgstr "" + +#: 02d98ac7859f4ade9548622bb854fc31 +#: discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:3 of +msgid "The formatting is added to the :attr:`paginator`." +msgstr "" + +#: d1c297d5dfe44c07ab17475943a517cf +#: discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:5 of +msgid "" +"The default implementation is the command name indented by :attr:`indent`" +" spaces, padded to ``max_size`` followed by the command's " +":attr:`Command.short_doc` and then shortened to fit into the " +":attr:`width`." +msgstr "" + +#: dacbb4c5af9145caac90d727d81893c0 +#: discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:11 of +msgid "A list of commands to indent for output." +msgstr "" + +#: 9a760df2465e482a9ccab7abd60204a4 +#: discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:14 of +msgid "" +"The heading to add to the output. This is only added if the list of " +"commands is greater than 0." +msgstr "" + +#: cd7322b48f414511b8f0e5a791f99e01 +#: discord.ext.commands.help.DefaultHelpCommand.add_indented_commands:18 of +msgid "" +"The max size to use for the gap between indents. If unspecified, calls " +":meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "" + +#: 604e96dc969d4a16ab5e5513a0590f96 +#: discord.ext.commands.help.DefaultHelpCommand.send_pages:1 +#: discord.ext.commands.help.MinimalHelpCommand.send_pages:1 of +msgid "" +"A helper utility to send the page output from :attr:`paginator` to the " +"destination." +msgstr "" + +#: 0c64282ae9a7447db39ab64e33fb73aa +#: discord.ext.commands.help.DefaultHelpCommand.add_command_formatting:1 of +msgid "" +"A utility function to format the non-indented block of commands and " +"groups." +msgstr "" + +#: 56429d0375c84befb1b01caa55354f47 +#: discord.ext.commands.help.DefaultHelpCommand.add_command_formatting:4 +#: discord.ext.commands.help.MinimalHelpCommand.add_command_formatting:4 of +msgid "The command to format." +msgstr "" + +#: ../../ext/commands/api.rst:225 b08b39dd303f4219b5448e9c41960424 +msgid "MinimalHelpCommand" +msgstr "" + +#: 782cc545def54629a84441b98b842142 +#: discord.ext.commands.help.MinimalHelpCommand:1 of +msgid "An implementation of a help command with minimal output." +msgstr "" + +#: 0d0161510712488bba1af85693fb13c1 +#: discord.ext.commands.help.MinimalHelpCommand:13 of +msgid "" +"The command list's heading string used when the help command is invoked " +"with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "" + +#: 2a3d9de0455d454db86f48ea4fce0bee +#: discord.ext.commands.help.MinimalHelpCommand:20 of +msgid "" +"The alias list's heading string used to list the aliases of the command. " +"Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "" + +#: bf9bfcfccb6d4729ab5e79ca296f4be7 +#: discord.ext.commands.help.MinimalHelpCommand.get_opening_note:1 of +msgid "" +"Returns help command's opening note. This is mainly useful to override " +"for i18n purposes." +msgstr "" + +#: 89825549a52b49f0b61ce22ede84a59b +#: discord.ext.commands.help.MinimalHelpCommand.get_opening_note:3 of +msgid "The default implementation returns ::" +msgstr "" + +#: 1b33ab9eb24c4202a2d0f6d49d35944e +#: discord.ext.commands.help.MinimalHelpCommand.get_opening_note:8 of +msgid "The help command opening note." +msgstr "" + +#: c7be250c990b40f894b42471edbb3f04 +#: discord.ext.commands.help.MinimalHelpCommand.get_ending_note:1 of +msgid "" +"Return the help command's ending note. This is mainly useful to override " +"for i18n purposes." +msgstr "" + +#: 73dd495170d14ddb8230ad7b4b9fde74 +#: discord.ext.commands.help.MinimalHelpCommand.get_ending_note:5 of +msgid "The help command ending note." +msgstr "" + +#: dc6008496d7f47f98cba8124a45e9fd8 +#: discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:1 +#: of +msgid "Adds the minified bot heading with commands to the output." +msgstr "" + +#: 7b8dc415474a458294ed699b814d8908 +#: discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:3 +#: discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:3 +#: discord.ext.commands.help.MinimalHelpCommand.add_subcommand_formatting:3 of +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "" + +#: 173c5382465042adb49b12d09c20a4e9 +#: discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:5 +#: of +msgid "" +"The default implementation is a bold underline heading followed by " +"commands separated by an EN SPACE (U+2002) in the next line." +msgstr "" + +#: 6bbc75e158a44e9ab07b181c71107a32 +#: discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:9 +#: of +msgid "A list of commands that belong to the heading." +msgstr "" + +#: 812ae0735d0048639c1084356979556a +#: discord.ext.commands.help.MinimalHelpCommand.add_bot_commands_formatting:12 +#: of +msgid "The heading to add to the line." +msgstr "" + +#: 432e24a0d5014f5f9fd67c74acc6e33c +#: discord.ext.commands.help.MinimalHelpCommand.add_subcommand_formatting:1 of +msgid "Adds formatting information on a subcommand." +msgstr "" + +#: 8680c6a80a314ee4867833116e05da47 +#: discord.ext.commands.help.MinimalHelpCommand.add_subcommand_formatting:5 of +msgid "" +"The default implementation is the prefix and the " +":attr:`Command.qualified_name` optionally followed by an En dash and the " +"command's :attr:`Command.short_doc`." +msgstr "" + +#: 36593ac4e6934eb69a5ebb891697a668 +#: discord.ext.commands.help.MinimalHelpCommand.add_subcommand_formatting:9 of +msgid "The command to show information of." +msgstr "" + +#: ab5863e544b64f7b87d3f984d5c394d4 +#: discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:1 of +msgid "Adds the formatting information on a command's aliases." +msgstr "" + +#: db40888f62d34d5aaba4d8576d27cbf4 +#: discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:5 of +msgid "" +"The default implementation is the :attr:`aliases_heading` bolded followed" +" by a comma separated list of aliases." +msgstr "" + +#: 57236ac0df9640058e87d6c99e2af3e6 +#: discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:8 of +msgid "This is not called if there are no aliases to format." +msgstr "" + +#: 9c56559714724ad8804be05c5188648a +#: discord.ext.commands.help.MinimalHelpCommand.add_aliases_formatting:11 of +msgid "A list of aliases to format." +msgstr "" + +#: discord.ext.commands.help.MinimalHelpCommand.add_command_formatting:1 +#: ef842cc9007e4bf4967e22877b29c9b3 of +msgid "A utility function to format commands and groups." +msgstr "" + +#: ../../ext/commands/api.rst:234 e087918d096d4026ae2a63986aa52427 +msgid "Paginator" +msgstr "" + +#: discord.ext.commands.help.Paginator:1 f4b68527e826465aa64533fd9b28a338 of +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "" + +#: 198c467dbad64882b4699ce2063dc523 discord.ext.commands.help.Paginator:7 of +msgid "Returns the total number of characters in the paginator." +msgstr "" + +#: 528352da5fe14198a01e6fef61626b57 discord.ext.commands.help.Paginator:11 of +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "" + +#: 457c0e8dfeaa4f79955f96a9ebe8f605 discord.ext.commands.help.Paginator:17 of +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "" + +#: discord.ext.commands.help.Paginator:23 ef009d5cd2d84fce81fd6b4f1782cb73 of +msgid "The maximum amount of codepoints allowed in a page." +msgstr "" + +#: 3bd1178464ce48e4bd3fd97e62c20268 discord.ext.commands.help.Paginator:31 of +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "" + +#: discord.ext.commands.help.Paginator.clear:1 f2fe538d81054b20bc5330048409a978 +#: of +msgid "Clears the paginator to have no pages." +msgstr "" + +#: a889ff4c34e14afb871b9789e307a078 +#: discord.ext.commands.help.Paginator.add_line:1 of +msgid "Adds a line to the current page." +msgstr "" + +#: 46f22c4041284ea785c2e00a9d318648 +#: discord.ext.commands.help.Paginator.add_line:3 of +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "" + +#: discord.ext.commands.help.Paginator.add_line:7 +#: f0def295b6fd46abb95f378c74fd8d1b of +msgid "The line to add." +msgstr "" + +#: 5c5acb52ec8841aa917643fcee21679e +#: discord.ext.commands.help.Paginator.add_line:10 of +msgid "Indicates if another empty line should be added." +msgstr "" + +#: 9b7fe0db24cc4c3ea3a7265e7dbe6695 +#: discord.ext.commands.help.Paginator.add_line:13 of +msgid "The line was too big for the current :attr:`max_size`." +msgstr "" + +#: c7e11f385ddf48978184752e980418d2 +#: discord.ext.commands.help.Paginator.close_page:1 of +msgid "Prematurely terminate a page." +msgstr "" + +#: a117c5b0ea474b4391c3709d34b040dc discord.ext.commands.Paginator.pages:1 of +msgid "Returns the rendered list of pages." +msgstr "" + +#: ../../ext/commands/api.rst:242 32059f72f8f54d26835e62adf60c9b0d +msgid "Enums" +msgstr "" + +#: ../../ext/commands/api.rst:247 e4a49416872d4ff8938b8ee02ce3e083 +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "" + +#: ../../ext/commands/api.rst:251 ede6efcacb2449b4bae045591438d616 +msgid "The default bucket operates on a global basis." +msgstr "" + +#: ../../ext/commands/api.rst:254 b2dfdaa7dd0d4c73af1575cec0eb30a2 +msgid "The user bucket operates on a per-user basis." +msgstr "" + +#: ../../ext/commands/api.rst:257 5b9ba9dc86144fd78ff0344a4e94c378 +msgid "The guild bucket operates on a per-guild basis." +msgstr "" + +#: ../../ext/commands/api.rst:260 50a3c2d61733481f855ca57326ac580d +msgid "The channel bucket operates on a per-channel basis." +msgstr "" + +#: ../../ext/commands/api.rst:263 e2627dc43a1646aaaaea2f01d1ee3f45 +msgid "The member bucket operates on a per-member basis." +msgstr "" + +#: ../../ext/commands/api.rst:266 42fba9ff10cd483cb92dc22f6fa9eb97 +msgid "The category bucket operates on a per-category basis." +msgstr "" + +#: ../../ext/commands/api.rst:269 2d885b860c264455889f5e4443d092f5 +msgid "The role bucket operates on a per-role basis." +msgstr "" + +#: ../../ext/commands/api.rst:277 3697effeb84b450380a6217332bf7ed3 +msgid "Checks" +msgstr "" + +#: 8f81b5584b3b4d4fa4663b09d276fa5a discord.ext.commands.core.check:1 of +msgid "" +"A decorator that adds a check to the :class:`.Command` or its subclasses." +" These checks could be accessed via :attr:`.Command.checks`." +msgstr "" + +#: 3c2d00f8a23041ec9335281080bf4edc discord.ext.commands.core.check:4 of +msgid "" +"These checks should be predicates that take in a single parameter taking " +"a :class:`.Context`. If the check returns a ``False``\\-like value then " +"during invocation a :exc:`.CheckFailure` exception is raised and sent to " +"the :func:`.on_command_error` event." +msgstr "" + +#: 4f5494b1e3554410800f085bfbffbf9c discord.ext.commands.core.check:9 of +msgid "" +"If an exception should be thrown in the predicate then it should be a " +"subclass of :exc:`.CommandError`. Any exception not subclassed from it " +"will be propagated while those subclassed will be sent to " +":func:`.on_command_error`." +msgstr "" + +#: 3d1a87c8862542469116e77863535058 discord.ext.commands.core.check:14 of +msgid "" +"A special attribute named ``predicate`` is bound to the value returned by" +" this decorator to retrieve the predicate passed to the decorator. This " +"allows the following introspection and chaining to be done:" +msgstr "" + +#: 9e93c35970eb43ecbdeb837dfcff73da discord.ext.commands.core.check:30 of +msgid "" +"The function returned by ``predicate`` is **always** a coroutine, even if" +" the original function was not a coroutine." +msgstr "" + +#: 5c3b4dcd8381445fabe4944d88c6c1e8 discord.ext.commands.core.check:33 of +msgid "The ``predicate`` attribute was added." +msgstr "" + +#: 0bcd317d5e9f4e9e91ca1b060403a727 discord.ext.commands.core.check:38 of +msgid "Creating a basic check to see if the command invoker is you." +msgstr "" + +#: dd48570384ea4a05aac75e08169fd0f8 discord.ext.commands.core.check:50 of +msgid "Transforming common checks into its own decorator:" +msgstr "" + +#: 02a2a5184ec947eaaf5460150b287c2c discord.ext.commands.core.check:65 of +msgid "The predicate to check if the command should be invoked." +msgstr "" + +#: 641aba9d9e1242ee81b39f49ea575ac7 9624b70cfbee4ca3af484bcf68e4e8ab +#: d1219c96be1d44378e6cc2e7e6537aaa +#: discord.ext.commands.core.bot_has_any_role:15 +#: discord.ext.commands.core.bot_has_guild_permissions:8 +#: discord.ext.commands.core.bot_has_permissions:9 +#: discord.ext.commands.core.bot_has_role:15 discord.ext.commands.core.check:68 +#: discord.ext.commands.core.check_any:21 discord.ext.commands.core.cooldown:27 +#: discord.ext.commands.core.dynamic_cooldown:29 +#: discord.ext.commands.core.guild_only:9 +#: discord.ext.commands.core.has_any_role:19 +#: discord.ext.commands.core.has_guild_permissions:11 +#: discord.ext.commands.core.has_permissions:18 +#: discord.ext.commands.core.has_role:25 discord.ext.commands.core.is_owner:10 +#: discord.ext.commands.core.max_concurrency:24 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: 649033939727472cbd4f8a6f09454810 discord.ext.commands.core.check_any:1 of +msgid "" +"A :func:`check` that is added that checks if any of the checks passed " +"will pass, i.e. using logical OR." +msgstr "" + +#: 5e230c760ea048268aa0056ae3f03f4e discord.ext.commands.core.check_any:4 of +msgid "" +"If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the " +"failure. It inherits from :exc:`.CheckFailure`." +msgstr "" + +#: discord.ext.commands.core.check_any:9 e990ee703a2549a897471de430a1da05 of +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "" + +#: 4a7b81eca1c3484fba8cf44b85ba6fdc discord.ext.commands.core.check_any:14 of +msgid "" +"An argument list of checks that have been decorated with the " +":func:`check` decorator." +msgstr "" + +#: 0a3c24e60414491ba64d3853fc673029 discord.ext.commands.core.check_any:18 of +msgid "" +"A check passed has not been decorated with the :func:`check` " +"decorator." +msgstr "" + +#: discord.ext.commands.core.check_any:23 e375d514f6dc4418ab45510e055e9919 of +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "" + +#: 81ea5857330741739c83ed3dc41dde4e discord.ext.commands.core.has_role:1 of +msgid "" +"A :func:`.check` that is added that checks if the member invoking the " +"command has the role specified via the name or ID specified." +msgstr "" + +#: ca512848d2bb4648a0bdb9addbf84a42 discord.ext.commands.core.has_role:4 of +msgid "" +"If a string is specified, you must give the exact name of the role, " +"including caps and spelling." +msgstr "" + +#: 393358caeb1f4b51b551ddb9b959abef discord.ext.commands.core.has_role:7 of +msgid "" +"If an integer is specified, you must give the exact snowflake ID of the " +"role." +msgstr "" + +#: 78c59b4d3b6349ba846bc6eb0826344b discord.ext.commands.core.has_role:9 of +msgid "" +"If the message is invoked in a private message context then the check " +"will return ``False``." +msgstr "" + +#: 8452153ef43340fba093ab84f4df5a56 discord.ext.commands.core.has_role:12 of +msgid "" +"This check raises one of two special exceptions, :exc:`.MissingRole` if " +"the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in " +"a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "" + +#: b03d3b707fb44779acdfb64a04c67537 discord.ext.commands.core.has_role:18 of +msgid "" +"Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic " +":exc:`.CheckFailure`" +msgstr "" + +#: 5cca5ffe93f440dd85df9dc52292045e discord.ext.commands.core.has_role:22 of +msgid "The name or ID of the role to check." +msgstr "" + +#: 72a7042c5b714f9a82015a2f50305e10 discord.ext.commands.core.has_permissions:1 +#: of +msgid "" +"A :func:`.check` that is added that checks if the member has all of the " +"permissions necessary." +msgstr "" + +#: b36c2e278059410ebb228e8102743974 discord.ext.commands.core.has_permissions:4 +#: of +msgid "" +"Note that this check operates on the current channel permissions, not the" +" guild wide permissions." +msgstr "" + +#: bf44a1aa790e4c76b7585d4744c49ade discord.ext.commands.core.has_permissions:7 +#: of +msgid "" +"The permissions passed in must be exactly like the properties shown under" +" :class:`.discord.Permissions`." +msgstr "" + +#: b65895b130444cd3b829c68a0599c012 +#: discord.ext.commands.core.has_permissions:10 of +msgid "" +"This check raises a special exception, :exc:`.MissingPermissions` that is" +" inherited from :exc:`.CheckFailure`." +msgstr "" + +#: 46edcac0a3e6496ea9e80f35ca24f270 +#: discord.ext.commands.core.has_permissions:13 of +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "" + +#: a4c609c072e54e3f84a6a00d7843380a +#: discord.ext.commands.core.has_permissions:16 of +msgid "An argument list of permissions to check for." +msgstr "" + +#: 93b6336c75374f4d84a059524c59dff7 +#: discord.ext.commands.core.has_guild_permissions:1 of +msgid "" +"Similar to :func:`.has_permissions`, but operates on guild wide " +"permissions instead of the current channel permissions." +msgstr "" + +#: 6b5b1ee1f906410abcadc2b79fc8dad4 +#: discord.ext.commands.core.has_guild_permissions:4 of +msgid "" +"If this check is called in a DM context, it will raise an exception, " +":exc:`.NoPrivateMessage`." +msgstr "" + +#: 7c5a4039354e4b71b6f01196a16a2740 discord.ext.commands.core.has_any_role:1 of +msgid "" +"A :func:`.check` that is added that checks if the member invoking the " +"command has **any** of the roles specified. This means that if they have " +"one out of the three roles specified, then this check will return `True`." +msgstr "" + +#: 6fc2639d3bfe40a3983045e6959bd1a5 discord.ext.commands.core.has_any_role:5 of +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "" + +#: 5da254078bdc405689d63c4229f9bf8e discord.ext.commands.core.has_any_role:7 of +msgid "" +"This check raises one of two special exceptions, :exc:`.MissingAnyRole` " +"if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is " +"used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "" + +#: 35ade017b87c4fe4b05145ddc2f2f201 discord.ext.commands.core.has_any_role:13 +#: of +msgid "" +"Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of " +"generic :exc:`.CheckFailure`" +msgstr "" + +#: a94c7b20e99a4d3d8b7b90aa74e6271c discord.ext.commands.core.has_any_role:17 +#: of +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "" + +#: ab9f894a18c44d9e9a4899949d10abcd discord.ext.commands.core.bot_has_role:1 of +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "" + +#: 8ef5c87638f942bf8deadf8ebbd596d5 discord.ext.commands.core.bot_has_role:4 of +msgid "" +"This check raises one of two special exceptions, :exc:`.BotMissingRole` " +"if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used" +" in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "" + +#: 94f6e1f2bbe042f7b4d946ecfa351b19 discord.ext.commands.core.bot_has_role:10 +#: of +msgid "" +"Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of " +"generic :exc:`.CheckFailure`" +msgstr "" + +#: 31696f0d12c64bcba9fe56a3e1a6e3c0 +#: discord.ext.commands.core.bot_has_permissions:1 of +msgid "" +"Similar to :func:`.has_permissions` except checks if the bot itself has " +"the permissions listed." +msgstr "" + +#: 649ad7d58605463aba43ee78c2fe92ca +#: discord.ext.commands.core.bot_has_permissions:4 of +msgid "" +"This check raises a special exception, :exc:`.BotMissingPermissions` that" +" is inherited from :exc:`.CheckFailure`." +msgstr "" + +#: 6e1dea28f1e242dcb89ac9f27aba156f +#: discord.ext.commands.core.bot_has_guild_permissions:1 of +msgid "" +"Similar to :func:`.has_guild_permissions`, but checks the bot members " +"guild permissions." +msgstr "" + +#: 504a86050e164f1cbc2ef3dfab214b6e +#: discord.ext.commands.core.bot_has_any_role:1 of +msgid "" +"Similar to :func:`.has_any_role` except checks if the bot itself has any " +"of the roles listed." +msgstr "" + +#: 85b5f7bf08514667a71efb8c49f1dcf8 +#: discord.ext.commands.core.bot_has_any_role:4 of +msgid "" +"This check raises one of two special exceptions, " +":exc:`.BotMissingAnyRole` if the bot is missing all roles, or " +":exc:`.NoPrivateMessage` if it is used in a private message. Both inherit" +" from :exc:`.CheckFailure`." +msgstr "" + +#: ac715be0bb8a4b75b4be55e531a54809 +#: discord.ext.commands.core.bot_has_any_role:10 of +msgid "" +"Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of " +"generic :exc:`.CheckFailure`." +msgstr "" + +#: discord.ext.commands.core.cooldown:1 e9dbbf29266342019191e100cc14b33e of +msgid "A decorator that adds a cooldown to a command" +msgstr "" + +#: a718cc3afe304175996a7f319afead4a discord.ext.commands.core.cooldown:3 +#: discord.ext.commands.core.dynamic_cooldown:8 of +msgid "" +"A cooldown allows a command to only be used a specific amount of times in" +" a specific time frame. These cooldowns can be based either on a per-" +"guild, per-channel, per-user, per-role or global basis. Denoted by the " +"third argument of ``type`` which must be of enum type " +":class:`.BucketType`." +msgstr "" + +#: 1a5e6e01b634462489aa2c9b72d75c8e discord.ext.commands.core.cooldown:9 +#: discord.ext.commands.core.dynamic_cooldown:14 of +msgid "" +"If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered " +"in :func:`.on_command_error` and the local error handler." +msgstr "" + +#: 4149b91a8b9b4f4ebcb203d68f34a4c2 discord.ext.commands.core.cooldown:12 +#: discord.ext.commands.core.dynamic_cooldown:17 of +msgid "A command can only have a single cooldown." +msgstr "" + +#: discord.ext.commands.core.cooldown:15 f571532f4e36472da1ad4894c98e70f2 of +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "" + +#: 3c9e0cce40ef4459b3b93b81f9112985 discord.ext.commands.core.cooldown:18 of +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "" + +#: 768f7ee582bb422f8b4f95c93a20d22f discord.ext.commands.core.cooldown:21 of +msgid "" +"The type of cooldown to have. If callable, should return a key for the " +"mapping. .. versionchanged:: 1.7 Callables are now supported for " +"custom bucket types." +msgstr "" + +#: 2dcd9030125648b1b302cd76f6a181e4 discord.ext.commands.core.cooldown:21 of +msgid "" +"The type of cooldown to have. If callable, should return a key for the " +"mapping." +msgstr "" + +#: 2f0d5a5a8e65496d84352249b0582557 discord.ext.commands.core.cooldown:23 of +msgid "Callables are now supported for custom bucket types." +msgstr "" + +#: 6094d0e28a9c4019a165562f2964df1c +#: discord.ext.commands.core.dynamic_cooldown:1 of +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "" + +#: 079f58510a774037972396f8a7e81087 +#: discord.ext.commands.core.dynamic_cooldown:3 of +msgid "" +"This differs from :func:`.cooldown` in that it takes a function that " +"accepts a single parameter of type :class:`.discord.Message` and must " +"return a :class:`.Cooldown` or ``None``. If ``None`` is returned then " +"that cooldown is effectively bypassed." +msgstr "" + +#: 672cd5f2ef144f6fbad1395b2f5c0b95 +#: discord.ext.commands.core.dynamic_cooldown:22 of +msgid "" +"A function that takes a message and returns a cooldown that will apply to" +" this invocation or ``None`` if the cooldown should be bypassed." +msgstr "" + +#: 593c7a5e5b1d4edda83dc41a14a274cd +#: discord.ext.commands.core.dynamic_cooldown:26 of +msgid "The type of cooldown to have." +msgstr "" + +#: discord.ext.commands.core.max_concurrency:1 fa44abacc86b4549a649aa49b5b6ac82 +#: of +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "" + +#: discord.ext.commands.core.max_concurrency:3 e94f4d66c33a4a8095e7fbf8d1a92968 +#: of +msgid "" +"This enables you to only allow a certain number of command invocations at" +" the same time, for example if a command takes too long or if only one " +"user can use it at a time. This differs from a cooldown in that there is " +"no set waiting period or token bucket -- only a set number of people can " +"run the command." +msgstr "" + +#: a11c0e11f70d46c9993cbeeadecc0979 +#: discord.ext.commands.core.max_concurrency:11 of +msgid "" +"The maximum number of invocations of this command that can be running at " +"the same time." +msgstr "" + +#: a412433be92548c09349f173e0f21567 +#: discord.ext.commands.core.max_concurrency:14 of +msgid "" +"The bucket that this concurrency is based on, e.g. ``BucketType.guild`` " +"would allow it to be used up to ``number`` times per guild." +msgstr "" + +#: 4606a73966d64b4a90a6cdd92f2e88aa +#: discord.ext.commands.core.max_concurrency:18 of +msgid "" +"Whether the command should wait for the queue to be over. If this is set " +"to ``False`` then instead of waiting until the command can run again, the" +" command raises :exc:`.MaxConcurrencyReached` to its error handler. If " +"this is set to ``True`` then the command waits until it can be executed." +msgstr "" + +#: discord.ext.commands.core.before_invoke:3 f5e756aa4e554e66a3257a5129c4ef4b +#: of +msgid "" +"This allows you to refer to one before invoke hook for several commands " +"that do not have to be within the same cog. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: discord.ext.commands.core.after_invoke:3 f74267b631a5439eb0c212f5feded4e0 of +msgid "" +"This allows you to refer to one after invoke hook for several commands " +"that do not have to be within the same cog. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: 6e1c6fc4c43844059652d7bf1c1d21d5 discord.ext.commands.core.guild_only:1 of +msgid "" +"A :func:`.check` that indicates this command must only be used in a guild" +" context only. Basically, no private messages are allowed when using the " +"command." +msgstr "" + +#: 51b7f083cf344183970934ed917e18fc discord.ext.commands.core.guild_only:5 of +msgid "" +"This check raises a special exception, :exc:`.NoPrivateMessage` that is " +"inherited from :exc:`.CheckFailure`." +msgstr "" + +#: 887a1905103842a688e15cf1b6ee6216 discord.ext.commands.core.dm_only:1 of +msgid "" +"A :func:`.check` that indicates this command must only be used in a DM " +"context. Only private messages are allowed when using the command." +msgstr "" + +#: 590b200bb7aa4c1080ac46793bed34f7 discord.ext.commands.core.dm_only:5 of +msgid "" +"This check raises a special exception, :exc:`.PrivateMessageOnly` that is" +" inherited from :exc:`.CheckFailure`. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: 887311557f434bafa7caf9d0257629cb discord.ext.commands.core.is_owner:1 of +msgid "" +"A :func:`.check` that checks if the person invoking this command is the " +"owner of the bot." +msgstr "" + +#: caeb6f7d083e49cab51f2b82ee02f9ee discord.ext.commands.core.is_owner:4 of +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "" + +#: c1106d33034b4444bbbcbf91375f5fcc discord.ext.commands.core.is_owner:6 of +msgid "" +"This check raises a special exception, :exc:`.NotOwner` that is derived " +"from :exc:`.CheckFailure`." +msgstr "" + +#: 1b423666d7694ad387cc429489d03abe discord.ext.commands.core.is_nsfw:1 of +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "" + +#: discord.ext.commands.core.is_nsfw:3 fba7938014474c98afff1432159e3000 of +msgid "" +"This check raises a special exception, :exc:`.NSFWChannelRequired` that " +"is derived from :exc:`.CheckFailure`. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "" + +#: 7588f10840c442aea15f191eac9ae20c discord.ext.commands.core.is_nsfw:10 of +msgid "" +"Raise :exc:`.NSFWChannelRequired` instead of generic " +":exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "" + +#: ../../ext/commands/api.rst:339 a1663529490742deab91241c83f67df8 +msgid "Cooldown" +msgstr "" + +#: discord.ext.commands.cooldowns.Cooldown:1 f693cf1699b84066aad9b40c50de702a +#: of +msgid "Represents a cooldown for a command." +msgstr "" + +#: a8e6375201964283838d7bebb18fd640 discord.ext.commands.cooldowns.Cooldown:5 +#: of +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "" + +#: 9922824a0cb34709ac41ec5fb31849e8 discord.ext.commands.cooldowns.Cooldown:11 +#: of +msgid "The length of the cooldown period in seconds." +msgstr "" + +#: d95a9dfdb80445d98472f84997e7fc9a +#: discord.ext.commands.cooldowns.Cooldown.get_tokens:1 of +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "" + +#: 94930446a5ce4847b1c683389d552a57 +#: discord.ext.commands.cooldowns.Cooldown.get_tokens:4 of +msgid "" +"The time in seconds since Unix epoch to calculate tokens at. If not " +"supplied then :func:`time.time()` is used." +msgstr "" + +#: 37c64c1f6261438891a797a6a574ac89 +#: discord.ext.commands.cooldowns.Cooldown.get_tokens:8 of +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "" + +#: discord.ext.commands.cooldowns.Cooldown.get_retry_after:1 +#: ebc6225bfbf4471ea8705b0813f0c2ca of +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "" + +#: discord.ext.commands.cooldowns.Cooldown.get_retry_after:4 +#: e762ab85aab44884be1d2bd769467a1e of +msgid "" +"The current time in seconds since Unix epoch. If not supplied, then " +":func:`time.time()` is used." +msgstr "" + +#: c6cf86ab00b84adbb67edd54f9fac287 +#: discord.ext.commands.cooldowns.Cooldown.get_retry_after:8 of +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "" + +#: discord.ext.commands.cooldowns.Cooldown.update_rate_limit:1 +#: e116ae67c1cd4dc285f47b3476ee09be of +msgid "Updates the cooldown rate limit." +msgstr "" + +#: discord.ext.commands.cooldowns.Cooldown.update_rate_limit:4 +#: fe6e90f08c66469ea5d5f007bd8444b2 of +msgid "" +"The time in seconds since Unix epoch to update the rate limit at. If not " +"supplied, then :func:`time.time()` is used." +msgstr "" + +#: 451125af000a49a4a8a75a4da1012f89 +#: discord.ext.commands.cooldowns.Cooldown.update_rate_limit:8 of +msgid "The retry-after time in seconds if rate limited." +msgstr "" + +#: 337ae2421ec549f8afa675182a9a8eab +#: discord.ext.commands.cooldowns.Cooldown.update_rate_limit:9 of +msgid "Optional[:class:`float`]" +msgstr "" + +#: c37c3555b58b45a7804186ddaefded8d +#: discord.ext.commands.cooldowns.Cooldown.reset:1 of +msgid "Reset the cooldown to its initial state." +msgstr "" + +#: b701fd3d4965415e8b93f8b7254478ba +#: discord.ext.commands.cooldowns.Cooldown.copy:1 of +msgid "Creates a copy of this cooldown." +msgstr "" + +#: 958e6160c5d34c63afa9f3c9414d1927 +#: discord.ext.commands.cooldowns.Cooldown.copy:3 of +msgid "A new instance of this cooldown." +msgstr "" + +#: dac0d660be9a427495f6cbf44647e95d +#: discord.ext.commands.cooldowns.Cooldown.copy:4 of +msgid ":class:`Cooldown`" +msgstr "" + +#: ../../ext/commands/api.rst:347 4942dd8081954a83978bfc1c1e8ae392 +msgid "Context" +msgstr "" + +#: 2a57cbae1bfa4447b0bc2a09e3f4f878 discord.ext.commands.context.Context:1 of +msgid "Represents the context in which a command is being invoked under." +msgstr "" + +#: 8032257bdf734e74b87c614d3237173a discord.ext.commands.context.Context:3 of +msgid "" +"This class contains a lot of metadata to help you understand more about " +"the invocation context. This class is not created manually and is instead" +" passed around to commands as the first parameter." +msgstr "" + +#: discord.ext.commands.context.Context:7 e0c4816bb06d4bd2a34987e6818214c2 of +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "" + +#: df100d3bf6124f60895f455a7f705170 discord.ext.commands.context.Context:11 of +msgid "The message that triggered the command being executed." +msgstr "" + +#: 6c79017c8b06446498c3190155904db2 discord.ext.commands.context.Context:13 +#: discord.ext.commands.context.Context.reply:9 +#: e1bc43a7b22b49f7bb9f4ba8e292f620 of +msgid ":class:`.Message`" +msgstr "" + +#: 6004a27f6c4540209779e671c47e15e3 discord.ext.commands.context.Context:17 of +msgid "The bot that contains the command being executed." +msgstr "" + +#: 7e00bcb1f585437696837bdd6b95547f discord.ext.commands.context.Context:19 of +msgid ":class:`.Bot`" +msgstr "" + +#: 708802b8cfb84541895d3b8f333bd922 discord.ext.commands.context.Context:23 of +msgid "" +"The list of transformed arguments that were passed into the command. If " +"this is accessed during the :func:`.on_command_error` event then this " +"list could be incomplete." +msgstr "" + +#: 1b9289e73d8242c7ba23ba6e1e013dde discord.ext.commands.context.Context:27 of +msgid ":class:`list`" +msgstr "" + +#: 44a48bb25cec474f9ee80bd4f8294ad8 discord.ext.commands.context.Context:31 of +msgid "" +"A dictionary of transformed arguments that were passed into the command. " +"Similar to :attr:`args`\\, if this is accessed in the " +":func:`.on_command_error` event then this dict could be incomplete." +msgstr "" + +#: d8ba277419e4447db3c9c9a0f367840b discord.ext.commands.context.Context:39 of +msgid "" +"The parameter that is currently being inspected and converted. This is " +"only of use for within converters." +msgstr "" + +#: 87b4052a2fbc4a99b8faca40162e548e discord.ext.commands.context.Context:44 of +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "" + +#: 35b629babfae442680af8ef790c77862 discord.ext.commands.context.Context:48 of +msgid "The prefix that was used to invoke the command." +msgstr "" + +#: 010aa10818794f5e9150e284ed0e5d53 discord.ext.commands.context.Context:54 of +msgid "The command that is being invoked currently." +msgstr "" + +#: 12b1f3d1af694899946545d0df78f3c7 discord.ext.commands.context.Context:60 of +msgid "" +"The command name that triggered this invocation. Useful for finding out " +"which alias called the command." +msgstr "" + +#: 2d3c6624565f41f183a437ef5099cc50 discord.ext.commands.context.Context:67 of +msgid "" +"The command names of the parents that triggered this invocation. Useful " +"for finding out which aliases called the command." +msgstr "" + +#: 23c2f761a59c4f3bb5fdb60ddbd0b33b discord.ext.commands.context.Context:70 of +msgid "" +"For example in commands ``?a b c test``, the invoked parents are ``['a', " +"'b', 'c']``." +msgstr "" + +#: 9205feec771a4b34b5d819ac90529941 discord.ext.commands.context.Context:74 +#: discord.ext.commands.errors.BotMissingPermissions:10 +#: discord.ext.commands.errors.MissingPermissions:10 +#: discord.ext.commands.errors.TooManyFlags:17 +#: discord.ext.commands.flags.Flag:17 of +msgid "List[:class:`str`]" +msgstr "" + +#: 5bb9c8cd59e1402ea7fcc3bc6401b70e discord.ext.commands.context.Context:78 of +msgid "" +"The subcommand that was invoked. If no valid subcommand was invoked then " +"this is equal to ``None``." +msgstr "" + +#: 269228517d874a2984924a4675897cfc discord.ext.commands.context.Context:85 of +msgid "" +"The string that was attempted to call a subcommand. This does not have to" +" point to a valid registered subcommand and could just point to a " +"nonsense string. If nothing was passed to attempt a call to a subcommand " +"then this is set to ``None``." +msgstr "" + +#: 7f645d52858449aa8a2efd0f66f235b4 discord.ext.commands.context.Context:94 of +msgid "" +"A boolean that indicates if the command failed to be parsed, checked, or " +"invoked." +msgstr "" + +#: 61fb3dc224d44b0783c3b04b7fea1ddd discord.abc.Messageable.history:1 of +msgid "" +"Returns an :class:`~discord.AsyncIterator` that enables receiving the " +"destination's message history." +msgstr "" + +#: 89afaf721f6643aab53272b5f881dec9 discord.abc.Messageable.history:3 of +msgid "" +"You must have :attr:`~discord.Permissions.read_message_history` " +"permissions to use this." +msgstr "" + +#: 51ebc16f2d4d414a99faa0ae6bcf7601 discord.abc.Messageable.history:6 of +msgid "" +"The number of messages to retrieve. If ``None``, retrieves every message " +"in the channel. Note, however, that this would make it a slow operation." +msgstr "" + +#: discord.abc.Messageable.history:11 eaf31d1fd11746ff859caaec64b90ca1 of +msgid "" +"Retrieve messages before this date or message. If a datetime is provided," +" it is recommended to use a UTC aware datetime. If the datetime is naive," +" it is assumed to be local time." +msgstr "" + +#: 57b793e910ca43faadaa044dc537fe87 discord.abc.Messageable.history:16 of +msgid "" +"Retrieve messages after this date or message. If a datetime is provided, " +"it is recommended to use a UTC aware datetime. If the datetime is naive, " +"it is assumed to be local time." +msgstr "" + +#: discord.abc.Messageable.history:21 f1761b940ade4a788c4e8430b8edaf05 of +msgid "" +"Retrieve messages around this date or message. If a datetime is provided," +" it is recommended to use a UTC aware datetime. If the datetime is naive," +" it is assumed to be local time. When using this argument, the maximum " +"limit is 101. Note that if the limit is an even number, then this will " +"return at most limit + 1 messages." +msgstr "" + +#: 53fb69e1b6954079bd5f2985c156bf5b discord.abc.Messageable.history:28 of +msgid "" +"If set to ``True``, return messages in oldest->newest order. Defaults to " +"``True`` if ``after`` is specified, otherwise ``False``." +msgstr "" + +#: 83b8d6805ef1420b87d97e31bc10efdf discord.abc.Messageable.history:32 of +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr "" + +#: 9510fd4d07914ac0a5d62b96ad673bbc discord.abc.Messageable.history:34 of +msgid "You do not have permissions to get channel message history." +msgstr "" + +#: 4355deb6fa9d4bdfb104c171c05cdabd discord.abc.Messageable.history:35 of +msgid "The request to get message history failed." +msgstr "" + +#: b2ded6cd5eef4474a03a58b81418e0fd discord.abc.Messageable.history:36 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr "" + +#: 1cad16da9e4a4a039e1c0be9c6789df6 discord.abc.Messageable.history:47 of +msgid "Flattening into a list: ::" +msgstr "" + +#: 36d6064ff8644307a143e9643a73d3b1 discord.abc.Messageable.typing:1 of +msgid "" +"Returns a context manager that allows you to type for an indefinite " +"period of time." +msgstr "" + +#: 186d34907d0f42f0be28a22e9c5d48f6 discord.abc.Messageable.typing:3 of +msgid "" +"This is useful for denoting long computations in your bot. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "" + +#: 03c747a982a54571968a3331429f7a20 discord.abc.Messageable.typing:9 of +msgid "" +"This is both a regular context manager and an async context manager. This" +" means that both ``with`` and ``async with`` work with this." +msgstr "" + +#: a48fc9f9ab9846158116f6d2cd0dee5b discord.abc.Messageable.typing:12 of +msgid "Example Usage: ::" +msgstr "" + +#: 0c5cca1e94144653989d617b781dc61a +#: discord.ext.commands.context.Context.invoke:3 of +msgid "Calls a command with the arguments given." +msgstr "" + +#: 3c31d3de30834b32ad5f1b70ba33922b +#: discord.ext.commands.context.Context.invoke:5 of +msgid "" +"This is useful if you want to just call the callback that a " +":class:`.Command` holds internally." +msgstr "" + +#: ba95aa92309b4ac1bdcb9344fcd4f787 +#: discord.ext.commands.context.Context.invoke:10 of +msgid "" +"This does not handle converters, checks, cooldowns, pre-invoke, or after-" +"invoke hooks in any matter. It calls the internal callback directly as-if" +" it was a regular function." +msgstr "" + +#: c027a3c528604f43b1436b5cfa0640c5 +#: discord.ext.commands.context.Context.invoke:14 of +msgid "" +"You must take care in passing the proper arguments when using this " +"function." +msgstr "" + +#: 721b6a15a25543cebe7d83e0ffac4465 +#: discord.ext.commands.context.Context.invoke:18 of +msgid "The command that is going to be called." +msgstr "" + +#: 99d44329ceb947579cd3bce2c2cf2aa6 +#: discord.ext.commands.context.Context.invoke:21 of +msgid "The arguments to use." +msgstr "" + +#: 63e53520af0043749b354138ad9211a1 +#: discord.ext.commands.context.Context.invoke:23 of +msgid "The keyword arguments to use." +msgstr "" + +#: 05c7de921b3f4b9c9df3814555cc5fd1 +#: discord.ext.commands.context.Context.invoke:25 of +msgid "The command argument to invoke is missing." +msgstr "" + +#: c7fe99da5385412abfc8c220108ef77c +#: discord.ext.commands.context.Context.reinvoke:3 of +msgid "Calls the command again." +msgstr "" + +#: 04d502dbc692422eaceb397b4b6ad11a +#: discord.ext.commands.context.Context.reinvoke:5 of +msgid "" +"This is similar to :meth:`~.Context.invoke` except that it bypasses " +"checks, cooldowns, and error handlers." +msgstr "" + +#: 1cdff60fefdc4f86b552f02bd81be288 +#: discord.ext.commands.context.Context.reinvoke:10 of +msgid "" +"If you want to bypass :exc:`.UserInputError` derived exceptions, it is " +"recommended to use the regular :meth:`~.Context.invoke` as it will work " +"more naturally. After all, this will end up using the old arguments the " +"user has used and will thus just fail again." +msgstr "" + +#: 075d311288124d9996697486ed5104e7 +#: discord.ext.commands.context.Context.reinvoke:17 of +msgid "Whether to call the before and after invoke hooks." +msgstr "" + +#: 203459acad88404ab30cd45897df3052 +#: discord.ext.commands.context.Context.reinvoke:20 of +msgid "" +"Whether to start the call chain from the very beginning or where we left " +"off (i.e. the command that caused the error). The default is to start " +"where we left off." +msgstr "" + +#: 2f6aa4215b0a4936bb6bacfb0d2b72af +#: discord.ext.commands.context.Context.reinvoke:25 of +msgid "The context to reinvoke is not valid." +msgstr "" + +#: discord.ext.commands.Context.valid:1 e537426c5a4243f3980cb0e87280d9c6 of +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "" + +#: 78c10dddc1524e24aa3ad63f554c414f discord.ext.commands.Context.clean_prefix:1 +#: of +msgid "" +"The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of " +"``<@id>``." +msgstr "" + +#: discord.ext.commands.Context.cog:1 fd2658097cc24f7db5314f08ca902c2c of +msgid "" +"Returns the cog associated with this context's command. None if it does " +"not exist." +msgstr "" + +#: ../../docstring 3b3b16de997e4e54877d2d70b173cfe2 +#: discord.ext.commands.Context.guild:1 of +msgid "" +"Returns the guild associated with this context's command. None if not " +"available." +msgstr "" + +#: ../../docstring 40a2b9fd266f44c69a5de1c7ee7ed5ff +#: discord.ext.commands.Context.channel:1 of +msgid "" +"Returns the channel associated with this context's command. Shorthand for" +" :attr:`.Message.channel`." +msgstr "" + +#: ../../docstring dd56849813db4c7299d6a6f2757ca297 +#: discord.ext.commands.Context.author:1 of +msgid "" +"Union[:class:`~discord.User`, :class:`.Member`]: Returns the author " +"associated with this context's command. Shorthand for " +":attr:`.Message.author`" +msgstr "" + +#: ../../docstring a3c47787a8d44d61ba8043b2dcfd58ab +#: discord.ext.commands.Context.me:1 of +msgid "" +"Union[:class:`.Member`, :class:`.ClientUser`]: Similar to " +":attr:`.Guild.me` except it may return the :class:`.ClientUser` in " +"private message message contexts, or when :meth:`Intents.guilds` is " +"absent." +msgstr "" + +#: a3ce24b8f1b54cb7bad801cd08901ef2 discord.ext.commands.Context.voice_client:1 +#: of +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "" + +#: b801313d2d364c268100784609b70816 +#: discord.ext.commands.context.Context.send_help:3 of +msgid "" +"Shows the help command for the specified entity if given. The entity can " +"be a command or a cog." +msgstr "" + +#: 45cea76cc29a4eb1b767fc7c489a81e5 +#: discord.ext.commands.context.Context.send_help:6 of +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "" + +#: discord.ext.commands.context.Context.send_help:9 +#: e49a64b80a234858915386f65ba97580 of +msgid "" +"If the entity is a string, then it looks up whether it's a :class:`Cog` " +"or a :class:`Command`." +msgstr "" + +#: 2d8cd3a7d42f4f7faf846ef88b04a2e5 +#: discord.ext.commands.context.Context.send_help:14 of +msgid "" +"Due to the way this function works, instead of returning something " +"similar to :meth:`~.commands.HelpCommand.command_not_found` this returns " +":class:`None` on bad input or no help command." +msgstr "" + +#: 13a046373ec84445af9a1a75a3426873 +#: discord.ext.commands.context.Context.send_help:18 of +msgid "The entity to show help for." +msgstr "" + +#: 68525271233843f89cac1a272fb172f9 +#: discord.ext.commands.context.Context.send_help:21 of +msgid "The result of the help command, if any." +msgstr "" + +#: 2f8ba1ce6e854c78bb794c8d818a52fc discord.abc.Messageable.can_send:1 of +msgid "" +"Returns a :class:`bool` indicating whether you have the permissions to " +"send the object(s)." +msgstr "" + +#: caa6e97a4c40413b818721112e133895 discord.abc.Messageable.can_send:3 of +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "" + +#: c9c33719233542fc9ab097fbef9946b7 discord.abc.Messageable.can_send:6 of +msgid "An invalid type has been passed." +msgstr "" + +#: 39474d78af2f441d818ba1b7ccdeccd0 discord.abc.Messageable.fetch_message:3 of +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "" + +#: 680a3c9536194ffd9086dc8f20207694 discord.abc.Messageable.fetch_message:6 of +msgid "The message ID to look for." +msgstr "" + +#: 3f227eccd4324618943ec343072814bf discord.abc.Messageable.fetch_message:9 of +msgid "The message asked for." +msgstr "" + +#: 2f6f2c77fe9f49d6af547d8b4d988847 discord.abc.Messageable.fetch_message:10 +#: discord.abc.Messageable.send:100 of +msgid ":class:`~discord.Message`" +msgstr "" + +#: cfef24f3237e4958816a5a01baa12172 discord.abc.Messageable.fetch_message:12 of +msgid "The specified message was not found." +msgstr "" + +#: 93b6c7c33ef84abfa0fba2952731ae42 discord.abc.Messageable.fetch_message:13 of +msgid "You do not have the permissions required to get a message." +msgstr "" + +#: 87417e86a48a426f9a94bb355a04bab5 discord.abc.Messageable.fetch_message:14 of +msgid "Retrieving the message failed." +msgstr "" + +#: c0f7203f91234dcf9b71d4aa08c2743e discord.abc.Messageable.pins:3 of +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "" + +#: 5897281b37544f1ab20f5339ce9ab3ed discord.abc.Messageable.pins:7 of +msgid "" +"Due to a limitation with the Discord API, the :class:`.Message` objects " +"returned by this method do not contain complete " +":attr:`.Message.reactions` data." +msgstr "" + +#: 7bad27e461a740d299b8c4bd148fd4e3 discord.abc.Messageable.pins:11 of +msgid "The messages that are currently pinned." +msgstr "" + +#: discord.abc.Messageable.pins:12 e8b1b5f758104e489149fdbb07deeafb of +msgid "List[:class:`~discord.Message`]" +msgstr "" + +#: 46fce97e3e2044b9812605b7371e03c5 discord.abc.Messageable.pins:14 of +msgid "Retrieving the pinned messages failed." +msgstr "" + +#: 666fc58fd984426b9fc3697183d98530 +#: discord.ext.commands.context.Context.reply:3 of +msgid "" +"A shortcut method to :meth:`.abc.Messageable.send` to reply to the " +":class:`.Message`." +msgstr "" + +#: 07908514f89544cd8fadb56e8b84c9ea discord.abc.Messageable.send:99 +#: discord.ext.commands.context.Context.reply:8 of +msgid "The message that was sent." +msgstr "" + +#: 44cfdba165a2496f86c393e4ff002312 discord.abc.Messageable.send:102 +#: discord.ext.commands.context.Context.reply:11 of +msgid "Sending the message failed." +msgstr "" + +#: 1baacf7f645a4a3e98b1d53ae7e82fa4 discord.abc.Messageable.send:103 +#: discord.ext.commands.context.Context.reply:12 of +msgid "You do not have the proper permissions to send the message." +msgstr "" + +#: dd5c11c9c7f04d8da2c0fcf683585cbd +#: discord.ext.commands.context.Context.reply:13 of +msgid "" +"The ``files`` list is not of the appropriate size, or you specified " +"both ``file`` and ``files``." +msgstr "" + +#: 233e5db05eb849cc92f9a5d67a3c1cb0 discord.abc.Messageable.send:3 of +msgid "Sends a message to the destination with the content given." +msgstr "" + +#: 401b162816dd4269983af2a0953407c2 discord.abc.Messageable.send:5 of +msgid "" +"The content must be a type that can convert to a string through " +"``str(content)``. If the content is set to ``None`` (the default), then " +"the ``embed`` parameter must be provided." +msgstr "" + +#: discord.abc.Messageable.send:9 fc1fb167cc7c4368938fbc342518f479 of +msgid "" +"To upload a single file, the ``file`` parameter should be used with a " +"single :class:`~discord.File` object. To upload multiple files, the " +"``files`` parameter should be used with a :class:`list` of " +":class:`~discord.File` objects. **Specifying both parameters will lead to" +" an exception**." +msgstr "" + +#: a67e87cd5c8d44fdb709013d4ff36929 discord.abc.Messageable.send:14 of +msgid "" +"To upload a single embed, the ``embed`` parameter should be used with a " +"single :class:`~discord.Embed` object. To upload multiple embeds, the " +"``embeds`` parameter should be used with a :class:`list` of " +":class:`~discord.Embed` objects. **Specifying both parameters will lead " +"to an exception**." +msgstr "" + +#: a59873e3c70548c5a2419384906c6096 discord.abc.Messageable.send:20 of +msgid "The content of the message to send." +msgstr "" + +#: c4b9c97ff6d14d1bb9ea552fb6386908 discord.abc.Messageable.send:23 of +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "" + +#: 75e503161f364fa5a593ca4873cec071 discord.abc.Messageable.send:26 of +msgid "The rich embed for the content." +msgstr "" + +#: ce1d5306f02a4b228235ba11840ae1da discord.abc.Messageable.send:29 of +msgid "The file to upload." +msgstr "" + +#: 657cdc05b2744bf99bd70c4f327ae6a6 discord.abc.Messageable.send:32 of +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "" + +#: 5dedce0b1ad64c5f98413e459d91b5d9 discord.abc.Messageable.send:35 of +msgid "" +"The nonce to use for sending this message. If the message was " +"successfully sent, then the message will have a nonce with this value." +msgstr "" + +#: 9e1547829fc343e9a1b366baf07c9b31 discord.abc.Messageable.send:39 of +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "" + +#: 4210f7e257dd4a96af7c38683f665d88 discord.abc.Messageable.send:39 of +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "" + +#: a634d6f1d80b454f9468298d1ddef3d6 discord.abc.Messageable.send:44 of +msgid "" +"If provided, the number of seconds to wait in the background before " +"deleting the message we just sent. If the deletion fails, then it is " +"silently ignored." +msgstr "" + +#: 8e05171456134fe3b53ec51198be752f discord.abc.Messageable.send:49 of +msgid "" +"Controls the mentions being processed in this message. If this is passed," +" then the object is merged with :attr:`~discord.Client.allowed_mentions`." +" The merging behaviour only overrides attributes that have been " +"explicitly passed to the object, otherwise it uses the attributes set in " +":attr:`~discord.Client.allowed_mentions`. If no object is passed at all " +"then the defaults given by :attr:`~discord.Client.allowed_mentions` are " +"used instead. .. versionadded:: 1.4" +msgstr "" + +#: 310aceb3d63846e8a3c93bc70dea8dbe discord.abc.Messageable.send:49 of +msgid "" +"Controls the mentions being processed in this message. If this is passed," +" then the object is merged with :attr:`~discord.Client.allowed_mentions`." +" The merging behaviour only overrides attributes that have been " +"explicitly passed to the object, otherwise it uses the attributes set in " +":attr:`~discord.Client.allowed_mentions`. If no object is passed at all " +"then the defaults given by :attr:`~discord.Client.allowed_mentions` are " +"used instead." +msgstr "" + +#: db923c5ea4f34a8ab38cd7fd07aa8f96 discord.abc.Messageable.send:59 of +msgid "" +"A reference to the :class:`~discord.Message` to which you are replying, " +"this can be created using :meth:`~discord.Message.to_reference` or passed" +" directly as a :class:`~discord.Message`. You can control whether this " +"mentions the author of the referenced message using the " +":attr:`~discord.AllowedMentions.replied_user` attribute of " +"``allowed_mentions`` or by setting ``mention_author``. .. versionadded::" +" 1.6" +msgstr "" + +#: discord.abc.Messageable.send:59 e35ba87b49314f98b33ba3227b02d2e0 of +msgid "" +"A reference to the :class:`~discord.Message` to which you are replying, " +"this can be created using :meth:`~discord.Message.to_reference` or passed" +" directly as a :class:`~discord.Message`. You can control whether this " +"mentions the author of the referenced message using the " +":attr:`~discord.AllowedMentions.replied_user` attribute of " +"``allowed_mentions`` or by setting ``mention_author``." +msgstr "" + +#: 1124d9197c524ad5b4c48f4a10574a39 discord.abc.Messageable.send:68 of +msgid "" +"If set, overrides the :attr:`~discord.AllowedMentions.replied_user` " +"attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "" + +#: discord.abc.Messageable.send:68 e5ea147dab2a42f9a952890a2690940b of +msgid "" +"If set, overrides the :attr:`~discord.AllowedMentions.replied_user` " +"attribute of ``allowed_mentions``." +msgstr "" + +#: 23c9f13fa7754faf8b1ab81a09dc4688 discord.abc.Messageable.send:73 of +msgid "A Discord UI View to add to the message." +msgstr "" + +#: 3ad8c72fa9314999b37d175de732583d discord.abc.Messageable.send:76 of +msgid "" +"A list of embeds to upload. Must be a maximum of 10. .. versionadded:: " +"2.0" +msgstr "" + +#: 1ee790371a76498aac1fa3332d7a306a discord.abc.Messageable.send:76 of +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "" + +#: c01e8fe8d227480387cf8df951050189 discord.abc.Messageable.send:81 of +msgid "" +"A list of stickers to upload. Must be a maximum of 3. .. versionadded:: " +"2.0" +msgstr "" + +#: 8e58570511c14eba84fb64fefa25077d discord.abc.Messageable.send:81 of +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "" + +#: 30c1bd01caa44c0693f3a649d876db8b discord.abc.Messageable.send:86 of +msgid "Whether to suppress embeds for the message." +msgstr "" + +#: 4a4c60e54808412797081f64973c2198 discord.abc.Messageable.send:89 of +msgid "" +"Whether to suppress push and desktop notifications for the message. .. " +"versionadded:: 2.4" +msgstr "" + +#: 8007bf6be7b3451e82b1bb3047cfe9cd discord.abc.Messageable.send:89 of +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "" + +#: discord.abc.Messageable.send:94 e4817933749f49f39bff7308c3294a2f of +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "" + +#: 29bd5583d5a045a7903518ab2ed3337d discord.abc.Messageable.send:94 of +msgid "The poll to send." +msgstr "" + +#: 92fd7f8bda8f4e59a6add001c2ae563e discord.abc.Messageable.send:104 of +msgid "" +"The ``files`` list is not of the appropriate size, you specified both" +" ``file`` and ``files``, or you specified both ``embed`` and " +"``embeds``, or the ``reference`` object is not a " +":class:`~discord.Message`, :class:`~discord.MessageReference` or " +":class:`~discord.PartialMessage`." +msgstr "" + +#: 7e981ac3a20345ffb61daf4c3509de80 discord.abc.Messageable.trigger_typing:3 of +msgid "Triggers a *typing* indicator to the destination." +msgstr "" + +#: b663ff6e5f654ad88fa62051626ab64d discord.abc.Messageable.trigger_typing:5 of +msgid "" +"*Typing* indicator will go away after 10 seconds, or after a message is " +"sent." +msgstr "" + +#: ../../ext/commands/api.rst:365 6129e2344292447d859948329c263665 +msgid "Converters" +msgstr "" + +#: 646dda467a2949ffb2a6f2b4d12b9da9 discord.ext.commands.converter.Converter:1 +#: of +msgid "" +"The base class of custom converters that require the :class:`.Context` to" +" be passed to be useful." +msgstr "" + +#: 736c189e21924d62b1bca6145d56aaa5 discord.ext.commands.converter.Converter:4 +#: of +msgid "" +"This allows you to implement converters that function similar to the " +"special cased ``discord`` classes." +msgstr "" + +#: b09220a3e54145b982ce91fd4028ad9c discord.ext.commands.converter.Converter:7 +#: of +msgid "" +"Classes that derive from this should override the " +":meth:`~.Converter.convert` method to do its conversion logic. This " +"method must be a :ref:`coroutine `." +msgstr "" + +#: 2b33792d59994112b5f8ae2f18cdd1e9 +#: discord.ext.commands.converter.CategoryChannelConverter.convert:3 +#: discord.ext.commands.converter.ColourConverter.convert:3 +#: discord.ext.commands.converter.Converter.convert:3 +#: discord.ext.commands.converter.EmojiConverter.convert:3 +#: discord.ext.commands.converter.ForumChannelConverter.convert:3 +#: discord.ext.commands.converter.GameConverter.convert:3 +#: discord.ext.commands.converter.GuildChannelConverter.convert:3 +#: discord.ext.commands.converter.GuildConverter.convert:3 +#: discord.ext.commands.converter.GuildStickerConverter.convert:3 +#: discord.ext.commands.converter.InviteConverter.convert:3 +#: discord.ext.commands.converter.MemberConverter.convert:3 +#: discord.ext.commands.converter.MessageConverter.convert:3 +#: discord.ext.commands.converter.ObjectConverter.convert:3 +#: discord.ext.commands.converter.PartialEmojiConverter.convert:3 +#: discord.ext.commands.converter.PartialMessageConverter.convert:3 +#: discord.ext.commands.converter.RoleConverter.convert:3 +#: discord.ext.commands.converter.StageChannelConverter.convert:3 +#: discord.ext.commands.converter.TextChannelConverter.convert:3 +#: discord.ext.commands.converter.ThreadConverter.convert:3 +#: discord.ext.commands.converter.UserConverter.convert:3 +#: discord.ext.commands.converter.VoiceChannelConverter.convert:3 +#: discord.ext.commands.converter.clean_content.convert:3 of +msgid "The method to override to do conversion logic." +msgstr "" + +#: 9d9f9443ace94d45aff747a2a2a753af +#: discord.ext.commands.converter.CategoryChannelConverter.convert:5 +#: discord.ext.commands.converter.ColourConverter.convert:5 +#: discord.ext.commands.converter.Converter.convert:5 +#: discord.ext.commands.converter.EmojiConverter.convert:5 +#: discord.ext.commands.converter.ForumChannelConverter.convert:5 +#: discord.ext.commands.converter.GameConverter.convert:5 +#: discord.ext.commands.converter.GuildChannelConverter.convert:5 +#: discord.ext.commands.converter.GuildConverter.convert:5 +#: discord.ext.commands.converter.GuildStickerConverter.convert:5 +#: discord.ext.commands.converter.InviteConverter.convert:5 +#: discord.ext.commands.converter.MemberConverter.convert:5 +#: discord.ext.commands.converter.MessageConverter.convert:5 +#: discord.ext.commands.converter.ObjectConverter.convert:5 +#: discord.ext.commands.converter.PartialEmojiConverter.convert:5 +#: discord.ext.commands.converter.PartialMessageConverter.convert:5 +#: discord.ext.commands.converter.RoleConverter.convert:5 +#: discord.ext.commands.converter.StageChannelConverter.convert:5 +#: discord.ext.commands.converter.TextChannelConverter.convert:5 +#: discord.ext.commands.converter.ThreadConverter.convert:5 +#: discord.ext.commands.converter.UserConverter.convert:5 +#: discord.ext.commands.converter.VoiceChannelConverter.convert:5 +#: discord.ext.commands.converter.clean_content.convert:5 of +msgid "" +"If an error is found while converting, it is recommended to raise a " +":exc:`.CommandError` derived exception as it will properly propagate to " +"the error handlers." +msgstr "" + +#: 8e1557a164a24dd18a9d3e3d7524d840 +#: discord.ext.commands.converter.CategoryChannelConverter.convert:10 +#: discord.ext.commands.converter.ColourConverter.convert:10 +#: discord.ext.commands.converter.Converter.convert:10 +#: discord.ext.commands.converter.EmojiConverter.convert:10 +#: discord.ext.commands.converter.ForumChannelConverter.convert:10 +#: discord.ext.commands.converter.GameConverter.convert:10 +#: discord.ext.commands.converter.GuildChannelConverter.convert:10 +#: discord.ext.commands.converter.GuildConverter.convert:10 +#: discord.ext.commands.converter.GuildStickerConverter.convert:10 +#: discord.ext.commands.converter.InviteConverter.convert:10 +#: discord.ext.commands.converter.MemberConverter.convert:10 +#: discord.ext.commands.converter.MessageConverter.convert:10 +#: discord.ext.commands.converter.ObjectConverter.convert:10 +#: discord.ext.commands.converter.PartialEmojiConverter.convert:10 +#: discord.ext.commands.converter.PartialMessageConverter.convert:10 +#: discord.ext.commands.converter.RoleConverter.convert:10 +#: discord.ext.commands.converter.StageChannelConverter.convert:10 +#: discord.ext.commands.converter.TextChannelConverter.convert:10 +#: discord.ext.commands.converter.ThreadConverter.convert:10 +#: discord.ext.commands.converter.UserConverter.convert:10 +#: discord.ext.commands.converter.VoiceChannelConverter.convert:10 +#: discord.ext.commands.converter.clean_content.convert:10 of +msgid "The invocation context that the argument is being used in." +msgstr "" + +#: 28f8742b518343c0a0621906d8c7afa4 +#: discord.ext.commands.converter.CategoryChannelConverter.convert:13 +#: discord.ext.commands.converter.ColourConverter.convert:13 +#: discord.ext.commands.converter.Converter.convert:13 +#: discord.ext.commands.converter.EmojiConverter.convert:13 +#: discord.ext.commands.converter.ForumChannelConverter.convert:13 +#: discord.ext.commands.converter.GameConverter.convert:13 +#: discord.ext.commands.converter.GuildChannelConverter.convert:13 +#: discord.ext.commands.converter.GuildConverter.convert:13 +#: discord.ext.commands.converter.GuildStickerConverter.convert:13 +#: discord.ext.commands.converter.InviteConverter.convert:13 +#: discord.ext.commands.converter.MemberConverter.convert:13 +#: discord.ext.commands.converter.MessageConverter.convert:13 +#: discord.ext.commands.converter.ObjectConverter.convert:13 +#: discord.ext.commands.converter.PartialEmojiConverter.convert:13 +#: discord.ext.commands.converter.PartialMessageConverter.convert:13 +#: discord.ext.commands.converter.RoleConverter.convert:13 +#: discord.ext.commands.converter.StageChannelConverter.convert:13 +#: discord.ext.commands.converter.TextChannelConverter.convert:13 +#: discord.ext.commands.converter.ThreadConverter.convert:13 +#: discord.ext.commands.converter.UserConverter.convert:13 +#: discord.ext.commands.converter.VoiceChannelConverter.convert:13 +#: discord.ext.commands.converter.clean_content.convert:13 of +msgid "The argument that is being converted." +msgstr "" + +#: 4d5298f99ee649468bc32cbb48858423 +#: discord.ext.commands.converter.CategoryChannelConverter.convert:16 +#: discord.ext.commands.converter.ColourConverter.convert:16 +#: discord.ext.commands.converter.Converter.convert:16 +#: discord.ext.commands.converter.EmojiConverter.convert:16 +#: discord.ext.commands.converter.ForumChannelConverter.convert:16 +#: discord.ext.commands.converter.GameConverter.convert:16 +#: discord.ext.commands.converter.GuildChannelConverter.convert:16 +#: discord.ext.commands.converter.GuildConverter.convert:16 +#: discord.ext.commands.converter.GuildStickerConverter.convert:16 +#: discord.ext.commands.converter.InviteConverter.convert:16 +#: discord.ext.commands.converter.MemberConverter.convert:16 +#: discord.ext.commands.converter.MessageConverter.convert:16 +#: discord.ext.commands.converter.ObjectConverter.convert:16 +#: discord.ext.commands.converter.PartialEmojiConverter.convert:16 +#: discord.ext.commands.converter.PartialMessageConverter.convert:16 +#: discord.ext.commands.converter.RoleConverter.convert:16 +#: discord.ext.commands.converter.StageChannelConverter.convert:16 +#: discord.ext.commands.converter.TextChannelConverter.convert:16 +#: discord.ext.commands.converter.ThreadConverter.convert:16 +#: discord.ext.commands.converter.UserConverter.convert:16 +#: discord.ext.commands.converter.VoiceChannelConverter.convert:16 +#: discord.ext.commands.converter.clean_content.convert:16 of +msgid "A generic exception occurred when converting the argument." +msgstr "" + +#: discord.ext.commands.converter.CategoryChannelConverter.convert:17 +#: discord.ext.commands.converter.ColourConverter.convert:17 +#: discord.ext.commands.converter.Converter.convert:17 +#: discord.ext.commands.converter.EmojiConverter.convert:17 +#: discord.ext.commands.converter.ForumChannelConverter.convert:17 +#: discord.ext.commands.converter.GameConverter.convert:17 +#: discord.ext.commands.converter.GuildChannelConverter.convert:17 +#: discord.ext.commands.converter.GuildConverter.convert:17 +#: discord.ext.commands.converter.GuildStickerConverter.convert:17 +#: discord.ext.commands.converter.InviteConverter.convert:17 +#: discord.ext.commands.converter.MemberConverter.convert:17 +#: discord.ext.commands.converter.MessageConverter.convert:17 +#: discord.ext.commands.converter.ObjectConverter.convert:17 +#: discord.ext.commands.converter.PartialEmojiConverter.convert:17 +#: discord.ext.commands.converter.PartialMessageConverter.convert:17 +#: discord.ext.commands.converter.RoleConverter.convert:17 +#: discord.ext.commands.converter.StageChannelConverter.convert:17 +#: discord.ext.commands.converter.TextChannelConverter.convert:17 +#: discord.ext.commands.converter.ThreadConverter.convert:17 +#: discord.ext.commands.converter.UserConverter.convert:17 +#: discord.ext.commands.converter.VoiceChannelConverter.convert:17 +#: discord.ext.commands.converter.clean_content.convert:17 +#: e5f482e53ee44aa2a15113dc1e1e41de of +msgid "The converter failed to convert the argument." +msgstr "" + +#: c601cdd1c13e49e1995ff8a62823953d +#: discord.ext.commands.converter.Converter.convert:19 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr "" + +#: 0e92c7b2d8f147b69988c8e009418b69 +#: discord.ext.commands.converter.ObjectConverter:1 of +msgid "Converts to a :class:`~discord.Object`." +msgstr "" + +#: 727747e448be408ca7871bda57d10222 +#: discord.ext.commands.converter.ObjectConverter:3 of +msgid "" +"The argument must follow the valid ID or mention formats (e.g. " +"`<@80088516616269824>`)." +msgstr "" + +#: 8908a3f472604dd1b17e67bf4cce1a98 +#: discord.ext.commands.converter.CategoryChannelConverter:6 +#: discord.ext.commands.converter.EmojiConverter:6 +#: discord.ext.commands.converter.ForumChannelConverter:6 +#: discord.ext.commands.converter.GuildChannelConverter:6 +#: discord.ext.commands.converter.GuildConverter:3 +#: discord.ext.commands.converter.GuildStickerConverter:6 +#: discord.ext.commands.converter.MemberConverter:6 +#: discord.ext.commands.converter.MessageConverter:5 +#: discord.ext.commands.converter.ObjectConverter:7 +#: discord.ext.commands.converter.RoleConverter:6 +#: discord.ext.commands.converter.StageChannelConverter:8 +#: discord.ext.commands.converter.TextChannelConverter:6 +#: discord.ext.commands.converter.ThreadConverter:5 +#: discord.ext.commands.converter.UserConverter:5 +#: discord.ext.commands.converter.VoiceChannelConverter:6 of +msgid "The lookup strategy is as follows (in order):" +msgstr "" + +#: 81bc7f6190a44dfdad07b950eef59a75 +#: discord.ext.commands.converter.CategoryChannelConverter:8 +#: discord.ext.commands.converter.EmojiConverter:8 +#: discord.ext.commands.converter.ForumChannelConverter:8 +#: discord.ext.commands.converter.GuildChannelConverter:8 +#: discord.ext.commands.converter.GuildConverter:5 +#: discord.ext.commands.converter.MemberConverter:8 +#: discord.ext.commands.converter.ObjectConverter:9 +#: discord.ext.commands.converter.RoleConverter:8 +#: discord.ext.commands.converter.StageChannelConverter:10 +#: discord.ext.commands.converter.TextChannelConverter:8 +#: discord.ext.commands.converter.ThreadConverter:7 +#: discord.ext.commands.converter.UserConverter:7 +#: discord.ext.commands.converter.VoiceChannelConverter:8 of +msgid "Lookup by ID." +msgstr "" + +#: afdd2a4d0f1840cfad2fbddc72f9d667 +#: discord.ext.commands.converter.ObjectConverter:10 of +msgid "Lookup by member, role, or channel mention." +msgstr "" + +#: 76bd5224cbd7404a82a7e1a65a2ba7e7 +#: discord.ext.commands.converter.ObjectConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr "" + +#: 742769f030bb4786b80dbd891805017e +#: discord.ext.commands.converter.MemberConverter:1 of +msgid "Converts to a :class:`~discord.Member`." +msgstr "" + +#: 437a2f3b32a94663b8596fabd903f9b8 +#: discord.ext.commands.converter.CategoryChannelConverter:3 +#: discord.ext.commands.converter.ForumChannelConverter:3 +#: discord.ext.commands.converter.GuildChannelConverter:3 +#: discord.ext.commands.converter.MemberConverter:3 +#: discord.ext.commands.converter.StageChannelConverter:5 +#: discord.ext.commands.converter.TextChannelConverter:3 +#: discord.ext.commands.converter.VoiceChannelConverter:3 of +msgid "" +"All lookups are via the local guild. If in a DM context, then the lookup " +"is done by the global cache." +msgstr "" + +#: 2f289a0b34b94af6b7788cb39ee945d5 +#: discord.ext.commands.converter.CategoryChannelConverter:9 +#: discord.ext.commands.converter.ForumChannelConverter:9 +#: discord.ext.commands.converter.GuildChannelConverter:9 +#: discord.ext.commands.converter.MemberConverter:9 +#: discord.ext.commands.converter.RoleConverter:9 +#: discord.ext.commands.converter.StageChannelConverter:11 +#: discord.ext.commands.converter.TextChannelConverter:9 +#: discord.ext.commands.converter.ThreadConverter:8 +#: discord.ext.commands.converter.UserConverter:8 +#: discord.ext.commands.converter.VoiceChannelConverter:9 of +msgid "Lookup by mention." +msgstr "" + +#: 0d48779a2f444266936b946c2049cc49 +#: discord.ext.commands.converter.MemberConverter:10 +#: discord.ext.commands.converter.UserConverter:9 of +msgid "Lookup by name#discrim" +msgstr "" + +#: cb41bf47efbc46a88f1fb382c99df3a8 +#: discord.ext.commands.converter.CategoryChannelConverter:10 +#: discord.ext.commands.converter.EmojiConverter:10 +#: discord.ext.commands.converter.ForumChannelConverter:10 +#: discord.ext.commands.converter.MemberConverter:11 +#: discord.ext.commands.converter.RoleConverter:10 +#: discord.ext.commands.converter.StageChannelConverter:12 +#: discord.ext.commands.converter.TextChannelConverter:10 +#: discord.ext.commands.converter.UserConverter:10 +#: discord.ext.commands.converter.VoiceChannelConverter:10 of +msgid "Lookup by name" +msgstr "" + +#: 24bf57716efe420eb9723a91f138c0b1 +#: discord.ext.commands.converter.MemberConverter:12 of +msgid "Lookup by nickname" +msgstr "" + +#: 4cf7868345df4c21a983edab41b1b0d9 +#: discord.ext.commands.converter.MemberConverter:14 of +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: 5e76492d4be6488b995dabf985898d99 +#: discord.ext.commands.converter.MemberConverter:17 of +msgid "" +"This converter now lazily fetches members from the gateway and HTTP APIs," +" optionally caching the result if :attr:`.MemberCacheFlags.joined` is " +"enabled." +msgstr "" + +#: 8d06743c4aaf4e759f2e26bec639327d +#: discord.ext.commands.converter.MemberConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr "" + +#: 412f9a2fbaf94008a49dc5d7e0485240 +#: discord.ext.commands.converter.UserConverter:1 of +msgid "Converts to a :class:`~discord.User`." +msgstr "" + +#: 974a011359994de7af1c409ba415d6b6 +#: discord.ext.commands.converter.UserConverter:3 of +msgid "All lookups are via the global user cache." +msgstr "" + +#: 9f3a5094c8b04217b84085255960e9cf +#: discord.ext.commands.converter.UserConverter:12 of +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: 3bee8790498d44a396c4c3893cf43aa0 +#: discord.ext.commands.converter.UserConverter:15 of +msgid "" +"This converter now lazily fetches users from the HTTP APIs if an ID is " +"passed, and it's not available in cache." +msgstr "" + +#: 18ca02cf99df44a79e77275819dfec4b +#: discord.ext.commands.converter.UserConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr "" + +#: 2a032d08244340bfa4dc4be912b4932c +#: discord.ext.commands.converter.MessageConverter:1 of +msgid "Converts to a :class:`discord.Message`." +msgstr "" + +#: bfabc815487148ad94863e1ac2f8634f +#: discord.ext.commands.converter.MessageConverter:7 of +msgid "" +"Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on " +"\"Copy ID\")" +msgstr "" + +#: d5024e9b27bc4c5bbac52cc20e642175 +#: discord.ext.commands.converter.MessageConverter:8 of +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "" + +#: 32e249ca19b74aa09bfbd282a5f9c214 +#: discord.ext.commands.converter.MessageConverter:9 of +msgid "Lookup by message URL" +msgstr "" + +#: 2abe1582bd5341d5bf25227a0bc0cb70 +#: discord.ext.commands.converter.MessageConverter:11 of +msgid "" +"Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or " +":exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: discord.ext.commands.converter.MessageConverter.convert:19 +#: f69d6050db19450db3668e8de5bcfd6f of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr "" + +#: ae67fe03686c4532bdc49de9b2070f16 +#: discord.ext.commands.converter.PartialMessageConverter:1 of +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "" + +#: d924d7ff07ac42489f5c1ce537fa7b03 +#: discord.ext.commands.converter.PartialMessageConverter:5 of +msgid "The creation strategy is as follows (in order):" +msgstr "" + +#: 85bdb7294d554afbabc5e1eb19bc11c3 +#: discord.ext.commands.converter.PartialMessageConverter:7 of +msgid "" +"By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy " +"ID\")" +msgstr "" + +#: 8a6d3c3213c644568d162301e0ce3fe6 +#: discord.ext.commands.converter.PartialMessageConverter:8 of +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "" + +#: 76454ca185ae45b1bd5cb22ac59e1909 +#: discord.ext.commands.converter.PartialMessageConverter:9 of +msgid "By message URL" +msgstr "" + +#: d9900b47bbf7468e8ac55515c260f4ca +#: discord.ext.commands.converter.PartialMessageConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr "" + +#: 2cfea3fb0254411fb0b6754daa3ce282 +#: discord.ext.commands.converter.GuildChannelConverter:1 of +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "" + +#: 34555afe05c64c22ba65fa8c467758fb +#: discord.ext.commands.converter.GuildChannelConverter:10 +#: discord.ext.commands.converter.ThreadConverter:9 of +msgid "Lookup by name." +msgstr "" + +#: 1196b93dbf1843f9871f472f0fdaa174 +#: discord.ext.commands.converter.GuildChannelConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr "" + +#: 6c443151bd9b488ea48551a8364f6d33 +#: discord.ext.commands.converter.TextChannelConverter:1 of +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "" + +#: 4ea1417c2e794a5e9f8755ffbf256902 +#: discord.ext.commands.converter.CategoryChannelConverter:12 +#: discord.ext.commands.converter.TextChannelConverter:12 +#: discord.ext.commands.converter.VoiceChannelConverter:12 of +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: 9acb0ac5aac34aa78efac7c13d4a1331 +#: discord.ext.commands.converter.TextChannelConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr "" + +#: 8ccdd108a7064b83aca8e4ab62fd305a +#: discord.ext.commands.converter.VoiceChannelConverter:1 of +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "" + +#: 2096498a3b5340ad90200fbfb19632ff +#: discord.ext.commands.converter.VoiceChannelConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr "" + +#: 20f52a031cab406dab1a51afced52432 +#: discord.ext.commands.converter.StageChannelConverter:1 of +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "" + +#: a929e67bd3d04b41a0dabcb8512f778a +#: discord.ext.commands.converter.StageChannelConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr "" + +#: a83f903ad1b34ad487fb7a4a03dc5b27 +#: discord.ext.commands.converter.CategoryChannelConverter:1 of +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "" + +#: 2623771c36a040caab45e6a378ce74e0 +#: discord.ext.commands.converter.CategoryChannelConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr "" + +#: 172a64bd6247459f9b5b43137b24c5bc +#: discord.ext.commands.converter.ForumChannelConverter:1 of +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "" + +#: 0de36a5f0a2b41c1b482db1e3a98f017 +#: discord.ext.commands.converter.ForumChannelConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr "" + +#: b779ed1feb044884a3e36e41011028ba +#: discord.ext.commands.converter.InviteConverter:1 of +msgid "Converts to a :class:`~discord.Invite`." +msgstr "" + +#: discord.ext.commands.converter.InviteConverter:3 +#: fce31dd1ef1141ddbd7d7502bcab8a40 of +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "" + +#: 77f0d4a2234e4ddf85645b0da2eac317 +#: discord.ext.commands.converter.InviteConverter:5 of +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: bc6ce10d467f4390ac66c2d5d0ca23ca +#: discord.ext.commands.converter.InviteConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr "" + +#: 6b7a74325383465caf8f1f009428b33b +#: discord.ext.commands.converter.GuildConverter:1 of +msgid "Converts to a :class:`~discord.Guild`." +msgstr "" + +#: discord.ext.commands.converter.GuildConverter:6 +#: fd52a4dd3bc0463c896b76e00dde8a04 of +msgid "" +"Lookup by name. (There is no disambiguation for Guilds with multiple " +"matching names)." +msgstr "" + +#: 39ab7f0b8b79427689539f5cef19c853 +#: discord.ext.commands.converter.GuildConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr "" + +#: 7c2bee80870241ea9d20251d3217dc89 +#: discord.ext.commands.converter.RoleConverter:1 of +msgid "Converts to a :class:`~discord.Role`." +msgstr "" + +#: 61d67e8d54b04821a028d8ab39e6c98a +#: discord.ext.commands.converter.RoleConverter:3 of +msgid "" +"All lookups are via the local guild. If in a DM context, the converter " +"raises :exc:`.NoPrivateMessage` exception." +msgstr "" + +#: 08b6aa908bb64dcea42329171a14f5c2 +#: discord.ext.commands.converter.RoleConverter:12 of +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: 45e204c610ee43ed950dcc22b1ecac5d +#: discord.ext.commands.converter.RoleConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr "" + +#: discord.ext.commands.converter.GameConverter:1 +#: f68137599ad141848aea62797bd0b069 of +msgid "Converts to :class:`~discord.Game`." +msgstr "" + +#: 7dbcdc21d90f448b9d1efd11e118645f +#: discord.ext.commands.converter.GameConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr "" + +#: discord.ext.commands.converter.ColourConverter:1 +#: f4e87a79041a451c801d3b6c0c26393c of +msgid "Converts to a :class:`~discord.Colour`." +msgstr "" + +#: bd1d31daa2fe4f7ba99d73ef48a4d20a +#: discord.ext.commands.converter.ColourConverter:3 of +msgid "Add an alias named ColorConverter" +msgstr "" + +#: 7e8e22e6115f449b8de9d66de21770ea +#: discord.ext.commands.converter.ColourConverter:6 of +msgid "The following formats are accepted:" +msgstr "" + +#: 2975fccff559428e99d149e8fd618d24 +#: discord.ext.commands.converter.ColourConverter:8 of +msgid "``0x``" +msgstr "" + +#: discord.ext.commands.converter.ColourConverter:9 +#: fd078f70f7a1418a97ecd2b2d1bd1084 of +msgid "``#``" +msgstr "" + +#: c278ff33210c42e2a6f842916a54f37c +#: discord.ext.commands.converter.ColourConverter:10 of +msgid "``0x#``" +msgstr "" + +#: d94660f553f04addb931a9aedf36734c +#: discord.ext.commands.converter.ColourConverter:11 of +msgid "``rgb(, , )``" +msgstr "" + +#: b6271dd49d2b4d08b612c7f8ad362306 +#: discord.ext.commands.converter.ColourConverter:12 of +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "" + +#: a3a933b8465e4e2aac98efb09e3792ff +#: discord.ext.commands.converter.ColourConverter:14 of +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "" + +#: d8013b78f4674f15b973ba505866fe32 +#: discord.ext.commands.converter.ColourConverter:16 of +msgid "" +"Like CSS, ```` can be either 0-255 or 0-100% and ```` can be" +" either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "" + +#: 0fe40cd0acb149afb058b8a72858a814 +#: discord.ext.commands.converter.ColourConverter:19 of +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: 678c8011b29a497caae665ce41559203 +#: discord.ext.commands.converter.ColourConverter:22 of +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "" + +#: 4633cc38f1954c9fb988d94796c138e8 +#: discord.ext.commands.converter.ColourConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr "" + +#: 5fe8c3fcda8a4f62af280c4d6ab3397a +#: discord.ext.commands.converter.EmojiConverter:1 of +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "" + +#: b0e0e871ab064289a32c66c40214fd9e +#: discord.ext.commands.converter.EmojiConverter:3 +#: discord.ext.commands.converter.GuildStickerConverter:3 of +msgid "" +"All lookups are done for the local guild first, if available. If that " +"lookup fails, then it checks the client's global cache." +msgstr "" + +#: b07065acb83c45b486baabdf63179771 +#: discord.ext.commands.converter.EmojiConverter:9 of +msgid "Lookup by extracting ID from the emoji." +msgstr "" + +#: c4d58c4ef0a6423da6a5e5b6eb0d6be9 +#: discord.ext.commands.converter.EmojiConverter:12 of +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "" + +#: 97ae2776efac4d31b3a7edda0567ced5 +#: discord.ext.commands.converter.EmojiConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr "" + +#: a6e1bbb66c634ba882343850f5060099 +#: discord.ext.commands.converter.PartialEmojiConverter:1 of +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "" + +#: 42c767df989a4c90b5d6b441a08d7df2 +#: discord.ext.commands.converter.PartialEmojiConverter:3 of +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "" + +#: 07638781992545e39720fcaf86933a79 +#: discord.ext.commands.converter.PartialEmojiConverter:5 of +msgid "" +"Raise :exc:`.PartialEmojiConversionFailure` instead of generic " +":exc:`.BadArgument`" +msgstr "" + +#: 1e63c68c4f734c36b2b9f66fcf8eece7 +#: discord.ext.commands.converter.PartialEmojiConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr "" + +#: ce9f0c4726d04dee89258a89147f1c84 +#: discord.ext.commands.converter.ThreadConverter:1 of +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "" + +#: 790b28ad496d47d8ba6e1763d3ee0ad1 +#: discord.ext.commands.converter.ThreadConverter:3 of +msgid "All lookups are via the local guild." +msgstr "" + +#: 9fd932f95910427882b21cd8049861b0 +#: discord.ext.commands.converter.ThreadConverter.convert:19 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr "" + +#: discord.ext.commands.converter.GuildStickerConverter:1 +#: e61870d441594fc08984aae236b3c1da of +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "" + +#: discord.ext.commands.converter.GuildStickerConverter:8 +#: f6697785b6e9452dbb7a1e3d2e50e6c1 of +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "" + +#: discord.ext.commands.converter.GuildStickerConverter.convert:19 +#: e659cc67ce3f47b49647be349da570fc of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr "" + +#: 26b5eaad74174413ad5f62f07c19e04e +#: discord.ext.commands.converter.clean_content:1 of +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "" + +#: 222b174f45a6491685b454e0ca7ac505 +#: discord.ext.commands.converter.clean_content:4 of +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "" + +#: cd20087853094691a18a67dfa932b7e7 +#: discord.ext.commands.converter.clean_content:8 of +msgid "Whether to clean channel mentions." +msgstr "" + +#: 3d7a283473d84c54be777d237ce9b0ea +#: discord.ext.commands.converter.clean_content:14 of +msgid "Whether to use nicknames when transforming mentions." +msgstr "" + +#: cad7e9188975461bab6898228488e849 +#: discord.ext.commands.converter.clean_content:20 of +msgid "Whether to also escape special markdown characters." +msgstr "" + +#: ac08fe2514bd4811b892d04d1aaee218 +#: discord.ext.commands.converter.clean_content:26 of +msgid "" +"Whether to also remove special markdown characters. This option is not " +"supported with ``escape_markdown``" +msgstr "" + +#: 693ad27846404f11a8c7dcd918b18571 discord.ext.commands.converter.Greedy:1 of +msgid "" +"A special converter that greedily consumes arguments until it can't. As a" +" consequence of this behaviour, most input errors are silently discarded," +" since it is used as an indicator of when to stop parsing." +msgstr "" + +#: 65c82b1d226e4019830193c66d7b71fb discord.ext.commands.converter.Greedy:5 of +msgid "" +"When a parser error is met the greedy converter stops converting, undoes " +"the internal string parsing routine, and continues parsing regularly." +msgstr "" + +#: discord.ext.commands.converter.Greedy:8 eea47d9f94744e9b917b9d652e66a173 of +msgid "For example, in the following code:" +msgstr "" + +#: 8d160e434a7f4a6ab63e90f02f9906c0 discord.ext.commands.converter.Greedy:16 of +msgid "" +"An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` " +"with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "" + +#: 4c73772c707a41a8bca1bc1d45003b4f discord.ext.commands.converter.Greedy:19 of +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "" + +#: b8cb297c3d1e4c6590617210c3e66258 +#: discord.ext.commands.converter.run_converters:3 of +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "" + +#: 76a8a32516ab489385eead76873a3063 +#: discord.ext.commands.converter.run_converters:5 of +msgid "This function does the same work that the library does under the hood." +msgstr "" + +#: 26189e1dade84d1695feb50b0f581be0 +#: discord.ext.commands.converter.run_converters:10 of +msgid "The invocation context to run the converters under." +msgstr "" + +#: 7d0cc1620d474215b3792c80011ca01c +#: discord.ext.commands.converter.run_converters:13 of +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "" + +#: 3b33275cf8bc4265ad0e767e85abf029 +#: discord.ext.commands.converter.run_converters:16 of +msgid "The argument to convert to." +msgstr "" + +#: 70f697fdaf9e420197d1e7b68bacadd4 +#: discord.ext.commands.converter.run_converters:19 of +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "" + +#: ca628a1c253c4ef09eba37baf33c7df8 +#: discord.ext.commands.converter.run_converters:22 of +msgid "The resulting conversion." +msgstr "" + +#: c0ae70d2dde14c5ba5ea30a0e9ffeca6 +#: discord.ext.commands.converter.run_converters:25 of +msgid "The converter failed to convert." +msgstr "" + +#: ../../ext/commands/api.rst:438 1e2749402e7849088fc29daf98fe46aa +msgid "Flag Converter" +msgstr "" + +#: discord.ext.commands.flags.FlagConverter:1 ebf35e6c9cc74dfea31978fe12ef8441 +#: of +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "" + +#: 9cd13fd1f8fa45eb928cd329ee9c0b6b discord.ext.commands.flags.FlagConverter:3 +#: of +msgid "" +"The flags are defined using :pep:`526` type annotations similar to the " +":mod:`dataclasses` Python module. For more information on how this " +"converter works, check the appropriate :ref:`documentation " +"`." +msgstr "" + +#: discord.ext.commands.flags.FlagConverter:12 e2322223de744e58bfd011edac6861bc +#: of +msgid "" +"Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it " +"to be, for example, constructed as a dict or a list of pairs. Note that " +"aliases are not shown." +msgstr "" + +#: d315ec7b9ea34fa69b128dc9251defe2 discord.ext.commands.flags.FlagConverter:18 +#: of +msgid "" +"A class parameter to toggle case insensitivity of the flag parsing. If " +"``True`` then flags are parsed in a case-insensitive manner. Defaults to " +"``False``." +msgstr "" + +#: 5cbcd48f9c6a4f3a946cb7f7d31ace3a discord.ext.commands.flags.FlagConverter:22 +#: of +msgid "" +"The prefix that all flags must be prefixed with. By default, there is no " +"prefix." +msgstr "" + +#: b288c7ce85f543eab6734e8f8af233ad discord.ext.commands.flags.FlagConverter:25 +#: of +msgid "" +"The delimiter that separates a flag's argument from the flag's name. By " +"default, this is ``:``." +msgstr "" + +#: b88d014bc2fe4314b4cfc532d2b4a53d +#: discord.ext.commands.flags.FlagConverter.get_flags:1 of +msgid "A mapping of flag name to flag object this converter has." +msgstr "" + +#: 71f48457a02b4dd6aed21b6792ad8e49 +#: discord.ext.commands.flags.FlagConverter.get_flags:4 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`str\\`\\, " +"\\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr "" + +#: c80c9b5b801e4b62a57251824320bace +#: discord.ext.commands.flags.FlagConverter.convert:3 of +msgid "The method that actually converters an argument to the flag mapping." +msgstr "" + +#: discord.ext.commands.flags.FlagConverter.convert:5 +#: eff33f3c050c4e038d09a2a9bdcc8efa of +msgid "The flag converter class." +msgstr "" + +#: 76a247e0e011404e9c25960694f09952 +#: discord.ext.commands.flags.FlagConverter.convert:11 of +msgid "The argument to convert from." +msgstr "" + +#: 818f36c5b4cb490aae6b80095dff1b0f +#: discord.ext.commands.flags.FlagConverter.convert:14 of +msgid "The flag converter instance with all flags parsed." +msgstr "" + +#: discord.ext.commands.flags.FlagConverter.convert:15 +#: e3615b359fd44a1fa52dd21c0878e6b9 of +msgid ":class:`FlagConverter`" +msgstr "" + +#: 7c7a50f6b7434393951a3c121025f908 +#: discord.ext.commands.flags.FlagConverter.convert:17 of +msgid "A flag related parsing error." +msgstr "" + +#: 5e97f1db6bc948e9afa242cbf64fbbc2 +#: discord.ext.commands.flags.FlagConverter.convert:18 of +msgid "A command related error." +msgstr "" + +#: 45e7a4bb9a3f4ced97c9384d6f7b1df7 discord.ext.commands.flags.Flag:1 of +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "" + +#: 56adcf6a1e7e4dba975c4276d615605d discord.ext.commands.flags.Flag:3 of +msgid "" +"The :func:`~discord.ext.commands.flag` function helps create these flag " +"objects, but it is not necessary to do so. These cannot be constructed " +"manually." +msgstr "" + +#: 0fd508502b6142d693389cf1f8ef3d9e discord.ext.commands.flags.Flag:9 of +msgid "The name of the flag." +msgstr "" + +#: 9fd4ac94309f4005a49ca8a1845f8f02 discord.ext.commands.flags.Flag:15 of +msgid "The aliases of the flag name." +msgstr "" + +#: ba6fbc2b3b924e09b4847d09c9265c3f discord.ext.commands.flags.Flag:21 of +msgid "The attribute in the class that corresponds to this flag." +msgstr "" + +#: 42585df2efea4584b149b8afaf0017da discord.ext.commands.flags.Flag:27 of +msgid "The default value of the flag, if available." +msgstr "" + +#: b755efe3ab02421ebf20dd845a99ba63 discord.ext.commands.flags.Flag:29 +#: discord.ext.commands.flags.Flag:35 of +msgid "Any" +msgstr "" + +#: discord.ext.commands.flags.Flag:33 e380378a9b484f9a97ae7cd84cef8d0b of +msgid "The underlying evaluated annotation of the flag." +msgstr "" + +#: 994cd4022bc249d6a975fc2c6d060ef9 discord.ext.commands.flags.Flag:39 of +msgid "" +"The maximum number of arguments the flag can accept. A negative value " +"indicates an unlimited amount of arguments." +msgstr "" + +#: 9bcc7c0f11ce42f68c9b4e442b1bd117 discord.ext.commands.flags.Flag:46 of +msgid "Whether multiple given values overrides the previous value." +msgstr "" + +#: 639c1e5bc42f4c34b75f3a1d21ac5f49 discord.ext.commands.Flag.required:1 of +msgid "Whether the flag is required." +msgstr "" + +#: discord.ext.commands.Flag.required:3 ed39444a85a541809414f9fb64c50751 of +msgid "A required flag has no default value." +msgstr "" + +#: 361b8bfe96934487a49fe9586d484562 discord.ext.commands.flags.flag:1 of +msgid "" +"Override default functionality and parameters of the underlying " +":class:`FlagConverter` class attributes." +msgstr "" + +#: 88f1bd71d9cf4cb09270bb77151b8277 discord.ext.commands.flags.flag:5 of +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "" + +#: a6bcfd20152f405a86597c00bed08f64 discord.ext.commands.flags.flag:8 of +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "" + +#: 80b9750cb95441f4b9f8e74b1ebc5ce1 discord.ext.commands.flags.flag:11 of +msgid "" +"The default parameter. This could be either a value or a callable that " +"takes :class:`Context` as its sole parameter. If not given then it " +"defaults to the default value given to the attribute." +msgstr "" + +#: 1301032487f84c4b983ffd5cc18cd69f discord.ext.commands.flags.flag:16 of +msgid "" +"The maximum number of arguments the flag can accept. A negative value " +"indicates an unlimited amount of arguments. The default value depends on " +"the annotation given." +msgstr "" + +#: 9d12431a536a41a196ca323965285a01 discord.ext.commands.flags.flag:21 of +msgid "" +"Whether multiple given values overrides the previous value. The default " +"value depends on the annotation given." +msgstr "" + +#: 739a359756dd4d95bcbb386fc201f629 discord.ext.commands.flags.flag:25 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr "" + +#: ../../ext/commands/api.rst:451 9f12f5caa99e439489d62576052ce36d +msgid "Exceptions" +msgstr "" + +#: de8054c7a89f40cc9c628cd008ed4c08 discord.ext.commands.errors.CommandError:1 +#: of +msgid "The base exception type for all command related errors." +msgstr "" + +#: discord.ext.commands.errors.CommandError:3 e3a7a1c8784e4b0391cba40b4b86bc07 +#: of +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "" + +#: 28c66f1b65264ecbb347abcc7549e452 discord.ext.commands.errors.CommandError:5 +#: of +msgid "" +"This exception and exceptions inherited from it are handled in a special " +"way as they are caught and passed into a special event from " +":class:`.Bot`\\, :func:`.on_command_error`." +msgstr "" + +#: 775da09f3b11433c96643d4bd6880d60 +#: discord.ext.commands.errors.ConversionError:1 of +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "" + +#: c1628f75af2142f1a0c57e3232afa38b +#: discord.ext.commands.errors.CommandNotFound:7 +#: discord.ext.commands.errors.ConversionError:3 +#: discord.ext.commands.errors.MaxConcurrencyReached:3 +#: discord.ext.commands.errors.UserInputError:4 of +msgid "This inherits from :exc:`CommandError`." +msgstr "" + +#: 5f5b0fab620946b7b1c3c64f32df513d +#: discord.ext.commands.errors.ConversionError:7 of +msgid "The converter that failed." +msgstr "" + +#: discord.ext.commands.errors.ConversionError:9 +#: fbe4c703f5a84067985a716e2052e9dc of +msgid ":class:`discord.ext.commands.Converter`" +msgstr "" + +#: 59bc4fd8d04e4eec9b78caa9b9dcee7d +#: discord.ext.commands.errors.CommandInvokeError:7 +#: discord.ext.commands.errors.ConversionError:13 of +msgid "" +"The original exception that was raised. You can also get this via the " +"``__cause__`` attribute." +msgstr "" + +#: a7b6a5d248994baa9f94e2df8562e74b +#: discord.ext.commands.errors.CommandInvokeError:10 +#: discord.ext.commands.errors.ConversionError:16 of +msgid ":exc:`Exception`" +msgstr "" + +#: 14e0a4d933194585bdad3d9f70b27f50 +#: discord.ext.commands.errors.MissingRequiredArgument:1 of +msgid "" +"Exception raised when parsing a command and a parameter that is required " +"is not encountered." +msgstr "" + +#: 165ab37adc89428e90ff4df2f0b80314 discord.ext.commands.errors.BadArgument:4 +#: discord.ext.commands.errors.BadLiteralArgument:4 +#: discord.ext.commands.errors.BadUnionArgument:4 +#: discord.ext.commands.errors.MissingRequiredArgument:4 +#: discord.ext.commands.errors.TooManyArguments:4 of +msgid "This inherits from :exc:`UserInputError`" +msgstr "" + +#: be98043a63b449a988de52a1b8df47d6 +#: discord.ext.commands.errors.MissingRequiredArgument:8 of +msgid "The argument that is missing." +msgstr "" + +#: ac767ecf96d642aeac005e669fd48fea +#: discord.ext.commands.errors.BadLiteralArgument:12 +#: discord.ext.commands.errors.BadUnionArgument:10 +#: discord.ext.commands.errors.MissingRequiredArgument:10 of +msgid ":class:`inspect.Parameter`" +msgstr "" + +#: 99f048e71ece48c19ae6f915f5dcee0e +#: discord.ext.commands.errors.ArgumentParsingError:1 of +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "" + +#: 197972f134b643a4bcc356605c847a4f +#: discord.ext.commands.errors.ArgumentParsingError:3 of +msgid "This inherits from :exc:`UserInputError`." +msgstr "" + +#: 19a270dea6a84fb4b01280520155719c +#: discord.ext.commands.errors.ArgumentParsingError:5 of +msgid "" +"There are child classes that implement more granular parsing errors for " +"i18n purposes." +msgstr "" + +#: c6f44123c0d8446688a895b2dab96f02 +#: discord.ext.commands.errors.UnexpectedQuoteError:1 of +msgid "" +"An exception raised when the parser encounters a quote mark inside a non-" +"quoted string." +msgstr "" + +#: 71e587d424b0450b9e26f4c4abad9240 +#: discord.ext.commands.errors.ExpectedClosingQuoteError:3 +#: discord.ext.commands.errors.InvalidEndOfQuotedStringError:4 +#: discord.ext.commands.errors.UnexpectedQuoteError:3 of +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "" + +#: 452b63fa0e564a6ab5468150309d0422 +#: discord.ext.commands.errors.UnexpectedQuoteError:7 of +msgid "The quote mark that was found inside the non-quoted string." +msgstr "" + +#: bc59593a8a08405c86a2f64f83389d40 +#: discord.ext.commands.errors.InvalidEndOfQuotedStringError:1 of +msgid "" +"An exception raised when a space is expected after the closing quote in a" +" string but a different character is found." +msgstr "" + +#: 1f7b37cfa2b44800b2a62fc6b846c7a0 +#: discord.ext.commands.errors.InvalidEndOfQuotedStringError:8 of +msgid "The character found instead of the expected string." +msgstr "" + +#: 302d5d1597f04b16a58937bcc46bebba +#: discord.ext.commands.errors.ExpectedClosingQuoteError:1 of +msgid "An exception raised when a quote character is expected but not found." +msgstr "" + +#: 8fcd7001236a4867b6766ec2fa48fa79 +#: discord.ext.commands.errors.ExpectedClosingQuoteError:7 of +msgid "The quote character expected." +msgstr "" + +#: 1407890e0c744feaa93d64791a0ceb59 discord.ext.commands.errors.BadArgument:1 +#: of +msgid "" +"Exception raised when a parsing or conversion failure is encountered on " +"an argument to pass into a command." +msgstr "" + +#: 3f5ca23837a541c288466959940aa1ab +#: discord.ext.commands.errors.BadUnionArgument:1 of +msgid "" +"Exception raised when a :data:`typing.Union` converter fails for all its " +"associated types." +msgstr "" + +#: bfb5f51c531d44e49c5ae964e7432593 +#: discord.ext.commands.errors.BadLiteralArgument:10 +#: discord.ext.commands.errors.BadUnionArgument:8 of +msgid "The parameter that failed being converted." +msgstr "" + +#: 885d985954d94bcfa4bd9e86dbbade74 +#: discord.ext.commands.errors.BadUnionArgument:14 of +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "" + +#: a50f4bbb339542909f100b744c975ce5 +#: discord.ext.commands.errors.BadUnionArgument:16 of +msgid "Tuple[Type, ``...``]" +msgstr "" + +#: discord.ext.commands.errors.BadLiteralArgument:22 +#: discord.ext.commands.errors.BadUnionArgument:20 +#: e17c717ab6224038bba2f6a093d6be4e of +msgid "A list of errors that were caught from failing the conversion." +msgstr "" + +#: 9cfe57c2d101467d87400e0d145a2c08 +#: discord.ext.commands.errors.BadLiteralArgument:24 +#: discord.ext.commands.errors.BadUnionArgument:22 of +msgid "List[:class:`CommandError`]" +msgstr "" + +#: d65d70b1132a4bbaa0c1c0e749f7278b +#: discord.ext.commands.errors.BadLiteralArgument:1 of +msgid "" +"Exception raised when a :data:`typing.Literal` converter fails for all " +"its associated values." +msgstr "" + +#: 94ba1f40a50347beb65c73d6279c02d7 +#: discord.ext.commands.errors.BadLiteralArgument:16 of +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "" + +#: discord.ext.commands.errors.BadLiteralArgument:18 +#: e563d171b653419bb5ebffa44618706e of +msgid "Tuple[Any, ``...``]" +msgstr "" + +#: 4accdd8a5de0454d836bcb7a601d2249 +#: discord.ext.commands.errors.PrivateMessageOnly:1 of +msgid "" +"Exception raised when an operation does not work outside of private " +"message contexts." +msgstr "" + +#: dbb9cfa723ce4683a0356453833bc9c9 +#: discord.ext.commands.errors.BotMissingAnyRole:4 +#: discord.ext.commands.errors.BotMissingPermissions:4 +#: discord.ext.commands.errors.BotMissingRole:3 +#: discord.ext.commands.errors.MissingAnyRole:4 +#: discord.ext.commands.errors.MissingPermissions:4 +#: discord.ext.commands.errors.MissingRole:3 +#: discord.ext.commands.errors.NoPrivateMessage:4 +#: discord.ext.commands.errors.NotOwner:3 +#: discord.ext.commands.errors.PrivateMessageOnly:4 of +msgid "This inherits from :exc:`CheckFailure`" +msgstr "" + +#: 96608eb292b948cbac864b16f33f6e05 +#: discord.ext.commands.errors.NoPrivateMessage:1 of +msgid "" +"Exception raised when an operation does not work in private message " +"contexts." +msgstr "" + +#: 03237b06950349af8b5877c3b0865393 discord.ext.commands.errors.CheckFailure:1 +#: of +msgid "" +"Exception raised when the predicates in :attr:`.Command.checks` have " +"failed." +msgstr "" + +#: 21521951fe3645c599f43042bd74017f discord.ext.commands.errors.CheckFailure:3 +#: discord.ext.commands.errors.CommandInvokeError:3 +#: discord.ext.commands.errors.CommandOnCooldown:3 +#: discord.ext.commands.errors.DisabledCommand:3 of +msgid "This inherits from :exc:`CommandError`" +msgstr "" + +#: discord.ext.commands.errors.CheckAnyFailure:1 +#: fdf4dcd227e148228e21d1948cb2676a of +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "" + +#: discord.ext.commands.errors.CheckAnyFailure:3 +#: discord.ext.commands.errors.NSFWChannelRequired:3 +#: e51c110bd8cb4f13b2f0dc5eb781134e of +msgid "This inherits from :exc:`CheckFailure`." +msgstr "" + +#: 4ff5239ba6b048c492f5196098784413 +#: discord.ext.commands.errors.CheckAnyFailure:9 of +msgid "A list of errors that were caught during execution." +msgstr "" + +#: discord.ext.commands.errors.CheckAnyFailure:11 +#: e6eef43806f64b449d040306cc418c6c of +msgid "List[:class:`CheckFailure`]" +msgstr "" + +#: 72280e5b7a9247358710cf411d55e66f +#: discord.ext.commands.errors.CheckAnyFailure:15 of +msgid "A list of check predicates that failed." +msgstr "" + +#: 9c95362945e54d249dfb1f53c01df57a +#: discord.ext.commands.errors.CheckAnyFailure:17 of +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "" + +#: 6d3a08a8839845fca30e84b8a4b306e2 +#: discord.ext.commands.errors.CommandNotFound:1 of +msgid "" +"Exception raised when a command is attempted to be invoked but no command" +" under that name is found." +msgstr "" + +#: 4e2fbed34f904d2f803049cdfda27e2a +#: discord.ext.commands.errors.CommandNotFound:4 of +msgid "" +"This is not raised for invalid subcommands, rather just the initial main " +"command that is attempted to be invoked." +msgstr "" + +#: 9f86073a221845eea8f7c391b8bdde72 +#: discord.ext.commands.errors.DisabledCommand:1 of +msgid "Exception raised when the command being invoked is disabled." +msgstr "" + +#: 7075cb5d93a942a884908449fe8754c4 +#: discord.ext.commands.errors.CommandInvokeError:1 of +msgid "Exception raised when the command being invoked raised an exception." +msgstr "" + +#: 52d12ffa6eeb41e2880bed34a9b4bbce +#: discord.ext.commands.errors.TooManyArguments:1 of +msgid "" +"Exception raised when the command was passed too many arguments and its " +":attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "" + +#: 7eed2c49b4da49a0b1895c22914b4e6c +#: discord.ext.commands.errors.UserInputError:1 of +msgid "" +"The base exception type for errors that involve errors regarding user " +"input." +msgstr "" + +#: 7e037c297ba143e4805430b144f46bbb +#: discord.ext.commands.errors.CommandOnCooldown:1 of +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "" + +#: discord.ext.commands.errors.CommandOnCooldown:7 +#: ee6083fa81ee4a83874d43c623041852 of +msgid "" +"A class with attributes ``rate`` and ``per`` similar to the " +":func:`.cooldown` decorator." +msgstr "" + +#: 2fd7d25d75794561a8a2d78143ec44fa +#: discord.ext.commands.errors.CommandOnCooldown:10 of +msgid ":class:`.Cooldown`" +msgstr "" + +#: 9fc0412e234440a194944d2b45b92fe2 +#: discord.ext.commands.errors.CommandOnCooldown:14 of +msgid "The type associated with the cooldown." +msgstr "" + +#: 3cb421159c314fb4adf5e168945317ab +#: discord.ext.commands.errors.CommandOnCooldown:16 of +msgid ":class:`BucketType`" +msgstr "" + +#: 8d2ea9a9b813410eac680f92f1b344f6 +#: discord.ext.commands.errors.CommandOnCooldown:20 of +msgid "The amount of seconds to wait before you can retry again." +msgstr "" + +#: discord.ext.commands.errors.MaxConcurrencyReached:1 +#: ec430b1c0a9549cfad0cdde9485394d1 of +msgid "" +"Exception raised when the command being invoked has reached its maximum " +"concurrency." +msgstr "" + +#: discord.ext.commands.errors.MaxConcurrencyReached:7 +#: f686fa32c5764e62b8b8bd10fc099503 of +msgid "The maximum number of concurrent invokers allowed." +msgstr "" + +#: 6410e5d4f966442db39c50132e842e6c +#: discord.ext.commands.errors.MaxConcurrencyReached:13 of +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "" + +#: 8adb54bbebb74a19816d333471507599 +#: discord.ext.commands.errors.MaxConcurrencyReached:15 of +msgid ":class:`.BucketType`" +msgstr "" + +#: ca0fc435abf24248bb4790c352b24822 discord.ext.commands.errors.NotOwner:1 of +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "" + +#: c9e4459728ac4cc6a27b56a6defdcf14 +#: discord.ext.commands.errors.MessageNotFound:1 of +msgid "Exception raised when the message provided was not found in the channel." +msgstr "" + +#: cafbbd3a5904470cbe7817bdf3a418bf +#: discord.ext.commands.errors.BadBoolArgument:3 +#: discord.ext.commands.errors.BadColourArgument:3 +#: discord.ext.commands.errors.BadInviteArgument:3 +#: discord.ext.commands.errors.ChannelNotFound:3 +#: discord.ext.commands.errors.ChannelNotReadable:4 +#: discord.ext.commands.errors.EmojiNotFound:3 +#: discord.ext.commands.errors.GuildNotFound:3 +#: discord.ext.commands.errors.GuildStickerNotFound:3 +#: discord.ext.commands.errors.MemberNotFound:4 +#: discord.ext.commands.errors.MessageNotFound:3 +#: discord.ext.commands.errors.PartialEmojiConversionFailure:4 +#: discord.ext.commands.errors.RoleNotFound:3 +#: discord.ext.commands.errors.ThreadNotFound:3 +#: discord.ext.commands.errors.UserNotFound:4 of +msgid "This inherits from :exc:`BadArgument`" +msgstr "" + +#: 919b214d6e7b45fca37e039161972510 +#: discord.ext.commands.errors.MessageNotFound:9 of +msgid "The message supplied by the caller that was not found" +msgstr "" + +#: 53aa71c340174d789b45ad3fd9260c8d +#: discord.ext.commands.errors.MemberNotFound:1 of +msgid "" +"Exception raised when the member provided was not found in the bot's " +"cache." +msgstr "" + +#: 7bb3f96e98cb461d8a0c7ce08b497005 +#: discord.ext.commands.errors.MemberNotFound:10 of +msgid "The member supplied by the caller that was not found" +msgstr "" + +#: discord.ext.commands.errors.GuildNotFound:1 ea7ce6eabe934c1fad2a3c1988cebefa +#: of +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "" + +#: 01925b74dade4730a5bcefbfa11d69dd discord.ext.commands.errors.GuildNotFound:9 +#: of +msgid "The guild supplied by the called that was not found" +msgstr "" + +#: c7c19e3d8c6c4893b5f8b6e9867b16f5 discord.ext.commands.errors.UserNotFound:1 +#: of +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "" + +#: 0f431bc819e74530801b87d339ec4ada discord.ext.commands.errors.UserNotFound:10 +#: of +msgid "The user supplied by the caller that was not found" +msgstr "" + +#: discord.ext.commands.errors.ChannelNotFound:1 +#: f6b591356c80408192207ebfbb8ebfe1 of +msgid "Exception raised when the bot can not find the channel." +msgstr "" + +#: 5921dca926fc477e9a91b1d7696c508f +#: discord.ext.commands.errors.ChannelNotFound:9 of +msgid "The channel supplied by the caller that was not found" +msgstr "" + +#: 9fa4e65ac9814e07b00cfd524eeca282 +#: discord.ext.commands.errors.ChannelNotReadable:1 of +msgid "" +"Exception raised when the bot does not have permission to read messages " +"in the channel." +msgstr "" + +#: a38283be5eb8407680d6eb16d0fee127 +#: discord.ext.commands.errors.ChannelNotReadable:10 of +msgid "The channel supplied by the caller that was not readable" +msgstr "" + +#: 36582766bdc1404fba01c7e34a7d291e +#: discord.ext.commands.errors.ChannelNotReadable:12 of +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "" + +#: 43052fa171924f6998cf30a4408d2d3c +#: discord.ext.commands.errors.ThreadNotFound:1 of +msgid "Exception raised when the bot can not find the thread." +msgstr "" + +#: 1dea63fd1bb84e059219eae7f81fd40d +#: discord.ext.commands.errors.ThreadNotFound:9 of +msgid "The thread supplied by the caller that was not found" +msgstr "" + +#: 05e8d50caba64b2184fbf03a21b366f9 +#: discord.ext.commands.errors.BadColourArgument:1 of +msgid "Exception raised when the colour is not valid." +msgstr "" + +#: 66b2891f3b2f48619d3d939bc9bcee37 +#: discord.ext.commands.errors.BadColourArgument:9 of +msgid "The colour supplied by the caller that was not valid" +msgstr "" + +#: discord.ext.commands.errors.RoleNotFound:1 ed0be8e86e444e4e8c850511fc8e48c5 +#: of +msgid "Exception raised when the bot can not find the role." +msgstr "" + +#: 11a097db73c2490497cb7b7429cb7d40 discord.ext.commands.errors.RoleNotFound:9 +#: of +msgid "The role supplied by the caller that was not found" +msgstr "" + +#: cd6ec6e8aa3345b5968634efb9fdbfb6 +#: discord.ext.commands.errors.BadInviteArgument:1 of +msgid "Exception raised when the invite is invalid or expired." +msgstr "" + +#: dbfafb99d9924e058e9f4085e51b4e85 discord.ext.commands.errors.EmojiNotFound:1 +#: of +msgid "Exception raised when the bot can not find the emoji." +msgstr "" + +#: 79c87d5b8880428daee4e62770468475 discord.ext.commands.errors.EmojiNotFound:9 +#: of +msgid "The emoji supplied by the caller that was not found" +msgstr "" + +#: af44f3e759ca46c0ae4b639c71e28277 +#: discord.ext.commands.errors.PartialEmojiConversionFailure:1 of +msgid "" +"Exception raised when the emoji provided does not match the correct " +"format." +msgstr "" + +#: 6c1c2df0327a441bbe1c96a50ba39d49 +#: discord.ext.commands.errors.PartialEmojiConversionFailure:10 of +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "" + +#: discord.ext.commands.errors.GuildStickerNotFound:1 +#: e43d76903cc749c78ccd3ca87300ebfa of +msgid "Exception raised when the bot can not find the sticker." +msgstr "" + +#: cb6279d6304e4c069ce89ef37082f364 +#: discord.ext.commands.errors.GuildStickerNotFound:9 of +msgid "The sticker supplied by the caller that was not found" +msgstr "" + +#: a815b02a064846279adc4f121cc2b07f +#: discord.ext.commands.errors.BadBoolArgument:1 of +msgid "Exception raised when a boolean argument was not convertible." +msgstr "" + +#: 2982ea51ace646d8bd8c2fd76d7f9b7c +#: discord.ext.commands.errors.BadBoolArgument:9 of +msgid "" +"The boolean argument supplied by the caller that is not in the predefined" +" list" +msgstr "" + +#: discord.ext.commands.errors.MissingPermissions:1 +#: f7c1e866271f4a6284aee4c6711c27d7 of +msgid "" +"Exception raised when the command invoker lacks permissions to run a " +"command." +msgstr "" + +#: 5ada78a870114789b2525dfb7258f469 +#: discord.ext.commands.errors.BotMissingPermissions:8 +#: discord.ext.commands.errors.MissingPermissions:8 of +msgid "The required permissions that are missing." +msgstr "" + +#: 17bbff2318d343aab6e8abf37d823b00 +#: discord.ext.commands.errors.BotMissingPermissions:1 of +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "" + +#: 69a44f4ec8e946ff86107a955100b0dc discord.ext.commands.errors.MissingRole:1 +#: of +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "" + +#: 464aff7b7d6d4edab7c5c9f1d4b1390e +#: discord.ext.commands.errors.BotMissingRole:9 +#: discord.ext.commands.errors.MissingRole:9 of +msgid "" +"The required role that is missing. This is the parameter passed to " +":func:`~.commands.has_role`." +msgstr "" + +#: 495f17f5f821498f8c20b5437e881ce8 +#: discord.ext.commands.errors.BotMissingRole:12 +#: discord.ext.commands.errors.MissingRole:12 of +msgid "Union[:class:`str`, :class:`int`]" +msgstr "" + +#: discord.ext.commands.errors.BotMissingRole:1 +#: ea6884c4574d42039894bd8eda813eeb of +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "" + +#: b51a7d82c7ae471c9e0927f161646b60 +#: discord.ext.commands.errors.MissingAnyRole:1 of +msgid "" +"Exception raised when the command invoker lacks any of the roles " +"specified to run a command." +msgstr "" + +#: bb3b944232324fe987d73d6df70499d0 +#: discord.ext.commands.errors.MissingAnyRole:10 of +msgid "" +"The roles that the invoker is missing. These are the parameters passed to" +" :func:`~.commands.has_any_role`." +msgstr "" + +#: 4800e7486dea463f9b780669f880aaee +#: discord.ext.commands.errors.BotMissingAnyRole:13 +#: discord.ext.commands.errors.MissingAnyRole:13 of +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "" + +#: 91d8c29682f5470aaaa17fdd9e54ab7c +#: discord.ext.commands.errors.BotMissingAnyRole:1 of +msgid "" +"Exception raised when the bot's member lacks any of the roles specified " +"to run a command." +msgstr "" + +#: 03dff160785045fdafd78a2d6dc2ec69 +#: discord.ext.commands.errors.BotMissingAnyRole:10 of +msgid "" +"The roles that the bot's member is missing. These are the parameters " +"passed to :func:`~.commands.has_any_role`." +msgstr "" + +#: cdd99306574d42fbbdca211e043eb448 +#: discord.ext.commands.errors.NSFWChannelRequired:1 of +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "" + +#: 03481b87678a41ab8f534266523f04e3 +#: discord.ext.commands.errors.NSFWChannelRequired:8 of +msgid "The channel that does not have NSFW enabled." +msgstr "" + +#: 397619a293eb4871a61c96cf18d8966c discord.ext.commands.errors.FlagError:1 of +msgid "The base exception type for all flag parsing related errors." +msgstr "" + +#: 4df1966bd2224d8097e05de8614e0ae1 discord.ext.commands.errors.FlagError:3 of +msgid "This inherits from :exc:`BadArgument`." +msgstr "" + +#: ad1d800328234006bb717f17aaabd02d +#: discord.ext.commands.errors.BadFlagArgument:1 of +msgid "An exception raised when a flag failed to convert a value." +msgstr "" + +#: 91798d8c295b4e5a95ae65bc3717c132 +#: discord.ext.commands.errors.BadFlagArgument:3 +#: discord.ext.commands.errors.MissingFlagArgument:3 +#: discord.ext.commands.errors.MissingRequiredFlag:3 of +msgid "This inherits from :exc:`FlagError`" +msgstr "" + +#: 3169dff1f74241f4b187f32057eee70a +#: discord.ext.commands.errors.BadFlagArgument:9 of +msgid "The flag that failed to convert." +msgstr "" + +#: 53f5b703a1754889b6501bc0bb13587d +#: discord.ext.commands.errors.BadFlagArgument:11 +#: discord.ext.commands.errors.MissingFlagArgument:11 +#: discord.ext.commands.errors.MissingRequiredFlag:11 +#: discord.ext.commands.errors.TooManyFlags:11 of +msgid ":class:`~discord.ext.commands.Flag`" +msgstr "" + +#: b2fb965c7465456f99ebd4e00ac3e6b8 +#: discord.ext.commands.errors.MissingFlagArgument:1 of +msgid "An exception raised when a flag did not get a value." +msgstr "" + +#: 51f3abb37a5e4994ba35116283b2a5b8 +#: discord.ext.commands.errors.MissingFlagArgument:9 of +msgid "The flag that did not get a value." +msgstr "" + +#: 41386efb30914b5190300d75a9841355 discord.ext.commands.errors.TooManyFlags:1 +#: of +msgid "An exception raised when a flag has received too many values." +msgstr "" + +#: 81da839939ae4de9ac168277a8d393b3 discord.ext.commands.errors.TooManyFlags:3 +#: of +msgid "This inherits from :exc:`FlagError`." +msgstr "" + +#: 22360e7ef17a43adafe941a0a99e9cea discord.ext.commands.errors.TooManyFlags:9 +#: of +msgid "The flag that received too many values." +msgstr "" + +#: 523b4c7b89a04e638cbca478a4086147 discord.ext.commands.errors.TooManyFlags:15 +#: of +msgid "The values that were passed." +msgstr "" + +#: 8ecebd5789744f5eb9e9fb41f2de3718 +#: discord.ext.commands.errors.MissingRequiredFlag:1 of +msgid "An exception raised when a required flag was not given." +msgstr "" + +#: 7eb7e6f4248e4600b9881f494de33f37 +#: discord.ext.commands.errors.MissingRequiredFlag:9 of +msgid "The required flag that was not found." +msgstr "" + +#: 33517164ec0241ad90d22b66b1bb6681 +#: discord.ext.commands.errors.CommandRegistrationError:1 of +msgid "" +"An exception raised when the command can't be added because the name is " +"already taken by a different command." +msgstr "" + +#: discord.ext.commands.errors.CommandRegistrationError:4 +#: f911fded08e14082a434d5415f49a0dc of +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "" + +#: 944edaa1770a49f09cb67186b72b3a46 +#: discord.ext.commands.errors.CommandRegistrationError:10 of +msgid "The command name that had the error." +msgstr "" + +#: c786264a69f741c6abc2b1c87a4bc9e7 +#: discord.ext.commands.errors.CommandRegistrationError:16 of +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "" + +#: ../../ext/commands/api.rst:602 6437c792279b485bbe8d09df28d18259 +msgid "Exception Hierarchy" +msgstr "" + +#: ../../ext/commands/api.rst:606 6ccb8ffddb0e484bb2823ab2ad38df23 +msgid ":exc:`~.DiscordException`" +msgstr "" + +#: ../../ext/commands/api.rst:607 cd13764d1d8e432d8b1e3d0814e8d01b +msgid ":exc:`~.commands.CommandError`" +msgstr "" + +#: ../../ext/commands/api.rst:608 74dd05d87e664d6d95e7431e0ee657a2 +msgid ":exc:`~.commands.ConversionError`" +msgstr "" + +#: ../../ext/commands/api.rst:609 cbd5441518e842c8996b1af7e7cf5866 +msgid ":exc:`~.commands.UserInputError`" +msgstr "" + +#: ../../ext/commands/api.rst:610 c4e241c2d65c47c081ffdb98d83bbdb9 +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:611 549d8f93ab4d49b2be2af635f5b5ded4 +msgid ":exc:`~.commands.TooManyArguments`" +msgstr "" + +#: ../../ext/commands/api.rst:612 34fa2ca053544615886a62a4fb15cf9e +msgid ":exc:`~.commands.BadArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:613 ebd1c85ac0d74fc3911f70d08f47aee6 +msgid ":exc:`~.commands.MessageNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:614 8be5ab33fc4d4805b9734dd6928d9f94 +msgid ":exc:`~.commands.MemberNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:615 e06c986c07094e5f9040701bd22424c3 +msgid ":exc:`~.commands.GuildNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:616 3412788dfaee4dfdb7576009a8022e55 +msgid ":exc:`~.commands.UserNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:617 7c3e338f517048f490ef9d7352a5816b +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:618 69dbf7468138443090ca532bdab29342 +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr "" + +#: ../../ext/commands/api.rst:619 9c632c188fe549fab83e69867e4cf5dc +msgid ":exc:`~.commands.BadColourArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:620 1a5d869d53b249ee83a6a9608181feed +msgid ":exc:`~.commands.RoleNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:621 0e23b8b1753a47ad914a2f634f6c5a75 +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:622 babc7a4834054c0f9eb01b4b1d64f977 +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:623 ba36f4798dc34d64909d605b8a5e4453 +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:624 63a02aeefdfb490780e73b6dd9505648 +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr "" + +#: ../../ext/commands/api.rst:625 97151bf22296452995480b2439c01b71 +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:626 6d98af8c8f5c4c40a636637cd679c60c +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:627 ff88bf5dee89418ab1bde698b5775a02 +msgid ":exc:`~.commands.FlagError`" +msgstr "" + +#: ../../ext/commands/api.rst:628 4b6702835e9b4ff1bcf15e4941476819 +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:629 d7c035251022468babb19b341ea436d7 +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:630 575fc9981e8c4eb2910b06750b0fe36b +msgid ":exc:`~.commands.TooManyFlags`" +msgstr "" + +#: ../../ext/commands/api.rst:631 b2cce1d15e71410daf628c5a6949389b +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr "" + +#: ../../ext/commands/api.rst:632 df0b5dadeb2d44b081075aa573d01645 +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:633 40e1173bc57148c28a96e7f0c80d4d4b +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr "" + +#: ../../ext/commands/api.rst:634 1e2d26f63bb043598bc4fa594a8ed65a +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr "" + +#: ../../ext/commands/api.rst:635 0656fa3277af4737ac155d5dc3703193 +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr "" + +#: ../../ext/commands/api.rst:636 89c3c6a87e704b4c841cb49e5cafa5a8 +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr "" + +#: ../../ext/commands/api.rst:637 cd335c6f525a4e138f33c86be1ad5095 +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr "" + +#: ../../ext/commands/api.rst:638 a55562b662b14287a9e30435a4f8c089 +msgid ":exc:`~.commands.CommandNotFound`" +msgstr "" + +#: ../../ext/commands/api.rst:639 ee6a30f21bcb4f52a759629ba49d364e +msgid ":exc:`~.commands.CheckFailure`" +msgstr "" + +#: ../../ext/commands/api.rst:640 e14ded2b37b246ef958773e93c8ea54d +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr "" + +#: ../../ext/commands/api.rst:641 73f3258338c7444bbabffe3ce0af02a7 +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr "" + +#: ../../ext/commands/api.rst:642 13a9d422fc834b23b13c7bf1b953553c +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr "" + +#: ../../ext/commands/api.rst:643 4f5ddbcf5b784ba1839dd46e27544112 +msgid ":exc:`~.commands.NotOwner`" +msgstr "" + +#: ../../ext/commands/api.rst:644 79464ba408914e209155f9a2243560f7 +msgid ":exc:`~.commands.MissingPermissions`" +msgstr "" + +#: ../../ext/commands/api.rst:645 c8f7675df7144f5b87ea91e17c7150d3 +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr "" + +#: ../../ext/commands/api.rst:646 59945fa448824e41ac8f29db56a05d04 +msgid ":exc:`~.commands.MissingRole`" +msgstr "" + +#: ../../ext/commands/api.rst:647 0d9c0b55f5da4d48a7004cce52e8da65 +msgid ":exc:`~.commands.BotMissingRole`" +msgstr "" + +#: ../../ext/commands/api.rst:648 8f8fc0b9b36d4cd5b9bfe96cab259c5a +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr "" + +#: ../../ext/commands/api.rst:649 31f9f0b532764958b15cd54bc163cfcd +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr "" + +#: ../../ext/commands/api.rst:650 cb8ef5fc8c4f408587530e3e3dcfd8eb +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr "" + +#: ../../ext/commands/api.rst:651 1b82bb11d2024000bcd5bdd37bec251e +msgid ":exc:`~.commands.DisabledCommand`" +msgstr "" + +#: ../../ext/commands/api.rst:652 27d038f16ba1480eb3090e9ffdf4e253 +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr "" + +#: ../../ext/commands/api.rst:653 f967b74af44a404586c877989e180bbd +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr "" + +#: ../../ext/commands/api.rst:654 03326f2822f449699fb31a42b80628b5 +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr "" + +#: ../../ext/commands/api.rst:655 68e91270b3d54214bc9d6f05ae905658 +msgid ":exc:`~.ClientException`" +msgstr "" + +#: ../../ext/commands/api.rst:656 74f572dd584c4c7ead229a600acc880a +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/en/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..0e19955008 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,227 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../ext/commands/cogs.rst:6 7d8a14b96db54be3b73b46f1162cfd57 +msgid "Cogs" +msgstr "" + +#: ../../ext/commands/cogs.rst:8 41ef7d4debd54cab990dc125e2249c37 +msgid "" +"There comes a point in your bot's development when you want to organize a" +" collection of commands, listeners, and some state into one class. Cogs " +"allow you to do just that." +msgstr "" + +#: ../../ext/commands/cogs.rst:10 a21a197b686a425399b4053a1c4a3b4c +msgid "The gist:" +msgstr "" + +#: ../../ext/commands/cogs.rst:12 761abe3bf60b4bde8cbdf6e3a55371be +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "" + +#: ../../ext/commands/cogs.rst:13 9517e5384a094f2bb1f431d2ce713ac6 +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "" + +#: ../../ext/commands/cogs.rst:14 d21d904b74eb4e89a2a4bc661d4aa00f +msgid "" +"Every listener is marked with the :meth:`.commands.Cog.listener` " +"decorator." +msgstr "" + +#: ../../ext/commands/cogs.rst:15 e5459a2d0d6141ec8145b7ae5ba0600a +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "" + +#: ../../ext/commands/cogs.rst:16 eccd2572c7734092aacd752b4ae72121 +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "" + +#: ../../ext/commands/cogs.rst:18 df03b5d52bef49abb33191f556a196d9 +msgid "" +"It should be noted that cogs are typically used alongside with " +":ref:`ext_commands_extensions`." +msgstr "" + +#: ../../ext/commands/cogs.rst:21 9629417da52d4bc796c9f2d88f7c0d3c +msgid "Quick Example" +msgstr "" + +#: ../../ext/commands/cogs.rst:23 398644f0c77043148ebb2331f2c41a7d +msgid "" +"This example cog defines a ``Greetings`` category for your commands, with" +" a single :ref:`command ` named ``hello`` as well " +"as a listener to listen to an :ref:`Event `." +msgstr "" + +#: ../../ext/commands/cogs.rst:48 af7c9e23c9e34661b1978bd16b5f5d2f +msgid "A couple of technical notes to take into consideration:" +msgstr "" + +#: ../../ext/commands/cogs.rst:50 14622d4a1d7947e89b70882dd6311e88 +msgid "" +"All listeners must be explicitly marked via decorator, " +":meth:`~.commands.Cog.listener`." +msgstr "" + +#: ../../ext/commands/cogs.rst:51 a3e030dda8d84fdfa20ac0b4745d3e66 +msgid "" +"The name of the cog is automatically derived from the class name but can " +"be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "" + +#: ../../ext/commands/cogs.rst:52 b8b3cbe90a264a4c9664e7c55cfa033a +msgid "" +"All commands must now take a ``self`` parameter to allow usage of " +"instance attributes that can be used to maintain state." +msgstr "" + +#: ../../ext/commands/cogs.rst:55 b00093673c624886896e49bc30d483b5 +msgid "Cog Registration" +msgstr "" + +#: ../../ext/commands/cogs.rst:57 f133cc0e24b84376a8df459fb95e2fd2 +msgid "" +"Once you have defined your cogs, you need to tell the bot to register the" +" cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` " +"method." +msgstr "" + +#: ../../ext/commands/cogs.rst:63 d6b663ac6c7e419780246e450051d1e4 +msgid "" +"This binds the cog to the bot, adding all commands and listeners to the " +"bot automatically." +msgstr "" + +#: ../../ext/commands/cogs.rst:65 72947ff2c39045ffa1c88c854d997425 +msgid "" +"Note that we reference the cog by name, which we can override through " +":ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the " +"cog eventually, we would have to do the following." +msgstr "" + +#: ../../ext/commands/cogs.rst:72 21e748a565fa4b6a8a19aab2ccdad567 +msgid "Using Cogs" +msgstr "" + +#: ../../ext/commands/cogs.rst:74 c33c65a090bb4cbba543946df62d8476 +msgid "" +"Just as we remove a cog by its name, we can also retrieve it by its name " +"as well. This allows us to use a cog as an inter-command communication " +"protocol to share data. For example:" +msgstr "" + +#: ../../ext/commands/cogs.rst:109 70ea1a2dc1f346e89f071b2a90daaa32 +msgid "Special Methods" +msgstr "" + +#: ../../ext/commands/cogs.rst:111 0be6debcef404ea9b950aeec82453364 +msgid "" +"As cogs get more complicated and have more commands, there comes a point " +"where we want to customise the behaviour of the entire cog or bot." +msgstr "" + +#: ../../ext/commands/cogs.rst:113 24f5ccc99dff448bb57383ef47388bce +msgid "They are as follows:" +msgstr "" + +#: ../../ext/commands/cogs.rst:115 97d2ba6b9f644b8a8b1aac7ade166884 +msgid ":meth:`.Cog.cog_unload`" +msgstr "" + +#: ../../ext/commands/cogs.rst:116 992d9055babe4cd68c4802a454c0db57 +msgid ":meth:`.Cog.cog_check`" +msgstr "" + +#: ../../ext/commands/cogs.rst:117 22aae6ba82674e9f94b09e54c316c361 +msgid ":meth:`.Cog.cog_command_error`" +msgstr "" + +#: ../../ext/commands/cogs.rst:118 b6a3156bc70c4a838f82be1bac2547f3 +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr "" + +#: ../../ext/commands/cogs.rst:119 738a0b7b5afa4502a5cd77c2799c6038 +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr "" + +#: ../../ext/commands/cogs.rst:120 ac053e4b875445869f0d9a05f14ab202 +msgid ":meth:`.Cog.bot_check`" +msgstr "" + +#: ../../ext/commands/cogs.rst:121 a82d2f25c8ec483c92e1692eff3ddb39 +msgid ":meth:`.Cog.bot_check_once`" +msgstr "" + +#: ../../ext/commands/cogs.rst:123 4ce764c85d3742cf82684298f7449053 +msgid "You can visit the reference to get more detail." +msgstr "" + +#: ../../ext/commands/cogs.rst:128 9d637060d66d49269866dc85d2f23b23 +msgid "Meta Options" +msgstr "" + +#: ../../ext/commands/cogs.rst:130 e314efe09f51456391d68e01b94401e2 +msgid "" +"At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, " +"which can take various options to customise some of the behaviour. To do " +"this, we pass keyword arguments to the class definition line. For " +"example, to change the cog name we can pass the ``name`` keyword argument" +" as follows:" +msgstr "" + +#: ../../ext/commands/cogs.rst:137 05e7b018ab0a462390d00af651d0cd48 +msgid "" +"To see more options that you can set, see the documentation of " +":class:`.commands.CogMeta`." +msgstr "" + +#: ../../ext/commands/cogs.rst:140 53da0f2c6f8c48a8a2b89433afd2a30e +msgid "Inspection" +msgstr "" + +#: ../../ext/commands/cogs.rst:142 0dc059e5db484b5e8b1b035f344b7519 +msgid "" +"Since cogs ultimately are classes, we have some tools to help us inspect " +"certain properties of the cog." +msgstr "" + +#: ../../ext/commands/cogs.rst:145 4913166c56a642bb8af6e4b6fb34e4c2 +msgid "" +"To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`." +" ::" +msgstr "" + +#: ../../ext/commands/cogs.rst:151 6f5856e1cd37414cb4b8f70288f9bed1 +msgid "" +"If we want to get the subcommands as well, we can use the " +":meth:`.Cog.walk_commands` generator. ::" +msgstr "" + +#: ../../ext/commands/cogs.rst:155 81b21d41a70242aa98044d585561b21c +msgid "" +"To do the same with listeners, we can query them with " +":meth:`.Cog.get_listeners`. This returns a list of tuples -- the first " +"element being the listener name and the second one being the actual " +"function itself. ::" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/ext/commands/commands.po b/docs/locales/en/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..a5f6a947f0 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,1094 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../ext/commands/commands.rst:6 2eb0da10d5464bf79c53ce786a7cbae8 +msgid "Commands" +msgstr "" + +#: ../../ext/commands/commands.rst:8 e4214a427a3348428cd35bc578a9b0cc +msgid "" +"One of the most appealing aspects of the command extension is how easy it" +" is to define commands and how you can arbitrarily nest groups and " +"commands to have a rich sub-command system." +msgstr "" + +#: ../../ext/commands/commands.rst:13 9b47c6f1429d4c33b0c9b05ef9488102 +msgid "" +"Using prefixed commands in guilds requires " +":attr:`Intents.message_content` to be enabled." +msgstr "" + +#: ../../ext/commands/commands.rst:16 4d13402b19da4759b264517f6a201364 +msgid "" +"Commands are defined by attaching it to a regular Python function. The " +"command is then invoked by the user using a similar signature to the " +"Python function." +msgstr "" + +#: ../../ext/commands/commands.rst:19 9dc0a8568bbf47dca6c89b0bde20afdf +msgid "For example, in the given command definition:" +msgstr "" + +#: ../../ext/commands/commands.rst:27 5de5e8c8225c420d9b6f525df5ed59f0 +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "" + +#: ../../ext/commands/commands.rst:33 f4adfe7d30a24a849a8b343dcf007477 +msgid "" +"A command must always have at least one parameter, ``ctx``, which is the " +":class:`.Context` as the first one." +msgstr "" + +#: ../../ext/commands/commands.rst:35 81eceea83b70446d842cb4c33d5c0872 +msgid "" +"There are two ways of registering a command. The first one is by using " +":meth:`.Bot.command` decorator, as seen in the example above. The second " +"is using the :func:`~ext.commands.command` decorator followed by " +":meth:`.Bot.add_command` on the instance." +msgstr "" + +#: ../../ext/commands/commands.rst:39 c49bb2d2b689445e84e7f2fb85af7a2b +msgid "Essentially, these two are equivalent: ::" +msgstr "" + +#: ../../ext/commands/commands.rst:57 89a15da928b045c180932fca669b2337 +msgid "" +"Since the :meth:`.Bot.command` decorator is shorter and easier to " +"comprehend, it will be the one used throughout the documentation here." +msgstr "" + +#: ../../ext/commands/commands.rst:60 4672db0e89d94b759ed873937a925b0d +msgid "" +"Any parameter that is accepted by the :class:`.Command` constructor can " +"be passed into the decorator. For example, to change the name to " +"something other than the function would be as simple as doing this:" +msgstr "" + +#: ../../ext/commands/commands.rst:70 d17bed7a62ff4323921ff5b2caaf4273 +msgid "Parameters" +msgstr "" + +#: ../../ext/commands/commands.rst:72 97ae07f056144eb48fb0139175734dd7 +msgid "" +"Since we define commands by making Python functions, we also define the " +"argument passing behaviour by the function parameters." +msgstr "" + +#: ../../ext/commands/commands.rst:75 93a623991c8d401a890de01634ff9d10 +msgid "" +"Certain parameter types do different things in the user side and most " +"forms of parameter types are supported." +msgstr "" + +#: ../../ext/commands/commands.rst:78 fa4304f52a0e41f2a371397e47fcce9b +msgid "Positional" +msgstr "" + +#: ../../ext/commands/commands.rst:80 e883e4a474714e48a6aeb726eeadc3dc +msgid "" +"The most basic form of parameter passing is the positional parameter. " +"This is where we pass a parameter as-is:" +msgstr "" + +#: ../../ext/commands/commands.rst:89 8cf8d9493b1041559256e087ef413a4a +msgid "" +"On the bot using side, you can provide positional arguments by just " +"passing a regular string:" +msgstr "" + +#: ../../ext/commands/commands.rst:93 23f921048feb424090895504e729b98c +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "" + +#: ../../ext/commands/commands.rst:97 3ab21401c05843bd9b1455e46d69b18c +msgid "" +"As a note of warning, if you omit the quotes, you will only get the first" +" word:" +msgstr "" + +#: ../../ext/commands/commands.rst:101 b38c6f36a4984b1383dc229230a04be3 +msgid "" +"Since positional arguments are just regular Python arguments, you can " +"have as many as you want:" +msgstr "" + +#: ../../ext/commands/commands.rst:110 69e2937645db4001991a3a19cd1b3808 +msgid "Variable" +msgstr "" + +#: ../../ext/commands/commands.rst:112 308d1f46baa648118a4492116a1e0e50 +msgid "" +"Sometimes you want users to pass in an undetermined number of parameters." +" The library supports this similar to how variable list parameters are " +"done in Python:" +msgstr "" + +#: ../../ext/commands/commands.rst:122 19b4063c5f5e4147acd5ff0877eb603f +msgid "" +"This allows our user to accept either one or many arguments as they " +"please. This works similar to positional arguments, so multi-word " +"parameters should be quoted." +msgstr "" + +#: ../../ext/commands/commands.rst:125 1760c96b472641e3bbca0de1f872745c +msgid "For example, on the bot side:" +msgstr "" + +#: ../../ext/commands/commands.rst:129 675386608fb74796ad09e212c7122bf2 +msgid "" +"If the user wants to input a multi-word argument, they have to quote it " +"like earlier:" +msgstr "" + +#: ../../ext/commands/commands.rst:133 29ebb86baa1740099c73ca8546bc0ade +msgid "" +"Do note that similar to the Python function behaviour, a user can " +"technically pass no arguments at all:" +msgstr "" + +#: ../../ext/commands/commands.rst:138 67c020b1c65944dda2ed2652d0ae7c58 +msgid "" +"Since the ``args`` variable is a :class:`py:tuple`, you can do anything " +"you would usually do with one." +msgstr "" + +#: ../../ext/commands/commands.rst:142 6b8c16edb4a1403da128255ee43f1238 +msgid "Keyword-Only Arguments" +msgstr "" + +#: ../../ext/commands/commands.rst:144 6f25d36da8be4318b7517f46553f1e21 +msgid "" +"When you want to handle parsing of the argument yourself or do not feel " +"like you want to wrap multi-word user input into quotes, you can ask the " +"library to give you the rest as a single argument. We do this by using a " +"**keyword-only argument**, seen below:" +msgstr "" + +#: ../../ext/commands/commands.rst:156 38db3e0ed2f348e0bb7d6801c86317fa +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "" + +#: ../../ext/commands/commands.rst:158 9fe6edffe03e4084b0258a60580b7419 +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "" + +#: ../../ext/commands/commands.rst:162 c37edc09abe943d6b3ae7043d3503481 +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "" + +#: ../../ext/commands/commands.rst:166 481826d85cb845e08e2af89f17e5a0f9 +msgid "" +"By default, the keyword-only arguments are stripped of white space to " +"make it easier to work with. This behaviour can be toggled by the " +":attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "" + +#: ../../ext/commands/commands.rst:172 67c96f9d17044584a1553ae412eb8f49 +msgid "Invocation Context" +msgstr "" + +#: ../../ext/commands/commands.rst:174 90307116bb3c4e2380082d039bfa0a72 +msgid "" +"As seen earlier, every command must take at least a single parameter, " +"called the :class:`~ext.commands.Context`." +msgstr "" + +#: ../../ext/commands/commands.rst:176 df6777a0ac024b7fb5d7c9c767d880d6 +msgid "" +"This parameter gives you access to something called the \"invocation " +"context\". Essentially all the information you need to know how the " +"command was executed. It contains a lot of useful information:" +msgstr "" + +#: ../../ext/commands/commands.rst:179 04404ff085ff4a2f8f0b30ed463cccad +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr "" + +#: ../../ext/commands/commands.rst:180 4b015547e4cf4589bb40234602d7d7d2 +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr "" + +#: ../../ext/commands/commands.rst:181 93a632c429f142a28542853f69bf1bc5 +msgid "" +":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` " +"that called the command." +msgstr "" + +#: ../../ext/commands/commands.rst:182 d5b8d8fc811d40dcae3b834e512c565d +msgid "" +":meth:`.Context.send` to send a message to the channel the command was " +"used in." +msgstr "" + +#: ../../ext/commands/commands.rst:184 dd42fc20238e42f1a0ee1c45bb01bcb1 +msgid "" +"The context implements the :class:`abc.Messageable` interface, so " +"anything you can do on a :class:`abc.Messageable` you can do on the " +":class:`~ext.commands.Context`." +msgstr "" + +#: ../../ext/commands/commands.rst:188 9323b08475884e81a24402b57d0e4f64 +msgid "Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:190 94093319a7b54fdfa6e31db0dca531fc +msgid "" +"Adding bot arguments with function parameters is only the first step in " +"defining your bot's command interface. To actually make use of the " +"arguments, we usually want to convert the data into a target type. We " +"call these :ref:`ext_commands_api_converters`." +msgstr "" + +#: ../../ext/commands/commands.rst:194 3c6b6053a7ff41ddb294cc3bdf33c5f4 +msgid "Converters come in a few flavours:" +msgstr "" + +#: ../../ext/commands/commands.rst:196 03037c0bbd2c4d4f8763155062d78123 +msgid "" +"A regular callable object that takes an argument as a sole parameter and " +"returns a different type." +msgstr "" + +#: ../../ext/commands/commands.rst:198 98c76a42c234410a8ed70b5be84229be +msgid "" +"These range from your own function, to something like :class:`bool` or " +":class:`int`." +msgstr "" + +#: ../../ext/commands/commands.rst:200 4da775ab6c054ad0860c7bef0330ca3b +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "" + +#: ../../ext/commands/commands.rst:205 ff55ecdf59f047bcaaef30853af31630 +msgid "Basic Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:207 c3456b954e774e7a8f35ed7fe291cd85 +msgid "" +"At its core, a basic converter is a callable that takes in an argument " +"and turns it into something else." +msgstr "" + +#: ../../ext/commands/commands.rst:209 324d460f3f8b4c7dbce5f75874dbc256 +msgid "" +"For example, if we wanted to add two numbers together, we could request " +"that they are turned into integers for us by specifying the converter:" +msgstr "" + +#: ../../ext/commands/commands.rst:218 3fae99b42a2f443d874be5482fa0e936 +msgid "" +"We specify converters by using something called a **function " +"annotation**. This is a Python 3 exclusive feature that was introduced in" +" :pep:`3107`." +msgstr "" + +#: ../../ext/commands/commands.rst:221 3740f2a511be4ca58de8ede0336e0615 +msgid "" +"This works with any callable, such as a function that would convert a " +"string to all upper-case:" +msgstr "" + +#: ../../ext/commands/commands.rst:233 e173cfce78a641fa8c1e3ec388743ef1 +msgid "bool" +msgstr "" + +#: ../../ext/commands/commands.rst:235 2b509e4de4e44b74bcccc8bc76160457 +msgid "" +"Unlike the other basic converters, the :class:`bool` converter is treated" +" slightly different. Instead of casting directly to the :class:`bool` " +"type, which would result in any non-empty argument returning ``True``, it" +" instead evaluates the argument as ``True`` or ``False`` based on its " +"given content:" +msgstr "" + +#: ../../ext/commands/commands.rst:247 99b4ee76fbdf4bfe8318bf4634fd1e86 +msgid "Advanced Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:249 1dd87e5eb49442b5b2b8be597b97e9a6 +msgid "" +"Sometimes a basic converter doesn't have enough information that we need." +" For example, sometimes we want to get some information from the " +":class:`Message` that called the command or we want to do some " +"asynchronous processing." +msgstr "" + +#: ../../ext/commands/commands.rst:252 06673a8c2e984113aa51eb9bebd30c13 +msgid "" +"For this, the library provides the :class:`~ext.commands.Converter` " +"interface. This allows you to have access to the :class:`.Context` and " +"have the callable be asynchronous. Defining a custom converter using this" +" interface requires overriding a single method, " +":meth:`.Converter.convert`." +msgstr "" + +#: ../../ext/commands/commands.rst:256 3acb0b6c3c3b45d7947a41f55264d0ea +msgid "An example converter:" +msgstr "" + +#: ../../ext/commands/commands.rst:271 319ff0abdddd44abb73c9c4df69ea757 +msgid "" +"The converter provided can either be constructed or not. Essentially " +"these two are equivalent:" +msgstr "" + +#: ../../ext/commands/commands.rst:285 4eb7fe42c4cf4cc49381b065a3f6d608 +msgid "" +"Having the possibility of the converter be constructed allows you to set " +"up some state in the converter's ``__init__`` for fine tuning the " +"converter. An example of this is actually in the library, " +":class:`~ext.commands.clean_content`." +msgstr "" + +#: ../../ext/commands/commands.rst:301 313d06a63c464db6bc50a9417e7fc09e +msgid "" +"If a converter fails to convert an argument to its designated target " +"type, the :exc:`.BadArgument` exception must be raised." +msgstr "" + +#: ../../ext/commands/commands.rst:305 762af1541599441dbe658f34ed6d88e9 +msgid "Inline Advanced Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:307 d2d137d0557a462faad7c955183cab1b +msgid "" +"If we don't want to inherit from :class:`~ext.commands.Converter`, we can" +" still provide a converter that has the advanced functionalities of an " +"advanced converter and save us from specifying two types." +msgstr "" + +#: ../../ext/commands/commands.rst:310 579183b09bd04a0fac0e147c369c8f6f +msgid "" +"For example, a common idiom would be to have a class and a converter for " +"that class:" +msgstr "" + +#: ../../ext/commands/commands.rst:336 9ae2c2bc6bcc4522a18ac8423feb315c +msgid "" +"This can get tedious, so an inline advanced converter is possible through" +" a :func:`classmethod` inside the type:" +msgstr "" + +#: ../../ext/commands/commands.rst:363 3131fccf4fad41828e2b2b27b42bcc45 +msgid "Discord Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:365 b4c52244c9be419fab06827b57f495f3 +msgid "" +"Working with :ref:`discord_api_models` is a fairly common thing when " +"defining commands, as a result the library makes working with them easy." +msgstr "" + +#: ../../ext/commands/commands.rst:368 137f5ef96f53464c8a251cc4118b1308 +msgid "" +"For example, to receive a :class:`Member` you can just pass it as a " +"converter:" +msgstr "" + +#: ../../ext/commands/commands.rst:376 57184e3586fc42288c7c5f42ccf466b1 +msgid "" +"When this command is executed, it attempts to convert the string given " +"into a :class:`Member` and then passes it as a parameter for the " +"function. This works by checking if the string is a mention, an ID, a " +"nickname, a username + discriminator, or just a regular username. The " +"default set of converters have been written to be as easy to use as " +"possible." +msgstr "" + +#: ../../ext/commands/commands.rst:380 3ef3174367f14f4aa3154ceba29fd202 +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "" + +#: ../../ext/commands/commands.rst:382 f06b9b69f544438f98c0d86a14a56473 +msgid ":class:`Object` (since v2.0)" +msgstr "" + +#: ../../ext/commands/commands.rst:383 ../../ext/commands/commands.rst:412 +#: 03938a54fa284120b0e6bd437416f4db fc8b4340e84844c6845fd5b5cc6ae6d3 +msgid ":class:`Member`" +msgstr "" + +#: ../../ext/commands/commands.rst:384 ../../ext/commands/commands.rst:414 +#: 2ed2e5e8c91c422e8df4d374c103c019 b5c11ba0502a4e51815954014a35ff1b +msgid ":class:`User`" +msgstr "" + +#: ../../ext/commands/commands.rst:385 0f89da062de548ac8d36018cbaa52c6e +msgid ":class:`Message` (since v1.1)" +msgstr "" + +#: ../../ext/commands/commands.rst:386 9016f8974d594cca9e58ca054892ea95 +msgid ":class:`PartialMessage` (since v1.7)" +msgstr "" + +#: ../../ext/commands/commands.rst:387 a50044b9a37c4977b4d659c5e91ec9fb +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr "" + +#: ../../ext/commands/commands.rst:388 ../../ext/commands/commands.rst:422 +#: 24a187d6918f41e3931a19cd1358794c aad4ae0d99db4541a9c2f8c026d8fb39 +msgid ":class:`TextChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:389 ../../ext/commands/commands.rst:424 +#: 1721b9a57a6a4aae8ea61ddb939d062a dcf70ccb30684fba934a549b90af7d76 +msgid ":class:`VoiceChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:390 1eecfbb240364ef39e7e60d8f3b89d43 +msgid ":class:`StageChannel` (since v1.7)" +msgstr "" + +#: ../../ext/commands/commands.rst:391 ../../ext/commands/commands.rst:428 +#: b788f3bdc63245029e6611c29fda9078 f87fe6cf01774f82b54da0bc6ef3271c +msgid ":class:`CategoryChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:392 ../../ext/commands/commands.rst:430 +#: 44e5f88bb2bd43fc8d51b66475fdb05c 59e1e1a2f9b348ba922ebca969831825 +msgid ":class:`Invite`" +msgstr "" + +#: ../../ext/commands/commands.rst:393 cccd4ef2cc3443b98d13104f83a7990b +msgid ":class:`Guild` (since v1.7)" +msgstr "" + +#: ../../ext/commands/commands.rst:394 ../../ext/commands/commands.rst:434 +#: 1ec8a898c9914345aca3d9abd69c13b3 cc025777e0c641e193733daff072b0a5 +msgid ":class:`Role`" +msgstr "" + +#: ../../ext/commands/commands.rst:395 ../../ext/commands/commands.rst:436 +#: 2024345e0b124791866b632b87ada241 d6e648eab28640d58ef49d32b79f77c8 +msgid ":class:`Game`" +msgstr "" + +#: ../../ext/commands/commands.rst:396 ../../ext/commands/commands.rst:438 +#: 3345d10003a643f89ce0e50c4017ea99 c3c6a678814a43ad8823e8ea97fc0f3b +msgid ":class:`Colour`" +msgstr "" + +#: ../../ext/commands/commands.rst:397 ../../ext/commands/commands.rst:440 +#: 60107320d7654b6a9154ea6e51181a3d dd3916f6d6e54dfbb9f2094c34b320b8 +msgid ":class:`Emoji`" +msgstr "" + +#: ../../ext/commands/commands.rst:398 ../../ext/commands/commands.rst:442 +#: a741c083d4934dddb1ec2bd513f5680c e4ff43d5b0184c3dafc1e721adc80b5d +msgid ":class:`PartialEmoji`" +msgstr "" + +#: ../../ext/commands/commands.rst:399 1704896317af4edcbd8a20f03b096c52 +msgid ":class:`Thread` (since v2.0)" +msgstr "" + +#: ../../ext/commands/commands.rst:401 1dd242e642794a8ebfe2fb8cbb66e299 +msgid "" +"Having any of these set as the converter will intelligently convert the " +"argument to the appropriate target type you specify." +msgstr "" + +#: ../../ext/commands/commands.rst:404 bdba697f4265483b83a9c31e3fb5698c +msgid "" +"Under the hood, these are implemented by the " +":ref:`ext_commands_adv_converters` interface. A table of the equivalent " +"converter is given below:" +msgstr "" + +#: ../../ext/commands/commands.rst:408 5c905d9d5e334e4a86ef7617d6db7a41 +msgid "Discord Class" +msgstr "" + +#: ../../ext/commands/commands.rst:408 67fdd7c779ec4d64b19aa85130bdb445 +msgid "Converter" +msgstr "" + +#: ../../ext/commands/commands.rst:410 069bf03bc858444a95904e15c00d8e56 +msgid ":class:`Object`" +msgstr "" + +#: ../../ext/commands/commands.rst:410 84c08b9c121f42128c829bba6e5d4625 +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:412 9316e8d30b654f4aa42f06854d6d2ab3 +msgid ":class:`~ext.commands.MemberConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:414 221d879af97f45bfb7c10ab47c5bbae7 +msgid ":class:`~ext.commands.UserConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:416 13e666233a2d4531ad53d8f63a8a7341 +msgid ":class:`Message`" +msgstr "" + +#: ../../ext/commands/commands.rst:416 b2390c1a4b124b0e9485bb81b6be4d88 +msgid ":class:`~ext.commands.MessageConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:418 7c8c0614d60b4ac59697cebf6e90353c +msgid ":class:`PartialMessage`" +msgstr "" + +#: ../../ext/commands/commands.rst:418 45477fb6f9234e8e8f5a9787b75c83c7 +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:420 2a6dcd1fbe804287a6ac3cbdf06832fc +msgid ":class:`.GuildChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:420 fdd4a6c2755c4cadbd4ce5e39a476355 +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:422 10eabd39fe9d427ca1e1f7eda0ae18eb +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:424 0779f3bcaa7d414f8f5bb2394e2208c0 +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:426 5f746a3119ff4dffb44d34a44a4b09f6 +msgid ":class:`StageChannel`" +msgstr "" + +#: ../../ext/commands/commands.rst:426 d62ca9d8eec0480f86cfe4a7b3c0af64 +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:428 b114fc4054654e0eb90cbac0547fe194 +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:430 d758ba3981ab4eaeb71713c2fca6b1e2 +msgid ":class:`~ext.commands.InviteConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:432 ed840f87331e46c4945db51a5cb8387c +msgid ":class:`Guild`" +msgstr "" + +#: ../../ext/commands/commands.rst:432 9f4e5c7b9add4e79b211760f4951e5c2 +msgid ":class:`~ext.commands.GuildConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:434 61c50c3976884ca0827c47e686f0fc79 +msgid ":class:`~ext.commands.RoleConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:436 e7f1471e45bf4680857187d2bbcca54f +msgid ":class:`~ext.commands.GameConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:438 0aa621d4ffe54212a2995e0e467fcdb0 +msgid ":class:`~ext.commands.ColourConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:440 3be8dd3c867f4dd2b8a034b26f5a2bca +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:442 bd131a47e41e42469043bfe18d7bfe1e +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:444 3b482c8f6eec4e688855568dc22e21b1 +msgid ":class:`Thread`" +msgstr "" + +#: ../../ext/commands/commands.rst:444 427ca932915b4160b892e09aaba9632b +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr "" + +#: ../../ext/commands/commands.rst:447 c2aa82fcf8b4403893fb5e8656e7de53 +msgid "" +"By providing the converter it allows us to use them as building blocks " +"for another converter:" +msgstr "" + +#: ../../ext/commands/commands.rst:464 0b2af3c5e1b14c40a8dc5b2f2b8f7a87 +msgid "Special Converters" +msgstr "" + +#: ../../ext/commands/commands.rst:466 d77ff9d9366546aaa0386b97b392a6c7 +msgid "" +"The command extension also has support for certain converters to allow " +"for more advanced and intricate use cases that go beyond the generic " +"linear parsing. These converters allow you to introduce some more relaxed" +" and dynamic grammar to your commands in an easy to use manner." +msgstr "" + +#: ../../ext/commands/commands.rst:471 8e2d4b7f44e24d65aed8dae238908d5a +msgid "typing.Union" +msgstr "" + +#: ../../ext/commands/commands.rst:473 e4d4b494d9aa4143b810ce61ef9e260e +msgid "" +"A :data:`typing.Union` is a special type hint that allows for the command" +" to take in any of the specific types instead of a singular type. For " +"example, given the following:" +msgstr "" + +#: ../../ext/commands/commands.rst:485 d4e822131ed34ddaa15e3d339e4c7232 +msgid "" +"The ``what`` parameter would either take a :class:`discord.TextChannel` " +"converter or a :class:`discord.Member` converter. The way this works is " +"through a left-to-right order. It first attempts to convert the input to " +"a :class:`discord.TextChannel`, and if it fails it tries to convert it to" +" a :class:`discord.Member`. If all converters fail, then a special error " +"is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "" + +#: ../../ext/commands/commands.rst:490 d09570daaf804f8c82c2bbde59e088c5 +msgid "" +"Note that any valid converter discussed above can be passed in to the " +"argument list of a :data:`typing.Union`." +msgstr "" + +#: ../../ext/commands/commands.rst:493 3a590d16bb51472fbe1cfa2980c9f65e +msgid "typing.Optional" +msgstr "" + +#: ../../ext/commands/commands.rst:495 8362c9e7126d47c49332ae4b67b20dbc +msgid "" +"A :data:`typing.Optional` is a special type hint that allows for \"back-" +"referencing\" behaviour. If the converter fails to parse into the " +"specified type, the parser will skip the parameter and then either " +"``None`` or the specified default will be passed into the parameter " +"instead. The parser will then continue on to the next parameters and " +"converters, if any." +msgstr "" + +#: ../../ext/commands/commands.rst:499 ../../ext/commands/commands.rst:547 +#: acd3e73ab332454c88ae1f945d276569 b9723a06f2f940b89af2ddb90dd6b3f8 +msgid "Consider the following example:" +msgstr "" + +#: ../../ext/commands/commands.rst:512 f4027d15748e45cfabfe3b021ce5fe6e +msgid "" +"In this example, since the argument could not be converted into an " +"``int``, the default of ``99`` is passed and the parser resumes handling," +" which in this case would be to pass it into the ``liquid`` parameter." +msgstr "" + +#: ../../ext/commands/commands.rst:517 3dd8f48f74554d1ca649179f2cd6802b +msgid "" +"This converter only works in regular positional parameters, not variable " +"parameters or keyword-only parameters." +msgstr "" + +#: ../../ext/commands/commands.rst:520 708fb1c0594f44959957cd8151e7fa27 +msgid "typing.Literal" +msgstr "" + +#: ../../ext/commands/commands.rst:522 a7e116a5932c429db1da9943a1832665 +msgid "" +"A :data:`typing.Literal` is a special type hint that requires the passed " +"parameter to be equal to one of the listed values after being converted " +"to the same type. For example, given the following:" +msgstr "" + +#: ../../ext/commands/commands.rst:534 49bda5647fa94357af6826cb98a2109c +msgid "" +"The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` " +"or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or " +"``2``. If ``buy_sell`` or ``amount`` don't match any value, then a " +"special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any " +"literal values can be mixed and matched within the same " +":data:`typing.Literal` converter." +msgstr "" + +#: ../../ext/commands/commands.rst:538 9875bef593fe4a81b69a31d1cde619a2 +msgid "" +"Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still " +"follow the :class:`bool` converter rules." +msgstr "" + +#: ../../ext/commands/commands.rst:541 900a1bd1b7b040c7918bcd96141e219f +msgid "Greedy" +msgstr "" + +#: ../../ext/commands/commands.rst:543 dc6419905b4c42f392d5297e10403aa1 +msgid "" +"The :class:`~ext.commands.Greedy` converter is a generalisation of the " +":data:`typing.Optional` converter, except applied to a list of arguments." +" In simple terms, this means that it tries to convert as much as it can " +"until it can't convert any further." +msgstr "" + +#: ../../ext/commands/commands.rst:556 9ca09d5845224050b1ba70c540a4d691 +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "" + +#: ../../ext/commands/commands.rst:560 57eebac9d1114112b17e1b5b9a0221b8 +msgid "" +"The type passed when using this converter depends on the parameter type " +"that it is being attached to:" +msgstr "" + +#: ../../ext/commands/commands.rst:562 c8fc91d2357f439cae4e9c538d7b653e +msgid "" +"Positional parameter types will receive either the default parameter or a" +" :class:`list` of the converted values." +msgstr "" + +#: ../../ext/commands/commands.rst:563 70ebeea864744098a0fe0e3e814c8a3e +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "" + +#: ../../ext/commands/commands.rst:564 9377041e060c46218b4a1f1f08ce9a88 +msgid "" +"Keyword-only parameter types will be the same as if " +":class:`~ext.commands.Greedy` was not passed at all." +msgstr "" + +#: ../../ext/commands/commands.rst:566 3b7168cd7fb949c58a321e4fc9b6d170 +msgid "" +":class:`~ext.commands.Greedy` parameters can also be made optional by " +"specifying an optional value." +msgstr "" + +#: ../../ext/commands/commands.rst:568 23c4ca604a5b4f7e8686bee24d5be9d9 +msgid "" +"When mixed with the :data:`typing.Optional` converter you can provide " +"simple and expressive command invocation syntaxes:" +msgstr "" + +#: ../../ext/commands/commands.rst:582 6fb3cc84a76d43809fd0d3a93f54a13d +msgid "This command can be invoked any of the following ways:" +msgstr "" + +#: ../../ext/commands/commands.rst:592 8af43a82e1eb487cb004540c857d9ab1 +msgid "" +"The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` " +"are powerful and useful, however as a price, they open you up to some " +"parsing ambiguities that might surprise some people." +msgstr "" + +#: ../../ext/commands/commands.rst:595 802179685fdb4ac1adb5d926cb493c60 +msgid "" +"For example, a signature expecting a :data:`typing.Optional` of a " +":class:`discord.Member` followed by a :class:`int` could catch a member " +"named after a number due to the different ways a " +":class:`~ext.commands.MemberConverter` decides to fetch members. You " +"should take care to not introduce unintended parsing ambiguities in your " +"code. One technique would be to clamp down the expected syntaxes allowed " +"through custom converters or reordering the parameters to minimise " +"clashes." +msgstr "" + +#: ../../ext/commands/commands.rst:601 cd8e0c725cea4d518ac24bfbda7f8f61 +msgid "" +"To help aid with some parsing ambiguities, :class:`str`, ``None``, " +":data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden " +"as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "" + +#: ../../ext/commands/commands.rst:607 acf73775f5cc4276abfecdcc82e43ec6 +msgid "FlagConverter" +msgstr "" + +#: ../../ext/commands/commands.rst:611 debdef48375c43fca3d1da0d3a7ce781 +msgid "" +"A :class:`~ext.commands.FlagConverter` allows the user to specify user-" +"friendly \"flags\" using :pep:`526` type annotations or a syntax more " +"reminiscent of the :mod:`py:dataclasses` module." +msgstr "" + +#: ../../ext/commands/commands.rst:614 3b966e812c1c428bb30a92f10bcde540 +msgid "For example, the following code:" +msgstr "" + +#: ../../ext/commands/commands.rst:631 52518462957f45708676f99d1f50305f +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "" + +#: ../../ext/commands/commands.rst:635 107af728a5b74d11837998b7ce303131 +msgid "" +"Flags use a syntax that allows the user to not require quotes when " +"passing in values to the flag. The goal of the flag syntax is to be as " +"user-friendly as possible. This makes flags a good choice for complicated" +" commands that can have multiple knobs to turn or simulating keyword-only" +" parameters in your external command interface. **It is recommended to " +"use keyword-only parameters with the flag converter**. This ensures " +"proper parsing and behaviour with quoting." +msgstr "" + +#: ../../ext/commands/commands.rst:640 1d843dcb7fd94078aa969a0468f5e39b +msgid "" +"Internally, the :class:`~ext.commands.FlagConverter` class examines the " +"class to find flags. A flag can either be a class variable with a type " +"annotation or a class variable that's been assigned the result of the " +":func:`~ext.commands.flag` function. These flags are then used to define " +"the interface that your users will use. The annotations correspond to the" +" converters that the flag arguments must adhere to." +msgstr "" + +#: ../../ext/commands/commands.rst:645 a3840ce333d14d5ba23224f900541479 +msgid "" +"For most use cases, no extra work is required to define flags. However, " +"if customisation is needed to control the flag name or the default value " +"then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "" + +#: ../../ext/commands/commands.rst:655 3d27dfa303ee4e8ea2f0e4e3be0c0baf +msgid "" +"This tells the parser that the ``members`` attribute is mapped to a flag " +"named ``member`` and that the default value is an empty list. For greater" +" customisability, the default can either be a value or a callable that " +"takes the :class:`~ext.commands.Context` as a sole parameter. This " +"callable can either be a function or a coroutine." +msgstr "" + +#: ../../ext/commands/commands.rst:659 68bab2dab4884032ae4373ac62a556fc +msgid "" +"In order to customise the flag syntax we also have a few options that can" +" be passed to the class parameter list:" +msgstr "" + +#: ../../ext/commands/commands.rst:680 c3bf2a623f5648ab8aa15e111502969f +msgid "" +"Despite the similarities in these examples to command like arguments, the" +" syntax and parser is not a command line parser. The syntax is mainly " +"inspired by Discord's search bar input and as a result all flags need a " +"corresponding value." +msgstr "" + +#: ../../ext/commands/commands.rst:684 ed1aeaf64e074b11b91bcc233a505165 +msgid "" +"The flag converter is similar to regular commands and allows you to use " +"most types of converters (with the exception of " +":class:`~ext.commands.Greedy`) as the type annotation. Some extra support" +" is added for specific annotations as described below." +msgstr "" + +#: ../../ext/commands/commands.rst:689 1ffb1e24952f41ff8806882dd4a0d913 +msgid "typing.List" +msgstr "" + +#: ../../ext/commands/commands.rst:691 737132d99ad74d6ea4e7b93155b9053c +msgid "" +"If a list is given as a flag annotation it tells the parser that the " +"argument can be passed multiple times." +msgstr "" + +#: ../../ext/commands/commands.rst:693 71dfe029bdd44663a9c4c0a6a2e67965 +msgid "For example, augmenting the example above:" +msgstr "" + +#: ../../ext/commands/commands.rst:715 35e687a664834729a0fd8e46ab8a3809 +msgid "This is called by repeatedly specifying the flag:" +msgstr "" + +#: ../../ext/commands/commands.rst:720 8b29c4c6720648d38f2a568216ddfb9e +msgid "typing.Tuple" +msgstr "" + +#: ../../ext/commands/commands.rst:722 885f6f663dfb47b4a25f4c3cc0a703d8 +msgid "" +"Since the above syntax can be a bit repetitive when specifying a flag " +"many times, the :class:`py:tuple` type annotation allows for \"greedy-" +"like\" semantics using a variadic tuple:" +msgstr "" + +#: ../../ext/commands/commands.rst:736 843f4bf315a34e7cae7e40f5ee256109 +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "" + +#: ../../ext/commands/commands.rst:740 40f2697e104e445c9fcc969725c14d4e +msgid "" +"The :class:`py:tuple` annotation also allows for parsing of pairs. For " +"example, given the following code:" +msgstr "" + +#: ../../ext/commands/commands.rst:751 9db24b481c4d46e2bfa6afe2add40360 +msgid "" +"Due to potential parsing ambiguities, the parser expects tuple arguments " +"to be quoted if they require spaces. So if one of the inner types is " +":class:`str` and the argument requires spaces then quotes should be used " +"to disambiguate it from the other element of the tuple." +msgstr "" + +#: ../../ext/commands/commands.rst:756 ba0ee993018246da96bd9c3e81676795 +msgid "typing.Dict" +msgstr "" + +#: ../../ext/commands/commands.rst:758 a8ae009b053846efa18a133112ab62a1 +msgid "" +"A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, " +"V]]`` except with the return type given as a :class:`dict` rather than a " +":class:`list`." +msgstr "" + +#: ../../ext/commands/commands.rst:765 bc61f9d1ddef4471be4891bddb9c09fa +msgid "Error Handling" +msgstr "" + +#: ../../ext/commands/commands.rst:767 bf56a9433566476cb8376ca10f51d027 +msgid "" +"When our commands fail to parse we will, by default, receive a noisy " +"error in ``stderr`` of our console that tells us that an error has " +"happened and has been silently ignored." +msgstr "" + +#: ../../ext/commands/commands.rst:770 2a05152d6bf84317ab95ae2560b075bb +msgid "" +"In order to handle our errors, we must use something called an error " +"handler. There is a global error handler, called " +":func:`.on_command_error` which works like any other event in the :ref" +":`discord-api-events`. This global error handler is called for every " +"error reached." +msgstr "" + +#: ../../ext/commands/commands.rst:774 ef55bb05708d4afcbde2b1e63982f33d +msgid "" +"Most of the time however, we want to handle an error local to the command" +" itself. Luckily, commands come with local error handlers that allow us " +"to do just that. First we decorate an error handler function with " +":meth:`.Command.error`:" +msgstr "" + +#: ../../ext/commands/commands.rst:790 963d52d0558e4331b43c492f46fa70d7 +msgid "" +"The first parameter of the error handler is the :class:`.Context` while " +"the second one is an exception that is derived from " +":exc:`~ext.commands.CommandError`. A list of errors is found in the " +":ref:`ext_commands_api_errors` page of the documentation." +msgstr "" + +#: ../../ext/commands/commands.rst:794 80c197d18789467fb4a077f7dd6d612a +msgid "Checks" +msgstr "" + +#: ../../ext/commands/commands.rst:796 6385fb377ffb43d087b788f62480b7f8 +msgid "" +"There are cases when we don't want a user to use our commands. They don't" +" have permissions to do so or maybe we blocked them from using our bot " +"earlier. The commands extension comes with full support for these things " +"in a concept called a :ref:`ext_commands_api_checks`." +msgstr "" + +#: ../../ext/commands/commands.rst:800 90ab3c4a75024d579205f055a8794bb7 +msgid "" +"A check is a basic predicate that can take in a :class:`.Context` as its " +"sole parameter. Within it, you have the following options:" +msgstr "" + +#: ../../ext/commands/commands.rst:803 a6623c48167943e79f6a8b60f467d264 +msgid "Return ``True`` to signal that the person can run the command." +msgstr "" + +#: ../../ext/commands/commands.rst:804 0dea62b4176043998aefe9cac5132676 +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "" + +#: ../../ext/commands/commands.rst:805 87ac00a762c44d85aa555a32c00abbc2 +msgid "" +"Raise a :exc:`~ext.commands.CommandError` derived exception to signal the" +" person cannot run the command." +msgstr "" + +#: ../../ext/commands/commands.rst:807 ab29e9a85151443fba8fc98d3c272a56 +msgid "" +"This allows you to have custom error messages for you to handle in the " +":ref:`error handlers `." +msgstr "" + +#: ../../ext/commands/commands.rst:810 bf9b734bf41d496a8cab527d2f5982a8 +msgid "" +"To register a check for a command, we would have two ways of doing so. " +"The first is using the :meth:`~ext.commands.check` decorator. For " +"example:" +msgstr "" + +#: ../../ext/commands/commands.rst:824 78a6e2319b784e57b1564ecf7e34b49f +msgid "" +"This would only evaluate the command if the function ``is_owner`` returns" +" ``True``. Sometimes we re-use a check often and want to split it into " +"its own decorator. To do that we can just add another level of depth:" +msgstr "" + +#: ../../ext/commands/commands.rst:841 fec2c90754cb4ca19551a1fca47dae06 +msgid "" +"Since an owner check is so common, the library provides it for you " +"(:func:`~ext.commands.is_owner`):" +msgstr "" + +#: ../../ext/commands/commands.rst:851 731344d1c242492384f42d6376ad3b07 +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "" + +#: ../../ext/commands/commands.rst:867 0a3c34ae9c0d4b6392a9b04d5d36f5dc +msgid "" +"If any of those checks fail in the example above, then the command will " +"not be run." +msgstr "" + +#: ../../ext/commands/commands.rst:869 edec23dfc5b3498caef57c62a9315264 +msgid "" +"When an error happens, the error is propagated to the :ref:`error " +"handlers `. If you do not raise a custom " +":exc:`~ext.commands.CommandError` derived exception, then it will get " +"wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "" + +#: ../../ext/commands/commands.rst:887 9447373776c540b194831a3f6b7d4f5d +msgid "" +"If you want a more robust error system, you can derive from the exception" +" and raise it instead of returning ``False``:" +msgstr "" + +#: ../../ext/commands/commands.rst:913 cef95191baf442dea17daa9019db6a10 +msgid "" +"Since having a ``guild_only`` decorator is pretty common, it comes built-" +"in via :func:`~ext.commands.guild_only`." +msgstr "" + +#: ../../ext/commands/commands.rst:916 30ab1860927f45f6a807fbfb9a671bed +msgid "Global Checks" +msgstr "" + +#: ../../ext/commands/commands.rst:918 d6aa174f32114ba5bec3c650983fce91 +msgid "" +"Sometimes we want to apply a check to **every** command, not just certain" +" commands. The library supports this as well using the global check " +"concept." +msgstr "" + +#: ../../ext/commands/commands.rst:921 864c9abc219b4f689672f5e30a68d47b +msgid "" +"Global checks work similarly to regular checks except they are registered" +" with the :meth:`.Bot.check` decorator." +msgstr "" + +#: ../../ext/commands/commands.rst:923 1ea11f45d1814ec8912e90d0390ef694 +msgid "For example, to block all DMs we could do the following:" +msgstr "" + +#: ../../ext/commands/commands.rst:933 3a2a1fb8a3cf4b48b42209cf4f80bb61 +msgid "" +"Be careful on how you write your global checks, as it could also lock you" +" out of your own bot." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/en/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..26e1a11292 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,115 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../ext/commands/extensions.rst:6 11a3dae9fe1c4db2baffa8e52bb87925 +msgid "Extensions" +msgstr "" + +#: ../../ext/commands/extensions.rst:8 3fc6d3b82099427188caf088434f07d8 +msgid "" +"There comes a time in the bot development when you want to extend the bot" +" functionality at run-time and quickly unload and reload code (also " +"called hot-reloading). The command framework comes with this ability " +"built-in, with a concept called **extensions**." +msgstr "" + +#: ../../ext/commands/extensions.rst:11 bff72545dea84615898459176c227829 +msgid "Primer" +msgstr "" + +#: ../../ext/commands/extensions.rst:13 a5c7cefb93c340738086ceb82d719d19 +msgid "" +"An extension at its core is a python file with an entry point called " +"``setup``. This setup must be a plain Python function (not a coroutine). " +"It takes a single parameter -- the :class:`~.commands.Bot` that loads the" +" extension." +msgstr "" + +#: ../../ext/commands/extensions.rst:15 b37c970baeb94c608f23fae4c5d6d128 +msgid "An example extension looks like this:" +msgstr "" + +#: ../../ext/commands/extensions.rst:17 5cd7440657e24c0fb0725a2812f35088 +msgid "hello.py" +msgstr "" + +#: ../../ext/commands/extensions.rst:30 30f94a1e54d9426fad010da9c908c02e +msgid "" +"In this example we define a simple command, and when the extension is " +"loaded this command is added to the bot. Now the final step to this is " +"loading the extension, which we do by calling " +":meth:`.Bot.load_extension`. To load this extension we call " +"``bot.load_extension('hello')``." +msgstr "" + +#: ../../ext/commands/extensions.rst:32 1795f2297a5041ac844add5bfcc88d3f +msgid "Cogs" +msgstr "" + +#: ../../ext/commands/extensions.rst:35 7c01406819564f4ca4a2656c49cb2f0f +msgid "" +"Extensions are usually used in conjunction with cogs. To read more about " +"them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "" + +#: ../../ext/commands/extensions.rst:39 98dd5e13250045039e1a563db8bfea2f +msgid "" +"Extension paths are ultimately similar to the import mechanism. What this" +" means is that if there is a folder, then it must be dot-qualified. For " +"example to load an extension in ``plugins/hello.py`` then we use the " +"string ``plugins.hello``." +msgstr "" + +#: ../../ext/commands/extensions.rst:42 489bef81f93f4304b279bdd12bfc9338 +msgid "Reloading" +msgstr "" + +#: ../../ext/commands/extensions.rst:44 650562a4f9b2420788d14c656036f668 +msgid "" +"When you make a change to the extension and want to reload the " +"references, the library comes with a function to do this for you, " +":meth:`.Bot.reload_extension`." +msgstr "" + +#: ../../ext/commands/extensions.rst:50 e9fb9d0f34b842d1a12b88b29236c81b +msgid "" +"Once the extension reloads, any changes that we did will be applied. This" +" is useful if we want to add or remove functionality without restarting " +"our bot. If an error occurred during the reloading process, the bot will " +"pretend as if the reload never happened." +msgstr "" + +#: ../../ext/commands/extensions.rst:53 bd94882163b141b38360855852e799d3 +msgid "Cleaning Up" +msgstr "" + +#: ../../ext/commands/extensions.rst:55 bb55f99d145d43c6b21bc41ff14e7f14 +msgid "" +"Although rare, sometimes an extension needs to clean-up or know when it's" +" being unloaded. For cases like these, there is another entry point named" +" ``teardown`` which is similar to ``setup`` except called when the " +"extension is unloaded." +msgstr "" + +#: ../../ext/commands/extensions.rst:57 7d0766fd4f7542b09453f795836c0ad3 +msgid "basic_ext.py" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/ext/commands/index.po b/docs/locales/en/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..34ae5a5cf9 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,35 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../ext/commands/index.rst:4 411aa48dd0464f02b4c2121068b0fa3b +msgid "discord.ext.commands" +msgstr "" + +#: ../../ext/commands/index.rst:6 65489e71ff11461f87742161290cc9c6 +msgid "" +"``Pycord`` offers a lower level aspect on interacting with Discord. Often" +" times, the library is used for the creation of bots. However this task " +"can be daunting and confusing to get correctly the first time. Many times" +" there comes a repetition in creating a bot command framework that is " +"extensible, flexible, and powerful. For this reason, ``Pycord`` comes " +"with an extension library that handles this for you." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/ext/pages/index.po b/docs/locales/en/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..aea1a8cbb8 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,1287 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../ext/pages/index.rst:4 2437ba416cf848d9a3d8222dc9eb281b +msgid "discord.ext.pages" +msgstr "" + +#: ../../ext/pages/index.rst:8 5cdbc5387d524c98acf4e627941314f8 +msgid "" +"This module provides an easy pagination system with buttons, page groups," +" and custom view support." +msgstr "" + +#: ../../ext/pages/index.rst:10 1bdddfae47c249d2b2299c043a10b84d +msgid "Example usage in a cog:" +msgstr "" + +#: ../../ext/pages/index.rst:292 9e46b970fe514e50ada40895294dd205 +msgid "API Reference" +msgstr "" + +#: ../../ext/pages/index.rst:295 5d9b9cc1f79549f38b8a4d3b2f0be4c8 +msgid "Page" +msgstr "" + +#: bd25b5c331004759a671ad50a0fb4b41 discord.ext.pages.pagination.Page:1 of +msgid "Represents a page shown in the paginator." +msgstr "" + +#: ae8bacdd6f74434091d786f43b97b4e3 discord.ext.pages.pagination.Page:3 of +msgid "" +"Allows for directly referencing and modifying each page as a class " +"instance." +msgstr "" + +#: ../../ext/pages/index.rst 001d8bed52f640e6b65faeb5e57cd564 +#: 063bbc6f3e424780b3fca294ca70043c 075fafed1a384290b249cd03322da598 +#: 09ddd6dd6d764f9d8afa0a4291730274 0e9e89efe9e643c3acc962e0648c89a5 +#: 0ee33849feaa4e1c9b968a1b176c4840 13ad2f1d0c7641d59bec5738903ebd38 +#: 148f4b586e154d7b9784cf4e6149b19c 1ed97b7d592d457e91f0607e776a78d6 +#: 341e6342cd654d72a002d8bc1bbf025a 34ba1e0e3f634a529e2461c1c8d10b16 +#: 422220e75757468b9e523551808c390d 4c13c6d74aac47ba8b3ab6fc503d4c08 +#: 4ebe1f73ecfe4d27aff3c7e8aca24bfd 5526f25c16e840daa4ff844390a50843 +#: 5a2d03e908f5498ca371e47073d60077 5d0da1f34118460c8f4eddf4eedb0437 +#: 5d6bf83ea6804891811293d85965e471 655fc98117b74364b87cb5d49111b23f +#: 697e50f1545c45f4b9e7370baba6fb36 6a04ca7a36094db29f14c6fe2ce8b176 +#: 6bf63b66304d4c34b3dee842785b34c1 6e0c755cc95c460dacb7bb287f7856fc +#: 99a76d768ef6423e9a3952a8dec21a78 9a2b6c56e51f47e6b866350220f8c0f6 +#: ac20d3e78ca94a39857c8376d4001b92 beac103455d843ac836e933650a4dd62 +#: c11dd90c56d64c83a8bbac2e2b0f341e c1d3f802b5e54055a23682050656d600 +#: c6df38aa49414da5a6de205f703db624 d5bca9a9f4e3404884791ef3d4aca196 +#: dbf01b3b2c5841ba9be4972edf38c752 df1997f923f64977a58153c7935dca20 +#: f2a2b2cd04354ce2b4dbcb6e77dd1bd1 +msgid "Parameters" +msgstr "" + +#: 11cf6e703d674e4b84c439e1aa100391 discord.ext.pages.pagination.Page:6 of +msgid "" +"The content of the page. Corresponds to the " +":class:`discord.Message.content` attribute." +msgstr "" + +#: 838dc022445d4c7288ddb26f9b9e7b79 discord.ext.pages.pagination.Page:9 of +msgid "" +"The embeds of the page. Corresponds to the " +":class:`discord.Message.embeds` attribute." +msgstr "" + +#: 7863a87aab514116a1c91370164c4eff discord.ext.pages.pagination.Page:12 of +msgid "A list of local files to be shown with the page." +msgstr "" + +#: d9743329c81241099f5684a505c85dd2 discord.ext.pages.pagination.Page:15 of +msgid "" +"The custom view shown when the page is visible. Overrides the " +"`custom_view` attribute of the main paginator." +msgstr "" + +#: 0ac477cf619c420fafdaac5b6a1fbd18 0e2e6db2218f41dc81c2bbdf0354cbe4 +#: 5d024d19341544b2a7a40d0969eef03e b2df49c3af9a4c74bb099b83349ddcfc +#: cfc9f4305077455fad6922d274bc383d +#: discord.ext.pages.pagination.Page.callback:1 +#: discord.ext.pages.pagination.Paginator.interaction_check:1 +#: discord.ext.pages.pagination.PaginatorButton.callback:1 +#: discord.ext.pages.pagination.PaginatorMenu.callback:1 +#: discord.ui.view.View.on_error:1 of +msgid "|coro|" +msgstr "" + +#: 00e243c7a32046b3bb334815364cd744 +#: discord.ext.pages.pagination.Page.callback:3 of +msgid "" +"The coroutine associated to a specific page. If `Paginator.page_action()`" +" is used, this coroutine is called." +msgstr "" + +#: a43956ce2cc443b4a7dc593c11685574 +#: discord.ext.pages.pagination.Page.callback:6 of +msgid "The interaction associated with the callback, if any." +msgstr "" + +#: 14dc2bbbfd654ccea6ef76d9d586e887 +#: discord.ext.pages.pagination.Page.update_files:1 of +msgid "" +"Updates :class:`discord.File` objects so that they can be sent multiple " +"times. This is called internally each time the page is sent." +msgstr "" + +#: ../../ext/pages/index.rst 08830e24540a4075a566ce6b6055bf58 +#: 0df6b7d0cf984f17843c219c54453fdd 1562ad6d689b4e78a93104700ab3429f +#: 1f00671156554ebb8b1e8e178a7e76bb 20aa4fd3a1ba4a329e930300f1bfec70 +#: 2aef4bef743e42c6b10dc7dc409dddee 2b3e3b8a6018461984a424487aa9e6ab +#: 371cb60b44484310bd22f6a9197741e9 38bb18eb66264addb0e210e066903922 +#: 44df48e0960e411391d8959fd9d11450 4cee4928e1df4606b6ef905abbd63533 +#: 4d583655849d4c3eae271f096ea6e32a 550c48f6c2e1423ba8c77b021dbb3dcd +#: 5f9e2f91dd6f4ddf8aba9945c851a7d0 68cd1cac42dd4ab384b9d993fd5b3d3d +#: 7fae07446dae40adbe93cfc309708f70 89185399683243b8a8161ef2321fb944 +#: 8b422ca21de24735a81d7c356e107d08 a97d7cfc0d8547fba1a07c473d6aa220 +#: abda4ea8404f4fd1b6ff60b850d9f36b aeb2988a559840d3ba83ac47b72253f7 +#: b17d3a717a7c43bfbf6a28db9c9e8847 be696f9851b549dc9e9ac50b6f55f198 +#: d4e5702bc04a4bc4b7641557751fde48 d5396ed79c0a49578511de018e0b2963 +#: df303e968a55460b84813fa21867fc46 e5bcc53a42f240c9b5ff34f27d6f0bc4 +msgid "Return type" +msgstr "" + +#: c00ec830bb5c410f8a62d21db42e50e4 +#: discord.ext.pages.pagination.Page.update_files:5 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| " +"\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: discord.ext.pages.Page.content:1 ffe769a89ef340cd91dac029ddf8a270 of +msgid "Gets the content for the page." +msgstr "" + +#: 4a20614242ff49c98c15934b6aacaea9 discord.ext.pages.Page.embeds:1 of +msgid "Gets the embeds for the page." +msgstr "" + +#: 734b759d6f34415790c449280122f7c0 discord.ext.pages.Page.custom_view:1 of +msgid "Gets the custom view assigned to the page." +msgstr "" + +#: c7ec9a0c9bf34cc8831e0cedb813b560 discord.ext.pages.Page.files:1 of +msgid "Gets the files associated with the page." +msgstr "" + +#: ../../ext/pages/index.rst:303 35d41aaa665649e88470e1f4d3913ae4 +msgid "Paginator" +msgstr "" + +#: discord.ext.pages.pagination.Paginator:1 fd8a1d163c3a4ee1945a7434adfec3b8 of +msgid "" +"Creates a paginator which can be sent as a message and uses buttons for " +"navigation." +msgstr "" + +#: 8cda8ae5c6884250afa6014ccd2d1518 discord.ext.pages.pagination.Paginator:4 of +msgid "" +"The list of :class:`PageGroup` objects, :class:`Page` objects, strings, " +"embeds, or list of embeds to paginate. If a list of :class:`PageGroup` " +"objects is provided and `show_menu` is ``False``, only the first page " +"group will be displayed." +msgstr "" + +#: 9862f559cf4d46f7a8dddfd90b6913db 9db02074d9c94a49bb0521fec4c63a78 +#: c1ef75e202bf43d089126729e2fbfa5a discord.ext.pages.pagination.PageGroup:28 +#: discord.ext.pages.pagination.Paginator:9 +#: discord.ext.pages.pagination.Paginator.update:8 of +msgid "Whether to show disabled buttons." +msgstr "" + +#: 20144622344a4ac6a82ba99b28691461 7bae99044a5a4aa9ab38e9546c5f3427 +#: 9f7169cd5e0841edb66e3b4afc357032 discord.ext.pages.pagination.PageGroup:31 +#: discord.ext.pages.pagination.Paginator:12 +#: discord.ext.pages.pagination.Paginator.update:11 of +msgid "Whether to show the page indicator when using the default buttons." +msgstr "" + +#: 7350d44eca9e4b60ba03f3756966c84d 87d7b2f7eda64012b345e45181b5aa9a +#: discord.ext.pages.pagination.Paginator:15 +#: discord.ext.pages.pagination.Paginator.update:14 of +msgid "" +"Whether to show a select menu that allows the user to switch between " +"groups of pages." +msgstr "" + +#: 48cdaafe961448ea8435a914b65d59b1 c80991802f7749b7997151be89ffe3ac +#: discord.ext.pages.pagination.Paginator:18 +#: discord.ext.pages.pagination.Paginator.update:20 of +msgid "" +"The placeholder text to show in the page group menu when no page group " +"has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "" + +#: 899bfeaaf84b4233aa6a174ab45803d0 bfd67da67dc84a2db829bcfb79ae099d +#: dea0f3e5ef3c4c6ea0067ef707954f13 discord.ext.pages.pagination.PageGroup:34 +#: discord.ext.pages.pagination.Paginator:22 +#: discord.ext.pages.pagination.Paginator.update:17 of +msgid "Whether only the original user of the command can change pages." +msgstr "" + +#: 779b82d3374f4bab948e1fe6d9fedd84 cf4e82cd445643499f51a23de19eea56 +#: discord.ext.pages.pagination.PageGroup:37 +#: discord.ext.pages.pagination.Paginator:25 +#: discord.ext.pages.pagination.Paginator.update:24 +#: f55070f9c63b4f438d22e271d923e292 of +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "" + +#: 7c8f9e0762e4471a8f475ad877770d3f 9d80446d78c74078828826d8fad283fd +#: a97270c704f840a79d3a26539fa11c44 discord.ext.pages.pagination.PageGroup:40 +#: discord.ext.pages.pagination.Paginator:28 +#: discord.ext.pages.pagination.Paginator.update:27 of +msgid "" +"Whether to use the default buttons (i.e. ``first``, ``prev``, " +"``page_indicator``, ``next``, ``last``)" +msgstr "" + +#: 359dca5b47f9408b86cc5b913f19ae1a 3d89ab0ca1ca4ddf95a66e1052b1416b +#: b521eded949b46f39de788085cad3ac5 discord.ext.pages.pagination.PageGroup:43 +#: discord.ext.pages.pagination.Paginator:31 +#: discord.ext.pages.pagination.Paginator.update:30 of +msgid "" +"The row where the default paginator buttons are displayed. Has no effect " +"if custom buttons are used." +msgstr "" + +#: 28f65f81ba3a46e6aae6abe2d4ff3ef1 98a9d82f780e433d8df62c12f3ba9583 +#: d4e55005744346dfa8bec1e681ba7b61 discord.ext.pages.pagination.PageGroup:46 +#: discord.ext.pages.pagination.Paginator:34 +#: discord.ext.pages.pagination.Paginator.update:33 of +msgid "" +"Whether to loop the pages when clicking prev/next while at the first/last" +" page in the list." +msgstr "" + +#: 4d2ba455eeef4ae0be01901805d02dde discord.ext.pages.pagination.Paginator:37 +#: of +msgid "" +"A custom view whose items are appended below the pagination components. " +"If the currently displayed page has a `custom_view` assigned, it will " +"replace these view components when that page is displayed." +msgstr "" + +#: 060cb092dcd84afbab1654c4a673ae40 7cfd82ebd0c3445fbc2e87f9cc91d6c9 +#: b4dd779623cc447686e75ded05b049d5 discord.ext.pages.pagination.PageGroup:52 +#: discord.ext.pages.pagination.Paginator:42 +#: discord.ext.pages.pagination.Paginator.update:39 of +msgid "" +"Timeout in seconds from last interaction with the paginator before no " +"longer accepting input." +msgstr "" + +#: 53a7f7e412d544caa4ea3554dfcd74c2 61407496e9e345548b4662bf9c3f4420 +#: discord.ext.pages.pagination.PageGroup:55 +#: discord.ext.pages.pagination.Paginator:45 +#: discord.ext.pages.pagination.Paginator.update:42 +#: fcff089de6814bc8b2b2bbd270418f40 of +msgid "" +"A list of PaginatorButtons to initialize the Paginator with. If " +"``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "" + +#: 3724bfedfe9d4166b773ce52f6f96b10 554037abcf4f47588ac9452c56ce0e92 +#: a606dd1d1de94ab685aa1d8ce6e80fb8 discord.ext.pages.pagination.PageGroup:59 +#: discord.ext.pages.pagination.Paginator:49 +#: discord.ext.pages.pagination.Paginator.update:46 of +msgid "" +"Whether to automatically trigger the callback associated with a `Page` " +"whenever it is displayed. Has no effect if no callback exists for a " +"`Page`." +msgstr "" + +#: 756df0e58bf4427d9c783f16cb3c0e4e discord.ext.pages.pagination.Paginator:55 +#: of +msgid "The page group select menu associated with this paginator." +msgstr "" + +#: 0018653201484c08a1efb39a95e5496a 10fc8a4ebd814531a213613eb9c1a227 +#: 25f5deaf82234969896d2ff9af594576 370e4876a6f44d2fb97522e2d6436744 +#: 3bf364dda08e4407b362896b9f58c12d 5ab60fb665a04f979c0831942086c3de +#: 6463e465ccd0446d997680daed481da6 95024e9505d948148493ddafe8b895de +#: cf1fd8809876457cad8b65bb8ecdff62 db10884582044f4e9c0b780d876ae769 +#: discord.ext.pages.pagination.Paginator +#: discord.ext.pages.pagination.PaginatorButton +#: discord.ext.pages.pagination.PaginatorMenu of +msgid "type" +msgstr "" + +#: b4c0337d404a45e8892fe156cc9bd943 discord.ext.pages.pagination.Paginator:57 +#: of +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "" + +#: discord.ext.pages.pagination.Paginator:61 f93be253c778483880b98ed031460760 +#: of +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "" + +#: bf99cdb634044fbdaa3eb8afab3539a1 discord.ext.pages.pagination.Paginator:63 +#: of +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "" + +#: discord.ext.pages.pagination.Paginator:67 ebe7495d7a554db8911766d9a94dda30 +#: of +msgid "" +"The index of the default page group shown when the paginator is initially" +" sent. Defined by setting ``default`` to ``True`` on a " +":class:`PageGroup`." +msgstr "" + +#: 9427ff2e436a432290830b7a5ed07653 discord.ext.pages.pagination.Paginator:70 +#: of +msgid "Optional[:class:`int`]" +msgstr "" + +#: ce115ee07db249d3b02b2739d39dfb9f discord.ext.pages.pagination.Paginator:74 +#: of +msgid "A zero-indexed value showing the current page number." +msgstr "" + +#: 2ac3cef8cda94569a45f9c40a7419fcf cd1000c6b1654d0f856cdf9321d03a5c +#: discord.ext.pages.pagination.Paginator:76 +#: discord.ext.pages.pagination.Paginator:82 of +msgid ":class:`int`" +msgstr "" + +#: a3dcbf307b9f4881923e5a7270193d27 discord.ext.pages.pagination.Paginator:80 +#: of +msgid "A zero-indexed value showing the total number of pages." +msgstr "" + +#: 4e8469fd89304c68966aad2f8bc27030 discord.ext.pages.pagination.Paginator:86 +#: of +msgid "" +"A dictionary containing the :class:`~PaginatorButton` objects included in" +" this paginator." +msgstr "" + +#: 603b801b380945289ad846d62a25d0f3 6f163c5ef9af46fb96941b6d6f597e70 +#: discord.ext.pages.pagination.Paginator:88 +#: discord.ext.pages.pagination.Paginator.update_buttons:4 of +msgid "" +"Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, " +":class:`bool`]]]" +msgstr "" + +#: b8fbd37143be495fa07f7afd6e225bee discord.ext.pages.pagination.Paginator:92 +#: of +msgid "The user or member that invoked the paginator." +msgstr "" + +#: a193d3a3f88146cdbc98453f06ba4224 discord.ext.pages.pagination.Paginator:94 +#: of +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "" + +#: 3434a6aec3d144e28ca23d5691b76c64 discord.ext.pages.pagination.Paginator:98 +#: of +msgid "The message the paginator is attached to." +msgstr "" + +#: 249266a0e6c24ccdbd83f6d3b93049b7 be60611a1e5f4142bc4e8c2825ad0bce +#: discord.ext.pages.pagination.Paginator:100 +#: discord.ext.pages.pagination.Paginator.respond:25 of +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "" + +#: 02e566c042de48b1841f604571514d29 +#: discord.ext.pages.pagination.Paginator.update:1 of +msgid "" +"Updates the existing :class:`Paginator` instance with the provided " +"options." +msgstr "" + +#: 429d25bcb3884adca03177c1cf56439d +#: discord.ext.pages.pagination.Paginator.update:4 of +msgid "" +"The list of :class:`PageGroup` objects, :class:`Page` objects, strings, " +"embeds, or list of embeds to paginate." +msgstr "" + +#: b3c853535a3147128ef4397cfa4c2631 +#: discord.ext.pages.pagination.Paginator.update:36 of +msgid "A custom view whose items are appended below the pagination components." +msgstr "" + +#: da4ea72df96a4fbe99896196a3b51693 +#: discord.ext.pages.pagination.Paginator.update:50 of +msgid "" +"The interaction to use when updating the paginator. If not provided, the " +"paginator will be updated by using its stored :attr:`message` attribute " +"instead." +msgstr "" + +#: 32cf976654204696bcf4a6210302ffe3 +#: discord.ext.pages.pagination.Paginator.update:54 of +msgid "The initial page number to display when updating the paginator." +msgstr "" + +#: 0a8139d4555647b2bb348dabbddcbc6e +#: discord.ext.pages.pagination.Paginator.on_timeout:1 of +msgid "Disables all buttons when the view times out." +msgstr "" + +#: 128c5298c9494f91a4b3f649fa6df996 1b99936247fa444d8f760ffecb3bfbeb +#: 3c63f3adb2364adead3012e035129ebc 68e2cc93f0e6490b8f2f6cee4790cba9 +#: 718868e38cac43a586cfbd4a6305d236 73506917c2ae4d10839ac863f15c0649 +#: 948ff3860b7449e189966372f0999657 a7be2bff8d9e4794b701800978b38389 +#: b6e8b71f2e914b7aa52f4bf5895f9498 c2fbf9bef8224850b4afa5ea4c5afbc2 +#: discord.ext.pages.pagination.Paginator.cancel:10 +#: discord.ext.pages.pagination.Paginator.disable:10 +#: discord.ext.pages.pagination.Paginator.on_timeout:4 +#: discord.ext.pages.pagination.Paginator.page_action:7 +#: discord.ui.view.View.add_item:10 discord.ui.view.View.clear_items:4 +#: discord.ui.view.View.disable_all_items:7 +#: discord.ui.view.View.enable_all_items:7 +#: discord.ui.view.View.on_check_failure:9 discord.ui.view.View.on_error:18 +#: discord.ui.view.View.remove_item:7 discord.ui.view.View.stop:6 +#: e63b8fb4db3b4bee81d67b79af441412 e7e7b98e6e7b4408b492675432ece6e4 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 8d470e192c8f45a28576b5da00104921 +#: discord.ext.pages.pagination.Paginator.disable:1 of +msgid "Stops the paginator, disabling all of its components." +msgstr "" + +#: 1c19001e498d4934b264501cf3f195de +#: discord.ext.pages.pagination.Paginator.disable:4 of +msgid "Whether to disable components added via custom views." +msgstr "" + +#: discord.ext.pages.pagination.Paginator.disable:7 +#: e09e9f0034204fa084519c19526ececf of +msgid "The page content to show after disabling the paginator." +msgstr "" + +#: 385f026c4c984195899345daeff900dc +#: discord.ext.pages.pagination.Paginator.cancel:1 of +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "" + +#: d92a2abb21bd49f0b1a6c02cb2f1b83a +#: discord.ext.pages.pagination.Paginator.cancel:4 of +msgid "Whether to remove components added via custom views." +msgstr "" + +#: 5ced813a67dd4e249de76fa20d2cbfe4 +#: discord.ext.pages.pagination.Paginator.cancel:7 of +msgid "The page content to show after canceling the paginator." +msgstr "" + +#: 273705cd08924bcc81e0fb7eb24ab41f +#: discord.ext.pages.pagination.Paginator.goto_page:1 of +msgid "Updates the paginator message to show the specified page number." +msgstr "" + +#: 86705ad6d652450a8187cf631ecc4aef +#: discord.ext.pages.pagination.Paginator.goto_page:4 of +msgid "" +"The page to display. .. note:: Page numbers are zero-indexed when " +"referenced internally, but appear as one-indexed when shown to the " +"user." +msgstr "" + +#: 8e4069b66dfd41f9a73acb1874a5723d +#: discord.ext.pages.pagination.Paginator.goto_page:4 of +msgid "The page to display." +msgstr "" + +#: a05df0eb26fa4b9ebaf18d70d4d979f2 +#: discord.ext.pages.pagination.Paginator.goto_page:8 of +msgid "" +"Page numbers are zero-indexed when referenced internally, but appear as " +"one-indexed when shown to the user." +msgstr "" + +#: b46a6169ff5b433981d54d5239460cc7 +#: discord.ext.pages.pagination.Paginator.goto_page:12 of +msgid "" +"The interaction to use when editing the message. If not provided, the " +"message will be edited using the paginator's stored :attr:`message` " +"attribute instead." +msgstr "" + +#: ../../ext/pages/index.rst 071b3f2f83194ecb863f34a81f2b7318 +#: 23d2d513e75249be834c3da0e3806faf 433ab35ccdc34f8a8721f26b0e699f02 +#: 5b58697a956a4cf4a58ce5a800e4deb1 60cad8cd26d448e497604cad7a23855a +#: 7194b0de3a6c48f09395740786c65dfe 9d3a83013ff043eda39a19a8533e2db2 +#: afe45ade9581404fbe8fb11422546746 b76f2a1bbef34d9e922ff8ccd944e554 +msgid "Returns" +msgstr "" + +#: 395be673321547f88323e638d86c0bbf +#: discord.ext.pages.pagination.Paginator.goto_page:16 of +msgid "The message associated with the paginator." +msgstr "" + +#: 1e69c14db8ce48d48ba9c2d633221880 b6dcdd3d4ca34722a9e4b56af3acc19c +#: discord.ext.pages.pagination.Paginator.goto_page:17 +#: discord.ext.pages.pagination.Paginator.send:35 of +msgid ":class:`~discord.Message`" +msgstr "" + +#: 9bde443dec424572b5043c1a1666c470 +#: discord.ext.pages.pagination.Paginator.interaction_check:3 of +msgid "" +"A callback that is called when an interaction happens within the view " +"that checks whether the view should process item callbacks for the " +"interaction." +msgstr "" + +#: 1ab2878c6df045968a80c9a6132ff611 +#: discord.ext.pages.pagination.Paginator.interaction_check:6 of +msgid "" +"This is useful to override if, for example, you want to ensure that the " +"interaction author is a given user." +msgstr "" + +#: 74ea1075550e4bfead0fa3cc3dedbcf3 +#: discord.ext.pages.pagination.Paginator.interaction_check:9 of +msgid "The default implementation of this returns ``True``." +msgstr "" + +#: 327caaf61c324a10a0dfaf64d5f4e77b +#: discord.ext.pages.pagination.Paginator.interaction_check:11 of +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "" + +#: 504f795f741c495fab7278de056195c6 +#: discord.ext.pages.pagination.Paginator.interaction_check:15 of +msgid "" +"If an exception occurs within the body then the check is considered a " +"failure and :meth:`on_error` is called." +msgstr "" + +#: 616d5c00eb544301af1b0d00548c865e 62c2722e6b6a40fd8c8a215d7cb11a21 +#: discord.ext.pages.pagination.Paginator.interaction_check:19 +#: discord.ui.view.View.on_check_failure:6 of +msgid "The interaction that occurred." +msgstr "" + +#: cf58c9c3031c44dcbcc4d6428b2e79ca +#: discord.ext.pages.pagination.Paginator.interaction_check:22 of +msgid "Whether the view children's callbacks should be called." +msgstr "" + +#: 607f9270f774451e96d48d6a223876de c5464d8a113b4293be79478ba33f200d +#: discord.ext.pages.pagination.Paginator.interaction_check:23 +#: discord.ui.view.View.wait:8 of +msgid ":class:`bool`" +msgstr "" + +#: 3cb43fceb24a4303a7740545bbb7404d +#: discord.ext.pages.pagination.Paginator.add_menu:1 of +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "" + +#: abdf9feeb622435d94c856d8fcc2d2ff +#: discord.ext.pages.pagination.Paginator.add_default_buttons:1 of +msgid "" +"Adds the full list of default buttons that can be used with the " +"paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, " +"and ``last``." +msgstr "" + +#: 16033ccfd3734326b67553524cb67b97 +#: discord.ext.pages.pagination.Paginator.add_button:1 of +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "" + +#: ac7bec46e3714d67afca04109440ae90 +#: discord.ext.pages.pagination.Paginator.remove_button:1 of +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "" + +#: 4658b4a4f750447183ee2ecd2cbaadfe +#: discord.ext.pages.pagination.Paginator.update_buttons:1 of +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "" + +#: c2d8bc65b789479db1e60116d49bab98 +#: discord.ext.pages.pagination.Paginator.update_buttons:3 of +msgid "The dictionary of buttons that were updated." +msgstr "" + +#: 638eaa550f0547419dffb949d7e9ceb6 +#: discord.ext.pages.pagination.Paginator.update_custom_view:1 of +msgid "Updates the custom view shown on the paginator." +msgstr "" + +#: 997aaa398a3a43b6b53b595557fe623b +#: discord.ext.pages.pagination.Paginator.get_page_group_content:1 of +msgid "" +"Returns a converted list of `Page` objects for the given page group based" +" on the content of its pages." +msgstr "" + +#: d51ced468afd49acbb4cf1d506cd4f1c +#: discord.ext.pages.pagination.Paginator.get_page_group_content:5 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr "" + +#: 0ee5e3fd03144afb81fc1a6c6c12210b +#: discord.ext.pages.pagination.Paginator.get_page_content:1 of +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "" + +#: a0ccbe1c8fc4425295588d16116d15d6 +#: discord.ext.pages.pagination.Paginator.get_page_content:5 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr "" + +#: 5de60ff973594979bbbebf60e8de1154 +#: discord.ext.pages.pagination.Paginator.page_action:1 of +msgid "Triggers the callback associated with the current page, if any." +msgstr "" + +#: 12777550042c4fc88db802149be1f8c1 +#: discord.ext.pages.pagination.Paginator.page_action:4 of +msgid "The interaction that was used to trigger the page action." +msgstr "" + +#: d38f6b90fb214fd2a38c0598a305e9a6 +#: discord.ext.pages.pagination.Paginator.send:1 of +msgid "Sends a message with the paginated items." +msgstr "" + +#: abf2c08783684a009f6acb497aefbc07 +#: discord.ext.pages.pagination.Paginator.send:4 of +msgid "A command's invocation context." +msgstr "" + +#: 6b819a6920f04efdbefbc83eff28faaa +#: discord.ext.pages.pagination.Paginator.send:7 of +msgid "" +"A target where the paginated message should be sent, if different from " +"the original :class:`Context`" +msgstr "" + +#: 9630cacaacc24ddcb6ffc7702609685e +#: discord.ext.pages.pagination.Paginator.send:10 of +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "" + +#: 867846727c0943ff80115b0482336ac1 +#: discord.ext.pages.pagination.Paginator.send:13 of +msgid "" +"A reference to the :class:`~discord.Message` to which you are replying " +"with the paginator. This can be created using " +":meth:`~discord.Message.to_reference` or passed directly as a " +":class:`~discord.Message`. You can control whether this mentions the " +"author of the referenced message using the " +":attr:`~discord.AllowedMentions.replied_user` attribute of " +"``allowed_mentions`` or by setting ``mention_author``." +msgstr "" + +#: 65b0b09d70bf4e49b640609c5e99a404 +#: discord.ext.pages.pagination.Paginator.edit:17 +#: discord.ext.pages.pagination.Paginator.send:20 +#: fba3e242c89c4eefab5d66255b0cf54b of +msgid "" +"Controls the mentions being processed in this message. If this is passed," +" then the object is merged with :attr:`~discord.Client.allowed_mentions`." +" The merging behaviour only overrides attributes that have been " +"explicitly passed to the object, otherwise it uses the attributes set in " +":attr:`~discord.Client.allowed_mentions`. If no object is passed at all " +"then the defaults given by :attr:`~discord.Client.allowed_mentions` are " +"used instead." +msgstr "" + +#: 060f7bfa5d004b3d86d6a1c172bba770 +#: discord.ext.pages.pagination.Paginator.send:28 of +msgid "" +"If set, overrides the :attr:`~discord.AllowedMentions.replied_user` " +"attribute of ``allowed_mentions``." +msgstr "" + +#: 669ef73d878345249fe2920dcef25bb4 +#: discord.ext.pages.pagination.Paginator.edit:25 +#: discord.ext.pages.pagination.Paginator.send:31 +#: f202d710e2904f8a8f758be7d1f8e13f of +msgid "If set, deletes the paginator after the specified time." +msgstr "" + +#: ac39d8da08a34f0dae55de6f23200c09 +#: discord.ext.pages.pagination.Paginator.send:34 of +msgid "The message that was sent with the paginator." +msgstr "" + +#: 0d286971aaf84f359ea3f2b868341679 discord.ui.view.View.add_item:1 of +msgid "Adds an item to the view." +msgstr "" + +#: b596145e148445798536949956fec5b6 discord.ui.view.View.add_item:4 of +msgid "The item to add to the view." +msgstr "" + +#: ../../ext/pages/index.rst 9f2e580e981742ac800ab0c0ffa636e3 +#: b67cd9be980a4fdf8e179a3825ce7070 db25be38ef7749eab275cfcf7ce4fb30 +msgid "Raises" +msgstr "" + +#: 799eb95c1d8f40df9edcf9e5b694789e discord.ui.view.View.add_item:7 of +msgid "An :class:`Item` was not passed." +msgstr "" + +#: discord.ui.view.View.add_item:8 e69d7b97a3c8409c8efd81ad1626f25d of +msgid "" +"Maximum number of children has been exceeded (25) or the row the item" +" is trying to be added to is full." +msgstr "" + +#: discord.ui.view.View.clear_items:1 f7b8e5d7c4304348abcbfbc505545cf3 of +msgid "Removes all items from the view." +msgstr "" + +#: 1a4ac6f032f5427aab3f14952bb0a9ae discord.ui.view.View.disable_all_items:1 of +msgid "Disables all items in the view." +msgstr "" + +#: 115ed036dbed4b93bf59511d61482bc4 discord.ui.view.View.disable_all_items:4 of +msgid "A list of items in `self.children` to not disable from the view." +msgstr "" + +#: db376aa4460347ecaa0cc6a71294ed64 +#: discord.ext.pages.pagination.Paginator.edit:1 of +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "" + +#: d041a66736ff473ea7a033d2a180a519 +#: discord.ext.pages.pagination.Paginator.edit:5 of +msgid "" +"If invoked from an interaction, you will still need to respond to the " +"interaction." +msgstr "" + +#: 698e3ece2a734f139df7af407e051dc5 +#: discord.ext.pages.pagination.Paginator.edit:8 of +msgid "The message to edit with the paginator." +msgstr "" + +#: 8eb175cbee9947f89eee0e3239a53d93 +#: discord.ext.pages.pagination.Paginator.edit:11 of +msgid "" +"Whether to suppress embeds for the message. This removes all the embeds " +"if set to ``True``. If set to ``False`` this brings the embeds back if " +"they were suppressed. Using this parameter requires " +":attr:`~.Permissions.manage_messages`." +msgstr "" + +#: 441faf97de83480f8e9acd0688378a8c +#: discord.ext.pages.pagination.Paginator.edit:28 of +msgid "If set, changes the user that this paginator belongs to." +msgstr "" + +#: b9b96a33a4134ec08e531b25ce552a7b +#: discord.ext.pages.pagination.Paginator.edit:31 of +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "" + +#: bde2084b48ec4c9787e78682dcc81fb5 +#: discord.ext.pages.pagination.Paginator.edit:32 of +msgid "Optional[:class:`discord.Message`]" +msgstr "" + +#: 5529aa1751fe48a1aac3071120fe5b99 discord.ui.view.View.enable_all_items:1 of +msgid "Enables all items in the view." +msgstr "" + +#: b115fab8e9f441ae97058262b47e4eeb discord.ui.view.View.enable_all_items:4 of +msgid "A list of items in `self.children` to not enable from the view." +msgstr "" + +#: discord.ui.view.View.from_message:1 fb9fe3622ae9490eba53b40685382759 of +msgid "Converts a message's components into a :class:`View`." +msgstr "" + +#: a5239e55bd5d43f5831e3e995120db1d discord.ui.view.View.from_message:3 of +msgid "" +"The :attr:`.Message.components` of a message are read-only and separate " +"types from those in the ``discord.ui`` namespace. In order to modify and " +"edit message components they must be converted into a :class:`View` " +"first." +msgstr "" + +#: 5e13e4d3661642fd8e02726cc001660a discord.ui.view.View.from_message:9 of +msgid "The message with components to convert into a view." +msgstr "" + +#: 1830d4b99a8e451d8fc931733f8bfd68 discord.ui.view.View.from_message:12 of +msgid "The timeout of the converted view." +msgstr "" + +#: 9bc9774d4bd74c418de1d9b36c3c5c8a discord.ui.view.View.from_message:15 of +msgid "" +"The converted view. This always returns a :class:`View` and not one of " +"its subclasses." +msgstr "" + +#: 086f552dd0d342c290385bf3bdf985ab discord.ui.view.View.from_message:17 of +msgid ":class:`View`" +msgstr "" + +#: b2a30fc2dab449648d3ccac33a6713a4 discord.ui.view.View.get_item:1 of +msgid "" +"Get an item from the view with the given custom ID. Alias for " +"`utils.get(view.children, custom_id=custom_id)`." +msgstr "" + +#: 39c8c0f1510244288c5734268ff2ecfc discord.ui.view.View.get_item:4 of +msgid "The custom_id of the item to get" +msgstr "" + +#: d3278dd56b5e4104b98070ea85764693 discord.ui.view.View.get_item:7 of +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "" + +#: 49f9aab462e146199bb0ad2eb8987e74 discord.ui.view.View.get_item:8 of +msgid "Optional[:class:`Item`]" +msgstr "" + +#: 1d7e2b0e1c18422c9227cbe351a94a36 discord.ui.view.View.is_dispatching:1 of +msgid "Whether the view has been added for dispatching purposes." +msgstr "" + +#: 47016b19dd1741b1a063b2f5068dd3ec 7ebc8aa9eb5a4749b302688f0898a9bc +#: discord.ui.view.View.is_dispatching:4 discord.ui.view.View.is_finished:4 +#: discord.ui.view.View.is_persistent:7 e528916f3a854bc58c88136808c5e02c of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 37860b521c8143f3833fb4beb0a1a2ea discord.ui.view.View.is_finished:1 of +msgid "Whether the view has finished interacting." +msgstr "" + +#: 8fcb089aef584d57b8d0165e8a22048e discord.ui.view.View.is_persistent:1 of +msgid "Whether the view is set up as persistent." +msgstr "" + +#: b1fe671c39f5430baade51f464b8eaf2 discord.ui.view.View.is_persistent:3 of +msgid "" +"A persistent view has all their components with a set ``custom_id`` and a" +" :attr:`timeout` set to ``None``." +msgstr "" + +#: 26ea98091eed4b37a02e4fb299ce6413 discord.ui.view.View.on_check_failure:1 of +msgid "" +"|coro| A callback that is called when a :meth:`View.interaction_check` " +"returns ``False``. This can be used to send a response when a check " +"failure occurs." +msgstr "" + +#: de6e9c49e57d45b2a3a59296cd5da7c8 discord.ui.view.View.on_error:3 of +msgid "" +"A callback that is called when an item's callback or " +":meth:`interaction_check` fails with an error." +msgstr "" + +#: bf46d9fcc45d4f1b885a743615cbd049 discord.ui.view.View.on_error:6 of +msgid "The default implementation prints the traceback to stderr." +msgstr "" + +#: 955a74f46d014b4db4a84da5f9e43c02 discord.ui.view.View.on_error:9 of +msgid "The exception that was raised." +msgstr "" + +#: discord.ui.view.View.on_error:12 f882a5d3e3cb47b1bcf9d7c720cf97d7 of +msgid "The item that failed the dispatch." +msgstr "" + +#: 0eaa94893f944a62a87305a25f22ee07 discord.ui.view.View.on_error:15 of +msgid "The interaction that led to the failure." +msgstr "" + +#: cb2bb9fa0f2d4adf8ae284983f41b8eb discord.ui.view.View.remove_item:1 of +msgid "Removes an item from the view." +msgstr "" + +#: 13af2b65c7a6448b89c506d4b733b44a discord.ui.view.View.remove_item:4 of +msgid "The item to remove from the view." +msgstr "" + +#: cd3fd1e5c76042c8896020ad68e3d6ed discord.ui.view.View.stop:1 of +msgid "Stops listening to interaction events from this view." +msgstr "" + +#: da2a7c40b68548eea51cd5f66cd11ea1 discord.ui.view.View.stop:3 of +msgid "This operation cannot be undone." +msgstr "" + +#: a7fd726fe8824da08c1ef4726cb85e56 discord.ui.view.View.wait:1 of +msgid "Waits until the view has finished interacting." +msgstr "" + +#: 2c6c8756f7ad4b758c243288a6f448be discord.ui.view.View.wait:3 of +msgid "" +"A view is considered finished when :meth:`stop` is called, or it times " +"out." +msgstr "" + +#: 3c69a4b00f914f128f11aa2b8240d061 discord.ui.view.View.wait:6 of +msgid "" +"If ``True``, then the view timed out. If ``False`` then the view finished" +" normally." +msgstr "" + +#: 5a13e5a534e2484180375a59f828dadf +#: discord.ext.pages.pagination.Paginator.respond:1 of +msgid "Sends an interaction response or followup with the paginated items." +msgstr "" + +#: da2b82bc0dac4e5e9ffff1e289a0efc3 +#: discord.ext.pages.pagination.Paginator.respond:4 of +msgid "" +"The interaction or BridgeContext which invoked the paginator. If passing " +"a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "" + +#: discord.ext.pages.pagination.Paginator.respond:8 +#: f5d2bd10e4864a64b7bb4175916dc97c of +msgid "" +"Whether the paginator message and its components are ephemeral. If " +"``target`` is specified, the ephemeral message content will be " +"``target_message`` instead. .. warning:: If your paginator is " +"ephemeral, it cannot have a timeout longer than 15 minutes (and " +"cannot be persistent)." +msgstr "" + +#: a5b209f9e41c40668aa22f24ab3cc043 +#: discord.ext.pages.pagination.Paginator.respond:8 of +msgid "" +"Whether the paginator message and its components are ephemeral. If " +"``target`` is specified, the ephemeral message content will be " +"``target_message`` instead." +msgstr "" + +#: a5a9d6f0eeae435e85be10f33420ae78 +#: discord.ext.pages.pagination.Paginator.respond:13 of +msgid "" +"If your paginator is ephemeral, it cannot have a timeout longer than 15 " +"minutes (and cannot be persistent)." +msgstr "" + +#: 050718b89ecc46ca8d2bc5eb98e6e72c +#: discord.ext.pages.pagination.Paginator.respond:17 of +msgid "" +"A target where the paginated message should be sent, if different from " +"the original :class:`discord.Interaction`" +msgstr "" + +#: 095ca86d10b7456e90419b5b5023b0d3 +#: discord.ext.pages.pagination.Paginator.respond:21 of +msgid "" +"The content of the interaction response shown when the paginator message " +"is sent elsewhere." +msgstr "" + +#: bd17bd959c86463c8dc7581e9843ad82 +#: discord.ext.pages.pagination.Paginator.respond:24 of +msgid "" +"The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that " +"was sent with the paginator." +msgstr "" + +#: ../../ext/pages/index.rst:312 20630bd0e40b4eeaa17398c49bc9c715 +msgid "PaginatorButton" +msgstr "" + +#: 9d89624578c7499fb29f824d9a4a0336 +#: discord.ext.pages.pagination.PaginatorButton:1 of +msgid "Creates a button used to navigate the paginator." +msgstr "" + +#: discord.ext.pages.pagination.PaginatorButton:4 +#: ef90e083b4c24a29b99dc4bbe2197f46 of +msgid "" +"The type of button being created. Must be one of ``first``, ``prev``, " +"``next``, ``last``, or ``page_indicator``." +msgstr "" + +#: d839761b333045e49f5c7ae824615764 +#: discord.ext.pages.pagination.PaginatorButton:8 of +msgid "" +"The label shown on the button. Defaults to a capitalized version of " +"``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "" + +#: discord.ext.pages.pagination.PaginatorButton:12 +#: e3c16ce4afa94d8099e73c3985fde852 of +msgid "The emoji shown on the button in front of the label." +msgstr "" + +#: 33acfd60dff04f368d4eced4ccde5acd +#: discord.ext.pages.pagination.PaginatorButton:15 of +msgid "Whether to initially show the button as disabled." +msgstr "" + +#: 629096497ac84fc69a4ff620e40e46ff +#: discord.ext.pages.pagination.PaginatorButton:18 of +msgid "" +"The label shown on the button when ``loop_pages`` is set to ``True`` in " +"the Paginator class." +msgstr "" + +#: 5161e3d1f2ea4042bcf7f389c9cb86fe +#: discord.ext.pages.pagination.PaginatorButton:23 of +msgid "" +"The paginator class where this button is being used. Assigned to the " +"button when ``Paginator.add_button`` is called." +msgstr "" + +#: 65b16c206cc54c01a115ae6dd829d2c1 +#: discord.ext.pages.pagination.PaginatorButton:26 +#: discord.ext.pages.pagination.PaginatorMenu:12 +#: f24f43ef85fc4fa49db3873d9f486199 of +msgid ":class:`Paginator`" +msgstr "" + +#: 19fef157664f4c64a9b773232fe202e6 discord.ext.pages.PaginatorButton.label:1 +#: of +msgid "The label of the button, if available." +msgstr "" + +#: 9b573729b4a841b88ca87d1314759096 discord.ext.pages.PaginatorButton.emoji:1 +#: of +msgid "The emoji of the button, if available." +msgstr "" + +#: discord.ext.pages.PaginatorButton.style:1 e095e568418b49cdbbac418b65bddc4a +#: of +msgid "The style of the button." +msgstr "" + +#: 73ee32fb4f884db8a2baaec52956a4ff +#: discord.ext.pages.PaginatorButton.disabled:1 of +msgid "Whether the button is disabled or not." +msgstr "" + +#: b2dbc527cb194711bb5c77bedc10c1e1 +#: discord.ext.pages.pagination.PaginatorButton.callback:3 of +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "" + +#: 9b2955fae778492b859452b34a58b65a +#: discord.ext.pages.pagination.PaginatorButton.callback:6 of +msgid "The interaction created by clicking the navigation button." +msgstr "" + +#: cd80cb2731d3486b84b9c1a19aed382d +#: discord.ext.pages.PaginatorButton.custom_id:1 of +msgid "The ID of the button that gets received during an interaction." +msgstr "" + +#: 57fd2e9ba90f45fc9504e7438dbe787f +#: discord.ext.pages.PaginatorButton.custom_id:3 of +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "" + +#: c87c8240e5dd4ff69d19866fc6522c5f discord.ext.pages.PaginatorButton.sku_id:1 +#: of +msgid "The ID of the SKU this button refers to." +msgstr "" + +#: dda9b3885e0a4250979ffbca77e592f9 discord.ext.pages.PaginatorButton.url:1 of +msgid "The URL this button sends you to." +msgstr "" + +#: 779b1ffc73854c80b1b87b3fb7b03228 b3dc3a0e33de4930b09c6128690cc85b +#: discord.ext.pages.PaginatorButton.view:1 +#: discord.ext.pages.PaginatorMenu.view:1 of +msgid "The underlying view for this item." +msgstr "" + +#: ../../ext/pages/index.rst:321 bbee89d0c8f54cddb8d204dce6e729bd +msgid "PaginatorMenu" +msgstr "" + +#: 11ee7599b2af45e69b577929e02558da +#: discord.ext.pages.pagination.PaginatorMenu:1 of +msgid "" +"Creates a select menu used to switch between page groups, which can each " +"have their own set of buttons." +msgstr "" + +#: 93f0b0f5f5344cd7917004ed6c17ade5 +#: discord.ext.pages.pagination.PaginatorMenu:4 of +msgid "The placeholder text that is shown if nothing is selected." +msgstr "" + +#: 733bbd198a724ff89d849e17bb4464ef +#: discord.ext.pages.pagination.PaginatorMenu:9 of +msgid "" +"The paginator class where this menu is being used. Assigned to the menu " +"when ``Paginator.add_menu`` is called." +msgstr "" + +#: discord.ui.select.Select.add_option:1 fd0f251caa31466f86f28a963b80e74e of +msgid "Adds an option to the select menu." +msgstr "" + +#: 0ef246583a96465ab9a2662925dea262 discord.ui.select.Select.add_option:3 of +msgid "" +"To append a pre-existing :class:`discord.SelectOption` use the " +":meth:`append_option` method instead." +msgstr "" + +#: 7debbe68aa84435e8200d7e2981cd202 discord.ui.select.Select.add_option:7 of +msgid "" +"The label of the option. This is displayed to users. Can only be up to " +"100 characters." +msgstr "" + +#: 08e93f8f2b6b4e2e9bc8a54af7e9cabf discord.ui.select.Select.add_option:11 of +msgid "" +"The value of the option. This is not displayed to users. If not given, " +"defaults to the label. Can only be up to 100 characters." +msgstr "" + +#: c8c94a6f3925491fbdbfc616e9f7a4bb discord.ui.select.Select.add_option:15 of +msgid "" +"An additional description of the option, if any. Can only be up to 100 " +"characters." +msgstr "" + +#: 03aca7b4fad14c57a7cec8d245b4958b discord.ui.select.Select.add_option:19 of +msgid "" +"The emoji of the option, if available. This can either be a string " +"representing the custom or unicode emoji or an instance of " +":class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "" + +#: discord.ui.select.Select.add_option:23 e73c3cef480d411881ff3001d10f64f4 of +msgid "Whether this option is selected by default." +msgstr "" + +#: 39baed4852504458b9d8d46f72c39a2a 8aa241191edb441496f0c1bd02fe0da0 +#: discord.ui.select.Select.add_option:26 +#: discord.ui.select.Select.append_option:7 of +msgid "The number of options exceeds 25." +msgstr "" + +#: bafa80d0afd248d4b54b80365d46b82a discord.ui.select.Select.append_option:1 of +msgid "Appends an option to the select menu." +msgstr "" + +#: 2d8599f9eca74a0cb9cc8f88c0406158 discord.ui.select.Select.append_option:4 of +msgid "The option to append to the select menu." +msgstr "" + +#: 97d6790260324dad936de6871ef37839 +#: discord.ext.pages.PaginatorMenu.channel_types:1 of +msgid "A list of channel types that can be selected in this menu." +msgstr "" + +#: d75ecd6ec9e44825a919ca427b5ec5e4 discord.ext.pages.PaginatorMenu.custom_id:1 +#: of +msgid "The ID of the select menu that gets received during an interaction." +msgstr "" + +#: 4ca8076e7aa84cf0959662de2d2070a3 discord.ext.pages.PaginatorMenu.disabled:1 +#: of +msgid "Whether the select is disabled or not." +msgstr "" + +#: 89964f8198b14cc49d9b7ab8b6b5b5c1 +#: discord.ext.pages.PaginatorMenu.max_values:1 of +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "" + +#: 63d719dbf42149e1ad7e9107549a1c8e +#: discord.ext.pages.PaginatorMenu.min_values:1 of +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "" + +#: 6323c7b02d2242bfaec760b147775d6d discord.ext.pages.PaginatorMenu.options:1 +#: of +msgid "A list of options that can be selected in this menu." +msgstr "" + +#: 2360c22bf0db488ea313baf24fc77930 +#: discord.ext.pages.PaginatorMenu.placeholder:1 of +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "" + +#: 1a9c671416ff416a8098e527e4238487 discord.ext.pages.PaginatorMenu.values:1 of +msgid "" +"List[:class:`str`] | List[:class:`discord.Member` | " +":class:`discord.User`]] | List[:class:`discord.Role`]] | " +"List[:class:`discord.Member` | :class:`discord.User` | " +":class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None:" +" A list of values that have been selected by the user. This will be " +"``None`` if the select has not been interacted with yet." +msgstr "" + +#: discord.ext.pages.pagination.PaginatorMenu.callback:3 +#: f77011c86cae47989890beafa1381460 of +msgid "The coroutine that is called when a menu option is selected." +msgstr "" + +#: b46da7fdc2e2499f8b9c9229a1d4258e +#: discord.ext.pages.pagination.PaginatorMenu.callback:6 of +msgid "The interaction created by selecting the menu option." +msgstr "" + +#: ../../ext/pages/index.rst:330 729faa6949a64481845ce15d9de049be +msgid "PageGroup" +msgstr "" + +#: 0f19f3e8fcae4dd2b7871b731090eeb4 discord.ext.pages.pagination.PageGroup:1 of +msgid "Creates a group of pages which the user can switch between." +msgstr "" + +#: ddf81666476e43c1b66bac8ad7016d82 discord.ext.pages.pagination.PageGroup:3 of +msgid "" +"Each group of pages can have its own options, custom buttons, custom " +"views, etc." +msgstr "" + +#: discord.ext.pages.pagination.PageGroup:7 ecc0ed43087e49ce9f6bc57ac582a2cb of +msgid "" +"If multiple :class:`PageGroup` objects have different options, they " +"should all be set explicitly when creating each instance." +msgstr "" + +#: discord.ext.pages.pagination.PageGroup:11 f44c1d50fe2241ae90bd68f0b86bc490 +#: of +msgid "" +"The list of :class:`Page` objects, strings, embeds, or list of embeds to " +"include in the page group." +msgstr "" + +#: 618c8dc7c14745af8932b5e444a46f47 discord.ext.pages.pagination.PageGroup:14 +#: of +msgid "" +"The label shown on the corresponding PaginatorMenu dropdown option. Also " +"used as the SelectOption value." +msgstr "" + +#: 6233ba31ec5d4ae6a3e21fea5df4fd03 discord.ext.pages.pagination.PageGroup:18 +#: of +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "" + +#: 406c3c7333924c1a928efb524d4d59b3 discord.ext.pages.pagination.PageGroup:21 +#: of +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "" + +#: 640d81823b8945488f29aa310f7b50fe discord.ext.pages.pagination.PageGroup:24 +#: of +msgid "" +"Whether the page group should be the default page group initially shown " +"when the paginator response is sent. Only one ``PageGroup`` can be the " +"default page group." +msgstr "" + +#: a0d57e1edeaa4012830f0df83c584427 discord.ext.pages.pagination.PageGroup:49 +#: of +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/ext/tasks/index.po b/docs/locales/en/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..70b909f6e3 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,540 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 02:50+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../ext/tasks/index.rst:4 59da74174e4c4214b076a3810bb95fe7 +msgid "discord.ext.tasks" +msgstr "" + +#: ../../ext/tasks/index.rst:8 3ac09d081ea348e789447c5199809ff0 +msgid "" +"One of the most common operations when making a bot is having a loop run " +"in the background at a specified interval. This pattern is very common " +"but has a lot of things you need to look out for:" +msgstr "" + +#: ../../ext/tasks/index.rst:10 8db3c338d0cb4abfb5af02b5480fa3a1 +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "" + +#: ../../ext/tasks/index.rst:11 436e65611b4a47c4996463b1bd23c9e5 +msgid "What do I do if the internet goes out?" +msgstr "" + +#: ../../ext/tasks/index.rst:12 3e307085fe7c497c92cedd058ea8917f +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "" + +#: ../../ext/tasks/index.rst:14 555b5e79b7f74c039e7bf6b0dc625f26 +msgid "" +"The goal of this Pycord extension is to abstract all these worries away " +"from you." +msgstr "" + +#: ../../ext/tasks/index.rst:17 e46a6ded9da3444a8831a4322b89eec3 +msgid "Recipes" +msgstr "" + +#: ../../ext/tasks/index.rst:19 d1eb26160af441c3ad80b0ddacfb1db5 +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "" + +#: ../../ext/tasks/index.rst:38 a7a08f1d572b44eda5576c51da81582f +msgid "Adding an exception to handle during reconnect:" +msgstr "" + +#: ../../ext/tasks/index.rst:61 16a5fd6c73024a8aa67e2197954b283c +msgid "Looping a certain amount of times before exiting:" +msgstr "" + +#: ../../ext/tasks/index.rst:77 5ec06169ced54b6690469d8b3aacb90c +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "" + +#: ../../ext/tasks/index.rst:102 4d5885d1008d4e288360ef1cc770187f +msgid "Doing something during cancellation:" +msgstr "" + +#: ../../ext/tasks/index.rst:136 784d60950fd842b88251fa1b9ad96b6b +msgid "API Reference" +msgstr "" + +#: 0d9e3d92282d42b39abe6bda09a6c1a5 discord.ext.tasks.Loop:1 of +msgid "" +"A background task helper that abstracts the loop and reconnection logic " +"for you." +msgstr "" + +#: 94f3800cced04f77866012b145727c45 discord.ext.tasks.Loop:3 of +msgid "The main interface to create this is through :func:`loop`." +msgstr "" + +#: ../../ext/tasks/index.rst 0430760556bc454eb496f803a14cbe47 +#: 224eb1ea4d464d899b6db853b26a2846 4652ba98dd17419892fcd50a56a420d0 +#: 6c4c3d6ae0cf4dd3bf9a90b9939d1d43 6f12894246604c7eab1521c1bd45ca57 +#: 761a207eac3447b899de047d9e5ebf7b 7b563966d82a4f03b7d409731c7032b5 +#: 91965bac6d654b3e8109e274bdc46bfd bef7bd65f8fd40808f7c4a269ed9d7c9 +#: cabe2bc452c248be884063fac80d1ad0 eda2eba72cd74d40a81fb96a622558f1 +msgid "Parameters" +msgstr "" + +#: 8cf7f115e3e94e6491cfb5cdff90f8d1 discord.ext.tasks.Loop.after_loop:1 of +msgid "" +"A decorator that register a coroutine to be called after the loop " +"finished running." +msgstr "" + +#: ac000acd3f5743c1a5679fd61466b379 d4f8de6e87f64f9bbc7b4f305e1986cf +#: discord.ext.tasks.Loop.after_loop:3 discord.ext.tasks.Loop.before_loop:6 of +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "" + +#: 8cb871d1f5da49e79441d574f90ac13c discord.ext.tasks.Loop.after_loop:7 of +msgid "" +"This coroutine is called even during cancellation. If it is desirable to " +"tell apart whether something was cancelled or not, check to see whether " +":meth:`is_being_cancelled` is ``True`` or not." +msgstr "" + +#: 73c64e4f2eeb4b0eaa468253fe8ab317 discord.ext.tasks.Loop.after_loop:12 of +msgid "The coroutine to register after the loop finishes." +msgstr "" + +#: ../../ext/tasks/index.rst 27b88dc7486040678f313ebaed311309 +#: 4f0346fd2f594d87bc6a71fc5f3aaf36 88dd06b54a304b18aaafa8828477df67 +#: 95e660541beb4b44a8764bd93c54a94e a6b9eae8aff44f3ca7bd392a1f0ef0a0 +#: e37d85d7fd3a46cfb5ba0faec8cc2057 eb4160d3b1904ad7b6fb4a90b73082a8 +msgid "Raises" +msgstr "" + +#: 34a7b1d07fa947eca3999296e8c0e55a 369596d73e694c09aa9e9476267a53bd +#: a665cd72f12f444e93e63d177913e3a4 discord.ext.tasks.Loop.after_loop:15 +#: discord.ext.tasks.Loop.before_loop:12 discord.ext.tasks.Loop.error:14 of +msgid "The function was not a coroutine." +msgstr "" + +#: ../../ext/tasks/index.rst 07d97a21eac140af8f4d536dcb062e2e +#: 0da50f3c0c5e4d7bb6fb2b2b8a3138a3 33d39f515aa24c48a28b1f3c05edef44 +#: 3f67b80a7be749d6b9e06e40040ba69e 54b3c2d1fd1b471b83c462abaeeedee8 +#: 6b16812b4e8d43a48dfc08003424686b 7d90def94e9b4721b355b5c6568e8e6f +#: 8de254edf5c84d599fb5c37d26253ec0 a2407e90429149a79db1b5ee278a1dc9 +#: bf5eae97450b4e40bd2157395afa650e c236bd9da41742fa9c9399bd38e4aa90 +#: df4b78673a4946d18d2e5d56973c31a1 ffc3e9102ad84c3c9424d446574b2b0c +msgid "Return type" +msgstr "" + +#: 2576cec782cf4d21bc6d4cd68fb2044e 809ce216769e456b858d7830388f6963 +#: discord.ext.tasks.Loop.after_loop:17 discord.ext.tasks.Loop.before_loop:14 +#: of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`FT\\`\\`\\, bound\\= " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr "" + +#: 29ffc9a0452f4bb7b0c6d26b12bad850 discord.ext.tasks.Loop.before_loop:1 of +msgid "" +"A decorator that registers a coroutine to be called before the loop " +"starts running." +msgstr "" + +#: 27da0e08409c41898200b30e74fb4894 discord.ext.tasks.Loop.before_loop:3 of +msgid "" +"This is useful if you want to wait for some bot state before the loop " +"starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "" + +#: b0c7be8d4ce84d3baa6bcd24027bee2b discord.ext.tasks.Loop.before_loop:9 of +msgid "The coroutine to register before the loop runs." +msgstr "" + +#: afec46798b8b440ba38c4fd62fa80fd4 discord.ext.tasks.Loop.error:1 of +msgid "" +"A decorator that registers a coroutine to be called if the task " +"encounters an unhandled exception." +msgstr "" + +#: c93726b33b2343148524f006e53e436b discord.ext.tasks.Loop.error:3 of +msgid "" +"The coroutine must take only one argument the exception raised (except " +"``self`` in a class context)." +msgstr "" + +#: 7a8a6183c0dd4264a404dd9e7330321c discord.ext.tasks.Loop.error:5 of +msgid "" +"By default, this prints to :data:`sys.stderr` however it could be " +"overridden to have a different implementation." +msgstr "" + +#: a60614b72b074d8fb36796b2656d2ae9 discord.ext.tasks.Loop.error:11 of +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "" + +#: db7c90536e494551a78eae3eb557d085 discord.ext.tasks.Loop.error:16 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\" +" \\\\\\(\\`\\`ET\\`\\`\\, bound\\= " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, " +"\\:py\\:class\\:\\`BaseException\\`\\]\\, " +"\\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr "" + +#: 5e6767c4d5274c98af777dc1798705a9 discord.ext.tasks.Loop.seconds:1 of +msgid "" +"Read-only value for the number of seconds between each iteration. " +"``None`` if an explicit ``time`` value was passed instead." +msgstr "" + +#: cb3c8e59e3ae41ff90f25ab50b2291d2 discord.ext.tasks.Loop.minutes:1 of +msgid "" +"Read-only value for the number of minutes between each iteration. " +"``None`` if an explicit ``time`` value was passed instead." +msgstr "" + +#: 4ec44806924247d389a4222760d17398 discord.ext.tasks.Loop.hours:1 of +msgid "" +"Read-only value for the number of hours between each iteration. ``None`` " +"if an explicit ``time`` value was passed instead." +msgstr "" + +#: a4a728fad7b744f1b572a3c1b2d900f2 discord.ext.tasks.Loop.time:1 of +msgid "" +"Read-only list for the exact times this loop runs at. ``None`` if " +"relative times were passed instead." +msgstr "" + +#: 46a26f5c4f654551917d4052c697d446 discord.ext.tasks.Loop.current_loop:1 of +msgid "The current iteration of the loop." +msgstr "" + +#: 67cc28bb7d7f41fd98f5537ff865fd59 discord.ext.tasks.Loop.next_iteration:1 of +msgid "When the next iteration of the loop will occur." +msgstr "" + +#: a9bf7898d326412dad82fa5a15f28684 discord.ext.tasks.Loop.__call__:1 of +msgid "|coro|" +msgstr "" + +#: c3c46c7036f341b1b90e0abea8f5f616 discord.ext.tasks.Loop.__call__:3 of +msgid "Calls the internal callback that the task holds." +msgstr "" + +#: 0eea72ae5aa84c54b46185aa5c361739 376b8508bb68448e9350e524f6d32325 +#: discord.ext.tasks.Loop.__call__:8 discord.ext.tasks.Loop.restart:9 +#: discord.ext.tasks.Loop.start:4 f99f14954e59457eaabda6d178089525 of +msgid "The arguments to use." +msgstr "" + +#: 185f83c525344b5fb287ea076b7886c5 1906741e1b214e448dd86dbd7128b436 +#: 1da985900f1b4aed8d9b0c3917920ca7 discord.ext.tasks.Loop.__call__:10 +#: discord.ext.tasks.Loop.restart:11 discord.ext.tasks.Loop.start:6 of +msgid "The keyword arguments to use." +msgstr "" + +#: 13e340d01db24b0eaf05daf96be094de discord.ext.tasks.Loop.__call__:12 of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr "" + +#: 921266d2dbea49ed8cf049cea79b9eec discord.ext.tasks.Loop.start:1 of +msgid "Starts the internal task in the event loop." +msgstr "" + +#: 619644ebbe9a4476af9a5564d1028373 discord.ext.tasks.Loop.start:8 of +msgid "A task has already been launched and is running." +msgstr "" + +#: ../../ext/tasks/index.rst cf40520758d644df9ddec49a8aa57320 +#: f20f33b463e44af88836838ef51a6e54 +msgid "Returns" +msgstr "" + +#: 2de78bd7b1a447518ddece14601b9e87 discord.ext.tasks.Loop.start:10 of +msgid "The task that has been created." +msgstr "" + +#: discord.ext.tasks.Loop.start:11 e309e5aef21247378016668a451c034d of +msgid ":class:`asyncio.Task`" +msgstr "" + +#: b0ed2c9ed3794b04aa76ffa817151a2d discord.ext.tasks.Loop.stop:1 of +msgid "Gracefully stops the task from running." +msgstr "" + +#: 728c248aab564a90a3260107d51aba61 discord.ext.tasks.Loop.stop:3 of +msgid "" +"Unlike :meth:`cancel`\\, this allows the task to finish its current " +"iteration before gracefully exiting. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 455bbbc49062472e84be47a8520c7a7e discord.ext.tasks.Loop.stop:10 of +msgid "" +"If the internal function raises an error that can be handled before " +"finishing then it will retry until it succeeds." +msgstr "" + +#: 3adfd1fe09014389a8d77c57bc6a9a33 discord.ext.tasks.Loop.stop:14 of +msgid "" +"If this is undesirable, either remove the error handling before stopping " +"via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "" + +#: 3a18cece246a4010a6ab25de921042cc discord.ext.tasks.Loop.cancel:1 of +msgid "Cancels the internal task, if it is running." +msgstr "" + +#: 2efbe31b3fd64b6eacee66fb02b272aa 5871f9579cb5482a9eb81da12f4cdd26 +#: a83424395d0f4d8d8ebfd708aebfb3b9 cc431f5256bc4e699afe36a16bb35452 +#: discord.ext.tasks.Loop.add_exception_type:16 discord.ext.tasks.Loop.cancel:4 +#: discord.ext.tasks.Loop.change_interval:29 discord.ext.tasks.Loop.restart:13 +#: of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: a7de1ec471ef4af788957432e6df3502 discord.ext.tasks.Loop.restart:1 of +msgid "A convenience method to restart the internal task." +msgstr "" + +#: discord.ext.tasks.Loop.restart:5 f8b7b414464243bb80406dcbb475f87b of +msgid "" +"Due to the way this function works, the task is not returned like " +":meth:`start`." +msgstr "" + +#: 327d247dc3704dcca9f385d5d879e03c discord.ext.tasks.Loop.add_exception_type:1 +#: of +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "" + +#: d0ccc7fae84244f58ab340407c73bbf1 discord.ext.tasks.Loop.add_exception_type:3 +#: of +msgid "" +"By default, the exception types handled are those handled by " +":meth:`discord.Client.connect`\\, which includes a lot of internet " +"disconnection errors." +msgstr "" + +#: 979bf5b73dcf4870a3d33b8e994c371d discord.ext.tasks.Loop.add_exception_type:7 +#: of +msgid "" +"This function is useful if you're interacting with a 3rd party library " +"that raises its own set of exceptions." +msgstr "" + +#: 162db15291784b0fa4b3654019ca5aa4 d46fb346a0d249eebdb303ea7b661ab3 +#: discord.ext.tasks.Loop.add_exception_type:11 +#: discord.ext.tasks.Loop.remove_exception_type:4 of +msgid "An argument list of exception classes to handle." +msgstr "" + +#: 5fb93a77f12e4138a319bd0fa837a848 +#: discord.ext.tasks.Loop.add_exception_type:14 of +msgid "" +"An exception passed is either not a class or not inherited from " +":class:`BaseException`." +msgstr "" + +#: 9567edfad8a444f6a38c8cd8ad6697dd +#: discord.ext.tasks.Loop.clear_exception_types:1 of +msgid "" +"Removes all exception types that are handled. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 714a51591f9143eab9a0a994136f1368 +#: discord.ext.tasks.Loop.clear_exception_types:7 of +msgid "This operation obviously cannot be undone!" +msgstr "" + +#: discord.ext.tasks.Loop.remove_exception_type:1 +#: f0710a79660c4be0a5d577ed8a840729 of +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "" + +#: 4ca4d3d9ff2346e2a6b79c8ed24ef34c +#: discord.ext.tasks.Loop.remove_exception_type:7 of +msgid "Whether all exceptions were successfully removed." +msgstr "" + +#: afcf8b92eb0a4e10990054ad284c53d7 +#: discord.ext.tasks.Loop.remove_exception_type:8 of +msgid ":class:`bool`" +msgstr "" + +#: discord.ext.tasks.Loop.get_task:1 e1d9e16237bb4547af60a9877b90b088 of +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "" + +#: 260dd2e1b8ad4da5a5a7f29ab8f540ef discord.ext.tasks.Loop.get_task:4 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\" +" \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr "" + +#: 9f7395681a764732af43ed770788b329 discord.ext.tasks.Loop.is_being_cancelled:1 +#: of +msgid "Whether the task is being cancelled." +msgstr "" + +#: ca525c4cd84243e7a6954afd8c4177ca discord.ext.tasks.Loop.is_being_cancelled:4 +#: of +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: b07983af01e44e859cff333049533f23 discord.ext.tasks.Loop.failed:1 of +msgid "" +"Whether the internal task has failed. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: afea19295c07476b9c661c3c4877faa0 discord.ext.tasks.Loop.is_running:1 of +msgid "" +"Check if the task is currently running. :rtype: " +":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "" + +#: 83530989bb114f24b7e77d873f86ceff discord.ext.tasks.Loop.change_interval:1 of +msgid "Changes the interval for the sleep time." +msgstr "" + +#: 9d539eda63744ec18b6422108e8dcc3f c79687228d5f4b14a5b5cf8eedf1d2f2 +#: discord.ext.tasks.Loop.change_interval:6 discord.ext.tasks.loop:5 of +msgid "The number of seconds between every iteration." +msgstr "" + +#: 643036f81e8548148226f98ad662f662 discord.ext.tasks.Loop.change_interval:9 +#: discord.ext.tasks.loop:8 faab724401534ba891a54abd1063b632 of +msgid "The number of minutes between every iteration." +msgstr "" + +#: 25e739b47679456d9706cd47304e9978 6e09adb27be8418588dfd743e748f717 +#: discord.ext.tasks.Loop.change_interval:12 discord.ext.tasks.loop:11 of +msgid "The number of hours between every iteration." +msgstr "" + +#: 5c6fb443b2604b33af94b201f8b258d8 discord.ext.tasks.Loop.change_interval:15 +#: of +msgid "" +"The exact times to run this loop at. Either a non-empty list or a single " +"value of :class:`datetime.time` should be passed. This cannot be used in " +"conjunction with the relative time parameters. .. versionadded:: 2.0 .." +" note:: Duplicate times will be ignored, and only run once." +msgstr "" + +#: 6224d70d5fda4bd78858977a37bf9607 discord.ext.tasks.Loop.change_interval:15 +#: of +msgid "" +"The exact times to run this loop at. Either a non-empty list or a single " +"value of :class:`datetime.time` should be passed. This cannot be used in " +"conjunction with the relative time parameters." +msgstr "" + +#: 318ff42090a54ee6ba110b06461a5d2e b3b725baac894dc4aec2325b26106b6f +#: discord.ext.tasks.Loop.change_interval:23 discord.ext.tasks.loop:22 of +msgid "Duplicate times will be ignored, and only run once." +msgstr "" + +#: b9bff9f275424b10b9b4b4a745dc7f96 d34550bdeb504b4ba94cd33934a387ac +#: discord.ext.tasks.Loop.change_interval:26 discord.ext.tasks.loop:40 of +msgid "An invalid value was given." +msgstr "" + +#: 622a6c84602644b581053d78b1619f3a discord.ext.tasks.Loop.change_interval:27 +#: of +msgid "" +"An invalid value for the ``time`` parameter was passed, or the " +"``time`` parameter was passed in conjunction with relative time " +"parameters." +msgstr "" + +#: d1cde6f36bb94fa8a109a7406e99305c discord.ext.tasks.loop:1 of +msgid "" +"A decorator that schedules a task in the background for you with optional" +" reconnect logic. The decorator returns a :class:`Loop`." +msgstr "" + +#: 2730a5b0e80a4bb78a3110623b108393 discord.ext.tasks.loop:14 of +msgid "" +"The exact times to run this loop at. Either a non-empty list or a single " +"value of :class:`datetime.time` should be passed. Timezones are " +"supported. If no timezone is given for the times, it is assumed to " +"represent UTC time. This cannot be used in conjunction with the relative" +" time parameters. .. note:: Duplicate times will be ignored, and " +"only run once. .. versionadded:: 2.0" +msgstr "" + +#: 4957f25f5de04866a15143387272931f discord.ext.tasks.loop:14 of +msgid "" +"The exact times to run this loop at. Either a non-empty list or a single " +"value of :class:`datetime.time` should be passed. Timezones are " +"supported. If no timezone is given for the times, it is assumed to " +"represent UTC time." +msgstr "" + +#: discord.ext.tasks.loop:18 e4cdfd5e2c074237adb1bc9479a240c4 of +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "" + +#: c959854a17704c0c9357e7e7922da117 discord.ext.tasks.loop:27 of +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "" + +#: 3adeed780b7b4670b41253cc6354e85a discord.ext.tasks.loop:31 of +msgid "" +"Whether to handle errors and restart the task using an exponential back-" +"off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "" + +#: 7e644a647eaa4981aad624c207683f5a discord.ext.tasks.loop:36 of +msgid "" +"The loop to use to register the task, if not given defaults to " +":func:`asyncio.get_event_loop`." +msgstr "" + +#: 1b6f0ce5942646378838dbe0ab4fe0a0 discord.ext.tasks.loop:41 of +msgid "" +"The function was not a coroutine, an invalid value for the ``time`` " +"parameter was passed, or ``time`` parameter was passed in conjunction" +" with relative time parameters." +msgstr "" + +#: 3dd1e6ebb48849edb09bcd60b72c860c discord.ext.tasks.loop:43 of +msgid "" +":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\" +" \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`LF\\`\\`\\, bound\\= " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, " +"\\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ " +"\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ " +"\\\\\\(\\`\\`LF\\`\\`\\, bound\\= " +"\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, " +"\\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ " +"\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/faq.po b/docs/locales/en/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..1d7d3299e6 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/faq.po @@ -0,0 +1,552 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../faq.rst:7 42c694dc6243417398dfda77b5d62118 +msgid "Frequently Asked Questions" +msgstr "" + +#: ../../faq.rst:9 aadc6d39fd624f2a9caf5a3afaed39f7 +msgid "" +"This is a list of Frequently Asked Questions regarding using ``Pycord`` " +"and its extension modules. Feel free to suggest a new question or submit " +"one via pull requests." +msgstr "" + +#: ../../faq.rst:14 f1deeae5e8ec4fa1a960f38a3506f17e +msgid "Coroutines" +msgstr "" + +#: ../../faq.rst:16 0d979a5f910e4b458a5e259f76d88293 +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "" + +#: ../../faq.rst:19 73708e0cc4d54d139990aafd94812778 +msgid "What is a coroutine?" +msgstr "" + +#: ../../faq.rst:21 1e95db0d82644800b67bcc3db6e722a3 +msgid "" +"A |coroutine_link|_ is a function that must be invoked with ``await`` or " +"``yield from``. When Python encounters an ``await`` it stops the " +"function's execution at that point and works on other things until it " +"comes back to that point and finishes off its work. This allows for your " +"program to be doing multiple things at the same time without using " +"threads or complicated multiprocessing." +msgstr "" + +#: ../../faq.rst:26 ffd553a66e4f4313b68911d1727daed8 +msgid "" +"**If you forget to await a coroutine then the coroutine will not run. " +"Never forget to await a coroutine.**" +msgstr "" + +#: ../../faq.rst:29 5e4c81ff3a0d48aca229db1d69f5868b +msgid "Where can I use ``await``\\?" +msgstr "" + +#: ../../faq.rst:31 efa3ec603fe54b8fab857ce490ec3cb6 +msgid "" +"You can only use ``await`` inside ``async def`` functions and nowhere " +"else." +msgstr "" + +#: ../../faq.rst:34 c826e0a3d9684b32be75af0a16e6c9e0 +msgid "What does \"blocking\" mean?" +msgstr "" + +#: ../../faq.rst:36 f740f2b4ae774915aa7baafaa04b69f4 +msgid "" +"In asynchronous programming a blocking call is essentially all the parts " +"of the function that are not ``await``. Do not despair however, because " +"not all forms of blocking are bad! Using blocking calls is inevitable, " +"but you must work to make sure that you don't excessively block " +"functions. Remember, if you block for too long then your bot will freeze " +"since it has not stopped the function's execution at that point to do " +"other things." +msgstr "" + +#: ../../faq.rst:41 87e4373c7de24a56af1623cc126c63f1 +msgid "" +"If logging is enabled, this library will attempt to warn you that " +"blocking is occurring with the message: ``Heartbeat blocked for more than" +" N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "" + +#: ../../faq.rst:45 0f6c774e82c54d809d7eab2e5343db1f +msgid "" +"A common source of blocking for too long is something like " +":func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. " +"Similar to this example: ::" +msgstr "" + +#: ../../faq.rst:54 b4f3d4ffd28b4499abc2b803cceef267 +msgid "" +"Another common source of blocking for too long is using HTTP requests " +"with the famous module :doc:`requests `. While :doc:`requests " +"` is an amazing module for non-asynchronous programming, it is" +" not a good choice for :mod:`asyncio` because certain requests can block " +"the event loop too long. Instead, use the :doc:`aiohttp ` " +"library which is installed on the side with this library." +msgstr "" + +#: ../../faq.rst:59 e745924d9a314b659d522d7e2908f735 +msgid "Consider the following example: ::" +msgstr "" + +#: ../../faq.rst:75 75b3be6463eb414996f8e998c3901719 +msgid "General" +msgstr "" + +#: ../../faq.rst:77 486e6101fbaf473ca14a3f2a2d156634 +msgid "General questions regarding library usage belong here." +msgstr "" + +#: ../../faq.rst:80 61cea3fbaefe441589ee75c6ef47044e +msgid "Where can I find usage examples?" +msgstr "" + +#: ../../faq.rst:82 75110bb3b99547c4a0785fa8b5306634 +msgid "" +"Example code can be found in the `examples folder `_ in the repository." +msgstr "" + +#: ../../faq.rst:86 4debeae373084131a5142dda06bdf003 +msgid "How do I set the \"Playing\" status?" +msgstr "" + +#: ../../faq.rst:88 c1ed0473c08a4f2d84bfe7c3c0668879 +msgid "" +"The ``activity`` keyword argument may be passed in the :class:`Client` " +"constructor or :meth:`Client.change_presence`, given an :class:`Activity`" +" object." +msgstr "" + +#: ../../faq.rst:90 ed575ddcf47c4421a518efbfab76cdcf +msgid "" +"The constructor may be used for static activities, while " +":meth:`Client.change_presence` may be used to update the activity at " +"runtime." +msgstr "" + +#: ../../faq.rst:94 205690eee5334303a093ae89a20b2115 +msgid "" +"It is highly discouraged to use :meth:`Client.change_presence` or API " +"calls in :func:`on_ready` as this event may be called many times while " +"running, not just once." +msgstr "" + +#: ../../faq.rst:96 1e3e9fad12604c21b0f70d73f8b72520 +msgid "" +"There is a high chance of disconnecting if presences are changed right " +"after connecting." +msgstr "" + +#: ../../faq.rst:98 4bcfe431e4b94a3bbb4f442963b89f41 +msgid "" +"The status type (playing, listening, streaming, watching) can be set " +"using the :class:`ActivityType` enum. For memory optimisation purposes, " +"some activities are offered in slimmed-down versions:" +msgstr "" + +#: ../../faq.rst:101 e078b8a7823f45e5bb41baca9e0c9c88 +msgid ":class:`Game`" +msgstr "" + +#: ../../faq.rst:102 60eaac3fd0ec4801ae0764d3422c333c +msgid ":class:`Streaming`" +msgstr "" + +#: ../../faq.rst:104 53c37fa6b2ff42e6bb7ab64e48bdcfeb +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "" + +#: ../../faq.rst:113 445f9e722bfe4fc5bbf9640c49fbcbc5 +msgid "How do I send a message to a specific channel?" +msgstr "" + +#: ../../faq.rst:115 fed233889a0040e3a7044530689843b4 +msgid "" +"You must fetch the channel directly and then call the appropriate method." +" Example: ::" +msgstr "" + +#: ../../faq.rst:121 efdd5354470e487c8e4a4ededb220e73 +msgid "How do I send a DM?" +msgstr "" + +#: ../../faq.rst:123 7c73470058c540b7b6211dde4dd78c89 +msgid "" +"Get the :class:`User` or :class:`Member` object and call " +":meth:`abc.Messageable.send`. For example: ::" +msgstr "" + +#: ../../faq.rst:128 d942a2a29c834b23a7228600a3ac8947 +msgid "" +"If you are responding to an event, such as :func:`on_message`, you " +"already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "" + +#: ../../faq.rst:133 dd32f32169e44c28840bcc496597f50e +msgid "How do I get the ID of a sent message?" +msgstr "" + +#: ../../faq.rst:135 0537432c7b8c475e8dd7fcd295387b35 +msgid "" +":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. " +"The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr "" + +#: ../../faq.rst:142 d5d5efa3a769462896d5f4ae71592c82 +msgid "How do I upload an image?" +msgstr "" + +#: ../../faq.rst:144 a27fec8be055451191c60ff0dac0389e +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "" + +#: ../../faq.rst:146 ab655cc9b8db425c8a9883536ae60fd7 +msgid "" +"A :class:`File` accepts two parameters, the file-like object (or file " +"path) and the filename to pass to Discord when uploading." +msgstr "" + +#: ../../faq.rst:149 b581efc9510c4249a68da678b8f19a5a +msgid "If you want to upload an image it's as simple as: ::" +msgstr "" + +#: ../../faq.rst:153 daff6be6e19b4749a1021c8240a8c2c6 +msgid "If you have a file-like object you can do as follows: ::" +msgstr "" + +#: ../../faq.rst:158 c3b8713a8aef46fda35e6ac17b5e32d0 +msgid "" +"To upload multiple files, you can use the ``files`` keyword argument " +"instead of ``file``\\: ::" +msgstr "" + +#: ../../faq.rst:166 15d211e0a15e4e9fb1ca3873ea167290 +msgid "" +"If you want to upload something from a URL, you will have to use an HTTP " +"request using :doc:`aiohttp ` and then pass an " +":class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "" + +#: ../../faq.rst:183 5cbb9695485342d8ad7cb81efe8a1c9d +msgid "How can I add a reaction to a message?" +msgstr "" + +#: ../../faq.rst:185 a465b71cb0bb4d93a0b93a90d4a5908e +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "" + +#: ../../faq.rst:187 5945a133b4f04ee2a5756ad1d92a69ea +msgid "" +"If you want to use unicode emoji, you must pass a valid unicode code " +"point in a string. In your code, you can write this in a few different " +"ways:" +msgstr "" + +#: ../../faq.rst:189 4b2c00f729364d54ae46abe524019f69 +msgid "``'👍'``" +msgstr "" + +#: ../../faq.rst:190 a16f06193ba143b7bf99419f710cc7b3 +msgid "``'\\U0001F44D'``" +msgstr "" + +#: ../../faq.rst:191 3b675c057f77434183fe3ba30d93d2bf +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "" + +#: ../../faq.rst:193 ../../faq.rst:209 ../../faq.rst:285 ../../faq.rst:301 +#: ../../faq.rst:321 2ac40c17e7e146adaf2e1882a0895624 +#: 4af31f34d79f4b15bdcd9f9c0ecb638d 7466bd3209ed4da6a1db6c319e409d98 +#: 8a59ed4e66c942a0abc4d59c6b33ad77 d619f977a1fc4114ae22961529c04ae9 +msgid "Quick example: ::" +msgstr "" + +#: ../../faq.rst:199 50d17ed090ff4403a93ddb3e8e6fcf2c +msgid "" +"In case you want to use emoji that come from a message, you already get " +"their code points in the content without needing to do anything special. " +"You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "" + +#: ../../faq.rst:202 83b6da571d72418b976c492e3fe88640 +msgid "" +"For custom emoji, you should pass an instance of :class:`Emoji`. You can " +"also pass a ``'<:name:id>'`` string, but if you can use said emoji, you " +"should be able to use :meth:`Client.get_emoji` to get an emoji via ID or " +"use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or " +":attr:`Guild.emojis` collections." +msgstr "" + +#: ../../faq.rst:206 2025e4eb563846b6ab9ca3c36bfbaf22 +msgid "" +"The name and ID of a custom emoji can be found with the client by " +"prefixing ``:custom_emoji:`` with a backslash. For example, sending the " +"message ``\\:python3:`` with the client will result in " +"``<:python3:232720527448342530>``." +msgstr "" + +#: ../../faq.rst:226 8348ea888c9c4f998ce1b608a36687ab +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "" + +#: ../../faq.rst:228 31fd3ba1351f47edaf088f8a1ca132d0 +msgid "" +"The library's music player launches on a separate thread, ergo it does " +"not execute inside a coroutine. This does not mean that it is not " +"possible to call a coroutine in the ``after`` parameter. To do so you " +"must pass a callable that wraps up a couple of aspects." +msgstr "" + +#: ../../faq.rst:232 3a6dc9b3a9e3440eb71e0ebd4f935de7 +msgid "" +"The first gotcha that you must be aware of is that calling a coroutine is" +" not a thread-safe operation. Since we are technically in another thread," +" we must take caution in calling thread-safe operations so things do not " +"bug out. Luckily for us, :mod:`asyncio` comes with a " +":func:`asyncio.run_coroutine_threadsafe` function that allows us to call " +"a coroutine from another thread." +msgstr "" + +#: ../../faq.rst:237 c759400dc1344921970c74fdf5a861e2 +msgid "" +"However, this function returns a :class:`~concurrent.futures.Future` and " +"to actually call it we have to fetch its result. Putting all of this " +"together we can do the following: ::" +msgstr "" + +#: ../../faq.rst:252 a29ad71864ee45478c2585ea1682ce88 +msgid "How do I run something in the background?" +msgstr "" + +#: ../../faq.rst:254 fc7a63eea1d941e0ba8fc931ce98d69b +msgid "" +"`Check the background_task.py example. `_" +msgstr "" + +#: ../../faq.rst:257 e123c76a03bc4bba94c4ea7823059d30 +msgid "How do I get a specific model?" +msgstr "" + +#: ../../faq.rst:259 c6ea38dff8ef49dbb15674cda4f76fee +msgid "" +"There are multiple ways of doing this. If you have a specific model's ID " +"then you can use one of the following functions:" +msgstr "" + +#: ../../faq.rst:262 df8275f393d74fd2b8aecc522b3b028d +msgid ":meth:`Client.get_channel`" +msgstr "" + +#: ../../faq.rst:263 1b0bd9baafff48ab8d9b51392f87cb88 +msgid ":meth:`Client.get_message`" +msgstr "" + +#: ../../faq.rst:264 a4fdecfa549c4af29c85a2ac6af0adb8 +msgid ":meth:`Client.get_guild`" +msgstr "" + +#: ../../faq.rst:265 e8a1b227e0bc4c4ca6ecab9de950fa39 +msgid ":meth:`Client.get_user`" +msgstr "" + +#: ../../faq.rst:266 fa1ef088ffd649e7be0756077ebb5204 +msgid ":meth:`Client.get_emoji`" +msgstr "" + +#: ../../faq.rst:267 ce6bba09a863412085379af1b86f43f4 +msgid ":meth:`Guild.get_member`" +msgstr "" + +#: ../../faq.rst:268 cdb641bf33ca4081af71f6fbab38c7ef +msgid ":meth:`Guild.get_channel`" +msgstr "" + +#: ../../faq.rst:269 52c8ef2610ed40df9d821bd9b72f52c0 +msgid ":meth:`Guild.get_role`" +msgstr "" + +#: ../../faq.rst:271 4432c4bdbd43488497d53d09fb757cea +msgid "The following use an HTTP request:" +msgstr "" + +#: ../../faq.rst:273 c33931c8a1d94df2977b7d2400e795ff +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr "" + +#: ../../faq.rst:274 6c4aeb1c43744304964e174c90155da8 +msgid ":meth:`Client.fetch_user`" +msgstr "" + +#: ../../faq.rst:275 61dbda6f00104881bebe25d22bd0b9b6 +msgid ":meth:`Client.fetch_guilds`" +msgstr "" + +#: ../../faq.rst:276 82be9a6851bb47969a025ac8a83842cd +msgid ":meth:`Client.fetch_guild`" +msgstr "" + +#: ../../faq.rst:277 22c47fa480604e00a1331d55158290d6 +msgid ":meth:`Guild.fetch_emoji`" +msgstr "" + +#: ../../faq.rst:278 280a399aea224f21b4982931f9634884 +msgid ":meth:`Guild.fetch_emojis`" +msgstr "" + +#: ../../faq.rst:279 880bae3974c640258ffbc8c38ee6b023 +msgid ":meth:`Guild.fetch_member`" +msgstr "" + +#: ../../faq.rst:282 64a069b8f1fc43fdb461eb1f0b6353cb +msgid "" +"If the functions above do not help you, then use of :func:`utils.find` or" +" :func:`utils.get` would serve some use in finding specific models." +msgstr "" + +#: ../../faq.rst:296 117011a3c921470791e0fb9ae1a99887 +msgid "How do I make a web request?" +msgstr "" + +#: ../../faq.rst:298 a81d38db11e34929840d202e3e39e014 +msgid "" +"To make a request, you should use a non-blocking library. This library " +"already uses and requires a 3rd party library for making requests, " +":doc:`aiohttp `." +msgstr "" + +#: ../../faq.rst:308 f7fcd1f2851748b496f550b00027a817 +msgid "" +"See `aiohttp's full documentation " +"`_ for more information." +msgstr "" + +#: ../../faq.rst:311 33bfccbec5e44bd8875eb5535d5c4ba7 +msgid "How do I use a local image file for an embed image?" +msgstr "" + +#: ../../faq.rst:313 4ac20ca08166409b95cd618f3a9d247f +msgid "" +"Discord special-cases uploading an image attachment and using it within " +"an embed so that it will not display separately, but instead in the " +"embed's thumbnail, image, footer or author icon." +msgstr "" + +#: ../../faq.rst:316 5a4543d51c054078a317ba9eb73ece9b +msgid "" +"To do so, upload the image normally with :meth:`abc.Messageable.send`, " +"and set the embed's image URL to ``attachment://image.png``, where " +"``image.png`` is the filename of the image you will send." +msgstr "" + +#: ../../faq.rst:329 cea3d47022ad45399532475aed28dad2 +msgid "Is there an event for audit log entries being created?" +msgstr "" + +#: ../../faq.rst:331 d54188f6cfa34ff5b4f3cb79d04113eb +msgid "" +"As of version 2.5, you can receive audit log entries with the " +":func:`on_audit_log_entry` event." +msgstr "" + +#: ../../faq.rst:334 af9b163a1a404649b60bc68e4aa18658 +msgid "Commands Extension" +msgstr "" + +#: ../../faq.rst:336 f6b5f936ec2246b3b2f804b9f0228f76 +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "" + +#: ../../faq.rst:339 60e1562627864406bfd930e966f3834b +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "" + +#: ../../faq.rst:341 eb6e93a1f5a745df9633622c9c43befd +msgid "" +"Overriding the default provided ``on_message`` forbids any extra commands" +" from running. To fix this, add a ``bot.process_commands(message)`` line " +"at the end of your ``on_message``. For example: ::" +msgstr "" + +#: ../../faq.rst:350 3d9bcd5624e048a095c6660f92687fb8 +msgid "" +"Alternatively, you can place your ``on_message`` logic into a " +"**listener**. In this setup, you should not manually call " +"``bot.process_commands()``. This also allows you to do multiple things " +"asynchronously in response to a message. Example::" +msgstr "" + +#: ../../faq.rst:360 a7c7415a26b048a2a5f6604066be146a +msgid "Why do my arguments require quotes?" +msgstr "" + +#: ../../faq.rst:362 86911130df094c728d135487c8732c02 +msgid "In a simple command defined as: ::" +msgstr "" + +#: ../../faq.rst:368 1c0677bdf38b4842829596fafcbef588 +msgid "" +"Calling it via ``?echo a b c`` will only fetch the first argument and " +"disregard the rest. To fix this you should either call it via ``?echo \"a" +" b c\"`` or change the signature to have \"consume rest\" behaviour. " +"Example: ::" +msgstr "" + +#: ../../faq.rst:375 200e58391f9f4db0a074373036d54117 +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "" + +#: ../../faq.rst:378 c4f3a0dc111f45358fccaa11113f345f +msgid "How do I get the original ``message``\\?" +msgstr "" + +#: ../../faq.rst:380 9fe189d10192426288f5ea7ef96c203e +msgid "" +"The :class:`~ext.commands.Context` contains an attribute, " +":attr:`~.Context.message` to get the original message." +msgstr "" + +#: ../../faq.rst:383 ../../faq.rst:395 2bca210db4524a3dab85438e7d12f2b3 +#: 8a369aaa0965425abecf4147f8627866 +msgid "Example: ::" +msgstr "" + +#: ../../faq.rst:390 fe8cf520d18b47a6bc64e350dced6b0b +msgid "How do I make a subcommand?" +msgstr "" + +#: ../../faq.rst:392 e03e295bf8864bb3954ff5b558e7aae0 +msgid "" +"Use the :func:`~ext.commands.group` decorator. This will transform the " +"callback into a :class:`~ext.commands.Group` which will allow you to add " +"commands into the group operating as \"subcommands\". These groups can be" +" arbitrarily nested as well." +msgstr "" + +#: ../../faq.rst:406 293c6bec61af42d7803ffc3d3ab42a5a +msgid "This could then be used as ``?git push origin master``." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/index.po b/docs/locales/en/LC_MESSAGES/index.po new file mode 100644 index 0000000000..1ac430e82b --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/index.po @@ -0,0 +1,171 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../index.rst:56 ../../index.rst:60 1ae15d13e49e44768f60bb75339fb69c +msgid "Extensions" +msgstr "" + +#: ../../index.rst:76 ../../index.rst:80 30bc87e216894f4ca6d37b14ef86b21a +msgid "Meta" +msgstr "" + +#: ../../index.rst:7 7fc8556a3c244b458a25c25a5ec92149 +msgid "Welcome to Pycord" +msgstr "" + +#: ../../index.rst:12 4ad40217636e4ea08273187545470d23 +msgid "" +"Pycord is a modern, easy to use, feature-rich, and async ready API " +"wrapper for Discord." +msgstr "" + +#: ../../index.rst:15 b378fc99d4c141dd97f197490dde92ab +msgid "**Features:**" +msgstr "" + +#: ../../index.rst:17 00058e2c4cc84c8ab75c1f6d7915c284 +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "" + +#: ../../index.rst:18 ba4ca36f397c470fa8c8e234f2c88d3f +msgid "Sane rate limit handling that prevents 429s" +msgstr "" + +#: ../../index.rst:19 37d28cc78859419a8292b5090a8efac4 +msgid "Command extension to aid with bot creation" +msgstr "" + +#: ../../index.rst:20 556e9957abda4f25a3d69dee87f1837d +msgid "Easy to use with an object oriented design" +msgstr "" + +#: ../../index.rst:21 63f872203a0b43b6b3b684ece5914978 +msgid "Optimised for both speed and memory" +msgstr "" + +#: ../../index.rst:24 2c529eccd4504d0e86c33655ca4ae1a3 +msgid "Getting started" +msgstr "" + +#: ../../index.rst:26 50a6a38e25a64cf6ba6381a0ae25e90a +msgid "" +"Is this your first time using the library? This is the place to get " +"started!" +msgstr "" + +#: ../../index.rst:28 92ba20faa97b437f8261d25de1b656a3 +msgid "" +"**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` |" +" :resource:`Guide `" +msgstr "" + +#: ../../index.rst:29 f9e28131715c4adebadaf8a6ccf4f55b +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "" + +#: ../../index.rst:30 77536c2f950248ee8fa18138f87209a4 +msgid "" +"**Examples:** Many examples are available in the :resource:`repository " +"`." +msgstr "" + +#: ../../index.rst:33 f9c95f56efb342749419b9eeb721f4ea +msgid "Getting help" +msgstr "" + +#: ../../index.rst:35 d1616e0cba47453b9c703e0a8b07058e +msgid "If you're having trouble with something, these resources might help." +msgstr "" + +#: ../../index.rst:37 9177146fde574ce68ecdeaea6fca6e28 +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "" + +#: ../../index.rst:38 f25dd5b1ebe841e3b8cd1ab6172faf6f +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "" + +#: ../../index.rst:39 e606ff613d8548c59c9ca71612631ded +msgid "" +"If you're looking for something specific, try the :ref:`index `" +" or :ref:`searching `." +msgstr "" + +#: ../../index.rst:40 d89cb6709ae14999b87f6d88c57e64c3 +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "" + +#: ../../index.rst:43 09f8c18f270041028f7b6f370dd5d3fd +msgid "Manuals" +msgstr "" + +#: ../../index.rst:45 ed1dadd279c6469a9a1403832b305b90 +msgid "These pages go into great detail about everything the API can do." +msgstr "" + +#: ../../index.rst:48 4691c3605db047e498071d6a80fce420 +msgid "Core API" +msgstr "" + +#: ../../index.rst:58 2920375629e14ee1891696ce1bc731b7 +msgid "" +"These extensions help you during development when it comes to common " +"tasks." +msgstr "" + +#: ../../index.rst:70 1ef1dffc6e3842f6bdcc182b12d3dc72 +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr "" + +#: ../../index.rst:71 29fc201ddcdd4490a1e82730319fb2c1 +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr "" + +#: ../../index.rst:72 2c32c8ad6b5344bfb22eab4dc65b2c14 +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr "" + +#: ../../index.rst:73 b4294d6dd2fd4cceac15a54b6be747b8 +msgid "" +":doc:`ext/bridge/index` - A module that bridges slash commands to " +"prefixed commands" +msgstr "" + +#: ../../index.rst:78 773f591cbcf94787aca8dd94e5e8d039 +msgid "If you're looking for something related to the project itself, it's here." +msgstr "" + +#: ../../index.rst:90 da2f2c3d8bed495b8fe6f80aaea8d710 +msgid ":doc:`changelog` - The changelog for the library." +msgstr "" + +#: ../../index.rst:91 0e9ae46626d24e70acd686105a1dc885 +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr "" + +#: ../../index.rst:92 aafdb614bd4a4f07bbc4219638635ab1 +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr "" + +#: ../../index.rst:93 0e9145aa11f846389286e01855c75217 +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/installing.po b/docs/locales/en/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..8c57d88b52 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/installing.po @@ -0,0 +1,164 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../installing.rst:8 b987cf7921b843929fe5cce90461619d +msgid "Installing Pycord" +msgstr "" + +#: ../../installing.rst:10 ff6116c1f1bd4a8ea4084082816c256f +msgid "" +"This is the documentation for Pycord, a library for Python to aid in " +"creating applications that utilise the Discord API." +msgstr "" + +#: ../../installing.rst:14 99384c0e85ae44dfb29c6ffd64d07c15 +msgid "Prerequisites" +msgstr "" + +#: ../../installing.rst:16 45a4a81029114e39967f1a217892cee4 +msgid "" +"Pycord works with Python 3.8 or higher. Support for earlier versions of " +"Python is not provided. Python 2.7 or lower is not supported. Python 3.7 " +"or lower is not supported." +msgstr "" + +#: ../../installing.rst:23 3315ef6314374d80b289a31a9319565c +msgid "Installing" +msgstr "" + +#: ../../installing.rst:27 3bfcb21ea1394d478638fa54953b05af +msgid "" +"For new features in upcoming versions, you will need to install the pre-" +"release until a stable version is released. ::" +msgstr "" + +#: ../../installing.rst:31 d3de67df16fb4a36a5a1bd15ad340bb0 +msgid "" +"For Windows users, this command should be used to install the pre-" +"release: ::" +msgstr "" + +#: ../../installing.rst:35 bfb05c0721a546f1bd0444d6eedcb567 +msgid "You can get the library directly from PyPI: ::" +msgstr "" + +#: ../../installing.rst:39 7dfc0ffce098447881eddb3cbdcd90bd +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "" + +#: ../../installing.rst:44 e815f26d5d194fbeb3b185e9960f01a0 +msgid "" +"To install additional packages for speedup, you should use ``py-" +"cord[speed]`` instead of ``py-cord``, e.g." +msgstr "" + +#: ../../installing.rst:55 bd4a16413b354b5f849723217b8c9da6 +msgid "" +"To get voice support, you should use ``py-cord[voice]`` instead of ``py-" +"cord``, e.g. ::" +msgstr "" + +#: ../../installing.rst:59 b3effdad7bf24b5387a42b48c1eea265 +msgid "" +"On Linux environments, installing voice requires getting the following " +"dependencies:" +msgstr "" + +#: ../../installing.rst:61 874d8e468b3c425b892c4bbe45c64165 +msgid "`libffi `_" +msgstr "" + +#: ../../installing.rst:62 15d34551532b42cbbfcce1f27c282ac7 +msgid "`libnacl `_" +msgstr "" + +#: ../../installing.rst:63 d4350b9dc07b4c2d9ed7155d3229cac1 +msgid "`python3-dev `_" +msgstr "" + +#: ../../installing.rst:65 133137400c01499f9368503dab246762 +msgid "" +"For a Debian-based system, the following command will get these " +"dependencies:" +msgstr "" + +#: ../../installing.rst:71 647fb6f3c4294493bf010cc4b38918ae +msgid "Remember to check your permissions!" +msgstr "" + +#: ../../installing.rst:74 1505dc98348743daa96c3e2a8bb4e35f +msgid "Virtual Environments" +msgstr "" + +#: ../../installing.rst:76 2a79ff807f0440f9b29b38e5e8f34fe7 +msgid "" +"Sometimes you want to keep libraries from polluting system installs or " +"use a different version of libraries than the ones installed on the " +"system. You might also not have permissions to install libraries system-" +"wide. For this purpose, the standard library as of Python 3.3 comes with " +"a concept called \"Virtual Environment\"s to help maintain these separate" +" versions." +msgstr "" + +#: ../../installing.rst:81 2707c58339d8492cb4643fde3924e0c4 +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "" + +#: ../../installing.rst:83 b4a38a361f9d4b029b782bc0991071f1 +msgid "However, for the quick and dirty:" +msgstr "" + +#: ../../installing.rst:85 875aa9044a994c748e89365a4319d53d +msgid "Go to your project's working directory:" +msgstr "" + +#: ../../installing.rst:92 d3ee92e529f5468d861804a69cf06872 +msgid "Activate the virtual environment:" +msgstr "" + +#: ../../installing.rst:98 1fe5cd4ed06d4dd0bdc9c107663b7623 +msgid "On Windows you activate it with:" +msgstr "" + +#: ../../installing.rst:104 fd63a39a2e324067bff700957152f4a8 +msgid "Use pip like usual:" +msgstr "" + +#: ../../installing.rst:110 4b0ca73ad69c4a339a72a3dd4405c3ef +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "" + +#: ../../installing.rst:113 f05aab80a33a45088869a4951f8eff63 +msgid "Basic Concepts" +msgstr "" + +#: ../../installing.rst:115 122378e2443b4f5e9c3109ad7e84a78c +msgid "" +"Pycord revolves around the concept of :ref:`events `." +" An event is something you listen to and then respond to. For example, " +"when a message happens, you will receive an event about it that you can " +"respond to." +msgstr "" + +#: ../../installing.rst:119 24eaab1e93fb4abc8f263c716591e584 +msgid "A quick example to showcase how events work:" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/intents.po b/docs/locales/en/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..52dc00ba96 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/intents.po @@ -0,0 +1,445 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../intents.rst:8 75e14bb6db424110a692aa2cd4639e74 +msgid "A Primer to Gateway Intents" +msgstr "" + +#: ../../intents.rst:10 12572facd77841d0a3f7bd1e9884b154 +msgid "" +"In version 1.5 comes the introduction of :class:`Intents`. This is a " +"radical change in how bots are written. An intent basically allows a bot " +"to subscribe to specific buckets of events. The events that correspond to" +" each intent is documented in the individual attribute of the " +":class:`Intents` documentation." +msgstr "" + +#: ../../intents.rst:12 5a94afb1d1a1416989b479d118f6a4a5 +msgid "" +"These intents are passed to the constructor of :class:`Client` or its " +"subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, " +":class:`~.Bot`) with the ``intents`` argument." +msgstr "" + +#: ../../intents.rst:14 1cfd25d23d9f4e8491e82d8bb9b68e85 +msgid "" +"If intents are not passed, then the library defaults to every intent " +"being enabled except the privileged intents, currently " +":attr:`Intents.members`, :attr:`Intents.presences`, and " +":attr:`Intents.message_content`." +msgstr "" + +#: ../../intents.rst:17 0d970b5b7ab64fccbaaee82e527c2a3c +msgid "What intents are needed?" +msgstr "" + +#: ../../intents.rst:19 122975cc28fd4dab917064a2f7ccebff +msgid "" +"The intents that are necessary for your bot can only be dictated by " +"yourself. Each attribute in the :class:`Intents` class documents what " +":ref:`events ` it corresponds to and what kind of " +"cache it enables." +msgstr "" + +#: ../../intents.rst:21 a65b273def1046c7b65710253bad3f0b +msgid "" +"For example, if you want a bot that functions without spammy events like " +"presences or typing then we could do the following:" +msgstr "" + +#: ../../intents.rst:37 e934525a0f6645da864f9b80eb9ea2ed +msgid "" +"Note that this doesn't enable :attr:`Intents.members` or " +":attr:`Intents.message_content` since they are privileged intents." +msgstr "" + +#: ../../intents.rst:39 c4ad8729a94941c3b16889552f5f9209 +msgid "" +"Another example showing a bot that only deals with messages and guild " +"information:" +msgstr "" + +#: ../../intents.rst:58 f9bc373e5fcb4379ac7b5af6226d2549 +msgid "Privileged Intents" +msgstr "" + +#: ../../intents.rst:60 084441efe6e14d238bc031fbb2077af6 +msgid "" +"With the API change requiring bot owners to specify intents, some intents" +" were restricted further and require more manual steps. These intents are" +" called **privileged intents**." +msgstr "" + +#: ../../intents.rst:62 ba192e3588fd436991ddc6df5a0be29c +msgid "" +"A privileged intent is one that requires you to go to the developer " +"portal and manually enable it. To enable privileged intents do the " +"following:" +msgstr "" + +#: ../../intents.rst:64 7f9e6a87118d4705a72fdf89a9e622e9 +msgid "" +"Make sure you're logged on to the `Discord website " +"`_." +msgstr "" + +#: ../../intents.rst:65 240499007567459bb815409d6a108b33 +msgid "" +"Navigate to the `application page " +"`_." +msgstr "" + +#: ../../intents.rst:66 6800ad0726084ce5825c2afe9909a5b6 +msgid "Click on the bot you want to enable privileged intents for." +msgstr "" + +#: ../../intents.rst:67 676cd6606ae849a9adf0c09ac3e14a7a +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "" + +#: ../../intents.rst:69 65ddb4294bc34218ba019def7b995202 +msgid "The bot tab in the application page." +msgstr "" + +#: ../../intents.rst:72 57a29f0a7a764de69acc3572872e2162 +msgid "" +"Scroll down to the \"Privileged Gateway Intents\" section and enable the " +"ones you want." +msgstr "" + +#: ../../intents.rst:74 5251197e52da45ee88ae2e853d6e00eb +msgid "The privileged gateway intents selector." +msgstr "" + +#: ../../intents.rst:79 9c9f674714544275a3c7370700b19f52 +msgid "" +"Enabling privileged intents when your bot is in over 100 guilds requires " +"going through `bot verification `_." +msgstr "" + +#: ../../intents.rst:83 ce58e8892c1f49708cb8427dc7a7665d +msgid "" +"Even if you enable intents through the developer portal, you still have " +"to enable the intents through code as well." +msgstr "" + +#: ../../intents.rst:87 9ad34707ff6d44ff86c8385a25781b07 +msgid "Do I need privileged intents?" +msgstr "" + +#: ../../intents.rst:89 de22bd22b4b5407da0e11b458e9617a5 +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "" + +#: ../../intents.rst:94 ca193929461d41cca72bfe5ada2a8f9f +msgid "Presence Intent" +msgstr "" + +#: ../../intents.rst:96 0738b2d90ea74556a09a241d4512f0ec +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "" + +#: ../../intents.rst:97 6d59b966ccb941e1abf45501c67feb64 +msgid "" +"Whether you use :attr:`Member.activity` or :attr:`Member.activities` to " +"check member's activities." +msgstr "" + +#: ../../intents.rst:102 7bf42da8054d486abd314edf3f3bf1d5 +msgid "Member Intent" +msgstr "" + +#: ../../intents.rst:104 efdea7ea60cb48cea740b6c8579a4504 +msgid "" +"Whether you track member joins or member leaves, corresponds to " +":func:`on_member_join` and :func:`on_member_remove` events." +msgstr "" + +#: ../../intents.rst:105 e5a9f0b0b4314506904e9b9750b73c98 +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "" + +#: ../../intents.rst:106 c5a426a1754b42eda309676e96d5f71a +msgid "" +"Whether you want to track user updates such as usernames, avatars, " +"discriminators, etc." +msgstr "" + +#: ../../intents.rst:107 e72edc0eb2124f3f9183e99d969a6908 +msgid "" +"Whether you want to request the guild member list through " +":meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "" + +#: ../../intents.rst:108 89f7b1c662b44246a76cf2cfd4e1bf99 +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "" + +#: ../../intents.rst:113 d799b87ac06946669822ed2f80906606 +msgid "Message Content Intent" +msgstr "" + +#: ../../intents.rst:115 72f6bd3f0926471997e55218bebadebf +msgid "Whether you have a message based command system using ext.commands" +msgstr "" + +#: ../../intents.rst:116 5df81944be2d480186a72f1051f7b9b3 +msgid "" +"Whether you use the :func:`on_message` event for anything using message " +"content, such as auto-moderation." +msgstr "" + +#: ../../intents.rst:117 4fd03b2ae3864027b6c2cdbffbe2fd10 +msgid "" +"Whether you use message content in :func:`on_message_edit`, " +":func:`on_message_delete`, :func:`on_raw_message_edit`, " +":func:`on_raw_message_delete`." +msgstr "" + +#: ../../intents.rst:120 d77097d463244e978486284a0a82b5f8 +msgid "" +"The bot can still receive message contents in DMs, when mentioned in " +"guild messages, and for its own guild messages." +msgstr "" + +#: ../../intents.rst:125 f1941c0d0c024fcb88ba0ee6184a7255 +msgid "Member Cache" +msgstr "" + +#: ../../intents.rst:127 e4434f4e55db44869097da7ab2589c35 +msgid "" +"Along with intents, Discord now further restricts the ability to cache " +"members and expects bot authors to cache as little as is necessary. " +"However, to properly maintain a cache the :attr:`Intents.members` intent " +"is required in order to track the members who left and properly evict " +"them." +msgstr "" + +#: ../../intents.rst:129 6237e37074dd42ffa6459b8cf0fa60f2 +msgid "" +"To aid with member cache where we don't need members to be cached, the " +"library now has a :class:`MemberCacheFlags` flag to control the member " +"cache. The documentation page for the class goes over the specific " +"policies that are possible." +msgstr "" + +#: ../../intents.rst:131 8f41bd98a383407e92e095abb76160bd +msgid "" +"It should be noted that certain things do not need a member cache since " +"Discord will provide full member information if possible. For example:" +msgstr "" + +#: ../../intents.rst:133 b098cb161f504488abfcc7e48f268754 +msgid "" +":func:`on_message` will have :attr:`Message.author` be a member even if " +"cache is disabled." +msgstr "" + +#: ../../intents.rst:134 23e367c3f1ae47e8b618ac65d105e0be +msgid "" +":func:`on_voice_state_update` will have the ``member`` parameter be a " +"member even if cache is disabled." +msgstr "" + +#: ../../intents.rst:135 4fee7e831515409f94373f65d89358c4 +msgid "" +":func:`on_reaction_add` will have the ``user`` parameter be a member when" +" in a guild even if cache is disabled." +msgstr "" + +#: ../../intents.rst:136 fa4dcc39755a4d229ce380d1577de71a +msgid "" +":func:`on_raw_reaction_add` will have " +":attr:`RawReactionActionEvent.member` be a member when in a guild even if" +" cache is disabled." +msgstr "" + +#: ../../intents.rst:137 7651c7bab1bb4d0094fbc5aec6c803ec +msgid "" +"The reaction add events do not contain additional information when in " +"direct messages. This is a Discord limitation." +msgstr "" + +#: ../../intents.rst:138 4a6277fc39224dd9988f0054738ef3a7 +msgid "" +"The reaction removal events do not have member information. This is a " +"Discord limitation." +msgstr "" + +#: ../../intents.rst:140 ee4c86c48cf74afb8e772a5dc97a5636 +msgid "" +"Other events that take a :class:`Member` will require the use of the " +"member cache. If absolute accuracy over the member cache is desirable, " +"then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "" + +#: ../../intents.rst:145 fd996e8047be424f9d03c9a477a19b3f +msgid "Retrieving Members" +msgstr "" + +#: ../../intents.rst:147 b7cb072db6df40afa12a82f220fd6d5f +msgid "" +"If the cache is disabled or you disable chunking guilds at startup, we " +"might still need a way to load members. The library offers a few ways to " +"do this:" +msgstr "" + +#: ../../intents.rst:149 bbdba0ac52d34da493c65f9758c955fc +msgid ":meth:`Guild.query_members`" +msgstr "" + +#: ../../intents.rst:150 1b5717712ae342f2abf045d036fd0c50 +msgid "Used to query members by a prefix matching nickname or username." +msgstr "" + +#: ../../intents.rst:151 25ea63172c5d4a16b4380d91d3aab4c2 +msgid "This can also be used to query members by their user ID." +msgstr "" + +#: ../../intents.rst:152 71a28a7071f14074b993c5b4173362ac +msgid "This uses the gateway and not the HTTP." +msgstr "" + +#: ../../intents.rst:153 67813d09e1154ebd81e601d7af5108ed +msgid ":meth:`Guild.chunk`" +msgstr "" + +#: ../../intents.rst:154 a6315e5ea5674a2682d2d071c3eb0c1c +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "" + +#: ../../intents.rst:155 29830a31762842fbb9e025144cdefc05 +msgid ":meth:`Guild.fetch_member`" +msgstr "" + +#: ../../intents.rst:156 bf6d1ac04997420f918c48b490a2d38b +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "" + +#: ../../intents.rst:157 58bf92443c3449ec83725d931bb66d9b +msgid ":meth:`Guild.fetch_members`" +msgstr "" + +#: ../../intents.rst:158 da5d0a17a5f04b87aee337c3787beb95 +msgid "used to fetch a large number of members through the HTTP API." +msgstr "" + +#: ../../intents.rst:160 f07f8ed6abd84630ad3414dcfcd29f50 +msgid "" +"It should be noted that the gateway has a strict rate limit of 120 " +"requests per 60 seconds." +msgstr "" + +#: ../../intents.rst:163 d479cb036ff8488ca3f504749f838150 +msgid "Troubleshooting" +msgstr "" + +#: ../../intents.rst:165 3cf14432784b4e5ca9943e44ab5ed952 +msgid "Some common issues relating to the mandatory intent change." +msgstr "" + +#: ../../intents.rst:168 a333e864e6ec40fa99a9ad691896a11c +msgid "Where'd my members go?" +msgstr "" + +#: ../../intents.rst:170 daf2dc3baf2b4b0a9deb476725b4f4e1 +msgid "" +"Due to an :ref:`API change ` Discord is now forcing" +" developers who want member caching to explicitly opt-in to it. This is a" +" Discord mandated change and there is no way to bypass it. In order to " +"get members back you have to explicitly enable the :ref:`members " +"privileged intent ` and change the " +":attr:`Intents.members` attribute to true." +msgstr "" + +#: ../../intents.rst:172 bc4a5819d2e4419987f38df992cf6fef +msgid "For example:" +msgstr "" + +#: ../../intents.rst:188 623319a3fecc44f3bee7330669c72206 +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "" + +#: ../../intents.rst:190 ee80456fc4d5418a83a0bd2970b1eac8 +msgid "" +"As part of the API change regarding intents, Discord also changed how " +"members are loaded in the beginning. Originally the library could request" +" 75 guilds at once and only request members from guilds that have the " +":attr:`Guild.large` attribute set to ``True``. With the new intent " +"changes, Discord mandates that we can only send 1 guild per request. This" +" causes a 75x slowdown which is further compounded by the fact that *all*" +" guilds, not just large guilds are being requested." +msgstr "" + +#: ../../intents.rst:192 0d209c1487054921a620382f0c42d77a +msgid "There are a few solutions to fix this." +msgstr "" + +#: ../../intents.rst:194 7f126ed28f1a46df8fb6acee617b41b5 +msgid "" +"The first solution is to request the privileged presences intent along " +"with the privileged members intent and enable both of them. This allows " +"the initial member list to contain online members just like the old " +"gateway. Note that we're still limited to 1 guild per request but the " +"number of guilds we request is significantly reduced." +msgstr "" + +#: ../../intents.rst:196 822035ac34364402a1d6cfe355570145 +msgid "" +"The second solution is to disable member chunking by setting " +"``chunk_guilds_at_startup`` to ``False`` when constructing a client. " +"Then, when chunking for a guild is necessary you can use the various " +"techniques to :ref:`retrieve members `." +msgstr "" + +#: ../../intents.rst:198 a10b1e8e13124c33b7ef00a961e3f5fa +msgid "" +"To illustrate the slowdown caused by the API change, take a bot who is in" +" 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "" + +#: ../../intents.rst:200 16e6d47aa0e1453c926396a4d3faf04d +msgid "" +"Under the original system this would result in 2 requests to fetch the " +"member list (75 guilds, 20 guilds) roughly taking 60 seconds. With " +":attr:`Intents.members` but not :attr:`Intents.presences` this requires " +"840 requests, with a rate limit of 120 requests per 60 seconds means that" +" due to waiting for the rate limit it totals to around 7 minutes of " +"waiting for the rate limit to fetch all the members. With both " +":attr:`Intents.members` and :attr:`Intents.presences` we mostly get the " +"old behaviour so we're only required to request for the 95 guilds that " +"are large, this is slightly less than our rate limit so it's close to the" +" original timing to fetch the member list." +msgstr "" + +#: ../../intents.rst:202 5e64bebe24f8478d99b4af3ae572b396 +msgid "" +"Unfortunately due to this change being required from Discord there is " +"nothing that the library can do to mitigate this." +msgstr "" + +#: ../../intents.rst:204 456af39b458d4c57b7e6ade2540f59b7 +msgid "" +"If you truly dislike the direction Discord is going with their API, you " +"can contact them via `support `_." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/logging.po b/docs/locales/en/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..6e067240e8 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/logging.po @@ -0,0 +1,67 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../logging.rst:7 11eccc080359468a86bef8d45358f539 +msgid "Setting Up Logging" +msgstr "" + +#: ../../logging.rst:9 369e2bcd67d0413dbca92403fa9b2ff6 +msgid "" +"*Pycord* logs errors and debug information via the :mod:`logging` python " +"module. It is strongly recommended that the logging module is configured," +" as no errors or warnings will be output if it is not set up. " +"Configuration of the ``logging`` module can be as simple as::" +msgstr "" + +#: ../../logging.rst:18 15f27810b12a4d01bcb0243e98a20df4 +msgid "" +"Placed at the start of the application. This will output the logs from " +"discord as well as other libraries that use the ``logging`` module " +"directly to the console." +msgstr "" + +#: ../../logging.rst:22 6bd5cec9518243649ead4496c45f036e +msgid "" +"The optional ``level`` argument specifies what level of events to log out" +" and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and " +"``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "" + +#: ../../logging.rst:26 303ae7d601af46d2bead5ad7ae3a1ab9 +msgid "" +"More advanced setups are possible with the :mod:`logging` module. For " +"example to write the logs to a file called ``discord.log`` instead of " +"outputting them to the console the following snippet can be used::" +msgstr "" + +#: ../../logging.rst:39 7ec89923962d4f878759e0a19dfffcc9 +msgid "" +"This is recommended, especially at verbose levels such as ``INFO`` and " +"``DEBUG``, as there are a lot of events logged and it would clog the " +"stdout of your program." +msgstr "" + +#: ../../logging.rst:45 dc5471669f9240fba325278270e16118 +msgid "" +"For more information, check the documentation and tutorial of the " +":mod:`logging` module." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/migrating_to_v1.po b/docs/locales/en/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..fa32574f83 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,2403 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../migrating_to_v1.rst:6 05d2ff2da0bf4a26b3d502e09d78f50e +msgid "Migrating to v1.0" +msgstr "" + +#: ../../migrating_to_v1.rst:8 08a114e33514430eaac09e99fae0b271 +msgid "" +"v1.0 is one of the biggest breaking changes in the library due to a " +"complete redesign." +msgstr "" + +#: ../../migrating_to_v1.rst:11 3fcb6833d08c48378f58cda01ad7c2c9 +msgid "" +"The amount of changes are so massive and long that for all intents and " +"purposes, it is a completely new library." +msgstr "" + +#: ../../migrating_to_v1.rst:14 29d8d0562ff047b6872ce1a4b2292eed +msgid "" +"Part of the redesign involves making things more easy to use and natural." +" Things are done on the :ref:`models ` instead of " +"requiring a :class:`Client` instance to do any work." +msgstr "" + +#: ../../migrating_to_v1.rst:18 a3a80bf8b8a54fd4a764a3266f73d6bf +msgid "Python Version Change" +msgstr "" + +#: ../../migrating_to_v1.rst:20 01478e23f1264f16be197f066be1b7c9 +msgid "" +"In order to make development easier and also to allow for our " +"dependencies to upgrade to allow usage of 3.7 or higher, the library had " +"to remove support for Python versions lower than 3.5.3, which essentially" +" means that **support for Python 3.4 is dropped**." +msgstr "" + +#: ../../migrating_to_v1.rst:25 fbcf913efbc2403eb6a6ebbc4ee19855 +msgid "Major Model Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:27 c1ddcfd6e5564ca495d5aab4d29e3eed +msgid "Below are major model changes that have happened in v1.0" +msgstr "" + +#: ../../migrating_to_v1.rst:30 ab7eeee841a345c0a6fc69854509b783 +msgid "Snowflakes are int" +msgstr "" + +#: ../../migrating_to_v1.rst:32 86f1da0714544984bbc6cb9c9b02d5d1 +msgid "" +"Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has" +" been changed to :class:`int`." +msgstr "" + +#: ../../migrating_to_v1.rst:34 ../../migrating_to_v1.rst:254 +#: 726778b710c04e76978dff7b349cf252 925613332baf474794a7ea8ba3760111 +msgid "Quick example: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:46 92094b94ad5e4c96bb4103624ff1e7ed +msgid "" +"This change allows for fewer errors when using the Copy ID feature in the" +" official client since you no longer have to wrap it in quotes and allows" +" for optimisation opportunities by allowing ETF to be used instead of " +"JSON internally." +msgstr "" + +#: ../../migrating_to_v1.rst:50 6bf6aae7d7a24e108f113412fa3c039f +msgid "Server is now Guild" +msgstr "" + +#: ../../migrating_to_v1.rst:52 afd49bf9015d443187ca1a42f24d59a2 +msgid "" +"The official API documentation calls the \"Server\" concept a \"Guild\" " +"instead. In order to be more consistent with the API documentation when " +"necessary, the model has been renamed to :class:`Guild` and all instances" +" referring to it has been changed as well." +msgstr "" + +#: ../../migrating_to_v1.rst:56 cd47980922e44b96aa22fa8238a42998 +msgid "A list of changes is as follows:" +msgstr "" + +#: ../../migrating_to_v1.rst:59 ../../migrating_to_v1.rst:95 +#: ../../migrating_to_v1.rst:869 6b67d4e97b6d4c8694c2e8da96a76517 +#: 6cb5196bb0504400af83d4731274d8be 9e94073e377e4f0e982b3de50c7f9206 +msgid "Before" +msgstr "" + +#: ../../migrating_to_v1.rst:59 ../../migrating_to_v1.rst:95 +#: ../../migrating_to_v1.rst:869 0ee0a1495d2d41beaa51cd3784372563 +#: a331664e22074b3a87583500ac143465 eb2dcd846f054ca58906e7e4b49a54c5 +msgid "After" +msgstr "" + +#: ../../migrating_to_v1.rst:61 13f32d70cf83477f82296124e4cdcb90 +msgid "``Message.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:61 848d312489e0445ca918844f862eea2f +msgid ":attr:`Message.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:63 ee989678780a439e8e869ab5863db5a9 +msgid "``Channel.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:63 903a4bed805f45d2bd606304c5c55ff8 +msgid ":attr:`.GuildChannel.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:65 21084db1e16941c6a730d938e56f5732 +msgid "``Client.servers``" +msgstr "" + +#: ../../migrating_to_v1.rst:65 ../../migrating_to_v1.rst:233 +#: bf57f40e45224fb6b17b85631e1cd610 c0744923b6ad4866b1d44b17f03192dc +msgid ":attr:`Client.guilds`" +msgstr "" + +#: ../../migrating_to_v1.rst:67 945daa4c554640b1855029d249c5b8d7 +msgid "``Client.get_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:67 68cfaa3d9fbe461eb7dfd5fff7c06c5c +msgid ":meth:`Client.get_guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:69 875c2ef6561f4509b9ff0b5f4f20e0ad +msgid "``Emoji.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:69 3c37d605a0764fecb6891d6570e0f59c +msgid ":attr:`Emoji.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:71 29f06211fc3a451080147b3fa1b63ecf +msgid "``Role.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:71 45a2673f1722437da461561f91d40dc4 +msgid ":attr:`Role.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:73 96b745ba395d4504a3ddd38f88ec7104 +msgid "``Invite.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:73 fc9f937fe96f42a4a27286ebb0ff422c +msgid ":attr:`Invite.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:75 5d3f552e24a347648b4ed8d1faa3ec4b +msgid "``Member.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:75 096b13e7789940b39edb3afc84270347 +msgid ":attr:`Member.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:77 0314f6751297469f921e125c6e6a0bc8 +msgid "``Permissions.manage_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:77 affd96346b0b4e01bcbde35265580bea +msgid ":attr:`Permissions.manage_guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:79 5e44ec077a944f84b7e8d3f99ac23868 +msgid "``VoiceClient.server``" +msgstr "" + +#: ../../migrating_to_v1.rst:79 dbdf10d3e3e3429f8c02921f1ca1b843 +msgid ":attr:`VoiceClient.guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:81 9316c0bac15449e49e73ddb4a78e2fc2 +msgid "``Client.create_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:81 2d48655041c44ee38f073c15d1f36a9b +msgid ":meth:`Client.create_guild`" +msgstr "" + +#: ../../migrating_to_v1.rst:87 011af788cddf4c26aa243f725dcdd5e5 +msgid "Models are Stateful" +msgstr "" + +#: ../../migrating_to_v1.rst:89 c999a05b88fe4eedbc6371c77cef842c +msgid "" +"As mentioned earlier, a lot of functionality was moved out of " +":class:`Client` and put into their respective :ref:`model " +"`." +msgstr "" + +#: ../../migrating_to_v1.rst:92 e9b15496d50c4ec0a05adf9442bde7a4 +msgid "A list of these changes is enumerated below." +msgstr "" + +#: ../../migrating_to_v1.rst:97 94e795e1da494a64b0c0bc866ae68c15 +msgid "``Client.add_reaction``" +msgstr "" + +#: ../../migrating_to_v1.rst:97 8bea368aaa4d4177909d013637a2829d +msgid ":meth:`Message.add_reaction`" +msgstr "" + +#: ../../migrating_to_v1.rst:99 8db0940f543543059a77cf8df0b81c5d +msgid "``Client.add_roles``" +msgstr "" + +#: ../../migrating_to_v1.rst:99 9a303369f600474aadc221234b1c1a1c +msgid ":meth:`Member.add_roles`" +msgstr "" + +#: ../../migrating_to_v1.rst:101 fd21c1b2c3e34b429c1cf07bd8756eff +msgid "``Client.ban``" +msgstr "" + +#: ../../migrating_to_v1.rst:101 b6a7d155d4784c9193fad59b72a6ae3a +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr "" + +#: ../../migrating_to_v1.rst:103 8ea042cb92df473c872e8bd49c658d33 +msgid "``Client.change_nickname``" +msgstr "" + +#: ../../migrating_to_v1.rst:103 ../../migrating_to_v1.rst:171 +#: ../../migrating_to_v1.rst:187 ../../migrating_to_v1.rst:195 +#: 74f3be9c3add4f368f86a690fc5d1472 aa792784735d4bdba990f4c81103bdf8 +#: de31911786464ca6ba77fd0a83061978 ea928f7105be4ba58ae0cf4fafee9a56 +msgid ":meth:`Member.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:105 0e56f79feaf942f2b47ef31533e852be +msgid "``Client.clear_reactions``" +msgstr "" + +#: ../../migrating_to_v1.rst:105 c677bd80cb794404a16dd85913b026fd +msgid ":meth:`Message.clear_reactions`" +msgstr "" + +#: ../../migrating_to_v1.rst:107 405430deafd44706b1d2ccfdc7adffef +msgid "``Client.create_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:107 8197239135d4498c987d70feeb74230e +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr "" + +#: ../../migrating_to_v1.rst:109 e078594a079a4fc7afe2da419064f075 +msgid "``Client.create_custom_emoji``" +msgstr "" + +#: ../../migrating_to_v1.rst:109 f2a7d3500a6843ce8571812144dbcdd1 +msgid ":meth:`Guild.create_custom_emoji`" +msgstr "" + +#: ../../migrating_to_v1.rst:111 8b7d857db2c04131b45dcc292a87350d +msgid "``Client.create_invite``" +msgstr "" + +#: ../../migrating_to_v1.rst:111 a60b083866944e07b48eb011fcded1fd +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr "" + +#: ../../migrating_to_v1.rst:113 6897002f63c34b1aa54f7db07bcaca52 +msgid "``Client.create_role``" +msgstr "" + +#: ../../migrating_to_v1.rst:113 725a519d0f244b5da03b8c093fb489cc +msgid ":meth:`Guild.create_role`" +msgstr "" + +#: ../../migrating_to_v1.rst:115 d4ab86d5c94f4605910cea8cf12e4106 +msgid "``Client.delete_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:115 d0908cd8ea9b403f9d6de25b14807e11 +msgid ":meth:`abc.GuildChannel.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:117 efd47808372b4129adcb9edaaba93f37 +msgid "``Client.delete_channel_permissions``" +msgstr "" + +#: ../../migrating_to_v1.rst:117 6b38d46ef27f48cfba916a202e9e100e +msgid "" +":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to " +"``None``" +msgstr "" + +#: ../../migrating_to_v1.rst:119 5c12aa9ffd114e83b757f7a014de636b +msgid "``Client.delete_custom_emoji``" +msgstr "" + +#: ../../migrating_to_v1.rst:119 9a1c29f1279b41f2b999cb7904b381c2 +msgid ":meth:`Emoji.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:121 ebf7d015a5b14213a5eaee0813f0ffb1 +msgid "``Client.delete_invite``" +msgstr "" + +#: ../../migrating_to_v1.rst:121 b4e1fb2064484dfabf7352cad2f466e9 +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr "" + +#: ../../migrating_to_v1.rst:123 adc92ae100614899b29e8676b7a1ef5e +msgid "``Client.delete_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:123 51be51cd47d649ae9efc2cc87a9affb2 +msgid ":meth:`Message.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:125 5db9f035ef83430a89b58e8ec64f50be +msgid "``Client.delete_messages``" +msgstr "" + +#: ../../migrating_to_v1.rst:125 8eb231dcf1534abb83d85ffe5e117d32 +msgid ":meth:`TextChannel.delete_messages`" +msgstr "" + +#: ../../migrating_to_v1.rst:127 7655a15760eb4237aad379eee0dfe37b +msgid "``Client.delete_role``" +msgstr "" + +#: ../../migrating_to_v1.rst:127 d1111acf427b4f1886208654311f7c6a +msgid ":meth:`Role.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:129 9fab1feb27fc4216b4672fb8d6b1c6d4 +msgid "``Client.delete_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:129 b44734280874458eafaaa518cb0ce20f +msgid ":meth:`Guild.delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:131 fcc22c5f49c4431c94ce4b63152e9590 +msgid "``Client.edit_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:131 ../../migrating_to_v1.rst:169 +#: 93122c34f2a241d5acb80ac8a27f3c4f e04c8bcd4136405b9c220ca7cc7d1e94 +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:133 7b6e8997079445cb8147f3d3d23e1191 +msgid "``Client.edit_channel_permissions``" +msgstr "" + +#: ../../migrating_to_v1.rst:133 cf899de66e4d48f6a029c40b2d6c2003 +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr "" + +#: ../../migrating_to_v1.rst:135 5103bd1efa634efb98de457fd1af2c92 +msgid "``Client.edit_custom_emoji``" +msgstr "" + +#: ../../migrating_to_v1.rst:135 20888f79720b4d519397d484a767dd0d +msgid ":meth:`Emoji.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:137 38060dbbe60044ac904147be01829edd +msgid "``Client.edit_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:137 8dbe5754dd5d4f08839579fe2437035f +msgid ":meth:`Message.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:139 fae4deadcb5c4faab066509db2b40df8 +msgid "``Client.edit_profile``" +msgstr "" + +#: ../../migrating_to_v1.rst:139 91cd7eb6ec4a484a929c0065a1c1be12 +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr "" + +#: ../../migrating_to_v1.rst:141 ec1708f42e1b4837b199eb03aa6d0802 +msgid "``Client.edit_role``" +msgstr "" + +#: ../../migrating_to_v1.rst:141 ../../migrating_to_v1.rst:173 +#: 2ca2af0b09124e90a2f0d31328f8e1d6 7a3c12cb8dfb41bf955590556e87f472 +msgid ":meth:`Role.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:143 5c59f45214844d8381809ca387bfc230 +msgid "``Client.edit_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:143 2db144ee0f7b4fffa9fd39e1ca3238ae +msgid ":meth:`Guild.edit`" +msgstr "" + +#: ../../migrating_to_v1.rst:145 dbee023d8b504910a06bd022ff49933d +msgid "``Client.estimate_pruned_members``" +msgstr "" + +#: ../../migrating_to_v1.rst:145 fd3396dc423045bab0ceca5f4316dd7a +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr "" + +#: ../../migrating_to_v1.rst:147 ../../migrating_to_v1.rst:327 +#: ea5522c34eaf4037834c736733e6c0f5 f8ab0d799f99475cb3ac68107b5033e1 +msgid "``Client.get_all_emojis``" +msgstr "" + +#: ../../migrating_to_v1.rst:147 3f799da829b84af9b77c1eb7e280d747 +msgid ":attr:`Client.emojis`" +msgstr "" + +#: ../../migrating_to_v1.rst:149 85a7cbed901245c1a33ff023c25ec644 +msgid "``Client.get_bans``" +msgstr "" + +#: ../../migrating_to_v1.rst:149 b01d0c956dcc43b1a204501308966016 +msgid ":meth:`Guild.bans`" +msgstr "" + +#: ../../migrating_to_v1.rst:151 35c46218094b4f62bd661e0c8c5c9f39 +msgid "``Client.get_invite``" +msgstr "" + +#: ../../migrating_to_v1.rst:151 4167a66028c4468698d060ea2c5d2ab3 +msgid ":meth:`Client.fetch_invite`" +msgstr "" + +#: ../../migrating_to_v1.rst:153 fa438a74ea2b486eb04f95af7fa5f014 +msgid "``Client.get_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:153 5bf6ea90b56a434ab46dc6b403c513ab +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr "" + +#: ../../migrating_to_v1.rst:155 a19cc4a9328042938def362716827d73 +msgid "``Client.get_reaction_users``" +msgstr "" + +#: ../../migrating_to_v1.rst:155 ../../migrating_to_v1.rst:493 +#: 0aeff23f2d644390a344002dc788bf88 350c6a6c4c384a2b90bb54dedbb75987 +msgid ":meth:`Reaction.users`" +msgstr "" + +#: ../../migrating_to_v1.rst:157 a66f58f3ec2740b6a6a82a49e167c3d7 +msgid "``Client.get_user_info``" +msgstr "" + +#: ../../migrating_to_v1.rst:157 a8a6c6c74f714667b21fd9bc30bc6925 +msgid ":meth:`Client.fetch_user`" +msgstr "" + +#: ../../migrating_to_v1.rst:159 0a14f4f2c56e49cd8f365edb1f82c378 +msgid "``Client.invites_from``" +msgstr "" + +#: ../../migrating_to_v1.rst:159 67cdab68e2bb4467a38adcb61049dc23 +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr "" + +#: ../../migrating_to_v1.rst:161 7c03320da8d242f992b1573330ce8b7d +msgid "``Client.join_voice_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:161 0d44d955e09a43b199a05191d5900ba8 +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr "" + +#: ../../migrating_to_v1.rst:163 27881100eed84bf7b795c126be68f1a6 +msgid "``Client.kick``" +msgstr "" + +#: ../../migrating_to_v1.rst:163 94e0f7141cda45ae903c35aa6a69c35d +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr "" + +#: ../../migrating_to_v1.rst:165 3b984ccf21c145a7ad6a39a55f951f37 +msgid "``Client.leave_server``" +msgstr "" + +#: ../../migrating_to_v1.rst:165 cc54c4b806da43aaada0c9bb0aff3fe0 +msgid ":meth:`Guild.leave`" +msgstr "" + +#: ../../migrating_to_v1.rst:167 46e93cb3d74148509eaba7bcba6d3773 +msgid "``Client.logs_from``" +msgstr "" + +#: ../../migrating_to_v1.rst:167 9db5389e5ae84620869db55173736111 +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr "" + +#: ../../migrating_to_v1.rst:169 12d4e4d1daf04ec3ba27607b30bcbf9c +msgid "``Client.move_channel``" +msgstr "" + +#: ../../migrating_to_v1.rst:171 f5b76a01d47a4e5d8031370a4d864786 +msgid "``Client.move_member``" +msgstr "" + +#: ../../migrating_to_v1.rst:173 b9787931f9a0423b97f79701c74670f6 +msgid "``Client.move_role``" +msgstr "" + +#: ../../migrating_to_v1.rst:175 5c8fdd44558b4ca7a1bff8d6380fa123 +msgid "``Client.pin_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:175 0c34b268afcc48caaee11aaf50000804 +msgid ":meth:`Message.pin`" +msgstr "" + +#: ../../migrating_to_v1.rst:177 2d28dfd9a6d64279a5e2b700a3e68bcc +msgid "``Client.pins_from``" +msgstr "" + +#: ../../migrating_to_v1.rst:177 de48b36586f04dbabbbed5b57bdc119c +msgid ":meth:`abc.Messageable.pins`" +msgstr "" + +#: ../../migrating_to_v1.rst:179 09aeb1072a5644b68615c67361062d68 +msgid "``Client.prune_members``" +msgstr "" + +#: ../../migrating_to_v1.rst:179 6802632e0c70420aba56713487e598f2 +msgid ":meth:`Guild.prune_members`" +msgstr "" + +#: ../../migrating_to_v1.rst:181 17170c5bcff34c0e9539a8eea220a74f +msgid "``Client.purge_from``" +msgstr "" + +#: ../../migrating_to_v1.rst:181 d36ebb5d874648cc85d51b970a233a74 +msgid ":meth:`TextChannel.purge`" +msgstr "" + +#: ../../migrating_to_v1.rst:183 13be010f52b34321918e1696c8383852 +msgid "``Client.remove_reaction``" +msgstr "" + +#: ../../migrating_to_v1.rst:183 29aa2125f7a34ccfa54c4372872b7f43 +msgid ":meth:`Message.remove_reaction`" +msgstr "" + +#: ../../migrating_to_v1.rst:185 06fd7f80d1634176804ee99ef6ae311a +msgid "``Client.remove_roles``" +msgstr "" + +#: ../../migrating_to_v1.rst:185 f9648fd1303a4d0aaf94af88c0d1ea8f +msgid ":meth:`Member.remove_roles`" +msgstr "" + +#: ../../migrating_to_v1.rst:187 4a8077b6aac245ae80a7d0c20ad2eca1 +msgid "``Client.replace_roles``" +msgstr "" + +#: ../../migrating_to_v1.rst:189 82070de88db3450382a6e8b64b0638b5 +msgid "``Client.send_file``" +msgstr "" + +#: ../../migrating_to_v1.rst:189 ../../migrating_to_v1.rst:191 +#: 21b5cb332c3140118eea23a5db6c5918 5a9ebc5464ae436a878e4068f6380ee5 +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr "" + +#: ../../migrating_to_v1.rst:191 44ae95f930be41b6a6594c20c055e7d4 +msgid "``Client.send_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:193 c760774b209f42b1b2d308fde2e7aba5 +msgid "``Client.send_typing``" +msgstr "" + +#: ../../migrating_to_v1.rst:193 04926c93000d411b812f6983e5f467a5 +msgid "" +":meth:`abc.Messageable.trigger_typing` (use " +":meth:`abc.Messageable.typing`)" +msgstr "" + +#: ../../migrating_to_v1.rst:195 b11c308b2aeb41b287e1cc0bd595959b +msgid "``Client.server_voice_state``" +msgstr "" + +#: ../../migrating_to_v1.rst:197 b1b87fd6d1274c8bb1e5442c9df56101 +msgid "``Client.start_private_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:197 610cb6f98f2845af9066ca0bde6716fc +msgid ":meth:`User.create_dm`" +msgstr "" + +#: ../../migrating_to_v1.rst:199 a11d9f52701b407d8d2335f74dbbfcea +msgid "``Client.unban``" +msgstr "" + +#: ../../migrating_to_v1.rst:199 031a1c0155c44f0ca8f9b5132954bc1e +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr "" + +#: ../../migrating_to_v1.rst:201 5c196c6af2fd45daadf86d1dc9704580 +msgid "``Client.unpin_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:201 08494bd8ab9c4acb9673ef7581383b31 +msgid ":meth:`Message.unpin`" +msgstr "" + +#: ../../migrating_to_v1.rst:203 d2cf551969f646918ce0e788d35b6e5e +msgid "``Client.wait_for_message``" +msgstr "" + +#: ../../migrating_to_v1.rst:203 ../../migrating_to_v1.rst:205 +#: 202dc8001ca4408aa742db9ad98ce404 aeb94dbd878040e18cd6830187c6c850 +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr "" + +#: ../../migrating_to_v1.rst:205 4ca6e12c3be449439cfa64b0df3c5e3d +msgid "``Client.wait_for_reaction``" +msgstr "" + +#: ../../migrating_to_v1.rst:207 28b6320bfed6413d998a266242586173 +msgid "``Client.wait_until_login``" +msgstr "" + +#: ../../migrating_to_v1.rst:207 5424bd2db4c04063adeb15efa0b596ee +msgid "Removed" +msgstr "" + +#: ../../migrating_to_v1.rst:209 2b683045f0154326bbe09da63799050c +msgid "``Client.wait_until_ready``" +msgstr "" + +#: ../../migrating_to_v1.rst:209 969b537044544ccd96e09e7bb393f9a4 +msgid "No change" +msgstr "" + +#: ../../migrating_to_v1.rst:213 b833197c9eda40ceb1f0458d1dbdc1b0 +msgid "Property Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:215 96fb89d21cfc4269b3340e8bf24c3ff3 +msgid "" +"In order to be a bit more consistent, certain things that were properties" +" were changed to methods instead." +msgstr "" + +#: ../../migrating_to_v1.rst:217 db5e4c126dc6483597ae4b448fd25a01 +msgid "" +"The following are now methods instead of properties (requires " +"parentheses):" +msgstr "" + +#: ../../migrating_to_v1.rst:219 9e67c72b4a5447c1bcdf5fe2e5c844ee +msgid ":meth:`Role.is_default`" +msgstr "" + +#: ../../migrating_to_v1.rst:220 49bacae9ae944b169775bac1e871de18 +msgid ":meth:`Client.is_ready`" +msgstr "" + +#: ../../migrating_to_v1.rst:221 f1ed0e382f1945588d162fb5af03420f +msgid ":meth:`Client.is_closed`" +msgstr "" + +#: ../../migrating_to_v1.rst:224 ece133f97cff4d0dad36e052438c7a64 +msgid "Dict Value Change" +msgstr "" + +#: ../../migrating_to_v1.rst:226 7cd0083e51a84abb9055eb5f10b5f4f1 +msgid "" +"Prior to v1.0 some aggregating properties that retrieved models would " +"return \"dict view\" objects." +msgstr "" + +#: ../../migrating_to_v1.rst:228 8a5302be472945d2b648830639c97007 +msgid "" +"As a consequence, when the dict would change size while you would iterate" +" over it, a RuntimeError would be raised and crash the task. To alleviate" +" this, the \"dict view\" objects were changed into lists." +msgstr "" + +#: ../../migrating_to_v1.rst:231 39186001d0b9465fb4fe28855a9402eb +msgid "The following views were changed to a list:" +msgstr "" + +#: ../../migrating_to_v1.rst:234 cb1e36effc2d4f3f89ce30bc609fc2e9 +msgid ":attr:`Client.users` (new in v1.0)" +msgstr "" + +#: ../../migrating_to_v1.rst:235 4e04941d05bb4c6baf35ec2c3333cde9 +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr "" + +#: ../../migrating_to_v1.rst:236 64adbb946f4d4c8dab5bd36915a526f9 +msgid ":attr:`Guild.channels`" +msgstr "" + +#: ../../migrating_to_v1.rst:237 e4ff974617fb4c86a225769bec0d2b9c +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr "" + +#: ../../migrating_to_v1.rst:238 39239d0c77204068bb8730a9672a929b +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr "" + +#: ../../migrating_to_v1.rst:239 e5a4c980d3ed471ea95c02e62c8ab392 +msgid ":attr:`Guild.emojis`" +msgstr "" + +#: ../../migrating_to_v1.rst:240 5098e9b55b9f4fc4a7456fd18644e798 +msgid ":attr:`Guild.members`" +msgstr "" + +#: ../../migrating_to_v1.rst:243 fc819b1aa6a743ddbf0cb3fc9d8f8380 +msgid "Voice State Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:245 4208d2bddf8d4a58a07a51fdd2a08b0e +msgid "" +"Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to " +"voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "" + +#: ../../migrating_to_v1.rst:248 d77f52311c20468597ad6cae9b443580 +msgid "" +"However, it was transparent to the user. In an effort to make the library" +" save more memory, the voice state change is now more visible." +msgstr "" + +#: ../../migrating_to_v1.rst:251 95db5960ec01462d8b943bc47a492b11 +msgid "" +"The only way to access voice attributes is via the :attr:`Member.voice` " +"attribute. Note that if the member does not have a voice state this " +"attribute can be ``None``." +msgstr "" + +#: ../../migrating_to_v1.rst:267 6db07e90c3b340d28b008cc0078339c8 +msgid "User and Member Type Split" +msgstr "" + +#: ../../migrating_to_v1.rst:269 5a79efb82b2642fda44762a3c85a558d +msgid "" +"In v1.0 to save memory, :class:`User` and :class:`Member` are no longer " +"inherited. Instead, they are \"flattened\" by having equivalent " +"properties that map out to the functional underlying :class:`User`. Thus," +" there is no functional change in how they are used. However this breaks " +":func:`isinstance` checks and thus is something to keep in mind." +msgstr "" + +#: ../../migrating_to_v1.rst:273 6419a01d88174ef6a777c54e617e0404 +msgid "" +"These memory savings were accomplished by having a global :class:`User` " +"cache, and as a positive consequence you can now easily fetch a " +":class:`User` by their ID by using the new :meth:`Client.get_user`. You " +"can also get a list of all :class:`User` your client can see with " +":attr:`Client.users`." +msgstr "" + +#: ../../migrating_to_v1.rst:280 5bf8ba5e79d54e13b799945973a41880 +msgid "Channel Type Split" +msgstr "" + +#: ../../migrating_to_v1.rst:282 45a2593f472643d6a19e40a147888513 +msgid "" +"Prior to v1.0, channels were two different types, ``Channel`` and " +"``PrivateChannel`` with a ``is_private`` property to help differentiate " +"between them." +msgstr "" + +#: ../../migrating_to_v1.rst:285 dc8f4981304946ff88e31e42f80a2a29 +msgid "" +"In order to save memory the channels have been split into 4 different " +"types:" +msgstr "" + +#: ../../migrating_to_v1.rst:287 f550804ce1204cb2b636820acf1af973 +msgid ":class:`TextChannel` for guild text channels." +msgstr "" + +#: ../../migrating_to_v1.rst:288 8f4c1f0b78cb48889fa2a2d2fc3cc260 +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr "" + +#: ../../migrating_to_v1.rst:289 19b50d1fe9fb49e59fce3623f1f447ac +msgid ":class:`DMChannel` for DM channels with members." +msgstr "" + +#: ../../migrating_to_v1.rst:290 e6f2c36a649a4de483721010dfb6b395 +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr "" + +#: ../../migrating_to_v1.rst:292 f9f1dcdab18c4ef7b8a1869e026589aa +msgid "" +"With this split came the removal of the ``is_private`` attribute. You " +"should now use :func:`isinstance`." +msgstr "" + +#: ../../migrating_to_v1.rst:294 c16783ba48b64517a3c6fd00e76880e5 +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "" + +#: ../../migrating_to_v1.rst:296 a08dd7257a9a418cbdd428cfe61d8255 +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr "" + +#: ../../migrating_to_v1.rst:297 ab147f4fc32e4a128bd8a3ac4c39cfc5 +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr "" + +#: ../../migrating_to_v1.rst:299 e3e9a8d1db9b472da8d40eb0f0a67f26 +msgid "So to check if something is a guild channel you would do: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:303 b3383f30092b4653a41adedacbf9d65d +msgid "And to check if it's a private channel you would do: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:307 03625cafc46e403db8b3dc9d11450f0e +msgid "" +"Of course, if you're looking for only a specific type you can pass that " +"too, e.g. ::" +msgstr "" + +#: ../../migrating_to_v1.rst:311 7ac3cf11adc9479c8bf2ad730811c516 +msgid "" +"With this type split also came event changes, which are enumerated in " +":ref:`migrating_1_0_event_changes`." +msgstr "" + +#: ../../migrating_to_v1.rst:315 2d828c5926924c8f86e32794b479d977 +msgid "Miscellaneous Model Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:317 cc198061f9b64c929962944acf543124 +msgid "There were lots of other things added or removed in the models in general." +msgstr "" + +#: ../../migrating_to_v1.rst:319 fd469142924b4fd7a3b4921523036b46 +msgid "They will be enumerated here." +msgstr "" + +#: ../../migrating_to_v1.rst:321 e9404c8e82e3482fab8d708ea362e99a +msgid "**Removed**" +msgstr "" + +#: ../../migrating_to_v1.rst:323 9462ce20bfef475e93af420b16f85ca2 +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr "" + +#: ../../migrating_to_v1.rst:325 0cc0d2cfe0da43c493b34b540b4af4a8 +msgid "Use a token and ``bot=False``." +msgstr "" + +#: ../../migrating_to_v1.rst:329 1390977a01694002a12fd426db34ce2f +msgid "Use :attr:`Client.emojis` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:331 d40f8bd32e1e49ab90022f5188a954b2 +msgid "``Client.messages``" +msgstr "" + +#: ../../migrating_to_v1.rst:333 d72282cc08364496b2ca23a1c5c981b7 +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:335 36216d86592e4d5d88a6c5964e07858d +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "" + +#: ../../migrating_to_v1.rst:337 612b385adaf749f1a4f052e1dab81603 +msgid "Use :meth:`Client.wait_for` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:339 aa636de7e20142d993f176264467d788 +msgid "``Channel.voice_members``" +msgstr "" + +#: ../../migrating_to_v1.rst:341 f2ddce14d7014b77aa99274280ab8085 +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:343 c7cbd4c6cc2e44ffbb1e374f16e3ca14 +msgid "``Channel.is_private``" +msgstr "" + +#: ../../migrating_to_v1.rst:345 af2e0b9e82fe451d8e968fd44078eecc +msgid "" +"Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` " +"instead." +msgstr "" + +#: ../../migrating_to_v1.rst:346 8ff877a7d0494dc6885840c9a9af926d +msgid "" +"e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it " +"isn't a private channel." +msgstr "" + +#: ../../migrating_to_v1.rst:348 2c690055e6e84005bc23d6e022f6d0fe +msgid "``Client.accept_invite``" +msgstr "" + +#: ../../migrating_to_v1.rst:350 3ed5021249ef44a3aaf415eb444809fd +msgid "" +"There is no replacement for this one. This functionality is deprecated " +"API wise." +msgstr "" + +#: ../../migrating_to_v1.rst:352 2f00496bbdbb43b5bb4f3c2959b5a36c +msgid "" +"``Guild.default_channel`` / ``Server.default_channel`` and " +"``Channel.is_default``" +msgstr "" + +#: ../../migrating_to_v1.rst:354 d9cc44a13d7d4d68b6284345d21ad0b2 +msgid "" +"The concept of a default channel was removed from Discord. See `#329 " +"`_." +msgstr "" + +#: ../../migrating_to_v1.rst:357 cc7ab25609f64d84ad2e7ead99fd4740 +msgid "``Message.edited_timestamp``" +msgstr "" + +#: ../../migrating_to_v1.rst:359 c279877dabcf4c55a054fdd2f3bb1859 +msgid "Use :attr:`Message.edited_at` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:361 37c351618c12422c9a87f21796f1a45e +msgid "``Message.timestamp``" +msgstr "" + +#: ../../migrating_to_v1.rst:363 4fa300b20b3345a6ba9b288a4465cc4c +msgid "Use :attr:`Message.created_at` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:365 2eb7618a262b47cb90ce5652125b2366 +msgid "``Colour.to_tuple()``" +msgstr "" + +#: ../../migrating_to_v1.rst:367 f834ba8e5c954537bfd16b57228fbb7c +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:369 d6bfb84091fc4d72b69ac916cb1579dd +msgid "``Permissions.view_audit_logs``" +msgstr "" + +#: ../../migrating_to_v1.rst:371 10465e08fdd24e06a15519f0ed384032 +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:373 04e56cd829e1486ab65d3b92fc39852d +msgid "``Member.game``" +msgstr "" + +#: ../../migrating_to_v1.rst:375 846418d5f6814e27a4e9ac9f835a9c9f +msgid "Use :attr:`Member.activities` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:377 d08bcf48a20046708bfd6f085c9a0b7d +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "" + +#: ../../migrating_to_v1.rst:379 625da8eb89cc4472912ff9ba5a136d65 +msgid "" +"Use :attr:`Guild.roles` instead. Note that while sorted, it is in the " +"opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "" + +#: ../../migrating_to_v1.rst:382 1d7540080ea24244a8583392ea4b5af6 +msgid "**Changed**" +msgstr "" + +#: ../../migrating_to_v1.rst:384 64a5c7f0e72b471988d21597f4240121 +msgid "" +":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the " +"default avatar if a custom one is not set." +msgstr "" + +#: ../../migrating_to_v1.rst:385 54bd91c8c6884da59346bba5e163c898 +msgid "" +":attr:`Message.embeds` is now a list of :class:`Embed` instead of " +":class:`dict` objects." +msgstr "" + +#: ../../migrating_to_v1.rst:386 c98a7b8d27c4406a819e2b4e8ecd688c +msgid "" +":attr:`Message.attachments` is now a list of :class:`Attachment` instead " +"of :class:`dict` object." +msgstr "" + +#: ../../migrating_to_v1.rst:387 32d1ba30b24045379f0dd4138ec8dab6 +msgid "" +":attr:`Guild.roles` is now sorted through hierarchy. The first element is" +" always the ``@everyone`` role." +msgstr "" + +#: ../../migrating_to_v1.rst:389 4cbc420538d8497a9acfd60c569bc87d +msgid "**Added**" +msgstr "" + +#: ../../migrating_to_v1.rst:391 14dadba990844c66a56441cea7741e86 +msgid ":class:`Attachment` to represent a discord attachment." +msgstr "" + +#: ../../migrating_to_v1.rst:392 5c834b00f5c741f0a0023eb764f35852 +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr "" + +#: ../../migrating_to_v1.rst:393 2e0e1b0db23640338188a19254667a01 +msgid "" +":attr:`VoiceChannel.members` for fetching members connected to a voice " +"channel." +msgstr "" + +#: ../../migrating_to_v1.rst:394 679c97019b704cb9a55160c05ab8d03a +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr "" + +#: ../../migrating_to_v1.rst:395 ddafe9fedca0419eb5210bd1d23c3358 +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr "" + +#: ../../migrating_to_v1.rst:396 0e7db41ddde4453eae7d065d60eb2ef5 +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr "" + +#: ../../migrating_to_v1.rst:397 3343b58250264ea1a3edd8a2ae90ec1d +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr "" + +#: ../../migrating_to_v1.rst:398 0e5f8bbd9111437c94d828d8aa4abf28 +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr "" + +#: ../../migrating_to_v1.rst:399 84147ba1e8c547daa2038b9984ac64d5 +msgid "" +":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the" +" category a channel belongs to." +msgstr "" + +#: ../../migrating_to_v1.rst:400 f8dbf611354144578256e71473ef5556 +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr "" + +#: ../../migrating_to_v1.rst:401 03fd7a8161a349ad9afa53e366917cb3 +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr "" + +#: ../../migrating_to_v1.rst:402 b4e50029b4bd433fa6d5fbd8afe42d3a +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr "" + +#: ../../migrating_to_v1.rst:403 894c9d25dce5446e941cf54a226c64b5 +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr "" + +#: ../../migrating_to_v1.rst:404 0e1a13e6497a4994984adf71ac3d018d +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr "" + +#: ../../migrating_to_v1.rst:405 bb959e7f5430417babe1bf43e7073351 +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr "" + +#: ../../migrating_to_v1.rst:406 df5dce28532c4ea7bd6c75e1535ad238 +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr "" + +#: ../../migrating_to_v1.rst:407 47388b4ae3ee45f9945824b02d116a3e +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr "" + +#: ../../migrating_to_v1.rst:408 c6443ea78c7646d58a81f4f6021f48b1 +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr "" + +#: ../../migrating_to_v1.rst:409 8d298003d6194b059a7e22e9caf69fed +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr "" + +#: ../../migrating_to_v1.rst:410 01bfca795c93402594ec5e740adbf1f5 +msgid "" +":attr:`Message.activity` and :attr:`Message.application` for Rich " +"Presence related information." +msgstr "" + +#: ../../migrating_to_v1.rst:411 3a3b4ed3653e44859829df298d331289 +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr "" + +#: ../../migrating_to_v1.rst:412 0f551cce961242699bfc7f5ff1a08858 +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr "" + +#: ../../migrating_to_v1.rst:413 64342a1e3ab94a9caf4fdea4cddf74a7 +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr "" + +#: ../../migrating_to_v1.rst:418 93483cd0b11742a5be6a2630fcadfd6c +msgid "Sending Messages" +msgstr "" + +#: ../../migrating_to_v1.rst:420 4a7d41fa39074e78af801e0ccb92fc52 +msgid "" +"One of the changes that were done was the merger of the previous " +"``Client.send_message`` and ``Client.send_file`` functionality into a " +"single method, :meth:`~abc.Messageable.send`." +msgstr "" + +#: ../../migrating_to_v1.rst:423 ../../migrating_to_v1.rst:1077 +#: 635b9e52c62b40be95e8f1251bc4cecf a95df90801f5424ba3ffc944daf822d2 +msgid "Basically: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:431 75b25b7eecf34fbb90e4c65fce5225ab +msgid "" +"This supports everything that the old ``send_message`` supported such as " +"embeds: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:436 0ef5563378af41de874e269e1cd5b715 +msgid "" +"There is a caveat with sending files however, as this functionality was " +"expanded to support multiple file attachments, you must now use a " +":class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "" + +#: ../../migrating_to_v1.rst:445 8443012316c74ad193cb170f3e814f1d +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:457 0d4c2304e5664095afccfa5ed96747d3 +msgid "Asynchronous Iterators" +msgstr "" + +#: ../../migrating_to_v1.rst:459 77bd460a27e14dddb3ce6500b4c9320a +msgid "" +"Prior to v1.0, certain functions like ``Client.logs_from`` would return a" +" different type if done in Python 3.4 or 3.5+." +msgstr "" + +#: ../../migrating_to_v1.rst:461 a3a3f79370b2492c86b4affcf4a5c94f +msgid "" +"In v1.0, this change has been reverted and will now return a singular " +"type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "" + +#: ../../migrating_to_v1.rst:464 5d5f83816f9d44b5b3707a7e7475ab04 +msgid "This allows you to iterate over it like normal: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:469 1fc400dcbe254cfab5aed6427460356b +msgid "Or turn it into a list: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:475 7326483343ea4cf691a3711031f4643e +msgid "" +"A handy aspect of returning :class:`AsyncIterator` is that it allows you " +"to chain functions together such as :meth:`AsyncIterator.map` or " +":meth:`AsyncIterator.filter`: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:481 3b65f1ee651543878ac2a4feadf18d68 +msgid "" +"The functions passed to :meth:`AsyncIterator.map` or " +":meth:`AsyncIterator.filter` can be either coroutines or regular " +"functions." +msgstr "" + +#: ../../migrating_to_v1.rst:484 0dcb16850ed4472d94ac1a873afd2c49 +msgid "" +"You can also get single elements a la :func:`discord.utils.find` or " +":func:`discord.utils.get` via :meth:`AsyncIterator.get` or " +":meth:`AsyncIterator.find`: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:489 c335fa3d422745b6bc51f91e811acc63 +msgid "The following return :class:`AsyncIterator`:" +msgstr "" + +#: ../../migrating_to_v1.rst:491 02e5d9e1999645289ffd7e3664d02f8b +msgid ":meth:`abc.Messageable.history`" +msgstr "" + +#: ../../migrating_to_v1.rst:492 0d5fbee7dd1246b8ab9958162096803d +msgid ":meth:`Guild.audit_logs`" +msgstr "" + +#: ../../migrating_to_v1.rst:498 ../../migrating_to_v1.rst:924 +#: a06857ff194c4c8d9879e9d48b66a4e0 f19b1d3c85b14c5090e82a7e8f4abf7e +msgid "Event Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:500 73a83837fbd74e929cce57fb5a3e4a0f +msgid "A lot of events have gone through some changes." +msgstr "" + +#: ../../migrating_to_v1.rst:502 efb7fb2ba44c497993cbd45815884179 +msgid "" +"Many events with ``server`` in the name were changed to use ``guild`` " +"instead." +msgstr "" + +#: ../../migrating_to_v1.rst:504 ../../migrating_to_v1.rst:568 +#: 05be7cd79c304f8d8d3938d10271bd25 44ad88423637441a84457439a0f40c90 +msgid "Before:" +msgstr "" + +#: ../../migrating_to_v1.rst:506 3e26664afda3432e979887340292fd4e +msgid "``on_server_join``" +msgstr "" + +#: ../../migrating_to_v1.rst:507 bfca7cb48a0443a59641d34c4f77414e +msgid "``on_server_remove``" +msgstr "" + +#: ../../migrating_to_v1.rst:508 3b758973e78446e0b64fb4ac24b283ac +msgid "``on_server_update``" +msgstr "" + +#: ../../migrating_to_v1.rst:509 225ab365b80f46b4b6abc2d218692712 +msgid "``on_server_role_create``" +msgstr "" + +#: ../../migrating_to_v1.rst:510 f2d40c3b31a248ec84a7838fd269c021 +msgid "``on_server_role_delete``" +msgstr "" + +#: ../../migrating_to_v1.rst:511 12325851acf84556be5553ad3e8a02b0 +msgid "``on_server_role_update``" +msgstr "" + +#: ../../migrating_to_v1.rst:512 2b2b76f5b5c14c57bf4a72304d9a1f42 +msgid "``on_server_emojis_update``" +msgstr "" + +#: ../../migrating_to_v1.rst:513 253c9805a2664e738602b6e2a7eb24f7 +msgid "``on_server_available``" +msgstr "" + +#: ../../migrating_to_v1.rst:514 ccf36e9aa1a34a34a0ca1cfcda1a8129 +msgid "``on_server_unavailable``" +msgstr "" + +#: ../../migrating_to_v1.rst:516 ../../migrating_to_v1.rst:574 +#: 164f5c204a764a6e89e9a9ac4f131f4d b27e082641724727b1d09366a780883d +msgid "After:" +msgstr "" + +#: ../../migrating_to_v1.rst:518 80efc076afd748cd8e9bb0346e68c204 +msgid ":func:`on_guild_join`" +msgstr "" + +#: ../../migrating_to_v1.rst:519 1c025ced74894b8f90770059394c1cf7 +msgid ":func:`on_guild_remove`" +msgstr "" + +#: ../../migrating_to_v1.rst:520 18b24e3e47de485ea172d04fcd65894e +msgid ":func:`on_guild_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:521 54318d6c483b4fb9a15ca23092016794 +msgid ":func:`on_guild_role_create`" +msgstr "" + +#: ../../migrating_to_v1.rst:522 ee473486cb6b437db292bff45960be1e +msgid ":func:`on_guild_role_delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:523 357b45fa893b42919c27663616c68c61 +msgid ":func:`on_guild_role_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:524 850177a045774335bdb609cca813b4ba +msgid ":func:`on_guild_emojis_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:525 a3c14e69548442f290c0fe2965ab9932 +msgid ":func:`on_guild_available`" +msgstr "" + +#: ../../migrating_to_v1.rst:526 1265b1a2ee624cba8173434262b3965e +msgid ":func:`on_guild_unavailable`" +msgstr "" + +#: ../../migrating_to_v1.rst:529 1586e1d1ad2f4516bf02ffd5c9d0de6f +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "" + +#: ../../migrating_to_v1.rst:531 ../../migrating_to_v1.rst:543 +#: ../../migrating_to_v1.rst:555 ../../migrating_to_v1.rst:615 +#: ../../migrating_to_v1.rst:928 43cd0c51ff7c4ecb97667690a1b6ef3a +#: 5e096ef003564027843e2cf77fd49905 6da4ff8098aa4351a5c83d1ffcc4f1d1 +#: b07d66fff1a5420480498608ba884ffe c58eac28c0944f9ea8c790dcb2b6fdae +msgid "Before: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:535 ../../migrating_to_v1.rst:547 +#: ../../migrating_to_v1.rst:559 ../../migrating_to_v1.rst:627 +#: ../../migrating_to_v1.rst:934 ../../migrating_to_v1.rst:1159 +#: 1e2d99c8a53d4b3b84555fbdaa0098c0 4eb11e4ee15f433b860e24da2cc52f5b +#: 6c20b982c40b44939fc9ee44f1a8ca76 708ade3f91f04892bdda6c045520adb8 +#: f2d06097e5364ac494727a51843f9e15 f7e16601163143e5a5c386382d1cc530 +msgid "After: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:539 82b7c550dae34853ad149374be9cf35e +msgid "" +"Instead of two :class:`Member` objects, the new event takes one " +":class:`Member` object and two :class:`VoiceState` objects." +msgstr "" + +#: ../../migrating_to_v1.rst:541 90c71970e4fb4650bac2f5b2665f3cfd +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "" + +#: ../../migrating_to_v1.rst:551 da4b663442e04f998d838b3c8ed930fa +msgid "" +"The first argument is now the :class:`Guild` that the emojis were updated" +" from." +msgstr "" + +#: ../../migrating_to_v1.rst:553 c620f04df9154f268e6a50f4fc4c8cf3 +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "" + +#: ../../migrating_to_v1.rst:563 b807f0e4fb744ae4870db96a8d91ad1e +msgid "" +"As part of the change, the event can either receive a :class:`User` or " +":class:`Member`. To help in the cases that have :class:`User`, the " +":class:`Guild` is provided as the first parameter." +msgstr "" + +#: ../../migrating_to_v1.rst:566 7f1c9df9cef94f68a806bffba429bc72 +msgid "" +"The ``on_channel_`` events have received a type level split (see " +":ref:`migrating_1_0_channel_split`)." +msgstr "" + +#: ../../migrating_to_v1.rst:570 10ca24d1b78447019a505aaac5426f39 +msgid "``on_channel_delete``" +msgstr "" + +#: ../../migrating_to_v1.rst:571 080299c8597a427c80b2a16b424c478c +msgid "``on_channel_create``" +msgstr "" + +#: ../../migrating_to_v1.rst:572 91599eaf8d5e4aa7a6d54059f6b57a6e +msgid "``on_channel_update``" +msgstr "" + +#: ../../migrating_to_v1.rst:576 728a95daa9f7443c8d84b1f211fe1501 +msgid ":func:`on_guild_channel_delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:577 b7dd268376e24a2f846d016c0f255cc3 +msgid ":func:`on_guild_channel_create`" +msgstr "" + +#: ../../migrating_to_v1.rst:578 b68cb8d115c64182aef5f9aceba2f926 +msgid ":func:`on_guild_channel_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:579 c514f86a93154c86994195c5d0bed7b0 +msgid ":func:`on_private_channel_delete`" +msgstr "" + +#: ../../migrating_to_v1.rst:580 8b1b2f3c7e2d467d80cb240928e09f05 +msgid ":func:`on_private_channel_create`" +msgstr "" + +#: ../../migrating_to_v1.rst:581 8ced5d5e429840069ac52377edb7fa72 +msgid ":func:`on_private_channel_update`" +msgstr "" + +#: ../../migrating_to_v1.rst:583 048baf8067854cdc9c7c9a67627a5fd9 +msgid "" +"The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` " +"being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and " +"the ``on_private_channel_`` events correspond to " +":class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and " +":class:`GroupChannel`)." +msgstr "" + +#: ../../migrating_to_v1.rst:590 c5c36d2cf4b24d558b3cfdfcae63e51f +msgid "Voice Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:592 639e1a05cfca400fa757212f628b7c79 +msgid "Voice sending has gone through a complete redesign." +msgstr "" + +#: ../../migrating_to_v1.rst:594 79fd4850356c40629b03c961b1774211 +msgid "In particular:" +msgstr "" + +#: ../../migrating_to_v1.rst:596 5110a9d33fb1423fa9c54bd7542a90d2 +msgid "" +"Connection is done through :meth:`VoiceChannel.connect` instead of " +"``Client.join_voice_channel``." +msgstr "" + +#: ../../migrating_to_v1.rst:597 0a1d45d0024b47369c5d41a7f1c69496 +msgid "" +"You no longer create players and operate on them (you no longer store " +"them)." +msgstr "" + +#: ../../migrating_to_v1.rst:598 94a1e1a0b2d948289e9ad1e5bdf9f884 +msgid "" +"You instead request :class:`VoiceClient` to play an :class:`AudioSource` " +"via :meth:`VoiceClient.play`." +msgstr "" + +#: ../../migrating_to_v1.rst:599 d028a9d1d35b4e28ab709ca6b30e3748 +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "" + +#: ../../migrating_to_v1.rst:601 7a16c3f9a33a4f63bed56cc2fc51aa11 +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr "" + +#: ../../migrating_to_v1.rst:603 dd63ad95e21f4ac2bd5ef9a2d44c25d7 +msgid "" +"create_ffmpeg_player/create_stream_player/create_ytdl_player have all " +"been removed." +msgstr "" + +#: ../../migrating_to_v1.rst:605 98ea76b951774246a1de6b99ea446da8 +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:607 32e6ad132d7c47be9e9cd27c81a2256d +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "" + +#: ../../migrating_to_v1.rst:609 b7d478040bea4896b140e306ba5ac50b +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "" + +#: ../../migrating_to_v1.rst:611 1042d8cec0524ee48bfc23030609a2d6 +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "" + +#: ../../migrating_to_v1.rst:613 5c7eb0c9618c461da50a08ad3798b31b +msgid "Basically:" +msgstr "" + +#: ../../migrating_to_v1.rst:637 c05b1ad0d2cd4b11b5cdb43038c54e2f +msgid "" +"With the changed :class:`AudioSource` design, you can now change the " +"source that the :class:`VoiceClient` is playing at runtime via " +":attr:`VoiceClient.source`." +msgstr "" + +#: ../../migrating_to_v1.rst:640 8a538c1130dc436992090e73e6aab004 +msgid "" +"For example, you can add a :class:`PCMVolumeTransformer` to allow " +"changing the volume: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:645 99ca270b30804d3fb23482708242605d +msgid "" +"An added benefit of the redesign is that it will be much more resilient " +"towards reconnections:" +msgstr "" + +#: ../../migrating_to_v1.rst:647 e3aacf3b65c94ba6a7e9ac42d6e11242 +msgid "" +"The voice websocket will now automatically re-connect and re-do the " +"handshake when disconnected." +msgstr "" + +#: ../../migrating_to_v1.rst:648 fd913cc4554d469cb2710f36f3187313 +msgid "" +"The initial connect handshake will now retry up to 5 times so you no " +"longer get as many ``asyncio.TimeoutError``." +msgstr "" + +#: ../../migrating_to_v1.rst:649 fc59acabd7e447c2ae887dc918a1edf5 +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "" + +#: ../../migrating_to_v1.rst:651 4a9f6035023e4b759c02c7b2afed9a7e +msgid "This includes changing voice regions etc." +msgstr "" + +#: ../../migrating_to_v1.rst:657 44f1d6863c1e44e88f69f9d70c4ef390 +msgid "Waiting For Events" +msgstr "" + +#: ../../migrating_to_v1.rst:659 ac2497871ce4455e92504c02e2f85915 +msgid "" +"Prior to v1.0, the machinery for waiting for an event outside of the " +"event itself was done through two different functions, " +"``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem" +" with one such approach is that it did not allow you to wait for events " +"outside of the ones provided by the library." +msgstr "" + +#: ../../migrating_to_v1.rst:663 f25f38d107d140319f0043e3ccd1fd47 +msgid "" +"In v1.0 the concept of waiting for another event has been generalised to " +"work with any event as :meth:`Client.wait_for`." +msgstr "" + +#: ../../migrating_to_v1.rst:665 c26f16a7656d47d29bdb6d38ba686340 +msgid "For example, to wait for a message: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:676 c5124534816c42f592f1902f246de487 +msgid "" +"To facilitate multiple returns, :meth:`Client.wait_for` returns either a " +"single argument, no arguments, or a tuple of arguments." +msgstr "" + +#: ../../migrating_to_v1.rst:679 ef6869db7dfa468eab3e1414dddd8b28 +msgid "For example, to wait for a reaction: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:685 d1e874e26d094947b75a21620a0bef4b +msgid "" +"Since this function now can return multiple arguments, the ``timeout`` " +"parameter will now raise a :exc:`asyncio.TimeoutError` when reached " +"instead of setting the return to ``None``. For example:" +msgstr "" + +#: ../../migrating_to_v1.rst:702 731714a9d67b47b5ac49c21865774415 +msgid "Upgraded Dependencies" +msgstr "" + +#: ../../migrating_to_v1.rst:704 a0425b5ad3e64f05b5e23ed9323cdc1c +msgid "" +"Following v1.0 of the library, we've updated our requirements to " +":doc:`aiohttp ` v2.0 or higher." +msgstr "" + +#: ../../migrating_to_v1.rst:706 51740f4309a2436cb62226d8d85fd887 +msgid "" +"Since this is a backwards incompatible change, it is recommended that you" +" see the `changes " +"`_ " +"and the :doc:`aio:migration_to_2xx` pages for details on the breaking " +"changes in :doc:`aiohttp `." +msgstr "" + +#: ../../migrating_to_v1.rst:711 2294a5360bd44948bb46d8a1fb7ab6fd +msgid "" +"Of the most significant for common users is the removal of helper " +"functions such as:" +msgstr "" + +#: ../../migrating_to_v1.rst:713 d80a9eea20cf47dcbfaa9f7e35b2eb18 +msgid "``aiohttp.get``" +msgstr "" + +#: ../../migrating_to_v1.rst:714 5b2fcfa101f542c09f9978040e42f279 +msgid "``aiohttp.post``" +msgstr "" + +#: ../../migrating_to_v1.rst:715 f452afc6a8bc441dbd4599ced672e757 +msgid "``aiohttp.delete``" +msgstr "" + +#: ../../migrating_to_v1.rst:716 ff32585353ed484aaf798b70578d10b1 +msgid "``aiohttp.patch``" +msgstr "" + +#: ../../migrating_to_v1.rst:717 f29e27af477743bb8b34e521d293553c +msgid "``aiohttp.head``" +msgstr "" + +#: ../../migrating_to_v1.rst:718 6895169f2ac44a9fb250ac23831e7745 +msgid "``aiohttp.put``" +msgstr "" + +#: ../../migrating_to_v1.rst:719 3926a1bb14794fc2b781f8388a6340a8 +msgid "``aiohttp.request``" +msgstr "" + +#: ../../migrating_to_v1.rst:721 52d8ed3a00fd4f198e643262691a0758 +msgid "It is recommended that you create a session instead: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:727 ff34c1c48eee41ada64ebf3ac237280a +msgid "" +"Since it is better to not create a session for every request, you should " +"store it in a variable and then call ``session.close`` on it when it " +"needs to be disposed." +msgstr "" + +#: ../../migrating_to_v1.rst:731 5dc3438852f24fb187cee1eb39823cf6 +msgid "Sharding" +msgstr "" + +#: ../../migrating_to_v1.rst:733 22fee65c18c245ad92f61d38e350e931 +msgid "" +"The library has received significant changes on how it handles sharding " +"and now has sharding as a first-class citizen." +msgstr "" + +#: ../../migrating_to_v1.rst:735 3adb6bc4dfa7469aab5ca3df23d33bed +msgid "" +"If using a Bot account and you want to shard your bot in a single process" +" then you can use the :class:`AutoShardedClient`." +msgstr "" + +#: ../../migrating_to_v1.rst:737 494082dd3a8a45f68190588a71f0380d +msgid "" +"This class allows you to use sharding without having to launch multiple " +"processes or deal with complicated IPC." +msgstr "" + +#: ../../migrating_to_v1.rst:739 91d9563cdce4401b85eb7d5952e81086 +msgid "" +"It should be noted that **the sharded client does not support user " +"accounts**. This is due to the changes in connection logic and state " +"handling." +msgstr "" + +#: ../../migrating_to_v1.rst:742 7a92820e2e064495bb1c29175a50e6ed +msgid "Usage is as simple as doing: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:746 31d4cfddbb834783a532a0bd4ca61a72 +msgid "instead of using :class:`Client`." +msgstr "" + +#: ../../migrating_to_v1.rst:748 2a45112531d1449eaa539f71951b5f7f +msgid "" +"This will launch as many shards as your bot needs using the " +"``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "" + +#: ../../migrating_to_v1.rst:751 0f8d9aa5dfae43f491ba1bf8fa6e92be +msgid "" +"If you want more control over the sharding you can specify " +"``shard_count`` and ``shard_ids``. ::" +msgstr "" + +#: ../../migrating_to_v1.rst:759 40d3205bd2b045d0b71112efcbf3f549 +msgid "" +"For users of the command extension, there is also " +":class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "" + +#: ../../migrating_to_v1.rst:762 d9a5985bc3c84c72a00ee4f368bea021 +msgid "Connection Improvements" +msgstr "" + +#: ../../migrating_to_v1.rst:764 66d45ba4e6de47fb8a308e38a2de5926 +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "" + +#: ../../migrating_to_v1.rst:766 7e8c57cfd8b747dea99a46fc6aab8dad +msgid "" +":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` " +"that defaults to ``True`` which controls the reconnect logic. When " +"enabled, the client will automatically reconnect in all instances of your" +" internet going offline or Discord going offline with exponential back-" +"off." +msgstr "" + +#: ../../migrating_to_v1.rst:770 af171ea6a44c4eb0a6ac3b1dffde1857 +msgid "" +":meth:`Client.run` and :meth:`Client.start` gains this keyword argument " +"as well, but for most cases you will not need to specify it unless " +"turning it off." +msgstr "" + +#: ../../migrating_to_v1.rst:776 290461c03fbf40a7ae66eb7fe258b751 +msgid "Command Extension Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:778 285f3b1bc4d746edb66e0bb3331a2ad6 +msgid "" +"Due to the :ref:`migrating_1_0_model_state` changes, some of the design " +"of the extension module had to undergo some design changes as well." +msgstr "" + +#: ../../migrating_to_v1.rst:782 54a972125952485d9f8ddcbbec3bd632 +msgid "Context Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:784 717f2cec8bc042e4a9854286efbac788 +msgid "" +"In v1.0, the :class:`.Context` has received a lot of changes with how " +"it's retrieved and used." +msgstr "" + +#: ../../migrating_to_v1.rst:786 06979fb694e64cf5a84f92191a22a93a +msgid "" +"The biggest change is that ``pass_context=True`` no longer exists, " +":class:`.Context` is always passed. Ergo:" +msgstr "" + +#: ../../migrating_to_v1.rst:800 63f0eaa0d7a5426782ca5b0d8937ee7d +msgid "" +"The reason for this is because :class:`~ext.commands.Context` now meets " +"the requirements of :class:`abc.Messageable`. This makes it have similar " +"functionality to :class:`TextChannel` or :class:`DMChannel`. Using " +":meth:`~.Context.send` will either DM the user in a DM context or send a " +"message in the channel it was in, similar to the old ``bot.say`` " +"functionality. The old helpers have been removed in favour of the new " +":class:`abc.Messageable` interface. See " +":ref:`migrating_1_0_removed_helpers` for more information." +msgstr "" + +#: ../../migrating_to_v1.rst:806 e4d3262fccaf46348b94da432e16430a +msgid "" +"Since the :class:`~ext.commands.Context` is now passed by default, " +"several shortcuts have been added:" +msgstr "" + +#: ../../migrating_to_v1.rst:808 6be6a39f6cf6437d98fea51d2f9445da +msgid "**New Shortcuts**" +msgstr "" + +#: ../../migrating_to_v1.rst:810 fddb63ad14994840b26862fd62c99646 +msgid "" +":attr:`ctx.author ` is a shortcut for " +"``ctx.message.author``." +msgstr "" + +#: ../../migrating_to_v1.rst:811 7e11740529834443b5e001f4b212d850 +msgid "" +":attr:`ctx.guild ` is a shortcut for " +"``ctx.message.guild``." +msgstr "" + +#: ../../migrating_to_v1.rst:812 c69a20d95b9240ee9e6653b2016111e5 +msgid "" +":attr:`ctx.channel ` is a shortcut for " +"``ctx.message.channel``." +msgstr "" + +#: ../../migrating_to_v1.rst:813 cda911fe3ed942a596bf62e21c3c9203 +msgid "" +":attr:`ctx.me ` is a shortcut for " +"``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr "" + +#: ../../migrating_to_v1.rst:814 6d25f3e72c83417a994d1478e91ab48c +msgid "" +":attr:`ctx.voice_client ` is a " +"shortcut for ``ctx.message.guild.voice_client``." +msgstr "" + +#: ../../migrating_to_v1.rst:816 3f1992c3e51f440383c92c4ed8763407 +msgid "**New Functionality**" +msgstr "" + +#: ../../migrating_to_v1.rst:818 6ca3137248eb468ca054a8b34c2f23da +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr "" + +#: ../../migrating_to_v1.rst:820 e18dafeddb844b20bf307436e8dfdce9 +msgid "This is useful for bypassing cooldowns." +msgstr "" + +#: ../../migrating_to_v1.rst:821 f88d749068fe43119fa54e48f7fc6fdd +msgid "" +":attr:`.Context.valid` to check if a context can be invoked with " +":meth:`.Bot.invoke`." +msgstr "" + +#: ../../migrating_to_v1.rst:822 7b512fb184ea40de80bfd8306a439755 +msgid "" +":meth:`.Context.send_help` to show the help command for an entity using " +"the new :class:`~.ext.commands.HelpCommand` system." +msgstr "" + +#: ../../migrating_to_v1.rst:824 1ab773b999044ccd95814808410767d5 +msgid "" +"This is useful if you want to show the user help if they misused a " +"command." +msgstr "" + +#: ../../migrating_to_v1.rst:827 cda91e2c85124e59a4a8214b82fd0c3a +msgid "Subclassing Context" +msgstr "" + +#: ../../migrating_to_v1.rst:829 1f64d32eea034e8eaa435e786a42bb2d +msgid "" +"In v1.0, there is now the ability to subclass " +":class:`~ext.commands.Context` and use it instead of the default provided" +" one." +msgstr "" + +#: ../../migrating_to_v1.rst:832 3281b69da3e94834b4201581ece2db2e +msgid "For example, if you want to add some functionality to the context:" +msgstr "" + +#: ../../migrating_to_v1.rst:841 6161661d05de4e589638ecce448f047d +msgid "" +"Then you can use :meth:`~ext.commands.Bot.get_context` inside " +":func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke`" +" to use your custom context:" +msgstr "" + +#: ../../migrating_to_v1.rst:851 6e443877b4434dcbaec136025efd3369 +msgid "Now inside your commands you will have access to your custom context:" +msgstr "" + +#: ../../migrating_to_v1.rst:862 8503aa2ca91c496b9300e31b8e827ad4 +msgid "Removed Helpers" +msgstr "" + +#: ../../migrating_to_v1.rst:864 d36927bade34457086107fb9c4b3d3f9 +msgid "" +"With the new :class:`.Context` changes, a lot of message sending helpers " +"have been removed." +msgstr "" + +#: ../../migrating_to_v1.rst:866 7bb8008204224bce8ba8e13ed1e80694 +msgid "For a full list of changes, see below:" +msgstr "" + +#: ../../migrating_to_v1.rst:871 874a5ba3779a4d8c96ef07996275c06b +msgid "``Bot.say``" +msgstr "" + +#: ../../migrating_to_v1.rst:871 ../../migrating_to_v1.rst:873 +#: 17ba17ef146b431b898fa91702d109e2 3026d352aa3049c5b74c1ac5222b7034 +msgid ":meth:`.Context.send`" +msgstr "" + +#: ../../migrating_to_v1.rst:873 ee27f36d1b2846cfb547f5cb9d2540ca +msgid "``Bot.upload``" +msgstr "" + +#: ../../migrating_to_v1.rst:875 7484c6a90d4646ddb36ab0d31070d0cc +msgid "``Bot.whisper``" +msgstr "" + +#: ../../migrating_to_v1.rst:875 02ef5a5351f4402ba6b044568a7c8fec +msgid "``ctx.author.send``" +msgstr "" + +#: ../../migrating_to_v1.rst:877 7ee1fadc67734315b264ff59a07f24bf +msgid "``Bot.type``" +msgstr "" + +#: ../../migrating_to_v1.rst:877 8f299e3adb2847ffa794e94be31373f2 +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr "" + +#: ../../migrating_to_v1.rst:879 95809e3221234cb3b884dcb0de4e64d8 +msgid "``Bot.reply``" +msgstr "" + +#: ../../migrating_to_v1.rst:879 2c2c944602f84df2b32fa84e36cfe33a +msgid "No replacement." +msgstr "" + +#: ../../migrating_to_v1.rst:883 f6a7fbadb0da48c08367ff0fcda8e31b +msgid "Command Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:885 20a7906e511c4cb190d4861534cca13d +msgid "" +"As mentioned earlier, the first command change is that " +"``pass_context=True`` no longer exists, so there is no need to pass this " +"as a parameter." +msgstr "" + +#: ../../migrating_to_v1.rst:888 bfb080ca3c604a39a3fb06a78bfd4e5f +msgid "" +"Another change is the removal of ``no_pm=True``. Instead, use the new " +":func:`~ext.commands.guild_only` built-in check." +msgstr "" + +#: ../../migrating_to_v1.rst:891 512908aca81f4c8fa6a737b6cc7e55fd +msgid "" +"The ``commands`` attribute of :class:`~ext.commands.Bot` and " +":class:`~ext.commands.Group` have been changed from a dictionary to a set" +" that does not have aliases. To retrieve the previous dictionary " +"behaviour, use ``all_commands`` instead." +msgstr "" + +#: ../../migrating_to_v1.rst:894 ff1555c5f5ff49d7907f8d700516a693 +msgid "Command instances have gained new attributes and properties:" +msgstr "" + +#: ../../migrating_to_v1.rst:896 d35fd07ccb584166bbaf3b527b2bab86 +msgid "" +":attr:`~ext.commands.Command.signature` to get the signature of the " +"command." +msgstr "" + +#: ../../migrating_to_v1.rst:897 7b0323a2c33d48d480591f93d667eb6c +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr "" + +#: ../../migrating_to_v1.rst:898 96906e117b634f49bfcd23abe048dd17 +msgid "" +":attr:`~.Command.root_parent` to get the root parent group of a " +"subcommand." +msgstr "" + +#: ../../migrating_to_v1.rst:900 b567aa827d33419684c2e31370cb3ba1 +msgid "" +"For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the " +"following changed:" +msgstr "" + +#: ../../migrating_to_v1.rst:902 09c93e87f21143ef883ebd133fec141c +msgid "" +"Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without " +"aliases." +msgstr "" + +#: ../../migrating_to_v1.rst:904 ecab4d18d394470d8b425624e232b2cf +msgid "" +"Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with " +"all commands." +msgstr "" + +#: ../../migrating_to_v1.rst:907 15bf276c256e4d9eb233d44849813257 +msgid "Check Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:909 d6e916c5dd2a4afcb0d9721c0afafcfa +msgid "" +"Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. " +"As of v1.0 checks can now be coroutines." +msgstr "" + +#: ../../migrating_to_v1.rst:911 d1c87ef2f2ad4853866a1bada5a211c8 +msgid "Along with this change, a couple new checks were added." +msgstr "" + +#: ../../migrating_to_v1.rst:913 e63059a9bef24dc59f1def488e39338d +msgid "" +":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` " +"functionality." +msgstr "" + +#: ../../migrating_to_v1.rst:914 c1bcf86648bf49d6be2eda9cac2b8996 +msgid "" +":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` " +"endpoint by default to fetch owner ID." +msgstr "" + +#: ../../migrating_to_v1.rst:916 5649ecc5d44d499cae4334eeef850000 +msgid "" +"This is actually powered by a different function, " +":meth:`~ext.commands.Bot.is_owner`." +msgstr "" + +#: ../../migrating_to_v1.rst:917 8fab6bde3c4d4c0eb2f0d3393f4bae29 +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "" + +#: ../../migrating_to_v1.rst:919 83cc31526f314335983a8b180dcac697 +msgid "" +":func:`~ext.commands.is_nsfw` checks if the channel the command is in is " +"a NSFW channel." +msgstr "" + +#: ../../migrating_to_v1.rst:921 bc84973dc2024308834175f683bc2106 +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "" + +#: ../../migrating_to_v1.rst:926 3155a125d1b44571a1d222aaa46f09d2 +msgid "All command extension events have changed." +msgstr "" + +#: ../../migrating_to_v1.rst:940 525b0059e0e74e58955f03ba7ca7bcb5 +msgid "" +"The extraneous ``command`` parameter in :func:`.on_command` and " +":func:`.on_command_completion` have been removed. The " +":class:`~ext.commands.Command` instance was not kept up-to date so it was" +" incorrect. In order to get the up to date :class:`~ext.commands.Command`" +" instance, use the :attr:`.Context.command` attribute." +msgstr "" + +#: ../../migrating_to_v1.rst:945 fb4efa1d13f54ff7a5a558e6c8bb6b13 +msgid "" +"The error handlers, either :meth:`.Command.error` or " +":func:`.on_command_error`, have been re-ordered to use the " +":class:`~ext.commands.Context` as its first parameter to be consistent " +"with other events and commands." +msgstr "" + +#: ../../migrating_to_v1.rst:950 8be35639009845c2ba7e870eed8789e4 +msgid "HelpFormatter and Help Command Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:952 0c9b00898be3410f8ae07000636749c3 +msgid "" +"The ``HelpFormatter`` class has been removed. It has been replaced with a" +" :class:`~.commands.HelpCommand` class. This class now stores all the " +"command handling and processing of the help command." +msgstr "" + +#: ../../migrating_to_v1.rst:954 24d138b1770e4f17aa48b94777253ffd +msgid "" +"The help command is now stored in the :attr:`.Bot.help_command` " +"attribute. As an added extension, you can disable the help command " +"completely by assigning the attribute to ``None`` or passing it at " +"``__init__`` as ``help_command=None``." +msgstr "" + +#: ../../migrating_to_v1.rst:956 60281936a03a4fecbc9927fe81bfc80a +msgid "" +"The new interface allows the help command to be customised through " +"special methods that can be overridden." +msgstr "" + +#: ../../migrating_to_v1.rst:958 f79e515d8f184b57a5de04ae7368b39d +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr "" + +#: ../../migrating_to_v1.rst:959 05299dfeb65b4b4bb1f6bb711903e479 +msgid "Called when the user requested for help with the entire bot." +msgstr "" + +#: ../../migrating_to_v1.rst:960 0a16847a732b4a33bb9c46fbd429a86c +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr "" + +#: ../../migrating_to_v1.rst:961 6c1b0bb7432643fe9882de314453af35 +msgid "Called when the user requested for help with a specific cog." +msgstr "" + +#: ../../migrating_to_v1.rst:962 e9f39f7388ff451e9a42bb5a6e5453f6 +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr "" + +#: ../../migrating_to_v1.rst:963 0e621712f43c4a40997b4b9cf205fdfb +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "" + +#: ../../migrating_to_v1.rst:964 77786b71f5ac4549994e33f787876d80 +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr "" + +#: ../../migrating_to_v1.rst:965 bbec26d0bd544503a4f36050954dbf65 +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "" + +#: ../../migrating_to_v1.rst:966 3fd95879c0b4442aa6fc292595cb92ad +msgid ":meth:`.HelpCommand.get_destination`" +msgstr "" + +#: ../../migrating_to_v1.rst:967 663877b824494a57a242b013c9031390 +msgid "" +"Called to know where to send the help messages. Useful for deciding " +"whether to DM or not." +msgstr "" + +#: ../../migrating_to_v1.rst:968 c7a7f2315f884483a626a2ece68e73fa +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr "" + +#: ../../migrating_to_v1.rst:969 0bf3df49be06494a9717e43302a0becc +msgid "" +"A function (or coroutine) that returns a presentable no command found " +"string." +msgstr "" + +#: ../../migrating_to_v1.rst:970 709ad40da26b4676b4211bf0b610f665 +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr "" + +#: ../../migrating_to_v1.rst:971 cbfdf9b0bbef47d3b0f8ec54dd2584c3 +msgid "" +"A function (or coroutine) that returns a string when a subcommand is not " +"found." +msgstr "" + +#: ../../migrating_to_v1.rst:972 eb5e38cfbab8442fa9229e0b543e6134 +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr "" + +#: ../../migrating_to_v1.rst:973 956e387c59d940dbb5cfea61c9a41b76 +msgid "" +"A coroutine that gets passed the result of " +":meth:`.HelpCommand.command_not_found` and " +":meth:`.HelpCommand.subcommand_not_found`." +msgstr "" + +#: ../../migrating_to_v1.rst:974 bb66812909bb4b8ba1255a3f40e37248 +msgid "" +"By default it just sends the message. But you can, for example, override " +"it to put it in an embed." +msgstr "" + +#: ../../migrating_to_v1.rst:975 37ab407ddd2240208b1c40ef8a5a93b7 +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr "" + +#: ../../migrating_to_v1.rst:976 871ad537f58f4ffc84aba6124b74a2ba +msgid "" +"The :ref:`error handler ` for the help " +"command if you want to add one." +msgstr "" + +#: ../../migrating_to_v1.rst:977 3baa287475f145a88daa190c9d376d60 +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr "" + +#: ../../migrating_to_v1.rst:978 98cf89ef2de44735a950a1ff98a633a4 +msgid "" +"A coroutine that is called right before the help command processing is " +"done." +msgstr "" + +#: ../../migrating_to_v1.rst:980 3e8046f2a2d74cabb513a61f9b8a768b +msgid "Certain subclasses can implement more customisable methods." +msgstr "" + +#: ../../migrating_to_v1.rst:982 7ed5712265a9430f8cf494eca8c6bc7b +msgid "" +"The old ``HelpFormatter`` was replaced with " +":class:`~.commands.DefaultHelpCommand`\\, which implements all of the " +"logic of the old help command. The customisable methods can be found in " +"the accompanying documentation." +msgstr "" + +#: ../../migrating_to_v1.rst:984 7416bfc025324b03bb6149314c91e927 +msgid "" +"The library now provides a new more minimalistic " +":class:`~.commands.HelpCommand` implementation that doesn't take as much " +"space, :class:`~.commands.MinimalHelpCommand`. The customisable methods " +"can also be found in the accompanying documentation." +msgstr "" + +#: ../../migrating_to_v1.rst:986 606b9af1346e400da08be6121fedfe43 +msgid "" +"A frequent request was if you could associate a help command with a cog. " +"The new design allows for dynamically changing of cog through binding it " +"to the :attr:`.HelpCommand.cog` attribute. After this assignment the help" +" command will pretend to be part of the cog and everything should work as" +" expected. When the cog is unloaded then the help command will be " +"\"unbound\" from the cog." +msgstr "" + +#: ../../migrating_to_v1.rst:988 cce8cea9431c4addbba7a553c99c85f1 +msgid "" +"For example, to implement a :class:`~.commands.HelpCommand` in a cog, the" +" following snippet can be used." +msgstr "" + +#: ../../migrating_to_v1.rst:1005 fc2d755d59074231b2d341e37fc6eda1 +msgid "" +"For more information, check out the relevant :ref:`documentation " +"`." +msgstr "" + +#: ../../migrating_to_v1.rst:1008 fe160abf5fbc47ae841b183aba015fcd +msgid "Cog Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:1010 05d6024f34aa48d0980fb0e8ecbccb47 +msgid "" +"Cogs have completely been revamped. They are documented in " +":ref:`ext_commands_cogs` as well." +msgstr "" + +#: ../../migrating_to_v1.rst:1012 1a7bfb167f9b4a08a7b31f72efb1f489 +msgid "" +"Cogs are now required to have a base class, :class:`~.commands.Cog` for " +"future proofing purposes. This comes with special methods to customise " +"some behaviour." +msgstr "" + +#: ../../migrating_to_v1.rst:1014 5c63bb2ba59d4b54aa7df8c8bb3c6640 +msgid ":meth:`.Cog.cog_unload`" +msgstr "" + +#: ../../migrating_to_v1.rst:1015 10e27bc000c14d5cb00799e79420b488 +msgid "" +"This is called when a cog needs to do some cleanup, such as cancelling a " +"task." +msgstr "" + +#: ../../migrating_to_v1.rst:1016 6f56b325bc9e435c88c6e172de7196f1 +msgid ":meth:`.Cog.bot_check_once`" +msgstr "" + +#: ../../migrating_to_v1.rst:1017 5090d9b233f24f09af3d96bf1562c074 +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "" + +#: ../../migrating_to_v1.rst:1018 f88a1a6b759d49bdbd404bc627bb8efe +msgid ":meth:`.Cog.bot_check`" +msgstr "" + +#: ../../migrating_to_v1.rst:1019 21f426a77fb74c21b52cb99613f2e192 +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "" + +#: ../../migrating_to_v1.rst:1020 ab3b85086968449faa4fcc32b245c872 +msgid ":meth:`.Cog.cog_check`" +msgstr "" + +#: ../../migrating_to_v1.rst:1021 c687c5c069164790849266ed50d9cdf0 +msgid "This registers a check that applies to every command in the cog." +msgstr "" + +#: ../../migrating_to_v1.rst:1022 104c27d7b5dd4311af8ed3a9d7b9edc8 +msgid ":meth:`.Cog.cog_command_error`" +msgstr "" + +#: ../../migrating_to_v1.rst:1023 3bad7c5764454cb796e64c6ef72a6429 +msgid "" +"This is a special error handler that is called whenever an error happens " +"inside the cog." +msgstr "" + +#: ../../migrating_to_v1.rst:1024 81ddfc0d92a941c0b10e93e6193710a6 +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr "" + +#: ../../migrating_to_v1.rst:1025 c1eeaf0c1338401a9c51c8260a9da67c +msgid "" +"A special method that registers a cog before and after invoke hook. More " +"information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "" + +#: ../../migrating_to_v1.rst:1027 f6d60513b8a647f5856bdd734bf5d011 +msgid "" +"Those that were using listeners, such as ``on_message`` inside a cog will" +" now have to explicitly mark them as such using the " +":meth:`.commands.Cog.listener` decorator." +msgstr "" + +#: ../../migrating_to_v1.rst:1029 60f543f3a24e42b49b279240372c0e4d +msgid "" +"Along with that, cogs have gained the ability to have custom names " +"through specifying it in the class definition line. More options can be " +"found in the metaclass that facilitates all this, " +":class:`.commands.CogMeta`." +msgstr "" + +#: ../../migrating_to_v1.rst:1031 378561fce8524f1297e1b249ca0649db +msgid "" +"An example cog with every special method registered and a custom name is " +"as follows:" +msgstr "" + +#: ../../migrating_to_v1.rst:1068 0ec7b2c5084449a995eb701700f5cf7e +msgid "Before and After Invocation Hooks" +msgstr "" + +#: ../../migrating_to_v1.rst:1070 c4ef253feb744eea8dd3a08128d03059 +msgid "" +"Commands have gained new before and after invocation hooks that allow you" +" to do an action before and after a command is run." +msgstr "" + +#: ../../migrating_to_v1.rst:1073 b824473c4f5c4178afa96810bba97280 +msgid "" +"They take a single parameter, :class:`~ext.commands.Context` and they " +"must be a coroutine." +msgstr "" + +#: ../../migrating_to_v1.rst:1075 b442785647a8418cbd2b7f0d33cef3c8 +msgid "They are on a global, per-cog, or per-command basis." +msgstr "" + +#: ../../migrating_to_v1.rst:1092 430f182bcddc484ab78c334a7c6f8ab0 +msgid "" +"The after invocation is hook always called, **regardless of an error in " +"the command**. This makes it ideal for some error handling or clean up of" +" certain resources such a database connection." +msgstr "" + +#: ../../migrating_to_v1.rst:1095 b2e97f7402864e1ab40e32868e54096f +msgid "The per-command registration is as follows: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:1111 f514a792cd464f7ca9ca3e467a2f0412 +msgid "" +"The special cog method for these is :meth:`.Cog.cog_before_invoke` and " +":meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "" + +#: ../../migrating_to_v1.rst:1126 a414472f93704bd79a6583fefac3de39 +msgid "" +"To check if a command failed in the after invocation hook, you can use " +":attr:`.Context.command_failed`." +msgstr "" + +#: ../../migrating_to_v1.rst:1129 8857e26d53c844a38338ca128ea9bd81 +msgid "The invocation order is as follows:" +msgstr "" + +#: ../../migrating_to_v1.rst:1131 2e6f90c6abf34317884cbf3c169979bf +msgid "Command local before invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1132 6584654e12624974b751232c2816df42 +msgid "Cog local before invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1133 9fb11b92d3d34c788c97c8a520081179 +msgid "Global before invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1134 bb82bf5fcc504e958d935b4f42f18f55 +msgid "The actual command" +msgstr "" + +#: ../../migrating_to_v1.rst:1135 7ac69893d3ff4078ba575835e76adfd4 +msgid "Command local after invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1136 33c959cee1514f7698b4d8e2ab036bc4 +msgid "Cog local after invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1137 7a799ee1e1f843238bce6b0a9c219178 +msgid "Global after invocation hook" +msgstr "" + +#: ../../migrating_to_v1.rst:1140 a9a61f01258340fd99507b9580b79f48 +msgid "Converter Changes" +msgstr "" + +#: ../../migrating_to_v1.rst:1142 9c1c9b09a3ce482eadeba27f3a62bea0 +msgid "" +"Prior to v1.0, a converter was a type hint that could be a callable that " +"could be invoked with a singular argument denoting the argument passed by" +" the user as a string." +msgstr "" + +#: ../../migrating_to_v1.rst:1145 3f21ebec94cb4b04bfa061ee31043954 +msgid "" +"This system was eventually expanded to support a " +":class:`~ext.commands.Converter` system to allow plugging in the " +":class:`~ext.commands.Context` and do more complicated conversions such " +"as the built-in \"discord\" converters." +msgstr "" + +#: ../../migrating_to_v1.rst:1149 840e5bca05e444fa999f883b85bf9696 +msgid "" +"In v1.0 this converter system was revamped to allow instances of " +":class:`~ext.commands.Converter` derived classes to be passed. For " +"consistency, the :meth:`~ext.commands.Converter.convert` method was " +"changed to always be a coroutine and will now take the two arguments as " +"parameters." +msgstr "" + +#: ../../migrating_to_v1.rst:1153 bc16d3cb7261452a87e865880e5b5965 +msgid "Essentially, before: ::" +msgstr "" + +#: ../../migrating_to_v1.rst:1165 c4090e9a0b3d42848479e432afc500d0 +msgid "The command framework also got a couple new converters:" +msgstr "" + +#: ../../migrating_to_v1.rst:1167 0cb6f2bfb3fb4b778bd614701ce20b08 +msgid "" +":class:`~ext.commands.clean_content` this is akin to " +":attr:`Message.clean_content` which scrubs mentions." +msgstr "" + +#: ../../migrating_to_v1.rst:1168 3d3757364d9348cebd30cf5d98432dee +msgid "" +":class:`~ext.commands.UserConverter` will now appropriately convert " +":class:`User` only." +msgstr "" + +#: ../../migrating_to_v1.rst:1169 8168f2b9bd9c4fd2ad725246a1a15a21 +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "" + +#: ../../migrating_to_v1.rst:1171 d8e61bfc29cb4d26a44c089dff96a017 +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr "" + +#: ../../migrating_to_v1.rst:1172 5c33a3bdd9094d41aa9e96d68a32b6b5 +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/migrating_to_v2.po b/docs/locales/en/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..5bbd8a9803 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,695 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../migrating_to_v2.rst:6 d58f33617a294a0b8fabd528cbc4743b +msgid "Migrating to v2.0" +msgstr "" + +#: ../../migrating_to_v2.rst:8 153bece7c7174f058ebbfc29598ae8ef +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "" + +#: ../../migrating_to_v2.rst:10 6e734729277645468f41eed1268c7e32 +msgid "" +"Part of the redesign involves making application commands and components." +" These changes include a new :class:`Bot` class, :class:`ui.View`, and a " +"new :class:`ApplicationContext` class. If you're interested in creating " +"them, please check out our :resource:`guide `." +msgstr "" + +#: ../../migrating_to_v2.rst:13 35cb11e0e37f44249f977d715944eb03 +msgid "Python Version Change" +msgstr "" + +#: ../../migrating_to_v2.rst:15 1cc77a0fd11041f5997f520bc7429e3f +msgid "" +"In order to make development easier and also to allow for our " +"dependencies to upgrade to allow usage of 3.8 or higher, the library had " +"to remove support for Python versions lower than 3.7, which essentially " +"means that **support for Python 3.7 and below has been dropped**." +msgstr "" + +#: ../../migrating_to_v2.rst:20 cad7a507189e4849a2ff38558129670e +msgid "Major Model Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:22 f34f3b2ea9424eac92d4fce556d01a83 +msgid "Below are major changes that have happened in v2.0:" +msgstr "" + +#: ../../migrating_to_v2.rst:25 5462bf5a6ded4c0cb0f3241c509a79fd +msgid "Dropped User Accounts Support" +msgstr "" + +#: ../../migrating_to_v2.rst:27 f08f487618354688b29ecc4568f49b57 +msgid "" +"Before v2.0, user accounts were supported. This has been against the " +"spirit of the library and discord ToS and has been removed. Thus, these " +"features that were only applicable to them are removed:" +msgstr "" + +#: ../../migrating_to_v2.rst:29 db91e1eeaa3b45fd85133c748dd778dd +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "" + +#: ../../migrating_to_v2.rst:30 a8991790eb864991a2c4a336fd0bb686 +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "" + +#: ../../migrating_to_v2.rst:31 62b88ba0d3b74ffbac4047e77cdad9b0 +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "" + +#: ../../migrating_to_v2.rst:32 35fa35b632bb4e78a8e22fbad61f36ed +msgid "" +"``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, " +"``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "" + +#: ../../migrating_to_v2.rst:33 6cee310291a141b4a77b7d2edcf6c046 +msgid "" +"``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: " +"``GroupChannel`` itself still remains)" +msgstr "" + +#: ../../migrating_to_v2.rst:34 590a86bfab104d6197fea5b32b6ea4f9 +msgid "``Guild.ack``" +msgstr "" + +#: ../../migrating_to_v2.rst:35 1ac5f72b4de6473385e96f7163ac3063 +msgid "``Client.self_bot``" +msgstr "" + +#: ../../migrating_to_v2.rst:36 0d2048c3f634470db57d960269ce267e +msgid "``Client.fetch_user_profile``" +msgstr "" + +#: ../../migrating_to_v2.rst:37 196c370751334ee799f6a0d7b005d0b1 +msgid "``Message.call`` and ``ack``" +msgstr "" + +#: ../../migrating_to_v2.rst:38 175bae4371334bfdba4ee9b31104413d +msgid "" +"``ClientUser.email``, ``premium``, ``premium_type``, " +"``get_relationship``, ``relationships``, ``friends``, ``blocked``, " +"``create_group``, ``edit_settings``" +msgstr "" + +#: ../../migrating_to_v2.rst:39 2dd633c48aa0456e83f859255b4f1ee7 +msgid "" +"Arguments of ``ClientUser.edit``: ``password``, ``new_password``, " +"``email``, ``house``" +msgstr "" + +#: ../../migrating_to_v2.rst:40 a50f5082ed78463c97d0273962fe0c15 +msgid "" +"``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``," +" ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, " +"``profile``" +msgstr "" + +#: ../../migrating_to_v2.rst:41 bd7642d71ede4b97ba4dc650ff1c8594 +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "" + +#: ../../migrating_to_v2.rst:44 13121575476142a19c2dcb458a83f54f +msgid "Timezone-aware Time" +msgstr "" + +#: ../../migrating_to_v2.rst:46 349c6711be084ce1b90dd7a733b78ba0 +msgid "" +"``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are " +"constructing :class:`datetime.datetime`` yourself, pass " +"``tzinfo=datetime.timezone.utc``." +msgstr "" + +#: ../../migrating_to_v2.rst:56 5fc136ad08d4421d9bbcdc16052f0690 +msgid "" +"Note that newly-added :meth:`utils.utcnow()` can be used as an alias of " +"``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "" + +#: ../../migrating_to_v2.rst:61 da35e442c7704ec1afc688538581f915 +msgid "Asset Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:63 c00065483b0342408ae50a9c51aa8c4e +msgid "" +"Asset-related attributes that previously returned hash strings (e.g. " +":attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` " +"returns the hash from now on." +msgstr "" + +#: ../../migrating_to_v2.rst:65 4993a14d870149bda46b3f76e09442b0 +msgid "" +"``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace`" +" or :meth:`Asset.with_x` methods can be used to get specific asset sizes " +"or types." +msgstr "" + +#: ../../migrating_to_v2.rst:66 ff3fcaeedc1c4e83b15a7b5a387f1630 +msgid "" +":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. " +":meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read " +"emojis." +msgstr "" + +#: ../../migrating_to_v2.rst:67 f5222d3512114fc28162f0c51869f55b +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "" + +#: ../../migrating_to_v2.rst:68 8fecd3253b0343979e5606bfcd199cda +msgid "" +"Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead " +"of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, " +":attr:`AuditLogDiff.avatar`" +msgstr "" + +#: ../../migrating_to_v2.rst:69 2fe4f47843594fc4a5a867253a30b71a +msgid "" +":attr:`User.avatar` returns ``None`` if the avatar is not set and is " +"instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 " +"behavior." +msgstr "" + +#: ../../migrating_to_v2.rst:72 ../../migrating_to_v2.rst:155 +#: a65a0103aace443ebb18e17b1721f2a5 fc29ce511c4f469b97f92260dc276603 +msgid "Before" +msgstr "" + +#: ../../migrating_to_v2.rst:72 ../../migrating_to_v2.rst:155 +#: 03cd95fabd374e4982e6da2ae545982a 555d85f847b7406c83991fb44ffec3cf +msgid "After" +msgstr "" + +#: ../../migrating_to_v2.rst:74 fe477cf46b8d44168a2b92ee73b01dc5 +msgid "``str(user.avatar_url)``" +msgstr "" + +#: ../../migrating_to_v2.rst:74 f3f21f208f23475ebbfd8a685e8cd20e +msgid "``user.display_avatar.url``" +msgstr "" + +#: ../../migrating_to_v2.rst:76 477058ca0ed741de80cfe9998f853f9c +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "" + +#: ../../migrating_to_v2.rst:76 33c8991093324005b6d00b43b87289e1 +msgid "``user.display_avatar.with_size(128).url``" +msgstr "" + +#: ../../migrating_to_v2.rst:78 ../../migrating_to_v2.rst:80 +#: 189fc37c8737439eae8f327b6a9a4caf f4afdd26bd9b43829800ea2b9a929080 +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "" + +#: ../../migrating_to_v2.rst:78 09bd525e9d01437c925c7b72b240de22 +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "" + +#: ../../migrating_to_v2.rst:80 2421e8f8aef842b7b480595bdde17813 +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "" + +#: ../../migrating_to_v2.rst:82 957db552814a4fcfa62d129298d26d76 +msgid "``await user.avatar_url.read()``" +msgstr "" + +#: ../../migrating_to_v2.rst:82 81c8bc1f40d34a5ea0de03a6cc4ddd29 +msgid "``await user.display_avatar.read()``" +msgstr "" + +#: ../../migrating_to_v2.rst:84 6526cd7ec59c46cd8ea59e315663c759 +msgid "``str(emoji.url)``" +msgstr "" + +#: ../../migrating_to_v2.rst:84 311191130dbe4676acc34bcae2a919de +msgid "``emoji.url``" +msgstr "" + +#: ../../migrating_to_v2.rst:86 29237eab93d8458baf6e1eb56b08b6a6 +msgid "``str(emoji.url_as(size=32))``" +msgstr "" + +#: ../../migrating_to_v2.rst:86 b98be13484434e5cada62d4908a280bc +msgid "``emoji.with_size(32).url``" +msgstr "" + +#: ../../migrating_to_v2.rst:88 7de06060f4094bbea3c7a105ab0c9a9a +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "" + +#: ../../migrating_to_v2.rst:88 78f397f39839421394d1c5fe64f497c7 +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "" + +#: ../../migrating_to_v2.rst:90 5759c26ddb754fbca00ffed8877cf100 +msgid "``str(sticker.image_url)``" +msgstr "" + +#: ../../migrating_to_v2.rst:90 6ce46f7b5fb2497aa5ac8d3adcb9c86a +msgid "``sticker.url``" +msgstr "" + +#: ../../migrating_to_v2.rst:92 129e5a5d23ce4e139433c8f25c3cc70e +msgid "``str(partialemoji.url)``" +msgstr "" + +#: ../../migrating_to_v2.rst:92 c6e4151ff20145d695796cbe9da24db6 +msgid "``partialemoji.url``" +msgstr "" + +#: ../../migrating_to_v2.rst:96 fd66d6f85fba4286bcbc431df0d5885f +msgid "Webhook Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:98 f6a17bf9b0ee40e78bf3cce2beeb900e +msgid "" +":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous." +" For synchronous use (``requests``), use :class:`SyncWebhook` and " +":class:`SyncWebhookMessage`." +msgstr "" + +#: ../../migrating_to_v2.rst:99 f8c697ddb9984c8f9f346311722969ee +msgid "" +"``WebhookAdapter``, ``AsyncWebhookAdapter``, and " +"``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "" + +#: ../../migrating_to_v2.rst:100 7ea01f8e7b5f4727aac7e16ef0cd0029 +msgid "" +"``adapter`` arguments of :meth:`Webhook.partial` and " +":meth:`Webhook.from_url` are removed. Sessions are now passed directly to" +" ``partial`` / ``from_url``." +msgstr "" + +#: ../../migrating_to_v2.rst:125 08b6d061d37247f393b5b579f448a884 +msgid "Intents Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:127 4cf10c3081b342be80cce2f917c6ae68 +msgid "" +":attr:`Intents.message_content` is now a privileged intent. Disabling it " +"causes :attr:`Message.content`, :attr:`Message.embeds`, " +":attr:`Message.components`, and :attr:`Message.attachments` to be empty " +"(an empty string or an empty array), directly causing " +":class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr "" + +#: ../../migrating_to_v2.rst:136 d048ab192df44c31abda5db5162c543a +msgid "Threads Introduced" +msgstr "" + +#: ../../migrating_to_v2.rst:138 62acc808e3b74755931d211e1648f7f0 +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "" + +#: ../../migrating_to_v2.rst:140 82444dda960a4d08a5f0dfc797d56d5e +msgid ":attr:`Message.channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:141 cceda5a20b1e498a9550e428a9c32d0c +msgid ":meth:`Client.fetch_channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:142 11d3808d06cd43ab89db1f311a11e714 +msgid ":meth:`Guild.fetch_channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:143 dcf0abfc1cd94904add6e0803477b2e1 +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr "" + +#: ../../migrating_to_v2.rst:144 1ea22b3863954a36839ad619c6dd923e +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr "" + +#: ../../migrating_to_v2.rst:145 413ced12374046308a10545c3c6844c9 +msgid ":meth:`Client.get_channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:150 248728e0a8be476781342a48226cf1f9 +msgid "Permission Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:152 df3e0b1709ee45c9bb6330f79d891a01 +msgid "" +"``permissions_in`` has been removed in favor of checking the permissions " +"of the channel for said user." +msgstr "" + +#: ../../migrating_to_v2.rst:157 36d3d49660f042d18ec9657376085297 +msgid "``User.permissions_in``" +msgstr "" + +#: ../../migrating_to_v2.rst:157 ../../migrating_to_v2.rst:159 +#: 71cfc7c63d664ccaae1a843441419313 b8837ab04fef402282277085c9efbd73 +msgid "``abc.GuildChannel.permissions_for``" +msgstr "" + +#: ../../migrating_to_v2.rst:159 37649f96a7624d9686266d5fd1fed282 +msgid "``Member.permissions_in``" +msgstr "" + +#: ../../migrating_to_v2.rst:165 7820a53ce2684907add42dad55840b07 +msgid "Edit Method Behavior Change" +msgstr "" + +#: ../../migrating_to_v2.rst:167 7a4a212cbbec4644ba9b53a4008ab75a +msgid "" +"``edit`` methods of most classes no longer update the cache in-place, and" +" instead returns the modified object." +msgstr "" + +#: ../../migrating_to_v2.rst:172 59ea7ec3240a4469ad2abe9e44bf7949 +msgid "Positional-Keyword Argument Split" +msgstr "" + +#: ../../migrating_to_v2.rst:174 6053049fa5fc4d20886dfac6bf4fd578 +msgid "The following are now positional only:" +msgstr "" + +#: ../../migrating_to_v2.rst:176 43fabe138eba4d3fb009378200bfe950 +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr "" + +#: ../../migrating_to_v2.rst:177 459bad69b32446768e7d26b4967817b9 +msgid ":meth:`Guild.get_channel`" +msgstr "" + +#: ../../migrating_to_v2.rst:178 13d9ce01f23b4fb4ba027f6ede16cfbd +msgid ":meth:`Guild.get_role`" +msgstr "" + +#: ../../migrating_to_v2.rst:179 fe229c09af0f4ceb8edd4c153c1d7967 +msgid ":meth:`Guild.get_member_named`" +msgstr "" + +#: ../../migrating_to_v2.rst:180 c881076e826f4d3b9889bd5b509b0a88 +msgid ":meth:`Guild.fetch_member`" +msgstr "" + +#: ../../migrating_to_v2.rst:181 93ae00ccb763451d92f3ee9e7ed24389 +msgid ":meth:`Guild.fetch_emoji`" +msgstr "" + +#: ../../migrating_to_v2.rst:182 0d36f7feac2d4176924c51db078a913b +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr "" + +#: ../../migrating_to_v2.rst:183 e27310186c87475ab67a031c4691574a +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr "" + +#: ../../migrating_to_v2.rst:185 2ee707a46795467e9e6df7da265add6d +msgid "The following are now keyword only:" +msgstr "" + +#: ../../migrating_to_v2.rst:187 062710efb97c4720b5a7e58b86fde1bd +msgid ":func:`utils.oauth_url`" +msgstr "" + +#: ../../migrating_to_v2.rst:188 eea08b1bd6734a30b2c92d7299cba30e +msgid ":meth:`Reaction.users`" +msgstr "" + +#: ../../migrating_to_v2.rst:193 e3f925ae131b4acd9cdea9307a45fc05 +msgid "Event Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:195 714200329dee4e4097e8237ec16e7369 +msgid "" +":func:`on_presence_update` replaces `on_member_update` for updates to " +":attr:`Member.status` and :attr:`Member.activities`." +msgstr "" + +#: ../../migrating_to_v2.rst:196 d8ba5cf91fb3424b828cd351eec2bb89 +msgid "" +"``on_private_channel_create/delete`` will no longer be dispatched due to " +"Discord changes." +msgstr "" + +#: ../../migrating_to_v2.rst:197 af890060b9db4bd3b5db9ec638bca915 +msgid "" +":func:`on_socket_raw_receive` is no longer dispatched for incomplete " +"data, and the value passed is always decompressed and decoded to " +":class:`str`. Previously, when received a multi-part zlib-compressed " +"binary message, :func:`on_socket_raw_receive` was dispatched on all " +"messages with the compressed, encoded :class:`bytes`." +msgstr "" + +#: ../../migrating_to_v2.rst:203 011fe28653e1494dba94196e0008d35e +msgid "Message.type For Replies" +msgstr "" + +#: ../../migrating_to_v2.rst:205 4c8e05c8a9254b19818c84eeadb8405b +msgid "" +":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, " +"instead of :attr:`MessageType.default`." +msgstr "" + +#: ../../migrating_to_v2.rst:210 80cdf03553cc4032ba759cb3c7f223bc +msgid "Sticker Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:212 f61fbeebe9fa42b2a81207ce5b7037dc +msgid "" +"``Sticker.preview_image`` was removed as Discord no longer provides the " +"data." +msgstr "" + +#: ../../migrating_to_v2.rst:213 110d5715eeac49c1a35b31c104687053 +msgid "" +"``StickerType``, an enum of sticker formats, is renamed to " +":class:`StickerFormatType`. Old name is used for a new enum with " +"different purpose (checking if the sticker is guild sticker or Nitro " +"sticker)." +msgstr "" + +#: ../../migrating_to_v2.rst:214 33cc3cee550349b3a1762abb3f912719 +msgid "" +":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of " +"List[:class:`Sticker`]. While :class:`StickerItem` supports some " +"operations of previous ``Sticker``, ``description`` and ``pack_id`` " +"attributes do not exist. :class:`Sticker` can be fetched via " +":meth:`StickerItem.fetch` method." +msgstr "" + +#: ../../migrating_to_v2.rst:215 cb1cb2db00304aa78cb67ff03f7fdbf4 +msgid "" +"``Sticker.image`` is removed. :class:`Sticker` can still be fetched via " +":meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed " +"via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "" + +#: ../../migrating_to_v2.rst:216 f0ec13f6ef5d4f47b9c3b5ad6ea62568 +msgid "" +"Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is " +"removed from the parent class :class:`Sticker` and moved to " +":attr:`StandardSticker.tags`." +msgstr "" + +#: ../../migrating_to_v2.rst:221 58ac4f1b472642d99c1de2da076798f4 +msgid "Type Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:223 5ff91b640d61419c98e454661c2555a6 +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:225 6b4d501cdb574b55874cd1b9e457fd5b +msgid "" +":attr:`DMChannel.recipient` is now optional, and will return ``None`` in " +"many cases." +msgstr "" + +#: ../../migrating_to_v2.rst:226 79b14ad448324549a1a7aefdb54cf08c +msgid "" +":attr:`User.avatar` returns ``None`` if the avatar is not set and is " +"instead the default avatar." +msgstr "" + +#: ../../migrating_to_v2.rst:227 7ec87d2fb54a4e509758b8c568f3daf1 +msgid "" +":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts " +"``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:228 2a940a15b16c4b1b8517e827b0000252 +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:229 dd62eb7b65c74803b15e55ec9d4d7c1c +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:230 2950a9a2db8c40aaaa71fa66ed7eea22 +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:231 6042605d696a4d9f8bf7cd7974fac701 +msgid "" +":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` " +"arguments no longer accept ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:232 565f1b3e8c434e9ab85c4bf37d1e9efb +msgid "" +"The following :class:`.ext.commands.Context` attributes can now be " +"``None``: ``prefix``, ``command``, ``invoked_with``, " +"``invoked_subcommand``." +msgstr "" + +#: ../../migrating_to_v2.rst:233 3ddda62623514924997b841008198d37 +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr "" + +#: ../../migrating_to_v2.rst:238 930df2cbf955481eb1a877cf8e03050a +msgid "Miscellaneous Changes" +msgstr "" + +#: ../../migrating_to_v2.rst:240 6fec5b854b0745c38c67242a39a9793f +msgid "The following were removed:" +msgstr "" + +#: ../../migrating_to_v2.rst:242 40ed16f576bf4e33a1ffabb3d75aaaed +msgid "``Client.request_offline_members``" +msgstr "" + +#: ../../migrating_to_v2.rst:243 58f5cf0e14a34ca3a894772829bb1c77 +msgid "``Client.logout``" +msgstr "" + +#: ../../migrating_to_v2.rst:244 c0b6a79d2f4544d0844c504857922323 +msgid "``ExtensionNotFound.original``" +msgstr "" + +#: ../../migrating_to_v2.rst:245 62ee75994acd4d22b1a7a5ace1025c97 +msgid "``MemberCacheFlags.online``" +msgstr "" + +#: ../../migrating_to_v2.rst:246 3983cbd1b5574ec896fc9356485962db +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "" + +#: ../../migrating_to_v2.rst:247 370a22e8de864b71ad4dcb71dafdf2f2 +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "" + +#: ../../migrating_to_v2.rst:248 cc590a7140fb44ee9c702cff74cc8500 +msgid "" +"``HelpCommand.clean_prefix`` moved to " +":attr:`ext.commands.Context.clean_prefix`" +msgstr "" + +#: ../../migrating_to_v2.rst:249 16074adbde0f41aba9d9b4f33ef99c22 +msgid "" +"``VerificationLevel.table_flip`` (alias of ``high``) was removed. " +"``extreme``, ``very_high``, and ``double_table_flip`` attributes were " +"removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "" + +#: ../../migrating_to_v2.rst:251 463a4158aa8e434d998f4427a87a4822 +msgid "The following were renamed:" +msgstr "" + +#: ../../migrating_to_v2.rst:253 3eb3bb5ea6f54fb0ade89c6843a79913 +msgid "" +":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and " +":attr:`Colour.blurple` now returns the newer color." +msgstr "" + +#: ../../migrating_to_v2.rst:254 6d4ff2d5c6b14b6ba59bbb56b5dfb34c +msgid "" +"``missing_perms`` arguments and attributes of " +":class:`ext.commands.MissingPermissions` and " +":class:`ext.commands.BotMissingPermissions` are renamed to " +"``missing_permissions``." +msgstr "" + +#: ../../migrating_to_v2.rst:256 2841cee7328940b0bdf478e6b22d7263 +msgid "The following were changed in behavior:" +msgstr "" + +#: ../../migrating_to_v2.rst:258 9940c6e733ac43a48c38a684452cfda6 +msgid "" +":class:`Embed` that has a value is always considered truthy. Previously " +"it only considered text fields." +msgstr "" + +#: ../../migrating_to_v2.rst:259 2a1eb29e586a4982a56d290de5d81bc6 +msgid "" +":meth:`Bot.add_cog` now raises an error when a cog with the same name is " +"already registered. ``override`` argument can be used to bring back the " +"1.x behavior." +msgstr "" + +#: ../../migrating_to_v2.rst:260 df130bcfe3854c2198f7bb599ae90555 +msgid "" +":meth:`StageChannel.edit` can no longer edit ``topic``. Use " +":meth:`StageInstance.edit` instead." +msgstr "" + +#: ../../migrating_to_v2.rst:261 68503c20570e4ba09236db24b4b00e42 +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr "" + +#: ../../migrating_to_v2.rst:263 501adddee1ee4e4e85c46a97a38f2a85 +msgid "The following were changed in types:" +msgstr "" + +#: ../../migrating_to_v2.rst:265 7188dea26ca54b5abe2a909093fecf51 +msgid "" +":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not " +":class:`OrderedDict`." +msgstr "" + +#: ../../migrating_to_v2.rst:266 4b171ce60d5a4b63a5d50250c99aeb41 +msgid "" +"``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for " +"consistency." +msgstr "" + +#: ../../migrating_to_v2.rst:267 554778efab494d3c90fe80ee0c544ae9 +msgid "" +":attr:`IntegrationAccount.id` is now :class:`str`, instead of " +":class:`int`, due to Discord changes." +msgstr "" + +#: ../../migrating_to_v2.rst:268 c7ac7216dc10467ca76368d84b4dd18c +msgid "" +":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, " +":class:`StickerType`], instead of :class:`ChannelType`." +msgstr "" + +#: ../../migrating_to_v2.rst:271 28bdbc53fe6f47a08e2bc5250288e48b +msgid "Parting Words" +msgstr "" + +#: ../../migrating_to_v2.rst:273 897fc3a6948a464bb6c7fd5db0185700 +msgid "" +"The v2.0 of the library implemented a lot of new features. To implement " +"newer features, such as slash commands, they can be seen on our " +":resource:`guide `." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/old_changelog.po b/docs/locales/en/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..adba7bc68c --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/old_changelog.po @@ -0,0 +1,3837 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../old_changelog.rst:10 29ce2db918fb41e8a9244bde1d1b9eea +msgid "Changelog" +msgstr "" + +#: ../../old_changelog.rst:12 e7c24dc0811f4cf2b9c12cb7e77a849f +msgid "" +"This page keeps a detailed human-friendly rendering of what's new and " +"changed in specific versions." +msgstr "" + +#: ../../old_changelog.rst:16 111e8e373caa4879b99291201341d902 +msgid "" +"This page is no longer maintained. For an updated changelog for version " +"2.0+, please check out our :doc:`new changelog ` instead." +msgstr "" + +#: ../../old_changelog.rst:22 f16bc17878ee42bea522f301f589b699 +msgid "v2.0.0" +msgstr "" + +#: ../../old_changelog.rst:23 dccadc49e501411fa8b8937ad238fd42 +msgid "Fully deprecated/removed store channels" +msgstr "" + +#: ../../old_changelog.rst:24 e29ccc70dc9440c49887a04fe64e75d5 +msgid "Buttons and Select Menus" +msgstr "" + +#: ../../old_changelog.rst:25 189374785cfa485889a515a57b0ccd8c +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "" + +#: ../../old_changelog.rst:26 8800248f6eeb4a04b6a7144853ecb6a8 +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "" + +#: ../../old_changelog.rst:27 2862fcc18cc746479c56e6b516ce52e3 +msgid "Voice receive API (:issue:`532`)" +msgstr "" + +#: ../../old_changelog.rst:28 a2f7d6d326c54e5da6b53b8fc4745462 +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "" + +#: ../../old_changelog.rst:29 447a95c2a0b3472db32b67c0da2b3723 +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "" + +#: ../../old_changelog.rst:30 dfe1a69b8b1d4980979a15f6fc56aed5 +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "" + +#: ../../old_changelog.rst:31 d8255b78a1ab49d796de0c41db90f08f +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "" + +#: ../../old_changelog.rst:32 c83088acf30846e183eee7cc8e4df23e +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "" + +#: ../../old_changelog.rst:33 2f6cb783181d4d3ead5b64730cd3e0ad +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr "" + +#: ../../old_changelog.rst:34 5c4e9fb3c3d5435381e6207d1d38624f +msgid "Application Command Localization (:issue:`1185`)" +msgstr "" + +#: ../../old_changelog.rst:35 0547cd04de9a40e3a9fa833bb41194a4 +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "" + +#: ../../old_changelog.rst:36 b0d517b727da47ac987073f3fa8d4c91 +msgid "Forum channels (:issue:`1249`)" +msgstr "" + +#: ../../old_changelog.rst:37 e618021b02844ae7845cfff40f70c879 +msgid "" +"Methods and attributes that returned :class:`TextChannel`, etc., can now " +"return :class:`Thread`." +msgstr "" + +#: ../../old_changelog.rst:38 288718c944264fbf94169e5124c6eb3d +msgid "" +"Attributes that returned :class:`Asset` are renamed, e.g. attributes " +"ending with ``_url`` (i.e.: ``avatar_url``) are changed to " +":attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the " +"default avatar is used." +msgstr "" + +#: ../../old_changelog.rst:39 02f92fabeb084f9981cde73062908eca +msgid "" +":func:`on_presence_update` replaces ``on_member_update`` for updates to " +":attr:`Member.status` and :attr:`Member.activities`." +msgstr "" + +#: ../../old_changelog.rst:40 c5e3b745d4dd44078616eb00a0c6fa21 +msgid "" +":class:`datetime.datetime` objects used in the library are now timezone-" +"aware." +msgstr "" + +#: ../../old_changelog.rst:41 582bbeed0431464f81d972fbc107665d +msgid "" +"Sticker changes: ``StickerType`` has been renamed to " +":class:`StickerFormatType`, and the type of :attr:`Message.stickers` is " +"altered. ``Sticker.preview_image``, ``Sticker.image`` and " +"``Sticker.tags`` are removed." +msgstr "" + +#: ../../old_changelog.rst:42 b3595562fbad439486d3dd882a01f055 +msgid "" +"Webhooks are changed significantly; ``WebhookAdapter`` is removed, and " +"synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "" + +#: ../../old_changelog.rst:43 0805e0b49bb04a6593fb829221f2e1a2 +msgid "" +"``edit`` method no longer updates the cache and instead returns modified " +"instance." +msgstr "" + +#: ../../old_changelog.rst:44 ca53566b6b034dd3a42f4eeae20b4fe4 +msgid "User accounts (userbots) are no longer supported." +msgstr "" + +#: ../../old_changelog.rst:45 4d4aed3001174c05993cbe806861b9ea +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "" + +#: ../../old_changelog.rst:46 ec4d6aaba5f5469f96c9db62a03308cd +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "" + +#: ../../old_changelog.rst:47 f65369e1369348738cce934faf941169 +msgid "" +"``User.permissions_in`` is removed; use " +":meth:`abc.GuildChannel.permissions_for` instead." +msgstr "" + +#: ../../old_changelog.rst:48 d4f8f3869289495db667736a1925bd92 +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "" + +#: ../../old_changelog.rst:49 9ee436e686fb4945b6d12762588bd7ad +msgid "" +"``Reaction.custom_emoji`` property is changed to " +":meth:`Reaction.is_custom_emoji` method." +msgstr "" + +#: ../../old_changelog.rst:50 984193f100a74ce0bfbc5cbce8bc89fd +msgid "" +"``missing_perms`` attributes and arguments are renamed to " +"``missing_permissions``." +msgstr "" + +#: ../../old_changelog.rst:51 ae4168f2ccee4adebdf8328fe8fc2edf +msgid "Many method arguments now reject :class:`None`." +msgstr "" + +#: ../../old_changelog.rst:52 30c8c142c6924bcaa092b864d6d47407 +msgid "" +"Many arguments are now specified as positional-only or keyword-only; e.g." +" :meth:`utils.oauth_url` now takes keyword-only arguments, and methods " +"starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "" + +#: ../../old_changelog.rst:53 7819f1eba4b64f6c9195987b52aa38d2 +msgid ":doc:`migrating_to_v2`" +msgstr "" + +#: ../../old_changelog.rst:58 3f1bdc6fe4c34020b43ac23b3b0fbe04 +msgid "v1.7.3" +msgstr "" + +#: ../../old_changelog.rst:61 ../../old_changelog.rst:72 +#: ../../old_changelog.rst:84 ../../old_changelog.rst:143 +#: ../../old_changelog.rst:216 ../../old_changelog.rst:249 +#: ../../old_changelog.rst:302 ../../old_changelog.rst:336 +#: ../../old_changelog.rst:362 ../../old_changelog.rst:433 +#: ../../old_changelog.rst:484 ../../old_changelog.rst:494 +#: ../../old_changelog.rst:509 ../../old_changelog.rst:527 +#: ../../old_changelog.rst:612 ../../old_changelog.rst:663 +#: ../../old_changelog.rst:673 ../../old_changelog.rst:688 +#: ../../old_changelog.rst:702 ../../old_changelog.rst:712 +#: ../../old_changelog.rst:748 ../../old_changelog.rst:778 +#: ../../old_changelog.rst:820 ../../old_changelog.rst:860 +#: ../../old_changelog.rst:879 ../../old_changelog.rst:895 +#: ../../old_changelog.rst:915 ../../old_changelog.rst:963 +#: ../../old_changelog.rst:980 ../../old_changelog.rst:1017 +#: ../../old_changelog.rst:1053 ../../old_changelog.rst:1105 +#: ../../old_changelog.rst:1149 ../../old_changelog.rst:1215 +#: 0cfe368e06df4e1ea7c150453f89de6e 17f17608af0a43cc962fac5db9cc8ddf +#: 23efacaa85b24de6ad0abd7fb71e2ac7 2d8a2079d07d471185fd771cd110e196 +#: 2dc4ae7f1672461b99cb21d7f4c1c44b 30d3f7fc96194b079dc989af8254ccb4 +#: 37d0810d51c84bf687249ea3a8ff8a85 50f297ce67c74677b1ee89c30fde8409 +#: 544e311820a74571b148c112223905fa 64872ef88d1e420a88cc9ff9eb89ced2 +#: 68ce32f8aabb41649fc4afa11b3f0bf1 69eb18190cd849848afb4111eb0bb649 +#: 70c3ca9bce654a929c96e04fc09b4b8e 732ef6051bcb4804a5c9e79154c78279 +#: 73fc735825794200af7a30630764db24 7817b4312a154f009dff55e432a858c7 +#: 78ed3243a842422cadbb88aaae754d02 7c148660626547308b1391067e9ced02 +#: 7cc0d22d8b2943e7aa79c455e015b3b6 81fd18a62df0458f9c29cf729ae7ca07 +#: 91bf4aa50b16483f889c8f3e912f0d24 a26c3200a835429795617d743cd8e40f +#: a67d46ada6074351bae4038c9b1130e7 b365962e4ace4f4699a0e934d4285afc +#: b3fa3203990f4d0c98d2c93de388634e b4afbdf7fe6e4760ad70fe8db595e132 +#: cd7f6bebae794a53828a66d9cbecafec d4257b1c63b649d2bab2777f8f87974b +#: dceb88c2f12845d6aaba763f7a1eaa93 dec246ccbf76406dbf2f4d6fb7752d72 +#: ef3d030669fc4e67885f6989dcbda763 f94aa69bf4f9450dab1d250ecd1cbda4 +#: fa8aa6eb723f40efb4fedb376fbd320e fed539cd2e6c4e53ba4aebc61df10f3c +msgid "Bug Fixes" +msgstr "" + +#: ../../old_changelog.rst:63 6ca55db8075543e7a1b66c20b429a1cb +msgid "Fix a crash involving guild uploaded stickers" +msgstr "" + +#: ../../old_changelog.rst:64 cfd171a6935145399fbfef4808ac81de +msgid "" +"Fix :meth:`DMChannel.permissions_for` not having " +":attr:`Permissions.read_messages` set." +msgstr "" + +#: ../../old_changelog.rst:69 9672091320834fe6ac058962c3aa5a96 +msgid "v1.7.2" +msgstr "" + +#: ../../old_changelog.rst:74 2e33f45eaf364ff6ae5897c4cb0ee8f9 +msgid "" +"Fix ``fail_if_not_exists`` causing certain message references to not be " +"usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` " +"(:dpy-issue:`6726`)" +msgstr "" + +#: ../../old_changelog.rst:75 eef74dc0c2004dcda8ec3f727fd1dfc2 +msgid "" +"Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-" +"issue:`6730`)" +msgstr "" + +#: ../../old_changelog.rst:76 bfca0f9ab910467a9a338e39d99f9a47 +msgid "" +"Fix loop sleeping after final iteration rather than before (:dpy-" +"issue:`6744`)" +msgstr "" + +#: ../../old_changelog.rst:81 8fadc2e021cf48a5ad82411499ee4e6d +msgid "v1.7.1" +msgstr "" + +#: ../../old_changelog.rst:86 4e0d3f0a012c447b8aac2b1968b76c1c +msgid "" +"|commands| Fix :meth:`Cog.has_error_handler " +"` not working as intended." +msgstr "" + +#: ../../old_changelog.rst:91 cd1b5fa5b2ad468b86553c173d4c0494 +msgid "v1.7.0" +msgstr "" + +#: ../../old_changelog.rst:93 d8d582d95ca84387aa4eea41ca4be35d +msgid "" +"This version is mainly for improvements and bug fixes. This is more than " +"likely the last major version in the 1.x series. Work after this will be " +"spent on v2.0. As a result, **this is the last version to support Python " +"3.5**. Likewise, **this is the last version to support user bots**." +msgstr "" + +#: ../../old_changelog.rst:97 f514144f70874e0aadb9bb45f85247df +msgid "" +"Development of v2.0 will have breaking changes and support for newer API " +"features." +msgstr "" + +#: ../../old_changelog.rst:100 ../../old_changelog.rst:179 +#: ../../old_changelog.rst:282 ../../old_changelog.rst:376 +#: ../../old_changelog.rst:546 ../../old_changelog.rst:725 +#: ../../old_changelog.rst:793 ../../old_changelog.rst:909 +#: ../../old_changelog.rst:941 ../../old_changelog.rst:974 +#: ../../old_changelog.rst:1003 ../../old_changelog.rst:1030 +#: ../../old_changelog.rst:1066 ../../old_changelog.rst:1126 +#: ../../old_changelog.rst:1172 09ef2dfc185f422f85996a6f5f33bac0 +#: 111b5503166c49049c83def274c3d777 204e63c3290b4fc88a1d943da58066ad +#: 2199902f33d7402e943e5681ed7282b2 226e4f2fbc514dd2b1792a6a22c75007 +#: 36bcd7cd8e4e45e2b1dce6ac93ce18e4 6d540400003c4c0d9a46efb8124d5831 +#: 766d20e109394d4f9d97b5e570375d42 9b63b5b3747040e0ba5f64a7c819bcf1 +#: 9f395f70c5344ef0b711c4248d8bacb3 c2770ae1af9b4102b8a693f993b1d639 +#: d56c88d569c24dddb1487157ed9d48a2 d9f378368bb5411da040252341ae2384 +#: dc35086399e943d6ae66d4137f6c7084 e3502fe3e4524732aa20fa04e01c3807 +msgid "New Features" +msgstr "" + +#: ../../old_changelog.rst:102 cedd57e50a544d078d8a0b35b0d75f6e +msgid "" +"Add support for stage channels via :class:`StageChannel` (:dpy-" +"issue:`6602`, :dpy-issue:`6608`)" +msgstr "" + +#: ../../old_changelog.rst:103 5e33395ddbba452f8bcf51641c54d375 +msgid "" +"Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-" +"issue:`6484`)" +msgstr "" + +#: ../../old_changelog.rst:104 c164b7c847854e1984bbf4a5f1b51a43 +msgid "" +"By default, if the message you're replying to doesn't exist then the API " +"errors out. This attribute tells the Discord API that it's okay for that " +"message to be missing." +msgstr "" + +#: ../../old_changelog.rst:107 5cc73d7266f64ad2b25444b863bcadfa +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "" + +#: ../../old_changelog.rst:108 ccc738ce09da485b855aa16e20ffce9a +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "" + +#: ../../old_changelog.rst:109 812fbc4313f64e119e328a6aa76a3340 +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "" + +#: ../../old_changelog.rst:110 1fc106925a21437ab39286fc0b6bb897 +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "" + +#: ../../old_changelog.rst:111 b0dda7acf89d49c9a433fa44400f873f +msgid "" +"Add support for voice regions in voice channels via " +":attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "" + +#: ../../old_changelog.rst:112 0814891c36484a8b9849b9383ebce5c9 +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "" + +#: ../../old_changelog.rst:113 5b67e06a18144728909532871f6393a1 +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "" + +#: ../../old_changelog.rst:114 12d1cb36dec44c0f8dd00640932e0a52 +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "" + +#: ../../old_changelog.rst:115 951a213cc0d54fa8900718b4672cc823 +msgid "" +"Add support for passing ``roles`` to " +":meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "" + +#: ../../old_changelog.rst:116 78c44b7870ef41bbb9fdc5dd63252540 +msgid "" +"Allow callable class factories to be used in :meth:`abc.Connectable.play`" +" (:dpy-issue:`6478`)" +msgstr "" + +#: ../../old_changelog.rst:117 20f2d55d2c804b4392f6b58947c58672 +msgid "" +"Add a way to get mutual guilds from the client's cache via " +":attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "" + +#: ../../old_changelog.rst:118 d85f77a0ff1e4611a99dacd33f05c21f +msgid "" +":meth:`PartialMessage.edit` now returns a full :class:`Message` upon " +"success (:dpy-issue:`6309`)" +msgstr "" + +#: ../../old_changelog.rst:119 702f43d65ece465487575d78c419ac9e +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "" + +#: ../../old_changelog.rst:120 3ff25179def1407ebd35a3c011824c9b +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr "" + +#: ../../old_changelog.rst:121 70a052b2ab1f4520a90e01cc2826ea34 +msgid ":class:`Attachment` is now hashable" +msgstr "" + +#: ../../old_changelog.rst:122 a4a3979813124537b31ee23a7b23c0df +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "" + +#: ../../old_changelog.rst:123 46d57515a1e54630ae1104fd543b2348 +msgid "" +"Add support for casting :class:`Attachment` to :class:`str` to get the " +"URL." +msgstr "" + +#: ../../old_changelog.rst:124 ec59b8cf7a244b4883752824029a444c +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "" + +#: ../../old_changelog.rst:125 031c607942bd4fc2b0c66042de6104c4 +msgid "" +"This only seeds it for one call. If seeding for multiple calls is " +"desirable, use :func:`random.seed`." +msgstr "" + +#: ../../old_changelog.rst:127 c4a68d1e2d6543c18d128e4a66b6dc07 +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "" + +#: ../../old_changelog.rst:128 84fd9697528a48cc9bf3a5cb55796fb4 +msgid "" +"Add support for passing scopes to :func:`utils.oauth_url` (:dpy-" +"issue:`6568`)" +msgstr "" + +#: ../../old_changelog.rst:129 c5d86802bf05408dadfb4255059ece4d +msgid "" +"|commands| Add support for ``rgb`` CSS function as a parameter to " +":class:`ColourConverter ` (:dpy-" +"issue:`6374`)" +msgstr "" + +#: ../../old_changelog.rst:130 78aaf837276a44d5a8800ebdbed9be31 +msgid "" +"|commands| Add support for converting :class:`StoreChannel` via " +":class:`StoreChannelConverter ` " +"(:dpy-issue:`6603`)" +msgstr "" + +#: ../../old_changelog.rst:131 fcf45e879b0542a29ccbda9b59901a06 +msgid "" +"|commands| Add support for stripping whitespace after the prefix is " +"encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` " +"constructor parameter." +msgstr "" + +#: ../../old_changelog.rst:132 df5a21f9817d4189a91741d6b656bddb +msgid "" +"|commands| Add :attr:`Context.invoked_parents " +"` to get the aliases a command's " +"parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "" + +#: ../../old_changelog.rst:133 8f436e824a9a4cc5af7798836754c156 +msgid "" +"|commands| Add a converter for :class:`PartialMessage` under " +":class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "" + +#: ../../old_changelog.rst:134 abbd3dc8948947978de1b77d2bdac71c +msgid "" +"|commands| Add a converter for :class:`Guild` under " +":class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-" +"issue:`6365`)" +msgstr "" + +#: ../../old_changelog.rst:135 e99a1068890a49c797266cc7aeb0c602 +msgid "" +"|commands| Add :meth:`Command.has_error_handler " +"`" +msgstr "" + +#: ../../old_changelog.rst:136 c1211e976016400fb43f0b462feceba0 +msgid "" +"This is also adds :meth:`Cog.has_error_handler " +"`" +msgstr "" + +#: ../../old_changelog.rst:137 123243ed7ee84d3998310f0ca9e7b82f +msgid "" +"|commands| Allow callable types to act as a bucket key for cooldowns " +"(:dpy-issue:`6563`)" +msgstr "" + +#: ../../old_changelog.rst:138 636827aecb494e05a2af1ec75ec67e6a +msgid "" +"|commands| Add ``linesep`` keyword argument to :class:`Paginator " +"` (:dpy-issue:`5975`)" +msgstr "" + +#: ../../old_changelog.rst:139 d71729a1049043958652d4d8139727da +msgid "" +"|commands| Allow ``None`` to be passed to " +":attr:`HelpCommand.verify_checks " +"` to only verify in a guild " +"context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "" + +#: ../../old_changelog.rst:140 dc255f2941e443e2812b794838f177ee +msgid "" +"|commands| Allow relative paths when loading extensions via a ``package``" +" keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "" + +#: ../../old_changelog.rst:145 9332a09aee684f1298d02fdadc6fc63a +msgid "" +"Fix mentions not working if ``mention_author`` is passed in " +":meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set " +"(:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "" + +#: ../../old_changelog.rst:146 f531f587a2464eb798d1a5ca0712d24e +msgid "" +"Fix user created instances of :class:`CustomActivity` triggering an error" +" (:dpy-issue:`4049`)" +msgstr "" + +#: ../../old_changelog.rst:147 d9277f2c29684ef49943dfc37bdddddb +msgid "" +"Note that currently, bot users still cannot set a custom activity due to " +"a Discord limitation." +msgstr "" + +#: ../../old_changelog.rst:148 85ad21fb2f0d4fb8aa0ad92b7552cc68 +msgid "" +"Fix :exc:`ZeroDivisionError` being raised from " +":attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-" +"issue:`6436`)" +msgstr "" + +#: ../../old_changelog.rst:149 3dd3eed6338748a0ba5e20939c36b057 +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "" + +#: ../../old_changelog.rst:150 8c8032e680de4bd69727218940be575d +msgid "" +"Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-" +"issue:`6390`)" +msgstr "" + +#: ../../old_changelog.rst:151 5f8a582b40ba4651ab4a3a3e6d9ff9e9 +msgid "" +"Fix issue resending a file during request retries on newer versions of " +"``aiohttp`` (:dpy-issue:`6531`)" +msgstr "" + +#: ../../old_changelog.rst:152 a16c3deda62c491b88a435437bca2e07 +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "" + +#: ../../old_changelog.rst:153 bc4a79c3f87f48aca020f9fae6411585 +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "" + +#: ../../old_changelog.rst:154 e435b0463f1c4ecea2f21931d11add5a +msgid "" +"Fix potential :exc:`AttributeError` when accessing " +":attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "" + +#: ../../old_changelog.rst:155 d2e9e738609e46fca22c4a72c38ab5b4 +msgid "" +":class:`Embed` constructor parameters now implicitly convert to " +":class:`str` (:dpy-issue:`6574`)" +msgstr "" + +#: ../../old_changelog.rst:156 923ab0d9634f444396e27e99e4b9daed +msgid "" +"Ensure ``discord`` package is only run if executed as a script (:dpy-" +"issue:`6483`)" +msgstr "" + +#: ../../old_changelog.rst:157 d063f4e02f6e43c7b3116c79cfcd49d3 +msgid "" +"|commands| Fix irrelevant commands potentially being unloaded during cog " +"unload due to failure." +msgstr "" + +#: ../../old_changelog.rst:158 83519cee41764612ac09fffed23374a2 +msgid "" +"|commands| Fix attribute errors when setting a cog to " +":class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "" + +#: ../../old_changelog.rst:159 f0e378978cb844e1a9793bc89401d068 +msgid "" +"|commands| Fix :attr:`Context.invoked_with " +"` being improperly reassigned during a" +" :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-" +"issue:`6462`)" +msgstr "" + +#: ../../old_changelog.rst:160 ad6eaec69d6a46bf807c54cbbcd917f8 +msgid "" +"|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping " +"` (:dpy-issue:`6316`)" +msgstr "" + +#: ../../old_changelog.rst:161 e407952e9acf4614bcddeed1888af114 +msgid "" +"|commands| Properly handle positional-only parameters in bot command " +"signatures (:dpy-issue:`6431`)" +msgstr "" + +#: ../../old_changelog.rst:162 0890a4eebddc47a1afb61fdbe88177ed +msgid "" +"|commands| Group signatures now properly show up in " +":attr:`Command.signature ` (:dpy-" +"issue:`6529`, :dpy-issue:`6530`)" +msgstr "" + +#: ../../old_changelog.rst:165 ../../old_changelog.rst:232 +#: ../../old_changelog.rst:261 ../../old_changelog.rst:317 +#: ../../old_changelog.rst:351 ../../old_changelog.rst:461 +#: ../../old_changelog.rst:533 ../../old_changelog.rst:636 +#: ../../old_changelog.rst:756 ../../old_changelog.rst:783 +#: ../../old_changelog.rst:841 2bc932f969fb46fb94ffea3585aef3b8 +#: 58b8c638cd2b4c5ba356c542a0d06f16 6033308e4fa246309f44ff2a9c62ff84 +#: 6577690b508a41508166de7f527309de 68b50c582bfe4c26a0062c99a16a67d1 +#: 7cfe8c8e4f1348d18ba5b233fa4378a3 8cd36561ec9247c3a46aab2c0bc4091e +#: aae073b86ab64b3cbeb8991af651aacf aecfd74254fe4380a3a35c820f199656 +#: bacd8bb1f2e94851957735f5c9b966a2 c30304010e0645a58629fa474ad0b4b0 +msgid "Miscellaneous" +msgstr "" + +#: ../../old_changelog.rst:167 35fffc7d076b4d19b1dd10d52e5db496 +msgid "" +"User endpoints and all userbot related functionality has been deprecated " +"and will be removed in the next major version of the library." +msgstr "" + +#: ../../old_changelog.rst:168 df5892f7156f4180b4da7ce99de6d739 +msgid "" +":class:`Permission` class methods were updated to match the UI of the " +"Discord client (:dpy-issue:`6476`)" +msgstr "" + +#: ../../old_changelog.rst:169 f0207d09b6d84eeaa788d0764ad4a492 +msgid "" +"``_`` and ``-`` characters are now stripped when making a new cog using " +"the ``discord`` package (:dpy-issue:`6313`)" +msgstr "" + +#: ../../old_changelog.rst:174 0aad39ffee1d4bbda7c4079981f20f38 +msgid "v1.6.0" +msgstr "" + +#: ../../old_changelog.rst:176 aade3a67e9144a09ba3a8238005289e1 +msgid "This version comes with support for replies and stickers." +msgstr "" + +#: ../../old_changelog.rst:181 2928d53ef45b434c83682851acf50607 +msgid "" +"An entirely redesigned documentation. This was the cumulation of multiple" +" months of effort." +msgstr "" + +#: ../../old_changelog.rst:182 e6f0180fcc584243988623b515be2e6c +msgid "" +"There's now a dark theme, feel free to navigate to the cog on the screen " +"to change your setting, though this should be automatic." +msgstr "" + +#: ../../old_changelog.rst:183 c634d09497db4b8a8dd4659697a34169 +msgid "" +"Add support for :meth:`AppInfo.icon_url_as` and " +":meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "" + +#: ../../old_changelog.rst:184 487e1ea4f8bb462c83de699ee87a299b +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "" + +#: ../../old_changelog.rst:185 68386202f673434c81178a580cfc7df5 +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "" + +#: ../../old_changelog.rst:186 2aae411c84b4485a993c927cf060261e +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "" + +#: ../../old_changelog.rst:187 1ecff6a8c9b14a77a2a81db467cbc54a +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "" + +#: ../../old_changelog.rst:188 a8f0bca8b48744b69f02b6f6bd0721b5 +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr "" + +#: ../../old_changelog.rst:189 dac39284d3074e7ba59db548b8c8b667 +msgid ":class:`MessageReference` can now be constructed by users." +msgstr "" + +#: ../../old_changelog.rst:190 b0bfb30b94e14b8cb0af087bc2ad65f4 +msgid "" +":meth:`Message.to_reference` can now convert a message to a " +":class:`MessageReference`." +msgstr "" + +#: ../../old_changelog.rst:191 6a70b57bd5924b9e877d0a0907816b13 +msgid "" +"Add support for getting the replied to resolved message through " +":attr:`MessageReference.resolved`." +msgstr "" + +#: ../../old_changelog.rst:192 0bfb977965f54138b22dc6eb96ce906c +msgid "Add support for role tags." +msgstr "" + +#: ../../old_changelog.rst:193 285ebc4e6c36414883976c65cd507a28 +msgid "" +":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role " +"(if available)." +msgstr "" + +#: ../../old_changelog.rst:194 641dcb68af10485ab00a1a78e1357ae5 +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr "" + +#: ../../old_changelog.rst:195 e337f0d7eb544c79b188cfdb9c90a108 +msgid ":attr:`Role.tags` to get the role's tags." +msgstr "" + +#: ../../old_changelog.rst:196 6a1bd9baad6444f5936d6a146af104ce +msgid "" +":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro " +"Booster\" role." +msgstr "" + +#: ../../old_changelog.rst:197 d1398588e32f405189c3c4d08b75d1e0 +msgid "" +":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the " +"automatically created role for bots)." +msgstr "" + +#: ../../old_changelog.rst:198 6818919d47d941f08e4d5cf80eb0c39c +msgid "" +":meth:`Role.is_integration` to check if a role is role created by an " +"integration." +msgstr "" + +#: ../../old_changelog.rst:199 534dd8b0c9d940788b6e7a54ca6e470d +msgid "" +"Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate " +"limited." +msgstr "" + +#: ../../old_changelog.rst:200 425063d305364db4bed18f2edd6a998c +msgid "" +":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a " +"specific shard." +msgstr "" + +#: ../../old_changelog.rst:201 e6d646912fff4191b37b21b18ea1a02e +msgid "" +"Add support for chunking an :class:`AsyncIterator` through " +":meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "" + +#: ../../old_changelog.rst:202 6abf71b2484c48f3978fa984c29f32aa +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "" + +#: ../../old_changelog.rst:203 1f32cadfd4d94390a15c72ee514efffc +msgid "" +"Add support for editing and deleting webhook sent messages (:dpy-" +"issue:`6058`)" +msgstr "" + +#: ../../old_changelog.rst:204 5e7226bc7687467b861346aec01d6697 +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "" + +#: ../../old_changelog.rst:205 92555425255045ff8cf2e71c4ab85097 +msgid "" +"Add :class:`PartialMessage` to allow working with a message via channel " +"objects and just a message_id (:dpy-issue:`5905`)" +msgstr "" + +#: ../../old_changelog.rst:206 41017b2db7404163ad8997334de5ce79 +msgid "" +"This is useful if you don't want to incur an extra API call to fetch the " +"message." +msgstr "" + +#: ../../old_changelog.rst:207 6f2ececf2d9343168654fb760827432c +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "" + +#: ../../old_changelog.rst:208 848cc6a5cbe640a8b408b8caefef26d6 +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "" + +#: ../../old_changelog.rst:209 72d5267029d440f684998b01499a2dd6 +msgid "" +"Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` " +"(:dpy-issue:`6195`)" +msgstr "" + +#: ../../old_changelog.rst:210 cdf1e096672b47babfa4df007a6ecbdc +msgid "" +"Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-" +"issue:`2354`)" +msgstr "" + +#: ../../old_changelog.rst:211 c814ab72983c487baac039d53c38f3cc +msgid "" +"|commands| Add support for ``description`` keyword argument in " +":class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "" + +#: ../../old_changelog.rst:212 4fb5464cd6af40b49786e2464c836abc +msgid "" +"|tasks| Add support for calling the wrapped coroutine as a function via " +"``__call__``." +msgstr "" + +#: ../../old_changelog.rst:218 8c04592e21c540eda4048de13a69dbdb +msgid "" +"Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-" +"issue:`6044`)" +msgstr "" + +#: ../../old_changelog.rst:219 1529d64a898648f78bded6a62c04bd72 +msgid "" +"Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called " +"(:dpy-issue:`5986`)" +msgstr "" + +#: ../../old_changelog.rst:220 1bd0a0d6cc5348c9baf970007cfa6a4e +msgid "" +"Fix errors when playing audio and moving to another channel (:dpy-" +"issue:`5953`)" +msgstr "" + +#: ../../old_changelog.rst:221 aa405cd1adec434588c8b174ee19415e +msgid "" +"Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-" +"issue:`6039`)" +msgstr "" + +#: ../../old_changelog.rst:222 e2785fae147943bbbd6f758ccacbec4d +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "" + +#: ../../old_changelog.rst:223 dd9c5eeb1bb0474585b533b600c34c27 +msgid "" +"Fix :func:`on_user_update` not dispatching in certain cases when a member" +" is not cached but the user somehow is." +msgstr "" + +#: ../../old_changelog.rst:224 a36177f33395415bae1711f1241d5ec5 +msgid "" +"Fix :attr:`Message.author` being overwritten in certain cases during " +"message update." +msgstr "" + +#: ../../old_changelog.rst:225 d8bb7ccaaee846a1b3cba95eb5f42d86 +msgid "" +"This would previously make it so :attr:`Message.author` is a " +":class:`User`." +msgstr "" + +#: ../../old_changelog.rst:226 69870ecc5e7c426f9336aee1b2b7a9ca +msgid "" +"Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in " +":meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "" + +#: ../../old_changelog.rst:227 100101ec2d7042c081f28dc8fac3c53c +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "" + +#: ../../old_changelog.rst:228 bb1dc29025e4457d920f0baedad19d38 +msgid "" +"|commands| Errors during cog unload no longer stops module cleanup (:dpy-" +"issue:`6113`)" +msgstr "" + +#: ../../old_changelog.rst:229 22bfaf396de14606a0a5fbc847cda53c +msgid "" +"|commands| Properly cleanup lingering commands when a conflicting alias " +"is found when adding commands (:dpy-issue:`6217`)" +msgstr "" + +#: ../../old_changelog.rst:234 789ccf8b8d80433e9b1f9ba299607b22 +msgid "" +"``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-" +"issue:`6038`)" +msgstr "" + +#: ../../old_changelog.rst:235 558e6607bf3946dd821afee545260471 +msgid "" +"Update dependencies to allow the library to work on Python 3.9+ without " +"requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "" + +#: ../../old_changelog.rst:236 b92d50d5a8b144af9e7bdfa05dd34bd4 +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "" + +#: ../../old_changelog.rst:237 40dc68da0cbd455b9d0e3158d8647ccd +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "" + +#: ../../old_changelog.rst:238 8193921eb69746278b513bd4ac55f810 +msgid "" +"Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` " +"parameter (:dpy-issue:`6195`)" +msgstr "" + +#: ../../old_changelog.rst:239 cdba632c741d4ab58fc5457382e27077 +msgid "" +"|commands| :class:`MessageConverter ` " +"regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "" + +#: ../../old_changelog.rst:240 993a265e912348678e7c93c74432847b +msgid "" +"|commands| :class:`UserConverter ` now " +"fetches the API if an ID is passed and the user is not cached." +msgstr "" + +#: ../../old_changelog.rst:241 4413cf4b251e40f9a00fd23913c040f9 +msgid "" +"|commands| :func:`max_concurrency ` is now " +"called before cooldowns (:dpy-issue:`6172`)" +msgstr "" + +#: ../../old_changelog.rst:246 303eec99716d480fb54e5a806e51a743 +msgid "v1.5.1" +msgstr "" + +#: ../../old_changelog.rst:251 5494410b5e9c4b62bae3a9abb74ffbd9 +msgid "" +"Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-" +"issue:`5897`)" +msgstr "" + +#: ../../old_changelog.rst:252 74ce2df0dd1443b1ac401d14f6a92007 +msgid "" +"Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-" +"issue:`5866`)" +msgstr "" + +#: ../../old_changelog.rst:253 ce45479ca5c74bf1920548413322cea2 +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "" + +#: ../../old_changelog.rst:254 4afa3f29da604adb98a6fe12f46b69cb +msgid "" +"Fix seemingly strange behaviour in ``__eq__`` for " +":class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "" + +#: ../../old_changelog.rst:255 da46975d69d74dc3b57e29d8e97850e0 +msgid "" +"Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-" +"issue:`5945`)" +msgstr "" + +#: ../../old_changelog.rst:256 b3ecbd42febb4cb9afb0fa4b7163cde4 +msgid "" +"Fix the bot disconnecting from voice when moving them to another channel " +"(:dpy-issue:`5904`)" +msgstr "" + +#: ../../old_changelog.rst:257 63109f9ee740468d961c2f16bc142b49 +msgid "" +"Fix attribute errors when chunking times out sometimes during delayed " +"on_ready dispatching." +msgstr "" + +#: ../../old_changelog.rst:258 29f60cb3c57041ebb2316de15cbf6a55 +msgid "" +"Ensure that the bot's own member is not evicted from the cache (:dpy-" +"issue:`5949`)" +msgstr "" + +#: ../../old_changelog.rst:263 fd3afa10f0534576aae22fb7687e5c2c +msgid "" +"Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if " +":attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "" + +#: ../../old_changelog.rst:264 008d9ba5556140e487bd230df7f70615 +msgid "" +"|commands| :class:`MemberConverter ` now " +"properly lazily fetches members if not available from cache." +msgstr "" + +#: ../../old_changelog.rst:265 3af3c1b8488040ab95f8bf2ea817f44b +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "" + +#: ../../old_changelog.rst:266 ab0d246b3d6441f0acae3214bf4f100b +msgid "" +":meth:`Guild.chunk` now allows concurrent calls without spamming the " +"gateway with requests." +msgstr "" + +#: ../../old_changelog.rst:271 10984e12183b4de9867d2f770baaa19b +msgid "v1.5.0" +msgstr "" + +#: ../../old_changelog.rst:273 b76c31885c704edc89d161a7e64de356 +msgid "" +"This version came with forced breaking changes that Discord is requiring " +"all bots to go through on October 7th. It is highly recommended to read " +"the documentation on intents, :ref:`intents_primer`." +msgstr "" + +#: ../../old_changelog.rst:276 b12a35a1a68746ea84ab39ac90ba4fe0 +msgid "API Changes" +msgstr "" + +#: ../../old_changelog.rst:278 828d3ffb49484051aa3c2b5c47af7035 +msgid "" +"Members and presences will no longer be retrieved due to an API change. " +"See :ref:`privileged_intents` for more info." +msgstr "" + +#: ../../old_changelog.rst:279 9e71a3ac992c4a76aa29bfe9012021e3 +msgid "" +"As a consequence, fetching offline members is disabled if the members " +"intent is not enabled." +msgstr "" + +#: ../../old_changelog.rst:284 129e78967e4a4ba39e81263a7453cc12 +msgid "" +"Support for gateway intents, passed via ``intents`` in :class:`Client` " +"using :class:`Intents`." +msgstr "" + +#: ../../old_changelog.rst:285 3c204598b5a64286b395490b196dd65d +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "" + +#: ../../old_changelog.rst:286 f23df9f9d1c74ff4be6ec0280dfc6d8c +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "" + +#: ../../old_changelog.rst:287 a093c6e7570e49f0a51c6dd0af367d01 +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "" + +#: ../../old_changelog.rst:288 e7a5419a7cd64d5b80c12db4afef1b50 +msgid "" +"Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-" +"issue:`5785`)" +msgstr "" + +#: ../../old_changelog.rst:289 133b840b129042b09d17ec6db4dea0d6 +msgid "" +"Add more concrete exceptions for 500 class errors under " +":class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "" + +#: ../../old_changelog.rst:290 1df6243130b840a097e5e00f2f58157f +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "" + +#: ../../old_changelog.rst:291 bc32a3280def41b18e47d984e92b5f31 +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "" + +#: ../../old_changelog.rst:292 0b9d301adb0e42deb749d5cec6ac499d +msgid "" +"Add :class:`MemberCacheFlags` to better control member cache. See " +":ref:`intents_member_cache` for more info." +msgstr "" + +#: ../../old_changelog.rst:293 a66430bc45f94d669eb6867563e7eb32 +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "" + +#: ../../old_changelog.rst:294 941391c0a8c94d658cc28942e5788b32 +msgid "This seems currently unused API wise." +msgstr "" + +#: ../../old_changelog.rst:296 71cdcbf5761647899b9a3415af3b6697 +msgid "" +"Add support for message references, :attr:`Message.reference` (:dpy-" +"issue:`5754`, :dpy-issue:`5832`)" +msgstr "" + +#: ../../old_changelog.rst:297 392776121e374a24b86ed73162a6f615 +msgid "" +"Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-" +"issue:`5773`)" +msgstr "" + +#: ../../old_changelog.rst:298 42afab58d537482ca2c546afccc48f71 +msgid "" +"Add alias for :attr:`PublicUserFlags.verified_bot_developer` under " +":attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "" + +#: ../../old_changelog.rst:299 ed8a5a80bf32438ea8c845855d6b9b90 +msgid "" +"|commands| Add support for ``require_var_positional`` for " +":class:`Command` (:dpy-issue:`5793`)" +msgstr "" + +#: ../../old_changelog.rst:304 ../../old_changelog.rst:338 +#: 8c0934ceb78c4f1693ffe335151b2fa8 bbe23bac78ca4dd28f187968bda5eea5 +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "" + +#: ../../old_changelog.rst:305 ../../old_changelog.rst:339 +#: 01bd7be1c4304e208005be731ba4afd6 424cc5829d774465a38c056fef25a32b +msgid "" +"Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` " +"(:dpy-issue:`5772`)" +msgstr "" + +#: ../../old_changelog.rst:306 ../../old_changelog.rst:340 +#: 5a400f231b0f431e88023cec102cc1f7 9eaaa5136a534eef8985ae7b55a07932 +msgid "" +"Fix handling of cloudflare bans on webhook related requests (:dpy-" +"issue:`5221`)" +msgstr "" + +#: ../../old_changelog.rst:307 ../../old_changelog.rst:341 +#: 60986dddc4514d5f8439bb750827cc8a 88a01d4747cf40c680c7fe0fb9f3d1f2 +msgid "" +"Fix cases where a keep-alive thread would ack despite already dying " +"(:dpy-issue:`5800`)" +msgstr "" + +#: ../../old_changelog.rst:308 ../../old_changelog.rst:342 +#: b0334e961f684210a4a187503f27acd1 d282047850f0430cbf53c5cc4102453e +msgid "" +"Fix cases where a :class:`Member` reference would be stale when cache is " +"disabled in message events (:dpy-issue:`5819`)" +msgstr "" + +#: ../../old_changelog.rst:309 ../../old_changelog.rst:343 +#: 08beeb46d8e34e25831effd28dedb269 830e4e03694c4a4d87822e6869a230a4 +msgid "" +"Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-" +"issue:`5835`)" +msgstr "" + +#: ../../old_changelog.rst:310 ../../old_changelog.rst:344 +#: 21306977bea14641b77f1a9ec1faabb6 e5b9d4e38bc14f8fbfdde8181d940040 +msgid "" +"Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if " +"``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "" + +#: ../../old_changelog.rst:311 ../../old_changelog.rst:345 +#: 16b3062f67904ff2ae561b2546794925 b96344b6c603408dab9ca02983fffb11 +msgid "" +"|commands| Fix exceptions being raised improperly in command invoke hooks" +" (:dpy-issue:`5799`)" +msgstr "" + +#: ../../old_changelog.rst:312 ../../old_changelog.rst:346 +#: 4cd3dabc92e946b1a8eff43a8af84c68 e3ff10a00de94a0b8ca18fb076c7da9d +msgid "" +"|commands| Fix commands not being properly ejected during errors in a cog" +" injection (:dpy-issue:`5804`)" +msgstr "" + +#: ../../old_changelog.rst:313 ../../old_changelog.rst:347 +#: 14ffcd2aaf65405e87ca219d9dc793d1 dac3191f3dbf46fe97c6c31f9a63ce5b +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "" + +#: ../../old_changelog.rst:314 ../../old_changelog.rst:348 +#: 3c59a15f5ce145968f60fc22e8be33fc 820a6a6dd5614720bc093ab09246e0df +msgid "" +"|tasks| Fix tasks extending the next iteration on handled exceptions " +"(:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "" + +#: ../../old_changelog.rst:319 81ade28f767a448c8891d0c9f0af3fe5 +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "" + +#: ../../old_changelog.rst:320 ../../old_changelog.rst:353 +#: 09f4349738e94800b64e5fac16700400 69a6f356a382470a93a0254e1ef839fb +msgid "" +"Remove caching layer from :attr:`AutoShardedClient.shards`. This was " +"causing issues if queried before launching shards." +msgstr "" + +#: ../../old_changelog.rst:321 6eabb97dab2645f68a540785b651f41a +msgid "Gateway rate limits are now handled." +msgstr "" + +#: ../../old_changelog.rst:322 092d27363495423898dd836604163f0b +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "" + +#: ../../old_changelog.rst:323 b90a6d56a2a74446a688034872c88075 +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "" + +#: ../../old_changelog.rst:324 e199778b8c4e4710ae92fe337160ea38 +msgid "" +"Usage of namedtuples has been reduced to avoid potential breaking changes" +" in the future (:dpy-issue:`5834`)" +msgstr "" + +#: ../../old_changelog.rst:325 fd0018f1ecf249598ea84f0c89345276 +msgid "" +"|commands| All :class:`BadArgument` exceptions from the built-in " +"converters now raise concrete exceptions to better tell them apart (:dpy-" +"issue:`5748`)" +msgstr "" + +#: ../../old_changelog.rst:326 ../../old_changelog.rst:354 +#: 090948d9adb04e6d9f49c1bd6de23a65 4ae78861471e4898be05b97f358820b0 +msgid "" +"|tasks| Lazily fetch the event loop to prevent surprises when changing " +"event loop policy (:dpy-issue:`5808`)" +msgstr "" + +#: ../../old_changelog.rst:331 033fe6a2b5f746c2852bb7d920ccd40d +msgid "v1.4.2" +msgstr "" + +#: ../../old_changelog.rst:333 acd09dc0788248c78f3b8710f895df5d +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "" + +#: ../../old_changelog.rst:359 ecd8be61f7374c9792ac2215ceeed38c +msgid "v1.4.1" +msgstr "" + +#: ../../old_changelog.rst:364 b1f8498cf82f4210a828c8ce83f34f49 +msgid "" +"Properly terminate the connection when :meth:`Client.close` is called " +"(:dpy-issue:`5207`)" +msgstr "" + +#: ../../old_changelog.rst:365 166552fd8c854e6db3729c8ac07bf9f4 +msgid "" +"Fix error being raised when clearing embed author or image when it was " +"already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "" + +#: ../../old_changelog.rst:366 e9f4a3a3be194fedbe32bd94edfc274c +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "" + +#: ../../old_changelog.rst:371 29499153bfa44529b388e924c3e35752 +msgid "v1.4.0" +msgstr "" + +#: ../../old_changelog.rst:373 36f10aae7b534b2c917cf9e84e44e9e8 +msgid "" +"Another version with a long development time. Features like Intents are " +"slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "" + +#: ../../old_changelog.rst:378 e1aab67a429f4ce29c6f384b1e142f65 +msgid "" +"Add support for :class:`AllowedMentions` to have more control over what " +"gets mentioned." +msgstr "" + +#: ../../old_changelog.rst:379 ad3114f5c85b4b8bbdcd4cb1d13e96a5 +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "" + +#: ../../old_changelog.rst:380 d06782ffb1514f8a8d98c03346204e64 +msgid "" +"This can also be set on a per message basis via " +":meth:`abc.Messageable.send`" +msgstr "" + +#: ../../old_changelog.rst:382 dbdf73c2aa46481789f70a7cbc01a923 +msgid "" +":class:`AutoShardedClient` has been completely redesigned from the ground" +" up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr "" + +#: ../../old_changelog.rst:383 96f37c68a624441e9309f88ab5f534aa +msgid "" +"Add :class:`ShardInfo` which allows fetching specific information about a" +" shard." +msgstr "" + +#: ../../old_changelog.rst:384 46f506fad9c648458b50eba46a1f110a +msgid "" +"The :class:`ShardInfo` allows for reconnecting and disconnecting of a " +"specific shard as well." +msgstr "" + +#: ../../old_changelog.rst:385 a811e1c54bd941c1b27efe7f3383bfc1 +msgid "" +"Add :meth:`AutoShardedClient.get_shard` and " +":attr:`AutoShardedClient.shards` to get information about shards." +msgstr "" + +#: ../../old_changelog.rst:386 f5c40023553848668f6f445e7c2d024c +msgid "" +"Rework the entire connection flow to better facilitate the ``IDENTIFY`` " +"rate limits." +msgstr "" + +#: ../../old_changelog.rst:387 bea86a6578ae438cb36217e092c606e0 +msgid "" +"Add a hook :meth:`Client.before_identify_hook` to have better control " +"over what happens before an ``IDENTIFY`` is done." +msgstr "" + +#: ../../old_changelog.rst:388 1964754bcbfb4fd3a7b8862154346b51 +msgid "" +"Add more shard related events such as :func:`on_shard_connect`, " +":func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "" + +#: ../../old_changelog.rst:390 b171f740fdf04ad68b61129a900ef24c +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "" + +#: ../../old_changelog.rst:391 81f61496186241f2844dc1b0ff8c8c4e +msgid "This adds :class:`Template` to read a template's information." +msgstr "" + +#: ../../old_changelog.rst:392 f9851cb9d0114aabb6785ddd9e7bdb32 +msgid "" +":meth:`Client.fetch_template` can be used to fetch a template's " +"information from the API." +msgstr "" + +#: ../../old_changelog.rst:393 97faa677b970448e86f167b5ed81de11 +msgid "" +":meth:`Client.create_guild` can now take an optional template to base the" +" creation from." +msgstr "" + +#: ../../old_changelog.rst:394 ec29d1106c08437ca9cfce3d5d13fb3b +msgid "" +"Note that fetching a guild's template is currently restricted for bot " +"accounts." +msgstr "" + +#: ../../old_changelog.rst:396 c1e6e4b023734d0191da0a5c15900143 +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "" + +#: ../../old_changelog.rst:397 0e71c3d54bf64299a35f05a8e693ae24 +msgid ":class:`Integration` is used to read integration information." +msgstr "" + +#: ../../old_changelog.rst:398 fc7ff73ee2af4046a4665f5fc77796e9 +msgid "" +":class:`IntegrationAccount` is used to read integration account " +"information." +msgstr "" + +#: ../../old_changelog.rst:399 7e2eb62f1c264d6891ceb855d4591dbc +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr "" + +#: ../../old_changelog.rst:400 bfa5a4a346624ca79e54d3642d01bb5c +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr "" + +#: ../../old_changelog.rst:401 a86a823956254da4b3b49a4c51004e95 +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr "" + +#: ../../old_changelog.rst:402 81278710074e4a90a19dfe08c9e09b2c +msgid ":meth:`Integration.delete` will delete an integration." +msgstr "" + +#: ../../old_changelog.rst:403 bb332103d9ad4de7896c75c4f2d1edee +msgid ":meth:`Integration.sync` will sync an integration." +msgstr "" + +#: ../../old_changelog.rst:404 f560a2e6b52c4de0929759c11f5e0979 +msgid "There is currently no support in the audit log for this." +msgstr "" + +#: ../../old_changelog.rst:406 c1c8c4eae418422eb3dc6dde96d640e9 +msgid "" +"Add an alias for :attr:`VerificationLevel.extreme` under " +":attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "" + +#: ../../old_changelog.rst:407 cd8a55de2dd449698d0ad31ef8ccb437 +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "" + +#: ../../old_changelog.rst:408 eb62216524a64245ac23e0629b972af4 +msgid "" +"Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency`" +" (:dpy-issue:`2535`)" +msgstr "" + +#: ../../old_changelog.rst:409 039a71ed6eb34a948b59d222a94b32cb +msgid "" +"Add ``use_cached`` and ``spoiler`` parameters to " +":meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "" + +#: ../../old_changelog.rst:410 f0bd2c690f1742bba6462fdc4463fe42 +msgid "" +"Add ``position`` parameter support to :meth:`Guild.create_category` " +"(:dpy-issue:`2623`)" +msgstr "" + +#: ../../old_changelog.rst:411 d4758050bc2645fb8c70ea8b1afa8c3f +msgid "" +"Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-" +"issue:`4057`)" +msgstr "" + +#: ../../old_changelog.rst:412 c08fbae6ca0948f18ffe72ea22e53ebd +msgid "" +"Add :meth:`Embed.remove_author` to clear author information from an embed" +" (:dpy-issue:`4068`)" +msgstr "" + +#: ../../old_changelog.rst:413 234a8225b8074e1f83c34d9083c5b753 +msgid "" +"Add the ability to clear images and thumbnails in embeds using " +":attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "" + +#: ../../old_changelog.rst:414 f3b7e6e6b34444f4a332e9f11b67dd70 +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "" + +#: ../../old_changelog.rst:415 5f219d25bbce4f43a26882f4829d5cd7 +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "" + +#: ../../old_changelog.rst:416 e473f80e237243b6b58aa6a0ace7a203 +msgid "" +"Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses " +"to control timeouts when the ``GUILD_CREATE`` stream takes too long " +"(:dpy-issue:`4112`)" +msgstr "" + +#: ../../old_changelog.rst:417 e769df0c96904de1a33f7a5f1c2bc25b +msgid "" +"Add support for public user flags via :attr:`User.public_flags` and " +":class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "" + +#: ../../old_changelog.rst:418 d1226b31f9d044e2bc454e19b6390d94 +msgid "" +"Allow changing of channel types via :meth:`TextChannel.edit` to and from " +"a news channel (:dpy-issue:`4121`)" +msgstr "" + +#: ../../old_changelog.rst:419 15224824df754488b5da3a5364f6884f +msgid "" +"Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a " +"single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "" + +#: ../../old_changelog.rst:420 eb43cff3360b4d93a8c0e75b17bc7914 +msgid "" +"Add :meth:`Guild.change_voice_state` to change your voice state in a " +"guild (:dpy-issue:`5088`)" +msgstr "" + +#: ../../old_changelog.rst:421 1079cadf86634cfda77479438891a867 +msgid "" +"Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the " +"invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "" + +#: ../../old_changelog.rst:422 ca6f6d68f19e4b839a2ab54b42c82ae8 +msgid "" +"Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format``" +" for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "" + +#: ../../old_changelog.rst:423 caf2ddceb3b048579d1d0103efe59d0b +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "" + +#: ../../old_changelog.rst:424 455fce753998444894fd03d989221870 +msgid "" +"Add support for pruning members by roles in :meth:`Guild.prune_members` " +"(:dpy-issue:`4043`)" +msgstr "" + +#: ../../old_changelog.rst:425 492a3ff96db34055ab5ef8db9d7aa0b3 +msgid "" +"|commands| Implement :func:`~ext.commands.before_invoke` and " +":func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-" +"issue:`2502`)" +msgstr "" + +#: ../../old_changelog.rst:426 b0afabd305984420b30a41250862de60 +msgid "" +"|commands| Add a way to retrieve ``retry_after`` from a cooldown in a " +"command via :meth:`Command.get_cooldown_retry_after " +"<.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "" + +#: ../../old_changelog.rst:427 e7a39d7fd6b84ef3be0cc1a9274bfb96 +msgid "" +"|commands| Add a way to dynamically add and remove checks from a " +":class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "" + +#: ../../old_changelog.rst:428 9551966f0b6b4b28b4ecb97a1451bdf5 +msgid "" +"|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method " +"to the task objects (:dpy-issue:`2540`)" +msgstr "" + +#: ../../old_changelog.rst:429 f389ab47cdfd47d798d8b37185fc49a0 +msgid "" +"|tasks| Allow usage of custom error handlers similar to the command " +"extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` " +"decorator (:dpy-issue:`2621`)" +msgstr "" + +#: ../../old_changelog.rst:435 c36502f015ad41568692c520d61ca1ae +msgid "" +"Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-" +"issue:`4015`, :dpy-issue:`4016`)" +msgstr "" + +#: ../../old_changelog.rst:436 e30308967add451eb9baa32dd3f6eb23 +msgid "" +"Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if " +"``around`` is passed (:dpy-issue:`4019`)" +msgstr "" + +#: ../../old_changelog.rst:437 61ed117064c447c7a073299cbbaa6a8b +msgid "" +"Fix :attr:`Guild.member_count` not updating in certain cases when a " +"member has left the guild (:dpy-issue:`4021`)" +msgstr "" + +#: ../../old_changelog.rst:438 4cc3e7b4c70e4318ad4e70383b01efdf +msgid "" +"Fix the type of :attr:`Object.id` not being validated. For backwards " +"compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-" +"issue:`4002`)" +msgstr "" + +#: ../../old_changelog.rst:439 3c22f73ec818468eb2d17ca5907b5134 +msgid "" +"Fix :meth:`Guild.edit` not allowing editing of notification settings " +"(:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "" + +#: ../../old_changelog.rst:440 65f57a68db644466bdc9e78e24c5e0b6 +msgid "" +"Fix crash when the guild widget contains channels that aren't in the " +"payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "" + +#: ../../old_changelog.rst:441 bc0fef5abc41480e916541b2d5a928ea +msgid "" +"Close ffmpeg stdin handling from spawned processes with " +":class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "" + +#: ../../old_changelog.rst:442 5c8a8eb5bcb84681afae247547662292 +msgid "" +"Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-" +"issue:`4206`, :dpy-issue:`4207`)" +msgstr "" + +#: ../../old_changelog.rst:443 896991c98dbe4c8ea001881a52fe6ed2 +msgid "" +"Fix reconnect loop due to failed handshake on region change (:dpy-" +"issue:`4210`, :dpy-issue:`3996`)" +msgstr "" + +#: ../../old_changelog.rst:444 06aba689796e43f9bd626e060d7a0c2b +msgid "" +"Fix :meth:`Guild.by_category` not returning empty categories (:dpy-" +"issue:`4186`)" +msgstr "" + +#: ../../old_changelog.rst:445 adf9c5dfaf5f4c1da05edc7a0c233431 +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "" + +#: ../../old_changelog.rst:446 6251bac44c604c9892d13c7ef415983d +msgid "" +"Fix a crash when an incomplete guild object is used when fetching " +"reaction information (:dpy-issue:`5181`)" +msgstr "" + +#: ../../old_changelog.rst:447 114807e8b60c4ab98e3ec6e0517a08a8 +msgid "" +"Fix a timeout issue when fetching members using " +":meth:`Guild.query_members`" +msgstr "" + +#: ../../old_changelog.rst:448 ab2cedd01cc64939aca8c9d9d1c858ea +msgid "" +"Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-" +"issue:`5191`)" +msgstr "" + +#: ../../old_changelog.rst:449 992b675d138e40d48549f9e054fb37ad +msgid "" +"Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-" +"issue:`4153`, :dpy-issue:`4152`)" +msgstr "" + +#: ../../old_changelog.rst:450 3fbabe76f198438686c278bf714d8afc +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "" + +#: ../../old_changelog.rst:451 0824b83c8a7141138ed5ba9133150e03 +msgid "" +"|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` " +"is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-" +"issue:`2253`, :dpy-issue:`5068`)" +msgstr "" + +#: ../../old_changelog.rst:452 52c5a989164a43c28b39046c79ba1e95 +msgid "" +"|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no" +" longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "" + +#: ../../old_changelog.rst:453 cbd274196bba44189344f78bc604d638 +msgid "" +"|commands| Fix regex characters not being escaped in " +":attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>`" +" (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "" + +#: ../../old_changelog.rst:454 ee1c0df31a834546bb907abe74310265 +msgid "" +"|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` " +"from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "" + +#: ../../old_changelog.rst:455 21062660552d482e9794d4b19d8a22c0 +msgid "" +"|commands| Fix issue with :attr:`Context.subcommand_passed " +"<.ext.commands.Context.subcommand_passed>` not functioning as expected " +"(:dpy-issue:`5198`)" +msgstr "" + +#: ../../old_changelog.rst:456 5068af443e1344bfb7cb3ae05aa9a7ee +msgid "" +"|tasks| Task objects are no longer stored globally so two class instances" +" can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "" + +#: ../../old_changelog.rst:457 6730fbacf35b42fda9028f1908c9e62d +msgid "" +"|tasks| Allow cancelling the loop within :meth:`before_loop " +"<.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "" + +#: ../../old_changelog.rst:463 b8cad1bdeea94d40980d3b5877e88912 +msgid "" +"The :attr:`Member.roles` cache introduced in v1.3 was reverted due to " +"issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "" + +#: ../../old_changelog.rst:464 2ccf186629b245aab640745b86c0b8a0 +msgid "" +":class:`Webhook` objects are now comparable and hashable (:dpy-" +"issue:`4182`)" +msgstr "" + +#: ../../old_changelog.rst:465 bc3f1514d06e4ffa82f5958440014458 +msgid "" +"Some more API requests got a ``reason`` parameter for audit logs (:dpy-" +"issue:`5086`)" +msgstr "" + +#: ../../old_changelog.rst:466 420f662046664e3c955aa818b7e812f0 +msgid ":meth:`TextChannel.follow`" +msgstr "" + +#: ../../old_changelog.rst:467 95dde2dfd9a14a6eb12c6f7bb322987a +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr "" + +#: ../../old_changelog.rst:468 dc69c22bc09149729c7646d3e156bea0 +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr "" + +#: ../../old_changelog.rst:470 9e322ad210b943b4bef06ecef48a9d40 +msgid "" +"For performance reasons ``websockets`` has been dropped in favour of " +"``aiohttp.ws``." +msgstr "" + +#: ../../old_changelog.rst:471 e47d6e04571341239630b3c4152906b9 +msgid "" +"The blocking logging message now shows the stack trace of where the main " +"thread was blocking" +msgstr "" + +#: ../../old_changelog.rst:472 b220dd6ab8614755a7bb3c496a65e817 +msgid "" +"The domain name was changed from ``discordapp.com`` to ``discord.com`` to" +" prepare for the required domain migration" +msgstr "" + +#: ../../old_changelog.rst:473 f2d9b55aea0c4a8d94d05409d9956864 +msgid "" +"Reduce memory usage when reconnecting due to stale references being held " +"by the message cache (:dpy-issue:`5133`)" +msgstr "" + +#: ../../old_changelog.rst:474 aa1ce06a0a1b45058956deb9e7e9f435 +#, python-format +msgid "" +"Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many" +" temporary objects (20-32% savings)." +msgstr "" + +#: ../../old_changelog.rst:475 da36bfb601384d02aa09c58ae71a1ddd +msgid "" +"|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of" +" :exc:`ClientException` when a duplicate error is registered (:dpy-" +"issue:`4217`)" +msgstr "" + +#: ../../old_changelog.rst:476 96474a8793a5431d8f05525da921444a +msgid "" +"|tasks| No longer handle :exc:`HTTPException` by default in the task " +"reconnect loop (:dpy-issue:`5193`)" +msgstr "" + +#: ../../old_changelog.rst:481 3f9d816c70db4a8cac8f50f986ea272b +msgid "v1.3.4" +msgstr "" + +#: ../../old_changelog.rst:486 115d2cccd4bf4d719c0494b0bc53fa3a +msgid "" +"Fix an issue with channel overwrites causing multiple issues including " +"crashes (:dpy-issue:`5109`)" +msgstr "" + +#: ../../old_changelog.rst:491 9e212adc90f74e0ca5276d672df60e19 +msgid "v1.3.3" +msgstr "" + +#: ../../old_changelog.rst:496 96b3769677394f6bbb5f9309011e3f39 +msgid "Change default WS close to 4000 instead of 1000." +msgstr "" + +#: ../../old_changelog.rst:497 942953724fa34529a1b25ae7973280d6 +msgid "" +"The previous close code caused sessions to be invalidated at a higher " +"frequency than desired." +msgstr "" + +#: ../../old_changelog.rst:499 8696fa14b4bf4ed8bbda9716eda490c3 +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "" + +#: ../../old_changelog.rst:504 49b2fb2a70564e5f96322b3dbc59093c +msgid "v1.3.2" +msgstr "" + +#: ../../old_changelog.rst:506 e633fa6bc66c46fba0bf95d625f0a1c9 +msgid "Another minor bug fix release." +msgstr "" + +#: ../../old_changelog.rst:511 b1a8cbd06a6345db970bd23128ecf3eb +msgid "" +"Higher the wait time during the ``GUILD_CREATE`` stream before " +"``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "" + +#: ../../old_changelog.rst:512 0875870fba694dd4a10bc6b1bd3030eb +msgid "" +":func:`on_voice_state_update` now uses the inner ``member`` payload which" +" should make it more reliable." +msgstr "" + +#: ../../old_changelog.rst:513 9513995a528f4cd2a3b151fee8bd9c72 +msgid "" +"Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-" +"issue:`2544`)" +msgstr "" + +#: ../../old_changelog.rst:514 3bfca67602ea47c3bf1994ea6c6e2f54 +msgid "" +"Fix crashes if :attr:`Message.guild` is :class:`Object` instead of " +":class:`Guild`." +msgstr "" + +#: ../../old_changelog.rst:515 f3d21c46aa5d4c35a8d69b69aa64e8a7 +msgid "" +"Fix :meth:`Webhook.send` returning an empty string instead of ``None`` " +"when ``wait=False``." +msgstr "" + +#: ../../old_changelog.rst:516 a152a85726ae4833a9a158e081906066 +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "" + +#: ../../old_changelog.rst:517 c414ff9f9afb45b4bac514eabfe33ec9 +msgid "" +"|commands| Passing invalid permissions to permission related checks now " +"raises ``TypeError``." +msgstr "" + +#: ../../old_changelog.rst:522 73688aae90b74dc6992957cda76afb91 +msgid "v1.3.1" +msgstr "" + +#: ../../old_changelog.rst:524 fb7259a89de141518940ab53b7118c78 +msgid "Minor bug fix release." +msgstr "" + +#: ../../old_changelog.rst:529 1788832890e5432491707257ba361a1d +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "" + +#: ../../old_changelog.rst:530 7732c78edba24e769c63373ca655040c +msgid "" +"Fix the channel returned from :meth:`Client.fetch_channel` raising when " +"sending messages. (:dpy-issue:`2531`)" +msgstr "" + +#: ../../old_changelog.rst:535 119c187b71124bf98999f351e134e1fc +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "" + +#: ../../old_changelog.rst:536 ce43892559af4e9d9053f2a27444d1b1 +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "" + +#: ../../old_changelog.rst:541 ef6b11460b9744f2b62136f8ffaaa66a +msgid "v1.3.0" +msgstr "" + +#: ../../old_changelog.rst:543 87ad557ce0c24885bdf43fc45061284c +msgid "" +"This version comes with a lot of bug fixes and new features. It's been in" +" development for a lot longer than was anticipated!" +msgstr "" + +#: ../../old_changelog.rst:548 aec2b98070ce401e8b1ca012e1bf6e45 +msgid "" +"Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. " +"(:dpy-issue:`2204`)" +msgstr "" + +#: ../../old_changelog.rst:549 820ea45ae93c4ba7b726d3bd44d84e75 +msgid "" +"Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-" +"issue:`2208`)" +msgstr "" + +#: ../../old_changelog.rst:550 f4c00a233af340fcb0085afd7d1f51a9 +msgid "" +"Add support for teams via :class:`Team` when fetching with " +":meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "" + +#: ../../old_changelog.rst:551 1acf50835daa4c9d9a55815d3b08aed7 +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "" + +#: ../../old_changelog.rst:552 9259271a4d244d13b437f90beafd4e78 +msgid "" +"Add support for guild subscriptions. See the :class:`Client` " +"documentation for more details." +msgstr "" + +#: ../../old_changelog.rst:553 df5c9d0093004697a88e8a558b2e6e93 +msgid "" +"Add :attr:`VoiceChannel.voice_states` to get voice states without relying" +" on member cache." +msgstr "" + +#: ../../old_changelog.rst:554 40fe9267ccd2476ba620b3ca5f262197 +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "" + +#: ../../old_changelog.rst:555 42cb1397d3ac435fa5ed3b8ea81ad549 +msgid "" +"Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-" +"issue:`2258`)" +msgstr "" + +#: ../../old_changelog.rst:556 72379b04191642b3b238b05b7bb80548 +msgid "" +"Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs " +"during raw message updates. (:dpy-issue:`2301`)" +msgstr "" + +#: ../../old_changelog.rst:557 ed8974e34b6443dfa915e4490667e4b3 +msgid "" +"Add :attr:`RawReactionActionEvent.event_type` to disambiguate between " +"reaction addition and removal in reaction events." +msgstr "" + +#: ../../old_changelog.rst:558 0d950e8c55dd4f8586e0127ea8115e7e +msgid "" +"Add :attr:`abc.GuildChannel.permissions_synced` to query whether " +"permissions are synced with the category. (:dpy-issue:`2300`, :dpy-" +"issue:`2324`)" +msgstr "" + +#: ../../old_changelog.rst:559 0e5cb164e2ac4509b46c6457ce34548c +msgid "" +"Add :attr:`MessageType.channel_follow_add` message type for announcement " +"channels being followed. (:dpy-issue:`2314`)" +msgstr "" + +#: ../../old_changelog.rst:560 6c1eac3232f14f6c9019ab7d740eb64d +msgid "" +"Add :meth:`Message.is_system` to allow for quickly filtering through " +"system messages." +msgstr "" + +#: ../../old_changelog.rst:561 6583b46d10c949c29acb8848850598e8 +msgid "" +"Add :attr:`VoiceState.self_stream` to indicate whether someone is " +"streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "" + +#: ../../old_changelog.rst:562 62cc6137853f476ea15a032b8c8519b5 +msgid "" +"Add :meth:`Emoji.is_usable` to check if the client user can use an emoji." +" (:dpy-issue:`2349`)" +msgstr "" + +#: ../../old_changelog.rst:563 94d9d687d2da4e3b87fdfcb9fcd49664 +msgid "" +"Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-" +"issue:`2358`, :dpy-issue:`2490`)" +msgstr "" + +#: ../../old_changelog.rst:564 31fdead7c6e8472989a0507d527e2932 +msgid "" +"Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-" +"issue:`2367`)" +msgstr "" + +#: ../../old_changelog.rst:565 5e307f47cbc04ed29b2209318a4bac63 +msgid "" +"Add :attr:`Permissions.view_guild_insights` permission. (:dpy-" +"issue:`2415`)" +msgstr "" + +#: ../../old_changelog.rst:566 dec4a576e7e5419f82e093c7ec3f77c1 +msgid "" +"Add support for new audit log types. See :ref:`discord-api-audit-logs` " +"for more information. (:dpy-issue:`2427`)" +msgstr "" + +#: ../../old_changelog.rst:567 9ad042fd34ed4df5b81eaad3ca88574e +msgid "Note that integration support is not finalized." +msgstr "" + +#: ../../old_changelog.rst:569 3390e29cc66644e1a1a7e1df6f9367c5 +msgid "" +"Add :attr:`Webhook.type` to query the type of webhook " +"(:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "" + +#: ../../old_changelog.rst:570 3f3f481b58324d67a01ebe8d09a38658 +msgid "" +"Allow bulk editing of channel overwrites through " +":meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "" + +#: ../../old_changelog.rst:571 7aa7360276774dcb9c5d42f0e008d0ed +msgid "" +"Add :class:`Activity.created_at` to see when an activity was started. " +"(:dpy-issue:`2446`)" +msgstr "" + +#: ../../old_changelog.rst:572 2d05339f79e64279a5ec781e0560da3e +msgid "" +"Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. " +"(:dpy-issue:`2463`)" +msgstr "" + +#: ../../old_changelog.rst:573 f3dabdcb056142ee9f4d72efe16b599f +msgid "" +"Add :attr:`RawReactionActionEvent.member` to get the member who did the " +"reaction. (:dpy-issue:`2443`)" +msgstr "" + +#: ../../old_changelog.rst:574 341e2ad248ad4ea0bb805dfd999fcd4a +msgid "" +"Add support for new YouTube streaming via :attr:`Streaming.platform` and " +":attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "" + +#: ../../old_changelog.rst:575 b767a74f1cd74a2782b619d528041130 +msgid "" +"Add :attr:`Guild.discovery_splash_url` to get the discovery splash image " +"asset. (:dpy-issue:`2482`)" +msgstr "" + +#: ../../old_changelog.rst:576 a85ffc6ba20f41808b72c7493ec31e68 +msgid "" +"Add :attr:`Guild.rules_channel` to get the rules channel of public " +"guilds. (:dpy-issue:`2482`)" +msgstr "" + +#: ../../old_changelog.rst:577 6dc312fd30bd447e8842d34cc7d6d8a2 +msgid "" +"It should be noted that this feature is restricted to those who are " +"either in Server Discovery or planning to be there." +msgstr "" + +#: ../../old_changelog.rst:579 2688d9d068b241d4b680b0b5f47bb36d +msgid "" +"Add support for message flags via :attr:`Message.flags` and " +":class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "" + +#: ../../old_changelog.rst:580 878aec6500b346dda36eb646a08ce091 +msgid "" +"Add :attr:`User.system` and :attr:`Profile.system` to know whether a user" +" is an official Discord Trust and Safety account." +msgstr "" + +#: ../../old_changelog.rst:581 ccb2835d76a542bbbffee1e2b7ba0be9 +msgid "" +"Add :attr:`Profile.team_user` to check whether a user is a member of a " +"team." +msgstr "" + +#: ../../old_changelog.rst:582 7a8afdb6988d46028d717bed39558c6a +msgid "" +"Add :meth:`Attachment.to_file` to easily convert attachments to " +":class:`File` for sending." +msgstr "" + +#: ../../old_changelog.rst:583 67f65835c49c4cb288694b65171c8420 +msgid "" +"Add certain aliases to :class:`Permissions` to match the UI better. " +"(:dpy-issue:`2496`)" +msgstr "" + +#: ../../old_changelog.rst:584 72dc3853313b490daa47774a7abb1d77 +msgid ":attr:`Permissions.manage_permissions`" +msgstr "" + +#: ../../old_changelog.rst:585 1b59de54f4a54fa7a0d4dedfe39d29d3 +msgid ":attr:`Permissions.view_channel`" +msgstr "" + +#: ../../old_changelog.rst:586 69de6d9d1c0b43bd94b03da2c1f5d5ee +msgid ":attr:`Permissions.use_external_emojis`" +msgstr "" + +#: ../../old_changelog.rst:588 bcfef40f9a7842e680666eed8587d004 +msgid "" +"Add support for passing keyword arguments when creating " +":class:`Permissions`." +msgstr "" + +#: ../../old_changelog.rst:589 1a3a71d81ec84b11bca519c67ce653a9 +msgid "" +"Add support for custom activities via :class:`CustomActivity`. (:dpy-" +"issue:`2400`)" +msgstr "" + +#: ../../old_changelog.rst:590 a4171f744d8d4df8a55fb17434885c93 +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "" + +#: ../../old_changelog.rst:592 96849cffb1bb45728aacf0318bb1f3d5 +msgid "" +"Add support for :func:`on_invite_create` and :func:`on_invite_delete` " +"events." +msgstr "" + +#: ../../old_changelog.rst:593 48089f96c59e43d6bde2e8e9957001fa +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "" + +#: ../../old_changelog.rst:594 632244af79b34909bae166762c227acf +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr "" + +#: ../../old_changelog.rst:595 42938be4bae043348325c04520fa440b +msgid "" +":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` " +"events." +msgstr "" + +#: ../../old_changelog.rst:597 75fb67b0529b45a494728d4e50adcb6d +msgid "" +"Add :func:`utils.sleep_until` helper to sleep until a specific datetime. " +"(:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "" + +#: ../../old_changelog.rst:598 0249ad2dd7254e5abbf6ee39d396afb7 +msgid "" +"|commands| Add support for teams and :attr:`Bot.owner_ids " +"<.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-" +"issue:`2239`)" +msgstr "" + +#: ../../old_changelog.rst:599 e8e5195b30cb44a38fce09912a709a63 +msgid "" +"|commands| Add new :attr:`BucketType.role " +"<.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "" + +#: ../../old_changelog.rst:600 d92c3af3b4594da58fd1e4f5903d04a0 +msgid "" +"|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` " +"property publicly. (:dpy-issue:`2360`)" +msgstr "" + +#: ../../old_changelog.rst:601 3447dec897544d1eb0752f24736dbec3 +msgid "" +"|commands| Add non-decorator interface for adding checks to commands via " +":meth:`Command.add_check <.ext.commands.Command.add_check>` and " +":meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-" +"issue:`2411`)" +msgstr "" + +#: ../../old_changelog.rst:602 26adbcbe9c9a466eb657b4130478bf3b +msgid "" +"|commands| Add :func:`has_guild_permissions " +"<.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "" + +#: ../../old_changelog.rst:603 cf3f836f411c4075806478bf81367997 +msgid "" +"|commands| Add :func:`bot_has_guild_permissions " +"<.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "" + +#: ../../old_changelog.rst:604 92a2afd0235d4c4795512f9e78876cbd +msgid "" +"|commands| Add ``predicate`` attribute to checks decorated with " +":func:`~.ext.commands.check`." +msgstr "" + +#: ../../old_changelog.rst:605 1464ac88f01e41519f1e26427404337e +msgid "" +"|commands| Add :func:`~.ext.commands.check_any` check to logical OR " +"multiple checks." +msgstr "" + +#: ../../old_changelog.rst:606 ea0ee3d087de4b19a1480eeba4c1cbf0 +msgid "" +"|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a " +"certain amount of users to use a command concurrently before waiting or " +"erroring." +msgstr "" + +#: ../../old_changelog.rst:607 cd207ea2fa444c8bb6df15e75bb464c6 +msgid "" +"|commands| Add support for calling a :class:`~.ext.commands.Command` as a" +" regular function." +msgstr "" + +#: ../../old_changelog.rst:608 0176fb8ca8da4ae49df0066c2259639d +msgid "" +"|tasks| :meth:`Loop.add_exception_type " +"<.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to " +"be set. (:dpy-issue:`2333`)" +msgstr "" + +#: ../../old_changelog.rst:609 dec5bd3173924b8c8791325d5a6b520a +msgid "" +"|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` " +"property. (:dpy-issue:`2305`)" +msgstr "" + +#: ../../old_changelog.rst:614 e00711a7903147f8a4bdb888b4309f0e +msgid "" +"Fix issue with permission resolution sometimes failing for guilds with no" +" owner." +msgstr "" + +#: ../../old_changelog.rst:615 af1470c4fd594491a2691eff3036b15d +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "" + +#: ../../old_changelog.rst:616 e7a27cebaf3c4cdebc99422fd53ea313 +msgid "" +"Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. " +"(:dpy-issue:`2368`)" +msgstr "" + +#: ../../old_changelog.rst:617 1380092aff0a4028b0b670b759dedc34 +msgid "" +"Fix issue with webhooks not re-raising after retries have run out. (:dpy-" +"issue:`2272`, :dpy-issue:`2380`)" +msgstr "" + +#: ../../old_changelog.rst:618 dd8fdb4c46894258b8221c2301d13f9f +msgid "" +"Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-" +"issue:`2420`)" +msgstr "" + +#: ../../old_changelog.rst:619 fdf595c42db94855a7f8af6853af630e +msgid "" +"Fix issue with ports being read in little endian when they should be big " +"endian in voice connections. (:dpy-issue:`2470`)" +msgstr "" + +#: ../../old_changelog.rst:620 1d13b9e881944ab4a495c23dc3f758b1 +msgid "" +"Fix :meth:`Member.mentioned_in` not taking into consideration the " +"message's guild." +msgstr "" + +#: ../../old_changelog.rst:621 69b4c0416c7d463bbb78f21f2d5892c9 +msgid "" +"Fix bug with moving channels when there are gaps in positions due to " +"channel deletion and creation." +msgstr "" + +#: ../../old_changelog.rst:622 31c9120e4b424b23b5a66ed2e1c95f4e +msgid "" +"Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` " +"is disabled. (:dpy-issue:`2504`)" +msgstr "" + +#: ../../old_changelog.rst:623 4c641a9e0d9646b5ad775f6256f23a25 +msgid "" +"Fix issue with large sharded bots taking too long to actually dispatch " +":func:`on_ready`." +msgstr "" + +#: ../../old_changelog.rst:624 e06f6e77f0b1430eaaecc014a836da6d +msgid "" +"Fix issue with fetching group DM based invites in " +":meth:`Client.fetch_invite`." +msgstr "" + +#: ../../old_changelog.rst:625 857422517b2b4b41894d102a976dc047 +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "" + +#: ../../old_changelog.rst:626 9e207f5368814e4288a6e4119d5dc297 +msgid "" +"|commands| Extensions that fail internally due to ImportError will no " +"longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`," +" :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "" + +#: ../../old_changelog.rst:627 84d1874e4cee4c7f9b303e5278c1b50b +msgid "" +"|commands| Updating the :attr:`Paginator.suffix " +"<.ext.commands.Paginator.suffix>` will not cause out of date " +"calculations. (:dpy-issue:`2251`)" +msgstr "" + +#: ../../old_changelog.rst:628 a2a25fd5ddf54ff08304c4b8b0813b1c +msgid "" +"|commands| Allow converters from custom extension packages. (:dpy-" +"issue:`2369`, :dpy-issue:`2374`)" +msgstr "" + +#: ../../old_changelog.rst:629 3acbd2f7dd194c469a00d357419ed4c3 +msgid "" +"|commands| Fix issue with paginator prefix being ``None`` causing empty " +"pages. (:dpy-issue:`2471`)" +msgstr "" + +#: ../../old_changelog.rst:630 3ff6e7201a974e6eaffb391ab860730d +msgid "" +"|commands| :class:`~.commands.Greedy` now ignores parsing errors rather " +"than propagating them." +msgstr "" + +#: ../../old_changelog.rst:631 3e28fd66ff7e4bd3b1c292f90f0744d7 +msgid "" +"|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now " +"checks whether a command is disabled." +msgstr "" + +#: ../../old_changelog.rst:632 528ebdf1a85049beb1234830e27cac14 +msgid "" +"|commands| :attr:`HelpCommand.clean_prefix " +"<.ext.commands.HelpCommand.clean_prefix>` now takes into consideration " +"nickname mentions. (:dpy-issue:`2489`)" +msgstr "" + +#: ../../old_changelog.rst:633 f834745510e24753a8617ccae5bbe89d +msgid "" +"|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` " +"now properly propagates to the :meth:`HelpCommand.on_help_command_error " +"<.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "" + +#: ../../old_changelog.rst:638 d15af8d97136478a821a5156cee0fc2c +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "" + +#: ../../old_changelog.rst:639 51459269b79f432cb6f874ede7ffcc1e +msgid "" +"Bump the dependency of ``websockets`` to 8.0 for those who can use it. " +"(:dpy-issue:`2453`)" +msgstr "" + +#: ../../old_changelog.rst:640 4b86965130d34abdb3aeb31b6e530a76 +msgid "" +"Due to Discord providing :class:`Member` data in mentions, users will now" +" be upgraded to :class:`Member` more often if mentioned." +msgstr "" + +#: ../../old_changelog.rst:641 a20556f4b00f4c64a9bf20b596ea3f31 +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr "" + +#: ../../old_changelog.rst:642 8fdd1fdd3b86431180b62640480972d1 +msgid "" +"The message cache can now be disabled by passing ``None`` to " +"``max_messages`` in :class:`Client`." +msgstr "" + +#: ../../old_changelog.rst:643 9163af8a775746c1bf6fe13b8bcb57a7 +msgid "" +"The default message cache size has changed from 5000 to 1000 to " +"accommodate small bots." +msgstr "" + +#: ../../old_changelog.rst:644 3660b72fb04e4fed852510d1d705b550 +msgid "" +"Lower memory usage by only creating certain objects as needed in " +":class:`Role`." +msgstr "" + +#: ../../old_changelog.rst:645 fe40aee844844a3eb90f5bdc47f33b18 +msgid "" +"There is now a sleep of 5 seconds before re-IDENTIFYing during a " +"reconnect to prevent long loops of session invalidation." +msgstr "" + +#: ../../old_changelog.rst:646 88cf03e2442d4af8ae9a786809a507df +msgid "" +"The rate limiting code now uses millisecond precision to have more " +"granular rate limit handling." +msgstr "" + +#: ../../old_changelog.rst:647 9363c44d08cb418286b07eb677d89465 +msgid "" +"Along with that, the rate limiting code now uses Discord's response to " +"wait. If you need to use the system clock again for whatever reason, " +"consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "" + +#: ../../old_changelog.rst:649 7baaea1f94bf40b78621647e39ce1cea +msgid "" +"The performance of :attr:`Guild.default_role` has been improved from O(N)" +" to O(1). (:dpy-issue:`2375`)" +msgstr "" + +#: ../../old_changelog.rst:650 01555fa74acb4b1c87546bf09b15cc86 +msgid "" +"The performance of :attr:`Member.roles` has improved due to usage of " +"caching to avoid surprising performance traps." +msgstr "" + +#: ../../old_changelog.rst:651 659cb6b920e749608386e6443eba88fc +msgid "" +"The GC is manually triggered during things that cause large deallocations" +" (such as guild removal) to prevent memory fragmentation." +msgstr "" + +#: ../../old_changelog.rst:652 7c4c03b56f104130a32b4f284d22b8ac +msgid "" +"There have been many changes to the documentation for fixes both for " +"usability, correctness, and to fix some linter errors. Thanks to everyone" +" who contributed to those." +msgstr "" + +#: ../../old_changelog.rst:653 e22fffbbaab54a318b26af9e19ba64bf +msgid "" +"The loading of the opus module has been delayed which would make the " +"result of :func:`opus.is_loaded` somewhat surprising." +msgstr "" + +#: ../../old_changelog.rst:654 1152570e7c1b4aedb0b78ab5716f4d71 +msgid "" +"|commands| Usernames prefixed with @ inside DMs will properly convert " +"using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "" + +#: ../../old_changelog.rst:655 cc57562641f246f8904d772a9acc0534 +msgid "" +"|tasks| The task sleeping time will now take into consideration the " +"amount of time the task body has taken before sleeping. (:dpy-" +"issue:`2516`)" +msgstr "" + +#: ../../old_changelog.rst:660 32772be63a074f9790a3980da071a0df +msgid "v1.2.5" +msgstr "" + +#: ../../old_changelog.rst:665 4cc02c6c550d41d88b70722e41d64eb9 +msgid "" +"Fix a bug that caused crashes due to missing ``animated`` field in Emoji " +"structures in reactions." +msgstr "" + +#: ../../old_changelog.rst:670 8d35ee473cd74d738146ce2d657df952 +msgid "v1.2.4" +msgstr "" + +#: ../../old_changelog.rst:675 41d3f2674654483da67ade0a602276ee +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "" + +#: ../../old_changelog.rst:676 4f98a741acca4cc0b69676d9fa0cad61 +msgid "" +"Fix a regression where :attr:`Message.edited_at` would not update during " +"edits." +msgstr "" + +#: ../../old_changelog.rst:677 8b1a995241694488990f879a2ab530a2 +msgid "" +"Fix a crash that would trigger during message updates (GH-2265, :dpy-" +"issue:`2287`)." +msgstr "" + +#: ../../old_changelog.rst:678 ff84922259cf462092e0ba88f0dc84cc +msgid "" +"Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-" +"issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "" + +#: ../../old_changelog.rst:679 9e030c2cfc12478ead5e21db6a98de2d +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "" + +#: ../../old_changelog.rst:680 2137be9a8eb44ad2a4dffa760e0ca75b +msgid "" +"Fix issue where :attr:`Guild.premium_subscription_count` would be " +"``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "" + +#: ../../old_changelog.rst:685 82095021bdb24fc69b5efeface54533d +msgid "v1.2.3" +msgstr "" + +#: ../../old_changelog.rst:690 ec68a62956584222a654ac8c5a9f9a0e +msgid "" +"Fix an AttributeError when accessing :attr:`Member.premium_since` in " +":func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "" + +#: ../../old_changelog.rst:691 8b04ba4fa4b547f785775b36dec0dc32 +msgid "" +"Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` " +"context manager. (:dpy-issue:`2218`)" +msgstr "" + +#: ../../old_changelog.rst:692 ff4a94f8937f40c4acf04c945d980e64 +msgid "" +"Raise the max encoder bitrate to 512kbps to account for nitro boosting. " +"(:dpy-issue:`2232`)" +msgstr "" + +#: ../../old_changelog.rst:693 fc15de482fa4497384fda408ce9eb801 +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "" + +#: ../../old_changelog.rst:694 49729c6a970b43f9a2a30357e74a6089 +msgid "" +"|commands| Ensure cooldowns are properly copied when used in cog level " +"``command_attrs``." +msgstr "" + +#: ../../old_changelog.rst:699 bb0503ef74fd4792a5873fd76d5598e4 +msgid "v1.2.2" +msgstr "" + +#: ../../old_changelog.rst:704 716e108d5bf24ecf95ca6f914686e494 +msgid "" +"Audit log related attribute access have been fixed to not error out when " +"they shouldn't have." +msgstr "" + +#: ../../old_changelog.rst:709 b934da94e2344ef681e124d7d1acc9dc +msgid "v1.2.1" +msgstr "" + +#: ../../old_changelog.rst:714 5dd199bbfe5f41149d4bd595d3538b53 +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr "" + +#: ../../old_changelog.rst:715 8ff19fa9e07c40ad9f634f41bf898937 +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "" + +#: ../../old_changelog.rst:720 e6704ee9107042a08dffa820a38e14d6 +msgid "v1.2.0" +msgstr "" + +#: ../../old_changelog.rst:722 6aea4acec2754d789c4fb155029ab536 +msgid "" +"This update mainly brings performance improvements and various nitro " +"boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "" + +#: ../../old_changelog.rst:727 d535394e3da64337bf2f95f4c68328f5 +msgid "" +"Add :attr:`Guild.premium_tier` to query the guild's current nitro boost " +"level." +msgstr "" + +#: ../../old_changelog.rst:728 85c89e00a1f945e8a29d2dc681191c42 +msgid "" +"Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, " +":attr:`Guild.filesize_limit` to query the new limits of a guild when " +"taking into consideration boosting." +msgstr "" + +#: ../../old_changelog.rst:729 13bf53570ca44168ad4671112320559a +msgid "" +"Add :attr:`Guild.premium_subscription_count` to query how many members " +"are boosting a guild." +msgstr "" + +#: ../../old_changelog.rst:730 8248f8c75b7843d69b6281c6349a6b9f +msgid "" +"Add :attr:`Member.premium_since` to query since when a member has boosted" +" a guild." +msgstr "" + +#: ../../old_changelog.rst:731 d02833490c9b4a31bc76919404c42774 +msgid "" +"Add :attr:`Guild.premium_subscribers` to query all the members currently " +"boosting the guild." +msgstr "" + +#: ../../old_changelog.rst:732 e84966586c9041f38f710e179d706d7d +msgid "" +"Add :attr:`Guild.system_channel_flags` to query the settings for a " +"guild's :attr:`Guild.system_channel`." +msgstr "" + +#: ../../old_changelog.rst:733 e9f825982b3b4b4a85a97392149ef455 +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "" + +#: ../../old_changelog.rst:734 abed4b0434e14deb93b9dd7816bfe7de +msgid "" +"Add :attr:`Emoji.available` to query if an emoji can be used (within the " +"guild or otherwise)." +msgstr "" + +#: ../../old_changelog.rst:735 8496b053a08b4ac5a369cc182b2253bc +msgid "" +"Add support for animated icons in :meth:`Guild.icon_url_as` and " +":attr:`Guild.icon_url`." +msgstr "" + +#: ../../old_changelog.rst:736 5562dc76bbf64aa28462097f28ebb65c +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "" + +#: ../../old_changelog.rst:737 77e326b2fb344f3684cedea2385757f5 +msgid "" +"Add support for the various new :class:`MessageType` involving nitro " +"boosting." +msgstr "" + +#: ../../old_changelog.rst:738 8bf0910d531845a8868bee944f1a1f5d +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "" + +#: ../../old_changelog.rst:739 c421f16c853f4c87be81c7c4d285437f +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "" + +#: ../../old_changelog.rst:740 3f24421df24d43e19ef1b7e0f8e9f617 +msgid "" +"Add a ``type`` attribute for all channels to their appropriate " +":class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "" + +#: ../../old_changelog.rst:741 051a702716434442b559300f7df01184 +msgid "" +"Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. " +"(:dpy-issue:`2169`)" +msgstr "" + +#: ../../old_changelog.rst:742 cd8f8bd80eb64fe4a61bca6213a0d5ff +msgid "" +"Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-" +"issue:`2169`)" +msgstr "" + +#: ../../old_changelog.rst:743 e1bc5c5ca95b4a66a2af54d1a0c4b655 +msgid "" +"|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a" +" task rather than cancelling." +msgstr "" + +#: ../../old_changelog.rst:744 ee4c308e720548e5887f73a475ecd9b4 +msgid "" +"|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a " +"task had failed somehow." +msgstr "" + +#: ../../old_changelog.rst:745 f8b3aa35188b4b769b94b8d944acb906 +msgid "" +"|tasks| Add :meth:`Loop.change_interval " +"<.ext.tasks.Loop.change_interval>` to change the sleep interval at " +"runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "" + +#: ../../old_changelog.rst:750 8489684e1bbe452197997495a510ea3a +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "" + +#: ../../old_changelog.rst:751 09aaedd0793f4211929dfe7ee220b854 +msgid "" +"|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many " +"cases." +msgstr "" + +#: ../../old_changelog.rst:752 0ee56aac67c2489dbf094a51c5ecacb8 +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "" + +#: ../../old_changelog.rst:753 e23c198213a542dc9d721e6475e1d083 +msgid "" +"|tasks| The decorator interface now works as expected when stacking " +"(:dpy-issue:`2154`)" +msgstr "" + +#: ../../old_changelog.rst:758 f7139428b28445ef9b33ad6b98a91561 +msgid "Improve performance of all Enum related code significantly." +msgstr "" + +#: ../../old_changelog.rst:759 e2246424bcee4c34b91a3d695a728244 +msgid "" +"This was done by replacing the ``enum.Enum`` code with an API compatible " +"one." +msgstr "" + +#: ../../old_changelog.rst:760 5d0c60dee6294fd9bf9bfc4bfb24fc4a +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "" + +#: ../../old_changelog.rst:761 d19671db972b4a59bcb9bd6cdf9ebe1d +msgid "Improve performance of message creation by about 1.5x." +msgstr "" + +#: ../../old_changelog.rst:762 695b0ea2545a42dc9392a56893983afa +msgid "" +"Improve performance of message editing by about 1.5-4x depending on " +"payload size." +msgstr "" + +#: ../../old_changelog.rst:763 956196f49ddb41c0b9d766dd13e70869 +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "" + +#: ../../old_changelog.rst:764 1fb1306be3734d8a8cc9c3cbb28b1c32 +msgid "" +"Improve performance of :func:`utils.get` by around 4-6x depending on " +"usage." +msgstr "" + +#: ../../old_changelog.rst:765 57dfc225c4d747dabc04593be6a775bc +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "" + +#: ../../old_changelog.rst:766 cb65af04b4424167832f294a215a3bcb +msgid "" +"Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now " +"validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "" + +#: ../../old_changelog.rst:767 e8fd77c9bb994470be0943f0f9934948 +msgid "" +"The Discord error code is now shown in the exception message for " +":exc:`HTTPException`." +msgstr "" + +#: ../../old_changelog.rst:768 fa32af7c385f4619a38e56430455e39c +msgid "" +"Internal tasks launched by the library will now have their own custom " +"``__repr__``." +msgstr "" + +#: ../../old_changelog.rst:769 173930a6d9d7411d89750308d6063f17 +msgid "" +"All public facing types should now have a proper and more detailed " +"``__repr__``." +msgstr "" + +#: ../../old_changelog.rst:770 8d6edd72efa7463b94dd064b59aed6cd +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "" + +#: ../../old_changelog.rst:775 41ed6c2ff86942c9b2d84e519061a7f4 +msgid "v1.1.1" +msgstr "" + +#: ../../old_changelog.rst:780 3a1cca59f2a64cc8900bcacbd019e0ea +msgid "" +"Webhooks do not overwrite data on retrying their HTTP requests (:dpy-" +"issue:`2140`)" +msgstr "" + +#: ../../old_changelog.rst:785 b12f94e65c8e4ce08def9bb978c1ff3a +msgid "" +"Add back signal handling to :meth:`Client.run` due to issues some users " +"had with proper cleanup." +msgstr "" + +#: ../../old_changelog.rst:790 75aa7878d6b246e88deff82b4a20876e +msgid "v1.1.0" +msgstr "" + +#: ../../old_changelog.rst:795 8ab7c9fee26c4907b83ca46394742448 +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "" + +#: ../../old_changelog.rst:796 04b2abf983614f05a216bbd77df94480 +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "" + +#: ../../old_changelog.rst:797 9bcf0ad8d17744cca27a35403f513f68 +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "" + +#: ../../old_changelog.rst:798 b96651c7fce843fe89cb3d648ab60b59 +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "" + +#: ../../old_changelog.rst:799 2001a7e7c471414b8989d983bc72bbf4 +msgid "" +"Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` " +"(:dpy-issue:`2085`)" +msgstr "" + +#: ../../old_changelog.rst:800 1633635822854cdfa4efe0bdccebc646 +msgid "" +"Add :attr:`Client.cached_messages` attribute to fetch the message cache " +"(:dpy-issue:`2086`)" +msgstr "" + +#: ../../old_changelog.rst:801 c6827444aa8d42558a18478f91f50c8e +msgid "" +"Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-" +"issue:`2093`)" +msgstr "" + +#: ../../old_changelog.rst:802 0ed17c2355eb43409544365f442edc3f +msgid "" +"Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-" +"issue:`2094`)" +msgstr "" + +#: ../../old_changelog.rst:803 b81605c12d0b42e08ed7b601c0cc3fc5 +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "" + +#: ../../old_changelog.rst:804 2efabecec4354b3ca7c2cd82767b15fc +msgid "" +"Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-" +"issue:`2107`)" +msgstr "" + +#: ../../old_changelog.rst:805 bd0378f1e19a46bfb99e0e2c00faceb3 +msgid "" +"Add :meth:`Attachment.read` to fetch the bytes content of an attachment " +"(:dpy-issue:`2118`)" +msgstr "" + +#: ../../old_changelog.rst:806 7484b113bed844c989ae6d3d5f65d654 +msgid "" +"Add support for voice kicking by passing ``None`` to " +":meth:`Member.move_to`." +msgstr "" + +#: ../../old_changelog.rst:809 ../../old_changelog.rst:830 +#: ../../old_changelog.rst:849 353cdc2e00964c6581422a101ca734c2 +#: 35b01b73e8b7417c9e8fa9aea638facf bf8f0a7614934e239dca8a71fe39d6ec +msgid "``discord.ext.commands``" +msgstr "" + +#: ../../old_changelog.rst:811 ffd2e34478494424ac4f9327a0225566 +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "" + +#: ../../old_changelog.rst:812 6f878137716c4df285e94066ed200448 +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "" + +#: ../../old_changelog.rst:813 842f5c1614254efda86822631d02c9b7 +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "" + +#: ../../old_changelog.rst:814 9a8ef9fb89a7499ab26c19de62fba397 +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "" + +#: ../../old_changelog.rst:815 87ee843257764f64bc863742ed0773de +msgid "" +"Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-" +"issue:`2061`)" +msgstr "" + +#: ../../old_changelog.rst:816 429e9c8fbef245a1adf95b7c76946aab +msgid "" +"Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-" +"issue:`2104`)" +msgstr "" + +#: ../../old_changelog.rst:822 ebd3614bab2947c39476b6f9f0fdbb7c +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "" + +#: ../../old_changelog.rst:823 d3bc87e8e66b41ce88c83586755b025f +msgid "" +"Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for" +" keys." +msgstr "" + +#: ../../old_changelog.rst:824 6c29a5d920bf425d9e17bcd9caf6ddef +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "" + +#: ../../old_changelog.rst:825 33b74cc8d32e47d2a77a06276c2bea2e +msgid "" +"Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises " +"an error." +msgstr "" + +#: ../../old_changelog.rst:826 418b6c19665b49fa94e3aedd83f94831 +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "" + +#: ../../old_changelog.rst:827 0b53ec5cb17d4ae4af172df204660d94 +msgid "" +"Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-" +"issue:`2113`, :dpy-issue:`2117`)" +msgstr "" + +#: ../../old_changelog.rst:832 c8af3691fb4f4dd1b71fd245ac72f1b6 +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "" + +#: ../../old_changelog.rst:833 0135532f0d8d49d381044f61a378a082 +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "" + +#: ../../old_changelog.rst:834 e37f77d54e1a41f0b3886188333e173c +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "" + +#: ../../old_changelog.rst:835 59f5f9999f4f4656b23266d2eca0c22f +msgid "" +"Fix the default :func:`on_command_error` to work with new-style cogs " +"(:dpy-issue:`2094`)" +msgstr "" + +#: ../../old_changelog.rst:836 652d58ecab8b4ad7bd69e5b21a7d9e91 +msgid "" +"DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` " +"check." +msgstr "" + +#: ../../old_changelog.rst:837 a2408f1102374ce9a7900023527d6b92 +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "" + +#: ../../old_changelog.rst:838 4bb4d13b319243a0937382776d074fa6 +msgid "" +"Fix cog descriptions not showing in " +":class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "" + +#: ../../old_changelog.rst:843 0b23deb02adc4aeeb15b8200b8eee3be +msgid "" +"Improve the performance of internal enum creation in the library by about" +" 5x." +msgstr "" + +#: ../../old_changelog.rst:844 7c30dcc6e74f4dce9865b467a546eb30 +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "" + +#: ../../old_changelog.rst:845 6289d0fbbaf941f3bdaa2650470a73bb +msgid "The loop cleanup facility has been rewritten again." +msgstr "" + +#: ../../old_changelog.rst:846 de0893f387314c98b9ccf4ad70eb9111 +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "" + +#: ../../old_changelog.rst:851 1a05f8c3fd874cbbbb8ef3c9529811c2 +msgid "" +"Custom exception classes are now used for all default checks in the " +"library (:dpy-issue:`2101`)" +msgstr "" + +#: ../../old_changelog.rst:857 e31e149cda4e45a2a081bae9c2d1d5d2 +msgid "v1.0.1" +msgstr "" + +#: ../../old_changelog.rst:862 826f500ba6ac4f399260c33ef472b0a2 +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "" + +#: ../../old_changelog.rst:863 86eb7d54cc7a48f39a734633bb49f38b +msgid "" +"Fix some issues with loop cleanup that some users experienced on Linux " +"machines." +msgstr "" + +#: ../../old_changelog.rst:864 9e1dfa5c70e54aa9a27ed50e063bc55c +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "" + +#: ../../old_changelog.rst:867 f3afcd3c4aec443cb9fc3f1767d32626 +msgid "v1.0.0" +msgstr "" + +#: ../../old_changelog.rst:869 54eb6094804b480792bf4b19717bd001 +msgid "" +"The changeset for this version are too big to be listed here, for more " +"information please see :ref:`the migrating page `." +msgstr "" + +#: ../../old_changelog.rst:876 8d34ca49e72b4d94977388e0f7d158c3 +msgid "v0.16.6" +msgstr "" + +#: ../../old_changelog.rst:881 400962b603c64113a9d06058fbc73ae2 +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "" + +#: ../../old_changelog.rst:882 4b339fa4be8c453fbbc89f9b4c5071c7 +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "" + +#: ../../old_changelog.rst:883 acb73f781c9d4f7f98f2f615f1677140 +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "" + +#: ../../old_changelog.rst:884 5eb72f9c8d984c18b6a1430354385ca2 +msgid "" +"Fix race condition when pre-emptively rate limiting that caused releasing" +" an already released lock." +msgstr "" + +#: ../../old_changelog.rst:885 b1422c0d343f4a179574e6193054b6a4 +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "" + +#: ../../old_changelog.rst:890 e70e848d00374c13960322c33fde8d72 +msgid "v0.16.1" +msgstr "" + +#: ../../old_changelog.rst:892 c180cea6662a4264b588bec807112bc0 +msgid "" +"This release is just a bug fix release with some better rate limit " +"implementation." +msgstr "" + +#: ../../old_changelog.rst:897 b2cc7c3696be4b4394aabe3e142d3c77 +msgid "Servers are now properly chunked for user bots." +msgstr "" + +#: ../../old_changelog.rst:898 10c1f4d7920140e0ba562707ad569b00 +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "" + +#: ../../old_changelog.rst:899 7f2844cf578e490d8a218bd8d6fac74d +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "" + +#: ../../old_changelog.rst:900 1a8cc223d9924645ae6ff30f128b281f +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "" + +#: ../../old_changelog.rst:901 a039d224d6974fa5867fdf5681fd695d +msgid "" +"Allow falsey values in :meth:`Client.send_message` and " +":meth:`Client.send_file`." +msgstr "" + +#: ../../old_changelog.rst:906 8af330c929144bd68d1a17c75f46d3fd +msgid "v0.16.0" +msgstr "" + +#: ../../old_changelog.rst:911 8091f41711624576ad0767c2b637d63a +msgid "" +"Add :attr:`Channel.overwrites` to get all the permission overwrites of a " +"channel." +msgstr "" + +#: ../../old_changelog.rst:912 1705c9bfc0e7429eb76a0810f42ef216 +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "" + +#: ../../old_changelog.rst:917 14583ce007924f38a286e45cd3a4fb31 +msgid "" +"Timeout when waiting for offline members while triggering " +":func:`on_ready`." +msgstr "" + +#: ../../old_changelog.rst:919 15635997b0f04a77a9f3030573821172 +msgid "" +"The fact that we did not timeout caused a gigantic memory leak in the " +"library that caused thousands of duplicate :class:`Member` instances " +"causing big memory spikes." +msgstr "" + +#: ../../old_changelog.rst:922 728676a982a647c39b781c1579c17ece +msgid "Discard null sequences in the gateway." +msgstr "" + +#: ../../old_changelog.rst:924 4bdff11f2ea7495b8ec5f790251839e4 +msgid "" +"The fact these were not discarded meant that :func:`on_ready` kept being " +"called instead of :func:`on_resumed`. Since this has been corrected, in " +"most cases :func:`on_ready` will be called once or twice with " +":func:`on_resumed` being called much more often." +msgstr "" + +#: ../../old_changelog.rst:931 b5ae211062204c38a3ca1b4adf75921b +msgid "v0.15.1" +msgstr "" + +#: ../../old_changelog.rst:933 1b97fd47cef9458e902f1e7d44bfc9ca +msgid "Fix crash on duplicate or out of order reactions." +msgstr "" + +#: ../../old_changelog.rst:938 b0ad980148da4251be1c8a66a86d2b33 +msgid "v0.15.0" +msgstr "" + +#: ../../old_changelog.rst:943 ce44c839c7174c32baba66ed8a20239a +msgid "Rich Embeds for messages are now supported." +msgstr "" + +#: ../../old_changelog.rst:945 27cf820bba86470baa2910acb6c49c2e +msgid "" +"To do so, create your own :class:`Embed` and pass the instance to the " +"``embed`` keyword argument to :meth:`Client.send_message` or " +":meth:`Client.edit_message`." +msgstr "" + +#: ../../old_changelog.rst:946 4eb4fb67f26a4cd384239ee9c0af46ea +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "" + +#: ../../old_changelog.rst:947 9d643a0f8f444c1284ac6ad8e48dbec0 +msgid "" +"Add support for MESSAGE_REACTION_REMOVE_ALL event, under " +":func:`on_reaction_clear`." +msgstr "" + +#: ../../old_changelog.rst:948 56c72e2a3e174e28a99a188b4e755ba1 +msgid "" +"Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for" +" bulk permission updates." +msgstr "" + +#: ../../old_changelog.rst:950 ea8d96999a8343378f726ad441f4341b +msgid "" +"This allows you to use e.g. ``p.update(read_messages=True, " +"send_messages=False)`` in a single line." +msgstr "" + +#: ../../old_changelog.rst:951 8e8f7d3e0144418b975ee9a8b005fc16 +msgid "" +"Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is " +"empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "" + +#: ../../old_changelog.rst:953 20af3ca42c4042dbb92f02fc67e7e1c1 +msgid "For the command extension, the following changed:" +msgstr "" + +#: ../../old_changelog.rst:955 37b31394101e4cb8b6eea54a1b6fb874 +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "" + +#: ../../old_changelog.rst:960 442dac8b6bdd457c8cd9d62ff3665891 +msgid "v0.14.3" +msgstr "" + +#: ../../old_changelog.rst:965 c3530998896c4acb83acf3cc8be925dd +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "" + +#: ../../old_changelog.rst:966 86a9d9f30a0745fe86360577aedd4b87 +msgid "Fix incorrect buckets for reactions." +msgstr "" + +#: ../../old_changelog.rst:971 560438be2f9b4fcdbe36b8ee0504b8fb +msgid "v0.14.2" +msgstr "" + +#: ../../old_changelog.rst:976 dc80ff37135b4e638c58f17db21e4c0a +msgid "" +":meth:`Client.wait_for_reaction` now returns a namedtuple with " +"``reaction`` and ``user`` attributes." +msgstr "" + +#: ../../old_changelog.rst:977 036c24ac01ba4f4b9949c19a912d558e +msgid "" +"This is for better support in the case that ``None`` is returned since " +"tuple unpacking can lead to issues." +msgstr "" + +#: ../../old_changelog.rst:982 967b42b78c644c3ba5dfb034336345fd +msgid "" +"Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in " +":meth:`Client.wait_for_reaction`." +msgstr "" + +#: ../../old_changelog.rst:987 b6ac064689a04e51aa6a216f3a73e91a +msgid "v0.14.1" +msgstr "" + +#: ../../old_changelog.rst:990 216db4481b16411e9087cb64de235a2e +msgid "Bug fixes" +msgstr "" + +#: ../../old_changelog.rst:992 dea34ac8768d404e8d4c0ed5346385a4 +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "" + +#: ../../old_changelog.rst:993 8ee7413e096846a58cec819c52aafbaa +msgid "This was also breaking the documentation." +msgstr "" + +#: ../../old_changelog.rst:998 cfa4214c5f9843b686f38bb36035f066 +msgid "v0.14.0" +msgstr "" + +#: ../../old_changelog.rst:1000 5c6e07e6e9bd4a68aac9624f93c9b0d2 +msgid "This update adds new API features and a couple of bug fixes." +msgstr "" + +#: ../../old_changelog.rst:1005 a46b619fc5634974b2379c5508044120 +msgid "" +"Add support for Manage Webhooks permission under " +":attr:`Permissions.manage_webhooks`" +msgstr "" + +#: ../../old_changelog.rst:1006 7b202e75cc344f8c93e39b8ae9dfa579 +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "" + +#: ../../old_changelog.rst:1007 e114d8a07caa406fbea9b95b7639e24e +msgid "Add support for reactions." +msgstr "" + +#: ../../old_changelog.rst:1008 17b4e516a372462a894248bdaae7196e +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr "" + +#: ../../old_changelog.rst:1009 ec1d2036de944e2ca87c72eaf49c4d7c +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr "" + +#: ../../old_changelog.rst:1010 a9cdb1a7898147c09856109b3afdeb05 +msgid "" +":meth:`Client.get_reaction_users` to get the users that reacted to a " +"message." +msgstr "" + +#: ../../old_changelog.rst:1011 415943aaf1a344d8bd9444f5108f1730 +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr "" + +#: ../../old_changelog.rst:1012 163dfb606de84c07b42f4e20f84ce43e +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "" + +#: ../../old_changelog.rst:1013 6a80f05b4e52495ab40d3fc642df5199 +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr "" + +#: ../../old_changelog.rst:1014 80deeea814004f4ea369cc81d2ca32a0 +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr "" + +#: ../../old_changelog.rst:1019 13ef32142511430498c607b61b8ef3d9 +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "" + +#: ../../old_changelog.rst:1020 fa4262a541934728a78a4ae11f86ce0d +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "" + +#: ../../old_changelog.rst:1025 3403b220243c449b9cb6566ddf645806 +msgid "v0.13.0" +msgstr "" + +#: ../../old_changelog.rst:1027 41def317528741cdbc678bf5b02de26a +msgid "This is a backwards compatible update with new features." +msgstr "" + +#: ../../old_changelog.rst:1032 a74ce62b2e6e4a8096b8453816f12466 +msgid "Add the ability to manage emojis." +msgstr "" + +#: ../../old_changelog.rst:1034 cc60ed7cc6334311841fc39f1c67e50f +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr "" + +#: ../../old_changelog.rst:1035 c35562fa5ef94f54b2c81e85e6c9a612 +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr "" + +#: ../../old_changelog.rst:1036 b37b6defec1f426d8dbae2e5555fe2f8 +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr "" + +#: ../../old_changelog.rst:1037 d1b9b9154ef24517b09f2176f32297b7 +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "" + +#: ../../old_changelog.rst:1039 733e373db9354990a64b1ea25954dc70 +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "" + +#: ../../old_changelog.rst:1040 dd744fd43f8d4112a29b84670b4215a6 +msgid "Add new statuses for :class:`Status`." +msgstr "" + +#: ../../old_changelog.rst:1042 e4e1783642e048a6bfe64466a76f7262 +msgid "" +":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do " +"Not Disturb." +msgstr "" + +#: ../../old_changelog.rst:1043 60ea97fddecf40c29f2a2595cdab41ed +msgid "" +":attr:`Status.invisible` for setting your status to invisible (please see" +" the docs for a caveat)." +msgstr "" + +#: ../../old_changelog.rst:1044 26787e4212b34c03a73643d1bfe3e947 +msgid "Deprecate :meth:`Client.change_status`" +msgstr "" + +#: ../../old_changelog.rst:1046 1f82ba4f65334537a46ba82e0c424ca8 +msgid "" +"Use :meth:`Client.change_presence` instead for better more up to date " +"functionality." +msgstr "" + +#: ../../old_changelog.rst:1047 1908df9cf4d944b08087da9543912ab3 +msgid "This method is subject for removal in a future API version." +msgstr "" + +#: ../../old_changelog.rst:1048 4da76a0effd2420a83e11fbd0a2d6466 +msgid "" +"Add :meth:`Client.change_presence` for changing your status with the new " +"Discord API change." +msgstr "" + +#: ../../old_changelog.rst:1050 79e46a60e46340b9ba53dff7580df69c +msgid "" +"This is the only method that allows changing your status to invisible or " +"do not disturb." +msgstr "" + +#: ../../old_changelog.rst:1055 f4ccad2af9354f7e822fa4eb1c8c6407 +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "" + +#: ../../old_changelog.rst:1056 c278c60270d248809f3de4f421b01ce5 +msgid "" +"Do Not Disturb users no longer show up offline due to the new " +":class:`Status` changes." +msgstr "" + +#: ../../old_changelog.rst:1061 09089ecb9a4c485ea305e17c4c8aaf5d +msgid "v0.12.0" +msgstr "" + +#: ../../old_changelog.rst:1063 548138d84d244d6cb13573eda15480b7 +msgid "This is a bug fix update that also comes with new features." +msgstr "" + +#: ../../old_changelog.rst:1068 4fb4ccc6969d48ddbf04dac7b5cb3d6d +msgid "Add custom emoji support." +msgstr "" + +#: ../../old_changelog.rst:1070 bc0add1c6f234e70aab5a0a8295898fe +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "" + +#: ../../old_changelog.rst:1071 be55f48c53af4318a073657887abd338 +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "" + +#: ../../old_changelog.rst:1072 c314bf2643094c1787d15951af04ef01 +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "" + +#: ../../old_changelog.rst:1073 5a77560e76aa48c393f0736a806f3da8 +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "" + +#: ../../old_changelog.rst:1074 daad923c52ad4c8a95cb940b31fe6198 +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "" + +#: ../../old_changelog.rst:1076 42037256927f458ea5d8113abb5deb15 +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr "" + +#: ../../old_changelog.rst:1077 6aa8d6c507814dbfb0d634be8ef4b016 +msgid "" +"Add support for new pinned system message under " +":attr:`MessageType.pins_add`." +msgstr "" + +#: ../../old_changelog.rst:1078 a82d1236076840f2bf52ec450c0e20f5 +msgid "" +"Add order comparisons for :class:`Role` to allow it to be compared with " +"regards to hierarchy." +msgstr "" + +#: ../../old_changelog.rst:1080 911947e7229141a088ab2171f28636ef +msgid "" +"This means that you can now do ``role_a > role_b`` etc to check if " +"``role_b`` is lower in the hierarchy." +msgstr "" + +#: ../../old_changelog.rst:1082 e907524158e84994ab1dbbc2bb3ab697 +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "" + +#: ../../old_changelog.rst:1083 5ec62ed7d6644f51aba581ee4a6c171a +msgid "" +"Add :attr:`Member.server_permissions` to get a member's server " +"permissions without their channel specific overwrites." +msgstr "" + +#: ../../old_changelog.rst:1084 eef3dacce9de4505839cd23a6e5e6162 +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "" + +#: ../../old_changelog.rst:1085 ea834cd3e65a4923ace4a327bef37247 +msgid "" +"Add a new ``Player`` property, ``Player.error`` to fetch the error that " +"stopped the player." +msgstr "" + +#: ../../old_changelog.rst:1087 3a60bded23684c39b5a0d95c728b2231 +msgid "" +"To help with this change, a player's ``after`` function can now take a " +"single parameter denoting the current player." +msgstr "" + +#: ../../old_changelog.rst:1088 92dcafa9947b44fcb69ae818cbb7da70 +msgid "Add support for server verification levels." +msgstr "" + +#: ../../old_changelog.rst:1090 3ae021277e2f4c6d8e180c26122aabd6 +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "" + +#: ../../old_changelog.rst:1091 86cddb14909742c4b4b9c502f67e64f7 +msgid "" +"This enum can be used in :meth:`Client.edit_server` under the " +"``verification_level`` keyword argument." +msgstr "" + +#: ../../old_changelog.rst:1092 4e9c1967b5d448b9b41956e12fdf9339 +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "" + +#: ../../old_changelog.rst:1093 d952adee81134f4791bf96f953a856a9 +msgid "" +"Add :attr:`Server.voice_client` shortcut property for " +":meth:`Client.voice_client_in`." +msgstr "" + +#: ../../old_changelog.rst:1095 de0e3204e21f42308471ec9171a49d8f +msgid "" +"This is technically old (was added in v0.10.0) but was undocumented until" +" v0.12.0." +msgstr "" + +#: ../../old_changelog.rst:1097 ../../old_changelog.rst:1143 +#: 612442a7ef444152a01c8c35b6b59b78 cc11234dd494498dbcc2ac2292afd82a +msgid "For the command extension, the following are new:" +msgstr "" + +#: ../../old_changelog.rst:1099 df5ad0102466494cb0aa407c74f7875f +msgid "Add custom emoji converter." +msgstr "" + +#: ../../old_changelog.rst:1100 755231ea41e74dc0920ef97292b103e5 +msgid "All default converters that can take IDs can now convert via ID." +msgstr "" + +#: ../../old_changelog.rst:1101 4f43210f983e4946bf612c58539cfacd +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "" + +#: ../../old_changelog.rst:1102 6ab6a9a776994e95a127f0f4f9e50acb +msgid "Add a method to reset command cooldown." +msgstr "" + +#: ../../old_changelog.rst:1107 4ae80c7f355d4534a1800d1686becc7c +msgid "" +"Fix bug that caused the library to not work with the latest " +"``websockets`` library." +msgstr "" + +#: ../../old_changelog.rst:1108 9d0f1a07415445d99e511a89ebdee3f3 +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "" + +#: ../../old_changelog.rst:1109 b94d78af4b24432084b31c1e046262ce +msgid "" +"Fix bug that disallowed :class:`ServerRegion` from being used in " +":meth:`Client.edit_server`." +msgstr "" + +#: ../../old_changelog.rst:1110 4e726722251f4e6b91a5cf91bb1e3ff4 +msgid "" +"Fix bug in :meth:`Channel.permissions_for` that caused permission " +"resolution to happen out of order." +msgstr "" + +#: ../../old_changelog.rst:1111 41c519e1555548dca4647c24e0dddf47 +msgid "" +"Fix bug in :attr:`Member.top_role` that did not account for same-position" +" roles." +msgstr "" + +#: ../../old_changelog.rst:1116 6009bde1262a46e98cd81b7df88ae0e5 +msgid "v0.11.0" +msgstr "" + +#: ../../old_changelog.rst:1118 29d469e953694d2d85cfe3c76b487eb1 +msgid "" +"This is a minor bug fix update that comes with a gateway update (v5 -> " +"v6)." +msgstr "" + +#: ../../old_changelog.rst:1121 bc91110fc66649c2b878133e17a53ffa +msgid "Breaking Changes" +msgstr "" + +#: ../../old_changelog.rst:1123 74e52d191bf54255a98e49529f6d6a9b +msgid "" +"``Permissions.change_nicknames`` has been renamed to " +":attr:`Permissions.change_nickname` to match the UI." +msgstr "" + +#: ../../old_changelog.rst:1128 81fc15a59d1e4f98b01e3ac2447a2884 +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "" + +#: ../../old_changelog.rst:1129 cbf12c55f7154c7c849b69eee42920ea +msgid "" +"Switch the websocket gateway version to v6 from v5. This allows the " +"library to work with group DMs and 1-on-1 calls." +msgstr "" + +#: ../../old_changelog.rst:1130 7fc8aeae055e442db7c287219c3f156e +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "" + +#: ../../old_changelog.rst:1131 7a7bf1da73674c18967856b59e02981a +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "" + +#: ../../old_changelog.rst:1132 7061315e254645aba3fa63deb99e539c +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "" + +#: ../../old_changelog.rst:1133 997b6e575c344a1b94ed7bac2212b1b0 +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "" + +#: ../../old_changelog.rst:1134 ccc22857665f4ec5a669e2fe75fe53e1 +msgid "" +"Add the remaining VIP servers and the Brazil servers into " +":class:`ServerRegion` enum." +msgstr "" + +#: ../../old_changelog.rst:1135 50c84becc3504eb093b46f6194db320a +msgid "" +"Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to " +"redirect stderr." +msgstr "" + +#: ../../old_changelog.rst:1136 f4fac67b65a448d0bf8df8e1bc099e7f +msgid "" +"The library now handles implicit permission resolution in " +":meth:`Channel.permissions_for`." +msgstr "" + +#: ../../old_changelog.rst:1137 2c1c212e7be84a268e065e6a7937c307 +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "" + +#: ../../old_changelog.rst:1138 61eaaf02c4cf42bfa1cf263abd19da02 +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "" + +#: ../../old_changelog.rst:1139 fa99771ac2974dac8c6aeffd6df8a2ce +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "" + +#: ../../old_changelog.rst:1141 1b6c1efaaee449228e768fc73d46ade2 +msgid "" +"For backwards compatibility, the member object will have properties " +"mirroring the old behaviour." +msgstr "" + +#: ../../old_changelog.rst:1145 f78416bf2ab84700bf893df624c2c654 +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "" + +#: ../../old_changelog.rst:1146 97ecffb0fabf4b0496b24a9357af5757 +msgid "" +"``UserInputError`` exception for the hierarchy for user input related " +"errors." +msgstr "" + +#: ../../old_changelog.rst:1151 7c33d10e7dbb4be592efcce09234ff92 +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr "" + +#: ../../old_changelog.rst:1152 b5115b6278bb42a484c152543f0b787e +msgid "Fix issue when removing roles out of order." +msgstr "" + +#: ../../old_changelog.rst:1153 6d07090496b041ae871a6fde98f220db +msgid "Fix bug where discriminators would not update." +msgstr "" + +#: ../../old_changelog.rst:1154 5dc4a0c238564b4899e51aa8b0bfd195 +msgid "" +"Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to " +"disconnect seemingly randomly." +msgstr "" + +#: ../../old_changelog.rst:1156 bdd8141d06d9471d917fec2a33e21e73 +msgid "For the command extension, the following bug fixes apply:" +msgstr "" + +#: ../../old_changelog.rst:1158 fdc429cdfd3d444baf57d41d672b318c +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "" + +#: ../../old_changelog.rst:1159 aa7cf80d36aa407e97cb2f2f460a0969 +msgid "" +"``Bot.remove_command`` and ``Group.remove_command`` no longer throw if " +"the command doesn't exist." +msgstr "" + +#: ../../old_changelog.rst:1160 4c3408206e6744159b43e1967ab96dec +msgid "Command names are no longer forced to be ``lower()``." +msgstr "" + +#: ../../old_changelog.rst:1161 5284256204e34c5395fc978a376ff4b0 +msgid "" +"Fix a bug where Member and User converters failed to work in private " +"message contexts." +msgstr "" + +#: ../../old_changelog.rst:1162 76a5b852278b46098efac4903316ecef +msgid "" +"``HelpFormatter`` now ignores hidden commands when deciding the maximum " +"width." +msgstr "" + +#: ../../old_changelog.rst:1167 d62df80546ab4f48920984081af2969e +msgid "v0.10.0" +msgstr "" + +#: ../../old_changelog.rst:1169 38b37e3f7dc3481ea5d7f7401a46865c +msgid "" +"For breaking changes, see `0.10.0 migration " +"`_. The breaking changes listed there will not be " +"enumerated below. Since this version is rather a big departure from " +"v0.9.2, this change log will be non-exhaustive." +msgstr "" + +#: ../../old_changelog.rst:1174 184a8fc86a784b18b834a0d449cda64d +msgid "" +"The library is now fully ``asyncio`` compatible, allowing you to write " +"non-blocking code a lot more easily." +msgstr "" + +#: ../../old_changelog.rst:1175 85c4f564280148f0bf5ee9b4a129f78f +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "" + +#: ../../old_changelog.rst:1176 3002e45c216d4336bce5fae8a60dacc1 +msgid "" +"A new command extension module was added but is currently undocumented. " +"Figuring it out is left as an exercise to the reader." +msgstr "" + +#: ../../old_changelog.rst:1177 b53f0641a47b4f10b3323f3ad45ae616 +msgid "" +"Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote " +"permission errors or 404 errors." +msgstr "" + +#: ../../old_changelog.rst:1178 14b76fab0c254197bbcd7b536d314107 +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "" + +#: ../../old_changelog.rst:1179 8c523459e5aa4614ac5adf3ff969ca91 +msgid "" +"Added support for sending voice. Check :class:`VoiceClient` for more " +"details." +msgstr "" + +#: ../../old_changelog.rst:1180 a6e4192a274b4c60b9232ff077f30af0 +msgid "" +"Added :meth:`Client.wait_for_message` coroutine to aid with follow up " +"commands." +msgstr "" + +#: ../../old_changelog.rst:1181 071a551ad2844ca19303086993ce4a73 +msgid "" +"Added :data:`version_info` named tuple to check version info of the " +"library." +msgstr "" + +#: ../../old_changelog.rst:1182 7e29bae8ce1f4fd0aae1e442c713833d +msgid "" +"Login credentials are now cached to have a faster login experience. You " +"can disable this by passing in ``cache_auth=False`` when constructing a " +":class:`Client`." +msgstr "" + +#: ../../old_changelog.rst:1184 8d07cc56b6cf42ba8712f3543ccb0a17 +msgid "" +"New utility function, :func:`discord.utils.get` to simplify retrieval of " +"items based on attributes." +msgstr "" + +#: ../../old_changelog.rst:1185 c7570f3e583b48eab10e6d9e4ef5d81b +msgid "" +"All data classes now support ``!=``, ``==``, ``hash(obj)`` and " +"``str(obj)``." +msgstr "" + +#: ../../old_changelog.rst:1186 f8d754a0d6454f35893e27cde72fa22c +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "" + +#: ../../old_changelog.rst:1187 ab731dea83b54524b4f182638d3d8c55 +msgid "" +"Added :meth:`Client.invites_from` to get currently active invites in a " +"server." +msgstr "" + +#: ../../old_changelog.rst:1188 d27f27c4051543c4b321417eba8d4a1f +msgid "" +"Added :attr:`Server.me` attribute to get the :class:`Member` version of " +":attr:`Client.user`." +msgstr "" + +#: ../../old_changelog.rst:1189 e5b2082987f041f6898c95c48b6e129d +msgid "" +"Most data classes now support a ``hash(obj)`` function to allow you to " +"use them in ``set`` or ``dict`` classes or subclasses." +msgstr "" + +#: ../../old_changelog.rst:1190 6549c2adb90742d7b58fb741ff74d15b +msgid "" +"Add :meth:`Message.clean_content` to get a text version of the content " +"with the user and channel mentioned changed into their names." +msgstr "" + +#: ../../old_changelog.rst:1191 021d8a84ae334381a3263fa1f2d09b63 +msgid "" +"Added a way to remove the messages of the user that just got banned in " +":meth:`Client.ban`." +msgstr "" + +#: ../../old_changelog.rst:1192 51f18f0490444b5f865fb559f03c187f +msgid "" +"Added :meth:`Client.wait_until_ready` to facilitate easy creation of " +"tasks that require the client cache to be ready." +msgstr "" + +#: ../../old_changelog.rst:1193 8e5d05dca1804f358b539d1b267a10fa +msgid "" +"Added :meth:`Client.wait_until_login` to facilitate easy creation of " +"tasks that require the client to be logged in." +msgstr "" + +#: ../../old_changelog.rst:1194 026315e76b8d49cb87f01fe9f65d0337 +msgid "" +"Add :class:`discord.Game` to represent any game with custom text to send " +"to :meth:`Client.change_status`." +msgstr "" + +#: ../../old_changelog.rst:1195 f554bb1ace35445ab972d5661600ca5c +msgid "Add :attr:`Message.nonce` attribute." +msgstr "" + +#: ../../old_changelog.rst:1196 eee11aa74e244b14858321e335417c16 +msgid "" +"Add :meth:`Member.permissions_in` as another way of doing " +":meth:`Channel.permissions_for`." +msgstr "" + +#: ../../old_changelog.rst:1197 0a180ee3f16d46248ca77da117e661c5 +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "" + +#: ../../old_changelog.rst:1198 21926029e1a944248149a2bc300b285c +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "" + +#: ../../old_changelog.rst:1199 e04b411ff2424852ad7e222373bca92a +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "" + +#: ../../old_changelog.rst:1200 c5d78d3806974aeaa952776524993cbf +msgid "" +"Added :meth:`Client.server_voice_state` to server mute or server deafen a" +" member." +msgstr "" + +#: ../../old_changelog.rst:1201 7b061a3cd1b2462c8ddacf5d5e564993 +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "" + +#: ../../old_changelog.rst:1202 61e04f1171664dcaa0e150be6b2819da +msgid "" +"Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger" +" when a member is banned/unbanned." +msgstr "" + +#: ../../old_changelog.rst:1205 56eb11079208428080c8d73acd06fee0 +msgid "Performance Improvements" +msgstr "" + +#: ../../old_changelog.rst:1207 1412ab0e00154d83963273002bafb044 +msgid "" +"All data classes now use ``__slots__`` which greatly reduce the memory " +"usage of things kept in cache." +msgstr "" + +#: ../../old_changelog.rst:1208 9ac35842677c4b578d8bd5b41f5ec48b +msgid "" +"Due to the usage of ``asyncio``, the CPU usage of the library has gone " +"down significantly." +msgstr "" + +#: ../../old_changelog.rst:1209 01584faafc6a4daca4220d7c16a73c34 +msgid "" +"A lot of the internal cache lists were changed into dictionaries to " +"change the ``O(n)`` lookup into ``O(1)``." +msgstr "" + +#: ../../old_changelog.rst:1210 5cba5de179a840d4bd057588237bce3b +msgid "" +"Compressed READY is now on by default. This means if you're on a lot of " +"servers (or maybe even a few) you would receive performance improvements " +"by having to download and process less data." +msgstr "" + +#: ../../old_changelog.rst:1212 a67624475d8d400fae5d574258d7cc89 +msgid "" +"While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid " +"unnecessary unicode character lookups." +msgstr "" + +#: ../../old_changelog.rst:1217 36fe131c905e49599f23a59a57d99164 +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "" + +#: ../../old_changelog.rst:1218 c574cf0726e342eeadbfca536471c333 +msgid "" +"Fix bug where ``member.roles`` were empty upon joining instead of having " +"the ``@everyone`` role." +msgstr "" + +#: ../../old_changelog.rst:1219 8875df9f7e5f4f8b9986b376b7384042 +msgid "" +"Fix bug where :meth:`Role.is_everyone` was not being set properly when " +"the role was being edited." +msgstr "" + +#: ../../old_changelog.rst:1220 35a32f8aa4214282a706e7a57c0f7320 +msgid "" +":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep " +"the discord API limitation." +msgstr "" + +#: ../../old_changelog.rst:1221 aaba9e94e0f24d4ebfde35a5a5967bcf +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "" + +#: ../../old_changelog.rst:1222 330455a4235b4ff3adc377c165c4d3f9 +msgid "" +"Fix bug where :meth:`Permissions.kick_members` and " +":meth:`Permissions.ban_members` were flipped." +msgstr "" + +#: ../../old_changelog.rst:1223 351e7977d6f3450cb3416063e5697686 +msgid "" +"Mentions are now triggered normally. This was changed due to the way " +"discord handles it internally." +msgstr "" + +#: ../../old_changelog.rst:1224 4cc1e926917e4f3eac8869fc76f629fe +msgid "" +"Fix issue when a :class:`Message` would attempt to upgrade a " +":attr:`Message.server` when the channel is a :class:`Object`." +msgstr "" + +#: ../../old_changelog.rst:1226 d16221ec9071446b867806e6bd1d825d +msgid "" +"Unavailable servers were not being added into cache, this has been " +"corrected." +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/quickstart.po b/docs/locales/en/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..43958880c1 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/quickstart.po @@ -0,0 +1,181 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../quickstart.rst:8 961453d1ff7c49cd835a14c6d0ab3edd +msgid "Quickstart" +msgstr "" + +#: ../../quickstart.rst:10 aaaf8be026274369a3e225fb3bf44799 +msgid "" +"This page gives a brief introduction to the library. It assumes you have " +"the library installed. If you don't, check the :ref:`installing` portion." +msgstr "" + +#: ../../quickstart.rst:14 1e5f765f4f064ee0aeaa6387f87e6bed +msgid "A Minimal Bot" +msgstr "" + +#: ../../quickstart.rst:16 d5c114f0711040c290390f36be63e6cd +msgid "" +"Let's make a bot that responds to a specific message and walk you through" +" it." +msgstr "" + +#: ../../quickstart.rst:18 ../../quickstart.rst:93 +#: 2ef0ca47c35d4a87a66ecf37ac34fbee fc7a9fd22cd347f08e3a12508390d564 +msgid "It looks something like this:" +msgstr "" + +#: ../../quickstart.rst:22 520ed442525a4996bd636127f406a482 +msgid "" +"Because this example utilizes message content, it requires the " +":attr:`Intents.message_content` privileged intent." +msgstr "" + +#: ../../quickstart.rst:47 95ff2f3f9d5842a290c9c7e89b3920ac +msgid "" +"Let's name this file ``example_bot.py``. Make sure not to name it " +"``discord.py`` as that'll conflict with the library." +msgstr "" + +#: ../../quickstart.rst:50 3b78d63a6d784262b92d80ed9872b73a +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "" + +#: ../../quickstart.rst:52 382e03b221d740539a10ad155d6bd918 +msgid "" +"The first line just imports the library, if this raises a " +"`ModuleNotFoundError` or `ImportError` then head on over to " +":ref:`installing` section to properly install." +msgstr "" + +#: ../../quickstart.rst:54 3283a09eaf8c4c878ee5577a73335bdd +msgid "" +"Next, we create an instance of a :class:`Client`. This client is our " +"connection to Discord." +msgstr "" + +#: ../../quickstart.rst:55 c72bea7252ac4c179de69189862e1a78 +msgid "" +"We then use the :meth:`Client.event` decorator to register an event. This" +" library has many events. Since this library is asynchronous, we do " +"things in a \"callback\" style manner." +msgstr "" + +#: ../../quickstart.rst:58 dc05281fbc104fe4b257989a749b7e82 +msgid "" +"A callback is essentially a function that is called when something " +"happens. In our case, the :func:`on_ready` event is called when the bot " +"has finished logging in and setting things up and the :func:`on_message` " +"event is called when the bot has received a message." +msgstr "" + +#: ../../quickstart.rst:61 6ac70839985647e5900cc7f21b6bbad9 +msgid "" +"Since the :func:`on_message` event triggers for *every* message received," +" we have to make sure that we ignore messages from ourselves. We do this " +"by checking if the :attr:`Message.author` is the same as the " +":attr:`Client.user`." +msgstr "" + +#: ../../quickstart.rst:64 33ca1efcf28847fb895d2362daf1186a +msgid "" +"Afterwards, we check if the :class:`Message.content` starts with " +"``'$hello'``. If it does, then we send a message in the channel it was " +"used in with ``'Hello!'``. This is a basic way of handling commands, " +"which can be later automated with the :doc:`./ext/commands/index` " +"framework." +msgstr "" + +#: ../../quickstart.rst:67 b2c71e97a940471580d3f4945d6378bf +msgid "" +"Finally, we run the bot with our login token. If you need help getting " +"your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "" + +#: ../../quickstart.rst:71 0596d852b90146c3840c0a8a8e0cfe91 +msgid "" +"Now that we've made a bot, we have to *run* the bot. Luckily, this is " +"simple since this is just a Python script, we can run it directly." +msgstr "" + +#: ../../quickstart.rst:74 89abb694917744b9a594e0fb9b022367 +msgid "On Windows:" +msgstr "" + +#: ../../quickstart.rst:80 8709e14ab8c040309183ee3160b93866 +msgid "On other systems:" +msgstr "" + +#: ../../quickstart.rst:86 4e584c9aa1a546c2856e717010ae0a18 +msgid "Now you can try playing around with your basic bot." +msgstr "" + +#: ../../quickstart.rst:89 163b14974c4e4d0a9e0bdb92ff7b8974 +msgid "A Minimal Bot with Slash Commands" +msgstr "" + +#: ../../quickstart.rst:91 db48cc63cf684402bad783f2c5780de4 +msgid "" +"As a continuation, let's create a bot that registers a simple slash " +"command!" +msgstr "" + +#: ../../quickstart.rst:111 a8aa579f1120475286a7b3d069fe0e45 +msgid "" +"Let's look at the differences compared to the previous example, step-by-" +"step:" +msgstr "" + +#: ../../quickstart.rst:113 289772b489c049a69adedf02009b8d8f +msgid "The first line remains unchanged." +msgstr "" + +#: ../../quickstart.rst:114 2264f202f88040c2a1dca513124515c4 +msgid "" +"Next, we create an instance of :class:`.Bot`. This is different from " +":class:`.Client`, as it supports slash command creation and other " +"features, while inheriting all the features of :class:`.Client`." +msgstr "" + +#: ../../quickstart.rst:116 278631486492429596b4e2210c31827d +msgid "" +"We then use the :meth:`.Bot.slash_command` decorator to register a new " +"slash command. The ``guild_ids`` attribute contains a list of guilds " +"where this command will be active. If you omit it, the command will be " +"globally available, and may take up to an hour to register." +msgstr "" + +#: ../../quickstart.rst:119 746729bbf47a4af8868735ca63c93ba1 +msgid "" +"Afterwards, we trigger a response to the slash command in the form of a " +"text reply. Please note that all slash commands must have some form of " +"response, otherwise they will fail." +msgstr "" + +#: ../../quickstart.rst:121 16974282cb0344dabe07825bd33ac0e6 +msgid "Finally, we, once again, run the bot with our login token." +msgstr "" + +#: ../../quickstart.rst:124 2151937a4f9d499e8400498eb1a2ee47 +msgid "Congratulations! Now you have created your first slash command!" +msgstr "" + diff --git a/docs/locales/en/LC_MESSAGES/version_guarantees.po b/docs/locales/en/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..d5aea67208 --- /dev/null +++ b/docs/locales/en/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,92 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2015-2021, Rapptz & 2021-present, Pycord Development +# This file is distributed under the same license as the Pycord package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Pycord 0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-08-10 03:42+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language: en\n" +"Language-Team: en \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.14.0\n" + +#: ../../version_guarantees.rst:4 fc77d7996f0e4fa6943e346e2024d85b +msgid "Version Guarantees" +msgstr "" + +#: ../../version_guarantees.rst:6 eafd23556d684b68b8c379f59e025d96 +msgid "" +"The library follows the `semantic versioning principle " +"`_ which means that the major version is updated " +"every time there is an incompatible API change. However due to the lack " +"of guarantees on the Discord side when it comes to breaking changes along" +" with the fairly dynamic nature of Python it can be hard to discern what " +"can be considered a breaking change and what isn't." +msgstr "" + +#: ../../version_guarantees.rst:8 62326bdd6dc049c992db7b0e8231569c +msgid "" +"The first thing to keep in mind is that breaking changes only apply to " +"**publicly documented functions and classes**. If it's not listed in the " +"documentation here then it is not part of the public API and is thus " +"bound to change. This includes attributes that start with an underscore " +"or functions without an underscore that are not documented." +msgstr "" + +#: ../../version_guarantees.rst:12 5e7e62867b42403cad0054c07e206768 +msgid "The examples below are non-exhaustive." +msgstr "" + +#: ../../version_guarantees.rst:15 693f7c7b524042fea0ed8b964ab5fc20 +msgid "Examples of Breaking Changes" +msgstr "" + +#: ../../version_guarantees.rst:17 e7ecac84084b485bbf3345040c9309d4 +msgid "Changing the default parameter value to something else." +msgstr "" + +#: ../../version_guarantees.rst:18 0c6bf4dc61c64b00aac027ab7a5935cd +msgid "Renaming a function without an alias to an old function." +msgstr "" + +#: ../../version_guarantees.rst:19 7768026a492e4b928e2302ca7a51821e +msgid "Adding or removing parameters to an event." +msgstr "" + +#: ../../version_guarantees.rst:22 d78682c8e2a748eb943adbac3edfe909 +msgid "Examples of Non-Breaking Changes" +msgstr "" + +#: ../../version_guarantees.rst:24 c6d8aca18b984144b34789f77d05a4ba +msgid "Adding or removing private underscored attributes." +msgstr "" + +#: ../../version_guarantees.rst:25 c58dced83e23479ab768188c4718abf1 +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "" + +#: ../../version_guarantees.rst:26 60de17508ca2439a84c6574c1618a186 +msgid "Changing the behaviour of a function to fix a bug." +msgstr "" + +#: ../../version_guarantees.rst:27 a2115ba8046345178ff42b59e41c8e82 +msgid "Changes in the documentation." +msgstr "" + +#: ../../version_guarantees.rst:28 977d5c241d33494b9178f82c1cbfe613 +msgid "Modifying the internal HTTP handling." +msgstr "" + +#: ../../version_guarantees.rst:29 68bb4e80257a4e9c85b670b2c5e78161 +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "" + diff --git a/docs/locales/es/LC_MESSAGES/api/abcs.po b/docs/locales/es/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..28cef481f2 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "Una :term:`clase base abstracta` (también conocidas como ``cba``) es un tipo de clase la cual otros objetos utilizan heredar sus funcionalidades. **Las clases base abstractas no deben ser inicializadas**. Su principal causa de uso es para utilizar comprobaciones :func:`isinstance` e :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "La librería tiene un módulo centrado en las clases bases abstractas, en la que todas son heredadas de :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "Una CBA que detalla las operaciones más comunes en un modelo de Discord." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Casi todos los :ref:`modelos de Discord ` cumplen el protocolo de esta clase base abstracta." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "Si quieres crear un snowflake por tu cuenta, es preferible que uses :class:`.Object`." + +msgid "The model's unique ID." +msgstr "El ID único del modelo." + +msgid "type" +msgstr "tipo" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "Una CBA que detalla las operaciones más comunes en un usuario de Discord." + +msgid "The following implement this ABC:" +msgstr "Los siguientes son heredados de esta CBA:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "Esta CBA también debe implementar :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "El nombre del usuario." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "El discriminador del usuario." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "Si el usuario ha migrado al nuevo sistema de nombres de usuario, esto siempre será \"0\"." + +msgid "The user's global name." +msgstr "El nombre global del usuario." + +msgid "The avatar asset the user has." +msgstr "El avatar que tiene el usuario." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "Si el usuario es un bot." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Retorna el nombre mostrado del usuario." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Retorna una cadena que permite mencionar al usuario." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "Una CBA que detalla las operaciones más comunes en un canal privado de Discord." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "El usuario que te representa." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "Una CBA que detalla las operaciones más comunes en un canal de un servidor de Discord." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "El nombre del canal." + +msgid "The guild the channel belongs to." +msgstr "El servidor al cual este canal pertenece." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "La posición del canal en la lista de canales. Este es un entero comenzando desde 0. p. ej., el primer canal tiene la posición 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Retorna una lista de roles que han sido sobreescritos de su valor predeterminado en el atributo :attr:`~discord.Guild.roles`." + +msgid "The string that allows you to mention the channel." +msgstr "Retorna una cadena que permite mencionar el canal." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Retorna un enlace que permite al cliente ir directamente al canal." + +msgid "Returns the channel's creation time in UTC." +msgstr "Retorna la fecha de creación del canal en UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Retorna las sobrescrituras de un miembro o rol específicas de este canal." + +msgid "Parameters" +msgstr "Parámetros" + +msgid "The role or user denoting whose overwrite to get." +msgstr "El rol o usuario de los que quieres obtener las sobrescrituras." + +msgid "Returns" +msgstr "Retorna" + +msgid "The permission overwrites for this object." +msgstr "Las sobre escrituras de los permisos para este objeto." + +msgid "Return type" +msgstr "Tipo del valor retornado" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Retorna todas las sobrescrituras de este canal." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "Esto es retornado como un diccionario donde la llave es el objeto, que puede ser de tipo :class:`~discord.Role` o :class:`~discord.Member`, y el valor es la sobrescritura, que es de tipo :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "Las sobrescrituras de los permisos de este canal." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "La categoría a la cual pertenece este canal." + +msgid "If there is no category then this is ``None``." +msgstr "Si no pertenece a ninguna, entonces esto retorna ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Si los permisos de este canal están sincronizados con los de la categoría a la que pertenece." + +msgid "If there is no category then this is ``False``." +msgstr "Si no pertenece a ninguna categoría, entonces esto es ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Gestiona la resolución de los permisos para el :class:`~discord.Member` o :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "Esta función tiene en cuenta los siguientes casos:" + +msgid "Guild owner" +msgstr "Propietario del servidor" + +msgid "Guild roles" +msgstr "Roles del servidor" + +msgid "Channel overrides" +msgstr "Sobrescrituras de canales" + +msgid "Member overrides" +msgstr "Sobrescrituras de miembros" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "Si se proporciona un :class:`~discord.Role`, entonces esto comprueba los permisos de alguien que tenga el rol, que es esencialmente:" + +msgid "The default role permissions" +msgstr "Los permisos del rol por defecto" + +msgid "The permissions of the role used as a parameter" +msgstr "Los permisos del rol usado como parámetro" + +msgid "The default role permission overwrites" +msgstr "Las sobrescrituras de permisos del rol por defecto" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "Las sobrescrituras de permisos del rol usado como parámetro" + +msgid "The object passed in can now be a role object." +msgstr "El objeto proporcionado ahora puede ser un rol." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "El objeto del que obtener los permisos. Este puede ser un miembro o rol. Si es un rol, entonces las sobrescrituras de miembro no son calculadas." + +msgid "The resolved permissions for the member or role." +msgstr "Los permisos calculados del miembro o rol." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Elimina este canal." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.manage_channels` para poder usar esto." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "La razón por la que se elimina el canal. Se muestra en el registro de auditoría." + +msgid "Raises" +msgstr "Errores" + +msgid "You do not have proper permissions to delete the channel." +msgstr "No tienes los permisos necesarios para poder eliminar el canal." + +msgid "The channel was not found or was already deleted." +msgstr "El canal no se encontró o ya fue eliminado." + +msgid "Deleting the channel failed." +msgstr "Algo falló mientras se eliminaba el canal." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Establece las sobrescrituras de permisos para un objetivo en el canal." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "El parámetro ``target`` debe ser del tipo :class:`~discord.Member` o :class:`~discord.Role` que pertenezca al servidor." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "El parámetro ``overwrite``, si es proporcionado, debe ser ``None`` o de tipo :class:`~discord.PermissionOverwrite`. Por conveniencia, puedes proporcionar argumentos de palabras clave que denoten atributos :class:`~discord.Permissions`. Si eso se hace, no se podrán combinar los argumentos de palabras clave con el parámetro ``overwrite``." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "Si el parámetro ``overwrite`` es ``None``, entonces se eliminarán las sobrescrituras ya existentes." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.manage_roles` para poder usar esto." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "Este método *reemplaza* las sobrescrituras antiguas con las proporcionadas." + +msgid "Examples" +msgstr "Ejemplos" + +msgid "Setting allow and deny: ::" +msgstr "Estableciendo permitidos y denegados: ::" + +msgid "Deleting overwrites ::" +msgstr "Eliminar sobrescrituras: ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Usando :class:`~discord.PermissionOverwrite`: ::" + +msgid "The member or role to overwrite permissions for." +msgstr "El miembro o rol al que editar las sobrescrituras de permisos." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "Los permisos que aceptar o denegar al objetivo, o ``None`` para eliminar la sobrescritura." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "Una lista de argumentos de palabras clave de los permisos a establecer para facilitar el uso. No se puede combinar con ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "La razón por la que se hace esta acción. Se muestra en el registro de auditoría." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "No tienes permisos para editar los permisos de este canal." + +msgid "Editing channel specific permissions failed." +msgstr "Algo falló mientras se editaban los permisos del canal." + +msgid "The role or member being edited is not part of the guild." +msgstr "El rol o miembro que se va a editar no es parte del servidor." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "El parámetro ``overwrite`` no es válido o el tipo de objetivo no era un :class:`~discord.Role` o :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clona este canal. Esto crea uno nuevo con las mismas propiedades." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.manage_channels` para poder usar esto." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "El nuevo nombre del canal. Si no se proporciona, se usará el nombre del canal existente." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "La razón por la que se clona el canal. Se muestra en el registro de auditoría." + +msgid "The channel that was created." +msgstr "El canal que fue creado." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "No tienes los permisos necesarios para crear este canal." + +msgid "Creating the channel failed." +msgstr "Algo falló mientras se creaba el canal." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "Una interfaz completa la cual ayuda a mover un canal en relación con los otros." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "Si la posición exacta a la que quiere moverse es requerida, deberías usar ``edit`` en su lugar." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Los canales de voz siempre se ordenarán después de los canales de texto. Esto es una limitación de Discord." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Si debería moverse el canal al principio de la lista de canales (o categoría, si es proporcionada). Esto es mutuamente excluyente con ``end``, ``before`` y ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Si mover el canal al final de la lista de canales (o de la categoría, si es proporcionada). Esto es mutuamente excluyente con ``beginning``, ``before`` y ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "El canal que debería estar antes del canal actual. Esto es mutuamente excluyente con ``beginning``, ``end`` y ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "El canal que debería estar después del canal actual. Esto es mutuamente excluyente con ``beginning``, ``end`` y ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "La cantidad de canales que mover para compensar. Por ejemplo, un desplazamiento de valor ``2`` con ``beginning=True`` moverá el canal 2 posiciones a partir del principio. Un número positivo mueve el canal hacia abajo, mientras uno negativo lo mueve hacia arriba. Tenga en cuenta que este número es relativo y calculado a partir de los parámetros ``beginning``, ``end``, ``before`` y ``after``." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "La categoría a la que mover este canal. Si se proporciona ``None`` entonces mueve el canal fuera de esta. Este parámetro es ignorado si se mueve una categoría." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Si se deben sincronizar los permisos con la categoría a la que se mueve (si es proporcionada)." + +msgid "The reason for the move." +msgstr "La razón por la que se mueve este canal." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "Se proporcionó una posición no válida, o se mezclaron parámetros mutuamente excluyentes." + +msgid "You do not have permissions to move the channel." +msgstr "No tienes los permisos necesarios para poder mover el canal." + +msgid "Moving the channel failed." +msgstr "Algo falló mientras se movía el canal." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Crea una invitación instantánea a partir de un canal de texto o voz." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.create_instant_invite` para poder usar esto." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "Cuánto durará la invitación en segundos. Si se proporciona 0 entonces esta invitación no expirará. El valor por defecto es ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "Cuántos usos tendrá la invitación. Si se proporciona 0 entonces tendrá usos ilimitados. El valor por defecto es ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Marca que la invitación otorgará una membresía temporal (es decir, son expulsados después de desconectarse). El valor por defecto es ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indica si debería crearse un enlace único para la invitación. El valor por defecto es ``True``. Si se proporciona ``False`` entonces retornará una invitación ya existente." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "La razón por la que se crea la invitación. Se muestra en el registro de auditoría." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "El tipo de objetivo para la invitación al canal de voz, si aplicable. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "El tipo de objetivo para la invitación al canal de voz, si aplicable." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "El usuario cuál directo mostrar en esta invitación. Obligatorio si el valor del parámetro `target_type` es `TargetType.stream`. El usuario debe estar en directo en el canal. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "El usuario cuál directo mostrar en esta invitación. Obligatorio si el valor del parámetro `target_type` es `TargetType.stream`. El usuario debe estar en directo en el canal." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "El ID de la aplicación que mostrar en la invitación. Obligatorio si el valor del parámetro de `target_type` es `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "El ID de la aplicación que mostrar en la invitación. Obligatorio si el valor del parámetro de `target_type` es `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "El objeto de evento que enlazar a la invitación. Atajo de :meth:`.Invite.set_scheduled_event`. Véase también :meth:`.Invite.set_scheduled_event` para más información en como enlazar un evento a la invitación. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "El objeto de evento que enlazar a la invitación. Atajo de :meth:`.Invite.set_scheduled_event`." + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "Véase también :meth:`.Invite.set_scheduled_event` para más información en como enlazar un evento a la invitación." + +msgid "The invite that was created." +msgstr "La invitación que fue creada." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Algo falló al crear la invitación." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "El canal que se proporcionó era una categoría o era un canal no válido." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Retorna una lista de todas las invitaciones activas de este canal." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.manage_channels` para poder usar esto." + +msgid "The list of invites that are currently active." +msgstr "La lista de invitaciones actualmente activas." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "No tienes los permisos necesarios para poder obtener esta información." + +msgid "An error occurred while fetching the information." +msgstr "Algo falló mientras se obtenía la información." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "Una CBA que detalla las operaciones más comunes en un modelo que permite enviar mensajes." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Retorna un iterador asíncrono (:class:`~discord.AsyncIterator`) que permite recibir el historial de mensajes del canal." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.read_message_history` para poder usar esto." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "La cantidad de mensajes a obtener. Si se proporciona ``None``, obtiene todos los mensajes del canal. Ten en cuenta que esto lo haría una operación lenta." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Obtiene los mensajes antes de esta fecha o mensaje. Si se proporciona un datetime, se recomienda que sea con una zona horaria establecida en UTC, en caso de que no, se asumirá que está en hora local." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Obtiene los mensajes después de esta fecha o mensaje. Si se proporciona un datetime, se recomienda que sea con una zona horaria establecida en UTC, en caso de que no, se asumirá que está en hora local." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Obtiene los mensajes alrededor de esta fecha o mensaje. Si se proporciona un datetime, se recomienda que sea con una zona horaria establecida en UTC, en caso de que no, se asumirá que está en hora local. Cuando se usa este argumento, el límite que se pueden obtener es de 101. Ten en cuenta que si el límite es par, entonces esto retornará como mucho el límite + 1 mensajes." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "Si se proporciona ``True``, retorna los mensajes en orden de creación descendente (antiguo -> nuevo). El valor por defecto es ``True`` si se proporciona un valor a ``after``, sino es ``False``." + +msgid "Yields" +msgstr "Genera" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- El mensaje con la información analizada." + +msgid "You do not have permissions to get channel message history." +msgstr "No tienes permisos para ver el historial de mensajes de este canal." + +msgid "The request to get message history failed." +msgstr "Algo falló mientras se obtenía el historial de mensajes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Uso ::" + +msgid "Flattening into a list: ::" +msgstr "Convertir a una lista: ::" + +msgid "All parameters are optional." +msgstr "Todos los parámetros son opcionales." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Retorna un gestor de contexto que permite que aparezcas como \"escribiendo\" por un periodo de tiempo indefinido." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "Esto es útil si tu bot tiene que realizar cálculos longevos. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "Esto es tanto como un gestor de contexto síncrono como asíncrono, que quiere decir que, se puede utilizar tanto en un gestor de contexto ``with`` como ``async with``." + +msgid "Example Usage: ::" +msgstr "Ejemplo de uso: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Envía un mensaje al canal con el contenido proporcionado." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "El valor del parámetro ``content`` debe de ser un objeto convertible a una cadena mediante ``str(content)``. Si se establece a ``None`` (el valor por defecto), entonces el parámetro ``embed`` debe ser porporcionado." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "Para adjuntar un solo archivo se ha de utilizar el parámetro ``file`` con un :class:`~discord.File`. Para adjuntar varios archivos se recomienda utilizar el parámetro ``files`` en vez, en este caso, proporcionando una :class:`list` de objetos :class:`~discord.File`. **En caso de especificar los dos, se mostrará un error**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "Para enviar un solo embed se ha de utilizar el parámetro ``embed`` con un objeto de tipo :class:`~discord.Embed`. Para adjuntar varios embeds se recomienda utilizar el parámetro ``embeds`` en vez, en este caso, proporcionando un objeto de tipo :class:`list` cuyos elementos han de ser instancias de :class:`~discord.Embed`. **En caso de especificar los dos, se mostrará un error**." + +msgid "The content of the message to send." +msgstr "El contenido del mensaje a enviar." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indica si el mensaje se enviará usando la función texto a voz." + +msgid "The rich embed for the content." +msgstr "El embed que adjuntar." + +msgid "The file to upload." +msgstr "El archivo que adjuntar." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "Una lista de archivos a adjuntar. Debe de ser un máximo de 10 elementos." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "El valor único a utilizar para enviar este mensaje. Si el mensaje se envió correctamente, entonces el mensaje tendrá como nonce este valor." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Si se forzará la validación del atributo :attr:`nonce`. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Si se forzará la validación del atributo :attr:`nonce`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "Si es proporcionado, la cantidad de segundos a esperar en segundo plano antes de eliminar el mensaje que se envió. Si algo falla mientras se eliminaba el mensaje, entonces el error es silenciosamente ignorado." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controla las menciones que se procesarán en el mensaje. Si esto es proporcionado entonces se combinará con :attr:`~discord.Client.allowed_mentions`. La combinación solo sobrescribirá aquellos atributos que se hayan explícitamente proporcionado, sino, usa los establecidos en :attr:`~discord.Client.allowed_mentions`. Si no se proporciona ningún valor, usa como valor el establecido en :attr:`~discord.Client.allowed_mentions`. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controla las menciones que se procesarán en el mensaje. Si esto es proporcionado entonces se combinará con :attr:`~discord.Client.allowed_mentions`. La combinación solo sobrescribirá aquellos atributos que se hayan explícitamente proporcionado, sino, usa los establecidos en :attr:`~discord.Client.allowed_mentions`. Si no se proporciona ningún valor, usa como valor el establecido en :attr:`~discord.Client.allowed_mentions`." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "La referencia al :class:`~discord.Message` que representa el mensaje al cual estás respondiendo, esto se puede crear mediante :meth:`~discord.Message.to_reference` o directamente proporcionando como un :class:`~discord.Message`. Puedes controlar si esto menciona al autor del mensaje al que respondes usando el atributo :attr:`~discord.AllowedMentions.replied_user` del parámetro ``allowed_mentions`` o estableciendo ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "La referencia al :class:`~discord.Message` que representa el mensaje al cual estás respondiendo, esto se puede crear mediante :meth:`~discord.Message.to_reference` o directamente proporcionando como un :class:`~discord.Message`. Puedes controlar si esto menciona al autor del mensaje al que respondes usando el atributo :attr:`~discord.AllowedMentions.replied_user` del parámetro ``allowed_mentions`` o estableciendo ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "Si es establecido, sobrescribe el atributo :attr:`~discord.AllowedMentions.replied_user` del parámetro ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "Si es establecido, sobrescribe el atributo :attr:`~discord.AllowedMentions.replied_user` del parámetro ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "El contenedor de componentes al que añadir al mensaje." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "Una lista de embeds que adjuntar. El máximo de elementos es 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "Una lista de embeds que adjuntar. El máximo de elementos es 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "Una lista de stickers que adjuntar. El máximo de elementos es 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "Una lista de stickers que adjuntar. El máximo de elementos es 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Si suprimir los embeds del mensaje." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Si suprimir las notificaciones push y las notificaciones de escritorio de este mensaje. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Si suprimir las notificaciones push y las notificaciones de escritorio de este mensaje." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "La encuesta a enviar. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "La encuesta a enviar." + +msgid "The message that was sent." +msgstr "El mensaje que fue enviado." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Algo falló mientras se enviaba el mensaje." + +msgid "You do not have the proper permissions to send the message." +msgstr "No tienes los permisos necesarios para enviar este mensaje." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "La lista ``files`` no cumple con los límites de tamaño, especificaste ambos parámetros ``file`` y ``files``, especificaste ambos parámetros ``embed`` y ``embeds``, o el valor del parámetro ``reference`` no es un objeto de tipo :class:`~discord.Message`, :class:`~discord.MesageReference` o :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Activa el indicador de *escribiendo* en el canal." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "El indicador *escribiendo* desaparecerá luego de 10 segundos, o cuando se envía un mensaje." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Obtiene un solo :class:`~discord.Message` del canal." + +msgid "The message ID to look for." +msgstr "El ID del mensaje a buscar." + +msgid "The message asked for." +msgstr "El mensaje solicitado." + +msgid "The specified message was not found." +msgstr "El mensaje especificado no fue encontrado." + +msgid "You do not have the permissions required to get a message." +msgstr "No tienes los permisos necesarios para poder obtener un mensaje." + +msgid "Retrieving the message failed." +msgstr "Algo falló mientras se obtenía el mensaje." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Obtiene todos los mensajes que están fijados en el canal." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Por una limitación con la API de Discord, los objetos :class:`.Message` retornados por este método no contienen información completa de :attr:`.Message.reactions`." + +msgid "The messages that are currently pinned." +msgstr "Los mensajes que están fijados." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Algo falló mientras se obtenían los mensajes fijados." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Retorna un :class:`bool` el cual indica si tienes permisos de enviar el/los objeto/s." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indica si tienes permisos de enviar el/los objeto/s." + +msgid "An invalid type has been passed." +msgstr "Un objeto de tipo no válido ha sido proporcionado." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "Una CBA que detalla las operaciones más comunes en un canal al que se puede conectar." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "Esta CBA no fue decorada con :func:`typing.runtime_checkable` por lo que fallará las comprobaciones :func:`ininstance` e :func:`issubclass`." + diff --git a/docs/locales/es/LC_MESSAGES/api/application_commands.po b/docs/locales/es/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..ee950c0b7a --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/es/LC_MESSAGES/api/application_info.po b/docs/locales/es/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..31922fca86 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/es/LC_MESSAGES/api/async_iter.po b/docs/locales/es/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..b322381f39 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Returns" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Return type" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/es/LC_MESSAGES/api/audit_logs.po b/docs/locales/es/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..05c56e27c2 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/es/LC_MESSAGES/api/clients.po b/docs/locales/es/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..9462b13bf7 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Ejemplo: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/es/LC_MESSAGES/api/cogs.po b/docs/locales/es/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..9449613e48 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Returns" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Return type" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/es/LC_MESSAGES/api/data_classes.po b/docs/locales/es/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..bc1c9d6327 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Returns" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/es/LC_MESSAGES/api/enums.po b/docs/locales/es/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..b12fa4f3a2 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/es/LC_MESSAGES/api/events.po b/docs/locales/es/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..3de9f161c1 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/es/LC_MESSAGES/api/exceptions.po b/docs/locales/es/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..1840bc94e8 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/es/LC_MESSAGES/api/index.po b/docs/locales/es/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..80efb62166 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/es/LC_MESSAGES/api/models.po b/docs/locales/es/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..41cbfb8bf5 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Returns" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "El nombre del usuario." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "El nombre global del usuario." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Retorna una cadena que permite mencionar al usuario." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "La posición del canal en la lista de canales. Este es un entero comenzando desde 0. p. ej., el primer canal tiene la posición 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "No tienes los permisos necesarios para crear este canal." + +msgid "Creating the channel failed." +msgstr "Algo falló mientras se creaba el canal." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "No tienes los permisos necesarios para poder obtener esta información." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "Algo falló mientras se obtenía la información." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "La razón por la que se hace esta acción. Se muestra en el registro de auditoría." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "La lista de invitaciones actualmente activas." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "Retorna una cadena que permite mencionar el canal." + +msgid "Returns the channel's creation time in UTC." +msgstr "Retorna la fecha de creación del canal en UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Gestiona la resolución de los permisos para el :class:`~discord.Member` o :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "El objeto del que obtener los permisos. Este puede ser un miembro o rol. Si es un rol, entonces las sobrescrituras de miembro no son calculadas." + +msgid "The resolved permissions for the member or role." +msgstr "Los permisos calculados del miembro o rol." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "El nombre del canal." + +msgid "The guild the channel belongs to." +msgstr "El servidor al cual este canal pertenece." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clona este canal. Esto crea uno nuevo con las mismas propiedades." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.manage_channels` para poder usar esto." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "El nuevo nombre del canal. Si no se proporciona, se usará el nombre del canal existente." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "La razón por la que se clona el canal. Se muestra en el registro de auditoría." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "La categoría a la cual pertenece este canal." + +msgid "If there is no category then this is ``None``." +msgstr "Si no pertenece a ninguna, entonces esto retorna ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Retorna una lista de roles que han sido sobreescritos de su valor predeterminado en el atributo :attr:`~discord.Guild.roles`." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Crea una invitación instantánea a partir de un canal de texto o voz." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.create_instant_invite` para poder usar esto." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "Cuánto durará la invitación en segundos. Si se proporciona 0 entonces esta invitación no expirará. El valor por defecto es ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "Cuántos usos tendrá la invitación. Si se proporciona 0 entonces tendrá usos ilimitados. El valor por defecto es ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Marca que la invitación otorgará una membresía temporal (es decir, son expulsados después de desconectarse). El valor por defecto es ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indica si debería crearse un enlace único para la invitación. El valor por defecto es ``True``. Si se proporciona ``False`` entonces retornará una invitación ya existente." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "La razón por la que se crea la invitación. Se muestra en el registro de auditoría." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "El tipo de objetivo para la invitación al canal de voz, si aplicable. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "El tipo de objetivo para la invitación al canal de voz, si aplicable." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "El usuario cuál directo mostrar en esta invitación. Obligatorio si el valor del parámetro `target_type` es `TargetType.stream`. El usuario debe estar en directo en el canal. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "El usuario cuál directo mostrar en esta invitación. Obligatorio si el valor del parámetro `target_type` es `TargetType.stream`. El usuario debe estar en directo en el canal." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "El ID de la aplicación que mostrar en la invitación. Obligatorio si el valor del parámetro de `target_type` es `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "El ID de la aplicación que mostrar en la invitación. Obligatorio si el valor del parámetro de `target_type` es `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "El objeto de evento que enlazar a la invitación. Atajo de :meth:`.Invite.set_scheduled_event`. Véase también :meth:`.Invite.set_scheduled_event` para más información en como enlazar un evento a la invitación. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "El objeto de evento que enlazar a la invitación. Atajo de :meth:`.Invite.set_scheduled_event`." + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "Véase también :meth:`.Invite.set_scheduled_event` para más información en como enlazar un evento a la invitación." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Algo falló al crear la invitación." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "El canal que se proporcionó era una categoría o era un canal no válido." + +msgid "Deletes the channel." +msgstr "Elimina este canal." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.manage_channels` para poder usar esto." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "La razón por la que se elimina el canal. Se muestra en el registro de auditoría." + +msgid "You do not have proper permissions to delete the channel." +msgstr "No tienes los permisos necesarios para poder eliminar el canal." + +msgid "The channel was not found or was already deleted." +msgstr "El canal no se encontró o ya fue eliminado." + +msgid "Deleting the channel failed." +msgstr "Algo falló mientras se eliminaba el canal." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Retorna una lista de todas las invitaciones activas de este canal." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.manage_channels` para poder usar esto." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Retorna un enlace que permite al cliente ir directamente al canal." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "Una interfaz completa la cual ayuda a mover un canal en relación con los otros." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "Si la posición exacta a la que quiere moverse es requerida, deberías usar ``edit`` en su lugar." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Los canales de voz siempre se ordenarán después de los canales de texto. Esto es una limitación de Discord." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Si debería moverse el canal al principio de la lista de canales (o categoría, si es proporcionada). Esto es mutuamente excluyente con ``end``, ``before`` y ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Si mover el canal al final de la lista de canales (o de la categoría, si es proporcionada). Esto es mutuamente excluyente con ``beginning``, ``before`` y ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "El canal que debería estar antes del canal actual. Esto es mutuamente excluyente con ``beginning``, ``end`` y ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "El canal que debería estar después del canal actual. Esto es mutuamente excluyente con ``beginning``, ``end`` y ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "La cantidad de canales que mover para compensar. Por ejemplo, un desplazamiento de valor ``2`` con ``beginning=True`` moverá el canal 2 posiciones a partir del principio. Un número positivo mueve el canal hacia abajo, mientras uno negativo lo mueve hacia arriba. Tenga en cuenta que este número es relativo y calculado a partir de los parámetros ``beginning``, ``end``, ``before`` y ``after``." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "La categoría a la que mover este canal. Si se proporciona ``None`` entonces mueve el canal fuera de esta. Este parámetro es ignorado si se mueve una categoría." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Si se deben sincronizar los permisos con la categoría a la que se mueve (si es proporcionada)." + +msgid "The reason for the move." +msgstr "La razón por la que se mueve este canal." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "Se proporcionó una posición no válida, o se mezclaron parámetros mutuamente excluyentes." + +msgid "You do not have permissions to move the channel." +msgstr "No tienes los permisos necesarios para poder mover el canal." + +msgid "Moving the channel failed." +msgstr "Algo falló mientras se movía el canal." + +msgid "Returns all of the channel's overwrites." +msgstr "Retorna todas las sobrescrituras de este canal." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "Esto es retornado como un diccionario donde la llave es el objeto, que puede ser de tipo :class:`~discord.Role` o :class:`~discord.Member`, y el valor es la sobrescritura, que es de tipo :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "Las sobrescrituras de los permisos de este canal." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Retorna las sobrescrituras de un miembro o rol específicas de este canal." + +msgid "The role or user denoting whose overwrite to get." +msgstr "El rol o usuario de los que quieres obtener las sobrescrituras." + +msgid "The permission overwrites for this object." +msgstr "Las sobre escrituras de los permisos para este objeto." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "Esta función tiene en cuenta los siguientes casos:" + +msgid "Guild owner" +msgstr "Propietario del servidor" + +msgid "Guild roles" +msgstr "Roles del servidor" + +msgid "Channel overrides" +msgstr "Sobrescrituras de canales" + +msgid "Member overrides" +msgstr "Sobrescrituras de miembros" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "Si se proporciona un :class:`~discord.Role`, entonces esto comprueba los permisos de alguien que tenga el rol, que es esencialmente:" + +msgid "The default role permissions" +msgstr "Los permisos del rol por defecto" + +msgid "The permissions of the role used as a parameter" +msgstr "Los permisos del rol usado como parámetro" + +msgid "The default role permission overwrites" +msgstr "Las sobrescrituras de permisos del rol por defecto" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "Las sobrescrituras de permisos del rol usado como parámetro" + +msgid "The object passed in can now be a role object." +msgstr "El objeto proporcionado ahora puede ser un rol." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Si los permisos de este canal están sincronizados con los de la categoría a la que pertenece." + +msgid "If there is no category then this is ``False``." +msgstr "Si no pertenece a ninguna categoría, entonces esto es ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Establece las sobrescrituras de permisos para un objetivo en el canal." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "El parámetro ``target`` debe ser del tipo :class:`~discord.Member` o :class:`~discord.Role` que pertenezca al servidor." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "El parámetro ``overwrite``, si es proporcionado, debe ser ``None`` o de tipo :class:`~discord.PermissionOverwrite`. Por conveniencia, puedes proporcionar argumentos de palabras clave que denoten atributos :class:`~discord.Permissions`. Si eso se hace, no se podrán combinar los argumentos de palabras clave con el parámetro ``overwrite``." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "Si el parámetro ``overwrite`` es ``None``, entonces se eliminarán las sobrescrituras ya existentes." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "Debes tener el permiso :attr:`~discord.Permissions.manage_roles` para poder usar esto." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "Este método *reemplaza* las sobrescrituras antiguas con las proporcionadas." + +msgid "Setting allow and deny: ::" +msgstr "Estableciendo permitidos y denegados: ::" + +msgid "Deleting overwrites ::" +msgstr "Eliminar sobrescrituras: ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Usando :class:`~discord.PermissionOverwrite`: ::" + +msgid "The member or role to overwrite permissions for." +msgstr "El miembro o rol al que editar las sobrescrituras de permisos." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "Los permisos que aceptar o denegar al objetivo, o ``None`` para eliminar la sobrescritura." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "Una lista de argumentos de palabras clave de los permisos a establecer para facilitar el uso. No se puede combinar con ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "No tienes permisos para editar los permisos de este canal." + +msgid "Editing channel specific permissions failed." +msgstr "Algo falló mientras se editaban los permisos del canal." + +msgid "The role or member being edited is not part of the guild." +msgstr "El rol o miembro que se va a editar no es parte del servidor." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "El parámetro ``overwrite`` no es válido o el tipo de objetivo no era un :class:`~discord.Role` o :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "El usuario que te representa." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/es/LC_MESSAGES/api/sinks.po b/docs/locales/es/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..c041d54623 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/es/LC_MESSAGES/api/ui_kit.po b/docs/locales/es/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..0e374cd9d7 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Returns" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/es/LC_MESSAGES/api/utils.po b/docs/locales/es/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..c59ea4f08e --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Returns" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/es/LC_MESSAGES/api/version_info.po b/docs/locales/es/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..a57036beac --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/es/LC_MESSAGES/api/voice.po b/docs/locales/es/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..ce04e5fda5 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Returns" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/es/LC_MESSAGES/api/webhooks.po b/docs/locales/es/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..c6f477ed90 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Returns" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/es/LC_MESSAGES/changelog.po b/docs/locales/es/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..29a1ffefe4 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/es/LC_MESSAGES/cogs.po b/docs/locales/es/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..d3b99d560a --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/es/LC_MESSAGES/discord.po b/docs/locales/es/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..6233cb544e --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Crear una cuenta bot" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "Para poder trabajar con la biblioteca y la API de Discord en general, primero debemos crear una cuenta de bot en Discord." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Crear una cuenta de bot es un proceso bastante sencillo." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Asegúrate de haber iniciado sesión en el `sitio web de Discord `_." + +msgid "Navigate to the `application page `_" +msgstr "Ve a la página de `aplicaciones `_" + +msgid "Click on the \"New Application\" button." +msgstr "Haz clic en el botón \"New Application\"." + +msgid "The new application button." +msgstr "El botón de nueva aplicación." + +msgid "Give the application a name and click \"Create\"." +msgstr "Dale un nombre a la aplicación y haz clic en \"Create\"." + +msgid "The new application form filled in." +msgstr "El formulario de la nueva aplicación llenado." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Crea un usuario de bot navegando a la pestaña \"Bot\" y haz clic en \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Haz clic en \"Yes, do it!\" para continuar." + +msgid "The Add Bot button." +msgstr "El botón Añadir bot." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Asegúrate de que el **Public Bot** esté activado si quieres que otros inviten a tu bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "También deberías asegurarte que **Require OAuth2 Code Grant** esté desactivado, a no ser que estés desarrollando un servicio que lo necesite. Si no estás seguro, entonces **mantenlo desactivado**." + +msgid "How the Bot User options should look like for most people." +msgstr "Cómo se deberían ver las opciones de usuario Bot para la mayoría de las personas." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copie el token usando el botón \"Copy\"." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**Este no es el Client Secret de la página de General Information.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "Vale la pena señalar que este token es esencialmente la contraseña de tu bot. **Nunca** deberías compartir esto con otra persona. Al hacerlo, alguien puede iniciar sesión en tu bot y realizar acciones maliciosas, como abandonar servidores, banear todos los miembros dentro de un servidor, o mencionar a everyone maliciosamente." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "Las posibilidades son infinitas, así que **no compartas este token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "Si accidentalmente filtraste tu token, haz clic en el botón \"Regenerate\" tan pronto como puedas. Esto revoca tu viejo token y vuelve a generar uno nuevo. Ahora necesitas usar este nuevo token para iniciar sesión." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "Y eso es todo. Ahora tienes una cuenta de bot y puedes iniciar sesión con ese token." + +msgid "Inviting Your Bot" +msgstr "Invitar a tu bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "Así que has creado un usuario de bot, pero en realidad no está en ningún servidor." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "Si quieres invitar a tu bot debes crear una URL de invitación para él." + +msgid "Click on your bot's page." +msgstr "Haz clic en la página de tu bot." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expande la pestaña \"OAuth2\" y haz clic en \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "Cómo debería verse la pestaña OAuth2." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Marca las casillas \"bot\" y \"applications.commands\" bajo \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "Las casillas \"bot\" y \"applications.commands\" marcadas." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Selecciona los permisos necesarios para que tu bot funcione bajo \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Por favor, ten en cuenta las consecuencias de requerir que tu bot tenga el permiso de \"Administrador\"." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Los propietarios de bots deben tener A2F habilitados para ciertas acciones y permisos cuando se agregan en servidores que tienen habilitado A2F. Consulta la `página de soporte de A2F `_ para más información." + +msgid "The permission checkboxes with some permissions checked." +msgstr "Las casillas de permisos con algunos permisos marcados." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Ahora la URL resultante puede ser usada para agregar tu bot a un servidor. Copia y pega la URL en tu navegador, elige un servidor al que invitar al bot, y haz clic en \"Autorizar\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "La persona que añade el bot necesita permisos de \"Administrar Servidor\" para hacerlo." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "Si quieres generar esta URL dinámicamente en tiempo de ejecución dentro de tu bot y usando la interfaz :class:`discord.Permissions`, puedes usar :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/es/LC_MESSAGES/ext/bridge/api.po b/docs/locales/es/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..c8f2bfa309 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/es/LC_MESSAGES/ext/bridge/index.po b/docs/locales/es/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..d829d3af31 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/es/LC_MESSAGES/ext/commands/api.po b/docs/locales/es/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..76f6bbe713 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/es/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/es/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..b6bdcd19af --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/es/LC_MESSAGES/ext/commands/commands.po b/docs/locales/es/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..1a44455c05 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/es/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/es/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..aefcfd5e04 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/es/LC_MESSAGES/ext/commands/index.po b/docs/locales/es/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..201036b377 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/es/LC_MESSAGES/ext/pages/index.po b/docs/locales/es/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..30b0c29ee7 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Returns" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/es/LC_MESSAGES/ext/tasks/index.po b/docs/locales/es/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..beb1ad9f67 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Raises" +msgstr "Raises" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Returns" +msgstr "Returns" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/es/LC_MESSAGES/faq.po b/docs/locales/es/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..6fdebb4be3 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Preguntas frecuentes" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "Esta es una lista de preguntas frecuentes sobre el uso de ``Pycord`` y sus módulos de extensión. Siéntete libre de sugerir una nueva pregunta o envía una a través de una pull request." + +msgid "Coroutines" +msgstr "Corutinas" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Las preguntas sobre corutinas y asyncio pertenecen aquí." + +msgid "What is a coroutine?" +msgstr "¿Qué es una corutina?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "Una |coroutine_link|_ es una función que debe ser llamada con ``await`` o ``yield from``. Cuando Python se encuentra con un ``await``, se detiene la ejecución de la función en ese punto y se trabaja en otras cosas hasta que regresa a ese punto y termina su trabajo. Esto le permite a tu programa hacer múltiples cosas al mismo tiempo sin usar hilos o multiprocesamiento complicado." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**Si te olvidas de utilizar await en una corrutina, entonces ésta no funcionará. Nunca olvides utilizar await en una corutina.**" + +msgid "Where can I use ``await``\\?" +msgstr "¿Dónde puedo usar ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "Solo puedes utilizar ``await`` dentro de funciones ``async def`` y en ningún otro lugar." + +msgid "What does \"blocking\" mean?" +msgstr "¿Qué significa \"bloquear\"?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "En la programación asíncrona una llamada de bloqueo es esencialmente todas las partes de la función que no son ``await``. Sin embargo, no desesperes, porque no todas las formas de bloqueo son malas! Usar llamadas de bloqueo es inevitable, pero debes trabajar en asegurarte de no bloquear excesivamente las funciones. Recuerda, si bloqueas durante demasiado tiempo, tu bot se congelará ya que no ha detenido la ejecución de la función en ese momento para hacer otras cosas." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "Si activas el registro, esta biblioteca intentará advertirte de que un bloqueo está ocurriendo con el mensaje: ``Heartbeat blocked for more than N seconds.`` Puedes ver :ref:`logging_setup` para detalles sobre como activar el registro." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "Una fuente común de bloqueo durante demasiado tiempo es algo como :func:`time.sleep`. No hagas eso. Utiliza :func:`asyncio.sleep` en su lugar. Similar a este ejemplo: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Otra fuente común de bloqueo durante demasiado tiempo es realizar peticiones HTTP con el famoso módulo :doc:`requests `. Mientras que :doc:`requests ` es un asombroso módulo para la programación no asincrónica, no es una buena opción para :mod:`asyncio` porque ciertas peticiones pueden bloquear el loop de eventos por demasiado tiempo. En su lugar, usa el módulo :doc:`aiohttp ` el cual viene instalado de lado con esta biblioteca." + +msgid "Consider the following example: ::" +msgstr "Consideremos el siguiente ejemplo: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "Las preguntas generales sobre la biblioteca están aquí." + +msgid "Where can I find usage examples?" +msgstr "¿Dónde puedo encontrar ejemplos de uso?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Puedes encontrar ejemplos de código en la `carpeta de ejemplos `_ en el repositorio." + +msgid "How do I set the \"Playing\" status?" +msgstr "¿Cómo establezco el estado \"Jugando\"?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "El argumento de palabra clave ``activity`` puede ser pasado en el constructor :class:`Client` o :meth:`Client.change_presence`, dado un objeto :class:`Activity`." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "El constructor puede ser usado para actividades estáticas, mientras que :meth:`Client.change_presence` puede ser usado para actualizar la actividad en tiempo de ejecución." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "No es para nada recomendable usar :meth:`Cliente.change_presence` o llamadas de API en :func:`on_ready` ya que este evento puede ser llamado muchas veces en tiempo de ejecución, no solo una vez." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "Existe una gran probabilidad de desconexión si las presencias son cambiadas justo después de conectarse." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "El tipo de estado (jugando, escuchando, streaming, viendo) puede ser establecido usando el enum :class:`ActivityType`. Por motivos de optimización de memoria, algunas actividades son ofrecidas en versiones reducidas:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Al juntar estas dos piezas de información, obtenemos lo siguiente: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "¿Cómo puedo enviar un mensaje a un canal en específico?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "Debemos obtener el canal directamente y luego llamar al método apropiado. Ejemplo: ::" + +msgid "How do I send a DM?" +msgstr "¿Cómo envío un mensaje directo?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Obtén una instancia de :class:`User` o :class:`Member` y llama al método :meth:`abc.Messageable.send`. Por ejemplo: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "Si estás respondiendo a un evento, como :func:`on_message`, ya posees el objeto :class:`User` a través de :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "¿Cómo obtengo el ID de un mensaje enviado?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` retorna el :class:`Message` que fue enviado. Puedes acceder al ID del mensaje a través de :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "¿Cómo puedo adjuntar una imagen?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "Para adjuntar un archivo a Discord, tienes que utilizar una instancia de :class:`File`." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "La clase :class:`File` acepta dos parámetros, un objeto tipo archivo (o la ruta de este) y el nombre del archivo a pasar a Discord al momento de subirlo." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "Si quieres subir una imagen, es tan simple como: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "Si tienes un objeto tipo archivo, puedes hacer lo siguiente: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "Para subir varios archivos, puedes utilizar el argumento de palabra clave ``files`` en lugar de ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "Si quiere subir algo desde una URL, tendrás que realizar una petición HTTP utilizando :doc:`aiohttp ` y luego pasar una instancia de :class:`io.BytesIO` a la clase :class:`File`. Tal que así:" + +msgid "How can I add a reaction to a message?" +msgstr "¿Cómo puedo añadir una reacción a un mensaje?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "Utiliza el método :meth:`Message.add_reaction`." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "Si quieres usar emojis unicode, debes pasar un unicode válido en una cadena. En tu código, puedes escribir esto de varias maneras diferentes:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Ejemplo rápido: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "En caso de que quieras usar emojis que vienen de un mensaje, ya obtienes sus puntos de código en el contenido sin necesidad de hacer nada especial. **No puedes** enviar abreviaturas de estilo ``':thumbsup:'```." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "Para emojis personalizados, debes pasar una instancia de :class:`Emoji`. También puedes pasar un string del tipo ``'<:nombre:id>'``, pero si puedes usar dicho emoji, deberías poder usar el método :meth:`Client.get_emoji` para obtener un emoji a través de su ID. Como alternativa, puedes utilizar :func:`utils.find`/ :func:`utils.get` sobre las colecciones de :attr:`Client.emojis` o :attr:`Guild.emojis`." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "El nombre y ID de un emoji personalizado puede ser encontrado en Discord añadiendo a ``:custom_emoji:`` una barra invertida. Por ejemplo, al enviar el mensaje ``\\:python3:`` en Discord, el resultado será ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "¿Cómo puedo pasar una corrutina a la función \"after\" del reproductor?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "El reproductor de música de la biblioteca se lanza en un hilo separado, por consecuencia, no se ejecuta dentro de una corrutina. Esto no significa que no es posible llamar una corrutina en el parámetro ``after``. Para hacerlo debes pasar un callable que contenga un par de aspectos." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "De lo primero que debes ser consciente es que llamar a una corrutina no es una operación segura en hilos. Puesto que estamos en otro hilo, debemos tomar precaución al llamar operaciones seguras en hilos así las cosas no fallan. Para nuestra suerte, :mod:`asyncio` viene con la función :func:`asyncio.run_coroutine_threadsafe` que nos permite llamar a una corrutina desde otro hilo." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "Sin embargo, esta función devuelve un :class:`~concurrent.futures.Future` y para llamarlo tenemos que obtener su resultado. Poniendo todo esto junto podemos hacer lo siguiente: ::" + +msgid "How do I run something in the background?" +msgstr "¿Cómo puedo ejecutar algo en segundo plano?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Comprueba el ejemplo background_task.py. `_" + +msgid "How do I get a specific model?" +msgstr "¿Cómo obtengo un modelo en específico?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "Hay varias maneras de hacer esto. Si tienes un ID de un modelo en específico entonces puedes usar una de las siguientes funciones:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "Lo siguiente usa una solicitud HTTP:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "Si las funciones anteriores no te ayudan, entonces usa :func:`utils.find` o :func:`utils.get` para encontrar modelos específicos." + +msgid "How do I make a web request?" +msgstr "¿Cómo hago una petición web?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "Para hacer una solicitud, deberás usar una librería sin bloqueo. Esta biblioteca ya usa y requiere una librería de terceros para hacer peticiones, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "Véase la `documentación completa de aiohttp `_ para más información." + +msgid "How do I use a local image file for an embed image?" +msgstr "¿Cómo uso una imagen local para una imagen en una embed?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Los casos especiales de Discord cargan una imagen adjunta y la usan dentro de una embed para que no se muestre por separado, sino en la thumbnail (miniatura) de la embed, imagen, el pie o el icono de autor." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "Para hacerlo, adjunta una imagen normalmente con :meth:`abc.Messageable.send`, y establece la URL de la imagen a ``attachment://image.png``, donde ``image.png`` es el nombre de la imagen que vas a enviar." + +msgid "Is there an event for audit log entries being created?" +msgstr "¿Hay un evento para la creación de registros de auditoría?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "A partir de la versión 2.5, puedes recibir entradas del registro de auditoría con el evento :func:`on_audit_log_entry`." + +msgid "Commands Extension" +msgstr "Extensiones de comandos" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Las preguntas con respecto a ``discord.ext.commands`` pertenecen aquí." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "¿Por qué ``on_message`` hace que mis comandos dejen de funcionar?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Sobrescribir el evento predeterminado ``on_message`` prohíbe a cualquier comando extra de ejecutarse. Para arreglar esto, añade ``bot.process_commands(message)`` al final de tu ``on_message``. Por ejemplo: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Como alternativa, puedes colocar la lógica de tu ``on_message`` en un **listener**. Con esta configuración, NO deberías llamar manualmente a ``bot.process_commands()``. Esto también te permite realizar múltiples cosas asincrónicamente en respuesta a un mensaje. Ejemplo::" + +msgid "Why do my arguments require quotes?" +msgstr "¿Por qué mis argumentos requieren comillas?" + +msgid "In a simple command defined as: ::" +msgstr "En un simple comando definido como: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Llamándolo a través de ``?echo a b c`` solo obtendrá el primer argumento e ignorará el resto. Para arreglar esto deberías llamar al comando a través de ``?echo \"a b c\"`` o cambiar la definición de tu comando para obtener un comportamiento \"consumir al resto\". Ejemplo: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "Esto te permitirá usar ``?echo a b c`` sin la necesidad de comillas." + +msgid "How do I get the original ``message``\\?" +msgstr "¿Cómo obtengo el ``mensaje`` original\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "El :class:`~ext.commands.Context` contiene el atributo :attr:`~.Context.message` para obtener el mensaje original." + +msgid "Example: ::" +msgstr "Ejemplo: ::" + +msgid "How do I make a subcommand?" +msgstr "¿Cómo hago un subcomando?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Usa el decorador :func:`~ext.commands.group`. Esto transformará la retrollamada en una :class:`~ext.commands.Group` que te permitirá añadir comandos al grupo operando como un \"subcomando\". Estos grupos también pueden ser anidados arbitrariamente." + +msgid "This could then be used as ``?git push origin master``." +msgstr "Esto podría ser usado como ``?git push origin master``." + diff --git a/docs/locales/es/LC_MESSAGES/index.po b/docs/locales/es/LC_MESSAGES/index.po new file mode 100644 index 0000000000..862d065966 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensiones" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Bienvenido a Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord es un empaquetador de la API de Discord moderno, fácil de usar y asíncrono." + +msgid "**Features:**" +msgstr "**Características:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "API moderna y pitónica usando la sintaxis ``async``\\/``await``" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Manejo sano de los límites que previene 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Extensión de comandos para ayudar a la creación de bots" + +msgid "Easy to use with an object oriented design" +msgstr "Fácil de usar con un diseño orientado a objetos" + +msgid "Optimised for both speed and memory" +msgstr "Optimizado para velocidad y memoria" + +msgid "Getting started" +msgstr "Comenzando" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "¿Es tu primera vez utilizando la librería? ¡Este es el lugar para empezar!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**Primeros pasos:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guía `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Trabajando con Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Ejemplos:** Muchos ejemplos se encuentran en nuestro :resource:`repositorio `." + +msgid "Getting help" +msgstr "Obtener ayuda" + +msgid "If you're having trouble with something, these resources might help." +msgstr "Si presentas problemas con algo, estos recursos podrían ayudarte." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Prueba a revisar las :doc:`faq` primero, contiene respuestas a preguntas comunes." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Pregúntanos y pasa el rato con nosotros en nuestro servidor de :resource:`Discord `." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "Si estás buscando algo en específico, prueba el :ref:`índice ` o el :ref:`buscador `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Reporta bugs en nuestro :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuales" + +msgid "These pages go into great detail about everything the API can do." +msgstr "Estas páginas entran en gran detalle sobre todo lo que la API puede hacer." + +msgid "Core API" +msgstr "Núcleo de la API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "Estas extensiones te ayudan durante el desarrollo cuando se trata de tareas comunes." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Framework para comandos del bot" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - Ayudantes de asyncio.Task" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - Un módulo extensión para paginación" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - Módulo que enlaza los comandos de barra y comandos de chat" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "Si estás buscando algo relacionado con el proyecto en sí, está aquí." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - El registro de cambios para la librería." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - Las garantías de versionado de la librería." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - Cómo migrar de v0.x a v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - Cómo migrar de v1.x a v2.x." + diff --git a/docs/locales/es/LC_MESSAGES/installing.po b/docs/locales/es/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..7a3215f27a --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Instalación de Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "Esta es la documentación para Pycord, una biblioteca para Python para ayudar en la creación de aplicaciones que usan la API de Discord." + +msgid "Prerequisites" +msgstr "Requisitos previos" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord funciona con Python 3.8 o superior. No se proporciona soporte para versiones anteriores de Python. Python 2.7 o inferior no es compatible. Python 3.7 o inferior, no es compatible." + +msgid "Installing" +msgstr "Instalación" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "Para nuevas características en las próximas versiones, necesitarás instalar la versión de pre lanzamiento hasta que se publique una versión estable. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "Para los usuarios de Windows, este comando debe usarse para instalar la versión de pre lanzamiento: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "Puedes obtener la biblioteca directamente desde PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "Si estás usando Windows, entonces deberías usar lo siguiente en su lugar: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "Para instalar paquetes adicionales para una mayor velocidad, deberías usar ``py-cord[speed]`` en lugar de ``py-cord``, por ejemplo." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "Para obtener soporte de voz, deberías usar ``py-cord[voice]`` en lugar de ``py-cord``, por ejemplo ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "En entornos Linux, la instalación de voz requiere las siguientes dependencias:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "Para un sistema basado en Debian, el siguiente comando instalará estas dependencias:" + +msgid "Remember to check your permissions!" +msgstr "¡Recuerda comprobar tus permisos!" + +msgid "Virtual Environments" +msgstr "Entornos virtuales" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "A veces se quiere evitar que las bibliotecas contaminen las instalaciones en el sistema o usar una versión distinta de aquellas instaladas en el sistema. Es posible que tampoco tengas permisos para instalar bibliotecas en tu sistema. Para este propósito, la biblioteca estándar a partir de Python 3.3 viene con un concepto llamado \"entornos virtuales\" para ayudar a mantener estas versiones separadas." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "Puedes encontrar un tutorial más detallado en :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "Sin embargo, para lo rápido y sucio:" + +msgid "Go to your project's working directory:" +msgstr "Ve al directorio de trabajo de tu proyecto:" + +msgid "Activate the virtual environment:" +msgstr "Activa el entorno virtual:" + +msgid "On Windows you activate it with:" +msgstr "En Windows lo activas con:" + +msgid "Use pip like usual:" +msgstr "Usa pip como de costumbre:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Enhorabuena. Ahora tienes un entorno virtual configurado." + +msgid "Basic Concepts" +msgstr "Conceptos básicos" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord gira en torno al concepto de :ref:`eventos `. Un evento es algo a lo que escuchas y luego respondes. Por ejemplo, cuando ocurre un mensaje, recibirás un evento al que puedas responder." + +msgid "A quick example to showcase how events work:" +msgstr "Un ejemplo rápido para mostrar cómo funcionan los eventos:" + diff --git a/docs/locales/es/LC_MESSAGES/intents.po b/docs/locales/es/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..216fcfeab3 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "Un vistazo a las intenciones del gateway" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "La versión 1.5 viene con la introducción de :class:`Intents`. Este es un cambio radical en la forma que se escriben los bots. Una intención básicamente permite a tu bot a suscribirse a ciertos eventos del bucket. Los eventos que corresponden a cada intención están documentados en cada atributo individual de :class:`Intents`." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "Estas intenciones son pasadas al constructor de :class:`Client`, o sus subclases (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`), con el argumento ``intents``." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "Si no pasas ninguna intención, la biblioteca predeterminará a habilitar todas las intenciones, a excepción de las intenciones privilegiadas, actualmente siendo :attr:`Intents.members`, :attr:`Intents.presences`, y :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "¿Qué intenciones se necesitan?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "Las intenciones que son necesarias para tu bot solo pueden ser dictadas por ti mismo. Cada atributo en la clase :class:`Intents` documenta a que :ref:`eventos ` corresponden y que tipo de caché habilitan." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "Por ejemplo, si quieres un bot que funcione sin eventos que son molestos como las presencias o el tipo, entonces podríamos hacer lo siguiente:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Ten en cuenta que esto no habilita :attr:`Intents.members` o :attr:`Intents.message_content` ya que son intenciones privilegiadas." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Otro ejemplo donde se muestra un bot que solo se ocupa de los mensajes e información de servidores:" + +msgid "Privileged Intents" +msgstr "Intenciones privilegiadas" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "Con el cambio de la API que requiere que los propietarios de los bots especifiquen intenciones, algunas intenciones fueron restringidas aún más y requieren más pasos manuales. Estas intenciones son llamadas **intenciones privilegiadas**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "Una intención privilegiada es aquella que requiere que vayas al developer portal y la habilites manualmente. Para habilitar una intención privilegiada, haz lo siguiente:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Asegúrate de haber iniciado sesión en el `sitio web de Discord `_." + +msgid "Navigate to the `application page `_." +msgstr "Navega a la página de `aplicaciones `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Haz clic en el bot para que el cual quieres activar las intenciones privilegiadas." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navega a la pestaña de bot en el lado izquierda de la pantalla." + +msgid "The bot tab in the application page." +msgstr "La pestaña de bot en la página de la aplicación." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Desplázate hacia abajo hasta la sección de \"Privileged Gateway Intents\" y activa los que desees." + +msgid "The privileged gateway intents selector." +msgstr "El selector de intenciones privilegiadas." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Habilitar intenciones privilegiadas cuando tu bot está en más de 100 servidores, requiere pasar por la `verificación de bots `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Incluso si activas las intenciones a través del portal de desarrolladores, todavía tienes que activar las intenciones a través de tu código." + +msgid "Do I need privileged intents?" +msgstr "¿Necesito intenciones privilegiadas?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "Esta es una lista de verificación rápida para ver si necesitas intenciones privilegiadas específicas." + +msgid "Presence Intent" +msgstr "Intención de presencia" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Si usas :attr:`Member.status` en absoluto para seguir los estados de los miembros." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Si usas :attr:`Member.activity` o :attr:`Member.activity.activities` para comprobar las actividades de miembros." + +msgid "Member Intent" +msgstr "Intención de miembros" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Si deseas registrar las entradas o salidas de miembros, corresponde a los eventos :func:`on_member_join` y :func:`on_member_remove`." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Si deseas realizar un seguimiento de las actualizaciones de los miembros, tales como nick o cambios de rol." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Si desea rastrear actualizaciones de usuarios como nombres de usuario, avatares, discriminadores, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Si quieres solicitar la lista de miembros del servidor a través de :meth:`Guild.chunk` o :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Si quieres un caché de miembros de alta precisión bajo :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Intención de contenido del mensaje" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Si tienes un sistema de comandos basado en mensajes usando ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Si usas el evento :func:`on_message` para cualquier cosa usando contenido de mensajes, tales como moderación automática." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Si usas el contenido del mensaje en :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "El bot todavía puede recibir contenidos de mensajes en sus MD, cuando se lo menciona en los mensajes en servidores, y para sus propios mensajes en servidores." + +msgid "Member Cache" +msgstr "Caché de miembros" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Junto con las intenciones, Discord ahora restringe aún más la capacidad de cachear a los miembros y espera que los autores del bot cacheen tan poco como sea necesario. Sin embargo, para mantener correctamente un caché se requiere la intención :attr:`Intents.members` para poder hacer un seguimiento de los miembros que dejaron el servidor y removerlos correctamente." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "Para ayudar con el caché de miembros donde no necesitamos que los miembros sean cacheados, la biblioteca ahora tiene una bandera :class:`MemberCacheFlags` para controlar la caché de miembros. La página de documentación de la clase va más allá de las políticas específicas que son posibles." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "Debe tenerse en cuenta que ciertas cosas no necesitan un caché de miembros, ya que Discord proporcionará información completa si es posible. Por ejemplo:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` tendrá :attr:`Message.author` como un miembro incluso si el caché está deshabilitado." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` tendrá al parámetro ``member`` como un miembro incluso si el caché está deshabilitado." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` tendrá el parámetro ``user`` como miembro cuando esté en un servidor incluso si el caché está deshabilitado." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` tendrá :attr:`RawReactionActionEvent.member` como un miembro cuando esté en un servidor incluso si el caché está deshabilitado." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "Los eventos de añadir reacciones no contienen información adicional cuando nos encontramos en mensajes directos. Esta es una limitación de Discord." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "Los eventos de eliminación de reacciones no contienen información sobre los miembros. Esta es una limitación de Discord." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Otros eventos que acepten un :class:`Member` requerirán el uso de la caché de miembros. Si la precisión absoluta sobre la caché de miembros es asumible, entonces es recomendable activar la intención :attr:`Intents.members`." + +msgid "Retrieving Members" +msgstr "Obteniendo miembros" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "Si el caché está deshabilitado o desactivas el chunking de servidores al inicio, puede que necesitemos una forma de cargar miembros. La biblioteca ofrece algunas maneras de hacer esto:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Utilizado para consultar a los miembros por un prefijo que coincida con el nick o nombre de usuario." + +msgid "This can also be used to query members by their user ID." +msgstr "Esto también puede ser utilizado para consultar a los miembros por su ID de usuario." + +msgid "This uses the gateway and not the HTTP." +msgstr "Esto utiliza la gateway y no las peticiones HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "Esto se puede utilizar para obtener toda la lista de miembros a través de la gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Utilizado para obtener un miembro por su ID a través de la API HTTP." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "usado para obtener un gran número de miembros a través de la API HTTP." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "Cabe señalar que la gateway tiene un estricto límite de tasa de 120 solicitudes por 60 segundos." + +msgid "Troubleshooting" +msgstr "Resolución de problemas" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Algunas cuestiones comunes relacionadas con el cambio de intenciones obligatorio." + +msgid "Where'd my members go?" +msgstr "¿A dónde irían mis miembros?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Debido a un :ref:`cambio en la API `, Discord ahora está forzando a los desarrolladores que quieren cachear miembros a explícitamente optar por este. Este es un cambio mandificado de Discord y no hay forma de saltarlo. Para recuperar miembros, tienes que habilitar explícitamente las :ref:`intenciones privilegiadas de miembros ` y cambiar :attr:`Intents.members` a true." + +msgid "For example:" +msgstr "Por ejemplo:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "¿Por qué ``on_ready`` tarda tanto en disparar?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "Como parte del cambio en la API referido a las intenciones, Discord también cambió como los miembros son cargados al inicio. Originalmente, la biblioteca podía solicitar hasta 75 servidores a la vez, y solo solicitar los miembros de aquellos servidores cuyo :attr:`Guild.large` era ``True``. Con este nuevo cambio de las intenciones, Discord dicta que solo podemos solicitar 1 servidor por petición. Esto causa una lentitud de x75, que es aun más contraproducente por el hecho de que **todos** los servidores, no solo aquellos grandes, están siendo solicitados." + +msgid "There are a few solutions to fix this." +msgstr "Hay algunas soluciones para arreglar esto." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "La primera solución es solicitar la intención de las presencias privilegiadas junto con la intención de los miembros privilegiados y permitir ambas cosas. Esto permite que la lista inicial de miembros contenga miembros en línea como la gateway antigua. Ten en cuenta que todavía estamos limitados a 1 servidor por solicitud, pero el número de servidores que solicitamos se reduce significativamente." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "La segunda solución es deshabilitar el chunking de miembros estableciendo ``chunk_guilds_at_startup`` a ``False`` al construir un cliente. Luego, cuando sea necesario hacer chunking para un servidor, puedes usar las distintas técnicas para obtener :ref:`recuperar ` los miembros." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "Para ilustrar la desaceleración causada por el cambio de API, toma un bot que está en 840 servidores y 95 de estos servidores son \"grandes\" (más de 250 miembros)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Bajo el sistema original esto resultaría en 2 solicitudes para obtener la lista de miembros (75 servidores, 20 servidores) aproximadamente tardando 60 segundos. Con :attr:`Intents.members` pero no :attr:`Intents.presences` esto requiere 840 peticiones, con un límite de tasa de 120 solicitudes por 60 segundos. Significa que debido a la espera del límite nos da un total de unos 7 minutos de espera para que el límite obtenga todos los miembros. Con :attr:`Intents.members` y :attr:`Intents.presences` obtenemos principalmente el comportamiento antiguo, así que solo estamos obligados a solicitar los 95 servidores grandes, esto es un poco menor que nuestro límite de tasa, por lo que está cerca del tiempo original para obtener la lista de miembros." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Lamentablemente, debido a este cambio que se requiere de Discord, no hay nada que la biblioteca pueda hacer para mitigar esto." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "Si realmente no te gusta la dirección que Discord lleva con su API, puedes contactarlos a través de `soporte `_." + diff --git a/docs/locales/es/LC_MESSAGES/logging.po b/docs/locales/es/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..9b9b2f2707 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/es/LC_MESSAGES/migrating_to_v1.po b/docs/locales/es/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..2aff8457e9 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Ejemplo rápido: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/es/LC_MESSAGES/migrating_to_v2.po b/docs/locales/es/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..41ef72997c --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/es/LC_MESSAGES/old_changelog.po b/docs/locales/es/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..21e169d5d4 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/es/LC_MESSAGES/quickstart.po b/docs/locales/es/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..e7805cc77c --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Inicio rápido" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "Esta página da una breve introducción a la biblioteca. Se asume que tienes la biblioteca instalada. Si no la tienes, revisa :ref:`installing`." + +msgid "A Minimal Bot" +msgstr "Un bot mínimo" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Creemos un bot que responda a un mensaje en específico y guiarte en el proceso." + +msgid "It looks something like this:" +msgstr "Se ve algo así:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Debido a que este ejemplo usa el contenido del mensaje, necesitamos la intención privilegiada :attr:`Intents.message_content`." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Nombremos a este archivo ``example_bot.py``. Asegúrate de no nombrarlo ``discord.py``, ya que puede causar conflictos con la biblioteca." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "Muchas cosas están sucediendo aquí, vamos paso a paso:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "La primera línea importa la biblioteca, si esto genera un `ModuleNotFoundError` o `ImportError`, entonces ve a la sección de :ref:`installing` para instalar correctamente la biblioteca." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "A continuación, creamos una instancia de :class:`Client`. Este cliente es nuestra conexión a Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "Luego usamos el decorador :meth:`Client.event` para registrar un evento. La biblioteca cuenta con muchos eventos. Puesto que la biblioteca es asíncrona, hacemos las cosas en un estilo de \"retrollamada\"." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "Una retrollamada es esencialmente una función que es llamada cuando algo pasa. En nuestro caso, el evento :func:`on_ready` es llamado cuando nuestro bot ha terminado de iniciar sesión y configurarse, y el evento :func:`on_message` es llamado cuando nuestro bot recibe un mensaje." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Puesto que nuestro evento :func:`on_message` es llamado por *cada* mensaje recibido, tenemos que asegurarnos de ignorar nuestros mismos mensajes. Hacemos esto comprobando si el :attr:`Message.author` es el mismo que :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Después, comprobamos si :class:`Message.content` empieza con ``'$hello'``. Si lo hace, entonces enviamos un mensaje al canal donde fue usado con ``'Hello!'``. Esto es una forma básica de manejar comandos, que luego puede ser automatizado con el framework :doc:`./ext/commands/index`." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finalmente, ejecutamos nuestro bot con nuestro token de inicio de sesión. Si necesitas ayuda para obtener tu token o para crear un bot, mira la sección :ref:`discord-intro`." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Ahora que hemos creado un bot, tenemos que *ejecutar* el bot. Por suerte, esto es simple, ya que este es solo un script de Python, podemos ejecutarlo directamente." + +msgid "On Windows:" +msgstr "En Windows:" + +msgid "On other systems:" +msgstr "En otros sistemas:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Ahora puedes intentar jugar con tu bot básico." + +msgid "A Minimal Bot with Slash Commands" +msgstr "Un bot mínimo con comandos de barra" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "Como una continuación, vamos a crear un bot que registre un simple comando de barra." + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Veamos las diferencias en comparación con el ejemplo anterior, paso a paso:" + +msgid "The first line remains unchanged." +msgstr "La primera línea no ha cambiado." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "A continuación, creamos una instancia de :class:`.Bot`. Esto es diferente de :class:`.Client`, ya que soporta la creación de comandos de barra y otras características, al tiempo que hereda todas las características de :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "Luego usamos el decorador :meth:`.Bot.slash_command` para registrar un nuevo comando de barra. El atributo ``guild_ids`` contiene una lista de servidores donde este comando será activo. Si se omite, el comando estará disponible globalmente, y puede tardar hasta una hora en registrarse." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Después, activamos una respuesta al comando de barra en forma de texto. Por favor, ten en cuenta que todos los comandos de barra deben tener alguna forma de respuesta, de lo contrario fallarán." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Por último, una vez más, ejecutamos el bot con nuestro token de inicio de sesión." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "¡Enhorabuena! ¡Ahora has creado tu primer comando de barra!" + diff --git a/docs/locales/es/LC_MESSAGES/version_guarantees.po b/docs/locales/es/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..6d31e09158 --- /dev/null +++ b/docs/locales/es/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Garantías de versión" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "La biblioteca sigue el `principio de versionado semántico `_ lo que significa que la mayor versión es actualizada cada vez que hay un cambio incompatible en la API. Sin embargo, debido a la falta de garantías en el lado de Discord cuando se refiere a ruptura de cambios junto con la naturaleza bastante dinámica de Python, puede ser difícil discernir que se puede considerar una ruptura de cambios o no." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "La primera cosa a tener en cuenta es que la ruptura de cambios solo se aplica a **funciones y clases públicamente documentadas**. Si no aparece en la documentación, no es parte de la API pública y puede cambiar en cualquier momento. Esto incluye atributos que empiezan por una barra baja o funciones que no estén documentadas." + +msgid "The examples below are non-exhaustive." +msgstr "Los siguientes ejemplos no son exhaustivos." + +msgid "Examples of Breaking Changes" +msgstr "Ejemplos de roturas de cambios" + +msgid "Changing the default parameter value to something else." +msgstr "Cambiar el valor por defecto del parámetro a otra cosa." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renombrar una función sin alias a una función antigua." + +msgid "Adding or removing parameters to an event." +msgstr "Añadir o quitar parámetros a un evento." + +msgid "Examples of Non-Breaking Changes" +msgstr "Ejemplos de cambios sin rupturas" + +msgid "Adding or removing private underscored attributes." +msgstr "Añadir o quitar atributos privados." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Añadir un elemento en los ``__slots__`` de una clase de datos." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Cambiar el comportamiento de una función para arreglar un bug." + +msgid "Changes in the documentation." +msgstr "Cambios en la documentación." + +msgid "Modifying the internal HTTP handling." +msgstr "Modificar el manejo del HTTP interno." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Actualizar las dependencias a una nueva versión, mayor o de otro tipo." + diff --git a/docs/locales/fr/LC_MESSAGES/api/abcs.po b/docs/locales/fr/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..5c4616b31a --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "The model's unique ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Returns" +msgstr "Retours" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/fr/LC_MESSAGES/api/application_commands.po b/docs/locales/fr/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..0d93aa1807 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Retours" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "Les arguments à utiliser." + +msgid "The keyword arguments to use." +msgstr "Les arguments de mot-clé à utiliser." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/fr/LC_MESSAGES/api/application_info.po b/docs/locales/fr/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..bec739145b --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/fr/LC_MESSAGES/api/async_iter.po b/docs/locales/fr/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..78cb7d3554 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Retours" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Type de retour" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/fr/LC_MESSAGES/api/audit_logs.po b/docs/locales/fr/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..a6a775eccb --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/fr/LC_MESSAGES/api/clients.po b/docs/locales/fr/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..e1a5574a28 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Retours" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Type de retour" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "Par défaut, cela imprime dans :data:`sys.stderr`, mais cela peut être remplacé par une autre implémentation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/fr/LC_MESSAGES/api/cogs.po b/docs/locales/fr/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..4b3a7fe051 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Retours" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Type de retour" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/fr/LC_MESSAGES/api/data_classes.po b/docs/locales/fr/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..bb64f8bfe3 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Retours" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/fr/LC_MESSAGES/api/enums.po b/docs/locales/fr/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..0ec385be41 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/fr/LC_MESSAGES/api/events.po b/docs/locales/fr/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..6329eac140 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/fr/LC_MESSAGES/api/exceptions.po b/docs/locales/fr/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..f9bd12a63c --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/fr/LC_MESSAGES/api/index.po b/docs/locales/fr/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..66ca503bfb --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "Référence de l'API" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/fr/LC_MESSAGES/api/models.po b/docs/locales/fr/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..6fa2335de6 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Retours" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/fr/LC_MESSAGES/api/sinks.po b/docs/locales/fr/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..1c6e46f2d4 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/fr/LC_MESSAGES/api/ui_kit.po b/docs/locales/fr/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..601c67f9ec --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Retours" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/fr/LC_MESSAGES/api/utils.po b/docs/locales/fr/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..c9a1c14519 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Retours" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/fr/LC_MESSAGES/api/version_info.po b/docs/locales/fr/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..5f203d590b --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/fr/LC_MESSAGES/api/voice.po b/docs/locales/fr/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..3f6583f5a3 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Retours" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/fr/LC_MESSAGES/api/webhooks.po b/docs/locales/fr/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..81abdf4f7a --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Retours" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/fr/LC_MESSAGES/changelog.po b/docs/locales/fr/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..e763500e1e --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/fr/LC_MESSAGES/cogs.po b/docs/locales/fr/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..7bb334f56a --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/fr/LC_MESSAGES/discord.po b/docs/locales/fr/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..e6cc9ba2c5 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviter Son Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "Donc vous avez créé votre utilisateur Bot mais il n'est pas sur votre serveur." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "Si vous voulez inviter votre bot, vous devez créer un lien d'invitation pour ça." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/fr/LC_MESSAGES/ext/bridge/api.po b/docs/locales/fr/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..5b98ce475e --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "Référence de l'API" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Retours" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Type de retour" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/fr/LC_MESSAGES/ext/bridge/index.po b/docs/locales/fr/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..1379531802 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/fr/LC_MESSAGES/ext/commands/api.po b/docs/locales/fr/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..c2ee2a3545 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "Référence de l'API" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Retours" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Type de retour" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "Par défaut, cela imprime dans :data:`sys.stderr`, mais cela peut être remplacé par une autre implémentation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "Les arguments à utiliser." + +msgid "The keyword arguments to use." +msgstr "Les arguments de mot-clé à utiliser." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/fr/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/fr/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..3c4a949700 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/fr/LC_MESSAGES/ext/commands/commands.po b/docs/locales/fr/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..4fb7f3e9c5 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/fr/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/fr/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..a0d5e33417 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/fr/LC_MESSAGES/ext/commands/index.po b/docs/locales/fr/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..3e87a22190 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/fr/LC_MESSAGES/ext/pages/index.po b/docs/locales/fr/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..89529d2930 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "Référence de l'API" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Retours" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/fr/LC_MESSAGES/ext/tasks/index.po b/docs/locales/fr/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..b0f0193103 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "L'une des opérations les plus courantes lors de la création d'un bot est d'avoir une boucle s'exécutant en arrière-plan à un intervalle spécifié. Ce modèle est très courant, mais présente de nombreux éléments auxquels il faut faire attention :" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "Comment gérer :exc:`asyncio.CancelledError` ?" + +msgid "What do I do if the internet goes out?" +msgstr "Que faire si la connexion Internet est interrompue ?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "Quelle est la durée maximale en secondes pendant laquelle je peux dormir de toute façon ?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "L'objectif de cette extension Pycord est d'abstraire toutes ces préoccupations pour vous." + +msgid "Recipes" +msgstr "Recettes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "Une tâche en arrière-plan simple dans un :class:`~discord.ext.commands.Cog` :" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Ajouter une exception à gérer lors de la reconnexion :" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Boucler un certain nombre de fois avant de quitter :" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Attendre que le bot soit prêt avant le début de la boucle :" + +msgid "Doing something during cancellation:" +msgstr "Faire quelque chose pendant l'annulation :" + +msgid "API Reference" +msgstr "Référence de l'API" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "Un utilitaire de tâche en arrière-plan qui abstrait pour vous la logique de boucle et de reconnexion." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "L'interface principale pour créer ceci est à travers :func:`loop`." + +msgid "Parameters" +msgstr "Paramètres" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "Un décorateur qui enregistre une coroutine à appeler après l'exécution de la boucle." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "La coroutine ne doit prendre aucun argument (sauf ``self`` dans un contexte de classe)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "Cette coroutine est appelée même en cas d'annulation. Si vous souhaitez distinguer si quelque chose a été annulé ou non, vérifiez si :meth:`is_being_cancelled` est ``True`` ou non." + +msgid "The coroutine to register after the loop finishes." +msgstr "La coroutine à enregistrer après la fin de la boucle." + +msgid "Raises" +msgstr "Lève" + +msgid "The function was not a coroutine." +msgstr "La fonction n'était pas une coroutine." + +msgid "Return type" +msgstr "Type de retour" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`\\`\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\`\\~typing.Callable\\`\\\\\\\\\\\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\:\\`\\~typing.Awaitable\\`\\\\\\ \\\\[\\:py\\:data\\:\\:\\:\\`\\~typing.Any\\]\\)\\`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "Un décorateur qui enregistre une coroutine à appeler avant le début de l'exécution de la boucle." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "Ceci est utile si vous voulez attendre un état du bot avant le début de la boucle, comme :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "La coroutine à enregistrer avant l'exécution de la boucle." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "Un décorateur qui enregistre une coroutine à appeler si la tâche rencontre une exception non gérée." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "La coroutine ne doit prendre qu'un seul argument l'exception levée (sauf ``self`` dans un contexte de classe)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "Par défaut, cela imprime dans :data:`sys.stderr`, mais cela peut être remplacé par une autre implémentation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "La coroutine à inscrire en cas d'exception non gérée." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`\\`\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\`\\~typing.Callable\\`\\\\\\\\\\\\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\:\\`\\~typing.Awaitable\\`\\\\\\ \\\\[\\:py\\:data\\:\\:\\:\\`\\~typing.Any\\]\\)\\`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Valeur en lecture seule pour le nombre de secondes entre chaque itération. ``None`` si une valeur ``time`` explicite a été passée à la place." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Valeur en lecture seule pour le nombre de minutes entre chaque itération. ``None`` si une valeur ``time`` explicite a été passée à la place." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Valeur en lecture seule pour le nombre d'heures entre chaque itération. ``None`` si une valeur ``time`` explicite a été passée à la place." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Liste en lecture seule du temps exacte auxquelles cette boucle s'exécute. ``None`` si du temps relatifs a été passées a la place." + +msgid "The current iteration of the loop." +msgstr "L'itération actuelle de la boucle." + +msgid "When the next iteration of the loop will occur." +msgstr "Quand l'itération suivante de la boucle se produira." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Appelle le rappel interne que la tâche détient." + +msgid "The arguments to use." +msgstr "Les arguments à utiliser." + +msgid "The keyword arguments to use." +msgstr "Les arguments de mot-clé à utiliser." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Démarre la tâche interne dans la boucle d'événement." + +msgid "A task has already been launched and is running." +msgstr "Une tâche a déjà été lancée et est en cours d'exécution." + +msgid "Returns" +msgstr "Retours" + +msgid "The task that has been created." +msgstr "La tâche qui a été créée." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Empêche la tâche de s'exécuter." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Contrairement à :meth:`cancel`\\, cela permet à la tâche de terminer son itération actuelle avant de se terminer. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "Si la fonction interne lève une erreur pouvant être gérée avant la fin, elle sera réessayée jusqu'à ce qu'elle réussisse." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "Si cela est indésirable, soit retirez la gestion des erreurs avant d'arrêter via :meth:`clear_exception_types`, soit utilisez :meth:`cancel` à la place." + +msgid "Cancels the internal task, if it is running." +msgstr "Annule la tâche interne si elle est en cours d'exécution." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "Une méthode pratique pour redémarrer la tâche interne." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "En raison de la façon dont cette fonction fonctionne, la tâche n'est pas retournée comme :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Ajoute les types d'exception à traiter pendant la logique de reconnexion." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "Par défaut, les types d'exceptions gérés sont ceux traités par :meth:`discord.Client.connect`, ce qui inclut de nombreux types d'erreurs de déconnexion Internet." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "Cette fonction est utile si vous interagissez avec une bibliothèque tierce qui augmente son propre ensemble d'exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "Une liste d'arguments de classes d'exception à gérer." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "Une exception passée n'est soit pas une classe, soit elle n'est pas héritée de :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Supprime tous les types d'exception qui sont gérés. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "Cette opération ne peut évidemment pas être annulée !" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Si toutes les exceptions ont bien été supprimées." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Récupère la tâche interne ou ``None`` s'il n'y en a pas." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Si la tâche est en cours d'annulation." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Si la tâche interne a échoué. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Vérifie si la tâche est en cours d'exécution. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Modifie l'intervalle de temps de veille." + +msgid "The number of seconds between every iteration." +msgstr "Le nombre de secondes entre chaque itération." + +msgid "The number of minutes between every iteration." +msgstr "Le nombre de minutes entre chaque itération." + +msgid "The number of hours between every iteration." +msgstr "Le nombre d'heures entre chaque itération." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "Les heures exactes auxquelles exécuter cette boucle. Vous devez passer soit une liste non vide, soit une seule valeur de :class:`datetime.time`. Cela ne peut pas être utilisé en conjonction avec les paramètres de temps relatifs. .. versionadded:: 2.0 .. note:: Les heures dupliquées seront ignorées et exécutées une seule fois." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "Les heures exactes auxquelles exécuter cette boucle. Vous devez passer soit une liste non vide, soit une seule valeur de :class:`datetime.time`. Cela ne peut pas être utilisé en conjonction avec les paramètres de temps relatifs." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Les doublons seront ignorés, et ne seront exécutés qu'une seule fois." + +msgid "An invalid value was given." +msgstr "Une valeur non valide a été donnée." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "Une valeur invalide pour le paramètre ``time`` a été passée, ou le paramètre ``time`` a été passé en conjonction avec des paramètres de temps relatifs." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "Un décorateur qui planifie une tâche en arrière-plan pour vous avec une logique de reconnexion optionnelle. Le décorateur renvoie une :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "Les heures exactes auxquelles exécuter cette boucle. Vous devez passer soit une liste non vide, soit une seule valeur de :class:`datetime.time`. Les fuseaux horaires sont pris en charge. Si aucun fuseau horaire n'est spécifié pour les heures, il est supposé qu'elles représentent l'heure UTC. Cela ne peut pas être utilisé en conjonction avec les paramètres de temps relatifs. .. note:: Les heures dupliquées seront ignorées et exécutées une seule fois. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "Les heures exactes auxquelles exécuter cette boucle. Vous devez passer soit une liste non vide, soit une seule valeur de :class:`datetime.time`. Les fuseaux horaires sont pris en charge. Si aucun fuseau horaire n'est spécifié, il est supposé que les heures représentent l'heure UTC." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "Ne peut pas être utilisé en conjonction avec les paramètres de temps relatifs." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "Le nombre de boucles à faire, ``None`` si elle doit être une boucle infinie." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Si vous voulez gérer les erreurs et redémarrer la tâche en utilisant un algorithme de back-off exponentiel similaire à celui utilisé dans :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "La boucle à utiliser pour enregistrer la tâche, si elle n'est pas donnée par défaut à :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "La fonction n'était pas une coroutine, une valeur invalide a été passée pour le paramètre ``time``, ou le paramètre ``time`` a été passé en conjonction avec des paramètres de temps relatifs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/fr/LC_MESSAGES/faq.po b/docs/locales/fr/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..fe37008123 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/fr/LC_MESSAGES/index.po b/docs/locales/fr/LC_MESSAGES/index.po new file mode 100644 index 0000000000..15f4ef6bdc --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Bienvenue sur Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord est une interface API moderne, facile à utiliser, riche en fonctionnalités et compatible async pour Discord." + +msgid "**Features:**" +msgstr "**Fonctionnalités :**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "API Pythonique moderne utilisant la syntaxe ``async``\\/``await``" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Sane rate limit handling that prevents 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Command extension to aid with bot creation" + +msgid "Easy to use with an object oriented design" +msgstr "Easy to use with an object oriented design" + +msgid "Optimised for both speed and memory" +msgstr "Optimised for both speed and memory" + +msgid "Getting started" +msgstr "Getting started" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Is this your first time using the library? This is the place to get started!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Working with Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Examples:** Many examples are available in the :resource:`repository `." + +msgid "Getting help" +msgstr "Getting help" + +msgid "If you're having trouble with something, these resources might help." +msgstr "If you're having trouble with something, these resources might help." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Try the :doc:`faq` first, it's got answers to all common questions." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Ask us and hang out with us in our :resource:`Discord ` server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Report bugs in the :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuals" + +msgid "These pages go into great detail about everything the API can do." +msgstr "These pages go into great detail about everything the API can do." + +msgid "Core API" +msgstr "Core API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "These extensions help you during development when it comes to common tasks." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot commands framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task helpers" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - A pagination extension module" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "If you're looking for something related to the project itself, it's here." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - The changelog for the library." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - The version guarantees for the library." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." + diff --git a/docs/locales/fr/LC_MESSAGES/installing.po b/docs/locales/fr/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..209c879029 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Installing Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." + +msgid "Prerequisites" +msgstr "Prerequisites" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "For Windows users, this command should be used to install the pre-release: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." + +msgid "A quick example to showcase how events work:" +msgstr "A quick example to showcase how events work:" + diff --git a/docs/locales/fr/LC_MESSAGES/intents.po b/docs/locales/fr/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..ef64d14f98 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/fr/LC_MESSAGES/logging.po b/docs/locales/fr/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..f4a78147d5 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/fr/LC_MESSAGES/migrating_to_v1.po b/docs/locales/fr/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..ca7905e21f --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Changement de version de Python" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Changements majeurs du modèle" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/fr/LC_MESSAGES/migrating_to_v2.po b/docs/locales/fr/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..a4b74302c0 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migration vers la v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 a introduit de nouvelles fonctionnalités Discord et a marqué certaines anciennes fonctionnalités comme obsolètes." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Une partie de la refonte implique la création de commandes d'application et de composants. Ces changements incluent une nouvelle classe :class:`Bot`, :class:`ui.View`, et une nouvelle classe :class:`ApplicationContext`. Si vous êtes intéressé par leur création, veuillez consulter notre :resource:`guide `." + +msgid "Python Version Change" +msgstr "Changement de version de Python" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "Afin de faciliter le développement et de permettre à nos dépendances de se mettre à jour pour supporter Python 3.8 ou une version supérieure, la bibliothèque a dû retirer le support des versions de Python inférieures à 3.7, ce qui signifie essentiellement que **le support pour Python 3.7 et les versions antérieures a été abandonné**." + +msgid "Major Model Changes" +msgstr "Changements majeurs du modèle" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Ci-dessous sont les changements majeurs qui se sont produits dans la v2.0 :" + +msgid "Dropped User Accounts Support" +msgstr "Suppression du support des comptes utilisateurs" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Avant la version 2.0, les comptes utilisateurs étaient pris en charge. Cela allait à l'encontre de l'esprit de la bibliothèque et des conditions d'utilisation de Discord, et a été supprimé. Ainsi, les fonctionnalités qui leur étaient exclusivement réservées ont été supprimées :" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "L'argument ``bot`` de :meth:`Client.start` et :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "L'argument ``afk`` de :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE : ``GroupChannel`` lui-même reste toujours)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` et ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments de ``ClientUser.edit`` : ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``Unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Événements : ``on_relationship_add`` et ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Temps conscient du fuseau horaire" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` devient ``now(datetime.timezone.utc)``. Si vous construisez vous-même un objet :class:`datetime.datetime`, passez ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/fr/LC_MESSAGES/old_changelog.po b/docs/locales/fr/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..5aa87be0fa --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/fr/LC_MESSAGES/quickstart.po b/docs/locales/fr/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..b3db411daa --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Démarrage rapide" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "Cette page donne une brève introduction à la bibliothèque. Nous supposons que vous avez déjà installé la bibliothèque. Si cela n'est pas fait, allez voir :ref:`installing`." + +msgid "A Minimal Bot" +msgstr "Un Bot Simple" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Faisons, ensemble, un Bot qui répond à un message en particulier." + +msgid "It looks something like this:" +msgstr "Cela devrait ressembler à ça :" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Parce que cet exemple utilise le contenu des messages, nous avons besoin de l'intention particulière : :attr:`Intents.message_content`." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Nommons ce fichier ``example_bot.py``. Assurez-vous de ne pas le nommer ``discord.py``, cela rentrera en conflit avec le nom de la bibliothèque." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "Il y a beaucoup de choses à voir et à comprendre ici, allons-y pas à pas :" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "La première ligne importe juste la bibliothèque, si les erreurs `ModuleNotFoundError` ou `ImportError` apparaissent alors retournez à la section :ref:`installing` et assurez-vous d'avoir correctement installé la bibliothèque." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Ensuite, nous créons une instance de :class:`Client` . Ce client est notre connexion à Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "Après cela, nous utilisons le décorateur :meth:`Client.event` pour enregistrer un événement. Il y a de nombreux événements disponibles dans cette bibliothèque. Comme la bibliothèque est asynchrone, nous programmons avec des \"rappels\"." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "Un rappel est une fonction appelée quand un événement se produit. Dans notre cas, l'événement :func:`on_ready` est appelé quand le bot a fini de se connecter et de se paramétrer donc quand il est prêt à fonctionner. Tandis que l'événement :func:`on_message` est appelé quand le bot a reçu un message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Sachant que l'événement :func:`on_message` est actionné pour *tous* les messages reçus, nous devons nous assurer d'ignorer nos propres messages. On fait cela en vérifiant que le :attr:`Message.author` et le :attr:`Client.user` ne sont pas les mêmes." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Après cela, nous vérifions si le :class:`Message.content` commence par ``'$hello'``. Si c'est le cas, nous envoyons le message ```'Hello!'`` dans le même salon que le message reçu. C'est une façon basique de gérer les commandes textuelles, que nous pourrons automatiser plus tard avec le module complémentaire :doc:`./ext/commands/index`." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Enfin, nous démarrons le bot avec notre jeton d'authentification (token en anglais). Si tu as besoin d'aide pour trouver ton jeton d'authentification ou tout simplement pour créer un bot, redirige-toi vers la section :ref:`discord-intro`." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Maintenant que notre bot est créé, nous n'avons plus qu'à le *démarrer*. Par chance, ce n'est qu'un simple programme Python, nous pouvons l'exécuter directement." + +msgid "On Windows:" +msgstr "Sur Windows :" + +msgid "On other systems:" +msgstr "Sur d'autres systèmes :" + +msgid "Now you can try playing around with your basic bot." +msgstr "Maintenant, vous pouvez essayer de vous amuser avec votre bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "Un Bot Simple avec des commandes Slash" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "Pour aller plus loin, faisons un bot qui enregistre des commandes slashs !" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Commençons par comparer, pas-à-pas, les différences avec l'exemple précédent :" + +msgid "The first line remains unchanged." +msgstr "La première ligne reste inchangée." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Ensuite, nous créons une instance de :class:`Bot`. Il diffère de :class:`Client`, puisqu'il supporte la création de commandes slashs ainsi que plein d'autres fonctionnalités tout en héritant des fonctionnalités de :class:`Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "Puis, nous utilisons le décorateur :meth:`Bot.slash_command` pour enregistrer une nouvelle commande slash. L'attribut ``guilds_ids`` contient une liste de serveur discord où la commande sera fonctionnelle. Si vous ne le mettez pas, les commandes seront globalement actives (fonctionnelles sur tous les serveurs), et cela risque de prendre une heure à s'enregistrer." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Après cela, nous répondons à la commande slash sous la forme d'un message textuel. Notez que toutes les commandes slashs doivent avoir une forme de réponse, sinon elles échoueront." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Enfin, nous, encore une fois, démarrons le bot avec le jeton d'authentification." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Félicitations ! Vous venez de créer votre première commande slash !" + diff --git a/docs/locales/fr/LC_MESSAGES/version_guarantees.po b/docs/locales/fr/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..f0ea34c400 --- /dev/null +++ b/docs/locales/fr/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Garanties quant au versionnement" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "La bibliothèque suit le `principe de versionnage sémantique `_, ce qui signifie que la version majeure est mise à jour à chaque changement incompatible de l'API. Cependant, en raison de l'absence de garanties du côté de Discord concernant les changements incompatibles, ainsi que de la nature assez dynamique de Python, il peut être difficile de discerner ce qui peut être considéré comme un changement incompatible et ce qui ne l'est pas." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "La première chose à garder à l'esprit est que les changements incompatibles ne s'appliquent qu'aux **fonctions et classes documentées publiquement**. Si elles ne figurent pas dans la documentation ici, elles ne font pas partie de l'API publique et sont donc susceptibles de changer. Cela inclut les attributs commençant par un underscore ou les fonctions sans underscore qui ne sont pas documentées." + +msgid "The examples below are non-exhaustive." +msgstr "Les exemples ci-dessous ne sont pas exhaustifs." + +msgid "Examples of Breaking Changes" +msgstr "Exemples de changements incompatibles" + +msgid "Changing the default parameter value to something else." +msgstr "Modifier la valeur par défaut d'un paramètre pour autre chose." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renommer une fonction sans alias vers une ancienne fonction." + +msgid "Adding or removing parameters to an event." +msgstr "Ajouter ou supprimer des paramètres à un événement." + +msgid "Examples of Non-Breaking Changes" +msgstr "Exemples de changements non incompatibles" + +msgid "Adding or removing private underscored attributes." +msgstr "Ajouter ou supprimer des attributs privés avec un underscore." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Ajouter un élément dans les ``__slots__`` d'une classe de données." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Modifier le comportement d'une fonction pour corriger un bogue." + +msgid "Changes in the documentation." +msgstr "Changements dans la documentation." + +msgid "Modifying the internal HTTP handling." +msgstr "Modifier la gestion interne des requêtes HTTP." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Mettre à jour les dépendances vers une nouvelle version, majeure ou autre." + diff --git a/docs/locales/hi/LC_MESSAGES/api/abcs.po b/docs/locales/hi/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..dd0448a634 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "The model's unique ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Returns" +msgstr "Returns" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/hi/LC_MESSAGES/api/application_commands.po b/docs/locales/hi/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..ee950c0b7a --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/hi/LC_MESSAGES/api/application_info.po b/docs/locales/hi/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..31922fca86 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/hi/LC_MESSAGES/api/async_iter.po b/docs/locales/hi/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..b322381f39 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Returns" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Return type" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/hi/LC_MESSAGES/api/audit_logs.po b/docs/locales/hi/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..05c56e27c2 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/hi/LC_MESSAGES/api/clients.po b/docs/locales/hi/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..e4b8f95258 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/hi/LC_MESSAGES/api/cogs.po b/docs/locales/hi/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..9449613e48 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Returns" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Return type" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/hi/LC_MESSAGES/api/data_classes.po b/docs/locales/hi/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..bc1c9d6327 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Returns" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/hi/LC_MESSAGES/api/enums.po b/docs/locales/hi/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..b12fa4f3a2 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/hi/LC_MESSAGES/api/events.po b/docs/locales/hi/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..3de9f161c1 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/hi/LC_MESSAGES/api/exceptions.po b/docs/locales/hi/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..1840bc94e8 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/hi/LC_MESSAGES/api/index.po b/docs/locales/hi/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..80efb62166 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/hi/LC_MESSAGES/api/models.po b/docs/locales/hi/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..9c71559652 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Returns" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/hi/LC_MESSAGES/api/sinks.po b/docs/locales/hi/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..c041d54623 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/hi/LC_MESSAGES/api/ui_kit.po b/docs/locales/hi/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..0e374cd9d7 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Returns" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/hi/LC_MESSAGES/api/utils.po b/docs/locales/hi/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..c59ea4f08e --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Returns" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/hi/LC_MESSAGES/api/version_info.po b/docs/locales/hi/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..a57036beac --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/hi/LC_MESSAGES/api/voice.po b/docs/locales/hi/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..ce04e5fda5 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Returns" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/hi/LC_MESSAGES/api/webhooks.po b/docs/locales/hi/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..c6f477ed90 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Returns" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/hi/LC_MESSAGES/changelog.po b/docs/locales/hi/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..29a1ffefe4 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/hi/LC_MESSAGES/cogs.po b/docs/locales/hi/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..d3b99d560a --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/hi/LC_MESSAGES/discord.po b/docs/locales/hi/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..1d84eae006 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviting Your Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "So you've made a Bot User but it's not actually in any server." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "If you want to invite your bot you must create an invite URL for it." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/hi/LC_MESSAGES/ext/bridge/api.po b/docs/locales/hi/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..c8f2bfa309 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/hi/LC_MESSAGES/ext/bridge/index.po b/docs/locales/hi/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..d829d3af31 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/hi/LC_MESSAGES/ext/commands/api.po b/docs/locales/hi/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..76f6bbe713 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/hi/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/hi/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..b6bdcd19af --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/hi/LC_MESSAGES/ext/commands/commands.po b/docs/locales/hi/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..1a44455c05 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/hi/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/hi/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..aefcfd5e04 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/hi/LC_MESSAGES/ext/commands/index.po b/docs/locales/hi/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..201036b377 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/hi/LC_MESSAGES/ext/pages/index.po b/docs/locales/hi/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..30b0c29ee7 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Returns" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/hi/LC_MESSAGES/ext/tasks/index.po b/docs/locales/hi/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..beb1ad9f67 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Raises" +msgstr "Raises" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Returns" +msgstr "Returns" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/hi/LC_MESSAGES/faq.po b/docs/locales/hi/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..5326557f7a --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/hi/LC_MESSAGES/index.po b/docs/locales/hi/LC_MESSAGES/index.po new file mode 100644 index 0000000000..e04d506e0c --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Welcome to Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." + +msgid "**Features:**" +msgstr "**Features:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "Modern Pythonic API using ``async``\\/``await`` syntax" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Sane rate limit handling that prevents 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Command extension to aid with bot creation" + +msgid "Easy to use with an object oriented design" +msgstr "Easy to use with an object oriented design" + +msgid "Optimised for both speed and memory" +msgstr "Optimised for both speed and memory" + +msgid "Getting started" +msgstr "Getting started" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Is this your first time using the library? This is the place to get started!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Working with Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Examples:** Many examples are available in the :resource:`repository `." + +msgid "Getting help" +msgstr "Getting help" + +msgid "If you're having trouble with something, these resources might help." +msgstr "If you're having trouble with something, these resources might help." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Try the :doc:`faq` first, it's got answers to all common questions." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Ask us and hang out with us in our :resource:`Discord ` server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Report bugs in the :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuals" + +msgid "These pages go into great detail about everything the API can do." +msgstr "These pages go into great detail about everything the API can do." + +msgid "Core API" +msgstr "Core API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "These extensions help you during development when it comes to common tasks." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot commands framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task helpers" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - A pagination extension module" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "If you're looking for something related to the project itself, it's here." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - The changelog for the library." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - The version guarantees for the library." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." + diff --git a/docs/locales/hi/LC_MESSAGES/installing.po b/docs/locales/hi/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..89b42dbb7a --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Installing Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." + +msgid "Prerequisites" +msgstr "Prerequisites" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "For Windows users, this command should be used to install the pre-release: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." + +msgid "A quick example to showcase how events work:" +msgstr "A quick example to showcase how events work:" + diff --git a/docs/locales/hi/LC_MESSAGES/intents.po b/docs/locales/hi/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..036ca6dbac --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/hi/LC_MESSAGES/logging.po b/docs/locales/hi/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..9b9b2f2707 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/hi/LC_MESSAGES/migrating_to_v1.po b/docs/locales/hi/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..ba2c21442b --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/hi/LC_MESSAGES/migrating_to_v2.po b/docs/locales/hi/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..41ef72997c --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/hi/LC_MESSAGES/old_changelog.po b/docs/locales/hi/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..21e169d5d4 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/hi/LC_MESSAGES/quickstart.po b/docs/locales/hi/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..21a2adf607 --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Quickstart" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." + +msgid "A Minimal Bot" +msgstr "A Minimal Bot" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Let's make a bot that responds to a specific message and walk you through it." + +msgid "It looks something like this:" +msgstr "It looks something like this:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "There's a lot going on here, so let's walk you through it step by step:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." + +msgid "On Windows:" +msgstr "On Windows:" + +msgid "On other systems:" +msgstr "On other systems:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Now you can try playing around with your basic bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "A Minimal Bot with Slash Commands" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "As a continuation, let's create a bot that registers a simple slash command!" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Let's look at the differences compared to the previous example, step-by-step:" + +msgid "The first line remains unchanged." +msgstr "The first line remains unchanged." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Finally, we, once again, run the bot with our login token." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Congratulations! Now you have created your first slash command!" + diff --git a/docs/locales/hi/LC_MESSAGES/version_guarantees.po b/docs/locales/hi/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..5a827907dc --- /dev/null +++ b/docs/locales/hi/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Version Guarantees" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." + +msgid "The examples below are non-exhaustive." +msgstr "The examples below are non-exhaustive." + +msgid "Examples of Breaking Changes" +msgstr "Examples of Breaking Changes" + +msgid "Changing the default parameter value to something else." +msgstr "Changing the default parameter value to something else." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renaming a function without an alias to an old function." + +msgid "Adding or removing parameters to an event." +msgstr "Adding or removing parameters to an event." + +msgid "Examples of Non-Breaking Changes" +msgstr "Examples of Non-Breaking Changes" + +msgid "Adding or removing private underscored attributes." +msgstr "Adding or removing private underscored attributes." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Adding an element into the ``__slots__`` of a data class." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Changing the behaviour of a function to fix a bug." + +msgid "Changes in the documentation." +msgstr "Changes in the documentation." + +msgid "Modifying the internal HTTP handling." +msgstr "Modifying the internal HTTP handling." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Upgrading the dependencies to a new version, major or otherwise." + diff --git a/docs/locales/it/LC_MESSAGES/api/abcs.po b/docs/locales/it/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..dd0448a634 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "The model's unique ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Returns" +msgstr "Returns" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/it/LC_MESSAGES/api/application_commands.po b/docs/locales/it/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..ee950c0b7a --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/it/LC_MESSAGES/api/application_info.po b/docs/locales/it/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..31922fca86 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/it/LC_MESSAGES/api/async_iter.po b/docs/locales/it/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..b322381f39 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Returns" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Return type" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/it/LC_MESSAGES/api/audit_logs.po b/docs/locales/it/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..05c56e27c2 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/it/LC_MESSAGES/api/clients.po b/docs/locales/it/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..e4b8f95258 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/it/LC_MESSAGES/api/cogs.po b/docs/locales/it/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..9449613e48 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Returns" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Return type" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/it/LC_MESSAGES/api/data_classes.po b/docs/locales/it/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..bc1c9d6327 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Returns" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/it/LC_MESSAGES/api/enums.po b/docs/locales/it/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..b12fa4f3a2 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/it/LC_MESSAGES/api/events.po b/docs/locales/it/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..3de9f161c1 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/it/LC_MESSAGES/api/exceptions.po b/docs/locales/it/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..1840bc94e8 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/it/LC_MESSAGES/api/index.po b/docs/locales/it/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..80efb62166 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/it/LC_MESSAGES/api/models.po b/docs/locales/it/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..9c71559652 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Returns" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/it/LC_MESSAGES/api/sinks.po b/docs/locales/it/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..c041d54623 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/it/LC_MESSAGES/api/ui_kit.po b/docs/locales/it/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..0e374cd9d7 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Returns" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/it/LC_MESSAGES/api/utils.po b/docs/locales/it/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..c59ea4f08e --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Returns" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/it/LC_MESSAGES/api/version_info.po b/docs/locales/it/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..a57036beac --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/it/LC_MESSAGES/api/voice.po b/docs/locales/it/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..ce04e5fda5 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Returns" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/it/LC_MESSAGES/api/webhooks.po b/docs/locales/it/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..c6f477ed90 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Returns" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/it/LC_MESSAGES/changelog.po b/docs/locales/it/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..29a1ffefe4 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/it/LC_MESSAGES/cogs.po b/docs/locales/it/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..d3b99d560a --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/it/LC_MESSAGES/discord.po b/docs/locales/it/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..1d84eae006 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviting Your Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "So you've made a Bot User but it's not actually in any server." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "If you want to invite your bot you must create an invite URL for it." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/it/LC_MESSAGES/ext/bridge/api.po b/docs/locales/it/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..c8f2bfa309 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/it/LC_MESSAGES/ext/bridge/index.po b/docs/locales/it/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..d829d3af31 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/it/LC_MESSAGES/ext/commands/api.po b/docs/locales/it/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..76f6bbe713 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/it/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/it/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..b6bdcd19af --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/it/LC_MESSAGES/ext/commands/commands.po b/docs/locales/it/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..1a44455c05 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/it/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/it/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..aefcfd5e04 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/it/LC_MESSAGES/ext/commands/index.po b/docs/locales/it/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..201036b377 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/it/LC_MESSAGES/ext/pages/index.po b/docs/locales/it/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..30b0c29ee7 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Returns" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/it/LC_MESSAGES/ext/tasks/index.po b/docs/locales/it/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..beb1ad9f67 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Raises" +msgstr "Raises" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Returns" +msgstr "Returns" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/it/LC_MESSAGES/faq.po b/docs/locales/it/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..5326557f7a --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/it/LC_MESSAGES/index.po b/docs/locales/it/LC_MESSAGES/index.po new file mode 100644 index 0000000000..e04d506e0c --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Welcome to Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." + +msgid "**Features:**" +msgstr "**Features:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "Modern Pythonic API using ``async``\\/``await`` syntax" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Sane rate limit handling that prevents 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Command extension to aid with bot creation" + +msgid "Easy to use with an object oriented design" +msgstr "Easy to use with an object oriented design" + +msgid "Optimised for both speed and memory" +msgstr "Optimised for both speed and memory" + +msgid "Getting started" +msgstr "Getting started" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Is this your first time using the library? This is the place to get started!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Working with Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Examples:** Many examples are available in the :resource:`repository `." + +msgid "Getting help" +msgstr "Getting help" + +msgid "If you're having trouble with something, these resources might help." +msgstr "If you're having trouble with something, these resources might help." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Try the :doc:`faq` first, it's got answers to all common questions." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Ask us and hang out with us in our :resource:`Discord ` server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Report bugs in the :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuals" + +msgid "These pages go into great detail about everything the API can do." +msgstr "These pages go into great detail about everything the API can do." + +msgid "Core API" +msgstr "Core API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "These extensions help you during development when it comes to common tasks." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot commands framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task helpers" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - A pagination extension module" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "If you're looking for something related to the project itself, it's here." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - The changelog for the library." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - The version guarantees for the library." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." + diff --git a/docs/locales/it/LC_MESSAGES/installing.po b/docs/locales/it/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..89b42dbb7a --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Installing Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." + +msgid "Prerequisites" +msgstr "Prerequisites" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "For Windows users, this command should be used to install the pre-release: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." + +msgid "A quick example to showcase how events work:" +msgstr "A quick example to showcase how events work:" + diff --git a/docs/locales/it/LC_MESSAGES/intents.po b/docs/locales/it/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..036ca6dbac --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/it/LC_MESSAGES/logging.po b/docs/locales/it/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..9b9b2f2707 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/it/LC_MESSAGES/migrating_to_v1.po b/docs/locales/it/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..3a88ade7dd --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Cambiamento di versione di Python" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/it/LC_MESSAGES/migrating_to_v2.po b/docs/locales/it/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..e467d72eeb --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Cambiamento di versione di Python" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/it/LC_MESSAGES/old_changelog.po b/docs/locales/it/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..21e169d5d4 --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/it/LC_MESSAGES/quickstart.po b/docs/locales/it/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..c26d06c1ef --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Avvio Rapido" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "Questa pagina fornisce una breve introduzione alla libreria. Presume che tu abbia installato la libreria. Se è il caso, vedi la sezione `installazione` :ref:." + +msgid "A Minimal Bot" +msgstr "Un bot semplice" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Facciamo un bot che risponde a un messaggio specifico passo dopo passo." + +msgid "It looks something like this:" +msgstr "Assomiglia a questo:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Poiché questo esempio utilizza il contenuto dei messaggi, è necessario attivare l'intento privilegiato :attr:`Intents.message_content`." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Nominiamo questo file ``example_bot.py``. Assicurati di non nominarlo ```discord.py`` in quanto è in conflitto con la libreria." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "There's a lot going on here, so let's walk you through it step by step:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." + +msgid "On Windows:" +msgstr "On Windows:" + +msgid "On other systems:" +msgstr "On other systems:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Now you can try playing around with your basic bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "A Minimal Bot with Slash Commands" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "As a continuation, let's create a bot that registers a simple slash command!" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Let's look at the differences compared to the previous example, step-by-step:" + +msgid "The first line remains unchanged." +msgstr "The first line remains unchanged." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Finally, we, once again, run the bot with our login token." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Congratulations! Now you have created your first slash command!" + diff --git a/docs/locales/it/LC_MESSAGES/version_guarantees.po b/docs/locales/it/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..3cecd7dd3a --- /dev/null +++ b/docs/locales/it/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Garanzie quanto al versionamento" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "La libreria segue il principio di versionamento semantico `_, implicando che la libreria ed aggiornata ad una versione maggiore dopo ogni modifica di rottura dell'API. Tuttavia, il manco di garanzia dalla parte di Discord a questo proposito e la natura dinamica di Python ed impossibile definire cosa sarebbe o no una modifica di rottura." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "La prima cosa da ricordare è che modifiche di rottura avverrebbero unicamente per **funzioni e classi definite pubblicamente**. Se qualcosa non è listato qui nella documentazione, vuole dire che non fa parte dell'API pubblica e può cambiare a qualsiasi momento. Questo include attributi cominciando con un trattino basso o qualsiasi funzione non documentata qui." + +msgid "The examples below are non-exhaustive." +msgstr "Gli esempi sottostanti non sono esaustivi." + +msgid "Examples of Breaking Changes" +msgstr "Esempi di modifiche non di rottura" + +msgid "Changing the default parameter value to something else." +msgstr "Cambiare il valore predefinito di un parametro." + +msgid "Renaming a function without an alias to an old function." +msgstr "Rinominare una funzione senza dargli un alias." + +msgid "Adding or removing parameters to an event." +msgstr "Aggiungere o togliere dei parametri a un evento." + +msgid "Examples of Non-Breaking Changes" +msgstr "Esempi di modifiche non di rottura" + +msgid "Adding or removing private underscored attributes." +msgstr "Aggiungere o togliere attributi privati con un trattino basso." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Aggiungere un elemento agli ``__slots__`` di una dataclass." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Modificare il comportamento di una funzione nell'obiettivo di risolvere un bug." + +msgid "Changes in the documentation." +msgstr "Modificare la documentazione." + +msgid "Modifying the internal HTTP handling." +msgstr "Modificare l'API interna." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Aggiornare le dipendenze a una nuova versione, sia maggiore o non." + diff --git a/docs/locales/ja/LC_MESSAGES/api/abcs.po b/docs/locales/ja/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..0657b37252 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "The model's unique ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Returns" +msgstr "Returns" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/ja/LC_MESSAGES/api/application_commands.po b/docs/locales/ja/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..3deec14558 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/ja/LC_MESSAGES/api/application_info.po b/docs/locales/ja/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..86c5570471 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/ja/LC_MESSAGES/api/async_iter.po b/docs/locales/ja/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..c7934bda21 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Returns" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Return type" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/ja/LC_MESSAGES/api/audit_logs.po b/docs/locales/ja/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..0f409b5f5a --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/ja/LC_MESSAGES/api/clients.po b/docs/locales/ja/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..c3ea149c61 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/ja/LC_MESSAGES/api/cogs.po b/docs/locales/ja/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..e0a5531320 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Returns" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Return type" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/ja/LC_MESSAGES/api/data_classes.po b/docs/locales/ja/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..fcb1ec47b6 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Returns" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/ja/LC_MESSAGES/api/enums.po b/docs/locales/ja/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..dc333ff02b --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/ja/LC_MESSAGES/api/events.po b/docs/locales/ja/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..cc86ab0031 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/ja/LC_MESSAGES/api/exceptions.po b/docs/locales/ja/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..e4cd130b21 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/ja/LC_MESSAGES/api/index.po b/docs/locales/ja/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..70d92c282d --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/ja/LC_MESSAGES/api/models.po b/docs/locales/ja/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..25f2b52981 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Returns" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/ja/LC_MESSAGES/api/sinks.po b/docs/locales/ja/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..82436a6b02 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/ja/LC_MESSAGES/api/ui_kit.po b/docs/locales/ja/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..bcbfa362d8 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Returns" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/ja/LC_MESSAGES/api/utils.po b/docs/locales/ja/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..11cc3bc28c --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Returns" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/ja/LC_MESSAGES/api/version_info.po b/docs/locales/ja/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..3e7ff6039a --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/ja/LC_MESSAGES/api/voice.po b/docs/locales/ja/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..6458abab9e --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Returns" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/ja/LC_MESSAGES/api/webhooks.po b/docs/locales/ja/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..37d7e63745 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Returns" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/abcs.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/abcs.po new file mode 100644 index 0000000000..e490a75ebc --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "The model's unique ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameter" +msgstr "Parameter" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":py:class:`~discord.iterators.HistoryIterator`" +msgstr ":py:class:`~discord.iterators.HistoryIterator`" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :py:class:`~discord.context_managers.Typing`" +msgstr "This is useful for denoting long computations in your bot. :rtype: :py:class:`~discord.context_managers.Typing`" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/application_commands.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/application_commands.po new file mode 100644 index 0000000000..74fdbe6b20 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/application_commands.po @@ -0,0 +1,880 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameter" +msgstr "Parameter" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":py:data:`~typing.Callable`" +msgstr ":py:data:`~typing.Callable`" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid ":py:class:`~typing.Generator`\\[:py:class:`~discord.commands.core.SlashCommand` | :py:class:`~discord.commands.core.SlashCommandGroup`, :py:obj:`None`, :py:obj:`None`]" +msgstr ":py:class:`~typing.Generator`\\[:py:class:`~discord.commands.core.SlashCommand` | :py:class:`~discord.commands.core.SlashCommandGroup`, :py:obj:`None`, :py:obj:`None`]" + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":py:class:`~typing.TypeVar`\\(``T``)" +msgstr ":py:class:`~typing.TypeVar`\\(``T``)" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/application_info.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/application_info.po new file mode 100644 index 0000000000..d118b5841a --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameter" +msgstr "Parameter" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/async_iter.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/async_iter.po new file mode 100644 index 0000000000..604a7598ee --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameter" +msgstr "Parameter" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/audit_logs.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/audit_logs.po new file mode 100644 index 0000000000..19b7d4154b --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameter" +msgstr "Parameter" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/clients.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/clients.po new file mode 100644 index 0000000000..8c3a467d5b --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/clients.po @@ -0,0 +1,1576 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameter" +msgstr "Parameter" + +msgid ":py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])" +msgstr ":py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])], :py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])], :py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])]" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":py:class:`~discord.iterators.EntitlementIterator`" +msgstr ":py:class:`~discord.iterators.EntitlementIterator`" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":py:class:`~discord.iterators.GuildIterator`" +msgstr ":py:class:`~discord.iterators.GuildIterator`" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid ":py:class:`~typing.Generator`\\[:py:class:`~discord.abc.GuildChannel`, :py:obj:`None`, :py:obj:`None`]" +msgstr ":py:class:`~typing.Generator`\\[:py:class:`~discord.abc.GuildChannel`, :py:obj:`None`, :py:obj:`None`]" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid ":py:class:`~typing.Generator`\\[:py:class:`~discord.member.Member`, :py:obj:`None`, :py:obj:`None`]" +msgstr ":py:class:`~typing.Generator`\\[:py:class:`~discord.member.Member`, :py:obj:`None`, :py:obj:`None`]" + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :py:class:`bool`" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :py:class:`bool`" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":py:class:`list`\\[:py:class:`~discord.types.interactions.ApplicationCommand`]" +msgstr ":py:class:`list`\\[:py:class:`~discord.types.interactions.ApplicationCommand`]" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid ":py:class:`~typing.Generator`\\[:py:class:`~discord.commands.core.ApplicationCommand`, :py:obj:`None`, :py:obj:`None`]" +msgstr ":py:class:`~typing.Generator`\\[:py:class:`~discord.commands.core.ApplicationCommand`, :py:obj:`None`, :py:obj:`None`]" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":py:data:`~typing.Optional`\\[:py:class:`~discord.shard.ShardInfo`]" +msgstr ":py:data:`~typing.Optional`\\[:py:class:`~discord.shard.ShardInfo`]" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :py:class:`bool`" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :py:class:`bool`" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/cogs.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/cogs.po new file mode 100644 index 0000000000..39635c156e --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/cogs.po @@ -0,0 +1,190 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid ":py:class:`~typing.Generator`\\[:py:class:`~discord.commands.core.ApplicationCommand`, :py:obj:`None`, :py:obj:`None`]" +msgstr ":py:class:`~typing.Generator`\\[:py:class:`~discord.commands.core.ApplicationCommand`, :py:obj:`None`, :py:obj:`None`]" + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameter" +msgstr "Parameter" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``FuncT``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:data:`~typing.Any`])], :py:class:`~typing.TypeVar`\\(``FuncT``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:data:`~typing.Any`])]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``FuncT``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:data:`~typing.Any`])], :py:class:`~typing.TypeVar`\\(``FuncT``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:data:`~typing.Any`])]" + +msgid "Checks whether the cog has an error handler. :rtype: :py:class:`bool`" +msgstr "Checks whether the cog has an error handler. :rtype: :py:class:`bool`" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/data_classes.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/data_classes.po new file mode 100644 index 0000000000..766e459e39 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":py:class:`~discord.flags.Intents`" +msgstr ":py:class:`~discord.flags.Intents`" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :py:class:`bool`" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :py:class:`bool`" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :py:class:`~typing.TypeVar`\\(``A``, bound= AllowedMentions)" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :py:class:`~typing.TypeVar`\\(``A``, bound= AllowedMentions)" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :py:class:`~typing.TypeVar`\\(``A``, bound= AllowedMentions)" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :py:class:`~typing.TypeVar`\\(``A``, bound= AllowedMentions)" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":py:class:`~typing.TypeVar`\\(``E``, bound= Embed)" +msgstr ":py:class:`~typing.TypeVar`\\(``E``, bound= Embed)" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":py:class:`~discord.embeds.EmbedField`" +msgstr ":py:class:`~discord.embeds.EmbedField`" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":py:class:`~discord.poll.Poll`" +msgstr ":py:class:`~discord.poll.Poll`" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":py:class:`~discord.iterators.VoteIterator`" +msgstr ":py:class:`~discord.iterators.VoteIterator`" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":py:class:`~discord.flags.MemberCacheFlags`" +msgstr ":py:class:`~discord.flags.MemberCacheFlags`" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":py:class:`list`\\[:py:class:`~discord.enums.UserFlags`]" +msgstr ":py:class:`list`\\[:py:class:`~discord.enums.UserFlags`]" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":py:class:`tuple`\\[:py:class:`int`, :py:class:`int`, :py:class:`int`]" +msgstr ":py:class:`tuple`\\[:py:class:`int`, :py:class:`int`, :py:class:`int`]" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" +msgstr ":py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :py:class:`~typing.TypeVar`\\(``CT``, bound= Colour)" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" +msgstr ":py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :py:class:`~typing.TypeVar`\\(``P``, bound= Permissions)" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":py:class:`tuple`\\[:py:class:`~discord.permissions.Permissions`, :py:class:`~discord.permissions.Permissions`]" +msgstr ":py:class:`tuple`\\[:py:class:`~discord.permissions.Permissions`, :py:class:`~discord.permissions.Permissions`]" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":py:class:`~typing.TypeVar`\\(``PO``, bound= PermissionOverwrite)" +msgstr ":py:class:`~typing.TypeVar`\\(``PO``, bound= PermissionOverwrite)" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/enums.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/enums.po new file mode 100644 index 0000000000..f43361483c --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal based interaction." +msgstr "Represents a modal based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/events.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/events.po new file mode 100644 index 0000000000..228d4d3f0b --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameter" +msgstr "Parameter" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/exceptions.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/exceptions.po new file mode 100644 index 0000000000..8d5907137c --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameter" +msgstr "Parameter" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/index.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/index.po new file mode 100644 index 0000000000..384a17615c --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/models.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/models.po new file mode 100644 index 0000000000..e32c62e44a --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/models.po @@ -0,0 +1,7788 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameter" +msgstr "Parameter" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":py:class:`~discord.iterators.HistoryIterator`" +msgstr ":py:class:`~discord.iterators.HistoryIterator`" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :py:class:`~discord.context_managers.Typing`" +msgstr "This is useful for denoting long computations in your bot. :rtype: :py:class:`~discord.context_managers.Typing`" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":py:class:`~discord.iterators.EntitlementIterator`" +msgstr ":py:class:`~discord.iterators.EntitlementIterator`" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :py:class:`bool`" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :py:class:`bool`" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":py:class:`~discord.message.Message`" +msgstr ":py:class:`~discord.message.Message`" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":py:class:`~discord.iterators.ReactionIterator`" +msgstr ":py:class:`~discord.iterators.ReactionIterator`" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :py:obj:`None`" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :py:obj:`None`" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":py:class:`~discord.iterators.MemberIterator`" +msgstr ":py:class:`~discord.iterators.MemberIterator`" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":py:class:`~discord.iterators.AuditLogIterator`" +msgstr ":py:class:`~discord.iterators.AuditLogIterator`" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :py:obj:`None`" +msgstr "Leaves the guild. :rtype: :py:obj:`None`" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":py:class:`~discord.iterators.BanIterator`" +msgstr ":py:class:`~discord.iterators.BanIterator`" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":py:class:`~discord.template.Template`" +msgstr ":py:class:`~discord.template.Template`" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :py:obj:`None`" +msgstr "Only applies to stage channels. :rtype: :py:obj:`None`" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :py:obj:`None`" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :py:obj:`None`" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :py:class:`bool`" +msgstr "Whether the role is associated with a bot. :rtype: :py:class:`bool`" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :py:class:`bool`" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :py:class:`bool`" + +msgid "Whether the role is managed by an integration. :rtype: :py:class:`bool`" +msgstr "Whether the role is managed by an integration. :rtype: :py:class:`bool`" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :py:class:`bool`" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :py:class:`bool`" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":py:class:`~discord.iterators.ScheduledEventSubscribersIterator`" +msgstr ":py:class:`~discord.iterators.ScheduledEventSubscribersIterator`" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :py:class:`bool`" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :py:class:`bool`" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":py:class:`~discord.interactions.Interaction`" +msgstr ":py:class:`~discord.interactions.Interaction`" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :py:class:`~discord.interactions.Interaction`" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :py:class:`~discord.interactions.Interaction`" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :py:class:`bool`" +msgstr "Whether the bot can use this emoji. :rtype: :py:class:`bool`" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":py:class:`~discord.iterators.ArchivedThreadIterator`" +msgstr ":py:class:`~discord.iterators.ArchivedThreadIterator`" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":py:data:`~typing.Optional`\\[:py:class:`~discord.channel.ForumTag`]" +msgstr ":py:data:`~typing.Optional`\\[:py:class:`~discord.channel.ForumTag`]" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/sinks.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/sinks.po new file mode 100644 index 0000000000..25fce10ee0 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/ui_kit.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/ui_kit.po new file mode 100644 index 0000000000..17a20d0d03 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameter" +msgstr "Parameter" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Any`, :py:class:`~typing.TypeVar`\\(``I``, bound= Item), :py:class:`~discord.interactions.Interaction`], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]]], :py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Any`, :py:class:`~typing.TypeVar`\\(``I``, bound= Item), :py:class:`~discord.interactions.Interaction`], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]]]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Any`, :py:class:`~typing.TypeVar`\\(``I``, bound= Item), :py:class:`~discord.interactions.Interaction`], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]]], :py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Any`, :py:class:`~typing.TypeVar`\\(``I``, bound= Item), :py:class:`~discord.interactions.Interaction`], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]]]" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/utils.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/utils.po new file mode 100644 index 0000000000..c8fe388369 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameter" +msgstr "Parameter" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":py:data:`~typing.Optional`\\[:py:class:`~typing.TypeVar`\\(``T``)]" +msgstr ":py:data:`~typing.Optional`\\[:py:class:`~typing.TypeVar`\\(``T``)]" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Callable`\\[\\[:py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)], :py:class:`~typing.TypeVar`\\(``T``)]], :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)], :py:class:`~typing.TypeVar`\\(``T``)]]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Callable`\\[\\[:py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)], :py:class:`~typing.TypeVar`\\(``T``)]], :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)], :py:class:`~typing.TypeVar`\\(``T``)]]" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/version_info.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/version_info.po new file mode 100644 index 0000000000..4d41fda84e --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/voice.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/voice.po new file mode 100644 index 0000000000..7eff94744d --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameter" +msgstr "Parameter" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":py:data:`~typing.Optional`\\[:py:class:`~_asyncio.Future`]" +msgstr ":py:data:`~typing.Optional`\\[:py:class:`~_asyncio.Future`]" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/api/webhooks.po b/docs/locales/ja/LC_MESSAGES/build/locales/api/webhooks.po new file mode 100644 index 0000000000..aa1175420c --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":py:class:`~discord.webhook.async_.Webhook`" +msgstr ":py:class:`~discord.webhook.async_.Webhook`" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :py:class:`bool`" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :py:class:`bool`" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :py:class:`bool`" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :py:class:`bool`" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":py:class:`~discord.webhook.sync.SyncWebhookMessage`" +msgstr ":py:class:`~discord.webhook.sync.SyncWebhookMessage`" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/changelog.po b/docs/locales/ja/LC_MESSAGES/build/locales/changelog.po new file mode 100644 index 0000000000..276ed18a03 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/changelog.po @@ -0,0 +1,1102 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added" +msgstr "Added" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`. ([#2164](https://github.com/Pycord-Development/pycord/pull/2164))" +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`. ([#2164](https://github.com/Pycord-Development/pycord/pull/2164))" + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in options.py ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in options.py ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/cogs.po b/docs/locales/ja/LC_MESSAGES/build/locales/cogs.po new file mode 100644 index 0000000000..1f9de82102 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/discord.po b/docs/locales/ja/LC_MESSAGES/build/locales/discord.po new file mode 100644 index 0000000000..05f30872a4 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviting Your Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "So you've made a Bot User but it's not actually in any server." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "If you want to invite your bot you must create an invite URL for it." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/ext/bridge/api.po b/docs/locales/ja/LC_MESSAGES/build/locales/ext/bridge/api.po new file mode 100644 index 0000000000..8614499de3 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameter" +msgstr "Parameter" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":py:class:`~collections.abc.Iterator`\\[:py:class:`~discord.ext.bridge.core.BridgeCommand`]" +msgstr ":py:class:`~collections.abc.Iterator`\\[:py:class:`~discord.ext.bridge.core.BridgeCommand`]" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":py:class:`~discord.interactions.Interaction` | :py:class:`~discord.webhook.async_.WebhookMessage` | :py:class:`~discord.message.Message`" +msgstr ":py:class:`~discord.interactions.Interaction` | :py:class:`~discord.webhook.async_.WebhookMessage` | :py:class:`~discord.message.Message`" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :py:obj:`None`" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :py:obj:`None`" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":py:class:`~discord.interactions.InteractionMessage` | :py:class:`~discord.message.Message`" +msgstr ":py:class:`~discord.interactions.InteractionMessage` | :py:class:`~discord.message.Message`" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":py:data:`~typing.Any`" +msgstr ":py:data:`~typing.Any`" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/ext/bridge/index.po b/docs/locales/ja/LC_MESSAGES/build/locales/ext/bridge/index.po new file mode 100644 index 0000000000..c8365e1d1c --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/api.po b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/api.po new file mode 100644 index 0000000000..0cada3a41e --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/api.po @@ -0,0 +1,4117 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameter" +msgstr "Parameter" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])" +msgstr ":py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])], :py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])], :py:class:`~typing.TypeVar`\\(``Coro``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]])]" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":py:class:`~discord.iterators.EntitlementIterator`" +msgstr ":py:class:`~discord.iterators.EntitlementIterator`" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":py:class:`~discord.iterators.GuildIterator`" +msgstr ":py:class:`~discord.iterators.GuildIterator`" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid ":py:class:`~typing.Generator`\\[:py:class:`~discord.abc.GuildChannel`, :py:obj:`None`, :py:obj:`None`]" +msgstr ":py:class:`~typing.Generator`\\[:py:class:`~discord.abc.GuildChannel`, :py:obj:`None`, :py:obj:`None`]" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid ":py:class:`~typing.Generator`\\[:py:class:`~discord.member.Member`, :py:obj:`None`, :py:obj:`None`]" +msgstr ":py:class:`~typing.Generator`\\[:py:class:`~discord.member.Member`, :py:obj:`None`, :py:obj:`None`]" + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :py:class:`bool`" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :py:class:`bool`" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":py:class:`list`\\[:py:class:`~discord.types.interactions.ApplicationCommand`]" +msgstr ":py:class:`list`\\[:py:class:`~discord.types.interactions.ApplicationCommand`]" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid ":py:class:`~typing.Generator`\\[:py:class:`~discord.commands.core.ApplicationCommand`, :py:obj:`None`, :py:obj:`None`]" +msgstr ":py:class:`~typing.Generator`\\[:py:class:`~discord.commands.core.ApplicationCommand`, :py:obj:`None`, :py:obj:`None`]" + +msgid "An iterator that recursively walks through all commands and subcommands. :rtype: :py:class:`~typing.Generator`\\[:py:class:`~discord.ext.commands.core.Command`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:data:`~typing.Any`, :py:data:`~typing.Any`], :py:obj:`None`, :py:obj:`None`]" +msgstr "An iterator that recursively walks through all commands and subcommands. :rtype: :py:class:`~typing.Generator`\\[:py:class:`~discord.ext.commands.core.Command`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:data:`~typing.Any`, :py:data:`~typing.Any`], :py:obj:`None`, :py:obj:`None`]" + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":py:class:`list`\\[:py:class:`str`]" +msgstr ":py:class:`list`\\[:py:class:`str`]" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":py:data:`~typing.Callable`\\[\\[:py:class:`~discord.ext.commands.bot.Bot` | :py:class:`~discord.ext.commands.bot.AutoShardedBot`, :py:class:`~discord.message.Message`], :py:class:`list`\\[:py:class:`str`]]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:class:`~discord.ext.commands.bot.Bot` | :py:class:`~discord.ext.commands.bot.AutoShardedBot`, :py:class:`~discord.message.Message`], :py:class:`list`\\[:py:class:`str`]]" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Union`\\[:py:data:`~typing.Callable`\\[\\[:py:class:`~typing.Concatenate`\\[:py:class:`~typing.TypeVar`\\(``ContextT``, bound= Context), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)]], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]], :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.Concatenate`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:class:`~typing.TypeVar`\\(``ContextT``, bound= Context), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)]], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:class:`~typing.TypeVar`\\(``T``)]]]], :py:data:`~typing.Union`\\[:py:class:`~discord.ext.commands.core.Command`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`), :py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``CommandT``, bound= Command)]]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Union`\\[:py:data:`~typing.Callable`\\[\\[:py:class:`~typing.Concatenate`\\[:py:class:`~typing.TypeVar`\\(``ContextT``, bound= Context), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)]], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]], :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.Concatenate`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:class:`~typing.TypeVar`\\(``ContextT``, bound= Context), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)]], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:class:`~typing.TypeVar`\\(``T``)]]]], :py:data:`~typing.Union`\\[:py:class:`~discord.ext.commands.core.Command`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`), :py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``CommandT``, bound= Command)]]" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Union`\\[:py:data:`~typing.Callable`\\[\\[:py:class:`~typing.Concatenate`\\[:py:class:`~typing.TypeVar`\\(``ContextT``, bound= Context), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)]], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]], :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.Concatenate`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:class:`~typing.TypeVar`\\(``ContextT``, bound= Context), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)]], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:class:`~typing.TypeVar`\\(``T``)]]]], :py:data:`~typing.Union`\\[:py:class:`~discord.ext.commands.core.Group`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`), :py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``GroupT``, bound= Group)]]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Union`\\[:py:data:`~typing.Callable`\\[\\[:py:class:`~typing.Concatenate`\\[:py:class:`~typing.TypeVar`\\(``ContextT``, bound= Context), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)]], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:data:`~typing.Any`]], :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.Concatenate`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:class:`~typing.TypeVar`\\(``ContextT``, bound= Context), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`)]], :py:class:`~typing.Coroutine`\\[:py:data:`~typing.Any`, :py:data:`~typing.Any`, :py:class:`~typing.TypeVar`\\(``T``)]]]], :py:data:`~typing.Union`\\[:py:class:`~discord.ext.commands.core.Group`\\[:py:class:`~typing.TypeVar`\\(``CogT``, bound= Cog), :py:class:`~typing.ParamSpec`\\(``P``, bound= :py:obj:`None`), :py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``GroupT``, bound= Group)]]" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":py:class:`~typing.TypeVar`\\(``HookT``, bound= Hook)" +msgstr ":py:class:`~typing.TypeVar`\\(``HookT``, bound= Hook)" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":py:class:`~typing.TypeVar`\\(``ErrorT``, bound= Error)" +msgstr ":py:class:`~typing.TypeVar`\\(``ErrorT``, bound= Error)" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":py:class:`~typing.TypeVar`\\(``T``)" +msgstr ":py:class:`~typing.TypeVar`\\(``T``)" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :py:class:`bool`" +msgstr "Checks whether the command has an error handler registered. :rtype: :py:class:`bool`" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid ":py:class:`~typing.Generator`\\[:py:class:`~discord.ext.commands.core.Command`, :py:obj:`None`, :py:obj:`None`]" +msgstr ":py:class:`~typing.Generator`\\[:py:class:`~discord.ext.commands.core.Command`, :py:obj:`None`, :py:obj:`None`]" + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":py:class:`str`" +msgstr ":py:class:`str`" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``T``)], :py:class:`~typing.TypeVar`\\(``T``)]" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":py:class:`~discord.iterators.HistoryIterator`" +msgstr ":py:class:`~discord.iterators.HistoryIterator`" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :py:class:`~discord.context_managers.Typing`" +msgstr "This is useful for denoting long computations in your bot. :rtype: :py:class:`~discord.context_managers.Typing`" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":py:class:`~typing.TypeVar`\\(``T_co``, covariant=True)" +msgstr ":py:class:`~typing.TypeVar`\\(``T_co``, covariant=True)" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":py:class:`~discord.object.Object`" +msgstr ":py:class:`~discord.object.Object`" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":py:class:`~discord.member.Member`" +msgstr ":py:class:`~discord.member.Member`" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":py:class:`~discord.user.User`" +msgstr ":py:class:`~discord.user.User`" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":py:class:`~discord.message.Message`" +msgstr ":py:class:`~discord.message.Message`" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":py:class:`~discord.message.PartialMessage`" +msgstr ":py:class:`~discord.message.PartialMessage`" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":py:class:`~discord.abc.GuildChannel`" +msgstr ":py:class:`~discord.abc.GuildChannel`" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":py:class:`~discord.channel.TextChannel`" +msgstr ":py:class:`~discord.channel.TextChannel`" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":py:class:`~discord.channel.VoiceChannel`" +msgstr ":py:class:`~discord.channel.VoiceChannel`" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":py:class:`~discord.channel.StageChannel`" +msgstr ":py:class:`~discord.channel.StageChannel`" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":py:class:`~discord.channel.CategoryChannel`" +msgstr ":py:class:`~discord.channel.CategoryChannel`" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":py:class:`~discord.channel.ForumChannel`" +msgstr ":py:class:`~discord.channel.ForumChannel`" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":py:class:`~discord.invite.Invite`" +msgstr ":py:class:`~discord.invite.Invite`" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":py:class:`~discord.guild.Guild`" +msgstr ":py:class:`~discord.guild.Guild`" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":py:class:`~discord.role.Role`" +msgstr ":py:class:`~discord.role.Role`" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":py:class:`~discord.activity.Game`" +msgstr ":py:class:`~discord.activity.Game`" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":py:class:`~discord.colour.Colour`" +msgstr ":py:class:`~discord.colour.Colour`" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":py:class:`~discord.emoji.Emoji`" +msgstr ":py:class:`~discord.emoji.Emoji`" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":py:class:`~discord.partial_emoji.PartialEmoji`" +msgstr ":py:class:`~discord.partial_emoji.PartialEmoji`" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":py:class:`~discord.threads.Thread`" +msgstr ":py:class:`~discord.threads.Thread`" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":py:class:`~discord.sticker.GuildSticker`" +msgstr ":py:class:`~discord.sticker.GuildSticker`" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":py:class:`dict`\\[:py:class:`str`, :py:class:`~discord.ext.commands.flags.Flag`]" +msgstr ":py:class:`dict`\\[:py:class:`str`, :py:class:`~discord.ext.commands.flags.Flag`]" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":py:data:`~typing.Any`" +msgstr ":py:data:`~typing.Any`" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/cogs.po b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/cogs.po new file mode 100644 index 0000000000..6fe8e9c4fd --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/commands.po b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/commands.po new file mode 100644 index 0000000000..3f449870e4 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/extensions.po b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/extensions.po new file mode 100644 index 0000000000..64386db1ee --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/index.po b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/index.po new file mode 100644 index 0000000000..8647254770 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/ext/pages/index.po b/docs/locales/ja/LC_MESSAGES/build/locales/ext/pages/index.po new file mode 100644 index 0000000000..1ec538890f --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameter" +msgstr "Parameter" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":py:data:`~typing.Optional`\\[:py:class:`list`\\[:py:class:`~discord.file.File`]]" +msgstr ":py:data:`~typing.Optional`\\[:py:class:`list`\\[:py:class:`~discord.file.File`]]" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":py:class:`list`\\[:py:class:`~discord.ext.pages.pagination.Page`]" +msgstr ":py:class:`list`\\[:py:class:`~discord.ext.pages.pagination.Page`]" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":py:class:`~discord.ext.pages.pagination.Page`" +msgstr ":py:class:`~discord.ext.pages.pagination.Page`" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/ext/tasks/index.po b/docs/locales/ja/LC_MESSAGES/build/locales/ext/tasks/index.po new file mode 100644 index 0000000000..7a09c10f75 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameter" +msgstr "Parameter" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Verursacht" +msgstr "Verursacht" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Rückgabetyp" +msgstr "Rückgabetyp" + +msgid ":py:class:`~typing.TypeVar`\\(``FT``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Awaitable`\\[:py:data:`~typing.Any`]])" +msgstr ":py:class:`~typing.TypeVar`\\(``FT``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Awaitable`\\[:py:data:`~typing.Any`]])" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":py:class:`~typing.TypeVar`\\(``ET``, bound= :py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Any`, :py:class:`BaseException`], :py:class:`~typing.Awaitable`\\[:py:data:`~typing.Any`]])" +msgstr ":py:class:`~typing.TypeVar`\\(``ET``, bound= :py:data:`~typing.Callable`\\[\\[:py:data:`~typing.Any`, :py:class:`BaseException`], :py:class:`~typing.Awaitable`\\[:py:data:`~typing.Any`]])" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":py:data:`~typing.Any`" +msgstr ":py:data:`~typing.Any`" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Rückgabe" +msgstr "Rückgabe" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :py:obj:`None`" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :py:obj:`None`" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":py:obj:`None`" +msgstr ":py:obj:`None`" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :py:obj:`None`" +msgstr "Removes all exception types that are handled. :rtype: :py:obj:`None`" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":py:data:`~typing.Optional`\\[:py:class:`~_asyncio.Task`\\[:py:obj:`None`]]" +msgstr ":py:data:`~typing.Optional`\\[:py:class:`~_asyncio.Task`\\[:py:obj:`None`]]" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":py:class:`bool`" +msgstr ":py:class:`bool`" + +msgid "Whether the internal task has failed. :rtype: :py:class:`bool`" +msgstr "Whether the internal task has failed. :rtype: :py:class:`bool`" + +msgid "Check if the task is currently running. :rtype: :py:class:`bool`" +msgstr "Check if the task is currently running. :rtype: :py:class:`bool`" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``LF``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Awaitable`\\[:py:data:`~typing.Any`]])], :py:class:`~discord.ext.tasks.Loop`\\[:py:class:`~typing.TypeVar`\\(``LF``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Awaitable`\\[:py:data:`~typing.Any`]])]]" +msgstr ":py:data:`~typing.Callable`\\[\\[:py:class:`~typing.TypeVar`\\(``LF``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Awaitable`\\[:py:data:`~typing.Any`]])], :py:class:`~discord.ext.tasks.Loop`\\[:py:class:`~typing.TypeVar`\\(``LF``, bound= :py:data:`~typing.Callable`\\[:py:data:`...`, :py:class:`~typing.Awaitable`\\[:py:data:`~typing.Any`]])]]" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/faq.po b/docs/locales/ja/LC_MESSAGES/build/locales/faq.po new file mode 100644 index 0000000000..1ca9ee694d --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/index.po b/docs/locales/ja/LC_MESSAGES/build/locales/index.po new file mode 100644 index 0000000000..bdd49237dc --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Welcome to Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." + +msgid "**Features:**" +msgstr "**Features:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "Modern Pythonic API using ``async``\\/``await`` syntax" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Sane rate limit handling that prevents 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Command extension to aid with bot creation" + +msgid "Easy to use with an object oriented design" +msgstr "Easy to use with an object oriented design" + +msgid "Optimised for both speed and memory" +msgstr "Optimised for both speed and memory" + +msgid "Getting started" +msgstr "Getting started" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Is this your first time using the library? This is the place to get started!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Working with Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Examples:** Many examples are available in the :resource:`repository `." + +msgid "Getting help" +msgstr "Getting help" + +msgid "If you're having trouble with something, these resources might help." +msgstr "If you're having trouble with something, these resources might help." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Try the :doc:`faq` first, it's got answers to all common questions." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Ask us and hang out with us in our :resource:`Discord ` server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Report bugs in the :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuals" + +msgid "These pages go into great detail about everything the API can do." +msgstr "These pages go into great detail about everything the API can do." + +msgid "Core API" +msgstr "Core API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "These extensions help you during development when it comes to common tasks." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot commands framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task helpers" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - A pagination extension module" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "If you're looking for something related to the project itself, it's here." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - The changelog for the library." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - The version guarantees for the library." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/installing.po b/docs/locales/ja/LC_MESSAGES/build/locales/installing.po new file mode 100644 index 0000000000..6ce2876f00 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Installing Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." + +msgid "Prerequisites" +msgstr "Prerequisites" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "For Windows users, this command should be used to install the pre-release: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." + +msgid "A quick example to showcase how events work:" +msgstr "A quick example to showcase how events work:" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/intents.po b/docs/locales/ja/LC_MESSAGES/build/locales/intents.po new file mode 100644 index 0000000000..bf7c13556a --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/logging.po b/docs/locales/ja/LC_MESSAGES/build/locales/logging.po new file mode 100644 index 0000000000..5a565ddb69 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/migrating_to_v1.po b/docs/locales/ja/LC_MESSAGES/build/locales/migrating_to_v1.po new file mode 100644 index 0000000000..145230a20b --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/migrating_to_v2.po b/docs/locales/ja/LC_MESSAGES/build/locales/migrating_to_v2.po new file mode 100644 index 0000000000..8aef7d54ed --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/old_changelog.po b/docs/locales/ja/LC_MESSAGES/build/locales/old_changelog.po new file mode 100644 index 0000000000..07de1f26c6 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/quickstart.po b/docs/locales/ja/LC_MESSAGES/build/locales/quickstart.po new file mode 100644 index 0000000000..ac8cb242dd --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Quickstart" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." + +msgid "A Minimal Bot" +msgstr "A Minimal Bot" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Let's make a bot that responds to a specific message and walk you through it." + +msgid "It looks something like this:" +msgstr "It looks something like this:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "There's a lot going on here, so let's walk you through it step by step:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." + +msgid "On Windows:" +msgstr "On Windows:" + +msgid "On other systems:" +msgstr "On other systems:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Now you can try playing around with your basic bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "A Minimal Bot with Slash Commands" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "As a continuation, let's create a bot that registers a simple slash command!" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Let's look at the differences compared to the previous example, step-by-step:" + +msgid "The first line remains unchanged." +msgstr "The first line remains unchanged." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Finally, we, once again, run the bot with our login token." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Congratulations! Now you have created your first slash command!" + diff --git a/docs/locales/ja/LC_MESSAGES/build/locales/version_guarantees.po b/docs/locales/ja/LC_MESSAGES/build/locales/version_guarantees.po new file mode 100644 index 0000000000..a65f5a9755 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/build/locales/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Version Guarantees" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." + +msgid "The examples below are non-exhaustive." +msgstr "The examples below are non-exhaustive." + +msgid "Examples of Breaking Changes" +msgstr "Examples of Breaking Changes" + +msgid "Changing the default parameter value to something else." +msgstr "Changing the default parameter value to something else." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renaming a function without an alias to an old function." + +msgid "Adding or removing parameters to an event." +msgstr "Adding or removing parameters to an event." + +msgid "Examples of Non-Breaking Changes" +msgstr "Examples of Non-Breaking Changes" + +msgid "Adding or removing private underscored attributes." +msgstr "Adding or removing private underscored attributes." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Adding an element into the ``__slots__`` of a data class." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Changing the behaviour of a function to fix a bug." + +msgid "Changes in the documentation." +msgstr "Changes in the documentation." + +msgid "Modifying the internal HTTP handling." +msgstr "Modifying the internal HTTP handling." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Upgrading the dependencies to a new version, major or otherwise." + diff --git a/docs/locales/ja/LC_MESSAGES/changelog.po b/docs/locales/ja/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..157985f7ef --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/ja/LC_MESSAGES/cogs.po b/docs/locales/ja/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..713392b91f --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/ja/LC_MESSAGES/discord.po b/docs/locales/ja/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..242f4b20a4 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviting Your Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "So you've made a Bot User but it's not actually in any server." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "If you want to invite your bot you must create an invite URL for it." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/ja/LC_MESSAGES/ext/bridge/api.po b/docs/locales/ja/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..2e66ef4160 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/ja/LC_MESSAGES/ext/bridge/index.po b/docs/locales/ja/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..5d04d47e3a --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/ja/LC_MESSAGES/ext/commands/api.po b/docs/locales/ja/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..eaacd057b9 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/ja/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/ja/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..324861b347 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/ja/LC_MESSAGES/ext/commands/commands.po b/docs/locales/ja/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..85b41501d1 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/ja/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/ja/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..4f3fd6efcd --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/ja/LC_MESSAGES/ext/commands/index.po b/docs/locales/ja/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..d05921587d --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/ja/LC_MESSAGES/ext/pages/index.po b/docs/locales/ja/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..19c1622bfa --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Returns" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/ja/LC_MESSAGES/ext/tasks/index.po b/docs/locales/ja/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..6236de13f1 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Raises" +msgstr "Raises" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Returns" +msgstr "Returns" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/ja/LC_MESSAGES/faq.po b/docs/locales/ja/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..91d04f72fb --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/ja/LC_MESSAGES/index.po b/docs/locales/ja/LC_MESSAGES/index.po new file mode 100644 index 0000000000..f6843e1e93 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Welcome to Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." + +msgid "**Features:**" +msgstr "**Features:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "Modern Pythonic API using ``async``\\/``await`` syntax" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Sane rate limit handling that prevents 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Command extension to aid with bot creation" + +msgid "Easy to use with an object oriented design" +msgstr "Easy to use with an object oriented design" + +msgid "Optimised for both speed and memory" +msgstr "Optimised for both speed and memory" + +msgid "Getting started" +msgstr "Getting started" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Is this your first time using the library? This is the place to get started!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Working with Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Examples:** Many examples are available in the :resource:`repository `." + +msgid "Getting help" +msgstr "Getting help" + +msgid "If you're having trouble with something, these resources might help." +msgstr "If you're having trouble with something, these resources might help." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Try the :doc:`faq` first, it's got answers to all common questions." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Ask us and hang out with us in our :resource:`Discord ` server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Report bugs in the :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuals" + +msgid "These pages go into great detail about everything the API can do." +msgstr "These pages go into great detail about everything the API can do." + +msgid "Core API" +msgstr "Core API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "These extensions help you during development when it comes to common tasks." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot commands framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task helpers" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - A pagination extension module" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "If you're looking for something related to the project itself, it's here." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - The changelog for the library." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - The version guarantees for the library." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." + diff --git a/docs/locales/ja/LC_MESSAGES/installing.po b/docs/locales/ja/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..f2d0f0d14d --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Installing Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." + +msgid "Prerequisites" +msgstr "Prerequisites" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "For Windows users, this command should be used to install the pre-release: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." + +msgid "A quick example to showcase how events work:" +msgstr "A quick example to showcase how events work:" + diff --git a/docs/locales/ja/LC_MESSAGES/intents.po b/docs/locales/ja/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..7201bbd103 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/ja/LC_MESSAGES/logging.po b/docs/locales/ja/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..8130d84e9f --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/ja/LC_MESSAGES/migrating_to_v1.po b/docs/locales/ja/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..ea81171aff --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/ja/LC_MESSAGES/migrating_to_v2.po b/docs/locales/ja/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..4220fe4212 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/ja/LC_MESSAGES/old_changelog.po b/docs/locales/ja/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..a1f5831ab1 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/ja/LC_MESSAGES/quickstart.po b/docs/locales/ja/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..018b5372f2 --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Quickstart" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." + +msgid "A Minimal Bot" +msgstr "A Minimal Bot" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Let's make a bot that responds to a specific message and walk you through it." + +msgid "It looks something like this:" +msgstr "It looks something like this:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "There's a lot going on here, so let's walk you through it step by step:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." + +msgid "On Windows:" +msgstr "On Windows:" + +msgid "On other systems:" +msgstr "On other systems:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Now you can try playing around with your basic bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "A Minimal Bot with Slash Commands" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "As a continuation, let's create a bot that registers a simple slash command!" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Let's look at the differences compared to the previous example, step-by-step:" + +msgid "The first line remains unchanged." +msgstr "The first line remains unchanged." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Finally, we, once again, run the bot with our login token." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Congratulations! Now you have created your first slash command!" + diff --git a/docs/locales/ja/LC_MESSAGES/version_guarantees.po b/docs/locales/ja/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..fc3d82a0ee --- /dev/null +++ b/docs/locales/ja/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Version Guarantees" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." + +msgid "The examples below are non-exhaustive." +msgstr "The examples below are non-exhaustive." + +msgid "Examples of Breaking Changes" +msgstr "Examples of Breaking Changes" + +msgid "Changing the default parameter value to something else." +msgstr "Changing the default parameter value to something else." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renaming a function without an alias to an old function." + +msgid "Adding or removing parameters to an event." +msgstr "Adding or removing parameters to an event." + +msgid "Examples of Non-Breaking Changes" +msgstr "Examples of Non-Breaking Changes" + +msgid "Adding or removing private underscored attributes." +msgstr "Adding or removing private underscored attributes." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Adding an element into the ``__slots__`` of a data class." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Changing the behaviour of a function to fix a bug." + +msgid "Changes in the documentation." +msgstr "Changes in the documentation." + +msgid "Modifying the internal HTTP handling." +msgstr "Modifying the internal HTTP handling." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Upgrading the dependencies to a new version, major or otherwise." + diff --git a/docs/locales/ko/LC_MESSAGES/api/abcs.po b/docs/locales/ko/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..0657b37252 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "The model's unique ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Returns" +msgstr "Returns" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/ko/LC_MESSAGES/api/application_commands.po b/docs/locales/ko/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..3deec14558 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/ko/LC_MESSAGES/api/application_info.po b/docs/locales/ko/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..86c5570471 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/ko/LC_MESSAGES/api/async_iter.po b/docs/locales/ko/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..c7934bda21 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Returns" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Return type" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/ko/LC_MESSAGES/api/audit_logs.po b/docs/locales/ko/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..0f409b5f5a --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/ko/LC_MESSAGES/api/clients.po b/docs/locales/ko/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..c3ea149c61 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/ko/LC_MESSAGES/api/cogs.po b/docs/locales/ko/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..e0a5531320 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Returns" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Return type" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/ko/LC_MESSAGES/api/data_classes.po b/docs/locales/ko/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..fcb1ec47b6 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Returns" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/ko/LC_MESSAGES/api/enums.po b/docs/locales/ko/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..dc333ff02b --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/ko/LC_MESSAGES/api/events.po b/docs/locales/ko/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..cc86ab0031 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/ko/LC_MESSAGES/api/exceptions.po b/docs/locales/ko/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..e4cd130b21 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/ko/LC_MESSAGES/api/index.po b/docs/locales/ko/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..70d92c282d --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/ko/LC_MESSAGES/api/models.po b/docs/locales/ko/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..25f2b52981 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Returns" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/ko/LC_MESSAGES/api/sinks.po b/docs/locales/ko/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..82436a6b02 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/ko/LC_MESSAGES/api/ui_kit.po b/docs/locales/ko/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..bcbfa362d8 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Returns" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/ko/LC_MESSAGES/api/utils.po b/docs/locales/ko/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..11cc3bc28c --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Returns" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/ko/LC_MESSAGES/api/version_info.po b/docs/locales/ko/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..3e7ff6039a --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/ko/LC_MESSAGES/api/voice.po b/docs/locales/ko/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..6458abab9e --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Returns" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/ko/LC_MESSAGES/api/webhooks.po b/docs/locales/ko/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..37d7e63745 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Returns" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/ko/LC_MESSAGES/changelog.po b/docs/locales/ko/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..157985f7ef --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/ko/LC_MESSAGES/cogs.po b/docs/locales/ko/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..713392b91f --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/ko/LC_MESSAGES/discord.po b/docs/locales/ko/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..242f4b20a4 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviting Your Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "So you've made a Bot User but it's not actually in any server." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "If you want to invite your bot you must create an invite URL for it." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/ko/LC_MESSAGES/ext/bridge/api.po b/docs/locales/ko/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..2e66ef4160 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/ko/LC_MESSAGES/ext/bridge/index.po b/docs/locales/ko/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..5d04d47e3a --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/ko/LC_MESSAGES/ext/commands/api.po b/docs/locales/ko/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..eaacd057b9 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/ko/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/ko/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..324861b347 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/ko/LC_MESSAGES/ext/commands/commands.po b/docs/locales/ko/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..85b41501d1 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/ko/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/ko/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..4f3fd6efcd --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/ko/LC_MESSAGES/ext/commands/index.po b/docs/locales/ko/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..d05921587d --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/ko/LC_MESSAGES/ext/pages/index.po b/docs/locales/ko/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..19c1622bfa --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Returns" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/ko/LC_MESSAGES/ext/tasks/index.po b/docs/locales/ko/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..6236de13f1 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Raises" +msgstr "Raises" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Returns" +msgstr "Returns" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/ko/LC_MESSAGES/faq.po b/docs/locales/ko/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..91d04f72fb --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/ko/LC_MESSAGES/index.po b/docs/locales/ko/LC_MESSAGES/index.po new file mode 100644 index 0000000000..f6843e1e93 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Welcome to Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." + +msgid "**Features:**" +msgstr "**Features:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "Modern Pythonic API using ``async``\\/``await`` syntax" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Sane rate limit handling that prevents 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Command extension to aid with bot creation" + +msgid "Easy to use with an object oriented design" +msgstr "Easy to use with an object oriented design" + +msgid "Optimised for both speed and memory" +msgstr "Optimised for both speed and memory" + +msgid "Getting started" +msgstr "Getting started" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Is this your first time using the library? This is the place to get started!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Working with Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Examples:** Many examples are available in the :resource:`repository `." + +msgid "Getting help" +msgstr "Getting help" + +msgid "If you're having trouble with something, these resources might help." +msgstr "If you're having trouble with something, these resources might help." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Try the :doc:`faq` first, it's got answers to all common questions." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Ask us and hang out with us in our :resource:`Discord ` server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Report bugs in the :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuals" + +msgid "These pages go into great detail about everything the API can do." +msgstr "These pages go into great detail about everything the API can do." + +msgid "Core API" +msgstr "Core API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "These extensions help you during development when it comes to common tasks." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot commands framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task helpers" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - A pagination extension module" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "If you're looking for something related to the project itself, it's here." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - The changelog for the library." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - The version guarantees for the library." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." + diff --git a/docs/locales/ko/LC_MESSAGES/installing.po b/docs/locales/ko/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..f2d0f0d14d --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Installing Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." + +msgid "Prerequisites" +msgstr "Prerequisites" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "For Windows users, this command should be used to install the pre-release: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." + +msgid "A quick example to showcase how events work:" +msgstr "A quick example to showcase how events work:" + diff --git a/docs/locales/ko/LC_MESSAGES/intents.po b/docs/locales/ko/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..7201bbd103 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/ko/LC_MESSAGES/logging.po b/docs/locales/ko/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..8130d84e9f --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/ko/LC_MESSAGES/migrating_to_v1.po b/docs/locales/ko/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..ea81171aff --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/ko/LC_MESSAGES/migrating_to_v2.po b/docs/locales/ko/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..4220fe4212 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/ko/LC_MESSAGES/old_changelog.po b/docs/locales/ko/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..a1f5831ab1 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/ko/LC_MESSAGES/quickstart.po b/docs/locales/ko/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..018b5372f2 --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Quickstart" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." + +msgid "A Minimal Bot" +msgstr "A Minimal Bot" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Let's make a bot that responds to a specific message and walk you through it." + +msgid "It looks something like this:" +msgstr "It looks something like this:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "There's a lot going on here, so let's walk you through it step by step:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." + +msgid "On Windows:" +msgstr "On Windows:" + +msgid "On other systems:" +msgstr "On other systems:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Now you can try playing around with your basic bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "A Minimal Bot with Slash Commands" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "As a continuation, let's create a bot that registers a simple slash command!" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Let's look at the differences compared to the previous example, step-by-step:" + +msgid "The first line remains unchanged." +msgstr "The first line remains unchanged." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Finally, we, once again, run the bot with our login token." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Congratulations! Now you have created your first slash command!" + diff --git a/docs/locales/ko/LC_MESSAGES/version_guarantees.po b/docs/locales/ko/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..fc3d82a0ee --- /dev/null +++ b/docs/locales/ko/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Version Guarantees" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." + +msgid "The examples below are non-exhaustive." +msgstr "The examples below are non-exhaustive." + +msgid "Examples of Breaking Changes" +msgstr "Examples of Breaking Changes" + +msgid "Changing the default parameter value to something else." +msgstr "Changing the default parameter value to something else." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renaming a function without an alias to an old function." + +msgid "Adding or removing parameters to an event." +msgstr "Adding or removing parameters to an event." + +msgid "Examples of Non-Breaking Changes" +msgstr "Examples of Non-Breaking Changes" + +msgid "Adding or removing private underscored attributes." +msgstr "Adding or removing private underscored attributes." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Adding an element into the ``__slots__`` of a data class." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Changing the behaviour of a function to fix a bug." + +msgid "Changes in the documentation." +msgstr "Changes in the documentation." + +msgid "Modifying the internal HTTP handling." +msgstr "Modifying the internal HTTP handling." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Upgrading the dependencies to a new version, major or otherwise." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/abcs.po b/docs/locales/pt_BR/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..dd0448a634 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "The model's unique ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Returns" +msgstr "Returns" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/application_commands.po b/docs/locales/pt_BR/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..ee950c0b7a --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/application_info.po b/docs/locales/pt_BR/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..31922fca86 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/async_iter.po b/docs/locales/pt_BR/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..b322381f39 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Returns" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Return type" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/audit_logs.po b/docs/locales/pt_BR/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..05c56e27c2 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/clients.po b/docs/locales/pt_BR/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..e4b8f95258 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/cogs.po b/docs/locales/pt_BR/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..1f689825ce --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "A classe base da qual todas as cogs devem herdar." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Returns" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Return type" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/data_classes.po b/docs/locales/pt_BR/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..bc1c9d6327 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Returns" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/enums.po b/docs/locales/pt_BR/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..b12fa4f3a2 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/events.po b/docs/locales/pt_BR/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..3de9f161c1 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/exceptions.po b/docs/locales/pt_BR/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..1840bc94e8 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/index.po b/docs/locales/pt_BR/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..80efb62166 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/models.po b/docs/locales/pt_BR/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..9c71559652 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Returns" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/sinks.po b/docs/locales/pt_BR/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..c041d54623 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/ui_kit.po b/docs/locales/pt_BR/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..0e374cd9d7 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Returns" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/utils.po b/docs/locales/pt_BR/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..c59ea4f08e --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Returns" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/version_info.po b/docs/locales/pt_BR/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..a57036beac --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/voice.po b/docs/locales/pt_BR/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..ce04e5fda5 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Returns" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/api/webhooks.po b/docs/locales/pt_BR/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..c6f477ed90 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Returns" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/changelog.po b/docs/locales/pt_BR/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..29a1ffefe4 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/cogs.po b/docs/locales/pt_BR/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..d3b99d560a --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/discord.po b/docs/locales/pt_BR/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..1d84eae006 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviting Your Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "So you've made a Bot User but it's not actually in any server." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "If you want to invite your bot you must create an invite URL for it." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/ext/bridge/api.po b/docs/locales/pt_BR/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..c8f2bfa309 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/ext/bridge/index.po b/docs/locales/pt_BR/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..d829d3af31 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/ext/commands/api.po b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..76f6bbe713 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..b6bdcd19af --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/ext/commands/commands.po b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..1a44455c05 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..aefcfd5e04 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/ext/commands/index.po b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..201036b377 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/ext/pages/index.po b/docs/locales/pt_BR/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..30b0c29ee7 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Returns" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/ext/tasks/index.po b/docs/locales/pt_BR/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..beb1ad9f67 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Raises" +msgstr "Raises" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Returns" +msgstr "Returns" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/faq.po b/docs/locales/pt_BR/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..5326557f7a --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/index.po b/docs/locales/pt_BR/LC_MESSAGES/index.po new file mode 100644 index 0000000000..e04d506e0c --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Welcome to Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." + +msgid "**Features:**" +msgstr "**Features:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "Modern Pythonic API using ``async``\\/``await`` syntax" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Sane rate limit handling that prevents 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Command extension to aid with bot creation" + +msgid "Easy to use with an object oriented design" +msgstr "Easy to use with an object oriented design" + +msgid "Optimised for both speed and memory" +msgstr "Optimised for both speed and memory" + +msgid "Getting started" +msgstr "Getting started" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Is this your first time using the library? This is the place to get started!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Working with Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Examples:** Many examples are available in the :resource:`repository `." + +msgid "Getting help" +msgstr "Getting help" + +msgid "If you're having trouble with something, these resources might help." +msgstr "If you're having trouble with something, these resources might help." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Try the :doc:`faq` first, it's got answers to all common questions." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Ask us and hang out with us in our :resource:`Discord ` server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Report bugs in the :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuals" + +msgid "These pages go into great detail about everything the API can do." +msgstr "These pages go into great detail about everything the API can do." + +msgid "Core API" +msgstr "Core API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "These extensions help you during development when it comes to common tasks." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot commands framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task helpers" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - A pagination extension module" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "If you're looking for something related to the project itself, it's here." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - The changelog for the library." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - The version guarantees for the library." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/installing.po b/docs/locales/pt_BR/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..89b42dbb7a --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Installing Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." + +msgid "Prerequisites" +msgstr "Prerequisites" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "For Windows users, this command should be used to install the pre-release: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." + +msgid "A quick example to showcase how events work:" +msgstr "A quick example to showcase how events work:" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/intents.po b/docs/locales/pt_BR/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..036ca6dbac --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/logging.po b/docs/locales/pt_BR/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..9b9b2f2707 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/migrating_to_v1.po b/docs/locales/pt_BR/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..ba2c21442b --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/migrating_to_v2.po b/docs/locales/pt_BR/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..41ef72997c --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/old_changelog.po b/docs/locales/pt_BR/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..21e169d5d4 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/pt_BR/LC_MESSAGES/quickstart.po b/docs/locales/pt_BR/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..21a2adf607 --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Quickstart" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." + +msgid "A Minimal Bot" +msgstr "A Minimal Bot" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Let's make a bot that responds to a specific message and walk you through it." + +msgid "It looks something like this:" +msgstr "It looks something like this:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "There's a lot going on here, so let's walk you through it step by step:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." + +msgid "On Windows:" +msgstr "On Windows:" + +msgid "On other systems:" +msgstr "On other systems:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Now you can try playing around with your basic bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "A Minimal Bot with Slash Commands" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "As a continuation, let's create a bot that registers a simple slash command!" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Let's look at the differences compared to the previous example, step-by-step:" + +msgid "The first line remains unchanged." +msgstr "The first line remains unchanged." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Finally, we, once again, run the bot with our login token." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Congratulations! Now you have created your first slash command!" + diff --git a/docs/locales/pt_BR/LC_MESSAGES/version_guarantees.po b/docs/locales/pt_BR/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..5a827907dc --- /dev/null +++ b/docs/locales/pt_BR/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Version Guarantees" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." + +msgid "The examples below are non-exhaustive." +msgstr "The examples below are non-exhaustive." + +msgid "Examples of Breaking Changes" +msgstr "Examples of Breaking Changes" + +msgid "Changing the default parameter value to something else." +msgstr "Changing the default parameter value to something else." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renaming a function without an alias to an old function." + +msgid "Adding or removing parameters to an event." +msgstr "Adding or removing parameters to an event." + +msgid "Examples of Non-Breaking Changes" +msgstr "Examples of Non-Breaking Changes" + +msgid "Adding or removing private underscored attributes." +msgstr "Adding or removing private underscored attributes." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Adding an element into the ``__slots__`` of a data class." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Changing the behaviour of a function to fix a bug." + +msgid "Changes in the documentation." +msgstr "Changes in the documentation." + +msgid "Modifying the internal HTTP handling." +msgstr "Modifying the internal HTTP handling." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Upgrading the dependencies to a new version, major or otherwise." + diff --git a/docs/locales/ru/LC_MESSAGES/api/abcs.po b/docs/locales/ru/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..b84beff8e2 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "The model's unique ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Returns" +msgstr "Returns" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/ru/LC_MESSAGES/api/application_commands.po b/docs/locales/ru/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..6caa6323db --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/ru/LC_MESSAGES/api/application_info.po b/docs/locales/ru/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..536a97bcfc --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/ru/LC_MESSAGES/api/async_iter.po b/docs/locales/ru/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..4542caaa27 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Returns" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Return type" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/ru/LC_MESSAGES/api/audit_logs.po b/docs/locales/ru/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..b7f5602e47 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/ru/LC_MESSAGES/api/clients.po b/docs/locales/ru/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..3eaefdcf6b --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/ru/LC_MESSAGES/api/cogs.po b/docs/locales/ru/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..e68bf4382b --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Returns" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Return type" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/ru/LC_MESSAGES/api/data_classes.po b/docs/locales/ru/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..0b43e6354a --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Returns" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/ru/LC_MESSAGES/api/enums.po b/docs/locales/ru/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..a41d1de43a --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/ru/LC_MESSAGES/api/events.po b/docs/locales/ru/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..b312999248 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/ru/LC_MESSAGES/api/exceptions.po b/docs/locales/ru/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..66bba88ff5 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/ru/LC_MESSAGES/api/index.po b/docs/locales/ru/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..19dbb17fdf --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/ru/LC_MESSAGES/api/models.po b/docs/locales/ru/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..2bd42c06ae --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Returns" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/ru/LC_MESSAGES/api/sinks.po b/docs/locales/ru/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..6c21bd835b --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/ru/LC_MESSAGES/api/ui_kit.po b/docs/locales/ru/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..f1ec854b78 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Returns" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/ru/LC_MESSAGES/api/utils.po b/docs/locales/ru/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..3bc7abb68d --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Returns" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/ru/LC_MESSAGES/api/version_info.po b/docs/locales/ru/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..cd655da13b --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/ru/LC_MESSAGES/api/voice.po b/docs/locales/ru/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..c254fb8f70 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Returns" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/ru/LC_MESSAGES/api/webhooks.po b/docs/locales/ru/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..80137a0ede --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Returns" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/ru/LC_MESSAGES/changelog.po b/docs/locales/ru/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..09bdd528e5 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/ru/LC_MESSAGES/cogs.po b/docs/locales/ru/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..5acea9a006 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/ru/LC_MESSAGES/discord.po b/docs/locales/ru/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..c65a5ae36b --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviting Your Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "So you've made a Bot User but it's not actually in any server." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "If you want to invite your bot you must create an invite URL for it." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/ru/LC_MESSAGES/ext/bridge/api.po b/docs/locales/ru/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..4661fc4a01 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/ru/LC_MESSAGES/ext/bridge/index.po b/docs/locales/ru/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..8201df822b --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/ru/LC_MESSAGES/ext/commands/api.po b/docs/locales/ru/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..9c73faf3c7 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/ru/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/ru/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..089b6e2f4e --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/ru/LC_MESSAGES/ext/commands/commands.po b/docs/locales/ru/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..88d83445bd --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/ru/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/ru/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..f813885885 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/ru/LC_MESSAGES/ext/commands/index.po b/docs/locales/ru/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..bdb8ff19a7 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/ru/LC_MESSAGES/ext/pages/index.po b/docs/locales/ru/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..d77448bb1f --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Returns" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/ru/LC_MESSAGES/ext/tasks/index.po b/docs/locales/ru/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..967725ae47 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Raises" +msgstr "Raises" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Returns" +msgstr "Returns" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/ru/LC_MESSAGES/faq.po b/docs/locales/ru/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..72ebf5ead6 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/ru/LC_MESSAGES/index.po b/docs/locales/ru/LC_MESSAGES/index.po new file mode 100644 index 0000000000..d5a7d7a340 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Welcome to Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." + +msgid "**Features:**" +msgstr "**Features:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "Modern Pythonic API using ``async``\\/``await`` syntax" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Sane rate limit handling that prevents 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Command extension to aid with bot creation" + +msgid "Easy to use with an object oriented design" +msgstr "Easy to use with an object oriented design" + +msgid "Optimised for both speed and memory" +msgstr "Optimised for both speed and memory" + +msgid "Getting started" +msgstr "Getting started" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Is this your first time using the library? This is the place to get started!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Working with Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Examples:** Many examples are available in the :resource:`repository `." + +msgid "Getting help" +msgstr "Getting help" + +msgid "If you're having trouble with something, these resources might help." +msgstr "If you're having trouble with something, these resources might help." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Try the :doc:`faq` first, it's got answers to all common questions." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Ask us and hang out with us in our :resource:`Discord ` server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Report bugs in the :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuals" + +msgid "These pages go into great detail about everything the API can do." +msgstr "These pages go into great detail about everything the API can do." + +msgid "Core API" +msgstr "Core API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "These extensions help you during development when it comes to common tasks." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot commands framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task helpers" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - A pagination extension module" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "If you're looking for something related to the project itself, it's here." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - The changelog for the library." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - The version guarantees for the library." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." + diff --git a/docs/locales/ru/LC_MESSAGES/installing.po b/docs/locales/ru/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..88aa6d6c37 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Installing Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." + +msgid "Prerequisites" +msgstr "Prerequisites" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "For Windows users, this command should be used to install the pre-release: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." + +msgid "A quick example to showcase how events work:" +msgstr "A quick example to showcase how events work:" + diff --git a/docs/locales/ru/LC_MESSAGES/intents.po b/docs/locales/ru/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..50fdcb0254 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/ru/LC_MESSAGES/logging.po b/docs/locales/ru/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..e8adaf5e6d --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/ru/LC_MESSAGES/migrating_to_v1.po b/docs/locales/ru/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..36d42347de --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/ru/LC_MESSAGES/migrating_to_v2.po b/docs/locales/ru/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..850bce1c7d --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/ru/LC_MESSAGES/old_changelog.po b/docs/locales/ru/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..af8302c786 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/ru/LC_MESSAGES/quickstart.po b/docs/locales/ru/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..7700c88a94 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Quickstart" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." + +msgid "A Minimal Bot" +msgstr "A Minimal Bot" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Let's make a bot that responds to a specific message and walk you through it." + +msgid "It looks something like this:" +msgstr "It looks something like this:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "There's a lot going on here, so let's walk you through it step by step:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." + +msgid "On Windows:" +msgstr "On Windows:" + +msgid "On other systems:" +msgstr "On other systems:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Now you can try playing around with your basic bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "A Minimal Bot with Slash Commands" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "As a continuation, let's create a bot that registers a simple slash command!" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Let's look at the differences compared to the previous example, step-by-step:" + +msgid "The first line remains unchanged." +msgstr "The first line remains unchanged." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Finally, we, once again, run the bot with our login token." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Congratulations! Now you have created your first slash command!" + diff --git a/docs/locales/ru/LC_MESSAGES/version_guarantees.po b/docs/locales/ru/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..547ea8b9d7 --- /dev/null +++ b/docs/locales/ru/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: 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));\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Version Guarantees" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." + +msgid "The examples below are non-exhaustive." +msgstr "The examples below are non-exhaustive." + +msgid "Examples of Breaking Changes" +msgstr "Examples of Breaking Changes" + +msgid "Changing the default parameter value to something else." +msgstr "Changing the default parameter value to something else." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renaming a function without an alias to an old function." + +msgid "Adding or removing parameters to an event." +msgstr "Adding or removing parameters to an event." + +msgid "Examples of Non-Breaking Changes" +msgstr "Examples of Non-Breaking Changes" + +msgid "Adding or removing private underscored attributes." +msgstr "Adding or removing private underscored attributes." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Adding an element into the ``__slots__`` of a data class." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Changing the behaviour of a function to fix a bug." + +msgid "Changes in the documentation." +msgstr "Changes in the documentation." + +msgid "Modifying the internal HTTP handling." +msgstr "Modifying the internal HTTP handling." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Upgrading the dependencies to a new version, major or otherwise." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/abcs.po b/docs/locales/zh_CN/LC_MESSAGES/api/abcs.po new file mode 100644 index 0000000000..0657b37252 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/abcs.po @@ -0,0 +1,685 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Abstract Base Classes" +msgstr "Abstract Base Classes" + +msgid "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." +msgstr "An :term:`abstract base class` (also known as an ``abc``) is a class that models can inherit to get their behaviour. **Abstract base classes should not be instantiated**. They are mainly there for usage with :func:`isinstance` and :func:`issubclass`\\." + +msgid "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." +msgstr "This library has a module related to abstract base classes, in which all the ABCs are subclasses of :class:`typing.Protocol`." + +msgid "An ABC that details the common operations on a Discord model." +msgstr "An ABC that details the common operations on a Discord model." + +msgid "Almost all :ref:`Discord models ` meet this abstract base class." +msgstr "Almost all :ref:`Discord models ` meet this abstract base class." + +msgid "If you want to create a snowflake on your own, consider using :class:`.Object`." +msgstr "If you want to create a snowflake on your own, consider using :class:`.Object`." + +msgid "The model's unique ID." +msgstr "The model's unique ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "An ABC that details the common operations on a Discord user." +msgstr "An ABC that details the common operations on a Discord user." + +msgid "The following implement this ABC:" +msgstr "The following implement this ABC:" + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid ":class:`~discord.ClientUser`" +msgstr ":class:`~discord.ClientUser`" + +msgid ":class:`~discord.Member`" +msgstr ":class:`~discord.Member`" + +msgid "This ABC must also implement :class:`~discord.abc.Snowflake`." +msgstr "This ABC must also implement :class:`~discord.abc.Snowflake`." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's discriminator." +msgstr "The user's discriminator." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "The avatar asset the user has." +msgstr "The avatar asset the user has." + +msgid ":class:`~discord.Asset`" +msgstr ":class:`~discord.Asset`" + +msgid "If the user is a bot account." +msgstr "If the user is a bot account." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Returns the user's display name." +msgstr "Returns the user's display name." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "An ABC that details the common operations on a private Discord channel." +msgstr "An ABC that details the common operations on a private Discord channel." + +msgid ":class:`~discord.DMChannel`" +msgstr ":class:`~discord.DMChannel`" + +msgid ":class:`~discord.GroupChannel`" +msgstr ":class:`~discord.GroupChannel`" + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "An ABC that details the common operations on a Discord guild channel." +msgstr "An ABC that details the common operations on a Discord guild channel." + +msgid ":class:`~discord.TextChannel`" +msgstr ":class:`~discord.TextChannel`" + +msgid ":class:`~discord.VoiceChannel`" +msgstr ":class:`~discord.VoiceChannel`" + +msgid ":class:`~discord.CategoryChannel`" +msgstr ":class:`~discord.CategoryChannel`" + +msgid ":class:`~discord.StageChannel`" +msgstr ":class:`~discord.StageChannel`" + +msgid ":class:`~discord.ForumChannel`" +msgstr ":class:`~discord.ForumChannel`" + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid ":class:`~discord.Guild`" +msgstr ":class:`~discord.Guild`" + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "Returns" +msgstr "Returns" + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Examples" +msgstr "Examples" + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "An ABC that details the common operations on a model that can send messages." +msgstr "An ABC that details the common operations on a model that can send messages." + +msgid ":class:`~discord.ext.commands.Context`" +msgstr ":class:`~discord.ext.commands.Context`" + +msgid ":class:`~discord.Thread`" +msgstr ":class:`~discord.Thread`" + +msgid ":class:`~discord.ApplicationContext`" +msgstr ":class:`~discord.ApplicationContext`" + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "An ABC that details the common operations on a channel that can connect to a voice server." +msgstr "An ABC that details the common operations on a channel that can connect to a voice server." + +msgid "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." +msgstr "This ABC is not decorated with :func:`typing.runtime_checkable`, so will fail :func:`isinstance`/:func:`issubclass` checks." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/application_commands.po b/docs/locales/zh_CN/LC_MESSAGES/api/application_commands.po new file mode 100644 index 0000000000..3deec14558 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/application_commands.po @@ -0,0 +1,877 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Command Permission Decorators" +msgstr "Command Permission Decorators" + +msgid "A decorator that limits the usage of an application command to members with certain permissions." +msgstr "A decorator that limits the usage of an application command to members with certain permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." +msgstr "These permissions can be updated by server administrators per-guild. As such, these are only \"defaults\", as the name suggests. If you want to make sure that a user **always** has the specified permissions regardless, you should use an internal check such as :func:`~.ext.commands.has_permissions`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\``" + +msgid "Example" +msgstr "Example" + +msgid "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." +msgstr "A decorator that limits the usage of an application command to guild contexts. The command won't be able to be used in private message channels." + +msgid "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." +msgstr "A decorator that limits the usage of an application command to 18+ channels and users. In guilds, the command will only be able to be used in channels marked as NSFW. In DMs, users must have opted into age-restricted commands via privacy settings." + +msgid "Note that apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Note that apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "Commands" +msgstr "Commands" + +msgid "Shortcut Decorators" +msgstr "Shortcut Decorators" + +msgid "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." +msgstr "A decorator that transforms a function into an :class:`.ApplicationCommand`. More specifically, usually one of :class:`.SlashCommand`, :class:`.UserCommand`, or :class:`.MessageCommand`. The exact class depends on the ``cls`` parameter. By default, the ``description`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding. The ``name`` attribute also defaults to the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.SlashCommand`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, or subclass of it." + +msgid "Callable[..., :class:`.ApplicationCommand`]" +msgstr "Callable[..., :class:`.ApplicationCommand`]" + +msgid "Raises" +msgstr "Raises" + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :func:`ext.commands.command`." +msgstr "This decorator is overridden by :func:`ext.commands.command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`." + +msgid "Decorator for slash commands that invokes :func:`application_command`." +msgstr "Decorator for slash commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`." + +msgid "Callable[..., :class:`.SlashCommand`]" +msgstr "Callable[..., :class:`.SlashCommand`]" + +msgid "Decorator for user commands that invokes :func:`application_command`." +msgstr "Decorator for user commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`." + +msgid "Callable[..., :class:`.UserCommand`]" +msgstr "Callable[..., :class:`.UserCommand`]" + +msgid "Decorator for message commands that invokes :func:`application_command`." +msgstr "Decorator for message commands that invokes :func:`application_command`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`." + +msgid "Callable[..., :class:`.MessageCommand`]" +msgstr "Callable[..., :class:`.MessageCommand`]" + +msgid "Objects" +msgstr "Objects" + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "This uses the current time instead of the interaction time." +msgstr "This uses the current time instead of the interaction time." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Checks whether the command has an error handler registered." +msgstr "Checks whether the command has an error handler registered." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." +msgstr "This pre-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.before_invoke` for more info." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." +msgstr "This post-invoke hook takes a sole parameter, an :class:`.ApplicationContext`. See :meth:`.Bot.after_invoke` for more info." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``/one two three`` the parent name would be ``one two``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``/one two three`` the qualified name would be ``one two three``." + +msgid "Retrieves the fully qualified command ID." +msgstr "Retrieves the fully qualified command ID." + +msgid "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." +msgstr "This is the root parent ID. For example, in ``/one two three`` the qualified ID would return ``one.id``." + +msgid "A class that implements the protocol for a slash command." +msgstr "A class that implements the protocol for a slash command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The description for the command." +msgstr "The description for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The ids of the guilds where this command will be registered." +msgstr "The ids of the guilds where this command will be registered." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "The parameters for this command." +msgstr "The parameters for this command." + +msgid "List[:class:`Option`]" +msgstr "List[:class:`Option`]" + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`SlashCommandGroup`]" +msgstr "Optional[:class:`SlashCommandGroup`]" + +msgid "Returns a string that allows you to mention the slash command." +msgstr "Returns a string that allows you to mention the slash command." + +msgid "Whether the command should only be usable inside a guild." +msgstr "Whether the command should only be usable inside a guild." + +msgid "Use the :attr:`contexts` parameter instead." +msgstr "Use the :attr:`contexts` parameter instead." + +msgid "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." +msgstr "Whether the command should be restricted to 18+ channels and users. Apps intending to be listed in the App Directory cannot have NSFW commands." + +msgid "The default permissions a member needs to be able to run the command." +msgstr "The default permissions a member needs to be able to run the command." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.ApplicationContext` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.ApplicationCommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_application_command_error` event." + +msgid "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.ApplicationContext`], :class:`bool`]]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "Optional[:class:`~discord.ext.commands.Cooldown`]" +msgstr "Optional[:class:`~discord.ext.commands.Cooldown`]" + +msgid "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this command. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this command. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." +msgstr "The type of installation this command should be available to. For instance, if set to :attr:`IntegrationType.user_install`, the command will only be available to users with the application installed on their account. Unapplicable for guild commands." + +msgid "Set[:class:`IntegrationType`]" +msgstr "Set[:class:`IntegrationType`]" + +msgid "The location where this command can be used. Cannot be set if this is a guild command." +msgstr "The location where this command can be used. Cannot be set if this is a guild command." + +msgid "Set[:class:`InteractionContextType`]" +msgstr "Set[:class:`InteractionContextType`]" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`SlashCommand`" +msgstr ":class:`SlashCommand`" + +msgid "A class that implements the protocol for a slash command group." +msgstr "A class that implements the protocol for a slash command group." + +msgid "These can be created manually, but they should be created via the decorator or functional interface." +msgstr "These can be created manually, but they should be created via the decorator or functional interface." + +msgid "The parent group that this group belongs to. ``None`` if there isn't one." +msgstr "The parent group that this group belongs to. ``None`` if there isn't one." + +msgid "The location where this command can be used. Unapplicable for guild commands." +msgstr "The location where this command can be used. Unapplicable for guild commands." + +msgid "Creates a new subgroup for this SlashCommandGroup." +msgstr "Creates a new subgroup for this SlashCommandGroup." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` as a subgroup." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "An iterator that recursively walks through all slash commands and groups in this group." +msgstr "An iterator that recursively walks through all slash commands and groups in this group." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." +msgstr ":class:`.SlashCommand` | :class:`.SlashCommandGroup` -- A nested slash command or slash command group from the group." + +msgid "Creates a copy of this command group." +msgstr "Creates a copy of this command group." + +msgid "A new instance of this command group." +msgstr "A new instance of this command group." + +msgid ":class:`SlashCommandGroup`" +msgstr ":class:`SlashCommandGroup`" + +msgid "A class that implements the protocol for user context menu commands." +msgstr "A class that implements the protocol for user context menu commands." + +msgid "Use the ``contexts`` parameter instead." +msgstr "Use the ``contexts`` parameter instead." + +msgid "The installation contexts where this command is available. Unapplicable for guild commands." +msgstr "The installation contexts where this command is available. Unapplicable for guild commands." + +msgid "The interaction contexts where this command is available. Unapplicable for guild commands." +msgstr "The interaction contexts where this command is available. Unapplicable for guild commands." + +msgid ":class:`UserCommand`" +msgstr ":class:`UserCommand`" + +msgid "A class that implements the protocol for message context menu commands." +msgstr "A class that implements the protocol for message context menu commands." + +msgid ":class:`MessageCommand`" +msgstr ":class:`MessageCommand`" + +msgid "Options" +msgstr "Options" + +msgid "A decorator that can be used instead of typehinting :class:`.Option`." +msgstr "A decorator that can be used instead of typehinting :class:`.Option`." + +msgid "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." +msgstr "The name of the target function parameter this option is mapped to. This allows you to have a separate UI ``name`` and parameter name." + +msgid "Represents a selectable option for a slash command." +msgstr "Represents a selectable option for a slash command." + +msgid "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." +msgstr "The type of input that is expected for this option. This can be a :class:`SlashCommandOptionType`, an associated class, a channel type, a :class:`Converter`, a converter class or an :class:`enum.Enum`. If a :class:`enum.Enum` is used and it has up to 25 values, :attr:`choices` will be automatically filled. If the :class:`enum.Enum` has more than 25 values, :attr:`autocomplete` will be implemented with :func:`discord.utils.basic_autocomplete` instead." + +msgid "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" +msgstr "Union[Type[:class:`str`], Type[:class:`bool`], Type[:class:`int`], Type[:class:`float`], Type[:class:`.abc.GuildChannel`], Type[:class:`Thread`], Type[:class:`Member`], Type[:class:`User`], Type[:class:`Attachment`], Type[:class:`Role`], Type[:class:`.abc.Mentionable`], :class:`SlashCommandOptionType`, Type[:class:`.ext.commands.Converter`], Type[:class:`enums.Enum`], Type[:class:`Enum`]]" + +msgid "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." +msgstr "The name of this option visible in the UI. Inherits from the variable name if not provided as a parameter." + +msgid "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." +msgstr "The description of this option. Must be 100 characters or fewer. If :attr:`input_type` is a :class:`enum.Enum` and :attr:`description` is not specified, :attr:`input_type`'s docstring will be used." + +msgid "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." +msgstr "The list of available choices for this option. Can be a list of values or :class:`OptionChoice` objects (which represent a name:value pair). If provided, the input from the user must match one of the choices in the list." + +msgid "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" +msgstr "Optional[List[Union[:class:`Any`, :class:`OptionChoice`]]]" + +msgid "Whether this option is required." +msgstr "Whether this option is required." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "The default value for this option. If provided, ``required`` will be considered ``False``." +msgstr "The default value for this option. If provided, ``required`` will be considered ``False``." + +msgid "Optional[:class:`Any`]" +msgstr "Optional[:class:`Any`]" + +msgid "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The minimum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." +msgstr "The maximum value that can be entered. Only applies to Options with an :attr:`.input_type` of :class:`int` or :class:`float`." + +msgid "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The minimum length of the string that can be entered. Must be between 0 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." +msgstr "The maximum length of the string that can be entered. Must be between 1 and 6000 (inclusive). Only applies to Options with an :attr:`input_type` of :class:`str`." + +msgid "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." +msgstr "The autocomplete handler for the option. Accepts a callable (sync or async) that takes a single argument of :class:`AutocompleteContext`. The callable must return an iterable of :class:`str` or :class:`OptionChoice`. Alternatively, :func:`discord.utils.basic_autocomplete` may be used in place of the callable." + +msgid "Does not validate the input value against the autocomplete results." +msgstr "Does not validate the input value against the autocomplete results." + +msgid "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" +msgstr "Optional[Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]]" + +msgid "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." +msgstr "A list of channel types that can be selected in this option. Only applies to Options with an :attr:`input_type` of :class:`discord.SlashCommandOptionType.channel`. If this argument is used, :attr:`input_type` will be ignored." + +msgid "list[:class:`discord.ChannelType`] | None" +msgstr "list[:class:`discord.ChannelType`] | None" + +msgid "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this option. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this option. The values of this should be ``\"locale\": \"description\"``. See `here `_ for a list of valid locales." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage: ::" +msgstr "Basic usage: ::" + +msgid "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." +msgstr "Represents a class that can be passed as the ``input_type`` for an :class:`Option` class." + +msgid "The thread type to expect for this options input." +msgstr "The thread type to expect for this options input." + +msgid "Represents a name:value pairing for a selected :class:`.Option`." +msgstr "Represents a name:value pairing for a selected :class:`.Option`." + +msgid "The name of the choice. Shown in the UI when selecting an option." +msgstr "The name of the choice. Shown in the UI when selecting an option." + +msgid "The value of the choice. If not provided, will use the value of ``name``." +msgstr "The value of the choice. If not provided, will use the value of ``name``." + +msgid "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`, :class:`float`]]" + +msgid "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this choice. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "Context Objects" +msgstr "Context Objects" + +msgid "Represents a Discord application command interaction context." +msgstr "Represents a Discord application command interaction context." + +msgid "This class is not created manually and is instead passed to application commands as the first parameter." +msgstr "This class is not created manually and is instead passed to application commands as the first parameter." + +msgid "The bot that the command belongs to." +msgstr "The bot that the command belongs to." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The interaction object that invoked the command." +msgstr "The interaction object that invoked the command." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "The command that this context belongs to." +msgstr "The command that this context belongs to." + +msgid ":class:`.ApplicationCommand`" +msgstr ":class:`.ApplicationCommand`" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." +msgstr "Calls a command with the arguments given. This is useful if you want to just call the callback that a :class:`.ApplicationCommand` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function. You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." +msgstr "Union[:class:`abc.GuildChannel`, :class:`PartialMessageable`, :class:`Thread`]: Returns the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel`." + +msgid "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." +msgstr "Returns the ID of the channel associated with this context's command. Shorthand for :attr:`.Interaction.channel_id`." + +msgid "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." +msgstr "Returns the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild`." + +msgid "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." +msgstr "Returns the ID of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_id`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.locale`." + +msgid "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." +msgstr "Returns the locale of the guild associated with this context's command. Shorthand for :attr:`.Interaction.guild_locale`." + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." +msgstr "Returns the message sent with this context's command. Shorthand for :attr:`.Interaction.message`, if applicable." + +msgid "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." +msgstr "Returns the user that sent this context's command. Shorthand for :attr:`.Interaction.user`." + +msgid "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." +msgstr "Returns the voice client associated with this context's command. Shorthand for :attr:`Interaction.guild.voice_client<~discord.Guild.voice_client>`, if applicable." + +msgid "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." +msgstr "Returns the response object associated with this context's command. Shorthand for :attr:`.Interaction.response`." + +msgid "The options and values that were selected by the user when sending the command." +msgstr "The options and values that were selected by the user when sending the command." + +msgid "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." +msgstr "A dictionary containing the options and values that were selected by the user when the command was processed, if applicable. Returns ``None`` if the command has not yet been invoked, or if there are no options defined for that command." + +msgid "Optional[List[Dict[:class:`str`, Any]]]" +msgstr "Optional[List[Dict[:class:`str`, Any]]]" + +msgid "The options that were not provided by the user when sending the command." +msgstr "The options that were not provided by the user when sending the command." + +msgid "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." +msgstr "A list of Option objects (if any) that were not selected by the user when the command was processed. Returns ``None`` if there are no options defined for that command." + +msgid "Optional[List[:class:`.Option`]]" +msgstr "Optional[List[:class:`.Option`]]" + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a higher level interface to :meth:`Interaction.delete_original_response`." +msgstr "This is a higher level interface to :meth:`Interaction.delete_original_response`." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "Returns the cog associated with this context's command. ``None`` if it does not exist." +msgstr "Returns the cog associated with this context's command. ``None`` if it does not exist." + +msgid "Represents context for a slash command's option autocomplete." +msgstr "Represents context for a slash command's option autocomplete." + +msgid "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." +msgstr "This class is not created manually and is instead passed to an :class:`.Option`'s autocomplete callback." + +msgid "The interaction object that invoked the autocomplete." +msgstr "The interaction object that invoked the autocomplete." + +msgid "The option the user is currently typing." +msgstr "The option the user is currently typing." + +msgid ":class:`.Option`" +msgstr ":class:`.Option`" + +msgid "The content of the focused option." +msgstr "The content of the focused option." + +msgid ":class:`.str`" +msgstr ":class:`.str`" + +msgid "A name to value mapping of the options that the user has selected before this option." +msgstr "A name to value mapping of the options that the user has selected before this option." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/application_info.po b/docs/locales/zh_CN/LC_MESSAGES/api/application_info.po new file mode 100644 index 0000000000..86c5570471 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/application_info.po @@ -0,0 +1,181 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Application Info" +msgstr "Application Info" + +msgid "Represents the application info for the bot provided by Discord." +msgstr "Represents the application info for the bot provided by Discord." + +msgid "The application ID." +msgstr "The application ID." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The application name." +msgstr "The application name." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The application owner." +msgstr "The application owner." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "The application's team." +msgstr "The application's team." + +msgid "Optional[:class:`Team`]" +msgstr "Optional[:class:`Team`]" + +msgid "The application description." +msgstr "The application description." + +msgid "Whether the bot can be invited by anyone or if it is locked to the application owner." +msgstr "Whether the bot can be invited by anyone or if it is locked to the application owner." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Whether the bot requires the completion of the full OAuth2 code grant flow to join." +msgstr "Whether the bot requires the completion of the full OAuth2 code grant flow to join." + +msgid "A list of RPC origin URLs, if RPC is enabled." +msgstr "A list of RPC origin URLs, if RPC is enabled." + +msgid "Optional[List[:class:`str`]]" +msgstr "Optional[List[:class:`str`]]" + +msgid "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." +msgstr "If this application is a game sold on Discord, this field will be the summary field for the store page of its primary SKU." + +msgid "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." +msgstr "The hex encoded key for verification in interactions and the GameSDK's `GetTicket `_." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked to." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." +msgstr "If this application is a game sold on Discord, this field will be the id of the \"Game SKU\" that is created, if it exists." + +msgid "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." +msgstr "If this application is a game sold on Discord, this field will be the URL slug that links to the store page." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The application's terms of service URL, if set." +msgstr "The application's terms of service URL, if set." + +msgid "The application's privacy policy URL, if set." +msgstr "The application's privacy policy URL, if set." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Retrieves the application's icon asset, if any." +msgstr "Retrieves the application's icon asset, if any." + +msgid "Retrieves the cover image on a store embed, if any." +msgstr "Retrieves the cover image on a store embed, if any." + +msgid "This is only available if the application is a game sold on Discord." +msgstr "This is only available if the application is a game sold on Discord." + +msgid "If this application is a game sold on Discord, this field will be the guild to which it has been linked." +msgstr "If this application is a game sold on Discord, this field will be the guild to which it has been linked." + +msgid "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" +msgstr "Represents a partial AppInfo given by :func:`~discord.abc.GuildChannel.create_invite`" + +msgid "Represents an application team for a bot provided by Discord." +msgstr "Represents an application team for a bot provided by Discord." + +msgid "The team ID." +msgstr "The team ID." + +msgid "The team name." +msgstr "The team name." + +msgid "The team's owner ID." +msgstr "The team's owner ID." + +msgid "A list of the members in the team." +msgstr "A list of the members in the team." + +msgid "List[:class:`TeamMember`]" +msgstr "List[:class:`TeamMember`]" + +msgid "Retrieves the team's icon asset, if any." +msgstr "Retrieves the team's icon asset, if any." + +msgid "The team's owner." +msgstr "The team's owner." + +msgid "Represents a team member in a team." +msgstr "Represents a team member in a team." + +msgid "Checks if two team members are equal." +msgstr "Checks if two team members are equal." + +msgid "Checks if two team members are not equal." +msgstr "Checks if two team members are not equal." + +msgid "Return the team member's hash." +msgstr "Return the team member's hash." + +msgid "Returns the team member's name with discriminator or global_name." +msgstr "Returns the team member's name with discriminator or global_name." + +msgid "The team member's username." +msgstr "The team member's username." + +msgid "The team member's unique ID." +msgstr "The team member's unique ID." + +msgid "The team member's discriminator. This is given when the username has conflicts." +msgstr "The team member's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "The team member's global name." +msgstr "The team member's global name." + +msgid "The avatar hash the team member has. Could be ``None``." +msgstr "The avatar hash the team member has. Could be ``None``." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "The team that the member is from." +msgstr "The team that the member is from." + +msgid ":class:`Team`" +msgstr ":class:`Team`" + +msgid "The membership state of the member (e.g. invited or accepted)" +msgstr "The membership state of the member (e.g. invited or accepted)" + +msgid ":class:`TeamMembershipState`" +msgstr ":class:`TeamMembershipState`" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/async_iter.po b/docs/locales/zh_CN/LC_MESSAGES/api/async_iter.po new file mode 100644 index 0000000000..c7934bda21 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/async_iter.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Async Iterator" +msgstr "Async Iterator" + +msgid "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." +msgstr "Some API functions return an \"async iterator\". An async iterator is something that is capable of being used in an :ref:`async for statement `." + +msgid "These async iterators can be used as follows: ::" +msgstr "These async iterators can be used as follows: ::" + +msgid "Certain utilities make working with async iterators easier, detailed below." +msgstr "Certain utilities make working with async iterators easier, detailed below." + +msgid "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." +msgstr "Represents the \"AsyncIterator\" concept. Note that no such class exists, it is purely abstract." + +msgid "Iterates over the contents of the async iterator." +msgstr "Iterates over the contents of the async iterator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." +msgstr "Advances the iterator by one, if possible. If no more items are found then this raises :exc:`NoMoreItems`." + +msgid "Similar to :func:`utils.get` except run over the async iterator." +msgstr "Similar to :func:`utils.get` except run over the async iterator." + +msgid "Getting the last message by a user named 'Dave' or ``None``: ::" +msgstr "Getting the last message by a user named 'Dave' or ``None``: ::" + +msgid "Similar to :func:`utils.find` except run over the async iterator." +msgstr "Similar to :func:`utils.find` except run over the async iterator." + +msgid "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." +msgstr "Unlike :func:`utils.find`\\, the predicate provided can be a |coroutine_link|_." + +msgid "Getting the last audit log with a reason or ``None``: ::" +msgstr "Getting the last audit log with a reason or ``None``: ::" + +msgid "Parameters" +msgstr "Parameters" + +msgid "The predicate to use. Could be a |coroutine_link|_." +msgstr "The predicate to use. Could be a |coroutine_link|_." + +msgid "Returns" +msgstr "Returns" + +msgid "The first element that returns ``True`` for the predicate or ``None``." +msgstr "The first element that returns ``True`` for the predicate or ``None``." + +msgid "Flattens the async iterator into a :class:`list` with all the elements." +msgstr "Flattens the async iterator into a :class:`list` with all the elements." + +msgid "A list of every element in the async iterator." +msgstr "A list of every element in the async iterator." + +msgid "Return type" +msgstr "Return type" + +msgid "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." +msgstr "Collects items into chunks of up to a given maximum size. Another :class:`AsyncIterator` is returned which collects items into :class:`list`\\s of a given size. The maximum chunk size must be a positive integer." + +msgid "Collecting groups of users: ::" +msgstr "Collecting groups of users: ::" + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The size of individual chunks." +msgstr "The size of individual chunks." + +msgid ":class:`AsyncIterator`" +msgstr ":class:`AsyncIterator`" + +msgid "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`map ` function. Another :class:`AsyncIterator` is returned that executes the function on every element it is iterating over. This function can either be a regular function or a |coroutine_link|_." + +msgid "Creating a content iterator: ::" +msgstr "Creating a content iterator: ::" + +msgid "The function to call on every element. Could be a |coroutine_link|_." +msgstr "The function to call on every element. Could be a |coroutine_link|_." + +msgid "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." +msgstr "This is similar to the built-in :func:`filter ` function. Another :class:`AsyncIterator` is returned that filters over the original async iterator. This predicate can be a regular function or a |coroutine_link|_." + +msgid "Getting messages by non-bot accounts: ::" +msgstr "Getting messages by non-bot accounts: ::" + +msgid "The predicate to call on every element. Could be a |coroutine_link|_." +msgstr "The predicate to call on every element. Could be a |coroutine_link|_." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/audit_logs.po b/docs/locales/zh_CN/LC_MESSAGES/api/audit_logs.po new file mode 100644 index 0000000000..0f409b5f5a --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/audit_logs.po @@ -0,0 +1,502 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Audit Log Data" +msgstr "Audit Log Data" + +msgid "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." +msgstr "Working with :meth:`Guild.audit_logs` is a complicated process with a lot of machinery involved. The library attempts to make it easy to use and friendly. In order to accomplish this goal, it must make use of a couple of data classes that aid in this goal." + +msgid "Represents an Audit Log entry." +msgstr "Represents an Audit Log entry." + +msgid "You retrieve these via :meth:`Guild.audit_logs`." +msgstr "You retrieve these via :meth:`Guild.audit_logs`." + +msgid "Checks if two entries are equal." +msgstr "Checks if two entries are equal." + +msgid "Checks if two entries are not equal." +msgstr "Checks if two entries are not equal." + +msgid "Returns the entry's hash." +msgstr "Returns the entry's hash." + +msgid "Audit log entries are now comparable and hashable." +msgstr "Audit log entries are now comparable and hashable." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid "type" +msgstr "type" + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." +msgstr "The user who initiated this action. Usually a :class:`Member`\\, unless gone then it's a :class:`User`." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The target that got changed. The exact type of this depends on the action being done." +msgstr "The target that got changed. The exact type of this depends on the action being done." + +msgid "Any" +msgstr "Any" + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the entry's creation time in UTC." +msgstr "Returns the entry's creation time in UTC." + +msgid "The category of the action, if applicable." +msgstr "The category of the action, if applicable." + +msgid "The list of changes this entry has." +msgstr "The list of changes this entry has." + +msgid "The target's prior state." +msgstr "The target's prior state." + +msgid "The target's subsequent state." +msgstr "The target's subsequent state." + +msgid "An audit log change set." +msgstr "An audit log change set." + +msgid "The old value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The old value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" +msgstr "Depending on the :class:`AuditLogActionCategory` retrieved by :attr:`~AuditLogEntry.category`\\, the data retrieved by this attribute differs:" + +msgid "Category" +msgstr "Category" + +msgid "Description" +msgstr "Description" + +msgid ":attr:`~AuditLogActionCategory.create`" +msgstr ":attr:`~AuditLogActionCategory.create`" + +msgid "All attributes are set to ``None``." +msgstr "All attributes are set to ``None``." + +msgid ":attr:`~AuditLogActionCategory.delete`" +msgstr ":attr:`~AuditLogActionCategory.delete`" + +msgid "All attributes are set the value before deletion." +msgstr "All attributes are set the value before deletion." + +msgid ":attr:`~AuditLogActionCategory.update`" +msgstr ":attr:`~AuditLogActionCategory.update`" + +msgid "All attributes are set the value before updating." +msgstr "All attributes are set the value before updating." + +msgid "``None``" +msgstr "``None``" + +msgid "No attributes are set." +msgstr "No attributes are set." + +msgid "The new value. The attribute has the type of :class:`AuditLogDiff`." +msgstr "The new value. The attribute has the type of :class:`AuditLogDiff`." + +msgid "All attributes are set to the created value" +msgstr "All attributes are set to the created value" + +msgid "All attributes are set to ``None``" +msgstr "All attributes are set to ``None``" + +msgid "All attributes are set the value after updating." +msgstr "All attributes are set the value after updating." + +msgid "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." +msgstr "Represents an audit log \"change\" object. A change object has dynamic attributes that depend on the type of action being done. Certain actions map to certain attributes being set." + +msgid "Note that accessing an attribute that does not match the specified action will lead to an attribute error." +msgstr "Note that accessing an attribute that does not match the specified action will lead to an attribute error." + +msgid "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." +msgstr "To get a list of attributes that have been set, you can iterate over them. To see a list of all possible attributes that could be set based on the action being done, check the documentation for :class:`AuditLogAction`, otherwise check the documentation below for all attributes that are possible." + +msgid "Returns an iterator over (attribute, value) tuple of this diff." +msgstr "Returns an iterator over (attribute, value) tuple of this diff." + +msgid "A name of something." +msgstr "A name of something." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A guild's icon. See also :attr:`Guild.icon`." +msgstr "A guild's icon. See also :attr:`Guild.icon`." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "The guild's invite splash. See also :attr:`Guild.splash`." +msgstr "The guild's invite splash. See also :attr:`Guild.splash`." + +msgid "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." +msgstr "The guild's discovery splash. See also :attr:`Guild.discovery_splash`." + +msgid "The guild's banner. See also :attr:`Guild.banner`." +msgstr "The guild's banner. See also :attr:`Guild.banner`." + +msgid "The guild's owner. See also :attr:`Guild.owner`" +msgstr "The guild's owner. See also :attr:`Guild.owner`" + +msgid "Union[:class:`Member`, :class:`User`]" +msgstr "Union[:class:`Member`, :class:`User`]" + +msgid "The guild's AFK channel." +msgstr "The guild's AFK channel." + +msgid "If this could not be found, then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found, then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.afk_channel`." +msgstr "See :attr:`Guild.afk_channel`." + +msgid "Union[:class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`VoiceChannel`, :class:`Object`]" + +msgid "The guild's system channel." +msgstr "The guild's system channel." + +msgid "See :attr:`Guild.system_channel`." +msgstr "See :attr:`Guild.system_channel`." + +msgid "Union[:class:`TextChannel`, :class:`Object`]" +msgstr "Union[:class:`TextChannel`, :class:`Object`]" + +msgid "The guild's rules channel." +msgstr "The guild's rules channel." + +msgid "If this could not be found then it falls back to a :class:`Object` with the ID being set." +msgstr "If this could not be found then it falls back to a :class:`Object` with the ID being set." + +msgid "See :attr:`Guild.rules_channel`." +msgstr "See :attr:`Guild.rules_channel`." + +msgid "The guild's public updates channel." +msgstr "The guild's public updates channel." + +msgid "See :attr:`Guild.public_updates_channel`." +msgstr "See :attr:`Guild.public_updates_channel`." + +msgid "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." +msgstr "The guild's AFK timeout. See :attr:`Guild.afk_timeout`." + +msgid "The guild's MFA level. See :attr:`Guild.mfa_level`." +msgstr "The guild's MFA level. See :attr:`Guild.mfa_level`." + +msgid "The guild's widget has been enabled or disabled." +msgstr "The guild's widget has been enabled or disabled." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The widget's channel." +msgstr "The widget's channel." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid "See also :attr:`Guild.verification_level`." +msgstr "See also :attr:`Guild.verification_level`." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's default notification level." +msgstr "The guild's default notification level." + +msgid "See also :attr:`Guild.default_notifications`." +msgstr "See also :attr:`Guild.default_notifications`." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "The guild's content filter." +msgstr "The guild's content filter." + +msgid "See also :attr:`Guild.explicit_content_filter`." +msgstr "See also :attr:`Guild.explicit_content_filter`." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's default message notification setting." +msgstr "The guild's default message notification setting." + +msgid "The guild's vanity URL." +msgstr "The guild's vanity URL." + +msgid "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." +msgstr "See also :meth:`Guild.vanity_invite` and :meth:`Guild.edit`." + +msgid "The position of a :class:`Role` or :class:`abc.GuildChannel`." +msgstr "The position of a :class:`Role` or :class:`abc.GuildChannel`." + +msgid "The type of channel or sticker." +msgstr "The type of channel or sticker." + +msgid "Union[:class:`ChannelType`, :class:`StickerType`]" +msgstr "Union[:class:`ChannelType`, :class:`StickerType`]" + +msgid "The topic of a :class:`TextChannel` or :class:`StageChannel`." +msgstr "The topic of a :class:`TextChannel` or :class:`StageChannel`." + +msgid "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." +msgstr "See also :attr:`TextChannel.topic` or :attr:`StageChannel.topic`." + +msgid "The bitrate of a :class:`VoiceChannel`." +msgstr "The bitrate of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.bitrate`." +msgstr "See also :attr:`VoiceChannel.bitrate`." + +msgid "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." +msgstr "A list of permission overwrite tuples that represents a target and a :class:`PermissionOverwrite` for said target." + +msgid "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." +msgstr "The first element is the object being targeted, which can either be a :class:`Member` or :class:`User` or :class:`Role`. If this object is not found then it is a :class:`Object` with an ID being filled and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help decide what type of ID it is." + +msgid "List[Tuple[target, :class:`PermissionOverwrite`]]" +msgstr "List[Tuple[target, :class:`PermissionOverwrite`]]" + +msgid "The privacy level of the stage instance or scheduled event." +msgstr "The privacy level of the stage instance or scheduled event." + +msgid "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" +msgstr "Union[:class:`StagePrivacyLevel`, :class:`ScheduledEventPrivacyLevel`]" + +msgid "A list of roles being added or removed from a member." +msgstr "A list of roles being added or removed from a member." + +msgid "If a role is not found then it is a :class:`Object` with the ID and name being filled in." +msgstr "If a role is not found then it is a :class:`Object` with the ID and name being filled in." + +msgid "List[Union[:class:`Role`, :class:`Object`]]" +msgstr "List[Union[:class:`Role`, :class:`Object`]]" + +msgid "The nickname of a member." +msgstr "The nickname of a member." + +msgid "See also :attr:`Member.nick`" +msgstr "See also :attr:`Member.nick`" + +msgid "Whether the member is being server deafened." +msgstr "Whether the member is being server deafened." + +msgid "See also :attr:`VoiceState.deaf`." +msgstr "See also :attr:`VoiceState.deaf`." + +msgid "Whether the member is being server muted." +msgstr "Whether the member is being server muted." + +msgid "See also :attr:`VoiceState.mute`." +msgstr "See also :attr:`VoiceState.mute`." + +msgid "The permissions of a role." +msgstr "The permissions of a role." + +msgid "See also :attr:`Role.permissions`." +msgstr "See also :attr:`Role.permissions`." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "The colour of a role." +msgstr "The colour of a role." + +msgid "See also :attr:`Role.colour`" +msgstr "See also :attr:`Role.colour`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid "Whether the role is being hoisted or not." +msgstr "Whether the role is being hoisted or not." + +msgid "See also :attr:`Role.hoist`" +msgstr "See also :attr:`Role.hoist`" + +msgid "Whether the role is mentionable or not." +msgstr "Whether the role is mentionable or not." + +msgid "See also :attr:`Role.mentionable`" +msgstr "See also :attr:`Role.mentionable`" + +msgid "The invite's code." +msgstr "The invite's code." + +msgid "See also :attr:`Invite.code`" +msgstr "See also :attr:`Invite.code`" + +msgid "A guild channel." +msgstr "A guild channel." + +msgid "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." +msgstr "If the channel is not found then it is a :class:`Object` with the ID being set. In some cases the channel name is also set." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`]" + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "See also :attr:`Invite.inviter`." +msgstr "See also :attr:`Invite.inviter`." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The invite's max uses." +msgstr "The invite's max uses." + +msgid "See also :attr:`Invite.max_uses`." +msgstr "See also :attr:`Invite.max_uses`." + +msgid "The invite's current uses." +msgstr "The invite's current uses." + +msgid "See also :attr:`Invite.uses`." +msgstr "See also :attr:`Invite.uses`." + +msgid "The invite's max age in seconds." +msgstr "The invite's max age in seconds." + +msgid "See also :attr:`Invite.max_age`." +msgstr "See also :attr:`Invite.max_age`." + +msgid "If the invite is a temporary invite." +msgstr "If the invite is a temporary invite." + +msgid "See also :attr:`Invite.temporary`." +msgstr "See also :attr:`Invite.temporary`." + +msgid "The permissions being allowed or denied." +msgstr "The permissions being allowed or denied." + +msgid "The ID of the object being changed." +msgstr "The ID of the object being changed." + +msgid "The avatar of a member." +msgstr "The avatar of a member." + +msgid "See also :attr:`User.avatar`." +msgstr "See also :attr:`User.avatar`." + +msgid "The number of seconds members have to wait before sending another message in the channel." +msgstr "The number of seconds members have to wait before sending another message in the channel." + +msgid "See also :attr:`TextChannel.slowmode_delay`." +msgstr "See also :attr:`TextChannel.slowmode_delay`." + +msgid "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel’s voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "See also :attr:`VoiceChannel.rtc_region`." +msgstr "See also :attr:`VoiceChannel.rtc_region`." + +msgid ":class:`VoiceRegion`" +msgstr ":class:`VoiceRegion`" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid "See also :attr:`VoiceChannel.video_quality_mode`." +msgstr "See also :attr:`VoiceChannel.video_quality_mode`." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "The format type of a sticker being changed." +msgstr "The format type of a sticker being changed." + +msgid "See also :attr:`GuildSticker.format`" +msgstr "See also :attr:`GuildSticker.format`" + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The name of the emoji that represents a sticker being changed." +msgstr "The name of the emoji that represents a sticker being changed." + +msgid "See also :attr:`GuildSticker.emoji`" +msgstr "See also :attr:`GuildSticker.emoji`" + +msgid "The description of a sticker being changed." +msgstr "The description of a sticker being changed." + +msgid "See also :attr:`GuildSticker.description`" +msgstr "See also :attr:`GuildSticker.description`" + +msgid "The availability of a sticker being changed." +msgstr "The availability of a sticker being changed." + +msgid "See also :attr:`GuildSticker.available`" +msgstr "See also :attr:`GuildSticker.available`" + +msgid "The thread is now archived." +msgstr "The thread is now archived." + +msgid "The thread is being locked or unlocked." +msgstr "The thread is being locked or unlocked." + +msgid "The thread's auto archive duration being changed." +msgstr "The thread's auto archive duration being changed." + +msgid "See also :attr:`Thread.auto_archive_duration`" +msgstr "See also :attr:`Thread.auto_archive_duration`" + +msgid "The default auto archive duration for newly created threads being changed." +msgstr "The default auto archive duration for newly created threads being changed." + +msgid "Non-moderators can now add other non-moderators to this thread." +msgstr "Non-moderators can now add other non-moderators to this thread." + +msgid "This command's permissions were updated." +msgstr "This command's permissions were updated." + +msgid "The voice channel status of a :class:`VoiceChannel`." +msgstr "The voice channel status of a :class:`VoiceChannel`." + +msgid "See also :attr:`VoiceChannel.status`." +msgstr "See also :attr:`VoiceChannel.status`." + +msgid "The cover image of a :class:`ScheduledEvent`." +msgstr "The cover image of a :class:`ScheduledEvent`." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/clients.po b/docs/locales/zh_CN/LC_MESSAGES/api/clients.po new file mode 100644 index 0000000000..c3ea149c61 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/clients.po @@ -0,0 +1,1567 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Client Objects" +msgstr "Client Objects" + +msgid "Bots" +msgstr "Bots" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Client` and as a result anything that you can do with a :class:`discord.Client` you can do with this bot." + +msgid "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." +msgstr "This class also subclasses ``ApplicationCommandMixin`` to provide the functionality to manage commands." + +msgid "The content prefixed into the default help message." +msgstr "The content prefixed into the default help message." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." +msgstr "The user ID that owns the bot. If this is not set and is then queried via :meth:`.is_owner` then it is fetched automatically using :meth:`~.Bot.application_info`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." +msgstr "The user IDs that owns the bot. This is similar to :attr:`owner_id`. If this is not set and the application is team based, then it is fetched automatically using :meth:`~.Bot.application_info`. For performance reasons it is recommended to use a :class:`set` for the collection. You cannot set both ``owner_id`` and ``owner_ids``." + +msgid "Optional[Collection[:class:`int`]]" +msgstr "Optional[Collection[:class:`int`]]" + +msgid "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." +msgstr "Guild IDs of guilds to use for testing commands. The bot will not create any global commands if debug guild IDs are passed." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." +msgstr "Whether to automatically sync slash commands. This will call :meth:`~.Bot.sync_commands` in :func:`discord.on_connect`, and in :attr:`.process_application_commands` if the command is not found. Defaults to ``True``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." +msgstr "The default context types that the bot will use for commands. Defaults to a set containing :attr:`InteractionContextType.guild`, :attr:`InteractionContextType.bot_dm`, and :attr:`InteractionContextType.private_channel`." + +msgid "Collection[:class:`InteractionContextType`]" +msgstr "Collection[:class:`InteractionContextType`]" + +msgid "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." +msgstr "The default integration types that the bot will use for commands. Defaults to a set containing :attr:`IntegrationType.guild_install`." + +msgid "Collection[:class:`IntegrationType`]]" +msgstr "Collection[:class:`IntegrationType`]]" + +msgid "An alias for :meth:`application_command`." +msgstr "An alias for :meth:`application_command`." + +msgid "This decorator is overridden by :class:`discord.ext.commands.Bot`." +msgstr "This decorator is overridden by :class:`discord.ext.commands.Bot`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "Example" +msgstr "Example" + +msgid "Parameters" +msgstr "Parameters" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Shortcut for :meth:`.get_application_command`." +msgstr "Shortcut for :meth:`.get_application_command`." + +msgid "Overridden in :class:`ext.commands.Bot`." +msgstr "Overridden in :class:`ext.commands.Bot`." + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedClient` instead." + +msgid "Clients" +msgstr "Clients" + +msgid "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." +msgstr "Represents a client connection that connects to Discord. This class is used to interact with the Discord WebSocket and API." + +msgid "A number of options can be passed to the :class:`Client`." +msgstr "A number of options can be passed to the :class:`Client`." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache. .. versionchanged:: 1.3 Allow disabling the message cache and change the default size to ``1000``." + +msgid "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." +msgstr "The maximum number of messages to store in the internal message cache. This defaults to ``1000``. Passing in ``None`` disables the message cache." + +msgid "Allow disabling the message cache and change the default size to ``1000``." +msgstr "Allow disabling the message cache and change the default size to ``1000``." + +msgid "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." +msgstr "The :class:`asyncio.AbstractEventLoop` to use for asynchronous operations. Defaults to ``None``, in which case the default event loop is used via :func:`asyncio.get_event_loop()`." + +msgid "The connector to use for connection pooling." +msgstr "The connector to use for connection pooling." + +msgid "Proxy URL." +msgstr "Proxy URL." + +msgid "An object that represents proxy HTTP Basic Authorization." +msgstr "An object that represents proxy HTTP Basic Authorization." + +msgid "Integer starting at ``0`` and less than :attr:`.shard_count`." +msgstr "Integer starting at ``0`` and less than :attr:`.shard_count`." + +msgid "The total number of shards." +msgstr "The total number of shards." + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class. .. versionadded:: 1.5" + +msgid "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." +msgstr "The intents that you want to enable for the session. This is a way of disabling and enabling certain gateway events from triggering and being sent. If not given, defaults to a regularly constructed :class:`Intents` class." + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents. .. versionadded:: 1.5" + +msgid "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." +msgstr "Allows for finer control over how the library caches members. If not given, defaults to cache as much as possible with the currently selected intents." + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``. .. versionadded:: 1.5" + +msgid "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." +msgstr "Indicates if :func:`.on_ready` should be delayed to chunk all guilds at start-up if necessary. This operation is incredibly slow for large amounts of guilds. The default is ``True`` if :attr:`Intents.members` is ``True``." + +msgid "A status to start your presence with upon logging on to Discord." +msgstr "A status to start your presence with upon logging on to Discord." + +msgid "An activity to start your presence with upon logging on to Discord." +msgstr "An activity to start your presence with upon logging on to Discord." + +msgid "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" +msgstr "Control how the client handles mentions by default on every message sent. .. versionadded:: 1.4" + +msgid "Control how the client handles mentions by default on every message sent." +msgstr "Control how the client handles mentions by default on every message sent." + +msgid "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." +msgstr "The maximum numbers of seconds before timing out and restarting the WebSocket in the case of not receiving a HEARTBEAT_ACK. Useful if processing the initial packets take too long to the point of disconnecting you. The default timeout is 60 seconds." + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds. .. versionadded:: 1.4" + +msgid "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." +msgstr "The maximum number of seconds to wait for the GUILD_CREATE stream to end before preparing the member cache and firing READY. The default timeout is 2 seconds." + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server. .. versionadded:: 1.3" + +msgid "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." +msgstr "Whether to assume the system clock is unsynced. This applies to the ratelimit handling code. If this is set to ``True``, the default, then the library uses the time to reset a rate limit bucket given by Discord. If this is ``False`` then your system clock is used to calculate how long to sleep for. If this is set to ``False`` it is recommended to sync your system clock to Google's NTP server." + +msgid "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "Whether to enable events that are useful only for debugging gateway related information. Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "Whether to enable events that are useful only for debugging gateway related information." +msgstr "Whether to enable events that are useful only for debugging gateway related information." + +msgid "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." +msgstr "Right now this involves :func:`on_socket_raw_receive` and :func:`on_socket_raw_send`. If this is ``False`` then those events will not be dispatched (due to performance considerations). To enable these events, this must be set to ``True``. Defaults to ``False``." + +msgid "The WebSocket gateway the client is currently connected to. Could be ``None``." +msgstr "The WebSocket gateway the client is currently connected to. Could be ``None``." + +msgid "The event loop that the client uses for asynchronous operations." +msgstr "The event loop that the client uses for asynchronous operations." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." +msgstr "A client similar to :class:`Client` except it handles the complications of sharding for the user into a more manageable and transparent single process bot." + +msgid "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." +msgstr "When using this client, you will be able to use it as-if it was a regular :class:`Client` with a single shard when implementation wise internally it is split up into multiple shards. This allows you to not have to deal with IPC or other complicated infrastructure." + +msgid "It is recommended to use this client only if you have surpassed at least 1000 guilds." +msgstr "It is recommended to use this client only if you have surpassed at least 1000 guilds." + +msgid "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." +msgstr "If no :attr:`.shard_count` is provided, then the library will use the Bot Gateway endpoint call to figure out how many shards to use." + +msgid "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." +msgstr "If a ``shard_ids`` parameter is given, then those shard IDs will be used to launch the internal shards. Note that :attr:`.shard_count` must be provided if this is used. By default, when omitted, the client will launch shards from 0 to ``shard_count - 1``." + +msgid "An optional list of shard_ids to launch the shards with." +msgstr "An optional list of shard_ids to launch the shards with." + +msgid "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." +msgstr "This operates similarly to :meth:`Client.latency` except it uses the average latency of every shard's latency. To get a list of shard latency, check the :attr:`latencies` property. Returns ``nan`` if there are no shards ready." + +msgid "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "A list of latencies between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This returns a list of tuples with elements ``(shard_id, latency)``." +msgstr "This returns a list of tuples with elements ``(shard_id, latency)``." + +msgid "Gets the shard information at a given shard ID or ``None`` if not found." +msgstr "Gets the shard information at a given shard ID or ``None`` if not found." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.shard.ShardInfo\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Returns a mapping of shard IDs to their respective info object." +msgstr "Returns a mapping of shard IDs to their respective info object." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`Status.online` is used." + +msgid "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." +msgstr "The shard_id to change the presence to. If not specified or ``None``, then it will change the presence of every shard the bot can see." + +msgid "If the ``activity`` parameter is not of proper type." +msgstr "If the ``activity`` parameter is not of proper type." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway." + +msgid "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This implementation checks if any of the shards are rate limited. For more granular control, consider :meth:`ShardInfo.is_ws_ratelimited`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/cogs.po b/docs/locales/zh_CN/LC_MESSAGES/api/cogs.po new file mode 100644 index 0000000000..e0a5531320 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/cogs.po @@ -0,0 +1,187 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "The base class that all cogs must inherit from." +msgstr "The base class that all cogs must inherit from." + +msgid "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." +msgstr "A cog is a collection of commands, listeners, and optional state to help group commands together. More information on them can be found on the :ref:`ext_commands_cogs` page." + +msgid "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." +msgstr "When inheriting from this class, the options shown in :class:`CogMeta` are equally valid here." + +msgid "Returns" +msgstr "Returns" + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." +msgstr "A :class:`list` of :class:`.ApplicationCommand`\\s that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "Return type" +msgstr "Return type" + +msgid "List[:class:`.ApplicationCommand`]" +msgstr "List[:class:`.ApplicationCommand`]" + +msgid "Returns the cog's specified name, not the class name." +msgstr "Returns the cog's specified name, not the class name." + +msgid "Returns the cog's description, typically the cleaned docstring." +msgstr "Returns the cog's description, typically the cleaned docstring." + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." +msgstr "Returns a :class:`list` of (name, function) listener pairs that are defined in this cog." + +msgid "The listeners defined in this cog." +msgstr "The listeners defined in this cog." + +msgid "List[Tuple[:class:`str`, :ref:`coroutine `]]" +msgstr "List[Tuple[:class:`str`, :ref:`coroutine `]]" + +msgid "A decorator that marks a function as a listener." +msgstr "A decorator that marks a function as a listener." + +msgid "This is the cog equivalent of :meth:`.Bot.listen`." +msgstr "This is the cog equivalent of :meth:`.Bot.listen`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The name of the event being listened to. If not provided, it defaults to the function's name." +msgstr "The name of the event being listened to. If not provided, it defaults to the function's name." + +msgid "If this listener should only be called once after each cog load. Defaults to false." +msgstr "If this listener should only be called once after each cog load. Defaults to false." + +msgid "Raises" +msgstr "Raises" + +msgid "The function is not a coroutine function or a string was not passed as the name." +msgstr "The function is not a coroutine function or a string was not passed as the name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FuncT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\)\\]`" + +msgid "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the cog has an error handler. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that is called when the cog gets removed." +msgstr "A special method that is called when the cog gets removed." + +msgid "This function **cannot** be a coroutine. It must be a regular function." +msgstr "This function **cannot** be a coroutine. It must be a regular function." + +msgid "Subclasses must replace this if they want special unloading behaviour." +msgstr "Subclasses must replace this if they want special unloading behaviour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A special method that registers as a :meth:`.Bot.check_once` check." +msgstr "A special method that registers as a :meth:`.Bot.check_once` check." + +msgid "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." +msgstr "This function **can** be a coroutine and must take a sole parameter, ``ctx``, to represent the :class:`.Context` or :class:`.ApplicationContext`." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A special method that registers as a :meth:`.Bot.check` check." +msgstr "A special method that registers as a :meth:`.Bot.check` check." + +msgid "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." +msgstr "A special method that registers as a :func:`~discord.ext.commands.check` for every command and subcommand in this cog." + +msgid "A special method that is called whenever an error is dispatched inside this cog." +msgstr "A special method that is called whenever an error is dispatched inside this cog." + +msgid "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." +msgstr "This is similar to :func:`.on_command_error` except only applying to the commands inside this cog." + +msgid "This **must** be a coroutine." +msgstr "This **must** be a coroutine." + +msgid "The invocation context where the error happened." +msgstr "The invocation context where the error happened." + +msgid "The error that happened." +msgstr "The error that happened." + +msgid "A special method that acts as a cog local pre-invoke hook." +msgstr "A special method that acts as a cog local pre-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.before_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.before_invoke`." + +msgid "A special method that acts as a cog local post-invoke hook." +msgstr "A special method that acts as a cog local post-invoke hook." + +msgid "This is similar to :meth:`.ApplicationCommand.after_invoke`." +msgstr "This is similar to :meth:`.ApplicationCommand.after_invoke`." + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/data_classes.po b/docs/locales/zh_CN/LC_MESSAGES/api/data_classes.po new file mode 100644 index 0000000000..fcb1ec47b6 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/data_classes.po @@ -0,0 +1,2896 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Data Classes" +msgstr "Data Classes" + +msgid "Some classes are just there to be data containers, this lists them." +msgstr "Some classes are just there to be data containers, this lists them." + +msgid "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." +msgstr "Unlike :ref:`models ` you are allowed to create most of these yourself, even if they can also be used to hold attributes." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." +msgstr "The only exception to this rule is :class:`Object`, which is made with dynamic attributes in mind." + +msgid "Represents a generic Discord object." +msgstr "Represents a generic Discord object." + +msgid "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." +msgstr "The purpose of this class is to allow you to create 'miniature' versions of data classes if you want to pass in just an ID. Most functions that take in a specific data class with an ID can also take in this class as a substitute instead. Note that even though this is the case, not all objects (if any) actually inherit from this class." + +msgid "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." +msgstr "There are also some cases where some WebSocket events are received in :dpy-issue:`strange order <21>` and when such events happened you would receive this class rather than the actual data class. These cases are extremely rare." + +msgid "Checks if two objects are equal." +msgstr "Checks if two objects are equal." + +msgid "Checks if two objects are not equal." +msgstr "Checks if two objects are not equal." + +msgid "Returns the object's hash." +msgstr "Returns the object's hash." + +msgid "The ID of the object." +msgstr "The ID of the object." + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the snowflake's creation time in UTC." +msgstr "Returns the snowflake's creation time in UTC." + +msgid "Returns the worker id that made the snowflake." +msgstr "Returns the worker id that made the snowflake." + +msgid "Returns the process id that made the snowflake." +msgstr "Returns the process id that made the snowflake." + +msgid "Returns the increment id that made the snowflake." +msgstr "Returns the increment id that made the snowflake." + +msgid "Represents a :class:`discord.SelectMenu`'s option." +msgstr "Represents a :class:`discord.SelectMenu`'s option." + +msgid "These can be created by users." +msgstr "These can be created by users." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not provided when constructed then it defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The emoji of the option, if available." +msgstr "The emoji of the option, if available." + +msgid "Wraps up a Discord gateway intent flag." +msgstr "Wraps up a Discord gateway intent flag." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools." + +msgid "To construct an object you can pass keyword arguments denoting the flags to enable or disable." +msgstr "To construct an object you can pass keyword arguments denoting the flags to enable or disable." + +msgid "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." +msgstr "This is used to disable certain gateway features that are unnecessary to run your bot. To make use of this, it is passed to the ``intents`` keyword argument of :class:`Client`." + +msgid "Checks if two flags are equal." +msgstr "Checks if two flags are equal." + +msgid "Checks if two flags are not equal." +msgstr "Checks if two flags are not equal." + +msgid "Adds two flags together. Equivalent to ``x | y``." +msgstr "Adds two flags together. Equivalent to ``x | y``." + +msgid "Subtracts two flags from each other." +msgstr "Subtracts two flags from each other." + +msgid "Returns the union of two flags. Equivalent to ``x + y``." +msgstr "Returns the union of two flags. Equivalent to ``x + y``." + +msgid "Returns the intersection of two flags." +msgstr "Returns the intersection of two flags." + +msgid "Returns the inverse of a flag." +msgstr "Returns the inverse of a flag." + +msgid "Return the flag's hash." +msgstr "Return the flag's hash." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs." + +msgid "The raw value. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. You should query flags via the properties rather than using this raw value." + +msgid "A factory method that creates a :class:`Intents` with everything enabled." +msgstr "A factory method that creates a :class:`Intents` with everything enabled." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.Intents\\``" + +msgid "A factory method that creates a :class:`Intents` with everything disabled." +msgstr "A factory method that creates a :class:`Intents` with everything disabled." + +msgid "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." +msgstr "A factory method that creates a :class:`Intents` with everything enabled except :attr:`presences`, :attr:`members`, and :attr:`message_content`." + +msgid "Whether guild related events are enabled." +msgstr "Whether guild related events are enabled." + +msgid "This corresponds to the following events:" +msgstr "This corresponds to the following events:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_pins_update`" +msgstr ":func:`on_guild_channel_pins_update`" + +msgid "This also corresponds to the following attributes and classes in terms of cache:" +msgstr "This also corresponds to the following attributes and classes in terms of cache:" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid ":class:`Guild` and all its attributes." +msgstr ":class:`Guild` and all its attributes." + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_all_channels`" +msgstr ":meth:`Client.get_all_channels`" + +msgid "It is highly advisable to leave this intent enabled for your bot to function." +msgstr "It is highly advisable to leave this intent enabled for your bot to function." + +msgid "Whether guild member related events are enabled." +msgstr "Whether guild member related events are enabled." + +msgid ":func:`on_member_join`" +msgstr ":func:`on_member_join`" + +msgid ":func:`on_member_remove`" +msgstr ":func:`on_member_remove`" + +msgid ":func:`on_raw_member_remove`" +msgstr ":func:`on_raw_member_remove`" + +msgid ":func:`on_member_update`" +msgstr ":func:`on_member_update`" + +msgid ":func:`on_user_update`" +msgstr ":func:`on_user_update`" + +msgid ":meth:`Client.get_all_members`" +msgstr ":meth:`Client.get_all_members`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid ":attr:`Member.roles`" +msgstr ":attr:`Member.roles`" + +msgid ":attr:`Member.nick`" +msgstr ":attr:`Member.nick`" + +msgid ":attr:`Member.premium_since`" +msgstr ":attr:`Member.premium_since`" + +msgid ":attr:`User.name`" +msgstr ":attr:`User.name`" + +msgid ":attr:`User.avatar`" +msgstr ":attr:`User.avatar`" + +msgid ":attr:`User.discriminator`" +msgstr ":attr:`User.discriminator`" + +msgid "For more information go to the :ref:`member intent documentation `." +msgstr "For more information go to the :ref:`member intent documentation `." + +msgid "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." +msgstr "This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal." + +msgid "Alias of :attr:`.moderation`." +msgstr "Alias of :attr:`.moderation`." + +msgid "Changed to an alias." +msgstr "Changed to an alias." + +msgid "Whether guild moderation related events are enabled." +msgstr "Whether guild moderation related events are enabled." + +msgid ":func:`on_audit_log_entry`" +msgstr ":func:`on_audit_log_entry`" + +msgid ":func:`on_member_ban`" +msgstr ":func:`on_member_ban`" + +msgid ":func:`on_member_unban`" +msgstr ":func:`on_member_unban`" + +msgid "This does not correspond to any attributes or classes in the library in terms of cache." +msgstr "This does not correspond to any attributes or classes in the library in terms of cache." + +msgid "Alias of :attr:`.emojis_and_stickers`." +msgstr "Alias of :attr:`.emojis_and_stickers`." + +msgid "Whether guild emoji and sticker related events are enabled." +msgstr "Whether guild emoji and sticker related events are enabled." + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_stickers_update`" +msgstr ":func:`on_guild_stickers_update`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Client.get_sticker`" +msgstr ":meth:`Client.get_sticker`" + +msgid ":meth:`Client.emojis`" +msgstr ":meth:`Client.emojis`" + +msgid ":meth:`Client.stickers`" +msgstr ":meth:`Client.stickers`" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.stickers`" +msgstr ":attr:`Guild.stickers`" + +msgid "Whether guild integration related events are enabled." +msgstr "Whether guild integration related events are enabled." + +msgid ":func:`on_guild_integrations_update`" +msgstr ":func:`on_guild_integrations_update`" + +msgid ":func:`on_integration_create`" +msgstr ":func:`on_integration_create`" + +msgid ":func:`on_integration_update`" +msgstr ":func:`on_integration_update`" + +msgid ":func:`on_raw_integration_delete`" +msgstr ":func:`on_raw_integration_delete`" + +msgid "Whether guild webhook related events are enabled." +msgstr "Whether guild webhook related events are enabled." + +msgid ":func:`on_webhooks_update`" +msgstr ":func:`on_webhooks_update`" + +msgid "Whether guild invite related events are enabled." +msgstr "Whether guild invite related events are enabled." + +msgid ":func:`on_invite_create`" +msgstr ":func:`on_invite_create`" + +msgid ":func:`on_invite_delete`" +msgstr ":func:`on_invite_delete`" + +msgid "Whether guild voice state related events are enabled." +msgstr "Whether guild voice state related events are enabled." + +msgid ":func:`on_voice_state_update`" +msgstr ":func:`on_voice_state_update`" + +msgid ":attr:`VoiceChannel.members`" +msgstr ":attr:`VoiceChannel.members`" + +msgid ":attr:`VoiceChannel.voice_states`" +msgstr ":attr:`VoiceChannel.voice_states`" + +msgid ":attr:`StageChannel.members`" +msgstr ":attr:`StageChannel.members`" + +msgid ":attr:`StageChannel.speakers`" +msgstr ":attr:`StageChannel.speakers`" + +msgid ":attr:`StageChannel.listeners`" +msgstr ":attr:`StageChannel.listeners`" + +msgid ":attr:`StageChannel.moderators`" +msgstr ":attr:`StageChannel.moderators`" + +msgid ":attr:`StageChannel.voice_states`" +msgstr ":attr:`StageChannel.voice_states`" + +msgid ":attr:`Member.voice`" +msgstr ":attr:`Member.voice`" + +msgid "This intent is required to connect to voice." +msgstr "This intent is required to connect to voice." + +msgid "Whether guild presence related events are enabled." +msgstr "Whether guild presence related events are enabled." + +msgid ":func:`on_presence_update`" +msgstr ":func:`on_presence_update`" + +msgid ":attr:`Member.activities`" +msgstr ":attr:`Member.activities`" + +msgid ":attr:`Member.status`" +msgstr ":attr:`Member.status`" + +msgid ":attr:`Member.raw_status`" +msgstr ":attr:`Member.raw_status`" + +msgid "For more information go to the :ref:`presence intent documentation `." +msgstr "For more information go to the :ref:`presence intent documentation `." + +msgid "Whether guild and direct message related events are enabled." +msgstr "Whether guild and direct message related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." +msgstr "This is a shortcut to set or get both :attr:`guild_messages` and :attr:`dm_messages`." + +msgid ":func:`on_message` (both guilds and DMs)" +msgstr ":func:`on_message` (both guilds and DMs)" + +msgid ":func:`on_message_edit` (both guilds and DMs)" +msgstr ":func:`on_message_edit` (both guilds and DMs)" + +msgid ":func:`on_message_delete` (both guilds and DMs)" +msgstr ":func:`on_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_delete` (both guilds and DMs)" +msgstr ":func:`on_raw_message_delete` (both guilds and DMs)" + +msgid ":func:`on_raw_message_edit` (both guilds and DMs)" +msgstr ":func:`on_raw_message_edit` (both guilds and DMs)" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":attr:`Client.cached_messages`" +msgstr ":attr:`Client.cached_messages`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":attr:`Client.polls`" +msgstr ":attr:`Client.polls`" + +msgid ":meth:`Client.get_poll`" +msgstr ":meth:`Client.get_poll`" + +msgid "Note that due to an implicit relationship this also corresponds to the following events:" +msgstr "Note that due to an implicit relationship this also corresponds to the following events:" + +msgid ":func:`on_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`message_content` is required to receive the actual content of guild messages." +msgstr ":attr:`message_content` is required to receive the actual content of guild messages." + +msgid "Whether guild message related events are enabled." +msgstr "Whether guild message related events are enabled." + +msgid "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." +msgstr "See also :attr:`dm_messages` for DMs or :attr:`messages` for both." + +msgid ":func:`on_message` (only for guilds)" +msgstr ":func:`on_message` (only for guilds)" + +msgid ":func:`on_message_edit` (only for guilds)" +msgstr ":func:`on_message_edit` (only for guilds)" + +msgid ":func:`on_message_delete` (only for guilds)" +msgstr ":func:`on_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_delete` (only for guilds)" +msgstr ":func:`on_raw_message_delete` (only for guilds)" + +msgid ":func:`on_raw_message_edit` (only for guilds)" +msgstr ":func:`on_raw_message_edit` (only for guilds)" + +msgid ":attr:`Client.cached_messages` (only for guilds)" +msgstr ":attr:`Client.cached_messages` (only for guilds)" + +msgid ":meth:`Client.get_message` (only for guilds)" +msgstr ":meth:`Client.get_message` (only for guilds)" + +msgid ":attr:`Client.polls` (only for guilds)" +msgstr ":attr:`Client.polls` (only for guilds)" + +msgid ":meth:`Client.get_poll` (only for guilds)" +msgstr ":meth:`Client.get_poll` (only for guilds)" + +msgid ":func:`on_reaction_add` (only for guilds)" +msgstr ":func:`on_reaction_add` (only for guilds)" + +msgid ":func:`on_reaction_remove` (only for guilds)" +msgstr ":func:`on_reaction_remove` (only for guilds)" + +msgid ":func:`on_reaction_clear` (only for guilds)" +msgstr ":func:`on_reaction_clear` (only for guilds)" + +msgid "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" +msgstr "Without the :attr:`message_content` intent enabled, the following fields are either an empty string or empty array:" + +msgid ":attr:`Message.content`" +msgstr ":attr:`Message.content`" + +msgid ":attr:`Message.embeds`" +msgstr ":attr:`Message.embeds`" + +msgid ":attr:`Message.attachments`" +msgstr ":attr:`Message.attachments`" + +msgid ":attr:`Message.components`" +msgstr ":attr:`Message.components`" + +msgid ":attr:`Message.poll`" +msgstr ":attr:`Message.poll`" + +msgid "For more information go to the :ref:`message content intent documentation `." +msgstr "For more information go to the :ref:`message content intent documentation `." + +msgid "Whether direct message related events are enabled." +msgstr "Whether direct message related events are enabled." + +msgid "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." +msgstr "See also :attr:`guild_messages` for guilds or :attr:`messages` for both." + +msgid ":func:`on_message` (only for DMs)" +msgstr ":func:`on_message` (only for DMs)" + +msgid ":func:`on_message_edit` (only for DMs)" +msgstr ":func:`on_message_edit` (only for DMs)" + +msgid ":func:`on_message_delete` (only for DMs)" +msgstr ":func:`on_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_delete` (only for DMs)" +msgstr ":func:`on_raw_message_delete` (only for DMs)" + +msgid ":func:`on_raw_message_edit` (only for DMs)" +msgstr ":func:`on_raw_message_edit` (only for DMs)" + +msgid ":attr:`Client.cached_messages` (only for DMs)" +msgstr ":attr:`Client.cached_messages` (only for DMs)" + +msgid ":meth:`Client.get_message` (only for DMs)" +msgstr ":meth:`Client.get_message` (only for DMs)" + +msgid ":attr:`Client.polls` (only for DMs)" +msgstr ":attr:`Client.polls` (only for DMs)" + +msgid ":meth:`Client.get_poll` (only for DMs)" +msgstr ":meth:`Client.get_poll` (only for DMs)" + +msgid ":func:`on_reaction_add` (only for DMs)" +msgstr ":func:`on_reaction_add` (only for DMs)" + +msgid ":func:`on_reaction_remove` (only for DMs)" +msgstr ":func:`on_reaction_remove` (only for DMs)" + +msgid ":func:`on_reaction_clear` (only for DMs)" +msgstr ":func:`on_reaction_clear` (only for DMs)" + +msgid "Whether guild and direct message reaction related events are enabled." +msgstr "Whether guild and direct message reaction related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." +msgstr "This is a shortcut to set or get both :attr:`guild_reactions` and :attr:`dm_reactions`." + +msgid ":func:`on_raw_reaction_add` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_add` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_reaction_clear` (both guilds and DMs)" +msgstr ":func:`on_raw_reaction_clear` (both guilds and DMs)" + +msgid ":attr:`Message.reactions` (both guild and DM messages)" +msgstr ":attr:`Message.reactions` (both guild and DM messages)" + +msgid "Whether guild message reaction related events are enabled." +msgstr "Whether guild message reaction related events are enabled." + +msgid "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." +msgstr "See also :attr:`dm_reactions` for DMs or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for guilds)" +msgstr ":func:`on_raw_reaction_add` (only for guilds)" + +msgid ":func:`on_raw_reaction_remove` (only for guilds)" +msgstr ":func:`on_raw_reaction_remove` (only for guilds)" + +msgid ":func:`on_raw_reaction_clear` (only for guilds)" +msgstr ":func:`on_raw_reaction_clear` (only for guilds)" + +msgid ":attr:`Message.reactions` (only for guild messages)" +msgstr ":attr:`Message.reactions` (only for guild messages)" + +msgid "Whether direct message reaction related events are enabled." +msgstr "Whether direct message reaction related events are enabled." + +msgid "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." +msgstr "See also :attr:`guild_reactions` for guilds or :attr:`reactions` for both." + +msgid ":func:`on_raw_reaction_add` (only for DMs)" +msgstr ":func:`on_raw_reaction_add` (only for DMs)" + +msgid ":func:`on_raw_reaction_remove` (only for DMs)" +msgstr ":func:`on_raw_reaction_remove` (only for DMs)" + +msgid ":func:`on_raw_reaction_clear` (only for DMs)" +msgstr ":func:`on_raw_reaction_clear` (only for DMs)" + +msgid ":attr:`Message.reactions` (only for DM messages)" +msgstr ":attr:`Message.reactions` (only for DM messages)" + +msgid "Whether guild and direct message typing related events are enabled." +msgstr "Whether guild and direct message typing related events are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." +msgstr "This is a shortcut to set or get both :attr:`guild_typing` and :attr:`dm_typing`." + +msgid ":func:`on_typing` (both guilds and DMs)" +msgstr ":func:`on_typing` (both guilds and DMs)" + +msgid "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." +msgstr "See also :attr:`dm_typing` for DMs or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for guilds)" +msgstr ":func:`on_typing` (only for guilds)" + +msgid "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." +msgstr "See also :attr:`guild_typing` for guilds or :attr:`typing` for both." + +msgid ":func:`on_typing` (only for DMs)" +msgstr ":func:`on_typing` (only for DMs)" + +msgid "Whether the bot will receive message content in guild messages." +msgstr "Whether the bot will receive message content in guild messages." + +msgid "This corresponds to the following attributes:" +msgstr "This corresponds to the following attributes:" + +msgid "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." +msgstr "These attributes will still be available for messages received from interactions, the bot's own messages, messages the bot was mentioned in, and DMs." + +msgid "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." +msgstr "As of September 2022 using this intent requires opting in explicitly via the Developer Portal to receive the actual content of the guild messages. This intent is privileged, meaning that bots in over 100 guilds that require this intent would need to request this intent on the Developer Portal. See https://support-dev.discord.com/hc/en-us/articles/4404772028055 for more information." + +msgid "Whether \"scheduled event\" related events are enabled." +msgstr "Whether \"scheduled event\" related events are enabled." + +msgid ":func:`on_scheduled_event_create`" +msgstr ":func:`on_scheduled_event_create`" + +msgid ":func:`on_scheduled_event_update`" +msgstr ":func:`on_scheduled_event_update`" + +msgid ":func:`on_scheduled_event_delete`" +msgstr ":func:`on_scheduled_event_delete`" + +msgid ":func:`on_scheduled_event_user_add`" +msgstr ":func:`on_scheduled_event_user_add`" + +msgid ":func:`on_raw_scheduled_event_user_add`" +msgstr ":func:`on_raw_scheduled_event_user_add`" + +msgid ":func:`on_scheduled_event_user_remove`" +msgstr ":func:`on_scheduled_event_user_remove`" + +msgid ":func:`on_raw_scheduled_event_user_remove`" +msgstr ":func:`on_raw_scheduled_event_user_remove`" + +msgid ":class:`ScheduledEvent`" +msgstr ":class:`ScheduledEvent`" + +msgid ":meth:`Guild.get_scheduled_event`" +msgstr ":meth:`Guild.get_scheduled_event`" + +msgid "Whether guild auto moderation configuration events are enabled." +msgstr "Whether guild auto moderation configuration events are enabled." + +msgid ":func:`on_auto_moderation_rule_create`" +msgstr ":func:`on_auto_moderation_rule_create`" + +msgid ":func:`on_auto_moderation_rule_update`" +msgstr ":func:`on_auto_moderation_rule_update`" + +msgid ":func:`on_auto_moderation_rule_delete`" +msgstr ":func:`on_auto_moderation_rule_delete`" + +msgid "Whether guild auto moderation execution events are enabled." +msgstr "Whether guild auto moderation execution events are enabled." + +msgid ":func:`on_auto_moderation_action_execution`" +msgstr ":func:`on_auto_moderation_action_execution`" + +msgid "Whether poll-related events in guilds are enabled." +msgstr "Whether poll-related events in guilds are enabled." + +msgid "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." +msgstr "See also :attr:`dm_polls` for DMs or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for guilds)" +msgstr ":func:`on_poll_vote_add` (only for guilds)" + +msgid ":func:`on_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_poll_vote_remove` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_add` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_add` (only for guilds)" + +msgid ":func:`on_raw_poll_vote_remove` (only for guilds)" +msgstr ":func:`on_raw_poll_vote_remove` (only for guilds)" + +msgid ":attr:`PollAnswer.count` (only for guild polls)" +msgstr ":attr:`PollAnswer.count` (only for guild polls)" + +msgid ":attr:`PollResults.answer_counts` (only for guild polls)" +msgstr ":attr:`PollResults.answer_counts` (only for guild polls)" + +msgid "Whether poll-related events in direct messages are enabled." +msgstr "Whether poll-related events in direct messages are enabled." + +msgid "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." +msgstr "See also :attr:`guild_polls` for guilds or :attr:`polls` for both." + +msgid ":func:`on_poll_vote_add` (only for DMs)" +msgstr ":func:`on_poll_vote_add` (only for DMs)" + +msgid ":func:`on_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_poll_vote_remove` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_add` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_add` (only for DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (only for DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (only for DMs)" + +msgid ":attr:`PollAnswer.count` (only for DM polls)" +msgstr ":attr:`PollAnswer.count` (only for DM polls)" + +msgid ":attr:`PollResults.answer_counts` (only for DM polls)" +msgstr ":attr:`PollResults.answer_counts` (only for DM polls)" + +msgid "Whether poll-related events in guilds and direct messages are enabled." +msgstr "Whether poll-related events in guilds and direct messages are enabled." + +msgid "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." +msgstr "This is a shortcut to set or get both :attr:`guild_polls` and :attr:`dm_polls`." + +msgid ":func:`on_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_poll_vote_remove` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_add` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_add` (both guilds and DMs)" + +msgid ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" +msgstr ":func:`on_raw_poll_vote_remove` (both guilds and DMs)" + +msgid ":attr:`PollAnswer.count` (both guild and DM polls)" +msgstr ":attr:`PollAnswer.count` (both guild and DM polls)" + +msgid ":attr:`PollResults.answer_counts` (both guild and DM polls)" +msgstr ":attr:`PollResults.answer_counts` (both guild and DM polls)" + +msgid "A class that gives information and control over a specific shard." +msgstr "A class that gives information and control over a specific shard." + +msgid "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." +msgstr "You can retrieve this object via :meth:`AutoShardedClient.get_shard` or :attr:`AutoShardedClient.shards`." + +msgid "The shard ID for this shard." +msgstr "The shard ID for this shard." + +msgid "The shard count for this cluster. If this is ``None`` then the bot has not started yet." +msgstr "The shard count for this cluster. If this is ``None`` then the bot has not started yet." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Whether the shard connection is currently closed." +msgstr "Whether the shard connection is currently closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects a shard. When this is called, the shard connection will no longer be open." +msgstr "Disconnects a shard. When this is called, the shard connection will no longer be open." + +msgid "If the shard is already disconnected this does nothing." +msgstr "If the shard is already disconnected this does nothing." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Disconnects and then connects the shard again." +msgstr "Disconnects and then connects the shard again." + +msgid "Connects a shard. If the shard is already connected this does nothing." +msgstr "Connects a shard. If the shard is already connected this does nothing." + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds for this shard." + +msgid "Whether the websocket is currently rate limited." +msgstr "Whether the websocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Message" +msgstr "Message" + +msgid "A class that represents what mentions are allowed in a message." +msgstr "A class that represents what mentions are allowed in a message." + +msgid "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." +msgstr "This class can be set during :class:`Client` initialisation to apply to every message sent. It can also be applied on a per-message basis via :meth:`abc.Messageable.send` for more fine-grained control." + +msgid "Whether to allow everyone and here mentions. Defaults to ``True``." +msgstr "Whether to allow everyone and here mentions. Defaults to ``True``." + +msgid "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." +msgstr "Controls the users being mentioned. If ``True`` (the default) then users are mentioned based on the message content. If ``False`` then users are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the users provided will be mentioned, provided those users are in the message content." + +msgid "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" +msgstr "Union[:class:`bool`, List[:class:`abc.Snowflake`]]" + +msgid "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." +msgstr "Controls the roles being mentioned. If ``True`` (the default) then roles are mentioned based on the message content. If ``False`` then roles are not mentioned at all. If a list of :class:`abc.Snowflake` is given then only the roles provided will be mentioned, provided those roles are in the message content." + +msgid "Whether to mention the author of the message being replied to. Defaults to ``True``." +msgstr "Whether to mention the author of the message being replied to. Defaults to ``True``." + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields explicitly set to ``True`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" +msgstr "A factory method that returns a :class:`AllowedMentions` with all fields set to ``False`` :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`A\\`\\`\\, bound\\= AllowedMentions\\)`" + +msgid "Represents a reference to a :class:`~discord.Message`." +msgstr "Represents a reference to a :class:`~discord.Message`." + +msgid "This class can now be constructed by users." +msgstr "This class can now be constructed by users." + +msgid "The id of the message referenced." +msgstr "The id of the message referenced." + +msgid "The channel id of the message referenced." +msgstr "The channel id of the message referenced." + +msgid "The guild id of the message referenced." +msgstr "The guild id of the message referenced." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." +msgstr "The message that this reference resolved to. If this is ``None`` then the original message was not fetched either due to the Discord API not attempting to resolve it or it not being available at the time of creation. If the message was resolved at a prior point but has since been deleted then this will be of type :class:`DeletedReferencedMessage`." + +msgid "Currently, this is mainly the replied to message when a user replies to a message." +msgstr "Currently, this is mainly the replied to message when a user replies to a message." + +msgid "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" +msgstr "Optional[Union[:class:`Message`, :class:`DeletedReferencedMessage`]]" + +msgid "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." +msgstr "Creates a :class:`MessageReference` from an existing :class:`~discord.Message`." + +msgid "The message to be converted into a reference." +msgstr "The message to be converted into a reference." + +msgid "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying to the referenced message should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Returns" +msgstr "Returns" + +msgid "A reference to the message." +msgstr "A reference to the message." + +msgid ":class:`MessageReference`" +msgstr ":class:`MessageReference`" + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "Returns a URL that allows the client to jump to the referenced message." +msgstr "Returns a URL that allows the client to jump to the referenced message." + +msgid "Represents information about a call in a private channel." +msgstr "Represents information about a call in a private channel." + +msgid "A list of :class:`User` that participated in this call." +msgstr "A list of :class:`User` that participated in this call." + +msgid "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." +msgstr "If a user is not found in the client's cache, then it will be returned as an :class:`Object`." + +msgid "An aware timestamp of when the call ended." +msgstr "An aware timestamp of when the call ended." + +msgid "Represents a partial message to aid with working messages when only a message and channel ID are present." +msgstr "Represents a partial message to aid with working messages when only a message and channel ID are present." + +msgid "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" +msgstr "There are two ways to construct this class. The first one is through the constructor itself, and the second is via the following:" + +msgid ":meth:`TextChannel.get_partial_message`" +msgstr ":meth:`TextChannel.get_partial_message`" + +msgid ":meth:`Thread.get_partial_message`" +msgstr ":meth:`Thread.get_partial_message`" + +msgid ":meth:`DMChannel.get_partial_message`" +msgstr ":meth:`DMChannel.get_partial_message`" + +msgid ":meth:`VoiceChannel.get_partial_message`" +msgstr ":meth:`VoiceChannel.get_partial_message`" + +msgid ":meth:`StageChannel.get_partial_message`" +msgstr ":meth:`StageChannel.get_partial_message`" + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messages are equal." +msgstr "Checks if two partial messages are equal." + +msgid "Checks if two partial messages are not equal." +msgstr "Checks if two partial messages are not equal." + +msgid "Returns the partial message's hash." +msgstr "Returns the partial message's hash." + +msgid "The channel associated with this partial message." +msgstr "The channel associated with this partial message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`VoiceChannel`, :class:`StageChannel`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Raises" +msgstr "Raises" + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "The partial message's creation time in UTC." +msgstr "The partial message's creation time in UTC." + +msgid "The guild that the partial message belongs to, if applicable." +msgstr "The guild that the partial message belongs to, if applicable." + +msgid "Fetches the partial message to a full :class:`Message`." +msgstr "Fetches the partial message to a full :class:`Message`." + +msgid "The full message." +msgstr "The full message." + +msgid "The message was not found." +msgstr "The message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid ":class:`discord.Message` is returned instead of ``None`` if an edit took place." +msgstr ":class:`discord.Message` is returned instead of ``None`` if an edit took place." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The message that was edited." +msgstr "The message that was edited." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." +msgstr "A parameter object used for :meth:`abc.Messageable.send` for sending file objects." + +msgid "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." +msgstr "File objects are single use and are not meant to be reused in multiple :meth:`abc.Messageable.send`\\s." + +msgid "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." +msgstr "A file-like object opened in binary mode and read mode or a filename representing a file in the hard drive to open." + +msgid "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." +msgstr "If the file-like object passed is opened via ``open`` then the modes 'rb' should be used." + +msgid "To pass binary data, consider usage of ``io.BytesIO``." +msgstr "To pass binary data, consider usage of ``io.BytesIO``." + +msgid "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" +msgstr "Union[:class:`os.PathLike`, :class:`io.BufferedIOBase`]" + +msgid "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." +msgstr "The filename to display when uploading to Discord. If this is not given then it defaults to ``fp.name`` or if ``fp`` is a string then the ``filename`` will default to the string given." + +msgid "The description of a file, used by Discord to display alternative text on images." +msgstr "The description of a file, used by Discord to display alternative text on images." + +msgid "Whether the attachment is a spoiler." +msgstr "Whether the attachment is a spoiler." + +msgid "Embed" +msgstr "Embed" + +msgid "Represents a Discord embed." +msgstr "Represents a Discord embed." + +msgid "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." +msgstr "Returns the total size of the embed. Useful for checking if it's within the 6000 character limit." + +msgid "Returns whether the embed has any data set." +msgstr "Returns whether the embed has any data set." + +msgid "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." +msgstr "For ease of use, all parameters that expect a :class:`str` are implicitly cast to :class:`str` for you." + +msgid "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." +msgstr "The title of the embed. This can be set during initialisation. Must be 256 characters or fewer." + +msgid "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" +msgstr "The type of embed. Usually \"rich\". This can be set during initialisation. Possible strings for embed types can be found on discord's `api docs `_" + +msgid "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." +msgstr "The description of the embed. This can be set during initialisation. Must be 4096 characters or fewer." + +msgid "The URL of the embed. This can be set during initialisation." +msgstr "The URL of the embed. This can be set during initialisation." + +msgid "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." +msgstr "The timestamp of the embed content. This is an aware datetime. If a naive datetime is passed, it is converted to an aware datetime with the local timezone." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." +msgstr "The colour code of the embed. Aliased to ``color`` as well. This can be set during initialisation." + +msgid "Union[:class:`Colour`, :class:`int`]" +msgstr "Union[:class:`Colour`, :class:`int`]" + +msgid "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`Embed` provided it is in the format that Discord expects it to be in." + +msgid "You can find out about this format in the `official Discord documentation`__." +msgstr "You can find out about this format in the `official Discord documentation`__." + +msgid "The dictionary to convert into an embed." +msgstr "The dictionary to convert into an embed." + +msgid "The converted embed object." +msgstr "The converted embed object." + +msgid ":class:`Embed`" +msgstr ":class:`Embed`" + +msgid "Creates a shallow copy of the :class:`Embed` object." +msgstr "Creates a shallow copy of the :class:`Embed` object." + +msgid "The copied embed object." +msgstr "The copied embed object." + +msgid "Returns an :class:`EmbedFooter` denoting the footer contents." +msgstr "Returns an :class:`EmbedFooter` denoting the footer contents." + +msgid "See :meth:`set_footer` for possible values you can access." +msgstr "See :meth:`set_footer` for possible values you can access." + +msgid "If the footer is not set then `None` is returned." +msgstr "If the footer is not set then `None` is returned." + +msgid "Sets the footer for the embed content." +msgstr "Sets the footer for the embed content." + +msgid "This function returns the class instance to allow for fluent-style chaining." +msgstr "This function returns the class instance to allow for fluent-style chaining." + +msgid "The footer text. Must be 2048 characters or fewer." +msgstr "The footer text. Must be 2048 characters or fewer." + +msgid "The URL of the footer icon. Only HTTP(S) is supported." +msgstr "The URL of the footer icon. Only HTTP(S) is supported." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`E\\`\\`\\, bound\\= Embed\\)`" + +msgid "Clears embed's footer information." +msgstr "Clears embed's footer information." + +msgid "Returns an :class:`EmbedMedia` denoting the image contents." +msgstr "Returns an :class:`EmbedMedia` denoting the image contents." + +msgid "Attributes you can access are:" +msgstr "Attributes you can access are:" + +msgid "``url``" +msgstr "``url``" + +msgid "``proxy_url``" +msgstr "``proxy_url``" + +msgid "``width``" +msgstr "``width``" + +msgid "``height``" +msgstr "``height``" + +msgid "If the image is not set then `None` is returned." +msgstr "If the image is not set then `None` is returned." + +msgid "Sets the image for the embed content." +msgstr "Sets the image for the embed content." + +msgid "Passing `None` removes the image." +msgstr "Passing `None` removes the image." + +msgid "The source URL for the image. Only HTTP(S) is supported." +msgstr "The source URL for the image. Only HTTP(S) is supported." + +msgid "Removes the embed's image." +msgstr "Removes the embed's image." + +msgid "Returns an :class:`EmbedMedia` denoting the thumbnail contents." +msgstr "Returns an :class:`EmbedMedia` denoting the thumbnail contents." + +msgid "If the thumbnail is not set then `None` is returned." +msgstr "If the thumbnail is not set then `None` is returned." + +msgid "Sets the thumbnail for the embed content." +msgstr "Sets the thumbnail for the embed content." + +msgid "Passing `None` removes the thumbnail." +msgstr "Passing `None` removes the thumbnail." + +msgid "The source URL for the thumbnail. Only HTTP(S) is supported." +msgstr "The source URL for the thumbnail. Only HTTP(S) is supported." + +msgid "Removes the embed's thumbnail." +msgstr "Removes the embed's thumbnail." + +msgid "Returns an :class:`EmbedMedia` denoting the video contents." +msgstr "Returns an :class:`EmbedMedia` denoting the video contents." + +msgid "Attributes include:" +msgstr "Attributes include:" + +msgid "``url`` for the video URL." +msgstr "``url`` for the video URL." + +msgid "``height`` for the video height." +msgstr "``height`` for the video height." + +msgid "``width`` for the video width." +msgstr "``width`` for the video width." + +msgid "If the video is not set then `None` is returned." +msgstr "If the video is not set then `None` is returned." + +msgid "Returns an :class:`EmbedProvider` denoting the provider contents." +msgstr "Returns an :class:`EmbedProvider` denoting the provider contents." + +msgid "The only attributes that might be accessed are ``name`` and ``url``." +msgstr "The only attributes that might be accessed are ``name`` and ``url``." + +msgid "If the provider is not set then `None` is returned." +msgstr "If the provider is not set then `None` is returned." + +msgid "Returns an :class:`EmbedAuthor` denoting the author contents." +msgstr "Returns an :class:`EmbedAuthor` denoting the author contents." + +msgid "See :meth:`set_author` for possible values you can access." +msgstr "See :meth:`set_author` for possible values you can access." + +msgid "If the author is not set then `None` is returned." +msgstr "If the author is not set then `None` is returned." + +msgid "Sets the author for the embed content." +msgstr "Sets the author for the embed content." + +msgid "The name of the author. Must be 256 characters or fewer." +msgstr "The name of the author. Must be 256 characters or fewer." + +msgid "The URL for the author." +msgstr "The URL for the author." + +msgid "The URL of the author icon. Only HTTP(S) is supported." +msgstr "The URL of the author icon. Only HTTP(S) is supported." + +msgid "Clears embed's author information." +msgstr "Clears embed's author information." + +msgid "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." +msgstr "Returns a :class:`list` of :class:`EmbedField` objects denoting the field contents." + +msgid "See :meth:`add_field` for possible values you can access." +msgstr "See :meth:`add_field` for possible values you can access." + +msgid "If the attribute has no value then ``None`` is returned." +msgstr "If the attribute has no value then ``None`` is returned." + +msgid "Appends an :class:`EmbedField` object to the embed." +msgstr "Appends an :class:`EmbedField` object to the embed." + +msgid "The field to add." +msgstr "The field to add." + +msgid "Adds a field to the embed object." +msgstr "Adds a field to the embed object." + +msgid "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." +msgstr "This function returns the class instance to allow for fluent-style chaining. There must be 25 fields or fewer." + +msgid "The name of the field. Must be 256 characters or fewer." +msgstr "The name of the field. Must be 256 characters or fewer." + +msgid "The value of the field. Must be 1024 characters or fewer." +msgstr "The value of the field. Must be 1024 characters or fewer." + +msgid "Whether the field should be displayed inline." +msgstr "Whether the field should be displayed inline." + +msgid "Inserts a field before a specified index to the embed." +msgstr "Inserts a field before a specified index to the embed." + +msgid "The index of where to insert the field." +msgstr "The index of where to insert the field." + +msgid "Removes all fields from this embed." +msgstr "Removes all fields from this embed." + +msgid "Removes a field at a specified index." +msgstr "Removes a field at a specified index." + +msgid "If the index is invalid or out of bounds then the error is silently swallowed." +msgstr "If the index is invalid or out of bounds then the error is silently swallowed." + +msgid "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." +msgstr "When deleting a field by index, the index of the other fields shift to fill the gap just like a regular list." + +msgid "The index of the field to remove." +msgstr "The index of the field to remove." + +msgid "Modifies a field to the embed object." +msgstr "Modifies a field to the embed object." + +msgid "The index must point to a valid pre-existing field. There must be 25 fields or fewer." +msgstr "The index must point to a valid pre-existing field. There must be 25 fields or fewer." + +msgid "The index of the field to modify." +msgstr "The index of the field to modify." + +msgid "An invalid index was provided." +msgstr "An invalid index was provided." + +msgid "Converts this embed object into a dict." +msgstr "Converts this embed object into a dict." + +msgid "A dictionary of :class:`str` embed keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`int`, :class:`bool`]]" + +msgid "Represents a field on the :class:`Embed` object." +msgstr "Represents a field on the :class:`Embed` object." + +msgid "The name of the field." +msgstr "The name of the field." + +msgid "The value of the field." +msgstr "The value of the field." + +msgid "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." +msgstr "Converts a :class:`dict` to a :class:`EmbedField` provided it is in the format that Discord expects it to be in." + +msgid "The dictionary to convert into an EmbedField object." +msgstr "The dictionary to convert into an EmbedField object." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.embeds.EmbedField\\``" + +msgid "Converts this EmbedField object into a dict." +msgstr "Converts this EmbedField object into a dict." + +msgid "A dictionary of :class:`str` embed field keys bound to the respective value." +msgstr "A dictionary of :class:`str` embed field keys bound to the respective value." + +msgid "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, :class:`bool`]]" + +msgid "Represents the author on the :class:`Embed` object." +msgstr "Represents the author on the :class:`Embed` object." + +msgid "The name of the author." +msgstr "The name of the author." + +msgid "The URL of the hyperlink created in the author's name." +msgstr "The URL of the hyperlink created in the author's name." + +msgid "The URL of the author icon image." +msgstr "The URL of the author icon image." + +msgid "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the author icon image. This can't be set directly, it is set by Discord." + +msgid "Represents the footer on the :class:`Embed` object." +msgstr "Represents the footer on the :class:`Embed` object." + +msgid "The text inside the footer." +msgstr "The text inside the footer." + +msgid "The URL of the footer icon image." +msgstr "The URL of the footer icon image." + +msgid "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." +msgstr "The proxied URL of the footer icon image. This can't be set directly, it is set by Discord." + +msgid "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." +msgstr "Represents a media on the :class:`Embed` object. This includes thumbnails, images, and videos." + +msgid "The source URL of the media." +msgstr "The source URL of the media." + +msgid "The proxied URL of the media." +msgstr "The proxied URL of the media." + +msgid "The height of the media." +msgstr "The height of the media." + +msgid "The width of the media." +msgstr "The width of the media." + +msgid "Represents a provider on the :class:`Embed` object." +msgstr "Represents a provider on the :class:`Embed` object." + +msgid "The name of the provider." +msgstr "The name of the provider." + +msgid "The URL of the provider." +msgstr "The URL of the provider." + +msgid "Poll" +msgstr "Poll" + +msgid "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." +msgstr "Represents a Poll. Polls are sent in regular messages, and you must have :attr:`~discord.Permissions.send_polls` to send them." + +msgid "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." +msgstr "The poll's question media, or a ``str`` representing the question text. Question text can be up to 300 characters." + +msgid "Union[:class:`PollMedia`, :class:`str`]" +msgstr "Union[:class:`PollMedia`, :class:`str`]" + +msgid "A list of the poll's answers. A maximum of 10 answers can be set." +msgstr "A list of the poll's answers. A maximum of 10 answers can be set." + +msgid "Optional[List[:class:`PollAnswer`]]" +msgstr "Optional[List[:class:`PollAnswer`]]" + +msgid "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." +msgstr "The number of hours until this poll expires. Users must specify this when creating a poll, but existing polls return :attr:`expiry` instead. Defaults to 24." + +msgid "Whether multiple answers can be selected. Defaults to ``False``." +msgstr "Whether multiple answers can be selected. Defaults to ``False``." + +msgid "The poll's layout type. Only one exists at the moment." +msgstr "The poll's layout type. Only one exists at the moment." + +msgid ":class:`PollLayoutType`" +msgstr ":class:`PollLayoutType`" + +msgid "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." +msgstr "The results of this poll recieved from Discord. If ``None``, this should be considered \"unknown\" rather than \"no\" results." + +msgid "Optional[:class:`PollResults`]" +msgstr "Optional[:class:`PollResults`]" + +msgid "An aware datetime object that specifies the date and time in UTC when the poll will end." +msgstr "An aware datetime object that specifies the date and time in UTC when the poll will end." + +msgid "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." +msgstr "Checks if this poll has completely ended. Shortcut for :attr:`PollResults.is_finalized`, if available." + +msgid "Returns a boolean if :attr:`results` is available, otherwise ``None``." +msgstr "Returns a boolean if :attr:`results` is available, otherwise ``None``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." +msgstr "Shortcut for :meth:`PollResults.total_votes` This may not be precise if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." +msgstr "The total number of votes on this poll if :attr:`results` is available, otherwise ``None``." + +msgid "Get a poll answer by ID." +msgstr "Get a poll answer by ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned answer or ``None`` if not found." +msgstr "The returned answer or ``None`` if not found." + +msgid "Optional[:class:`.PollAnswer`]" +msgstr "Optional[:class:`.PollAnswer`]" + +msgid "Add an answer to this poll." +msgstr "Add an answer to this poll." + +msgid "The answer text. Maximum 55 characters." +msgstr "The answer text. Maximum 55 characters." + +msgid "The answer's emoji." +msgstr "The answer's emoji." + +msgid "The poll already has 10 answers or ``text`` exceeds the character length." +msgstr "The poll already has 10 answers or ``text`` exceeds the character length." + +msgid "You cannot add an answer to an existing poll." +msgstr "You cannot add an answer to an existing poll." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.poll.Poll\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Regular usage ::" +msgstr "Regular usage ::" + +msgid "Chaining style ::" +msgstr "Chaining style ::" + +msgid "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" +msgstr "Immediately ends this poll, if attached to a message. Only doable by the poll's owner. Shortcut to :meth:`Message.end_poll`" + +msgid "This poll wasn't recieved from a message." +msgstr "This poll wasn't recieved from a message." + +msgid "Represents a poll media object that supports both questions and answers." +msgstr "Represents a poll media object that supports both questions and answers." + +msgid "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." +msgstr "The question/answer text. May have up to 300 characters for questions and 55 characters for answers." + +msgid "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" +msgstr "Optional[Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]]" + +msgid "Represents a poll answer object." +msgstr "Represents a poll answer object." + +msgid "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." +msgstr "The answer's ID. It currently starts at ``1`` for the first answer, then goes up sequentially. It may not be reliable to depend on this." + +msgid "The relevant media for this answer." +msgstr "The relevant media for this answer." + +msgid ":class:`PollMedia`" +msgstr ":class:`PollMedia`" + +msgid "The answer's text. Shortcut for :attr:`PollMedia.text`." +msgstr "The answer's text. Shortcut for :attr:`PollMedia.text`." + +msgid "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." +msgstr "The answer's emoji. Shortcut for :attr:`PollMedia.emoji`." + +msgid "This answer's vote count, if recieved from Discord." +msgstr "This answer's vote count, if recieved from Discord." + +msgid "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." +msgstr "Returns an :class:`AsyncIterator` representing the users that have voted with this answer. Only works if this poll was recieved from Discord." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who voted with this answer." +msgstr "The maximum number of results to return. If not provided, returns all the users who voted with this answer." + +msgid "For pagination, answers are sorted by member." +msgstr "For pagination, answers are sorted by member." + +msgid "Yields" +msgstr "Yields" + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has voted with this answer. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the voters for the answer failed." +msgstr "Getting the voters for the answer failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.VoteIterator\\``" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Represents a poll answer count object." +msgstr "Represents a poll answer count object." + +msgid "The number of votes for this answer." +msgstr "The number of votes for this answer." + +msgid "If the current user voted this answer. This is always ``False`` for bots." +msgstr "If the current user voted this answer. This is always ``False`` for bots." + +msgid "Represents a poll results object." +msgstr "Represents a poll results object." + +msgid "Whether the poll has ended and all answer counts have been precisely tallied." +msgstr "Whether the poll has ended and all answer counts have been precisely tallied." + +msgid "A list of counts for each answer. If an answer isn't included, it has no votes." +msgstr "A list of counts for each answer. If an answer isn't included, it has no votes." + +msgid "List[:class:`PollAnswerCount`]" +msgstr "List[:class:`PollAnswerCount`]" + +msgid "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." +msgstr "Get the total number of votes across all answers. This may not be accurate if :attr:`is_finalized` is ``False``." + +msgid "The total number of votes on this poll." +msgstr "The total number of votes on this poll." + +msgid "Flags" +msgstr "Flags" + +msgid "Controls the library's cache policy when it comes to members." +msgstr "Controls the library's cache policy when it comes to members." + +msgid "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." +msgstr "This allows for finer grained control over what members are cached. Note that the bot's own member is always cached. This class is passed to the ``member_cache_flags`` parameter in :class:`Client`." + +msgid "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." +msgstr "Due to a quirk in how Discord works, in order to ensure proper cleanup of cache resources it is recommended to have :attr:`Intents.members` enabled. Otherwise, the library cannot know when a member leaves a guild and is thus unable to clean up after itself." + +msgid "The default value is all flags enabled." +msgstr "The default value is all flags enabled." + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.flags.MemberCacheFlags\\``" + +msgid "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." +msgstr "A factory method that creates a :class:`MemberCacheFlags` with everything disabled." + +msgid "Whether to cache members that are in voice." +msgstr "Whether to cache members that are in voice." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "Members that leave voice are no longer cached." +msgstr "Members that leave voice are no longer cached." + +msgid "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." +msgstr "Whether to cache members that joined the guild or are chunked as part of the initial log in flow." + +msgid "This requires :attr:`Intents.members`." +msgstr "This requires :attr:`Intents.members`." + +msgid "Members that leave the guild are no longer cached." +msgstr "Members that leave the guild are no longer cached." + +msgid "Whether to cache members obtained through interactions." +msgstr "Whether to cache members obtained through interactions." + +msgid "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." +msgstr "This includes members received through :class:`discord.Interaction` and :class:`discord.Option`." + +msgid "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." +msgstr "A factory method that creates a :class:`MemberCacheFlags` based on the currently selected :class:`Intents`." + +msgid "The intents to select from." +msgstr "The intents to select from." + +msgid "The resulting member cache flags." +msgstr "The resulting member cache flags." + +msgid ":class:`MemberCacheFlags`" +msgstr ":class:`MemberCacheFlags`" + +msgid "Wraps up the Discord Application flags." +msgstr "Wraps up the Discord Application flags." + +msgid "Checks if two ApplicationFlags are equal." +msgstr "Checks if two ApplicationFlags are equal." + +msgid "Checks if two ApplicationFlags are not equal." +msgstr "Checks if two ApplicationFlags are not equal." + +msgid "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(name, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "Returns ``True`` if the application is a managed emoji." +msgstr "Returns ``True`` if the application is a managed emoji." + +msgid "Returns ``True`` if the application can create group DMs." +msgstr "Returns ``True`` if the application can create group DMs." + +msgid "Returns ``True`` if the application uses the Auto Moderation API." +msgstr "Returns ``True`` if the application uses the Auto Moderation API." + +msgid "Returns ``True`` if the application has connected to RPC." +msgstr "Returns ``True`` if the application has connected to RPC." + +msgid "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive presence information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited presence information over the gateway." + +msgid "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." +msgstr "Returns ``True`` if the application is verified and is allowed to receive guild members information over the gateway." + +msgid "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." +msgstr "Returns ``True`` if the application is allowed to receive limited guild members information over the gateway." + +msgid "Returns ``True`` if the application is currently pending verification and has hit the guild limit." +msgstr "Returns ``True`` if the application is currently pending verification and has hit the guild limit." + +msgid "Returns ``True`` if the application is embedded within the Discord client." +msgstr "Returns ``True`` if the application is embedded within the Discord client." + +msgid "Returns ``True`` if the application is allowed to read message contents in guilds." +msgstr "Returns ``True`` if the application is allowed to read message contents in guilds." + +msgid "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." +msgstr "Returns ``True`` if the application has registered at least one global application command, and by extension has the badge." + +msgid "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." +msgstr "Returns ``True`` if the app is considered active. Applications are considered active if they have had any command executions in the past 30 days." + +msgid "Wraps up a Discord system channel flag value." +msgstr "Wraps up a Discord system channel flag value." + +msgid "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." +msgstr "Similar to :class:`Permissions`\\, the properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit the system flags easily." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available flags. You should query flags via the properties rather than using this raw value." + +msgid "Returns ``True`` if the system channel is used for member join notifications." +msgstr "Returns ``True`` if the system channel is used for member join notifications." + +msgid "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." +msgstr "Returns ``True`` if the system channel is used for \"Nitro boosting\" notifications." + +msgid "Returns ``True`` if the system channel is used for server setup helpful tips notifications." +msgstr "Returns ``True`` if the system channel is used for server setup helpful tips notifications." + +msgid "Returns ``True`` if the system channel is allowing member join sticker replies." +msgstr "Returns ``True`` if the system channel is allowing member join sticker replies." + +msgid "Wraps up a Discord Message flag value." +msgstr "Wraps up a Discord Message flag value." + +msgid "See :class:`SystemChannelFlags`." +msgstr "See :class:`SystemChannelFlags`." + +msgid "Returns ``True`` if the message is the original crossposted message." +msgstr "Returns ``True`` if the message is the original crossposted message." + +msgid "Returns ``True`` if the message was crossposted from another channel." +msgstr "Returns ``True`` if the message was crossposted from another channel." + +msgid "Returns ``True`` if the message's embeds have been suppressed." +msgstr "Returns ``True`` if the message's embeds have been suppressed." + +msgid "Returns ``True`` if the source message for this crosspost has been deleted." +msgstr "Returns ``True`` if the source message for this crosspost has been deleted." + +msgid "Returns ``True`` if the source message is an urgent message." +msgstr "Returns ``True`` if the source message is an urgent message." + +msgid "An urgent message is one sent by Discord Trust and Safety." +msgstr "An urgent message is one sent by Discord Trust and Safety." + +msgid "Returns ``True`` if the source message is associated with a thread." +msgstr "Returns ``True`` if the source message is associated with a thread." + +msgid "Returns ``True`` if the source message is ephemeral." +msgstr "Returns ``True`` if the source message is ephemeral." + +msgid "Returns ``True`` if the source message is deferred." +msgstr "Returns ``True`` if the source message is deferred." + +msgid "The user sees a 'thinking' state." +msgstr "The user sees a 'thinking' state." + +msgid "Returns ``True`` if some roles are failed to mention in a thread." +msgstr "Returns ``True`` if some roles are failed to mention in a thread." + +msgid "Returns ``True`` if the source message does not trigger push and desktop notifications." +msgstr "Returns ``True`` if the source message does not trigger push and desktop notifications." + +msgid "Users will still receive mentions." +msgstr "Users will still receive mentions." + +msgid "Returns ``True`` if this message is a voice message." +msgstr "Returns ``True`` if this message is a voice message." + +msgid "Wraps up the Discord Attachment flags." +msgstr "Wraps up the Discord Attachment flags." + +msgid "Returns ``True`` if the attachment is a clip." +msgstr "Returns ``True`` if the attachment is a clip." + +msgid "Returns ``True`` if the attachment is a thumbnail." +msgstr "Returns ``True`` if the attachment is a thumbnail." + +msgid "Returns ``True`` if the attachment has been remixed." +msgstr "Returns ``True`` if the attachment has been remixed." + +msgid "Wraps up the Discord User Public flags." +msgstr "Wraps up the Discord User Public flags." + +msgid "Checks if two PublicUserFlags are equal." +msgstr "Checks if two PublicUserFlags are equal." + +msgid "Checks if two PublicUserFlags are not equal." +msgstr "Checks if two PublicUserFlags are not equal." + +msgid "Returns ``True`` if the user is a Discord Employee." +msgstr "Returns ``True`` if the user is a Discord Employee." + +msgid "Returns ``True`` if the user is a Discord Partner." +msgstr "Returns ``True`` if the user is a Discord Partner." + +msgid "Returns ``True`` if the user is a HypeSquad Events member." +msgstr "Returns ``True`` if the user is a HypeSquad Events member." + +msgid "Returns ``True`` if the user is a Bug Hunter" +msgstr "Returns ``True`` if the user is a Bug Hunter" + +msgid "Returns ``True`` if the user is marked as dismissed Nitro promotion" +msgstr "Returns ``True`` if the user is marked as dismissed Nitro promotion" + +msgid "Returns ``True`` if the user is a HypeSquad Bravery member." +msgstr "Returns ``True`` if the user is a HypeSquad Bravery member." + +msgid "Returns ``True`` if the user is a HypeSquad Brilliance member." +msgstr "Returns ``True`` if the user is a HypeSquad Brilliance member." + +msgid "Returns ``True`` if the user is a HypeSquad Balance member." +msgstr "Returns ``True`` if the user is a HypeSquad Balance member." + +msgid "Returns ``True`` if the user is an Early Supporter." +msgstr "Returns ``True`` if the user is an Early Supporter." + +msgid "Returns ``True`` if the user is a Team User." +msgstr "Returns ``True`` if the user is a Team User." + +msgid "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." +msgstr "Returns ``True`` if the user is a system user (i.e. represents Discord officially)." + +msgid "Returns ``True`` if the user is a Bug Hunter Level 2" +msgstr "Returns ``True`` if the user is a Bug Hunter Level 2" + +msgid "Returns ``True`` if the user is a Verified Bot." +msgstr "Returns ``True`` if the user is a Verified Bot." + +msgid "Returns ``True`` if the user is an Early Verified Bot Developer." +msgstr "Returns ``True`` if the user is an Early Verified Bot Developer." + +msgid "An alias for :attr:`verified_bot_developer`." +msgstr "An alias for :attr:`verified_bot_developer`." + +msgid "Returns ``True`` if the user is a Discord Certified Moderator." +msgstr "Returns ``True`` if the user is a Discord Certified Moderator." + +msgid "Returns ``True`` if the bot has set an interactions endpoint url." +msgstr "Returns ``True`` if the bot has set an interactions endpoint url." + +msgid "Returns ``True`` if the user is an Active Developer." +msgstr "Returns ``True`` if the user is an Active Developer." + +msgid "List[:class:`UserFlags`]: Returns all public flags the user has." +msgstr "List[:class:`UserFlags`]: Returns all public flags the user has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.enums.UserFlags\\`\\]`" + +msgid "Wraps up the Discord Channel flags." +msgstr "Wraps up the Discord Channel flags." + +msgid "Checks if two ChannelFlags are equal." +msgstr "Checks if two ChannelFlags are equal." + +msgid "Checks if two ChannelFlags are not equal." +msgstr "Checks if two ChannelFlags are not equal." + +msgid "Returns ``True`` if the thread is pinned to the top of its parent forum channel." +msgstr "Returns ``True`` if the thread is pinned to the top of its parent forum channel." + +msgid "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." +msgstr "Returns ``True`` if a tag is required to be specified when creating a thread in a :class:`ForumChannel`." + +msgid "Wraps up the Discord SKU flags." +msgstr "Wraps up the Discord SKU flags." + +msgid "Checks if two SKUFlags are equal." +msgstr "Checks if two SKUFlags are equal." + +msgid "Checks if two SKUFlags are not equal." +msgstr "Checks if two SKUFlags are not equal." + +msgid "Returns ``True`` if the SKU is available for purchase." +msgstr "Returns ``True`` if the SKU is available for purchase." + +msgid "Returns ``True`` if the SKU is a guild subscription." +msgstr "Returns ``True`` if the SKU is a guild subscription." + +msgid "Returns ``True`` if the SKU is a user subscription." +msgstr "Returns ``True`` if the SKU is a user subscription." + +msgid "Wraps up the Discord Member flags." +msgstr "Wraps up the Discord Member flags." + +msgid "Checks if two MemberFlags are equal." +msgstr "Checks if two MemberFlags are equal." + +msgid "Checks if two MemberFlags are not equal." +msgstr "Checks if two MemberFlags are not equal." + +msgid "Returns ``True`` if the member left and rejoined the guild." +msgstr "Returns ``True`` if the member left and rejoined the guild." + +msgid "Returns ``True`` if the member has completed onboarding." +msgstr "Returns ``True`` if the member has completed onboarding." + +msgid "Returns ``True`` if the member is exempt from verification requirements." +msgstr "Returns ``True`` if the member is exempt from verification requirements." + +msgid "This can be edited through :func:`~discord.Member.edit`." +msgstr "This can be edited through :func:`~discord.Member.edit`." + +msgid "Returns ``True`` if the member has started onboarding." +msgstr "Returns ``True`` if the member has started onboarding." + +msgid "Wraps up the Discord Role flags." +msgstr "Wraps up the Discord Role flags." + +msgid "Checks if two RoleFlags are equal." +msgstr "Checks if two RoleFlags are equal." + +msgid "Checks if two RoleFlags are not equal." +msgstr "Checks if two RoleFlags are not equal." + +msgid "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." +msgstr "Returns ``True`` if the role is selectable in one of the guild's :class:`~discord.OnboardingPrompt`." + +msgid "Colour" +msgstr "Colour" + +msgid "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." +msgstr "Represents a Discord role colour. This class is similar to a (red, green, blue) :class:`tuple`." + +msgid "There is an alias for this called Color." +msgstr "There is an alias for this called Color." + +msgid "Checks if two colours are equal." +msgstr "Checks if two colours are equal." + +msgid "Checks if two colours are not equal." +msgstr "Checks if two colours are not equal." + +msgid "Return the colour's hash." +msgstr "Return the colour's hash." + +msgid "Returns the hex format for the colour." +msgstr "Returns the hex format for the colour." + +msgid "Returns the raw colour value." +msgstr "Returns the raw colour value." + +msgid "The raw integer colour value." +msgstr "The raw integer colour value." + +msgid "Returns the red component of the colour." +msgstr "Returns the red component of the colour." + +msgid "Returns the green component of the colour." +msgstr "Returns the green component of the colour." + +msgid "Returns the blue component of the colour." +msgstr "Returns the blue component of the colour." + +msgid "Returns an (r, g, b) tuple representing the colour." +msgstr "Returns an (r, g, b) tuple representing the colour." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\, \\:py\\:class\\:\\`int\\`\\]`" + +msgid "Constructs a :class:`Colour` from an RGB tuple." +msgstr "Constructs a :class:`Colour` from an RGB tuple." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "Constructs a :class:`Colour` from an HSV tuple." +msgstr "Constructs a :class:`Colour` from an HSV tuple." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0``." + +msgid "A factory method that returns a :class:`Colour` with a random hue." +msgstr "A factory method that returns a :class:`Colour` with a random hue." + +msgid "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." +msgstr "The random algorithm works by choosing a colour with a random hue but with maxed out saturation and value." + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used. .. versionadded:: 1.7" + +msgid "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." +msgstr "The seed to initialize the RNG with. If ``None`` is passed the default RNG is used." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1abc9c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x11806a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x57F287``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x2ecc71``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x1f8b4c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x3498db``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x206694``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x206694``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x9b59b6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x71368a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe91e63``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xad1457``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf1c40f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xc27c0e``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe67e22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xa84300``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xED4245``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xe74c3c``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x992d22``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x95a5a6``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x607d8b``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x979c9f``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x546e7a``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x7289da``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x5865F2``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x99aab5``." + +msgid "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0x36393F``. This will appear transparent on Discord's dark theme. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xEB459E``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xFEE75C``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" +msgstr "A factory method that returns a :class:`Colour` with a value of ``0xf47fff``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CT\\`\\`\\, bound\\= Colour\\)`" + +msgid "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" +msgstr "A factory method that returns a :class:`Colour` corresponding to the embed colours on discord clients, with a value of:" + +msgid "``0x2B2D31`` (dark)" +msgstr "``0x2B2D31`` (dark)" + +msgid "``0xEEEFF1`` (light)" +msgstr "``0xEEEFF1`` (light)" + +msgid "``0x000000`` (amoled)." +msgstr "``0x000000`` (amoled)." + +msgid "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." +msgstr "The theme colour to apply, must be one of \"dark\", \"light\", or \"amoled\"." + +msgid "Activity" +msgstr "Activity" + +msgid "Represents an activity in Discord." +msgstr "Represents an activity in Discord." + +msgid "This could be an activity such as streaming, playing, listening or watching." +msgstr "This could be an activity such as streaming, playing, listening or watching." + +msgid "For memory optimisation purposes, some activities are offered in slimmed down versions:" +msgstr "For memory optimisation purposes, some activities are offered in slimmed down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "The application ID of the game." +msgstr "The application ID of the game." + +msgid "The name of the activity." +msgstr "The name of the activity." + +msgid "A stream URL that the activity could be doing." +msgstr "A stream URL that the activity could be doing." + +msgid "The type of activity currently being done." +msgstr "The type of activity currently being done." + +msgid ":class:`ActivityType`" +msgstr ":class:`ActivityType`" + +msgid "The user's current party status or text used for a custom status." +msgstr "The user's current party status or text used for a custom status." + +msgid "The detail of the user's current activity." +msgstr "The detail of the user's current activity." + +msgid "A dictionary of timestamps. It contains the following optional keys:" +msgstr "A dictionary of timestamps. It contains the following optional keys:" + +msgid "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." +msgstr "``start``: Corresponds to when the user started doing the activity in milliseconds since Unix epoch." + +msgid "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." +msgstr "``end``: Corresponds to when the user will finish doing the activity in milliseconds since Unix epoch." + +msgid "Dict[:class:`str`, :class:`int`]" +msgstr "Dict[:class:`str`, :class:`int`]" + +msgid "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" +msgstr "A dictionary representing the images and their hover text of an activity. It contains the following optional keys:" + +msgid "``large_image``: A string representing the ID for the large image asset." +msgstr "``large_image``: A string representing the ID for the large image asset." + +msgid "``large_text``: A string representing the text when hovering over the large image asset." +msgstr "``large_text``: A string representing the text when hovering over the large image asset." + +msgid "``small_image``: A string representing the ID for the small image asset." +msgstr "``small_image``: A string representing the ID for the small image asset." + +msgid "``small_text``: A string representing the text when hovering over the small image asset." +msgstr "``small_text``: A string representing the text when hovering over the small image asset." + +msgid "Dict[:class:`str`, :class:`str`]" +msgstr "Dict[:class:`str`, :class:`str`]" + +msgid "A dictionary representing the activity party. It contains the following optional keys:" +msgstr "A dictionary representing the activity party. It contains the following optional keys:" + +msgid "``id``: A string representing the party ID." +msgstr "``id``: A string representing the party ID." + +msgid "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." +msgstr "``size``: A list of up to two integer elements denoting (current_size, maximum_size)." + +msgid "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" +msgstr "Dict[:class:`str`, Union[:class:`str`, List[:class:`int`]]]" + +msgid "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" +msgstr "A list of dictionaries representing custom buttons shown in a rich presence. Each dictionary contains the following keys:" + +msgid "``label``: A string representing the text shown on the button." +msgstr "``label``: A string representing the text shown on the button." + +msgid "``url``: A string representing the URL opened upon clicking the button." +msgstr "``url``: A string representing the URL opened upon clicking the button." + +msgid "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." +msgstr "Bots cannot access a user's activity button URLs. Therefore, the type of this attribute will be List[:class:`str`] when received through the gateway." + +msgid "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" +msgstr "Union[List[Dict[:class:`str`, :class:`str`]], List[:class:`str`]]" + +msgid "The emoji that belongs to this activity." +msgstr "The emoji that belongs to this activity." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "When the user started doing this activity in UTC, if applicable." +msgstr "When the user started doing this activity in UTC, if applicable." + +msgid "When the user will stop doing this activity in UTC, if applicable." +msgstr "When the user will stop doing this activity in UTC, if applicable." + +msgid "Returns a URL pointing to the large image asset of this activity if applicable." +msgstr "Returns a URL pointing to the large image asset of this activity if applicable." + +msgid "Returns a URL pointing to the small image asset of this activity if applicable." +msgstr "Returns a URL pointing to the small image asset of this activity if applicable." + +msgid "Returns the large image asset hover text of this activity if applicable." +msgstr "Returns the large image asset hover text of this activity if applicable." + +msgid "Returns the small image asset hover text of this activity if applicable." +msgstr "Returns the small image asset hover text of this activity if applicable." + +msgid "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." +msgstr "The base activity that all user-settable activities inherit from. A user-settable activity is one that can be used in :meth:`Client.change_presence`." + +msgid "The following types currently count as user-settable:" +msgstr "The following types currently count as user-settable:" + +msgid ":class:`Activity`" +msgstr ":class:`Activity`" + +msgid ":class:`CustomActivity`" +msgstr ":class:`CustomActivity`" + +msgid "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." +msgstr "Note that although these types are considered user-settable by the library, Discord typically ignores certain combinations of activity depending on what is currently set. This behaviour may change in the future so there are no guarantees on whether Discord will actually let you set these types." + +msgid "When the user started doing this activity in UTC." +msgstr "When the user started doing this activity in UTC." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord game." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord game." + +msgid "This is typically displayed via **Playing** on the official Discord client." +msgstr "This is typically displayed via **Playing** on the official Discord client." + +msgid "Checks if two games are equal." +msgstr "Checks if two games are equal." + +msgid "Checks if two games are not equal." +msgstr "Checks if two games are not equal." + +msgid "Returns the game's hash." +msgstr "Returns the game's hash." + +msgid "Returns the game's name." +msgstr "Returns the game's name." + +msgid "The game's name." +msgstr "The game's name." + +msgid "Returns the game's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the game's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.playing`." +msgstr "It always returns :attr:`ActivityType.playing`." + +msgid "When the user started playing this game in UTC, if applicable." +msgstr "When the user started playing this game in UTC, if applicable." + +msgid "When the user will stop playing this game in UTC, if applicable." +msgstr "When the user will stop playing this game in UTC, if applicable." + +msgid "A slimmed down version of :class:`Activity` that represents a Discord streaming status." +msgstr "A slimmed down version of :class:`Activity` that represents a Discord streaming status." + +msgid "This is typically displayed via **Streaming** on the official Discord client." +msgstr "This is typically displayed via **Streaming** on the official Discord client." + +msgid "Checks if two streams are equal." +msgstr "Checks if two streams are equal." + +msgid "Checks if two streams are not equal." +msgstr "Checks if two streams are not equal." + +msgid "Returns the stream's hash." +msgstr "Returns the stream's hash." + +msgid "Returns the stream's name." +msgstr "Returns the stream's name." + +msgid "Where the user is streaming from (ie. YouTube, Twitch)." +msgstr "Where the user is streaming from (ie. YouTube, Twitch)." + +msgid "The stream's name." +msgstr "The stream's name." + +msgid "An alias for :attr:`name`" +msgstr "An alias for :attr:`name`" + +msgid "The game being streamed." +msgstr "The game being streamed." + +msgid "The stream's URL." +msgstr "The stream's URL." + +msgid "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." +msgstr "A dictionary comprised of similar keys than those in :attr:`Activity.assets`." + +msgid "It always returns :attr:`ActivityType.streaming`." +msgstr "It always returns :attr:`ActivityType.streaming`." + +msgid "If provided, the twitch name of the user streaming." +msgstr "If provided, the twitch name of the user streaming." + +msgid "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." +msgstr "This corresponds to the ``large_image`` key of the :attr:`Streaming.assets` dictionary if it starts with ``twitch:``. Typically this is set by the Discord client." + +msgid "Represents a Custom activity from Discord." +msgstr "Represents a Custom activity from Discord." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the custom status text." +msgstr "Returns the custom status text." + +msgid "The custom activity's name." +msgstr "The custom activity's name." + +msgid "The emoji to pass to the activity, if any." +msgstr "The emoji to pass to the activity, if any." + +msgid "The text used for the custom activity." +msgstr "The text used for the custom activity." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.custom`." +msgstr "It always returns :attr:`ActivityType.custom`." + +msgid "Permissions" +msgstr "Permissions" + +msgid "Wraps up the Discord permission value." +msgstr "Wraps up the Discord permission value." + +msgid "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." +msgstr "The properties provided are two way. You can set and retrieve individual bits using the properties as if they were regular bools. This allows you to edit permissions." + +msgid "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." +msgstr "You can now use keyword arguments to initialize :class:`Permissions` similar to :meth:`update`." + +msgid "Checks if two permissions are equal." +msgstr "Checks if two permissions are equal." + +msgid "Checks if two permissions are not equal." +msgstr "Checks if two permissions are not equal." + +msgid "Checks if a permission is a subset of another permission." +msgstr "Checks if a permission is a subset of another permission." + +msgid "Checks if a permission is a superset of another permission." +msgstr "Checks if a permission is a superset of another permission." + +msgid "Checks if a permission is a strict subset of another permission." +msgstr "Checks if a permission is a strict subset of another permission." + +msgid "Adds two permissions together. Equivalent to ``x | y``." +msgstr "Adds two permissions together. Equivalent to ``x | y``." + +msgid "Subtracts two permissions from each other." +msgstr "Subtracts two permissions from each other." + +msgid "Returns the union of two permissions. Equivalent to ``x + y``." +msgstr "Returns the union of two permissions. Equivalent to ``x + y``." + +msgid "Returns the intersection of two permissions." +msgstr "Returns the intersection of two permissions." + +msgid "Returns the inverse of a permission." +msgstr "Returns the inverse of a permission." + +msgid "Checks if a permission is a strict superset of another permission." +msgstr "Checks if a permission is a strict superset of another permission." + +msgid "Return the permission's hash." +msgstr "Return the permission's hash." + +msgid "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(perm, value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." +msgstr "The raw value. This value is a bit array field of a 53-bit integer representing the currently available permissions. You should query permissions via the properties rather than using this raw value." + +msgid "Returns ``True`` if self has the same or fewer permissions as other." +msgstr "Returns ``True`` if self has the same or fewer permissions as other." + +msgid "Returns ``True`` if self has the same or more permissions as other." +msgstr "Returns ``True`` if self has the same or more permissions as other." + +msgid "Returns ``True`` if the permissions on other are a strict subset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict subset of those on self." + +msgid "Returns ``True`` if the permissions on other are a strict superset of those on self." +msgstr "Returns ``True`` if the permissions on other are a strict superset of those on self." + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``False``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all permissions set to ``True``." + +msgid "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A :class:`Permissions` with all channel-specific permissions set to ``True`` and the guild-specific ones set to ``False``. The guild-specific permissions are currently: :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid ":attr:`manage_emojis`" +msgstr ":attr:`manage_emojis`" + +msgid ":attr:`view_audit_log`" +msgstr ":attr:`view_audit_log`" + +msgid ":attr:`view_guild_insights`" +msgstr ":attr:`view_guild_insights`" + +msgid ":attr:`manage_guild`" +msgstr ":attr:`manage_guild`" + +msgid ":attr:`change_nickname`" +msgstr ":attr:`change_nickname`" + +msgid ":attr:`manage_nicknames`" +msgstr ":attr:`manage_nicknames`" + +msgid ":attr:`kick_members`" +msgstr ":attr:`kick_members`" + +msgid ":attr:`ban_members`" +msgstr ":attr:`ban_members`" + +msgid ":attr:`administrator`" +msgstr ":attr:`administrator`" + +msgid "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." +msgstr "Added :attr:`stream`, :attr:`priority_speaker` and :attr:`use_slash_commands` permissions." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`use_external_stickers`, :attr:`send_messages_in_threads` and :attr:`request_to_speak` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"General\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." +msgstr "Permission :attr:`read_messages` is now included in the general permissions, but permissions :attr:`administrator`, :attr:`create_instant_invite`, :attr:`kick_members`, :attr:`ban_members`, :attr:`change_nickname` and :attr:`manage_nicknames` are no longer part of the general permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Membership\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Text\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." +msgstr "Permission :attr:`read_messages` is no longer part of the text permissions. Added :attr:`use_slash_commands` permission." + +msgid "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." +msgstr "Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`, :attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions." + +msgid "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." +msgstr "A factory method that creates a :class:`Permissions` with all \"Voice\" permissions from the official Discord UI set to ``True``." + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Channel\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Stage Moderator\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" +msgstr "A factory method that creates a :class:`Permissions` with all \"Advanced\" permissions from the official Discord UI set to ``True``. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= Permissions\\)`" + +msgid "Bulk updates this permission object." +msgstr "Bulk updates this permission object." + +msgid "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." +msgstr "Allows you to set multiple attributes by using keyword arguments. The names must be equivalent to the properties listed. Extraneous key/value pairs will be silently ignored." + +msgid "A list of key/value pairs to bulk update permissions with." +msgstr "A list of key/value pairs to bulk update permissions with." + +msgid "Returns ``True`` if the user can create instant invites." +msgstr "Returns ``True`` if the user can create instant invites." + +msgid "Returns ``True`` if the user can kick users from the guild." +msgstr "Returns ``True`` if the user can kick users from the guild." + +msgid "Returns ``True`` if a user can ban users from the guild." +msgstr "Returns ``True`` if a user can ban users from the guild." + +msgid "Returns ``True`` if a user is an administrator. This role overrides all other permissions." +msgstr "Returns ``True`` if a user is an administrator. This role overrides all other permissions." + +msgid "This also bypasses all channel-specific overrides." +msgstr "This also bypasses all channel-specific overrides." + +msgid "Returns ``True`` if a user can edit, delete, or create channels in the guild." +msgstr "Returns ``True`` if a user can edit, delete, or create channels in the guild." + +msgid "This also corresponds to the \"Manage Channel\" channel-specific override." +msgstr "This also corresponds to the \"Manage Channel\" channel-specific override." + +msgid "Returns ``True`` if a user can edit guild properties." +msgstr "Returns ``True`` if a user can edit guild properties." + +msgid "Returns ``True`` if a user can add reactions to messages." +msgstr "Returns ``True`` if a user can add reactions to messages." + +msgid "Returns ``True`` if a user can view the guild's audit log." +msgstr "Returns ``True`` if a user can view the guild's audit log." + +msgid "Returns ``True`` if a user can be more easily heard while talking." +msgstr "Returns ``True`` if a user can be more easily heard while talking." + +msgid "Returns ``True`` if a user can stream in a voice channel." +msgstr "Returns ``True`` if a user can stream in a voice channel." + +msgid "Returns ``True`` if a user can view all or specific channels." +msgstr "Returns ``True`` if a user can view all or specific channels." + +msgid "An alias for :attr:`view_channel`." +msgstr "An alias for :attr:`view_channel`." + +msgid "Returns ``True`` if a user can send messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send messages from all or specific text channels." + +msgid "Returns ``True`` if a user can send TTS messages from all or specific text channels." +msgstr "Returns ``True`` if a user can send TTS messages from all or specific text channels." + +msgid "Returns ``True`` if a user can delete or pin messages in a text channel." +msgstr "Returns ``True`` if a user can delete or pin messages in a text channel." + +msgid "Note that there are currently no ways to edit other people's messages." +msgstr "Note that there are currently no ways to edit other people's messages." + +msgid "Returns ``True`` if a user's messages will automatically be embedded by Discord." +msgstr "Returns ``True`` if a user's messages will automatically be embedded by Discord." + +msgid "Returns ``True`` if a user can send files in their messages." +msgstr "Returns ``True`` if a user can send files in their messages." + +msgid "Returns ``True`` if a user can read a text channel's previous messages." +msgstr "Returns ``True`` if a user can read a text channel's previous messages." + +msgid "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." +msgstr "Returns ``True`` if a user's @everyone or @here will mention everyone in the text channel." + +msgid "Returns ``True`` if a user can use emojis from other guilds." +msgstr "Returns ``True`` if a user can use emojis from other guilds." + +msgid "An alias for :attr:`external_emojis`." +msgstr "An alias for :attr:`external_emojis`." + +msgid "Returns ``True`` if a user can view the guild's insights." +msgstr "Returns ``True`` if a user can view the guild's insights." + +msgid "Returns ``True`` if a user can connect to a voice channel." +msgstr "Returns ``True`` if a user can connect to a voice channel." + +msgid "Returns ``True`` if a user can speak in a voice channel." +msgstr "Returns ``True`` if a user can speak in a voice channel." + +msgid "Returns ``True`` if a user can mute other users." +msgstr "Returns ``True`` if a user can mute other users." + +msgid "Returns ``True`` if a user can deafen other users." +msgstr "Returns ``True`` if a user can deafen other users." + +msgid "Returns ``True`` if a user can move users between other voice channels." +msgstr "Returns ``True`` if a user can move users between other voice channels." + +msgid "Returns ``True`` if a user can use voice activation in voice channels." +msgstr "Returns ``True`` if a user can use voice activation in voice channels." + +msgid "Returns ``True`` if a user can change their nickname in the guild." +msgstr "Returns ``True`` if a user can change their nickname in the guild." + +msgid "Returns ``True`` if a user can change other user's nickname in the guild." +msgstr "Returns ``True`` if a user can change other user's nickname in the guild." + +msgid "Returns ``True`` if a user can create or edit roles less than their role's position." +msgstr "Returns ``True`` if a user can create or edit roles less than their role's position." + +msgid "This also corresponds to the \"Manage Permissions\" channel-specific override." +msgstr "This also corresponds to the \"Manage Permissions\" channel-specific override." + +msgid "An alias for :attr:`manage_roles`." +msgstr "An alias for :attr:`manage_roles`." + +msgid "Returns ``True`` if a user can create, edit, or delete webhooks." +msgstr "Returns ``True`` if a user can create, edit, or delete webhooks." + +msgid "Returns ``True`` if a user can create, edit, or delete emojis." +msgstr "Returns ``True`` if a user can create, edit, or delete emojis." + +msgid "An alias for :attr:`manage_emojis`." +msgstr "An alias for :attr:`manage_emojis`." + +msgid "Returns ``True`` if a user can use slash commands." +msgstr "Returns ``True`` if a user can use slash commands." + +msgid "An alias for :attr:`use_slash_commands`." +msgstr "An alias for :attr:`use_slash_commands`." + +msgid "Returns ``True`` if a user can request to speak in a stage channel." +msgstr "Returns ``True`` if a user can request to speak in a stage channel." + +msgid "Returns ``True`` if a user can manage guild events." +msgstr "Returns ``True`` if a user can manage guild events." + +msgid "Returns ``True`` if a user can manage threads." +msgstr "Returns ``True`` if a user can manage threads." + +msgid "Returns ``True`` if a user can create public threads." +msgstr "Returns ``True`` if a user can create public threads." + +msgid "Returns ``True`` if a user can create private threads." +msgstr "Returns ``True`` if a user can create private threads." + +msgid "Returns ``True`` if a user can use stickers from other guilds." +msgstr "Returns ``True`` if a user can use stickers from other guilds." + +msgid "An alias for :attr:`external_stickers`." +msgstr "An alias for :attr:`external_stickers`." + +msgid "Returns ``True`` if a user can send messages in threads." +msgstr "Returns ``True`` if a user can send messages in threads." + +msgid "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." +msgstr "Returns ``True`` if a user can launch an activity flagged 'EMBEDDED' in a voice channel." + +msgid "Returns ``True`` if a user can moderate members (timeout)." +msgstr "Returns ``True`` if a user can moderate members (timeout)." + +msgid "Returns ``True`` if a member can send voice messages." +msgstr "Returns ``True`` if a member can send voice messages." + +msgid "Returns ``True`` if a member can set voice channel status." +msgstr "Returns ``True`` if a member can set voice channel status." + +msgid "Returns ``True`` if a member can send polls." +msgstr "Returns ``True`` if a member can send polls." + +msgid "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." +msgstr "Returns ``True`` if a member's user-installed apps can show public responses. Users will still be able to use user-installed apps, but responses will be ephemeral." + +msgid "This only applies to apps that are also not installed to the guild." +msgstr "This only applies to apps that are also not installed to the guild." + +msgid "A type that is used to represent a channel specific permission." +msgstr "A type that is used to represent a channel specific permission." + +msgid "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." +msgstr "Unlike a regular :class:`Permissions`\\, the default value of a permission is equivalent to ``None`` and not ``False``. Setting a value to ``False`` is **explicitly** denying that permission, while setting a value to ``True`` is **explicitly** allowing that permission." + +msgid "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." +msgstr "The values supported by this are the same as :class:`Permissions` with the added possibility of it being set to ``None``." + +msgid "Checks if two overwrites are equal." +msgstr "Checks if two overwrites are equal." + +msgid "Checks if two overwrites are not equal." +msgstr "Checks if two overwrites are not equal." + +msgid "Set the value of permissions by their name." +msgstr "Set the value of permissions by their name." + +msgid "Returns the (allow, deny) pair from this overwrite." +msgstr "Returns the (allow, deny) pair from this overwrite." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`tuple\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\, \\:py\\:class\\:\\`\\~discord.permissions.Permissions\\`\\]`" + +msgid "Creates an overwrite from an allow/deny pair of :class:`Permissions`." +msgstr "Creates an overwrite from an allow/deny pair of :class:`Permissions`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`PO\\`\\`\\, bound\\= PermissionOverwrite\\)`" + +msgid "Checks if the permission overwrite is currently empty." +msgstr "Checks if the permission overwrite is currently empty." + +msgid "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." +msgstr "An empty permission overwrite is one that has no overwrites set to ``True`` or ``False``." + +msgid "Indicates if the overwrite is empty." +msgstr "Indicates if the overwrite is empty." + +msgid "Bulk updates this permission overwrite object." +msgstr "Bulk updates this permission overwrite object." + +msgid "A list of key/value pairs to bulk update with." +msgstr "A list of key/value pairs to bulk update with." + +msgid "Application Role Connections" +msgstr "Application Role Connections" + +msgid "Represents role connection metadata for a Discord application." +msgstr "Represents role connection metadata for a Discord application." + +msgid "The type of metadata value." +msgstr "The type of metadata value." + +msgid "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." +msgstr "The key for this metadata field. May only be the ``a-z``, ``0-9``, or ``_`` characters, with a maximum of 50 characters." + +msgid "The name for this metadata field. Maximum 100 characters." +msgstr "The name for this metadata field. Maximum 100 characters." + +msgid "The description for this metadata field. Maximum 200 characters." +msgstr "The description for this metadata field. Maximum 200 characters." + +msgid "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The name localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + +msgid "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." +msgstr "The description localizations for this metadata field. The values of this should be ``\"locale\": \"name\"``. See `here `_ for a list of valid locales." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/enums.po b/docs/locales/zh_CN/LC_MESSAGES/api/enums.po new file mode 100644 index 0000000000..dc333ff02b --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/enums.po @@ -0,0 +1,1771 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Enumerations" +msgstr "Enumerations" + +msgid "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." +msgstr "The API provides some enumerations for certain types of strings to avoid the API from being stringly typed in case the strings change in the future." + +msgid "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." +msgstr "All enumerations are subclasses of an internal class which mimics the behaviour of :class:`enum.Enum`." + +msgid "Specifies the input type of an option." +msgstr "Specifies the input type of an option." + +msgid "A slash subcommand." +msgstr "A slash subcommand." + +msgid "A slash command group." +msgstr "A slash command group." + +msgid "A string." +msgstr "A string." + +msgid "An integer between -2⁵³ and 2⁵³." +msgstr "An integer between -2⁵³ and 2⁵³." + +msgid "IDs, such as 881224361015672863, are often too big for this input type." +msgstr "IDs, such as 881224361015672863, are often too big for this input type." + +msgid "A boolean." +msgstr "A boolean." + +msgid "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" +msgstr "A user from the current channel. This will be converted to an instance of :class:`.User` in private channels, else :class:`.Member`" + +msgid "A channel from the current guild." +msgstr "A channel from the current guild." + +msgid "A role from the current guild." +msgstr "A role from the current guild." + +msgid "A mentionable (user or role)." +msgstr "A mentionable (user or role)." + +msgid "A floating-point number between -2⁵³ and 2⁵³." +msgstr "A floating-point number between -2⁵³ and 2⁵³." + +msgid "An attachment." +msgstr "An attachment." + +msgid "Specifies the type of channel." +msgstr "Specifies the type of channel." + +msgid "A text channel." +msgstr "A text channel." + +msgid "A voice channel." +msgstr "A voice channel." + +msgid "A private text channel. Also called a direct message." +msgstr "A private text channel. Also called a direct message." + +msgid "A private group text channel." +msgstr "A private group text channel." + +msgid "A category channel." +msgstr "A category channel." + +msgid "A guild news channel." +msgstr "A guild news channel." + +msgid "A guild stage voice channel." +msgstr "A guild stage voice channel." + +msgid "A news thread." +msgstr "A news thread." + +msgid "A public thread." +msgstr "A public thread." + +msgid "A private thread." +msgstr "A private thread." + +msgid "A guild directory entry, used in hub guilds, currently in experiment." +msgstr "A guild directory entry, used in hub guilds, currently in experiment." + +msgid "User can only write in threads, similar functionality to a forum." +msgstr "User can only write in threads, similar functionality to a forum." + +msgid "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." +msgstr "Specifies the type of :class:`Message`. This is used to denote if a message is to be interpreted as a system message or a regular message." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "The default message type. This is the same as regular messages." +msgstr "The default message type. This is the same as regular messages." + +msgid "The system message when a user is added to a group private message or a thread." +msgstr "The system message when a user is added to a group private message or a thread." + +msgid "The system message when a user is removed from a group private message or a thread." +msgstr "The system message when a user is removed from a group private message or a thread." + +msgid "The system message denoting call state, e.g. missed call, started call, etc." +msgstr "The system message denoting call state, e.g. missed call, started call, etc." + +msgid "The system message denoting that a channel's name has been changed." +msgstr "The system message denoting that a channel's name has been changed." + +msgid "The system message denoting that a channel's icon has been changed." +msgstr "The system message denoting that a channel's icon has been changed." + +msgid "The system message denoting that a pinned message has been added to a channel." +msgstr "The system message denoting that a pinned message has been added to a channel." + +msgid "The system message denoting that a new member has joined a Guild." +msgstr "The system message denoting that a new member has joined a Guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 1." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 2." + +msgid "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." +msgstr "The system message denoting that a member has \"nitro boosted\" a guild and it achieved level 3." + +msgid "The system message denoting that an announcement channel has been followed." +msgstr "The system message denoting that an announcement channel has been followed." + +msgid "The system message denoting that a member is streaming in the guild." +msgstr "The system message denoting that a member is streaming in the guild." + +msgid "The system message denoting that the guild is no longer eligible for Server Discovery." +msgstr "The system message denoting that the guild is no longer eligible for Server Discovery." + +msgid "The system message denoting that the guild has become eligible again for Server Discovery." +msgstr "The system message denoting that the guild has become eligible again for Server Discovery." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for one week." + +msgid "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." +msgstr "The system message denoting that the guild has failed to meet the Server Discovery requirements for 3 weeks in a row." + +msgid "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." +msgstr "The system message denoting that a thread has been created. This is only sent if the thread has been created from an older message. The period of time required for a message to be considered old cannot be relied upon and is up to Discord." + +msgid "The system message denoting that the author is replying to a message." +msgstr "The system message denoting that the author is replying to a message." + +msgid "The system message denoting that an application (or \"slash\") command was executed." +msgstr "The system message denoting that an application (or \"slash\") command was executed." + +msgid "The system message sent as a reminder to invite people to the guild." +msgstr "The system message sent as a reminder to invite people to the guild." + +msgid "The system message denoting the message in the thread that is the one that started the thread's conversation topic." +msgstr "The system message denoting the message in the thread that is the one that started the thread's conversation topic." + +msgid "The system message denoting that an context menu command was executed." +msgstr "The system message denoting that an context menu command was executed." + +msgid "The system message denoting an action by automod." +msgstr "The system message denoting an action by automod." + +msgid "The system message denoting a role-subscription purchase." +msgstr "The system message denoting a role-subscription purchase." + +msgid "The system message denoting an interaction premium upsell." +msgstr "The system message denoting an interaction premium upsell." + +msgid "The system message denoting that a stage event has started." +msgstr "The system message denoting that a stage event has started." + +msgid "The system message denoting that a stage event has ended." +msgstr "The system message denoting that a stage event has ended." + +msgid "The system message denoting that a stage event has a new speaker." +msgstr "The system message denoting that a stage event has a new speaker." + +msgid "The system message denoting that someone in a stage event is raising their hand." +msgstr "The system message denoting that someone in a stage event is raising their hand." + +msgid "The system message denoting that a stage event has a new topic." +msgstr "The system message denoting that a stage event has a new topic." + +msgid "The system message denoting that a member has subscribed to a guild application." +msgstr "The system message denoting that a member has subscribed to a guild application." + +msgid "Represents Discord User flags." +msgstr "Represents Discord User flags." + +msgid "The user is a Discord Employee." +msgstr "The user is a Discord Employee." + +msgid "The user is a Discord Partner." +msgstr "The user is a Discord Partner." + +msgid "The user is a HypeSquad Events member." +msgstr "The user is a HypeSquad Events member." + +msgid "The user is a Bug Hunter." +msgstr "The user is a Bug Hunter." + +msgid "The user has SMS recovery for Multi Factor Authentication enabled." +msgstr "The user has SMS recovery for Multi Factor Authentication enabled." + +msgid "The user has dismissed the Discord Nitro promotion." +msgstr "The user has dismissed the Discord Nitro promotion." + +msgid "The user is a HypeSquad Bravery member." +msgstr "The user is a HypeSquad Bravery member." + +msgid "The user is a HypeSquad Brilliance member." +msgstr "The user is a HypeSquad Brilliance member." + +msgid "The user is a HypeSquad Balance member." +msgstr "The user is a HypeSquad Balance member." + +msgid "The user is an Early Supporter." +msgstr "The user is an Early Supporter." + +msgid "The user is a Team User." +msgstr "The user is a Team User." + +msgid "Relates to partner/verification applications." +msgstr "Relates to partner/verification applications." + +msgid "The user is a system user (i.e. represents Discord officially)." +msgstr "The user is a system user (i.e. represents Discord officially)." + +msgid "The user has an unread system message." +msgstr "The user has an unread system message." + +msgid "The user is a Bug Hunter Level 2." +msgstr "The user is a Bug Hunter Level 2." + +msgid "The user was deleted for being underage." +msgstr "The user was deleted for being underage." + +msgid "The user is a Verified Bot." +msgstr "The user is a Verified Bot." + +msgid "The user is an Early Verified Bot Developer." +msgstr "The user is an Early Verified Bot Developer." + +msgid "The user is a Moderator Programs Alumni." +msgstr "The user is a Moderator Programs Alumni." + +msgid "The bot has set an interactions endpoint url." +msgstr "The bot has set an interactions endpoint url." + +msgid "The user is disabled for being a spammer." +msgstr "The user is disabled for being a spammer." + +msgid "The user is an Active Developer." +msgstr "The user is an Active Developer." + +msgid "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." +msgstr "Specifies the type of :class:`Activity`. This is used to check how to interpret the activity itself." + +msgid "An unknown activity type. This should generally not happen." +msgstr "An unknown activity type. This should generally not happen." + +msgid "A \"Playing\" activity type." +msgstr "A \"Playing\" activity type." + +msgid "A \"Streaming\" activity type." +msgstr "A \"Streaming\" activity type." + +msgid "A \"Listening\" activity type." +msgstr "A \"Listening\" activity type." + +msgid "A \"Watching\" activity type." +msgstr "A \"Watching\" activity type." + +msgid "A custom activity type." +msgstr "A custom activity type." + +msgid "A competing activity type." +msgstr "A competing activity type." + +msgid "Specifies the type of :class:`Interaction`." +msgstr "Specifies the type of :class:`Interaction`." + +msgid "Represents Discord pinging to see if the interaction response server is alive." +msgstr "Represents Discord pinging to see if the interaction response server is alive." + +msgid "Represents a slash command interaction." +msgstr "Represents a slash command interaction." + +msgid "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." +msgstr "Represents a component-based interaction, i.e. using the Discord Bot UI Kit." + +msgid "Represents a autocomplete interaction for slash commands." +msgstr "Represents a autocomplete interaction for slash commands." + +msgid "Represents a modal-based interaction." +msgstr "Represents a modal-based interaction." + +msgid "Specifies the response type for the interaction." +msgstr "Specifies the response type for the interaction." + +msgid "Pongs the interaction when given a ping." +msgstr "Pongs the interaction when given a ping." + +msgid "See also :meth:`InteractionResponse.pong`" +msgstr "See also :meth:`InteractionResponse.pong`" + +msgid "Respond to the interaction with a message." +msgstr "Respond to the interaction with a message." + +msgid "See also :meth:`InteractionResponse.send_message`" +msgstr "See also :meth:`InteractionResponse.send_message`" + +msgid "Responds to the interaction with a message at a later time." +msgstr "Responds to the interaction with a message at a later time." + +msgid "See also :meth:`InteractionResponse.defer`" +msgstr "See also :meth:`InteractionResponse.defer`" + +msgid "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." +msgstr "Acknowledges the component interaction with a promise that the message will update later (though there is no need to actually update the message)." + +msgid "Responds to the interaction by editing the message." +msgstr "Responds to the interaction by editing the message." + +msgid "See also :meth:`InteractionResponse.edit_message`" +msgstr "See also :meth:`InteractionResponse.edit_message`" + +msgid "Responds to the interaction by sending the autocomplete choices." +msgstr "Responds to the interaction by sending the autocomplete choices." + +msgid "See also :meth:`InteractionResponse.send_autocomplete_result`" +msgstr "See also :meth:`InteractionResponse.send_autocomplete_result`" + +msgid "Responds to the interaction by sending a modal dialog." +msgstr "Responds to the interaction by sending a modal dialog." + +msgid "See also :meth:`InteractionResponse.send_modal`" +msgstr "See also :meth:`InteractionResponse.send_modal`" + +msgid "Represents the component type of a component." +msgstr "Represents the component type of a component." + +msgid "Represents the group component which holds different components in a row." +msgstr "Represents the group component which holds different components in a row." + +msgid "Represents a button component." +msgstr "Represents a button component." + +msgid "Represents a string select component." +msgstr "Represents a string select component." + +msgid "Use :attr:`ComponentType.string_select` instead." +msgstr "Use :attr:`ComponentType.string_select` instead." + +msgid "Represents an input_text component." +msgstr "Represents an input_text component." + +msgid "Represents a user select component." +msgstr "Represents a user select component." + +msgid "Represents a role select component." +msgstr "Represents a role select component." + +msgid "Represents a mentionable select component." +msgstr "Represents a mentionable select component." + +msgid "Represents a channel select component." +msgstr "Represents a channel select component." + +msgid "Represents the style of the button component." +msgstr "Represents the style of the button component." + +msgid "Represents a blurple button for the primary action." +msgstr "Represents a blurple button for the primary action." + +msgid "Represents a grey button for the secondary action." +msgstr "Represents a grey button for the secondary action." + +msgid "Represents a green button for a successful action." +msgstr "Represents a green button for a successful action." + +msgid "Represents a red button for a dangerous action." +msgstr "Represents a red button for a dangerous action." + +msgid "Represents a link button." +msgstr "Represents a link button." + +msgid "Represents a premium button." +msgstr "Represents a premium button." + +msgid "An alias for :attr:`primary`." +msgstr "An alias for :attr:`primary`." + +msgid "An alias for :attr:`secondary`." +msgstr "An alias for :attr:`secondary`." + +msgid "An alias for :attr:`success`." +msgstr "An alias for :attr:`success`." + +msgid "An alias for :attr:`danger`." +msgstr "An alias for :attr:`danger`." + +msgid "An alias for :attr:`link`." +msgstr "An alias for :attr:`link`." + +msgid "Represents the style of the input text component." +msgstr "Represents the style of the input text component." + +msgid "Represents a single-line input text field." +msgstr "Represents a single-line input text field." + +msgid "Represents a multi-line input text field." +msgstr "Represents a multi-line input text field." + +msgid "An alias for :attr:`short`." +msgstr "An alias for :attr:`short`." + +msgid "An alias for :attr:`long`." +msgstr "An alias for :attr:`long`." + +msgid "Specifies the region a voice server belongs to." +msgstr "Specifies the region a voice server belongs to." + +msgid "The Amsterdam region." +msgstr "The Amsterdam region." + +msgid "The Brazil region." +msgstr "The Brazil region." + +msgid "The Dubai region." +msgstr "The Dubai region." + +msgid "The EU Central region." +msgstr "The EU Central region." + +msgid "The EU West region." +msgstr "The EU West region." + +msgid "The Europe region." +msgstr "The Europe region." + +msgid "The Frankfurt region." +msgstr "The Frankfurt region." + +msgid "The Hong Kong region." +msgstr "The Hong Kong region." + +msgid "The India region." +msgstr "The India region." + +msgid "The Japan region." +msgstr "The Japan region." + +msgid "The London region." +msgstr "The London region." + +msgid "The Russia region." +msgstr "The Russia region." + +msgid "The Singapore region." +msgstr "The Singapore region." + +msgid "The South Africa region." +msgstr "The South Africa region." + +msgid "The South Korea region." +msgstr "The South Korea region." + +msgid "The Sydney region." +msgstr "The Sydney region." + +msgid "The US Central region." +msgstr "The US Central region." + +msgid "The US East region." +msgstr "The US East region." + +msgid "The US South region." +msgstr "The US South region." + +msgid "The US West region." +msgstr "The US West region." + +msgid "The Amsterdam region for VIP guilds." +msgstr "The Amsterdam region for VIP guilds." + +msgid "The US East region for VIP guilds." +msgstr "The US East region for VIP guilds." + +msgid "The US West region for VIP guilds." +msgstr "The US West region for VIP guilds." + +msgid "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." +msgstr "Specifies a :class:`Guild`\\'s verification level, which is the criteria in which a member must meet before being able to send messages to the guild." + +msgid "Checks if two verification levels are equal." +msgstr "Checks if two verification levels are equal." + +msgid "Checks if two verification levels are not equal." +msgstr "Checks if two verification levels are not equal." + +msgid "Checks if a verification level is higher than another." +msgstr "Checks if a verification level is higher than another." + +msgid "Checks if a verification level is lower than another." +msgstr "Checks if a verification level is lower than another." + +msgid "Checks if a verification level is higher or equal to another." +msgstr "Checks if a verification level is higher or equal to another." + +msgid "Checks if a verification level is lower or equal to another." +msgstr "Checks if a verification level is lower or equal to another." + +msgid "No criteria set." +msgstr "No criteria set." + +msgid "Member must have a verified email on their Discord account." +msgstr "Member must have a verified email on their Discord account." + +msgid "Member must have a verified email and be registered on Discord for more than five minutes." +msgstr "Member must have a verified email and be registered on Discord for more than five minutes." + +msgid "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." +msgstr "Member must have a verified email, be registered on Discord for more than five minutes, and be a member of the guild itself for more than ten minutes." + +msgid "Member must have a verified phone on their Discord account." +msgstr "Member must have a verified phone on their Discord account." + +msgid "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." +msgstr "Specifies whether a :class:`Guild` has notifications on for all messages or mentions only by default." + +msgid "Checks if two notification levels are equal." +msgstr "Checks if two notification levels are equal." + +msgid "Checks if two notification levels are not equal." +msgstr "Checks if two notification levels are not equal." + +msgid "Checks if a notification level is higher than another." +msgstr "Checks if a notification level is higher than another." + +msgid "Checks if a notification level is lower than another." +msgstr "Checks if a notification level is lower than another." + +msgid "Checks if a notification level is higher or equal to another." +msgstr "Checks if a notification level is higher or equal to another." + +msgid "Checks if a notification level is lower or equal to another." +msgstr "Checks if a notification level is lower or equal to another." + +msgid "Members receive notifications for every message regardless of them being mentioned." +msgstr "Members receive notifications for every message regardless of them being mentioned." + +msgid "Members receive notifications for messages they are mentioned in." +msgstr "Members receive notifications for messages they are mentioned in." + +msgid "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." +msgstr "Specifies a :class:`Guild`\\'s explicit content filter, which is the machine learning algorithms that Discord uses to detect if an image contains pornography or otherwise explicit content." + +msgid "Checks if two content filter levels are equal." +msgstr "Checks if two content filter levels are equal." + +msgid "Checks if two content filter levels are not equal." +msgstr "Checks if two content filter levels are not equal." + +msgid "Checks if a content filter level is higher than another." +msgstr "Checks if a content filter level is higher than another." + +msgid "Checks if a content filter level is lower than another." +msgstr "Checks if a content filter level is lower than another." + +msgid "Checks if a content filter level is higher or equal to another." +msgstr "Checks if a content filter level is higher or equal to another." + +msgid "Checks if a content filter level is lower or equal to another." +msgstr "Checks if a content filter level is lower or equal to another." + +msgid "The guild does not have the content filter enabled." +msgstr "The guild does not have the content filter enabled." + +msgid "The guild has the content filter enabled for members without a role." +msgstr "The guild has the content filter enabled for members without a role." + +msgid "The guild has the content filter enabled for every member." +msgstr "The guild has the content filter enabled for every member." + +msgid "Specifies a :class:`Member` 's status." +msgstr "Specifies a :class:`Member` 's status." + +msgid "The member is online." +msgstr "The member is online." + +msgid "The member is offline." +msgstr "The member is offline." + +msgid "The member is idle." +msgstr "The member is idle." + +msgid "The member is \"Do Not Disturb\"." +msgstr "The member is \"Do Not Disturb\"." + +msgid "An alias for :attr:`dnd`." +msgstr "An alias for :attr:`dnd`." + +msgid "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." +msgstr "The member is \"invisible\". In reality, this is only used in sending a presence a la :meth:`Client.change_presence`. When you receive a user's presence this will be :attr:`offline` instead." + +msgid "The member is streaming." +msgstr "The member is streaming." + +msgid "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." +msgstr "Represents the type of action being done for a :class:`AuditLogEntry`\\, which is retrievable via :meth:`Guild.audit_logs`." + +msgid "The guild has updated. Things that trigger this include:" +msgstr "The guild has updated. Things that trigger this include:" + +msgid "Changing the guild vanity URL" +msgstr "Changing the guild vanity URL" + +msgid "Changing the guild invite splash" +msgstr "Changing the guild invite splash" + +msgid "Changing the guild AFK channel or timeout" +msgstr "Changing the guild AFK channel or timeout" + +msgid "Changing the guild voice server region" +msgstr "Changing the guild voice server region" + +msgid "Changing the guild icon, banner, or discovery splash" +msgstr "Changing the guild icon, banner, or discovery splash" + +msgid "Changing the guild moderation settings" +msgstr "Changing the guild moderation settings" + +msgid "Changing things related to the guild widget" +msgstr "Changing things related to the guild widget" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Guild`." + +msgid "Possible attributes for :class:`AuditLogDiff`:" +msgstr "Possible attributes for :class:`AuditLogDiff`:" + +msgid ":attr:`~AuditLogDiff.afk_channel`" +msgstr ":attr:`~AuditLogDiff.afk_channel`" + +msgid ":attr:`~AuditLogDiff.system_channel`" +msgstr ":attr:`~AuditLogDiff.system_channel`" + +msgid ":attr:`~AuditLogDiff.afk_timeout`" +msgstr ":attr:`~AuditLogDiff.afk_timeout`" + +msgid ":attr:`~AuditLogDiff.default_message_notifications`" +msgstr ":attr:`~AuditLogDiff.default_message_notifications`" + +msgid ":attr:`~AuditLogDiff.explicit_content_filter`" +msgstr ":attr:`~AuditLogDiff.explicit_content_filter`" + +msgid ":attr:`~AuditLogDiff.mfa_level`" +msgstr ":attr:`~AuditLogDiff.mfa_level`" + +msgid ":attr:`~AuditLogDiff.name`" +msgstr ":attr:`~AuditLogDiff.name`" + +msgid ":attr:`~AuditLogDiff.owner`" +msgstr ":attr:`~AuditLogDiff.owner`" + +msgid ":attr:`~AuditLogDiff.splash`" +msgstr ":attr:`~AuditLogDiff.splash`" + +msgid ":attr:`~AuditLogDiff.discovery_splash`" +msgstr ":attr:`~AuditLogDiff.discovery_splash`" + +msgid ":attr:`~AuditLogDiff.icon`" +msgstr ":attr:`~AuditLogDiff.icon`" + +msgid ":attr:`~AuditLogDiff.banner`" +msgstr ":attr:`~AuditLogDiff.banner`" + +msgid ":attr:`~AuditLogDiff.vanity_url_code`" +msgstr ":attr:`~AuditLogDiff.vanity_url_code`" + +msgid "A new channel was created." +msgstr "A new channel was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is either a :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after`." + +msgid ":attr:`~AuditLogDiff.type`" +msgstr ":attr:`~AuditLogDiff.type`" + +msgid ":attr:`~AuditLogDiff.overwrites`" +msgstr ":attr:`~AuditLogDiff.overwrites`" + +msgid "A channel was updated. Things that trigger this include:" +msgstr "A channel was updated. Things that trigger this include:" + +msgid "The channel name or topic was changed" +msgstr "The channel name or topic was changed" + +msgid "The channel bitrate was changed" +msgstr "The channel bitrate was changed" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`abc.GuildChannel` or :class:`Object` with an ID." + +msgid "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." +msgstr "A more filled out object in the :class:`Object` case can be found by using :attr:`~AuditLogEntry.after` or :attr:`~AuditLogEntry.before`." + +msgid ":attr:`~AuditLogDiff.position`" +msgstr ":attr:`~AuditLogDiff.position`" + +msgid ":attr:`~AuditLogDiff.topic`" +msgstr ":attr:`~AuditLogDiff.topic`" + +msgid ":attr:`~AuditLogDiff.bitrate`" +msgstr ":attr:`~AuditLogDiff.bitrate`" + +msgid ":attr:`~AuditLogDiff.rtc_region`" +msgstr ":attr:`~AuditLogDiff.rtc_region`" + +msgid ":attr:`~AuditLogDiff.video_quality_mode`" +msgstr ":attr:`~AuditLogDiff.video_quality_mode`" + +msgid ":attr:`~AuditLogDiff.default_auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.default_auto_archive_duration`" + +msgid "A channel was deleted." +msgstr "A channel was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with an ID." + +msgid "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." +msgstr "A more filled out object can be found by using the :attr:`~AuditLogEntry.before` object." + +msgid "A channel permission overwrite was created." +msgstr "A channel permission overwrite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is either a :class:`Role` or :class:`Member`. If the object is not found then it is a :class:`Object` with an ID being filled, a name, and a ``type`` attribute set to either ``'role'`` or ``'member'`` to help dictate what type of ID it is." + +msgid ":attr:`~AuditLogDiff.deny`" +msgstr ":attr:`~AuditLogDiff.deny`" + +msgid ":attr:`~AuditLogDiff.allow`" +msgstr ":attr:`~AuditLogDiff.allow`" + +msgid ":attr:`~AuditLogDiff.id`" +msgstr ":attr:`~AuditLogDiff.id`" + +msgid "A channel permission overwrite was changed, this is typically when the permission values change." +msgstr "A channel permission overwrite was changed, this is typically when the permission values change." + +msgid "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." +msgstr "See :attr:`overwrite_create` for more information on how the :attr:`~AuditLogEntry.target` and :attr:`~AuditLogEntry.extra` fields are set." + +msgid "A channel permission overwrite was deleted." +msgstr "A channel permission overwrite was deleted." + +msgid "A member was kicked." +msgstr "A member was kicked." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got kicked." + +msgid "When this is the action, :attr:`~AuditLogEntry.changes` is empty." +msgstr "When this is the action, :attr:`~AuditLogEntry.changes` is empty." + +msgid "A member prune was triggered." +msgstr "A member prune was triggered." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is set to ``None``." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with two attributes:" + +msgid "``delete_members_days``: An integer specifying how far the prune was." +msgstr "``delete_members_days``: An integer specifying how far the prune was." + +msgid "``members_removed``: An integer specifying how many members were removed." +msgstr "``members_removed``: An integer specifying how many members were removed." + +msgid "A member was banned." +msgstr "A member was banned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got banned." + +msgid "A member was unbanned." +msgstr "A member was unbanned." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`User` who got unbanned." + +msgid "A member has updated. This triggers in the following situations:" +msgstr "A member has updated. This triggers in the following situations:" + +msgid "A nickname was changed" +msgstr "A nickname was changed" + +msgid "They were server muted or deafened (or it was undone)" +msgstr "They were server muted or deafened (or it was undone)" + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got updated." + +msgid ":attr:`~AuditLogDiff.nick`" +msgstr ":attr:`~AuditLogDiff.nick`" + +msgid ":attr:`~AuditLogDiff.mute`" +msgstr ":attr:`~AuditLogDiff.mute`" + +msgid ":attr:`~AuditLogDiff.deaf`" +msgstr ":attr:`~AuditLogDiff.deaf`" + +msgid "A member's role has been updated. This triggers when a member either gains a role or loses a role." +msgstr "A member's role has been updated. This triggers when a member either gains a role or loses a role." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who got the role." + +msgid ":attr:`~AuditLogDiff.roles`" +msgstr ":attr:`~AuditLogDiff.roles`" + +msgid "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." +msgstr "A member's voice channel has been updated. This triggers when a member is moved to a different voice channel." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the members were moved." + +msgid "``count``: An integer specifying how many members were moved." +msgstr "``count``: An integer specifying how many members were moved." + +msgid "A member's voice state has changed. This triggers when a member is force disconnected from voice." +msgstr "A member's voice state has changed. This triggers when a member is force disconnected from voice." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.extra` is set to an unspecified proxy object with one attribute:" + +msgid "``count``: An integer specifying how many members were disconnected." +msgstr "``count``: An integer specifying how many members were disconnected." + +msgid "A bot was added to the guild." +msgstr "A bot was added to the guild." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` which was added to the guild." + +msgid "A new role was created." +msgstr "A new role was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Role` or a :class:`Object` with the ID." + +msgid ":attr:`~AuditLogDiff.colour`" +msgstr ":attr:`~AuditLogDiff.colour`" + +msgid ":attr:`~AuditLogDiff.mentionable`" +msgstr ":attr:`~AuditLogDiff.mentionable`" + +msgid ":attr:`~AuditLogDiff.hoist`" +msgstr ":attr:`~AuditLogDiff.hoist`" + +msgid ":attr:`~AuditLogDiff.permissions`" +msgstr ":attr:`~AuditLogDiff.permissions`" + +msgid "A role was updated. This triggers in the following situations:" +msgstr "A role was updated. This triggers in the following situations:" + +msgid "The name has changed" +msgstr "The name has changed" + +msgid "The permissions have changed" +msgstr "The permissions have changed" + +msgid "The colour has changed" +msgstr "The colour has changed" + +msgid "Its hoist/mentionable state has changed" +msgstr "Its hoist/mentionable state has changed" + +msgid "A role was deleted." +msgstr "A role was deleted." + +msgid "An invite was created." +msgstr "An invite was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was created." + +msgid ":attr:`~AuditLogDiff.max_age`" +msgstr ":attr:`~AuditLogDiff.max_age`" + +msgid ":attr:`~AuditLogDiff.code`" +msgstr ":attr:`~AuditLogDiff.code`" + +msgid ":attr:`~AuditLogDiff.temporary`" +msgstr ":attr:`~AuditLogDiff.temporary`" + +msgid ":attr:`~AuditLogDiff.inviter`" +msgstr ":attr:`~AuditLogDiff.inviter`" + +msgid ":attr:`~AuditLogDiff.channel`" +msgstr ":attr:`~AuditLogDiff.channel`" + +msgid ":attr:`~AuditLogDiff.uses`" +msgstr ":attr:`~AuditLogDiff.uses`" + +msgid ":attr:`~AuditLogDiff.max_uses`" +msgstr ":attr:`~AuditLogDiff.max_uses`" + +msgid "An invite was updated." +msgstr "An invite was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was updated." + +msgid "An invite was deleted." +msgstr "An invite was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Invite` that was deleted." + +msgid "A webhook was created." +msgstr "A webhook was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the webhook ID." + +msgid ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" +msgstr ":attr:`~AuditLogDiff.type` (always set to ``1`` if so)" + +msgid "A webhook was updated. This trigger in the following situations:" +msgstr "A webhook was updated. This trigger in the following situations:" + +msgid "The webhook name changed" +msgstr "The webhook name changed" + +msgid "The webhook channel changed" +msgstr "The webhook channel changed" + +msgid ":attr:`~AuditLogDiff.avatar`" +msgstr ":attr:`~AuditLogDiff.avatar`" + +msgid "A webhook was deleted." +msgstr "A webhook was deleted." + +msgid "An emoji was created." +msgstr "An emoji was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Emoji` or :class:`Object` with the emoji ID." + +msgid "An emoji was updated. This triggers when the name has changed." +msgstr "An emoji was updated. This triggers when the name has changed." + +msgid "An emoji was deleted." +msgstr "An emoji was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the emoji ID." + +msgid "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." +msgstr "A message was deleted by a moderator. Note that this only triggers if the message was deleted by someone other than the author." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message deleted." + +msgid "``count``: An integer specifying how many messages were deleted." +msgstr "``count``: An integer specifying how many messages were deleted." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message got deleted." + +msgid "Messages were bulk deleted by a moderator." +msgstr "Messages were bulk deleted by a moderator." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`TextChannel` or :class:`Object` with the ID of the channel that was purged." + +msgid "A message was pinned in a channel." +msgstr "A message was pinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message pinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was pinned." + +msgid "``message_id``: the ID of the message which was pinned." +msgstr "``message_id``: the ID of the message which was pinned." + +msgid "A message was unpinned in a channel." +msgstr "A message was unpinned in a channel." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Member` or :class:`User` who had their message unpinned." + +msgid "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." +msgstr "``channel``: A :class:`TextChannel` or :class:`Object` with the channel ID where the message was unpinned." + +msgid "``message_id``: the ID of the message which was unpinned." +msgstr "``message_id``: the ID of the message which was unpinned." + +msgid "A guild integration was created." +msgstr "A guild integration was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was created." + +msgid "A guild integration was updated." +msgstr "A guild integration was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was updated." + +msgid "A guild integration was deleted." +msgstr "A guild integration was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Object` with the integration ID of the integration which was deleted." + +msgid "A stage instance was started." +msgstr "A stage instance was started." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was created." + +msgid ":attr:`~AuditLogDiff.privacy_level`" +msgstr ":attr:`~AuditLogDiff.privacy_level`" + +msgid "A stage instance was updated." +msgstr "A stage instance was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`StageInstance` or :class:`Object` with the ID of the stage instance which was updated." + +msgid "A stage instance was ended." +msgstr "A stage instance was ended." + +msgid "A sticker was created." +msgstr "A sticker was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`GuildSticker` or :class:`Object` with the ID of the sticker which was updated." + +msgid ":attr:`~AuditLogDiff.emoji`" +msgstr ":attr:`~AuditLogDiff.emoji`" + +msgid ":attr:`~AuditLogDiff.format_type`" +msgstr ":attr:`~AuditLogDiff.format_type`" + +msgid ":attr:`~AuditLogDiff.description`" +msgstr ":attr:`~AuditLogDiff.description`" + +msgid ":attr:`~AuditLogDiff.available`" +msgstr ":attr:`~AuditLogDiff.available`" + +msgid "A sticker was updated." +msgstr "A sticker was updated." + +msgid "A sticker was deleted." +msgstr "A sticker was deleted." + +msgid "A scheduled event was created." +msgstr "A scheduled event was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`ScheduledEvent` or :class:`Object` with the ID of the thread which was deleted." + +msgid ":attr:`~discord.ScheduledEvent.location`" +msgstr ":attr:`~discord.ScheduledEvent.location`" + +msgid ":attr:`~discord.ScheduledEvent.status`" +msgstr ":attr:`~discord.ScheduledEvent.status`" + +msgid ":attr:`~discord.ScheduledEventLocation.type`" +msgstr ":attr:`~discord.ScheduledEventLocation.type`" + +msgid ":attr:`~discord.ScheduledEvent.image`" +msgstr ":attr:`~discord.ScheduledEvent.image`" + +msgid "A scheduled event was updated." +msgstr "A scheduled event was updated." + +msgid "A scheduled event was deleted." +msgstr "A scheduled event was deleted." + +msgid "A thread was created." +msgstr "A thread was created." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was created." + +msgid ":attr:`~AuditLogDiff.archived`" +msgstr ":attr:`~AuditLogDiff.archived`" + +msgid ":attr:`~AuditLogDiff.locked`" +msgstr ":attr:`~AuditLogDiff.locked`" + +msgid ":attr:`~AuditLogDiff.auto_archive_duration`" +msgstr ":attr:`~AuditLogDiff.auto_archive_duration`" + +msgid ":attr:`~AuditLogDiff.invitable`" +msgstr ":attr:`~AuditLogDiff.invitable`" + +msgid "A thread was updated." +msgstr "A thread was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was updated." + +msgid "A thread was deleted." +msgstr "A thread was deleted." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`Thread` or :class:`Object` with the ID of the thread which was deleted." + +msgid "An application command's permissions were updated." +msgstr "An application command's permissions were updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is an :class:`Object` with the ID of the command that had it's permissions edited." + +msgid ":attr:`~AuditLogDiff.command_id`" +msgstr ":attr:`~AuditLogDiff.command_id`" + +msgid "A guild auto moderation rule was created." +msgstr "A guild auto moderation rule was created." + +msgid ":attr:`~AuditLogDiff.enabled`" +msgstr ":attr:`~AuditLogDiff.enabled`" + +msgid ":attr:`~AuditLogDiff.trigger_type`" +msgstr ":attr:`~AuditLogDiff.trigger_type`" + +msgid ":attr:`~AuditLogDiff.event_type`" +msgstr ":attr:`~AuditLogDiff.event_type`" + +msgid ":attr:`~AuditLogDiff.trigger_metadata`" +msgstr ":attr:`~AuditLogDiff.trigger_metadata`" + +msgid ":attr:`~AuditLogDiff.actions`" +msgstr ":attr:`~AuditLogDiff.actions`" + +msgid ":attr:`~AuditLogDiff.exempt_roles`" +msgstr ":attr:`~AuditLogDiff.exempt_roles`" + +msgid ":attr:`~AuditLogDiff.exempt_channels`" +msgstr ":attr:`~AuditLogDiff.exempt_channels`" + +msgid "A guild auto moderation rule was updated." +msgstr "A guild auto moderation rule was updated." + +msgid "A guild auto moderation rule was deleted." +msgstr "A guild auto moderation rule was deleted." + +msgid "A message was blocked by auto moderation." +msgstr "A message was blocked by auto moderation." + +msgid "A message was flagged by auto moderation." +msgstr "A message was flagged by auto moderation." + +msgid "A member was timed out by auto moderation." +msgstr "A member was timed out by auto moderation." + +msgid "A creator monetization request was created." +msgstr "A creator monetization request was created." + +msgid "The creator monetization terms were accepted." +msgstr "The creator monetization terms were accepted." + +msgid "A voice channel status was updated." +msgstr "A voice channel status was updated." + +msgid "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." +msgstr "When this is the action, the type of :attr:`~AuditLogEntry.target` is the :class:`VoiceChannel` or :class:`Object` with the ID of the voice channel which was updated." + +msgid ":attr:`~AuditLogDiff.status`" +msgstr ":attr:`~AuditLogDiff.status`" + +msgid "A voice channel status was deleted." +msgstr "A voice channel status was deleted." + +msgid "Represents the category that the :class:`AuditLogAction` belongs to." +msgstr "Represents the category that the :class:`AuditLogAction` belongs to." + +msgid "This can be retrieved via :attr:`AuditLogEntry.category`." +msgstr "This can be retrieved via :attr:`AuditLogEntry.category`." + +msgid "The action is the creation of something." +msgstr "The action is the creation of something." + +msgid "The action is the deletion of something." +msgstr "The action is the deletion of something." + +msgid "The action is the update of something." +msgstr "The action is the update of something." + +msgid "Represents the membership state of a team member retrieved through :func:`Client.application_info`." +msgstr "Represents the membership state of a team member retrieved through :func:`Client.application_info`." + +msgid "Represents an invited member." +msgstr "Represents an invited member." + +msgid "Represents a member currently in the team." +msgstr "Represents a member currently in the team." + +msgid "Represents the type of webhook that can be received." +msgstr "Represents the type of webhook that can be received." + +msgid "Represents a webhook that can post messages to channels with a token." +msgstr "Represents a webhook that can post messages to channels with a token." + +msgid "Represents a webhook that is internally managed by Discord, used for following channels." +msgstr "Represents a webhook that is internally managed by Discord, used for following channels." + +msgid "Represents a webhook that is used for interactions or applications." +msgstr "Represents a webhook that is used for interactions or applications." + +msgid "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." +msgstr "Represents the behaviour the :class:`Integration` should perform when a user's subscription has finished." + +msgid "There is an alias for this called ``ExpireBehavior``." +msgstr "There is an alias for this called ``ExpireBehavior``." + +msgid "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." +msgstr "This will remove the :attr:`StreamIntegration.role` from the user when their subscription is finished." + +msgid "This will kick the user when their subscription is finished." +msgstr "This will kick the user when their subscription is finished." + +msgid "Represents the default avatar of a Discord :class:`User`" +msgstr "Represents the default avatar of a Discord :class:`User`" + +msgid "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" +msgstr "Represents the default avatar with the color blurple. See also :attr:`Colour.blurple`" + +msgid "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" +msgstr "Represents the default avatar with the color grey. See also :attr:`Colour.greyple`" + +msgid "An alias for :attr:`grey`." +msgstr "An alias for :attr:`grey`." + +msgid "Represents the default avatar with the color green. See also :attr:`Colour.green`" +msgstr "Represents the default avatar with the color green. See also :attr:`Colour.green`" + +msgid "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" +msgstr "Represents the default avatar with the color orange. See also :attr:`Colour.orange`" + +msgid "Represents the default avatar with the color red. See also :attr:`Colour.red`" +msgstr "Represents the default avatar with the color red. See also :attr:`Colour.red`" + +msgid "Represents the type of sticker." +msgstr "Represents the type of sticker." + +msgid "Represents a standard sticker that all Nitro users can use." +msgstr "Represents a standard sticker that all Nitro users can use." + +msgid "Represents a custom sticker created in a guild." +msgstr "Represents a custom sticker created in a guild." + +msgid "Represents the type of sticker images." +msgstr "Represents the type of sticker images." + +msgid "Represents a sticker with a png image." +msgstr "Represents a sticker with a png image." + +msgid "Represents a sticker with an apng image." +msgstr "Represents a sticker with an apng image." + +msgid "Represents a sticker with a lottie image." +msgstr "Represents a sticker with a lottie image." + +msgid "Represents a sticker with a gif image." +msgstr "Represents a sticker with a gif image." + +msgid "Represents the invite type for voice channel invites." +msgstr "Represents the invite type for voice channel invites." + +msgid "The invite doesn't target anyone or anything." +msgstr "The invite doesn't target anyone or anything." + +msgid "A stream invite that targets a user." +msgstr "A stream invite that targets a user." + +msgid "A invite that targets an embedded application." +msgstr "A invite that targets an embedded application." + +msgid "Note that your bot won't be verified if you provide users access to this" +msgstr "Note that your bot won't be verified if you provide users access to this" + +msgid "Represents the camera video quality mode for voice channel participants." +msgstr "Represents the camera video quality mode for voice channel participants." + +msgid "Represents auto camera video quality." +msgstr "Represents auto camera video quality." + +msgid "Represents full camera video quality." +msgstr "Represents full camera video quality." + +msgid "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents a stage instance's privacy level. Stage event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "The stage instance can only be joined by members of the guild." +msgstr "The stage instance can only be joined by members of the guild." + +msgid "Alias for :attr:`.closed`" +msgstr "Alias for :attr:`.closed`" + +msgid "Represents the NSFW level of a guild." +msgstr "Represents the NSFW level of a guild." + +msgid "Checks if two NSFW levels are equal." +msgstr "Checks if two NSFW levels are equal." + +msgid "Checks if two NSFW levels are not equal." +msgstr "Checks if two NSFW levels are not equal." + +msgid "Checks if a NSFW level is higher than another." +msgstr "Checks if a NSFW level is higher than another." + +msgid "Checks if a NSFW level is lower than another." +msgstr "Checks if a NSFW level is lower than another." + +msgid "Checks if a NSFW level is higher or equal to another." +msgstr "Checks if a NSFW level is higher or equal to another." + +msgid "Checks if a NSFW level is lower or equal to another." +msgstr "Checks if a NSFW level is lower or equal to another." + +msgid "The guild has not been categorised yet." +msgstr "The guild has not been categorised yet." + +msgid "The guild contains NSFW content." +msgstr "The guild contains NSFW content." + +msgid "The guild does not contain any NSFW content." +msgstr "The guild does not contain any NSFW content." + +msgid "The guild may contain NSFW content." +msgstr "The guild may contain NSFW content." + +msgid "Represents an embedded activity application." +msgstr "Represents an embedded activity application." + +msgid "Some might be boost-only or gated." +msgstr "Some might be boost-only or gated." + +msgid "Discord said that they won't verify bots who gives access to embedded activities." +msgstr "Discord said that they won't verify bots who gives access to embedded activities." + +msgid "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." +msgstr "Read more here: https://discord.com/channels/613425648685547541/697236247739105340/901153332075315321." + +msgid "Represents the embedded application Ask Away." +msgstr "Represents the embedded application Ask Away." + +msgid "Represents the embedded application Awkword." +msgstr "Represents the embedded application Awkword." + +msgid "This activity has been removed." +msgstr "This activity has been removed." + +msgid "Development version of :attr:`.awkword`." +msgstr "Development version of :attr:`.awkword`." + +msgid "Represents the embedded application Bash Out." +msgstr "Represents the embedded application Bash Out." + +msgid "Represents the embedded application Betrayal.io." +msgstr "Represents the embedded application Betrayal.io." + +msgid "Represents the embedded application Blazing 8s." +msgstr "Represents the embedded application Blazing 8s." + +msgid "Development version of :attr:`.blazing_8s`." +msgstr "Development version of :attr:`.blazing_8s`." + +msgid "QA version of :attr:`.blazing_8s`." +msgstr "QA version of :attr:`.blazing_8s`." + +msgid "Staging version of :attr:`.blazing_8s`." +msgstr "Staging version of :attr:`.blazing_8s`." + +msgid "Represents the embedded application Bobble League." +msgstr "Represents the embedded application Bobble League." + +msgid "Represents the embedded application Checkers in the Park." +msgstr "Represents the embedded application Checkers in the Park." + +msgid "Development version of :attr:`.checkers_in_the_park`." +msgstr "Development version of :attr:`.checkers_in_the_park`." + +msgid "QA version of :attr:`.checkers_in_the_park`." +msgstr "QA version of :attr:`.checkers_in_the_park`." + +msgid "Staging version of :attr:`.checkers_in_the_park`." +msgstr "Staging version of :attr:`.checkers_in_the_park`." + +msgid "Represents the embedded application Chess in the Park." +msgstr "Represents the embedded application Chess in the Park." + +msgid "Development version of :attr:`.chess_in_the_park`." +msgstr "Development version of :attr:`.chess_in_the_park`." + +msgid "QA version of :attr:`.chess_in_the_park`." +msgstr "QA version of :attr:`.chess_in_the_park`." + +msgid "Staging version of :attr:`.chess_in_the_park`." +msgstr "Staging version of :attr:`.chess_in_the_park`." + +msgid "Represents the embedded application Decoders Development." +msgstr "Represents the embedded application Decoders Development." + +msgid "Represents the embedded application Doodle Crew." +msgstr "Represents the embedded application Doodle Crew." + +msgid "Development version of :attr:`.doodle_crew`." +msgstr "Development version of :attr:`.doodle_crew`." + +msgid "Represents the embedded application Fishington.io." +msgstr "Represents the embedded application Fishington.io." + +msgid "Represents the embedded application Gartic Phone." +msgstr "Represents the embedded application Gartic Phone." + +msgid "Represents the embedded application Jamspace." +msgstr "Represents the embedded application Jamspace." + +msgid "Represents the embedded application Know What I Meme." +msgstr "Represents the embedded application Know What I Meme." + +msgid "Represents the embedded application Land.io." +msgstr "Represents the embedded application Land.io." + +msgid "Represents the embedded application Letter League." +msgstr "Represents the embedded application Letter League." + +msgid "Development version of :attr:`.letter_league`." +msgstr "Development version of :attr:`.letter_league`." + +msgid "Represents the embedded application Poker Night." +msgstr "Represents the embedded application Poker Night." + +msgid "Development version of :attr:`.poker_night`." +msgstr "Development version of :attr:`.poker_night`." + +msgid "QA version of :attr:`.poker_night`." +msgstr "QA version of :attr:`.poker_night`." + +msgid "Staging version of :attr:`.poker_night`." +msgstr "Staging version of :attr:`.poker_night`." + +msgid "Represents the embedded application Putt Party." +msgstr "Represents the embedded application Putt Party." + +msgid "Development version of :attr:`.putt_party`." +msgstr "Development version of :attr:`.putt_party`." + +msgid "QA version of :attr:`.putt_party`." +msgstr "QA version of :attr:`.putt_party`." + +msgid "Staging version of :attr:`.putt_party`." +msgstr "Staging version of :attr:`.putt_party`." + +msgid "Represents the embedded application Putts." +msgstr "Represents the embedded application Putts." + +msgid "Represents the embedded application Sketch Heads." +msgstr "Represents the embedded application Sketch Heads." + +msgid "Development version of :attr:`.sketch_heads`." +msgstr "Development version of :attr:`.sketch_heads`." + +msgid "Represents the embedded application Sketchy Artist." +msgstr "Represents the embedded application Sketchy Artist." + +msgid "Development version of :attr:`.sketchy_artist`." +msgstr "Development version of :attr:`.sketchy_artist`." + +msgid "Represents the embedded application Spell Cast." +msgstr "Represents the embedded application Spell Cast." + +msgid "Staging version of :attr:`.spell_cast`." +msgstr "Staging version of :attr:`.spell_cast`." + +msgid "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." +msgstr "Same as :attr:`~EmbeddedActivity.youtube_together` with remote feature which allows guild admins to limit the playlist access." + +msgid "Development version of :attr:`.watch_together`." +msgstr "Development version of :attr:`.watch_together`." + +msgid "Represents the embedded application word snacks." +msgstr "Represents the embedded application word snacks." + +msgid "Development version of :attr:`.word_snacks`." +msgstr "Development version of :attr:`.word_snacks`." + +msgid "Represents the embedded application Youtube Together." +msgstr "Represents the embedded application Youtube Together." + +msgid "Represents the status of a scheduled event." +msgstr "Represents the status of a scheduled event." + +msgid "The scheduled event hasn't started or been canceled yet." +msgstr "The scheduled event hasn't started or been canceled yet." + +msgid "The scheduled event is in progress." +msgstr "The scheduled event is in progress." + +msgid "The scheduled event is over." +msgstr "The scheduled event is over." + +msgid "The scheduled event has been canceled before it can start." +msgstr "The scheduled event has been canceled before it can start." + +msgid "Alias to :attr:`canceled`." +msgstr "Alias to :attr:`canceled`." + +msgid "Represents a scheduled event location type (otherwise known as the entity type on the API)." +msgstr "Represents a scheduled event location type (otherwise known as the entity type on the API)." + +msgid "Represents a scheduled event that is happening in a :class:`StageChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`StageChannel`." + +msgid "Represents a scheduled event that is happening in a :class:`VoiceChannel`." +msgstr "Represents a scheduled event that is happening in a :class:`VoiceChannel`." + +msgid "Represents a generic location as a :class:`str`." +msgstr "Represents a generic location as a :class:`str`." + +msgid "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." +msgstr "Represents the privacy level of a scheduled event. Scheduled event privacy levels can only have 1 possible value at the moment so this shouldn't really be used." + +msgid "Represents a scheduled event that is only available to members inside the guild." +msgstr "Represents a scheduled event that is only available to members inside the guild." + +msgid "Represents an application role connection metadata type." +msgstr "Represents an application role connection metadata type." + +msgid "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." +msgstr "Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a ``metadata value`` for each user and guilds specify the required ``guild's configured value`` within the guild role settings." + +msgid "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is less than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is greater than or equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``)." + +msgid "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is less than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." +msgstr "The metadata value (``datetime``) is greater than or equal to the guild's configured value (``integer``; the number of days before the current date)." + +msgid "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is equal to the guild's configured value (``integer``; 1)." + +msgid "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." +msgstr "The metadata value (``integer``) is not equal to the guild's configured value (``integer``; 1)." + +msgid "Represents an AutoMod trigger type." +msgstr "Represents an AutoMod trigger type." + +msgid "Represents a keyword rule trigger, which are customizable by a guild." +msgstr "Represents a keyword rule trigger, which are customizable by a guild." + +msgid "Possible attributes for :class:`AutoModTriggerMetadata`:" +msgstr "Possible attributes for :class:`AutoModTriggerMetadata`:" + +msgid ":attr:`~AutoModTriggerMetadata.keyword_filter`" +msgstr ":attr:`~AutoModTriggerMetadata.keyword_filter`" + +msgid ":attr:`~AutoModTriggerMetadata.regex_patterns`" +msgstr ":attr:`~AutoModTriggerMetadata.regex_patterns`" + +msgid ":attr:`~AutoModTriggerMetadata.allow_list`" +msgstr ":attr:`~AutoModTriggerMetadata.allow_list`" + +msgid "Represents a preset keyword rule trigger." +msgstr "Represents a preset keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.presets`" +msgstr ":attr:`~AutoModTriggerMetadata.presets`" + +msgid "Represents the spam rule trigger." +msgstr "Represents the spam rule trigger." + +msgid "There are no possible attributes for :class:`AutoModTriggerMetadata`." +msgstr "There are no possible attributes for :class:`AutoModTriggerMetadata`." + +msgid "Represents a mention spam keyword rule trigger." +msgstr "Represents a mention spam keyword rule trigger." + +msgid ":attr:`~AutoModTriggerMetadata.mention_total_limit`" +msgstr ":attr:`~AutoModTriggerMetadata.mention_total_limit`" + +msgid "Represents a harmful link rule trigger." +msgstr "Represents a harmful link rule trigger." + +msgid "Removed by Discord and merged into :attr:`spam`." +msgstr "Removed by Discord and merged into :attr:`spam`." + +msgid "Represents an AutoMod event type." +msgstr "Represents an AutoMod event type." + +msgid "Represents a message send AutoMod event." +msgstr "Represents a message send AutoMod event." + +msgid "Represents the type of action AutoMod is performing." +msgstr "Represents the type of action AutoMod is performing." + +msgid "Represents a block message action." +msgstr "Represents a block message action." + +msgid "Represents a send alert message action." +msgstr "Represents a send alert message action." + +msgid "Represents a timeout action." +msgstr "Represents a timeout action." + +msgid "Represents an AutoMod keyword preset type." +msgstr "Represents an AutoMod keyword preset type." + +msgid "Represents the profanity keyword preset rule." +msgstr "Represents the profanity keyword preset rule." + +msgid "Represents the sexual content keyword preset rule." +msgstr "Represents the sexual content keyword preset rule." + +msgid "Represents the slurs keyword preset rule." +msgstr "Represents the slurs keyword preset rule." + +msgid "Represents how each prompt's options are displayed." +msgstr "Represents how each prompt's options are displayed." + +msgid "The options will appear in a grid form, showing the name and description." +msgstr "The options will appear in a grid form, showing the name and description." + +msgid "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." +msgstr "The options will appear in a dropdown (similar to select menus), but without the description displayed. This is **enforced** if there are more than 12 options in the prompt." + +msgid "Represents the current mode of the guild's onboarding flow." +msgstr "Represents the current mode of the guild's onboarding flow." + +msgid "Only default channels are counted towards the Onboarding requirements." +msgstr "Only default channels are counted towards the Onboarding requirements." + +msgid "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." +msgstr "Both default channels and questions (``OnboardingPrompt``s) will count towards the Onboarding requirements." + +msgid "Represents a Reaction's type." +msgstr "Represents a Reaction's type." + +msgid "Represents a normal reaction." +msgstr "Represents a normal reaction." + +msgid "Represents a super reaction." +msgstr "Represents a super reaction." + +msgid "Represents an SKU's type." +msgstr "Represents an SKU's type." + +msgid "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." +msgstr "A one-time purchase that is permanent and is not subject to either renewal or consumption, such as lifetime access to an app's premium features." + +msgid "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." +msgstr "A one-time, non-renewable purchase that provides access, such as a temporary power-up or boost in a game." + +msgid "Represents a recurring subscription." +msgstr "Represents a recurring subscription." + +msgid "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." +msgstr "A system-generated group for each subscription SKU created. These types of SKUs are currently unused." + +msgid "Represents an entitlement's type." +msgstr "Represents an entitlement's type." + +msgid "Entitlement was purchased by the user." +msgstr "Entitlement was purchased by the user." + +msgid "Entitlement is for a Discord Nitro subscription." +msgstr "Entitlement is for a Discord Nitro subscription." + +msgid "Entitlement was gifted by the developer." +msgstr "Entitlement was gifted by the developer." + +msgid "Entitlement was purchased by a developer in the application's test mode." +msgstr "Entitlement was purchased by a developer in the application's test mode." + +msgid "Entitlement was granted when the SKU was free." +msgstr "Entitlement was granted when the SKU was free." + +msgid "Entitlement was gifted by another user." +msgstr "Entitlement was gifted by another user." + +msgid "Entitlement was claimed by a user for free as a Nitro subscriber." +msgstr "Entitlement was claimed by a user for free as a Nitro subscriber." + +msgid "Entitlement was purchased as an app subscription." +msgstr "Entitlement was purchased as an app subscription." + +msgid "Represents an entitlement's ownership type." +msgstr "Represents an entitlement's ownership type." + +msgid "Entitlement is owned by a guild." +msgstr "Entitlement is owned by a guild." + +msgid "Entitlement is owned by a user." +msgstr "Entitlement is owned by a user." + +msgid "Represents a poll's layout type." +msgstr "Represents a poll's layout type." + +msgid "Represents the default layout." +msgstr "Represents the default layout." + +msgid "The integration type for an application." +msgstr "The integration type for an application." + +msgid "The integration is added to a guild." +msgstr "The integration is added to a guild." + +msgid "The integration is added to a user account." +msgstr "The integration is added to a user account." + +msgid "The context where an interaction occurs." +msgstr "The context where an interaction occurs." + +msgid "The interaction is in a guild." +msgstr "The interaction is in a guild." + +msgid "The interaction is in the bot's own DM channel with the user." +msgstr "The interaction is in the bot's own DM channel with the user." + +msgid "The interaction is in a private DM or group DM channel." +msgstr "The interaction is in a private DM or group DM channel." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/events.po b/docs/locales/zh_CN/LC_MESSAGES/api/events.po new file mode 100644 index 0000000000..cc86ab0031 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/events.po @@ -0,0 +1,985 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "This section outlines the different types of events listened by :class:`Client`." +msgstr "This section outlines the different types of events listened by :class:`Client`." + +msgid "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" +msgstr "There are 3 ways to register an event, the first way is through the use of :meth:`Client.event`. The second way is through subclassing :class:`Client` and overriding the specific events. The third way is through the use of :meth:`Client.listen`, which can be used to assign multiple event handlers instead of only one like in :meth:`Client.event`. For example:" + +msgid "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." +msgstr "If an event handler raises an exception, :func:`on_error` will be called to handle it, which defaults to print a traceback and ignoring the exception." + +msgid "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." +msgstr "All the events must be a |coroutine_link|_. If they aren't, then you might get unexpected errors. In order to turn a function into a coroutine they must be ``async def`` functions." + +msgid "Application Commands" +msgstr "Application Commands" + +msgid "Called when an application command is received." +msgstr "Called when an application command is received." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The ApplicationContext associated to the command being received." +msgstr "The ApplicationContext associated to the command being received." + +msgid "Called when an application command is completed, after any checks have finished." +msgstr "Called when an application command is completed, after any checks have finished." + +msgid "The ApplicationContext associated to the command that was completed." +msgstr "The ApplicationContext associated to the command that was completed." + +msgid "Called when an application command has an error." +msgstr "Called when an application command has an error." + +msgid "The ApplicationContext associated to the command that has an error." +msgstr "The ApplicationContext associated to the command that has an error." + +msgid "The DiscordException associated to the error." +msgstr "The DiscordException associated to the error." + +msgid "Called when an application command was not found in the bot's internal cache." +msgstr "Called when an application command was not found in the bot's internal cache." + +msgid "The interaction associated to the unknown command." +msgstr "The interaction associated to the unknown command." + +msgid "Audit Logs" +msgstr "Audit Logs" + +msgid "Called when an audit log entry is created." +msgstr "Called when an audit log entry is created." + +msgid "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." +msgstr "The bot must have :attr:`~Permissions.view_audit_log` to receive this, and :attr:`Intents.moderation` must be enabled." + +msgid "The audit log entry that was created." +msgstr "The audit log entry that was created." + +msgid "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." +msgstr "Called when an audit log entry is created. Unlike :func:`on_audit_log_entry`, this is called regardless of the state of the internal user cache." + +msgid "The raw event payload data." +msgstr "The raw event payload data." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Called when an auto moderation rule is created." +msgstr "Called when an auto moderation rule is created." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_configuration` must be enabled." + +msgid "The newly created rule." +msgstr "The newly created rule." + +msgid "Called when an auto moderation rule is updated." +msgstr "Called when an auto moderation rule is updated." + +msgid "The updated rule." +msgstr "The updated rule." + +msgid "Called when an auto moderation rule is deleted." +msgstr "Called when an auto moderation rule is deleted." + +msgid "The deleted rule." +msgstr "The deleted rule." + +msgid "Called when an auto moderation action is executed." +msgstr "Called when an auto moderation action is executed." + +msgid "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." +msgstr "The bot must have :attr:`~Permissions.manage_guild` to receive this, and :attr:`Intents.auto_moderation_execution` must be enabled." + +msgid "The event's data." +msgstr "The event's data." + +msgid "Bans" +msgstr "Bans" + +msgid "Called when user gets banned from a :class:`Guild`." +msgstr "Called when user gets banned from a :class:`Guild`." + +msgid "This requires :attr:`Intents.moderation` to be enabled." +msgstr "This requires :attr:`Intents.moderation` to be enabled." + +msgid "The guild the user got banned from." +msgstr "The guild the user got banned from." + +msgid "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." +msgstr "The user that got banned. Can be either :class:`User` or :class:`Member` depending if the user was in the guild or not at the time of removal." + +msgid "Called when a :class:`User` gets unbanned from a :class:`Guild`." +msgstr "Called when a :class:`User` gets unbanned from a :class:`Guild`." + +msgid "The guild the user got unbanned from." +msgstr "The guild the user got unbanned from." + +msgid "The user that got unbanned." +msgstr "The user that got unbanned." + +msgid "Channels" +msgstr "Channels" + +msgid "Called whenever a private group DM is updated. e.g. changed name or topic." +msgstr "Called whenever a private group DM is updated. e.g. changed name or topic." + +msgid "This requires :attr:`Intents.messages` to be enabled." +msgstr "This requires :attr:`Intents.messages` to be enabled." + +msgid "The updated group channel's old info." +msgstr "The updated group channel's old info." + +msgid "The updated group channel's new info." +msgstr "The updated group channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a private channel." +msgstr "Called whenever a message is pinned or unpinned from a private channel." + +msgid "The private channel that had its pins updated." +msgstr "The private channel that had its pins updated." + +msgid "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." +msgstr "The latest message that was pinned as an aware datetime in UTC. Could be ``None``." + +msgid "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." +msgstr "Called whenever a guild channel is updated. e.g. changed name, topic, permissions." + +msgid "This requires :attr:`Intents.guilds` to be enabled." +msgstr "This requires :attr:`Intents.guilds` to be enabled." + +msgid "The updated guild channel's old info." +msgstr "The updated guild channel's old info." + +msgid "The updated guild channel's new info." +msgstr "The updated guild channel's new info." + +msgid "Called whenever a message is pinned or unpinned from a guild channel." +msgstr "Called whenever a message is pinned or unpinned from a guild channel." + +msgid "The guild channel that had its pins updated." +msgstr "The guild channel that had its pins updated." + +msgid "Called whenever a guild channel is deleted or created." +msgstr "Called whenever a guild channel is deleted or created." + +msgid "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." +msgstr "Note that you can get the guild from :attr:`~abc.GuildChannel.guild`." + +msgid "The guild channel that got created or deleted." +msgstr "The guild channel that got created or deleted." + +msgid "Connection" +msgstr "Connection" + +msgid "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." +msgstr "Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback." + +msgid "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." +msgstr "The information of the exception raised and the exception itself can be retrieved with a standard call to :func:`sys.exc_info`." + +msgid "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." +msgstr "If you want exception to propagate out of the :class:`Client` class you can define an ``on_error`` handler consisting of a single empty :ref:`raise statement `. Exceptions raised by ``on_error`` will not be handled in any way by :class:`Client`." + +msgid "``on_error`` will only be dispatched to :meth:`Client.event`." +msgstr "``on_error`` will only be dispatched to :meth:`Client.event`." + +msgid "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." +msgstr "It will not be received by :meth:`Client.wait_for`, or, if used, :ref:`ext_commands_api_bot` listeners such as :meth:`~ext.commands.Bot.listen` or :meth:`~ext.commands.Cog.listener`." + +msgid "The name of the event that raised the exception." +msgstr "The name of the event that raised the exception." + +msgid "The positional arguments for the event that raised the exception." +msgstr "The positional arguments for the event that raised the exception." + +msgid "The keyword arguments for the event that raised the exception." +msgstr "The keyword arguments for the event that raised the exception." + +msgid "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." +msgstr "Called when the client has successfully connected to Discord. This is not the same as the client being fully prepared, see :func:`on_ready` for that." + +msgid "The warnings on :func:`on_ready` also apply." +msgstr "The warnings on :func:`on_ready` also apply." + +msgid "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." +msgstr "Overriding this event will not call :meth:`Bot.sync_commands`. As a result, :class:`ApplicationCommand` will not be registered." + +msgid "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." +msgstr "Similar to :func:`on_connect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has connected to Discord." + +msgid "The shard ID that has connected." +msgstr "The shard ID that has connected." + +msgid "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." +msgstr "Called when the client has disconnected from Discord, or a connection attempt to Discord has failed. This could happen either through the internet being disconnected, explicit calls to close, or Discord terminating the connection one way or the other." + +msgid "This function can be called many times without a corresponding :func:`on_connect` call." +msgstr "This function can be called many times without a corresponding :func:`on_connect` call." + +msgid "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." +msgstr "Similar to :func:`on_disconnect` except used by :class:`AutoShardedClient` to denote when a particular shard ID has disconnected from Discord." + +msgid "The shard ID that has disconnected." +msgstr "The shard ID that has disconnected." + +msgid "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." +msgstr "Called when the client is done preparing the data received from Discord. Usually after login is successful and the :attr:`Client.guilds` and co. are filled up." + +msgid "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." +msgstr "This function is not guaranteed to be the first event called. Likewise, this function is **not** guaranteed to only be called once. This library implements reconnection logic and thus will end up calling this event whenever a RESUME request fails." + +msgid "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." +msgstr "Similar to :func:`on_ready` except used by :class:`AutoShardedClient` to denote when a particular shard ID has become ready." + +msgid "The shard ID that is ready." +msgstr "The shard ID that is ready." + +msgid "Called when the client has resumed a session." +msgstr "Called when the client has resumed a session." + +msgid "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." +msgstr "Similar to :func:`on_resumed` except used by :class:`AutoShardedClient` to denote when a particular shard ID has resumed a session." + +msgid "The shard ID that has resumed." +msgstr "The shard ID that has resumed." + +msgid "Called whenever a WebSocket event is received from the WebSocket." +msgstr "Called whenever a WebSocket event is received from the WebSocket." + +msgid "This is mainly useful for logging how many events you are receiving from the Discord gateway." +msgstr "This is mainly useful for logging how many events you are receiving from the Discord gateway." + +msgid "The event type from Discord that is received, e.g. ``'READY'``." +msgstr "The event type from Discord that is received, e.g. ``'READY'``." + +msgid "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." +msgstr "Called whenever a message is completely received from the WebSocket, before it's processed and parsed. This event is always dispatched when a complete message is received and the passed data is not parsed in any way." + +msgid "This is only really useful for grabbing the WebSocket stream and debugging purposes." +msgstr "This is only really useful for grabbing the WebSocket stream and debugging purposes." + +msgid "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." +msgstr "This requires setting the ``enable_debug_events`` setting in the :class:`Client`." + +msgid "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages received from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message passed in from the WebSocket library." +msgstr "The message passed in from the WebSocket library." + +msgid "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." +msgstr "Called whenever a send operation is done on the WebSocket before the message is sent. The passed parameter is the message that is being sent to the WebSocket." + +msgid "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." +msgstr "This is only for the messages sent from the client WebSocket. The voice WebSocket will not trigger this event." + +msgid "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." +msgstr "The message that is about to be passed on to the WebSocket library. It can be :class:`bytes` to denote a binary message or :class:`str` to denote a regular text message." + +msgid "Entitlements" +msgstr "Entitlements" + +msgid "Called when a user subscribes to an SKU." +msgstr "Called when a user subscribes to an SKU." + +msgid "The entitlement that was created as a result of the subscription." +msgstr "The entitlement that was created as a result of the subscription." + +msgid "Called when a user's subscription to an Entitlement is renewed for the next billing period." +msgstr "Called when a user's subscription to an Entitlement is renewed for the next billing period." + +msgid "The entitlement that was updated." +msgstr "The entitlement that was updated." + +msgid "Called when a user's entitlement is deleted." +msgstr "Called when a user's entitlement is deleted." + +msgid "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." +msgstr "Entitlements are usually only deleted when Discord issues a refund for a subscription, or manually removes an entitlement from a user." + +msgid "This is not called when a user's subscription is cancelled." +msgstr "This is not called when a user's subscription is cancelled." + +msgid "The entitlement that was deleted." +msgstr "The entitlement that was deleted." + +msgid "Guilds" +msgstr "Guilds" + +msgid "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." +msgstr "Called when a :class:`Guild` is either created by the :class:`Client` or when the :class:`Client` joins a guild." + +msgid "The guild that was joined." +msgstr "The guild that was joined." + +msgid "Called when a :class:`Guild` is removed from the :class:`Client`." +msgstr "Called when a :class:`Guild` is removed from the :class:`Client`." + +msgid "This happens through, but not limited to, these circumstances:" +msgstr "This happens through, but not limited to, these circumstances:" + +msgid "The client got banned." +msgstr "The client got banned." + +msgid "The client got kicked." +msgstr "The client got kicked." + +msgid "The client left the guild." +msgstr "The client left the guild." + +msgid "The client or the guild owner deleted the guild." +msgstr "The client or the guild owner deleted the guild." + +msgid "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" +msgstr "In order for this event to be invoked then the :class:`Client` must have been part of the guild to begin with. (i.e. it is part of :attr:`Client.guilds`)" + +msgid "The guild that got removed." +msgstr "The guild that got removed." + +msgid "Called when a :class:`Guild` is updated, for example:" +msgstr "Called when a :class:`Guild` is updated, for example:" + +msgid "Changed name" +msgstr "Changed name" + +msgid "Changed AFK channel" +msgstr "Changed AFK channel" + +msgid "Changed AFK timeout" +msgstr "Changed AFK timeout" + +msgid "etc." +msgstr "etc." + +msgid "The guild prior to being updated." +msgstr "The guild prior to being updated." + +msgid "The guild after being updated." +msgstr "The guild after being updated." + +msgid "Called when a :class:`Guild` creates or deletes a :class:`Role`." +msgstr "Called when a :class:`Guild` creates or deletes a :class:`Role`." + +msgid "To get the guild it belongs to, use :attr:`Role.guild`." +msgstr "To get the guild it belongs to, use :attr:`Role.guild`." + +msgid "The role that was created or deleted." +msgstr "The role that was created or deleted." + +msgid "Called when a :class:`Role` is changed guild-wide." +msgstr "Called when a :class:`Role` is changed guild-wide." + +msgid "The updated role's old info." +msgstr "The updated role's old info." + +msgid "The updated role's updated info." +msgstr "The updated role's updated info." + +msgid "Called when a :class:`Guild` adds or removes an :class:`Emoji`." +msgstr "Called when a :class:`Guild` adds or removes an :class:`Emoji`." + +msgid "This requires :attr:`Intents.emojis_and_stickers` to be enabled." +msgstr "This requires :attr:`Intents.emojis_and_stickers` to be enabled." + +msgid "The guild who got their emojis updated." +msgstr "The guild who got their emojis updated." + +msgid "A list of emojis before the update." +msgstr "A list of emojis before the update." + +msgid "A list of emojis after the update." +msgstr "A list of emojis after the update." + +msgid "Called when a :class:`Guild` adds or removes a sticker." +msgstr "Called when a :class:`Guild` adds or removes a sticker." + +msgid "The guild who got their stickers updated." +msgstr "The guild who got their stickers updated." + +msgid "A list of stickers before the update." +msgstr "A list of stickers before the update." + +msgid "A list of stickers after the update." +msgstr "A list of stickers after the update." + +msgid "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." +msgstr "Called when a guild becomes available or unavailable. The guild must have existed in the :attr:`Client.guilds` cache." + +msgid "The guild that has changed availability." +msgstr "The guild that has changed availability." + +msgid "Called whenever a webhook is created, modified, or removed from a guild channel." +msgstr "Called whenever a webhook is created, modified, or removed from a guild channel." + +msgid "This requires :attr:`Intents.webhooks` to be enabled." +msgstr "This requires :attr:`Intents.webhooks` to be enabled." + +msgid "The channel that had its webhooks updated." +msgstr "The channel that had its webhooks updated." + +msgid "Integrations" +msgstr "Integrations" + +msgid "Called whenever an integration is created, modified, or removed from a guild." +msgstr "Called whenever an integration is created, modified, or removed from a guild." + +msgid "This requires :attr:`Intents.integrations` to be enabled." +msgstr "This requires :attr:`Intents.integrations` to be enabled." + +msgid "The guild that had its integrations updated." +msgstr "The guild that had its integrations updated." + +msgid "Called when an integration is created." +msgstr "Called when an integration is created." + +msgid "The integration that was created." +msgstr "The integration that was created." + +msgid "Called when an integration is updated." +msgstr "Called when an integration is updated." + +msgid "Called when an integration is deleted." +msgstr "Called when an integration is deleted." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Called when an interaction happened." +msgstr "Called when an interaction happened." + +msgid "This currently happens due to application command invocations or components being used." +msgstr "This currently happens due to application command invocations or components being used." + +msgid "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." +msgstr "This is a low level function that is not generally meant to be used. If you are working with components, consider using the callbacks associated with the :class:`~discord.ui.View` instead as it provides a nicer user experience." + +msgid "The interaction data." +msgstr "The interaction data." + +msgid "Invites" +msgstr "Invites" + +msgid "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is created. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." +msgstr "There is a rare possibility that the :attr:`Invite.guild` and :attr:`Invite.channel` attributes will be of :class:`Object` rather than the respective models." + +msgid "This requires :attr:`Intents.invites` to be enabled." +msgstr "This requires :attr:`Intents.invites` to be enabled." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." +msgstr "Called when an :class:`Invite` is deleted. You must have the :attr:`~Permissions.manage_channels` permission to receive this." + +msgid "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." +msgstr "Outside of those two attributes, the only other attribute guaranteed to be filled by the Discord gateway for this event is :attr:`Invite.code`." + +msgid "The invite that was deleted." +msgstr "The invite that was deleted." + +msgid "Members/Users" +msgstr "Members/Users" + +msgid "Called when a :class:`Member` joins a :class:`Guild`." +msgstr "Called when a :class:`Member` joins a :class:`Guild`." + +msgid "This requires :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.members` to be enabled." + +msgid "The member who joined." +msgstr "The member who joined." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`." + +msgid "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." +msgstr "If the guild or member could not be found in the internal cache, this event will not be called. Alternatively, :func:`on_raw_member_remove` is called regardless of the internal cache." + +msgid "The member who left." +msgstr "The member who left." + +msgid "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." +msgstr "Called when a :class:`Member` leaves a :class:`Guild`. Unlike :func:`on_member_remove`, this is called regardless of the state of the internal member cache." + +msgid "Called when a :class:`Member` updates their profile." +msgstr "Called when a :class:`Member` updates their profile." + +msgid "This is called when one or more of the following things change:" +msgstr "This is called when one or more of the following things change:" + +msgid "nickname" +msgstr "nickname" + +msgid "roles" +msgstr "roles" + +msgid "pending" +msgstr "pending" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid "timed_out" +msgstr "timed_out" + +msgid "The updated member's old info." +msgstr "The updated member's old info." + +msgid "The updated member's updated info." +msgstr "The updated member's updated info." + +msgid "Called when a :class:`Member` updates their presence." +msgstr "Called when a :class:`Member` updates their presence." + +msgid "status" +msgstr "status" + +msgid "activity" +msgstr "activity" + +msgid "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." +msgstr "This requires :attr:`Intents.presences` and :attr:`Intents.members` to be enabled." + +msgid "Called when a :class:`Member` changes their :class:`VoiceState`." +msgstr "Called when a :class:`Member` changes their :class:`VoiceState`." + +msgid "The following, but not limited to, examples illustrate when this event is called:" +msgstr "The following, but not limited to, examples illustrate when this event is called:" + +msgid "A member joins a voice or stage channel." +msgstr "A member joins a voice or stage channel." + +msgid "A member leaves a voice or stage channel." +msgstr "A member leaves a voice or stage channel." + +msgid "A member is muted or deafened by their own accord." +msgstr "A member is muted or deafened by their own accord." + +msgid "A member is muted or deafened by a guild administrator." +msgstr "A member is muted or deafened by a guild administrator." + +msgid "This requires :attr:`Intents.voice_states` to be enabled." +msgstr "This requires :attr:`Intents.voice_states` to be enabled." + +msgid "The member whose voice states changed." +msgstr "The member whose voice states changed." + +msgid "The voice state prior to the changes." +msgstr "The voice state prior to the changes." + +msgid "The voice state after the changes." +msgstr "The voice state after the changes." + +msgid "Called when a :class:`User` updates their profile." +msgstr "Called when a :class:`User` updates their profile." + +msgid "avatar" +msgstr "avatar" + +msgid "username" +msgstr "username" + +msgid "discriminator" +msgstr "discriminator" + +msgid "global_name" +msgstr "global_name" + +msgid "The updated user's old info." +msgstr "The updated user's old info." + +msgid "The updated user's updated info." +msgstr "The updated user's updated info." + +msgid "Messages" +msgstr "Messages" + +msgid "Called when a :class:`Message` is created and sent." +msgstr "Called when a :class:`Message` is created and sent." + +msgid "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." +msgstr "Your bot's own messages and private messages are sent through this event. This can lead cases of 'recursion' depending on how your bot was programmed. If you want the bot to not reply to itself, consider checking the user IDs. Note that :class:`~ext.commands.Bot` does not have this problem." + +msgid "The current message." +msgstr "The current message." + +msgid "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a message is deleted. If the message is not found in the internal message cache, then this event will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_delete` event instead." + +msgid "The deleted message." +msgstr "The deleted message." + +msgid "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when messages are bulk deleted. If none of the messages deleted are found in the internal message cache, then this event will not be called. If individual messages were not found in the internal message cache, this event will still be called, but the messages not found will not be included in the messages list. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_bulk_message_delete` event instead." + +msgid "The messages that have been deleted." +msgstr "The messages that have been deleted." + +msgid "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." +msgstr "Called when a message is deleted. Unlike :func:`on_message_delete`, this is called regardless of the message being in the internal message cache or not." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageDeleteEvent.cached_message`" + +msgid "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." +msgstr "Called when a bulk delete is triggered. Unlike :func:`on_bulk_message_delete`, this is called regardless of the messages being in the internal message cache or not." + +msgid "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" +msgstr "If the messages are found in the message cache, they can be accessed via :attr:`RawBulkMessageDeleteEvent.cached_messages`" + +msgid "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." +msgstr "Called when a :class:`Message` receives an update event. If the message is not found in the internal message cache, then these events will not be called. Messages might not be in cache if the message is too old or the client is participating in high traffic guilds." + +msgid "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." +msgstr "If this occurs increase the :class:`max_messages ` parameter or use the :func:`on_raw_message_edit` event instead." + +msgid "The following non-exhaustive cases trigger this event:" +msgstr "The following non-exhaustive cases trigger this event:" + +msgid "A message has been pinned or unpinned." +msgstr "A message has been pinned or unpinned." + +msgid "The message content has been changed." +msgstr "The message content has been changed." + +msgid "The message has received an embed." +msgstr "The message has received an embed." + +msgid "For performance reasons, the embed server does not do this in a \"consistent\" manner." +msgstr "For performance reasons, the embed server does not do this in a \"consistent\" manner." + +msgid "The message's embeds were suppressed or unsuppressed." +msgstr "The message's embeds were suppressed or unsuppressed." + +msgid "A call message has received an update to its participants or ending time." +msgstr "A call message has received an update to its participants or ending time." + +msgid "A poll has ended and the results have been finalized." +msgstr "A poll has ended and the results have been finalized." + +msgid "The previous version of the message." +msgstr "The previous version of the message." + +msgid "The current version of the message." +msgstr "The current version of the message." + +msgid "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message is edited. Unlike :func:`on_message_edit`, this is called regardless of the state of the internal message cache." + +msgid "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." +msgstr "If the message is found in the message cache, it can be accessed via :attr:`RawMessageUpdateEvent.cached_message`. The cached message represents the message before it has been edited. For example, if the content of a message is modified and triggers the :func:`on_raw_message_edit` coroutine, the :attr:`RawMessageUpdateEvent.cached_message` will return a :class:`Message` object that represents the message before the content was modified." + +msgid "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." +msgstr "Due to the inherently raw nature of this event, the data parameter coincides with the raw data given by the `gateway `_." + +msgid "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." +msgstr "Since the data payload can be partial, care must be taken when accessing stuff in the dictionary. One example of a common case of partial data is when the ``'content'`` key is inaccessible. This denotes an \"embed\" only edit, which is an edit in which only the embeds are updated by the Discord embed server." + +msgid "Polls" +msgstr "Polls" + +msgid "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." +msgstr "Called when a vote is cast on a poll. If multiple answers were selected, this fires multiple times. if the poll was not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_add` instead." + +msgid "This requires :attr:`Intents.polls` to be enabled." +msgstr "This requires :attr:`Intents.polls` to be enabled." + +msgid "The current state of the poll." +msgstr "The current state of the poll." + +msgid "The user who added the vote." +msgstr "The user who added the vote." + +msgid "The answer that was voted." +msgstr "The answer that was voted." + +msgid "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." +msgstr "Called when a vote is cast on a poll. Unlike :func:`on_poll_vote_add`, this is called regardless of the state of the internal poll cache." + +msgid "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." +msgstr "Called when a vote is removed from a poll. If multiple answers were removed, this fires multiple times. if the poll is not found in the internal poll cache, then this event will not be called. Consider using :func:`on_raw_poll_vote_remove` instead." + +msgid "The user who removed the vote." +msgstr "The user who removed the vote." + +msgid "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a vote is removed from a poll. Unlike :func:`on_poll_vote_remove`, this is called regardless of the state of the internal message cache." + +msgid "Reactions" +msgstr "Reactions" + +msgid "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." +msgstr "Called when a message has a reaction added to it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_add` instead." + +msgid "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the :class:`Message` being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires :attr:`Intents.reactions` to be enabled." +msgstr "This requires :attr:`Intents.reactions` to be enabled." + +msgid "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." +msgstr "This doesn't require :attr:`Intents.members` within a guild context, but due to Discord not providing updated user information in a direct message it's required for direct messages to receive this event. Consider using :func:`on_raw_reaction_add` if you need this and do not otherwise want to enable the members intent." + +msgid "The current state of the reaction." +msgstr "The current state of the reaction." + +msgid "The user who added the reaction." +msgstr "The user who added the reaction." + +msgid "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction added. Unlike :func:`on_reaction_add`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." +msgstr "Called when a message has a reaction removed from it. Similar to on_message_edit, if the message is not found in the internal message cache, then this event will not be called." + +msgid "To get the message being reacted, access it via :attr:`Reaction.message`." +msgstr "To get the message being reacted, access it via :attr:`Reaction.message`." + +msgid "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." +msgstr "This requires both :attr:`Intents.reactions` and :attr:`Intents.members` to be enabled." + +msgid "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." +msgstr "Consider using :func:`on_raw_reaction_remove` if you need this and do not want to enable the members intent." + +msgid "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a reaction removed. Unlike :func:`on_reaction_remove`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." +msgstr "Called when a message has all its reactions removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear` instead." + +msgid "The message that had its reactions cleared." +msgstr "The message that had its reactions cleared." + +msgid "The reactions that were removed." +msgstr "The reactions that were removed." + +msgid "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." +msgstr "Called when a message has all its reactions removed. Unlike :func:`on_reaction_clear`, this is called regardless of the state of the internal message cache." + +msgid "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." +msgstr "Called when a message has a specific reaction removed from it. Similar to :func:`on_message_edit`, if the message is not found in the internal message cache, then this event will not be called. Consider using :func:`on_raw_reaction_clear_emoji` instead." + +msgid "The reaction that got cleared." +msgstr "The reaction that got cleared." + +msgid "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." +msgstr "Called when a message has a specific reaction removed from it. Unlike :func:`on_reaction_clear_emoji` this is called regardless of the state of the internal message cache." + +msgid "Scheduled Events" +msgstr "Scheduled Events" + +msgid "Called when an :class:`ScheduledEvent` is created." +msgstr "Called when an :class:`ScheduledEvent` is created." + +msgid "This requires :attr:`Intents.scheduled_events` to be enabled." +msgstr "This requires :attr:`Intents.scheduled_events` to be enabled." + +msgid "The newly created scheduled event." +msgstr "The newly created scheduled event." + +msgid "Called when a scheduled event is updated." +msgstr "Called when a scheduled event is updated." + +msgid "The old scheduled event." +msgstr "The old scheduled event." + +msgid "The updated scheduled event." +msgstr "The updated scheduled event." + +msgid "Called when a scheduled event is deleted." +msgstr "Called when a scheduled event is deleted." + +msgid "The deleted scheduled event." +msgstr "The deleted scheduled event." + +msgid "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." +msgstr "Called when a user subscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_add` instead." + +msgid "The scheduled event subscribed to." +msgstr "The scheduled event subscribed to." + +msgid "The member who subscribed." +msgstr "The member who subscribed." + +msgid "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user subscribes to an event. Unlike :meth:`on_scheduled_event_user_add`, this will be called regardless of the state of the internal cache." + +msgid "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." +msgstr "Called when a user unsubscribes to an event. If the member or event is not found in the internal cache, then this event will not be called. Consider using :func:`on_raw_scheduled_event_user_remove` instead." + +msgid "The scheduled event unsubscribed from." +msgstr "The scheduled event unsubscribed from." + +msgid "The member who unsubscribed." +msgstr "The member who unsubscribed." + +msgid "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." +msgstr "Called when a user unsubscribes to an event. Unlike :meth:`on_scheduled_event_user_remove`, this will be called regardless of the state of the internal cache." + +msgid "Stage Instances" +msgstr "Stage Instances" + +msgid "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." +msgstr "Called when a :class:`StageInstance` is created or deleted for a :class:`StageChannel`." + +msgid "The stage instance that was created or deleted." +msgstr "The stage instance that was created or deleted." + +msgid "Called when a :class:`StageInstance` is updated." +msgstr "Called when a :class:`StageInstance` is updated." + +msgid "The topic is changed." +msgstr "The topic is changed." + +msgid "The privacy level is changed." +msgstr "The privacy level is changed." + +msgid "The stage instance before the update." +msgstr "The stage instance before the update." + +msgid "The stage instance after the update." +msgstr "The stage instance after the update." + +msgid "Threads" +msgstr "Threads" + +msgid "Called whenever a thread is joined." +msgstr "Called whenever a thread is joined." + +msgid "Note that you can get the guild from :attr:`Thread.guild`." +msgstr "Note that you can get the guild from :attr:`Thread.guild`." + +msgid "The thread that got joined." +msgstr "The thread that got joined." + +msgid "Called whenever a thread is created." +msgstr "Called whenever a thread is created." + +msgid "The thread that got created." +msgstr "The thread that got created." + +msgid "Called whenever a thread is removed. This is different from a thread being deleted." +msgstr "Called whenever a thread is removed. This is different from a thread being deleted." + +msgid "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." +msgstr "Due to technical limitations, this event might not be called as soon as one expects. Since the library tracks thread membership locally, the API only sends updated thread membership status upon being synced by joining a thread." + +msgid "The thread that got removed." +msgstr "The thread that got removed." + +msgid "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" +msgstr "Called whenever a thread is deleted. If the deleted thread isn't found in internal cache then this will not be called. Archived threads are not in the cache. Consider using :func:`on_raw_thread_delete`" + +msgid "The thread that got deleted." +msgstr "The thread that got deleted." + +msgid "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." +msgstr "Called whenever a thread is deleted. Unlike :func:`on_thread_delete` this is called regardless of the state of the internal cache." + +msgid "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." +msgstr "Called when a :class:`ThreadMember` leaves or joins a :class:`Thread`." + +msgid "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." +msgstr "You can get the thread a member belongs in by accessing :attr:`ThreadMember.thread`." + +msgid "The member who joined or left." +msgstr "The member who joined or left." + +msgid "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." +msgstr "Called when a :class:`ThreadMember` leaves a :class:`Thread`. Unlike :func:`on_thread_member_remove` this is called regardless of the member being in the thread's internal cache of members or not." + +msgid "Called whenever a thread is updated." +msgstr "Called whenever a thread is updated." + +msgid "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." +msgstr "If the thread could not be found in the internal cache, this event will not be called. Threads will not be in the cache if they are archived. Alternatively, :func:`on_raw_thread_update` is called regardless of the internal cache." + +msgid "The updated thread's old info." +msgstr "The updated thread's old info." + +msgid "The updated thread's new info." +msgstr "The updated thread's new info." + +msgid "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." +msgstr "Unlike :func:`on_thread_update` this is called regardless of if the thread is in the internal thread cache or not." + +msgid "Typing" +msgstr "Typing" + +msgid "Called when someone begins typing a message." +msgstr "Called when someone begins typing a message." + +msgid "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." +msgstr "The ``channel`` parameter can be a :class:`abc.Messageable` instance. Which could either be :class:`TextChannel`, :class:`GroupChannel`, or :class:`DMChannel`." + +msgid "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." +msgstr "If the ``channel`` is a :class:`TextChannel` then the ``user`` parameter is a :class:`Member`, otherwise it is a :class:`User`." + +msgid "This requires :attr:`Intents.typing` to be enabled." +msgstr "This requires :attr:`Intents.typing` to be enabled." + +msgid "The location where the typing originated from." +msgstr "The location where the typing originated from." + +msgid "The user that started typing." +msgstr "The user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." +msgstr "Called when someone begins typing a message. Unlike :func:`on_typing`, this is called regardless if the user can be found in the bot's cache or not." + +msgid "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" +msgstr "If the typing event is occurring in a guild, the member that started typing can be accessed via :attr:`RawTypingEvent.member`" + +msgid "The raw typing payload." +msgstr "The raw typing payload." + +msgid "Voice Channel Status Update" +msgstr "Voice Channel Status Update" + +msgid "Called when someone updates a voice channel status." +msgstr "Called when someone updates a voice channel status." + +msgid "The channel where the voice channel status update originated from." +msgstr "The channel where the voice channel status update originated from." + +msgid "The old voice channel status." +msgstr "The old voice channel status." + +msgid "The new voice channel status." +msgstr "The new voice channel status." + +msgid "Called when someone updates a voice channels status." +msgstr "Called when someone updates a voice channels status." + +msgid "The raw voice channel status update payload." +msgstr "The raw voice channel status update payload." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/exceptions.po b/docs/locales/zh_CN/LC_MESSAGES/api/exceptions.po new file mode 100644 index 0000000000..e4cd130b21 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/exceptions.po @@ -0,0 +1,331 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid ":exc:`DiscordException`" +msgstr ":exc:`DiscordException`" + +msgid ":exc:`ClientException`" +msgstr ":exc:`ClientException`" + +msgid ":exc:`InvalidData`" +msgstr ":exc:`InvalidData`" + +msgid ":exc:`InvalidArgument`" +msgstr ":exc:`InvalidArgument`" + +msgid ":exc:`LoginFailure`" +msgstr ":exc:`LoginFailure`" + +msgid ":exc:`ConnectionClosed`" +msgstr ":exc:`ConnectionClosed`" + +msgid ":exc:`PrivilegedIntentsRequired`" +msgstr ":exc:`PrivilegedIntentsRequired`" + +msgid ":exc:`InteractionResponded`" +msgstr ":exc:`InteractionResponded`" + +msgid ":exc:`NoMoreItems`" +msgstr ":exc:`NoMoreItems`" + +msgid ":exc:`GatewayNotFound`" +msgstr ":exc:`GatewayNotFound`" + +msgid ":exc:`HTTPException`" +msgstr ":exc:`HTTPException`" + +msgid ":exc:`Forbidden`" +msgstr ":exc:`Forbidden`" + +msgid ":exc:`NotFound`" +msgstr ":exc:`NotFound`" + +msgid ":exc:`DiscordServerError`" +msgstr ":exc:`DiscordServerError`" + +msgid ":exc:`ApplicationCommandError`" +msgstr ":exc:`ApplicationCommandError`" + +msgid ":exc:`CheckFailure`" +msgstr ":exc:`CheckFailure`" + +msgid ":exc:`ApplicationCommandInvokeError`" +msgstr ":exc:`ApplicationCommandInvokeError`" + +msgid ":exc:`ExtensionError`" +msgstr ":exc:`ExtensionError`" + +msgid ":exc:`ExtensionAlreadyLoaded`" +msgstr ":exc:`ExtensionAlreadyLoaded`" + +msgid ":exc:`ExtensionNotLoaded`" +msgstr ":exc:`ExtensionNotLoaded`" + +msgid ":exc:`NoEntryPointError`" +msgstr ":exc:`NoEntryPointError`" + +msgid ":exc:`ExtensionFailed`" +msgstr ":exc:`ExtensionFailed`" + +msgid ":exc:`ExtensionNotFound`" +msgstr ":exc:`ExtensionNotFound`" + +msgid ":exc:`sinks.SinkException`" +msgstr ":exc:`sinks.SinkException`" + +msgid ":exc:`sinks.RecordingException`" +msgstr ":exc:`sinks.RecordingException`" + +msgid ":exc:`sinks.WaveSinkError`" +msgstr ":exc:`sinks.WaveSinkError`" + +msgid ":exc:`sinks.MP3SinkError`" +msgstr ":exc:`sinks.MP3SinkError`" + +msgid ":exc:`sinks.MP4SinkError`" +msgstr ":exc:`sinks.MP4SinkError`" + +msgid ":exc:`sinks.M4ASinkError`" +msgstr ":exc:`sinks.M4ASinkError`" + +msgid ":exc:`sinks.MKVSinkError`" +msgstr ":exc:`sinks.MKVSinkError`" + +msgid ":exc:`sinks.MKASinkError`" +msgstr ":exc:`sinks.MKASinkError`" + +msgid ":exc:`sinks.OGGSinkError`" +msgstr ":exc:`sinks.OGGSinkError`" + +msgid "Objects" +msgstr "Objects" + +msgid "The following exceptions are thrown by the library." +msgstr "The following exceptions are thrown by the library." + +msgid "Base exception class for pycord" +msgstr "Base exception class for pycord" + +msgid "Ideally speaking, this could be caught to handle any exceptions raised from this library." +msgstr "Ideally speaking, this could be caught to handle any exceptions raised from this library." + +msgid "Exception that's raised when an operation in the :class:`Client` fails." +msgstr "Exception that's raised when an operation in the :class:`Client` fails." + +msgid "These are usually for exceptions that happened due to user input." +msgstr "These are usually for exceptions that happened due to user input." + +msgid "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." +msgstr "Exception that's raised when the :meth:`Client.login` function fails to log you in from improper credentials or some other misc. failure." + +msgid "Exception that is raised when an async iteration operation has no more items." +msgstr "Exception that is raised when an async iteration operation has no more items." + +msgid "Exception that's raised when an HTTP request operation fails." +msgstr "Exception that's raised when an HTTP request operation fails." + +msgid "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." +msgstr "The response of the failed HTTP request. This is an instance of :class:`aiohttp.ClientResponse`. In some cases this could also be a :class:`requests.Response`." + +msgid "type" +msgstr "type" + +msgid ":class:`aiohttp.ClientResponse`" +msgstr ":class:`aiohttp.ClientResponse`" + +msgid "The text of the error. Could be an empty string." +msgstr "The text of the error. Could be an empty string." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The status code of the HTTP request." +msgstr "The status code of the HTTP request." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The Discord specific error code for the failure." +msgstr "The Discord specific error code for the failure." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Exception that's raised for when status code 403 occurs." +msgstr "Exception that's raised for when status code 403 occurs." + +msgid "Subclass of :exc:`HTTPException`" +msgstr "Subclass of :exc:`HTTPException`" + +msgid "Exception that's raised for when status code 404 occurs." +msgstr "Exception that's raised for when status code 404 occurs." + +msgid "Exception that's raised for when a 500 range status code occurs." +msgstr "Exception that's raised for when a 500 range status code occurs." + +msgid "Subclass of :exc:`HTTPException`." +msgstr "Subclass of :exc:`HTTPException`." + +msgid "Exception that's raised when the library encounters unknown or invalid data from Discord." +msgstr "Exception that's raised when the library encounters unknown or invalid data from Discord." + +msgid "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." +msgstr "Exception that's raised when an argument to a function is invalid some way (e.g. wrong value or wrong type)." + +msgid "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." +msgstr "This could be considered the parallel of ``ValueError`` and ``TypeError`` except inherited from :exc:`ClientException` and thus :exc:`DiscordException`." + +msgid "An exception that is raised when the gateway for Discord could not be found" +msgstr "An exception that is raised when the gateway for Discord could not be found" + +msgid "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." +msgstr "Exception that's raised when the gateway connection is closed for reasons that could not be handled internally." + +msgid "The close code of the websocket." +msgstr "The close code of the websocket." + +msgid "The reason provided for the closure." +msgstr "The reason provided for the closure." + +msgid "The shard ID that got closed if applicable." +msgstr "The shard ID that got closed if applicable." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." +msgstr "Exception that's raised when the gateway is requesting privileged intents, but they're not ticked in the developer page yet." + +msgid "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" +msgstr "Go to https://discord.com/developers/applications/ and enable the intents that are required. Currently, these are as follows:" + +msgid ":attr:`Intents.members`" +msgstr ":attr:`Intents.members`" + +msgid ":attr:`Intents.presences`" +msgstr ":attr:`Intents.presences`" + +msgid ":attr:`Intents.message_content`" +msgstr ":attr:`Intents.message_content`" + +msgid "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." +msgstr "Exception that's raised when sending another interaction response using :class:`InteractionResponse` when one has already been done before." + +msgid "An interaction can only respond once." +msgstr "An interaction can only respond once." + +msgid "The interaction that's already been responded to." +msgstr "The interaction that's already been responded to." + +msgid ":class:`Interaction`" +msgstr ":class:`Interaction`" + +msgid "An exception that is thrown for libopus related errors." +msgstr "An exception that is thrown for libopus related errors." + +msgid "The error code returned." +msgstr "The error code returned." + +msgid "An exception that is thrown for when libopus is not loaded." +msgstr "An exception that is thrown for when libopus is not loaded." + +msgid "The base exception type for all application command related errors." +msgstr "The base exception type for all application command related errors." + +msgid "This inherits from :exc:`DiscordException`." +msgstr "This inherits from :exc:`DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`ApplicationCommandError`" +msgstr "This inherits from :exc:`ApplicationCommandError`" + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid "Base exception for extension related errors." +msgstr "Base exception for extension related errors." + +msgid "This inherits from :exc:`~discord.DiscordException`." +msgstr "This inherits from :exc:`~discord.DiscordException`." + +msgid "The extension that had an error." +msgstr "The extension that had an error." + +msgid "An exception raised when an extension has already been loaded." +msgstr "An exception raised when an extension has already been loaded." + +msgid "This inherits from :exc:`ExtensionError`" +msgstr "This inherits from :exc:`ExtensionError`" + +msgid "An exception raised when an extension was not loaded." +msgstr "An exception raised when an extension was not loaded." + +msgid "An exception raised when an extension does not have a ``setup`` entry point function." +msgstr "An exception raised when an extension does not have a ``setup`` entry point function." + +msgid "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." +msgstr "An exception raised when an extension failed to load during execution of the module or ``setup`` entry point." + +msgid "The extension that had the error." +msgstr "The extension that had the error." + +msgid "An exception raised when an extension is not found." +msgstr "An exception raised when an extension is not found." + +msgid "Made the ``original`` attribute always None." +msgstr "Made the ``original`` attribute always None." + +msgid "Raised when a Sink error occurs." +msgstr "Raised when a Sink error occurs." + +msgid "Exception that's thrown when there is an error while trying to record audio from a voice channel." +msgstr "Exception that's thrown when there is an error while trying to record audio from a voice channel." + +msgid "Exception thrown when an exception occurs with :class:`WaveSink`" +msgstr "Exception thrown when an exception occurs with :class:`WaveSink`" + +msgid "Exception thrown when an exception occurs with :class:`MP3Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP3Sink`" + +msgid "Exception thrown when an exception occurs with :class:`MP4Sink`" +msgstr "Exception thrown when an exception occurs with :class:`MP4Sink`" + +msgid "Exception thrown when an exception occurs with :class:`M4ASink`" +msgstr "Exception thrown when an exception occurs with :class:`M4ASink`" + +msgid "Exception thrown when an exception occurs with :class:`MKVSink`" +msgstr "Exception thrown when an exception occurs with :class:`MKVSink`" + +msgid "Exception thrown when an exception occurs with :class:`MKASink`" +msgstr "Exception thrown when an exception occurs with :class:`MKASink`" + +msgid "Exception thrown when an exception occurs with :class:`OGGSink`" +msgstr "Exception thrown when an exception occurs with :class:`OGGSink`" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/index.po b/docs/locales/zh_CN/LC_MESSAGES/api/index.po new file mode 100644 index 0000000000..70d92c282d --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/index.po @@ -0,0 +1,25 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Table of Contents" +msgstr "Table of Contents" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord." +msgstr "The following section outlines the API of Pycord." + +msgid "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." +msgstr "This module uses the Python logging module to log diagnostic and errors in an output independent way. If the logging module is not configured, these logs will not be output anywhere. See :ref:`logging_setup` for more information on how to set up and use the logging module with Pycord." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/models.po b/docs/locales/zh_CN/LC_MESSAGES/api/models.po new file mode 100644 index 0000000000..25f2b52981 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/models.po @@ -0,0 +1,7804 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Discord Models" +msgstr "Discord Models" + +msgid "Models are classes that are received from Discord and are not meant to be created by the user of the library." +msgstr "Models are classes that are received from Discord and are not meant to be created by the user of the library." + +msgid "The classes listed below are **not intended to be created by users** and are also **read-only**." +msgstr "The classes listed below are **not intended to be created by users** and are also **read-only**." + +msgid "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." +msgstr "For example, this means that you should not make your own :class:`User` instances nor should you modify the :class:`User` instance yourself." + +msgid "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." +msgstr "If you want to get one of these model classes instances they'd have to be through the cache, and a common way of doing so is through the :func:`utils.find` function or attributes of model classes that you receive from the events specified in the :ref:`discord-api-events`." + +msgid "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." +msgstr "Nearly all classes here have :ref:`py:slots` defined which means that it is impossible to have dynamic attributes to the data classes." + +msgid "Represents a CDN asset on Discord." +msgstr "Represents a CDN asset on Discord." + +msgid "Returns the URL of the CDN asset." +msgstr "Returns the URL of the CDN asset." + +msgid "Returns the length of the CDN asset's URL." +msgstr "Returns the length of the CDN asset's URL." + +msgid "Checks if the asset is equal to another asset." +msgstr "Checks if the asset is equal to another asset." + +msgid "Checks if the asset is not equal to another asset." +msgstr "Checks if the asset is not equal to another asset." + +msgid "Returns the hash of the asset." +msgstr "Returns the hash of the asset." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the underlying URL of the asset." +msgstr "Returns the underlying URL of the asset." + +msgid "Returns the identifying key of the asset." +msgstr "Returns the identifying key of the asset." + +msgid "Returns whether the asset is animated." +msgstr "Returns whether the asset is animated." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns a new asset with the passed components replaced." +msgstr "Returns a new asset with the passed components replaced." + +msgid "The new size of the asset." +msgstr "The new size of the asset." + +msgid "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." +msgstr "The new format to change it to. Must be either 'webp', 'jpeg', 'jpg', 'png', or 'gif' if it's animated." + +msgid "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." +msgstr "The new format to change it to if the asset isn't animated. Must be either 'webp', 'jpeg', 'jpg', or 'png'." + +msgid "Returns" +msgstr "Returns" + +msgid "The newly updated asset." +msgstr "The newly updated asset." + +msgid ":class:`Asset`" +msgstr ":class:`Asset`" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid size or format was passed." +msgstr "An invalid size or format was passed." + +msgid "Returns a new asset with the specified size." +msgstr "Returns a new asset with the specified size." + +msgid "The new updated asset." +msgstr "The new updated asset." + +msgid "The asset had an invalid size." +msgstr "The asset had an invalid size." + +msgid "Returns a new asset with the specified format." +msgstr "Returns a new asset with the specified format." + +msgid "The new format of the asset." +msgstr "The new format of the asset." + +msgid "The asset has an invalid format." +msgstr "The asset has an invalid format." + +msgid "Returns a new asset with the specified static format." +msgstr "Returns a new asset with the specified static format." + +msgid "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." +msgstr "This only changes the format if the underlying asset is not animated. Otherwise, the asset is not changed." + +msgid "The new static format of the asset." +msgstr "The new static format of the asset." + +msgid "The asset had an invalid format." +msgstr "The asset had an invalid format." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the content of this asset as a :class:`bytes` object." +msgstr "Retrieves the content of this asset as a :class:`bytes` object." + +msgid "The content of the asset." +msgstr "The content of the asset." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "There was no internal connection state." +msgstr "There was no internal connection state." + +msgid "Downloading the asset failed." +msgstr "Downloading the asset failed." + +msgid "The asset was deleted." +msgstr "The asset was deleted." + +msgid "Saves this asset into a file-like object." +msgstr "Saves this asset into a file-like object." + +msgid "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." +msgstr "The file-like object to save this attachment to or the filename to use. If a filename is passed then a file is created with that filename and used instead." + +msgid "Whether to seek to the beginning of the file after saving is successfully done." +msgstr "Whether to seek to the beginning of the file after saving is successfully done." + +msgid "The number of bytes written." +msgstr "The number of bytes written." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." +msgstr "Represents a Spotify listening activity from Discord. This is a special case of :class:`Activity` that makes it easier to work with the Spotify integration." + +msgid "Checks if two activities are equal." +msgstr "Checks if two activities are equal." + +msgid "Checks if two activities are not equal." +msgstr "Checks if two activities are not equal." + +msgid "Returns the activity's hash." +msgstr "Returns the activity's hash." + +msgid "Returns the string 'Spotify'." +msgstr "Returns the string 'Spotify'." + +msgid "Returns the activity's type. This is for compatibility with :class:`Activity`." +msgstr "Returns the activity's type. This is for compatibility with :class:`Activity`." + +msgid "It always returns :attr:`ActivityType.listening`." +msgstr "It always returns :attr:`ActivityType.listening`." + +msgid "When the user started listening in UTC." +msgstr "When the user started listening in UTC." + +msgid "Returns the Spotify integration colour, as a :class:`Colour`." +msgstr "Returns the Spotify integration colour, as a :class:`Colour`." + +msgid "There is an alias for this named :attr:`color`" +msgstr "There is an alias for this named :attr:`color`" + +msgid "There is an alias for this named :attr:`colour`" +msgstr "There is an alias for this named :attr:`colour`" + +msgid "The activity's name. This will always return \"Spotify\"." +msgstr "The activity's name. This will always return \"Spotify\"." + +msgid "The title of the song being played." +msgstr "The title of the song being played." + +msgid "The artists of the song being played." +msgstr "The artists of the song being played." + +msgid "The artist of the song being played." +msgstr "The artist of the song being played." + +msgid "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." +msgstr "This does not attempt to split the artist information into multiple artists. Useful if there's only a single artist." + +msgid "The album that the song being played belongs to." +msgstr "The album that the song being played belongs to." + +msgid "The album cover image URL from Spotify's CDN." +msgstr "The album cover image URL from Spotify's CDN." + +msgid "The track ID used by Spotify to identify this song." +msgstr "The track ID used by Spotify to identify this song." + +msgid "The track URL to listen on Spotify." +msgstr "The track URL to listen on Spotify." + +msgid "When the user started playing this song in UTC." +msgstr "When the user started playing this song in UTC." + +msgid "When the user will stop playing this song in UTC." +msgstr "When the user will stop playing this song in UTC." + +msgid "The duration of the song being played." +msgstr "The duration of the song being played." + +msgid "The party ID of the listening party." +msgstr "The party ID of the listening party." + +msgid "Represents a Discord user's voice state." +msgstr "Represents a Discord user's voice state." + +msgid "Indicates if the user is currently deafened by the guild." +msgstr "Indicates if the user is currently deafened by the guild." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Indicates if the user is currently muted by the guild." +msgstr "Indicates if the user is currently muted by the guild." + +msgid "Indicates if the user is currently muted by their own accord." +msgstr "Indicates if the user is currently muted by their own accord." + +msgid "Indicates if the user is currently deafened by their own accord." +msgstr "Indicates if the user is currently deafened by their own accord." + +msgid "Indicates if the user is currently streaming via 'Go Live' feature." +msgstr "Indicates if the user is currently streaming via 'Go Live' feature." + +msgid "Indicates if the user is currently broadcasting video." +msgstr "Indicates if the user is currently broadcasting video." + +msgid "Indicates if the user is suppressed from speaking." +msgstr "Indicates if the user is suppressed from speaking." + +msgid "Only applies to stage channels." +msgstr "Only applies to stage channels." + +msgid "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." +msgstr "An aware datetime object that specifies the date and time in UTC that the member requested to speak. It will be ``None`` if they are not requesting to speak anymore or have been accepted to speak." + +msgid "Only applicable to stage channels." +msgstr "Only applicable to stage channels." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "Indicates if the user is currently in the AFK channel in the guild." +msgstr "Indicates if the user is currently in the AFK channel in the guild." + +msgid "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." +msgstr "The voice channel that the user is currently connected to. ``None`` if the user is not currently in a voice channel." + +msgid "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." +msgstr "Represents a partial messageable to aid with working messageable channels when only a channel ID are present." + +msgid "The only way to construct this class is through :meth:`Client.get_partial_messageable`." +msgstr "The only way to construct this class is through :meth:`Client.get_partial_messageable`." + +msgid "Note that this class is trimmed down and has no rich attributes." +msgstr "Note that this class is trimmed down and has no rich attributes." + +msgid "Checks if two partial messageables are equal." +msgstr "Checks if two partial messageables are equal." + +msgid "Checks if two partial messageables are not equal." +msgstr "Checks if two partial messageables are not equal." + +msgid "Returns the partial messageable's hash." +msgstr "Returns the partial messageable's hash." + +msgid "The channel ID associated with this partial messageable." +msgstr "The channel ID associated with this partial messageable." + +msgid "The channel type associated with this partial messageable, if given." +msgstr "The channel type associated with this partial messageable, if given." + +msgid "Optional[:class:`ChannelType`]" +msgstr "Optional[:class:`ChannelType`]" + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Creates a :class:`PartialMessage` from the message ID." +msgstr "Creates a :class:`PartialMessage` from the message ID." + +msgid "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." +msgstr "This is useful if you want to work with a message and only have its ID without doing an unnecessary API call." + +msgid "The message ID to create a partial message for." +msgstr "The message ID to create a partial message for." + +msgid "The partial message." +msgstr "The partial message." + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid "Users" +msgstr "Users" + +msgid "Represents your Discord user." +msgstr "Represents your Discord user." + +msgid "Checks if two users are equal." +msgstr "Checks if two users are equal." + +msgid "Checks if two users are not equal." +msgstr "Checks if two users are not equal." + +msgid "Return the user's hash." +msgstr "Return the user's hash." + +msgid "Returns the user's name with discriminator or global_name." +msgstr "Returns the user's name with discriminator or global_name." + +msgid "The user's username." +msgstr "The user's username." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The user's unique ID." +msgstr "The user's unique ID." + +msgid "The user's discriminator. This is given when the username has conflicts." +msgstr "The user's discriminator. This is given when the username has conflicts." + +msgid "If the user has migrated to the new username system, this will always be 0." +msgstr "If the user has migrated to the new username system, this will always be 0." + +msgid "The user's global name." +msgstr "The user's global name." + +msgid "Specifies if the user is a bot account." +msgstr "Specifies if the user is a bot account." + +msgid "Specifies if the user is a system user (i.e. represents Discord officially)." +msgstr "Specifies if the user is a system user (i.e. represents Discord officially)." + +msgid "Specifies if the user's email is verified." +msgstr "Specifies if the user's email is verified." + +msgid "The IETF language tag used to identify the language the user is using." +msgstr "The IETF language tag used to identify the language the user is using." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "Specifies if the user has MFA turned on and working." +msgstr "Specifies if the user has MFA turned on and working." + +msgid "Edits the current profile of the client." +msgstr "Edits the current profile of the client." + +msgid "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." +msgstr "To upload an avatar or banner, a :term:`py:bytes-like object` must be passed in that represents the image being uploaded. If this is done through a file then the file must be opened via ``open('some_filename', 'rb')`` and the :term:`py:bytes-like object` is given through the use of ``fp.read()``." + +msgid "The only image formats supported for uploading are JPEG, PNG, and GIF." +msgstr "The only image formats supported for uploading are JPEG, PNG, and GIF." + +msgid "The edit is no longer in-place, instead the newly edited client user is returned." +msgstr "The edit is no longer in-place, instead the newly edited client user is returned." + +msgid "The ``banner`` keyword-only parameter was added." +msgstr "The ``banner`` keyword-only parameter was added." + +msgid "The new username you wish to change to." +msgstr "The new username you wish to change to." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no avatar." + +msgid "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." +msgstr "A :term:`py:bytes-like object` representing the image to upload. Could be ``None`` to denote no banner." + +msgid "The newly edited client user." +msgstr "The newly edited client user." + +msgid ":class:`ClientUser`" +msgstr ":class:`ClientUser`" + +msgid "Editing your profile failed." +msgstr "Editing your profile failed." + +msgid "Wrong image format passed for ``avatar`` or ``banner``." +msgstr "Wrong image format passed for ``avatar`` or ``banner``." + +msgid "Returns the user's accent color, if applicable." +msgstr "Returns the user's accent color, if applicable." + +msgid "There is an alias for this named :attr:`accent_colour`." +msgstr "There is an alias for this named :attr:`accent_colour`." + +msgid "This information is only available via :meth:`Client.fetch_user`." +msgstr "This information is only available via :meth:`Client.fetch_user`." + +msgid "Returns the user's accent colour, if applicable." +msgstr "Returns the user's accent colour, if applicable." + +msgid "There is an alias for this named :attr:`accent_color`." +msgstr "There is an alias for this named :attr:`accent_color`." + +msgid "Returns an :class:`Asset` for the avatar the user has." +msgstr "Returns an :class:`Asset` for the avatar the user has." + +msgid "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." +msgstr "If the user does not have a traditional avatar, ``None`` is returned. If you want the avatar that a user has displayed, consider :attr:`display_avatar`." + +msgid "Returns the user's avatar decoration, if available." +msgstr "Returns the user's avatar decoration, if available." + +msgid "Returns the user's banner asset, if available." +msgstr "Returns the user's banner asset, if available." + +msgid "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a color denoting the rendered color for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`colour`." +msgstr "There is an alias for this named :attr:`colour`." + +msgid "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." +msgstr "A property that returns a colour denoting the rendered colour for the user. This always returns :meth:`Colour.default`." + +msgid "There is an alias for this named :attr:`color`." +msgstr "There is an alias for this named :attr:`color`." + +msgid "Returns the user's creation time in UTC." +msgstr "Returns the user's creation time in UTC." + +msgid "This is when the user's Discord account was created." +msgstr "This is when the user's Discord account was created." + +msgid "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." +msgstr "Returns the default avatar for a given user. This is calculated by the user's ID if they're on the new username system, otherwise their discriminator." + +msgid "Returns the user's display avatar." +msgstr "Returns the user's display avatar." + +msgid "For regular users this is just their default avatar or uploaded avatar." +msgstr "For regular users this is just their default avatar or uploaded avatar." + +msgid "Returns the user's display name. This will be their global name if set, otherwise their username." +msgstr "Returns the user's display name. This will be their global name if set, otherwise their username." + +msgid "Checks whether the user is already migrated to global name." +msgstr "Checks whether the user is already migrated to global name." + +msgid "Returns a URL that allows the client to jump to the user." +msgstr "Returns a URL that allows the client to jump to the user." + +msgid "Returns a string that allows you to mention the given user." +msgstr "Returns a string that allows you to mention the given user." + +msgid "Checks if the user is mentioned in the specified message." +msgstr "Checks if the user is mentioned in the specified message." + +msgid "The message to check if you're mentioned in." +msgstr "The message to check if you're mentioned in." + +msgid "Indicates if the user is mentioned in the message." +msgstr "Indicates if the user is mentioned in the message." + +msgid "The publicly available flags the user has." +msgstr "The publicly available flags the user has." + +msgid "Represents a Discord user." +msgstr "Represents a Discord user." + +msgid "If the user has migrated to the new username system, this will always be \"0\"." +msgstr "If the user has migrated to the new username system, this will always be \"0\"." + +msgid "Returns the channel associated with this user if it exists." +msgstr "Returns the channel associated with this user if it exists." + +msgid "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." +msgstr "If this returns ``None``, you can create a DM channel by calling the :meth:`create_dm` coroutine function." + +msgid "The guilds that the user shares with the client." +msgstr "The guilds that the user shares with the client." + +msgid "This will only return mutual guilds within the client's internal cache." +msgstr "This will only return mutual guilds within the client's internal cache." + +msgid "Creates a :class:`DMChannel` with this user." +msgstr "Creates a :class:`DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "Creates a test entitlement for the user." +msgstr "Creates a test entitlement for the user." + +msgid "The SKU to create a test entitlement for." +msgstr "The SKU to create a test entitlement for." + +msgid "The created entitlement." +msgstr "The created entitlement." + +msgid ":class:`Entitlement`" +msgstr ":class:`Entitlement`" + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the user's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``user`` parameter." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Messages" +msgstr "Messages" + +msgid "Represents an attachment from Discord." +msgstr "Represents an attachment from Discord." + +msgid "Returns the URL of the attachment." +msgstr "Returns the URL of the attachment." + +msgid "Checks if the attachment is equal to another attachment." +msgstr "Checks if the attachment is equal to another attachment." + +msgid "Checks if the attachment is not equal to another attachment." +msgstr "Checks if the attachment is not equal to another attachment." + +msgid "Returns the hash of the attachment." +msgstr "Returns the hash of the attachment." + +msgid "Attachment can now be cast to :class:`str` and is hashable." +msgstr "Attachment can now be cast to :class:`str` and is hashable." + +msgid "The attachment ID." +msgstr "The attachment ID." + +msgid "The attachment size in bytes." +msgstr "The attachment size in bytes." + +msgid "The attachment's height, in pixels. Only applicable to images and videos." +msgstr "The attachment's height, in pixels. Only applicable to images and videos." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The attachment's width, in pixels. Only applicable to images and videos." +msgstr "The attachment's width, in pixels. Only applicable to images and videos." + +msgid "The attachment's filename." +msgstr "The attachment's filename." + +msgid "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." +msgstr "The attachment's title. This is equal to the original :attr:`filename` (without an extension) if special characters were filtered from it." + +msgid "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." +msgstr "The attachment URL. If the message this attachment was attached to is deleted, then this will 404." + +msgid "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." +msgstr "The proxy URL. This is a cached version of the :attr:`~Attachment.url` in the case of images. When the message is deleted, this URL might be valid for a few minutes or not valid at all." + +msgid "The attachment's `media type `_." +msgstr "The attachment's `media type `_." + +msgid "Whether the attachment is ephemeral or not." +msgstr "Whether the attachment is ephemeral or not." + +msgid "The attachment's description." +msgstr "The attachment's description." + +msgid "The duration of the audio file (currently for voice messages)." +msgstr "The duration of the audio file (currently for voice messages)." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." +msgstr "The base64 encoded bytearray representing a sampled waveform (currently for voice messages)." + +msgid "Extra attributes of the attachment." +msgstr "Extra attributes of the attachment." + +msgid ":class:`AttachmentFlags`" +msgstr ":class:`AttachmentFlags`" + +msgid "The unique signature of this attachment's instance." +msgstr "The unique signature of this attachment's instance." + +msgid "This attachment URL's expiry time in UTC." +msgstr "This attachment URL's expiry time in UTC." + +msgid "The attachment URL's issue time in UTC." +msgstr "The attachment URL's issue time in UTC." + +msgid "Whether this attachment contains a spoiler." +msgstr "Whether this attachment contains a spoiler." + +msgid "Saves this attachment into a file-like object." +msgstr "Saves this attachment into a file-like object." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments." + +msgid "Saving the attachment failed." +msgstr "Saving the attachment failed." + +msgid "The attachment was deleted." +msgstr "The attachment was deleted." + +msgid "Retrieves the content of this attachment as a :class:`bytes` object." +msgstr "Retrieves the content of this attachment as a :class:`bytes` object." + +msgid "The contents of the attachment." +msgstr "The contents of the attachment." + +msgid "Downloading the attachment failed." +msgstr "Downloading the attachment failed." + +msgid "You do not have permissions to access this attachment" +msgstr "You do not have permissions to access this attachment" + +msgid "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." +msgstr "Converts the attachment into a :class:`File` suitable for sending via :meth:`abc.Messageable.send`." + +msgid "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" +msgstr "Whether to use :attr:`proxy_url` rather than :attr:`url` when downloading the attachment. This will allow attachments to be saved after deletion more often, compared to the regular URL which is generally deleted right after the message is deleted. Note that this can still fail to download deleted attachments if too much time has passed, and it does not work on some types of attachments. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler. .. versionadded:: 1.4" +msgstr "Whether the file is a spoiler. .. versionadded:: 1.4" + +msgid "Whether the file is a spoiler." +msgstr "Whether the file is a spoiler." + +msgid "The attachment as a file suitable for sending." +msgstr "The attachment as a file suitable for sending." + +msgid ":class:`File`" +msgstr ":class:`File`" + +msgid "Represents a message from Discord." +msgstr "Represents a message from Discord." + +msgid "Checks if two messages are equal." +msgstr "Checks if two messages are equal." + +msgid "Checks if two messages are not equal." +msgstr "Checks if two messages are not equal." + +msgid "Returns the message's hash." +msgstr "Returns the message's hash." + +msgid "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." +msgstr "Specifies if the message was done with text-to-speech. This can only be accurately received in :func:`on_message` due to a discord limitation." + +msgid "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." +msgstr "The type of message. In most cases this should not be checked, but it is helpful in cases where it might be a system message for :attr:`system_content`." + +msgid ":class:`MessageType`" +msgstr ":class:`MessageType`" + +msgid "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." +msgstr "A :class:`Member` that sent the message. If :attr:`channel` is a private channel or the user has the left the guild, then it is a :class:`User` instead." + +msgid "Union[:class:`Member`, :class:`abc.User`]" +msgstr "Union[:class:`Member`, :class:`abc.User`]" + +msgid "The actual contents of the message." +msgstr "The actual contents of the message." + +msgid "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." +msgstr "The value used by the discord guild and the client to verify that the message is successfully sent. This is not stored long term within Discord's servers and is only used ephemerally." + +msgid "Optional[Union[:class:`str`, :class:`int`]]" +msgstr "Optional[Union[:class:`str`, :class:`int`]]" + +msgid "A list of embeds the message has." +msgstr "A list of embeds the message has." + +msgid "List[:class:`Embed`]" +msgstr "List[:class:`Embed`]" + +msgid "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." +msgstr "The :class:`TextChannel` or :class:`Thread` that the message was sent from. Could be a :class:`DMChannel` or :class:`GroupChannel` if it's a private message." + +msgid "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" +msgstr "Union[:class:`TextChannel`, :class:`Thread`, :class:`DMChannel`, :class:`GroupChannel`, :class:`PartialMessageable`]" + +msgid "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." +msgstr "The message that this message references. This is only applicable to messages of type :attr:`MessageType.pins_add`, crossposted messages created by a followed channel integration, or message replies." + +msgid "Optional[:class:`~discord.MessageReference`]" +msgstr "Optional[:class:`~discord.MessageReference`]" + +msgid "Specifies if the message mentions everyone." +msgstr "Specifies if the message mentions everyone." + +msgid "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." +msgstr "This does not check if the ``@everyone`` or the ``@here`` text is in the message itself. Rather this boolean indicates if either the ``@everyone`` or the ``@here`` text is in the message **and** it did end up mentioning." + +msgid "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." +msgstr "A list of :class:`Member` that were mentioned. If the message is in a private message then the list will be of :class:`User` instead. For messages that are not of type :attr:`MessageType.default`\\, this array can be used to aid in system messages. For more information, see :attr:`system_content`." + +msgid "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." +msgstr "The order of the mentions list is not in any particular order, so you should not rely on it. This is a Discord limitation, not one with the library." + +msgid "List[:class:`abc.User`]" +msgstr "List[:class:`abc.User`]" + +msgid "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`abc.GuildChannel` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`abc.GuildChannel`]" +msgstr "List[:class:`abc.GuildChannel`]" + +msgid "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." +msgstr "A list of :class:`Role` that were mentioned. If the message is in a private message then the list is always empty." + +msgid "List[:class:`Role`]" +msgstr "List[:class:`Role`]" + +msgid "The message ID." +msgstr "The message ID." + +msgid "If this message was sent by a webhook, then this is the webhook ID's that sent this message." +msgstr "If this message was sent by a webhook, then this is the webhook ID's that sent this message." + +msgid "A list of attachments given to a message." +msgstr "A list of attachments given to a message." + +msgid "List[:class:`Attachment`]" +msgstr "List[:class:`Attachment`]" + +msgid "Specifies if the message is currently pinned." +msgstr "Specifies if the message is currently pinned." + +msgid "Extra features of the message." +msgstr "Extra features of the message." + +msgid ":class:`MessageFlags`" +msgstr ":class:`MessageFlags`" + +msgid "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." +msgstr "Reactions to a message. Reactions can be either custom emoji or standard unicode emoji." + +msgid "List[:class:`Reaction`]" +msgstr "List[:class:`Reaction`]" + +msgid "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." +msgstr "The activity associated with this message. Sent with Rich-Presence related messages that for example, request joining, spectating, or listening to or with another member." + +msgid "It is a dictionary with the following optional keys:" +msgstr "It is a dictionary with the following optional keys:" + +msgid "``type``: An integer denoting the type of message activity being requested." +msgstr "``type``: An integer denoting the type of message activity being requested." + +msgid "``party_id``: The party ID associated with the party." +msgstr "``party_id``: The party ID associated with the party." + +msgid "Optional[:class:`dict`]" +msgstr "Optional[:class:`dict`]" + +msgid "The rich presence enabled application associated with this message." +msgstr "The rich presence enabled application associated with this message." + +msgid "It is a dictionary with the following keys:" +msgstr "It is a dictionary with the following keys:" + +msgid "``id``: A string representing the application's ID." +msgstr "``id``: A string representing the application's ID." + +msgid "``name``: A string representing the application's name." +msgstr "``name``: A string representing the application's name." + +msgid "``description``: A string representing the application's description." +msgstr "``description``: A string representing the application's description." + +msgid "``icon``: A string representing the icon ID of the application." +msgstr "``icon``: A string representing the icon ID of the application." + +msgid "``cover_image``: A string representing the embed's image asset ID." +msgstr "``cover_image``: A string representing the embed's image asset ID." + +msgid "A list of sticker items given to the message." +msgstr "A list of sticker items given to the message." + +msgid "List[:class:`StickerItem`]" +msgstr "List[:class:`StickerItem`]" + +msgid "A list of components in the message." +msgstr "A list of components in the message." + +msgid "List[:class:`Component`]" +msgstr "List[:class:`Component`]" + +msgid "The guild that the message belongs to, if applicable." +msgstr "The guild that the message belongs to, if applicable." + +msgid "Optional[:class:`Guild`]" +msgstr "Optional[:class:`Guild`]" + +msgid "The interaction associated with the message, if applicable." +msgstr "The interaction associated with the message, if applicable." + +msgid "Use :attr:`interaction_metadata` instead." +msgstr "Use :attr:`interaction_metadata` instead." + +msgid "Optional[:class:`MessageInteraction`]" +msgstr "Optional[:class:`MessageInteraction`]" + +msgid "The interaction metadata associated with the message, if applicable." +msgstr "The interaction metadata associated with the message, if applicable." + +msgid "Optional[:class:`InteractionMetadata`]" +msgstr "Optional[:class:`InteractionMetadata`]" + +msgid "The thread created from this message, if applicable." +msgstr "The thread created from this message, if applicable." + +msgid "Optional[:class:`Thread`]" +msgstr "Optional[:class:`Thread`]" + +msgid "The poll associated with this message, if applicable." +msgstr "The poll associated with this message, if applicable." + +msgid "Optional[:class:`Poll`]" +msgstr "Optional[:class:`Poll`]" + +msgid "The call information associated with this message, if applicable." +msgstr "The call information associated with this message, if applicable." + +msgid "Optional[:class:`MessageCall`]" +msgstr "Optional[:class:`MessageCall`]" + +msgid "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." +msgstr "A property that returns an array of user IDs matched with the syntax of ``<@user_id>`` in the message content." + +msgid "This allows you to receive the user IDs of mentioned users even in a private message context." +msgstr "This allows you to receive the user IDs of mentioned users even in a private message context." + +msgid "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." +msgstr "A property that returns an array of channel IDs matched with the syntax of ``<#channel_id>`` in the message content." + +msgid "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." +msgstr "A property that returns an array of role IDs matched with the syntax of ``<@&role_id>`` in the message content." + +msgid "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." +msgstr "A property that returns the content in a \"cleaned up\" manner. This basically means that mentions are transformed into the way the client shows it. e.g. ``<#id>`` will transform into ``#name``." + +msgid "This will also transform @everyone and @here mentions into non-mentions." +msgstr "This will also transform @everyone and @here mentions into non-mentions." + +msgid "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." +msgstr "This *does not* affect markdown. If you want to escape or remove markdown then use :func:`utils.escape_markdown` or :func:`utils.remove_markdown` respectively, along with this function." + +msgid "The message's creation time in UTC." +msgstr "The message's creation time in UTC." + +msgid "An aware UTC datetime object containing the edited time of the message." +msgstr "An aware UTC datetime object containing the edited time of the message." + +msgid "Returns a URL that allows the client to jump to this message." +msgstr "Returns a URL that allows the client to jump to this message." + +msgid "Whether the message is a system message." +msgstr "Whether the message is a system message." + +msgid "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "A system message is a message that is constructed entirely by the Discord API in response to something. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "A property that returns the content that is rendered regardless of the :attr:`Message.type`." +msgstr "A property that returns the content that is rendered regardless of the :attr:`Message.type`." + +msgid "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." +msgstr "In the case of :attr:`MessageType.default` and :attr:`MessageType.reply`\\, this just returns the regular :attr:`Message.content`. Otherwise, this returns an English message denoting the contents of the system message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." +msgstr "Your own messages could be deleted without any proper permissions. However, to delete other people's messages, you need the :attr:`~Permissions.manage_messages` permission." + +msgid "Added the new ``delay`` keyword-only parameter." +msgstr "Added the new ``delay`` keyword-only parameter." + +msgid "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message. If the deletion fails then it is silently ignored." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already" +msgstr "The message was deleted already" + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "The content must be able to be transformed into a string via ``str(content)``." +msgstr "The content must be able to be transformed into a string via ``str(content)``." + +msgid "The ``suppress`` keyword-only parameter was added." +msgstr "The ``suppress`` keyword-only parameter was added." + +msgid "The new content to replace the message with. Could be ``None`` to remove the content." +msgstr "The new content to replace the message with. Could be ``None`` to remove the content." + +msgid "The new embed to replace the original with. Could be ``None`` to remove the embed." +msgstr "The new embed to replace the original with. Could be ``None`` to remove the embed." + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed. .. versionadded:: 2.0" + +msgid "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." +msgstr "The new embeds to replace the original with. Must be a maximum of 10. To remove all embeds ``[]`` should be passed." + +msgid "A new file to add to the message." +msgstr "A new file to add to the message." + +msgid "New files to add to the message." +msgstr "New files to add to the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just edited. If the deletion fails, then it is silently ignored." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." +msgstr "Tried to suppress a message without permissions or edited a message's content or embed that isn't yours." + +msgid "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." +msgstr "You specified both ``embed`` and ``embeds``, specified both ``file`` and ``files``, or either``file`` or ``files`` were of the wrong type." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Publishes this message to your announcement channel." +msgstr "Publishes this message to your announcement channel." + +msgid "You must have the :attr:`~Permissions.send_messages` permission to do this." +msgstr "You must have the :attr:`~Permissions.send_messages` permission to do this." + +msgid "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." +msgstr "If the message is not your own then the :attr:`~Permissions.manage_messages` permission is also needed." + +msgid "You do not have the proper permissions to publish this message." +msgstr "You do not have the proper permissions to publish this message." + +msgid "Publishing the message failed." +msgstr "Publishing the message failed." + +msgid "Pins the message." +msgstr "Pins the message." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to do this in a non-private channel context." + +msgid "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for pinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for pinning the message. Shows up on the audit log." +msgstr "The reason for pinning the message. Shows up on the audit log." + +msgid "You do not have permissions to pin the message." +msgstr "You do not have permissions to pin the message." + +msgid "The message or channel was not found or deleted." +msgstr "The message or channel was not found or deleted." + +msgid "Pinning the message failed, probably due to the channel having more than 50 pinned messages." +msgstr "Pinning the message failed, probably due to the channel having more than 50 pinned messages." + +msgid "Unpins the message." +msgstr "Unpins the message." + +msgid "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for unpinning the message. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for unpinning the message. Shows up on the audit log." +msgstr "The reason for unpinning the message. Shows up on the audit log." + +msgid "You do not have permissions to unpin the message." +msgstr "You do not have permissions to unpin the message." + +msgid "Unpinning the message failed." +msgstr "Unpinning the message failed." + +msgid "Add a reaction to the message." +msgstr "Add a reaction to the message." + +msgid "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." +msgstr "The emoji may be a unicode emoji or a custom guild :class:`Emoji`." + +msgid "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." +msgstr "You must have the :attr:`~Permissions.read_message_history` permission to use this. If nobody else has reacted to the message using this emoji, the :attr:`~Permissions.add_reactions` permission is required." + +msgid "The emoji to react with." +msgstr "The emoji to react with." + +msgid "Adding the reaction failed." +msgstr "Adding the reaction failed." + +msgid "You do not have the proper permissions to react to the message." +msgstr "You do not have the proper permissions to react to the message." + +msgid "The emoji you specified was not found." +msgstr "The emoji you specified was not found." + +msgid "The emoji parameter is invalid." +msgstr "The emoji parameter is invalid." + +msgid "Remove a reaction by the member from the message." +msgstr "Remove a reaction by the member from the message." + +msgid "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``member`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``member`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The emoji to remove." +msgstr "The emoji to remove." + +msgid "The member for which to remove the reaction." +msgstr "The member for which to remove the reaction." + +msgid "Removing the reaction failed." +msgstr "Removing the reaction failed." + +msgid "You do not have the proper permissions to remove the reaction." +msgstr "You do not have the proper permissions to remove the reaction." + +msgid "The member or emoji you specified was not found." +msgstr "The member or emoji you specified was not found." + +msgid "Clears a specific reaction from the message." +msgstr "Clears a specific reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "The emoji to clear." +msgstr "The emoji to clear." + +msgid "Clearing the reaction failed." +msgstr "Clearing the reaction failed." + +msgid "You do not have the proper permissions to clear the reaction." +msgstr "You do not have the proper permissions to clear the reaction." + +msgid "Removes all the reactions from the message." +msgstr "Removes all the reactions from the message." + +msgid "Removing the reactions failed." +msgstr "Removing the reactions failed." + +msgid "You do not have the proper permissions to remove all the reactions." +msgstr "You do not have the proper permissions to remove all the reactions." + +msgid "Creates a public thread from this message." +msgstr "Creates a public thread from this message." + +msgid "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." +msgstr "You must have :attr:`~discord.Permissions.create_public_threads` in order to create a public thread from a message." + +msgid "The channel this message belongs in must be a :class:`TextChannel`." +msgstr "The channel this message belongs in must be a :class:`TextChannel`." + +msgid "The name of the thread." +msgstr "The name of the thread." + +msgid "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." +msgstr "The duration in minutes before a thread is automatically archived for inactivity. If not provided, the channel's default auto archive duration is used." + +msgid "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for user in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "The created thread." +msgstr "The created thread." + +msgid ":class:`.Thread`" +msgstr ":class:`.Thread`" + +msgid "You do not have permissions to create a thread." +msgstr "You do not have permissions to create a thread." + +msgid "Creating the thread failed." +msgstr "Creating the thread failed." + +msgid "This message does not have guild info attached." +msgstr "This message does not have guild info attached." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Immediately ends the poll associated with this message. Only doable by the poll's owner." +msgstr "Immediately ends the poll associated with this message. Only doable by the poll's owner." + +msgid "The updated message." +msgstr "The updated message." + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid "You do not have permissions to end this poll." +msgstr "You do not have permissions to end this poll." + +msgid "Ending this poll failed." +msgstr "Ending this poll failed." + +msgid "Creates a :class:`~discord.MessageReference` from the current message." +msgstr "Creates a :class:`~discord.MessageReference` from the current message." + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message. .. versionadded:: 1.7" + +msgid "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." +msgstr "Whether replying using the message reference should raise :class:`HTTPException` if the message no longer exists or Discord could not fetch the message." + +msgid "The reference to this message." +msgstr "The reference to this message." + +msgid ":class:`~discord.MessageReference`" +msgstr ":class:`~discord.MessageReference`" + +msgid "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." +msgstr "A special sentinel type that denotes whether the resolved message referenced message had since been deleted." + +msgid "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." +msgstr "The purpose of this class is to separate referenced messages that could not be fetched and those that were previously fetched but have since been deleted." + +msgid "The message ID of the deleted referenced message." +msgstr "The message ID of the deleted referenced message." + +msgid "The channel ID of the deleted referenced message." +msgstr "The channel ID of the deleted referenced message." + +msgid "The guild ID of the deleted referenced message." +msgstr "The guild ID of the deleted referenced message." + +msgid "Represents a reaction to a message." +msgstr "Represents a reaction to a message." + +msgid "Depending on the way this object was created, some of the attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some of the attributes can have a value of ``None``." + +msgid "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." +msgstr "Checks if two reactions are equal. This works by checking if the emoji is the same. So two messages with the same reaction will be considered \"equal\"." + +msgid "Checks if two reactions are not equal." +msgstr "Checks if two reactions are not equal." + +msgid "Returns the reaction's hash." +msgstr "Returns the reaction's hash." + +msgid "Returns the string form of the reaction's emoji." +msgstr "Returns the string form of the reaction's emoji." + +msgid "The reaction emoji. May be a custom emoji, or a unicode emoji." +msgstr "The reaction emoji. May be a custom emoji, or a unicode emoji." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`, :class:`str`]" + +msgid "The combined total of normal and super reactions for this emoji." +msgstr "The combined total of normal and super reactions for this emoji." + +msgid "If the user sent this as a normal reaction." +msgstr "If the user sent this as a normal reaction." + +msgid "If the user sent this as a super reaction." +msgstr "If the user sent this as a super reaction." + +msgid "Message this reaction is for." +msgstr "Message this reaction is for." + +msgid "Whether this reaction is a burst (super) reaction." +msgstr "Whether this reaction is a burst (super) reaction." + +msgid "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." +msgstr "Returns an :class:`AsyncIterator` representing the users that have reacted to the message." + +msgid "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` parameter must represent a member and meet the :class:`abc.Snowflake` abc." + +msgid "The maximum number of results to return. If not provided, returns all the users who reacted to the message." +msgstr "The maximum number of results to return. If not provided, returns all the users who reacted to the message." + +msgid "For pagination, reactions are sorted by member." +msgstr "For pagination, reactions are sorted by member." + +msgid "The type of reaction to get users for. Defaults to `normal`." +msgstr "The type of reaction to get users for. Defaults to `normal`." + +msgid "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." +msgstr "Union[:class:`User`, :class:`Member`] -- The member (if retrievable) or the user that has reacted to this message. The case where it can be a :class:`Member` is in a guild message context. Sometimes it can be a :class:`User` if the member has left the guild." + +msgid "Getting the users for the reaction failed." +msgstr "Getting the users for the reaction failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ReactionIterator\\``" + +msgid "Getting super reactors: ::" +msgstr "Getting super reactors: ::" + +msgid "Returns a list possible :class:`Colour` this super reaction can be." +msgstr "Returns a list possible :class:`Colour` this super reaction can be." + +msgid "There is an alias for this named :attr:`burst_colors`." +msgstr "There is an alias for this named :attr:`burst_colors`." + +msgid "There is an alias for this named :attr:`burst_colours`." +msgstr "There is an alias for this named :attr:`burst_colours`." + +msgid "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." +msgstr "Returns :class:`ReactionCountDetails` for the individual counts of normal and super reactions made." + +msgid "If this is a custom emoji." +msgstr "If this is a custom emoji." + +msgid "Remove the reaction by the provided :class:`User` from the message." +msgstr "Remove the reaction by the provided :class:`User` from the message." + +msgid "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." +msgstr "If the reaction is not your own (i.e. ``user`` parameter is not you) then the :attr:`~Permissions.manage_messages` permission is needed." + +msgid "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." +msgstr "The ``user`` parameter must represent a user or member and meet the :class:`abc.Snowflake` abc." + +msgid "The user or member from which to remove the reaction." +msgstr "The user or member from which to remove the reaction." + +msgid "The user you specified, or the reaction's message was not found." +msgstr "The user you specified, or the reaction's message was not found." + +msgid "Clears this reaction from the message." +msgstr "Clears this reaction from the message." + +msgid "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You need the :attr:`~Permissions.manage_messages` permission to use this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a breakdown of the normal and burst reaction counts for the emoji." +msgstr "Represents a breakdown of the normal and burst reaction counts for the emoji." + +msgid "The number of normal reactions for this emoji." +msgstr "The number of normal reactions for this emoji." + +msgid "The number of super reactions for this emoji." +msgstr "The number of super reactions for this emoji." + +msgid "Monetization" +msgstr "Monetization" + +msgid "Represents a Discord SKU (stock-keeping unit)." +msgstr "Represents a Discord SKU (stock-keeping unit)." + +msgid "The SKU's ID." +msgstr "The SKU's ID." + +msgid "The type of SKU." +msgstr "The type of SKU." + +msgid ":class:`SKUType`" +msgstr ":class:`SKUType`" + +msgid "The ID of the application this SKU belongs to." +msgstr "The ID of the application this SKU belongs to." + +msgid "The name of the SKU." +msgstr "The name of the SKU." + +msgid "The SKU's slug." +msgstr "The SKU's slug." + +msgid "The SKU's flags." +msgstr "The SKU's flags." + +msgid ":class:`SKUFlags`" +msgstr ":class:`SKUFlags`" + +msgid "Returns the URL for the SKU." +msgstr "Returns the URL for the SKU." + +msgid "Represents a Discord entitlement." +msgstr "Represents a Discord entitlement." + +msgid "The entitlement's ID." +msgstr "The entitlement's ID." + +msgid "The ID of the SKU this entitlement is for." +msgstr "The ID of the SKU this entitlement is for." + +msgid "The ID of the application this entitlement belongs to." +msgstr "The ID of the application this entitlement belongs to." + +msgid "The ID of the user that owns this entitlement." +msgstr "The ID of the user that owns this entitlement." + +msgid "Union[:class:`int`, :class:`MISSING`]" +msgstr "Union[:class:`int`, :class:`MISSING`]" + +msgid "The type of entitlement." +msgstr "The type of entitlement." + +msgid ":class:`EntitlementType`" +msgstr ":class:`EntitlementType`" + +msgid "Whether the entitlement has been deleted." +msgstr "Whether the entitlement has been deleted." + +msgid "When the entitlement starts." +msgstr "When the entitlement starts." + +msgid "Union[:class:`datetime.datetime`, :class:`MISSING`]" +msgstr "Union[:class:`datetime.datetime`, :class:`MISSING`]" + +msgid "When the entitlement expires." +msgstr "When the entitlement expires." + +msgid "The ID of the guild that owns this entitlement." +msgstr "The ID of the guild that owns this entitlement." + +msgid "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." +msgstr "Whether or not this entitlement has been consumed. This will always be ``False`` for entitlements that are not of type :attr:`EntitlementType.consumable`." + +msgid "Consumes this entitlement." +msgstr "Consumes this entitlement." + +msgid "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." +msgstr "This can only be done on entitlements of type :attr:`EntitlementType.consumable`." + +msgid "The entitlement is not consumable." +msgstr "The entitlement is not consumable." + +msgid "Consuming the entitlement failed." +msgstr "Consuming the entitlement failed." + +msgid "Deletes a test entitlement." +msgstr "Deletes a test entitlement." + +msgid "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." +msgstr "A test entitlement is an entitlement that was created using :meth:`Guild.create_test_entitlement` or :meth:`User.create_test_entitlement`." + +msgid "Deleting the entitlement failed." +msgstr "Deleting the entitlement failed." + +msgid "Guild" +msgstr "Guild" + +msgid "Represents a Discord guild." +msgstr "Represents a Discord guild." + +msgid "This is referred to as a \"server\" in the official Discord UI." +msgstr "This is referred to as a \"server\" in the official Discord UI." + +msgid "Checks if two guilds are equal." +msgstr "Checks if two guilds are equal." + +msgid "Checks if two guilds are not equal." +msgstr "Checks if two guilds are not equal." + +msgid "Returns the guild's hash." +msgstr "Returns the guild's hash." + +msgid "Returns the guild's name." +msgstr "Returns the guild's name." + +msgid "The guild name." +msgstr "The guild name." + +msgid "All emojis that the guild owns." +msgstr "All emojis that the guild owns." + +msgid "Tuple[:class:`Emoji`, ...]" +msgstr "Tuple[:class:`Emoji`, ...]" + +msgid "All stickers that the guild owns." +msgstr "All stickers that the guild owns." + +msgid "Tuple[:class:`GuildSticker`, ...]" +msgstr "Tuple[:class:`GuildSticker`, ...]" + +msgid "The timeout to get sent to the AFK channel." +msgstr "The timeout to get sent to the AFK channel." + +msgid "The channel that denotes the AFK channel. ``None`` if it doesn't exist." +msgstr "The channel that denotes the AFK channel. ``None`` if it doesn't exist." + +msgid "Optional[:class:`VoiceChannel`]" +msgstr "Optional[:class:`VoiceChannel`]" + +msgid "The guild's ID." +msgstr "The guild's ID." + +msgid "Indicates if the guild invites are disabled." +msgstr "Indicates if the guild invites are disabled." + +msgid "The guild owner's ID. Use :attr:`Guild.owner` instead." +msgstr "The guild owner's ID. Use :attr:`Guild.owner` instead." + +msgid "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." +msgstr "Indicates if the guild is unavailable. If this is ``True`` then the reliability of other attributes outside of :attr:`Guild.id` is slim and they might all be ``None``. It is best to not do anything with the guild if it is unavailable." + +msgid "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." +msgstr "Check the :func:`on_guild_unavailable` and :func:`on_guild_available` events." + +msgid "The maximum amount of presences for the guild." +msgstr "The maximum amount of presences for the guild." + +msgid "The maximum amount of members for the guild." +msgstr "The maximum amount of members for the guild." + +msgid "This attribute is only available via :meth:`.Client.fetch_guild`." +msgstr "This attribute is only available via :meth:`.Client.fetch_guild`." + +msgid "The maximum amount of users in a video channel." +msgstr "The maximum amount of users in a video channel." + +msgid "The guild's description." +msgstr "The guild's description." + +msgid "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." +msgstr "Indicates the guild's two-factor authorisation level. If this value is 0 then the guild does not require 2FA for their administrative members. If the value is 1 then they do." + +msgid "The guild's verification level." +msgstr "The guild's verification level." + +msgid ":class:`VerificationLevel`" +msgstr ":class:`VerificationLevel`" + +msgid "The guild's explicit content filter." +msgstr "The guild's explicit content filter." + +msgid ":class:`ContentFilter`" +msgstr ":class:`ContentFilter`" + +msgid "The guild's notification settings." +msgstr "The guild's notification settings." + +msgid ":class:`NotificationLevel`" +msgstr ":class:`NotificationLevel`" + +msgid "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." +msgstr "A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord. You can find a catalog of guild features `here `_." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." +msgstr "The premium tier for this guild. Corresponds to \"Nitro Server\" in the official UI. The number goes from 0 to 3 inclusive." + +msgid "The number of \"boosts\" this guild currently has." +msgstr "The number of \"boosts\" this guild currently has." + +msgid "Indicates if the guild has premium progress bar enabled." +msgstr "Indicates if the guild has premium progress bar enabled." + +msgid "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." +msgstr "The preferred locale for the guild. Used when filtering Server Discovery results to a specific language." + +msgid "The guild's NSFW level." +msgstr "The guild's NSFW level." + +msgid ":class:`NSFWLevel`" +msgstr ":class:`NSFWLevel`" + +msgid "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members in the guild. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded. This is ``None`` unless the guild is obtained using :meth:`Client.fetch_guild` with ``with_counts=True``." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's members. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This method is an API call. For general usage, consider :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider :attr:`members` instead." + +msgid "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." +msgstr "The number of members to retrieve. Defaults to 1000. Pass ``None`` to fetch all members. Note that this is potentially slow." + +msgid "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve members after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Member` -- The member with the member data parsed." +msgstr ":class:`.Member` -- The member with the member data parsed." + +msgid "The members intent is not enabled." +msgstr "The members intent is not enabled." + +msgid "Getting the members failed." +msgstr "Getting the members failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.MemberIterator\\``" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." +msgstr "Returns an :class:`AsyncIterator` that enables receiving the guild's audit logs." + +msgid "You must have the :attr:`~Permissions.view_audit_log` permission to use this." +msgstr "You must have the :attr:`~Permissions.view_audit_log` permission to use this." + +msgid "See `API documentation `_ for more information about the `before` and `after` parameters." +msgstr "See `API documentation `_ for more information about the `before` and `after` parameters." + +msgid "The number of entries to retrieve. If ``None`` retrieve all entries." +msgstr "The number of entries to retrieve. If ``None`` retrieve all entries." + +msgid "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries before this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve entries after this date or entry. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The moderator to filter entries from." +msgstr "The moderator to filter entries from." + +msgid "The action to filter with." +msgstr "The action to filter with." + +msgid ":class:`AuditLogEntry` -- The audit log entry." +msgstr ":class:`AuditLogEntry` -- The audit log entry." + +msgid "You are not allowed to fetch audit logs" +msgstr "You are not allowed to fetch audit logs" + +msgid "An error occurred while fetching the audit logs." +msgstr "An error occurred while fetching the audit logs." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.AuditLogIterator\\``" + +msgid "Getting the first 100 entries: ::" +msgstr "Getting the first 100 entries: ::" + +msgid "Getting entries for a specific action: ::" +msgstr "Getting entries for a specific action: ::" + +msgid "Getting entries made by a specific user: ::" +msgstr "Getting entries made by a specific user: ::" + +msgid "A list of channels that belong to this guild." +msgstr "A list of channels that belong to this guild." + +msgid "A list of threads that you have permission to view." +msgstr "A list of threads that you have permission to view." + +msgid "Returns a URL that allows the client to jump to the guild." +msgstr "Returns a URL that allows the client to jump to the guild." + +msgid "Indicates if the guild is a 'large' guild." +msgstr "Indicates if the guild is a 'large' guild." + +msgid "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." +msgstr "A large guild is defined as having more than ``large_threshold`` count members, which for this library is set to the maximum of 250." + +msgid "A list of voice channels that belong to this guild." +msgstr "A list of voice channels that belong to this guild." + +msgid "This is sorted by the position and are in UI order from top to bottom." +msgstr "This is sorted by the position and are in UI order from top to bottom." + +msgid "A list of stage channels that belong to this guild." +msgstr "A list of stage channels that belong to this guild." + +msgid "A list of forum channels that belong to this guild." +msgstr "A list of forum channels that belong to this guild." + +msgid "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." +msgstr "Similar to :attr:`Client.user` except an instance of :class:`Member`. This is essentially used to get the member version of yourself." + +msgid "Returns the :class:`VoiceClient` associated with this guild, if any." +msgstr "Returns the :class:`VoiceClient` associated with this guild, if any." + +msgid "A list of text channels that belong to this guild." +msgstr "A list of text channels that belong to this guild." + +msgid "A list of categories that belong to this guild." +msgstr "A list of categories that belong to this guild." + +msgid "Returns every :class:`CategoryChannel` and their associated channels." +msgstr "Returns every :class:`CategoryChannel` and their associated channels." + +msgid "These channels and categories are sorted in the official Discord UI order." +msgstr "These channels and categories are sorted in the official Discord UI order." + +msgid "If the channels do not have a category, then the first element of the tuple is ``None``." +msgstr "If the channels do not have a category, then the first element of the tuple is ``None``." + +msgid "The categories and their associated channels." +msgstr "The categories and their associated channels." + +msgid "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" +msgstr "List[Tuple[Optional[:class:`CategoryChannel`], List[:class:`abc.GuildChannel`]]]" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or thread or ``None`` if not found." +msgstr "The returned channel or thread or ``None`` if not found." + +msgid "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" +msgstr "Optional[Union[:class:`Thread`, :class:`.abc.GuildChannel`]]" + +msgid "Returns a channel with the given ID." +msgstr "Returns a channel with the given ID." + +msgid "This does *not* search for threads." +msgstr "This does *not* search for threads." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[:class:`.abc.GuildChannel`]" +msgstr "Optional[:class:`.abc.GuildChannel`]" + +msgid "Returns a thread with the given ID." +msgstr "Returns a thread with the given ID." + +msgid "The returned thread or ``None`` if not found." +msgstr "The returned thread or ``None`` if not found." + +msgid "Returns the guild's channel used for system messages." +msgstr "Returns the guild's channel used for system messages." + +msgid "If no channel is set, then this returns ``None``." +msgstr "If no channel is set, then this returns ``None``." + +msgid "Returns the guild's system channel settings." +msgstr "Returns the guild's system channel settings." + +msgid "Return's the guild's channel used for the rules. The guild must be a Community guild." +msgstr "Return's the guild's channel used for the rules. The guild must be a Community guild." + +msgid "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." +msgstr "Return's the guild's channel where admins and moderators of the guilds receive notices from Discord. The guild must be a Community guild." + +msgid "The maximum number of emoji slots this guild has." +msgstr "The maximum number of emoji slots this guild has." + +msgid "The maximum number of sticker slots this guild has." +msgstr "The maximum number of sticker slots this guild has." + +msgid "The maximum bitrate for voice channels this guild can have." +msgstr "The maximum bitrate for voice channels this guild can have." + +msgid "The maximum number of bytes files can have when uploaded to this guild." +msgstr "The maximum number of bytes files can have when uploaded to this guild." + +msgid "A list of members that belong to this guild." +msgstr "A list of members that belong to this guild." + +msgid "Returns a member with the given ID." +msgstr "Returns a member with the given ID." + +msgid "The member or ``None`` if not found." +msgstr "The member or ``None`` if not found." + +msgid "Optional[:class:`Member`]" +msgstr "Optional[:class:`Member`]" + +msgid "A list of members who have \"boosted\" this guild." +msgstr "A list of members who have \"boosted\" this guild." + +msgid "Returns a :class:`list` of the guild's roles in hierarchy order." +msgstr "Returns a :class:`list` of the guild's roles in hierarchy order." + +msgid "The first element of this list will be the lowest role in the hierarchy." +msgstr "The first element of this list will be the lowest role in the hierarchy." + +msgid "Returns a role with the given ID." +msgstr "Returns a role with the given ID." + +msgid "The role or ``None`` if not found." +msgstr "The role or ``None`` if not found." + +msgid "Optional[:class:`Role`]" +msgstr "Optional[:class:`Role`]" + +msgid "Gets the @everyone role that all members have by default." +msgstr "Gets the @everyone role that all members have by default." + +msgid "Gets the premium subscriber role, AKA \"boost\" role, in this guild." +msgstr "Gets the premium subscriber role, AKA \"boost\" role, in this guild." + +msgid "Gets the role associated with this client's user, if any." +msgstr "Gets the role associated with this client's user, if any." + +msgid "Returns a :class:`list` of the guild's stage instances that are currently running." +msgstr "Returns a :class:`list` of the guild's stage instances that are currently running." + +msgid "Returns a stage instance with the given ID." +msgstr "Returns a stage instance with the given ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`StageInstance`]" +msgstr "Optional[:class:`StageInstance`]" + +msgid "The member that owns the guild." +msgstr "The member that owns the guild." + +msgid "Returns the guild's icon asset, if available." +msgstr "Returns the guild's icon asset, if available." + +msgid "Returns the guild's banner asset, if available." +msgstr "Returns the guild's banner asset, if available." + +msgid "Returns the guild's invite splash asset, if available." +msgstr "Returns the guild's invite splash asset, if available." + +msgid "Returns the guild's discovery splash asset, if available." +msgstr "Returns the guild's discovery splash asset, if available." + +msgid "Returns the true member count regardless of it being loaded fully or not." +msgstr "Returns the true member count regardless of it being loaded fully or not." + +msgid "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." +msgstr "Due to a Discord limitation, in order for this attribute to remain up-to-date and accurate, it requires :attr:`Intents.members` to be specified." + +msgid "Returns a boolean indicating if the guild is \"chunked\"." +msgstr "Returns a boolean indicating if the guild is \"chunked\"." + +msgid "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." +msgstr "A chunked guild means that :attr:`member_count` is equal to the number of members stored in the internal :attr:`members` cache." + +msgid "If this value returns ``False``, then you should request for offline members." +msgstr "If this value returns ``False``, then you should request for offline members." + +msgid "Returns the shard ID for this guild if applicable." +msgstr "Returns the shard ID for this guild if applicable." + +msgid "Returns the guild's creation time in UTC." +msgstr "Returns the guild's creation time in UTC." + +msgid "Returns a boolean indicating if the guild invites are disabled." +msgstr "Returns a boolean indicating if the guild invites are disabled." + +msgid "Returns the first member found that matches the name provided." +msgstr "Returns the first member found that matches the name provided." + +msgid "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." +msgstr "The name can have an optional discriminator argument, e.g. \"Jake#0001\" or \"Jake\" will both do the lookup. However, the former will give a more precise result. Note that the discriminator must have all 4 digits for this to work." + +msgid "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." +msgstr "If a nickname is passed, then it is looked up via the nickname. Note however, that a nickname + discriminator combo will not look up the nickname but rather the username + discriminator combo due to nickname + discriminator not being unique." + +msgid "If no member is found, ``None`` is returned." +msgstr "If no member is found, ``None`` is returned." + +msgid "The name of the member to lookup with an optional discriminator." +msgstr "The name of the member to lookup with an optional discriminator." + +msgid "The member in this guild with the associated name. If not found then ``None`` is returned." +msgstr "The member in this guild with the associated name. If not found then ``None`` is returned." + +msgid "Creates a :class:`TextChannel` for the guild." +msgstr "Creates a :class:`TextChannel` for the guild." + +msgid "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." +msgstr "Note that you need the :attr:`~Permissions.manage_channels` permission to create the channel." + +msgid "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." +msgstr "The ``overwrites`` parameter can be used to create a 'secret' channel upon creation. This parameter expects a :class:`dict` of overwrites with the target (either a :class:`Member` or a :class:`Role`) as the key and a :class:`PermissionOverwrite` as the value." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~TextChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The channel's name." +msgstr "The channel's name." + +msgid "The overwrites to apply to the channel. Useful for creating secret channels." +msgstr "The overwrites to apply to the channel. Useful for creating secret channels." + +msgid "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." +msgstr "The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0." + +msgid "The new channel's topic." +msgstr "The new channel's topic." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. The maximum value possible is `21600`." + +msgid "To mark the channel as NSFW or not." +msgstr "To mark the channel as NSFW or not." + +msgid "The reason for creating this channel. Shows up on the audit log." +msgstr "The reason for creating this channel. Shows up on the audit log." + +msgid "The channel that was just created." +msgstr "The channel that was just created." + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid "You do not have the proper permissions to create this channel." +msgstr "You do not have the proper permissions to create this channel." + +msgid "Creating the channel failed." +msgstr "Creating the channel failed." + +msgid "The permission overwrite information is not in proper form." +msgstr "The permission overwrite information is not in proper form." + +msgid "Creating a basic channel:" +msgstr "Creating a basic channel:" + +msgid "Creating a \"secret\" channel:" +msgstr "Creating a \"secret\" channel:" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`VoiceChannel` instead." + +msgid "The channel's preferred audio bitrate in bits per second." +msgstr "The channel's preferred audio bitrate in bits per second." + +msgid "The channel's limit for number of members that can be in a voice channel." +msgstr "The channel's limit for number of members that can be in a voice channel." + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the voice channel's participants. .. versionadded:: 2.0" + +msgid "The camera video quality for the voice channel's participants." +msgstr "The camera video quality for the voice channel's participants." + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." +msgstr "This is similar to :meth:`create_text_channel` except makes a :class:`StageChannel` instead." + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid "Creates a :class:`ForumChannel` for the guild." +msgstr "Creates a :class:`ForumChannel` for the guild." + +msgid "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." +msgstr "Creating a channel of a specified position will not update the position of other channels to follow suit. A follow-up call to :meth:`~ForumChannel.edit` will be required to update the position of the channel in the channel list." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: v2.5" + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. '')." + +msgid ":class:`ForumChannel`" +msgstr ":class:`ForumChannel`" + +msgid "The argument is not in proper form." +msgstr "The argument is not in proper form." + +msgid "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." +msgstr "Same as :meth:`create_text_channel` except makes a :class:`CategoryChannel` instead." + +msgid "The ``category`` parameter is not supported in this function since categories cannot have categories." +msgstr "The ``category`` parameter is not supported in this function since categories cannot have categories." + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Leaves the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." +msgstr "You cannot leave the guild that you own, you must delete it instead via :meth:`delete`." + +msgid "Leaving the guild failed." +msgstr "Leaving the guild failed." + +msgid "Deletes the guild. You must be the guild owner to delete the guild." +msgstr "Deletes the guild. You must be the guild owner to delete the guild." + +msgid "Deleting the guild failed." +msgstr "Deleting the guild failed." + +msgid "You do not have permissions to delete the guild." +msgstr "You do not have permissions to delete the guild." + +msgid "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." +msgstr "Set whether it is required to have MFA enabled on your account to perform moderation actions. You must be the guild owner to do this." + +msgid "Whether MFA should be required to perform moderation actions." +msgstr "Whether MFA should be required to perform moderation actions." + +msgid "The reason to show up in the audit log." +msgstr "The reason to show up in the audit log." + +msgid "The operation failed." +msgstr "The operation failed." + +msgid "You are not the owner of the guild." +msgstr "You are not the owner of the guild." + +msgid "Edits the guild." +msgstr "Edits the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to edit the guild." + +msgid "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." +msgstr "The `rules_channel` and `public_updates_channel` keyword-only parameters were added." + +msgid "The `discovery_splash` and `community` keyword-only parameters were added." +msgstr "The `discovery_splash` and `community` keyword-only parameters were added." + +msgid "The newly updated guild is returned." +msgstr "The newly updated guild is returned." + +msgid "The new name of the guild." +msgstr "The new name of the guild." + +msgid "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." +msgstr "The new description of the guild. Could be ``None`` for no description. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG is supported. GIF is only available to guilds that contain ``ANIMATED_ICON`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the banner. Could be ``None`` to denote removal of the banner. This is only available to guilds that contain ``BANNER`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the invite splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``INVITE_SPLASH`` in :attr:`Guild.features`." + +msgid "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the discovery splash. Only PNG/JPEG supported. Could be ``None`` to denote removing the splash. This is only available to guilds that contain ``DISCOVERABLE`` in :attr:`Guild.features`." + +msgid "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." +msgstr "Whether the guild should be a Community guild. If set to ``True``\\, both ``rules_channel`` and ``public_updates_channel`` parameters are required." + +msgid "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." +msgstr "The new channel that is the AFK channel. Could be ``None`` for no AFK channel." + +msgid "The number of seconds until someone is moved to the AFK channel." +msgstr "The number of seconds until someone is moved to the AFK channel." + +msgid "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." +msgstr "The new owner of the guild to transfer ownership to. Note that you must be owner of the guild to do this." + +msgid "The new verification level for the guild." +msgstr "The new verification level for the guild." + +msgid "The new default notification level for the guild." +msgstr "The new default notification level for the guild." + +msgid "The new explicit content filter for the guild." +msgstr "The new explicit content filter for the guild." + +msgid "The new channel that is used for the system channel. Could be ``None`` for no system channel." +msgstr "The new channel that is used for the system channel. Could be ``None`` for no system channel." + +msgid "The new system channel settings to use with the new system channel." +msgstr "The new system channel settings to use with the new system channel." + +msgid "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." +msgstr "The new preferred locale for the guild. Used as the primary language in the guild. If set, this must be an ISO 639 code, e.g. ``en-US`` or ``ja`` or ``zh-CN``." + +msgid "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." +msgstr "The new channel that is used for rules. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no rules channel." + +msgid "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." +msgstr "The new channel that is used for public updates from Discord. This is only available to guilds that contain ``PUBLIC`` in :attr:`Guild.features`. Could be ``None`` for no public updates channel." + +msgid "Whether the guild should have premium progress bar enabled." +msgstr "Whether the guild should have premium progress bar enabled." + +msgid "Whether the guild should have server invites enabled or disabled." +msgstr "Whether the guild should have server invites enabled or disabled." + +msgid "The reason for editing this guild. Shows up on the audit log." +msgstr "The reason for editing this guild. Shows up on the audit log." + +msgid "You do not have permissions to edit the guild." +msgstr "You do not have permissions to edit the guild." + +msgid "Editing the guild failed." +msgstr "Editing the guild failed." + +msgid "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." +msgstr "The image format passed in to ``icon`` is invalid. It must be PNG or JPG. This is also raised if you are not the owner of the guild and request an ownership transfer." + +msgid "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." +msgstr "The newly updated guild. Note that this has the same limitations as mentioned in :meth:`Client.fetch_guild` and may not have full data." + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid "Retrieves all :class:`abc.GuildChannel` that the guild has." +msgstr "Retrieves all :class:`abc.GuildChannel` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`channels` instead." +msgstr "This method is an API call. For general usage, consider :attr:`channels` instead." + +msgid "All channels in the guild." +msgstr "All channels in the guild." + +msgid "Sequence[:class:`abc.GuildChannel`]" +msgstr "Sequence[:class:`abc.GuildChannel`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channels failed." +msgstr "Retrieving the channels failed." + +msgid "Returns a list of active :class:`Thread` that the client can access." +msgstr "Returns a list of active :class:`Thread` that the client can access." + +msgid "This includes both private and public threads." +msgstr "This includes both private and public threads." + +msgid "The active threads" +msgstr "The active threads" + +msgid "List[:class:`Thread`]" +msgstr "List[:class:`Thread`]" + +msgid "The request to get the active threads failed." +msgstr "The request to get the active threads failed." + +msgid "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." +msgstr "Search for guild members whose usernames or nicknames start with the query string. Unlike :meth:`fetch_members`, this does not require :meth:`Intents.members`." + +msgid "This method is an API call. For general usage, consider filtering :attr:`members` instead." +msgstr "This method is an API call. For general usage, consider filtering :attr:`members` instead." + +msgid "Searches for usernames and nicknames that start with this string, case-insensitive." +msgstr "Searches for usernames and nicknames that start with this string, case-insensitive." + +msgid "The maximum number of members to retrieve, up to 1000." +msgstr "The maximum number of members to retrieve, up to 1000." + +msgid "The list of members that have matched the query." +msgstr "The list of members that have matched the query." + +msgid "List[:class:`Member`]" +msgstr "List[:class:`Member`]" + +msgid "Retrieves a :class:`Member` from a guild ID, and a member ID." +msgstr "Retrieves a :class:`Member` from a guild ID, and a member ID." + +msgid "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." +msgstr "This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead." + +msgid "The member's ID to fetch from." +msgstr "The member's ID to fetch from." + +msgid "The member from the member ID." +msgstr "The member from the member ID." + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Fetching the member failed." +msgstr "Fetching the member failed." + +msgid "Retrieves the :class:`BanEntry` for a user." +msgstr "Retrieves the :class:`BanEntry` for a user." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to get this information." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to get this information." + +msgid "The user to get ban information from." +msgstr "The user to get ban information from." + +msgid "The :class:`BanEntry` object for the specified user." +msgstr "The :class:`BanEntry` object for the specified user." + +msgid ":class:`BanEntry`" +msgstr ":class:`BanEntry`" + +msgid "You do not have proper permissions to get the information." +msgstr "You do not have proper permissions to get the information." + +msgid "This user is not banned." +msgstr "This user is not banned." + +msgid "An error occurred while fetching the information." +msgstr "An error occurred while fetching the information." + +msgid "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel` or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel_or_thread` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." +msgstr "An unknown channel type was received from Discord or the guild the channel belongs to is not the same as the one in this object points to." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving the guild's bans. In order to use this, you must have the :attr:`~Permissions.ban_members` permission. Users will always be returned in ascending order sorted by user ID. If both the ``before`` and ``after`` parameters are provided, only before is respected." + +msgid "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." +msgstr "The ``before``. and ``after`` parameters were changed. They are now of the type :class:`.abc.Snowflake` instead of `SnowflakeTime` to comply with the discord api." + +msgid "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." +msgstr "The ``limit``, ``before``. and ``after`` parameters were added. Now returns a :class:`.BanIterator` instead of a list of ``BanEntry`` objects." + +msgid "The number of bans to retrieve. Defaults to 1000." +msgstr "The number of bans to retrieve. Defaults to 1000." + +msgid "Retrieve bans before the given user." +msgstr "Retrieve bans before the given user." + +msgid "Retrieve bans after the given user." +msgstr "Retrieve bans after the given user." + +msgid ":class:`.BanEntry` -- The ban entry for the ban." +msgstr ":class:`.BanEntry` -- The ban entry for the ban." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.BanIterator\\``" + +msgid "Prunes the guild from its inactive members." +msgstr "Prunes the guild from its inactive members." + +msgid "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." +msgstr "The inactive members are denoted if they have not logged on in ``days`` number of days and have no roles." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to use this." + +msgid "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." +msgstr "To check how many members you would prune without actually pruning, see the :meth:`estimate_pruned_members` function." + +msgid "To prune members that have specific roles see the ``roles`` parameter." +msgstr "To prune members that have specific roles see the ``roles`` parameter." + +msgid "The ``roles`` keyword-only parameter was added." +msgstr "The ``roles`` keyword-only parameter was added." + +msgid "The number of days before counting as inactive." +msgstr "The number of days before counting as inactive." + +msgid "The reason for doing this action. Shows up on the audit log." +msgstr "The reason for doing this action. Shows up on the audit log." + +msgid "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." +msgstr "Whether to compute the prune count. This defaults to ``True`` which makes it prone to timeouts in very large guilds. In order to prevent timeouts, you must set this to ``False``. If this is set to ``False``\\, then this function will always return ``None``." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the pruning process. If a member has a role that is not specified, they'll be excluded." + +msgid "You do not have permissions to prune members." +msgstr "You do not have permissions to prune members." + +msgid "An error occurred while pruning members." +msgstr "An error occurred while pruning members." + +msgid "An integer was not passed for ``days``." +msgstr "An integer was not passed for ``days``." + +msgid "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." +msgstr "The number of members pruned. If ``compute_prune_count`` is ``False`` then this returns ``None``." + +msgid "Gets the list of templates from this guild." +msgstr "Gets the list of templates from this guild." + +msgid "Requires :attr:`~.Permissions.manage_guild` permissions." +msgstr "Requires :attr:`~.Permissions.manage_guild` permissions." + +msgid "The templates for this guild." +msgstr "The templates for this guild." + +msgid "List[:class:`Template`]" +msgstr "List[:class:`Template`]" + +msgid "You don't have permissions to get the templates." +msgstr "You don't have permissions to get the templates." + +msgid "Gets the list of webhooks from this guild." +msgstr "Gets the list of webhooks from this guild." + +msgid "Requires :attr:`~.Permissions.manage_webhooks` permissions." +msgstr "Requires :attr:`~.Permissions.manage_webhooks` permissions." + +msgid "The webhooks for this guild." +msgstr "The webhooks for this guild." + +msgid "List[:class:`Webhook`]" +msgstr "List[:class:`Webhook`]" + +msgid "You don't have permissions to get the webhooks." +msgstr "You don't have permissions to get the webhooks." + +msgid "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." +msgstr "Similar to :meth:`prune_members` except instead of actually pruning members, it returns how many members it would prune from the guild had it been called." + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded. .. versionadded:: 1.7" + +msgid "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." +msgstr "A list of :class:`abc.Snowflake` that represent roles to include in the estimate. If a member has a role that is not specified, they'll be excluded." + +msgid "The number of members estimated to be pruned." +msgstr "The number of members estimated to be pruned." + +msgid "An error occurred while fetching the prune members estimate." +msgstr "An error occurred while fetching the prune members estimate." + +msgid "Returns a list of all active instant invites from the guild." +msgstr "Returns a list of all active instant invites from the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to get this information." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to get this information." + +msgid "The list of invites that are currently active." +msgstr "The list of invites that are currently active." + +msgid "List[:class:`Invite`]" +msgstr "List[:class:`Invite`]" + +msgid "Creates a template for the guild." +msgstr "Creates a template for the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to do this." + +msgid "The name of the template." +msgstr "The name of the template." + +msgid "The description of the template." +msgstr "The description of the template." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.template.Template\\``" + +msgid "Attaches an integration to the guild." +msgstr "Attaches an integration to the guild." + +msgid "The integration type (e.g. Twitch)." +msgstr "The integration type (e.g. Twitch)." + +msgid "The integration ID." +msgstr "The integration ID." + +msgid "You do not have permission to create the integration." +msgstr "You do not have permission to create the integration." + +msgid "The account could not be found." +msgstr "The account could not be found." + +msgid "Returns a list of all integrations attached to the guild." +msgstr "Returns a list of all integrations attached to the guild." + +msgid "The list of integrations that are attached to the guild." +msgstr "The list of integrations that are attached to the guild." + +msgid "List[:class:`Integration`]" +msgstr "List[:class:`Integration`]" + +msgid "Fetching the integrations failed." +msgstr "Fetching the integrations failed." + +msgid "Retrieves a list of all :class:`Sticker`\\s for the guild." +msgstr "Retrieves a list of all :class:`Sticker`\\s for the guild." + +msgid "This method is an API call. For general usage, consider :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider :attr:`stickers` instead." + +msgid "An error occurred fetching the stickers." +msgstr "An error occurred fetching the stickers." + +msgid "The retrieved stickers." +msgstr "The retrieved stickers." + +msgid "List[:class:`GuildSticker`]" +msgstr "List[:class:`GuildSticker`]" + +msgid "Retrieves a custom :class:`Sticker` from the guild." +msgstr "Retrieves a custom :class:`Sticker` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`stickers` instead." + +msgid "The sticker's ID." +msgstr "The sticker's ID." + +msgid "The retrieved sticker." +msgstr "The retrieved sticker." + +msgid ":class:`GuildSticker`" +msgstr ":class:`GuildSticker`" + +msgid "The sticker requested could not be found." +msgstr "The sticker requested could not be found." + +msgid "An error occurred fetching the sticker." +msgstr "An error occurred fetching the sticker." + +msgid "Creates a :class:`Sticker` for the guild." +msgstr "Creates a :class:`Sticker` for the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis_and_stickers` permission to do this." + +msgid "The sticker name. Must be 2 to 30 characters." +msgstr "The sticker name. Must be 2 to 30 characters." + +msgid "The sticker's description. If used, must be 2 to 100 characters." +msgstr "The sticker's description. If used, must be 2 to 100 characters." + +msgid "The name of a unicode emoji that represents the sticker's expression." +msgstr "The name of a unicode emoji that represents the sticker's expression." + +msgid "The file of the sticker to upload." +msgstr "The file of the sticker to upload." + +msgid "The reason for creating this sticker. Shows up on the audit log." +msgstr "The reason for creating this sticker. Shows up on the audit log." + +msgid "The created sticker." +msgstr "The created sticker." + +msgid "You are not allowed to create stickers." +msgstr "You are not allowed to create stickers." + +msgid "An error occurred creating a sticker." +msgstr "An error occurred creating a sticker." + +msgid "The parameters for the sticker are not correctly formatted." +msgstr "The parameters for the sticker are not correctly formatted." + +msgid "Deletes the custom :class:`Sticker` from the guild." +msgstr "Deletes the custom :class:`Sticker` from the guild." + +msgid "The sticker you are deleting." +msgstr "The sticker you are deleting." + +msgid "The reason for deleting this sticker. Shows up on the audit log." +msgstr "The reason for deleting this sticker. Shows up on the audit log." + +msgid "You are not allowed to delete stickers." +msgstr "You are not allowed to delete stickers." + +msgid "An error occurred deleting the sticker." +msgstr "An error occurred deleting the sticker." + +msgid "Retrieves all custom :class:`Emoji`\\s from the guild." +msgstr "Retrieves all custom :class:`Emoji`\\s from the guild." + +msgid "This method is an API call. For general usage, consider :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider :attr:`emojis` instead." + +msgid "An error occurred fetching the emojis." +msgstr "An error occurred fetching the emojis." + +msgid "The retrieved emojis." +msgstr "The retrieved emojis." + +msgid "List[:class:`Emoji`]" +msgstr "List[:class:`Emoji`]" + +msgid "Retrieves a custom :class:`Emoji` from the guild." +msgstr "Retrieves a custom :class:`Emoji` from the guild." + +msgid "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." +msgstr "This method is an API call. For general usage, consider iterating over :attr:`emojis` instead." + +msgid "The emoji's ID." +msgstr "The emoji's ID." + +msgid "The retrieved emoji." +msgstr "The retrieved emoji." + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid "The emoji requested could not be found." +msgstr "The emoji requested could not be found." + +msgid "An error occurred fetching the emoji." +msgstr "An error occurred fetching the emoji." + +msgid "Creates a custom :class:`Emoji` for the guild." +msgstr "Creates a custom :class:`Emoji` for the guild." + +msgid "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." +msgstr "There is currently a limit of 50 static and animated emojis respectively per guild, unless the guild has the ``MORE_EMOJI`` feature which extends the limit to 200." + +msgid "You must have the :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji name. Must be at least 2 characters." +msgstr "The emoji name. Must be at least 2 characters." + +msgid "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." +msgstr "The :term:`py:bytes-like object` representing the image data to use. Only JPG, PNG and GIF images are supported." + +msgid "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." +msgstr "A :class:`list` of :class:`Role`\\s that can use this emoji. Leave empty to make it available to everyone." + +msgid "The reason for creating this emoji. Shows up on the audit log." +msgstr "The reason for creating this emoji. Shows up on the audit log." + +msgid "You are not allowed to create emojis." +msgstr "You are not allowed to create emojis." + +msgid "An error occurred creating an emoji." +msgstr "An error occurred creating an emoji." + +msgid "The created emoji." +msgstr "The created emoji." + +msgid "Deletes the custom :class:`Emoji` from the guild." +msgstr "Deletes the custom :class:`Emoji` from the guild." + +msgid "You must have :attr:`~Permissions.manage_emojis` permission to do this." +msgstr "You must have :attr:`~Permissions.manage_emojis` permission to do this." + +msgid "The emoji you are deleting." +msgstr "The emoji you are deleting." + +msgid "The reason for deleting this emoji. Shows up on the audit log." +msgstr "The reason for deleting this emoji. Shows up on the audit log." + +msgid "You are not allowed to delete emojis." +msgstr "You are not allowed to delete emojis." + +msgid "An error occurred deleting the emoji." +msgstr "An error occurred deleting the emoji." + +msgid "Retrieves all :class:`Role` that the guild has." +msgstr "Retrieves all :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider :attr:`roles` instead." +msgstr "This method is an API call. For general usage, consider :attr:`roles` instead." + +msgid "All roles in the guild." +msgstr "All roles in the guild." + +msgid "Retrieving the roles failed." +msgstr "Retrieving the roles failed." + +msgid "Retrieves a :class:`Role` that the guild has." +msgstr "Retrieves a :class:`Role` that the guild has." + +msgid "This method is an API call. For general usage, consider using :attr:`get_role` instead." +msgstr "This method is an API call. For general usage, consider using :attr:`get_role` instead." + +msgid "The role in the guild with the specified ID." +msgstr "The role in the guild with the specified ID." + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid "Retrieving the role failed." +msgstr "Retrieving the role failed." + +msgid "Creates a :class:`Role` for the guild." +msgstr "Creates a :class:`Role` for the guild." + +msgid "All fields are optional." +msgstr "All fields are optional." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to do this." + +msgid "Can now pass ``int`` to ``colour`` keyword-only parameter." +msgstr "Can now pass ``int`` to ``colour`` keyword-only parameter." + +msgid "The role name. Defaults to 'new role'." +msgstr "The role name. Defaults to 'new role'." + +msgid "The permissions to have. Defaults to no permissions." +msgstr "The permissions to have. Defaults to no permissions." + +msgid "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." +msgstr "The colour for the role. Defaults to :meth:`Colour.default`. This is aliased to ``color`` as well." + +msgid "Indicates if the role should be shown separately in the member list. Defaults to ``False``." +msgstr "Indicates if the role should be shown separately in the member list. Defaults to ``False``." + +msgid "Indicates if the role should be mentionable by others. Defaults to ``False``." +msgstr "Indicates if the role should be mentionable by others. Defaults to ``False``." + +msgid "The reason for creating this role. Shows up on the audit log." +msgstr "The reason for creating this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. If this argument is passed, ``icon`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "The newly created role." +msgstr "The newly created role." + +msgid "You do not have permissions to create the role." +msgstr "You do not have permissions to create the role." + +msgid "Creating the role failed." +msgstr "Creating the role failed." + +msgid "An invalid keyword argument was given." +msgstr "An invalid keyword argument was given." + +msgid "Bulk edits a list of :class:`Role` in the guild." +msgstr "Bulk edits a list of :class:`Role` in the guild." + +msgid "Example:" +msgstr "Example:" + +msgid "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." +msgstr "A :class:`dict` of :class:`Role` to :class:`int` to change the positions of each given role." + +msgid "The reason for editing the role positions. Shows up on the audit log." +msgstr "The reason for editing the role positions. Shows up on the audit log." + +msgid "A list of all the roles in the guild." +msgstr "A list of all the roles in the guild." + +msgid "You do not have permissions to move the roles." +msgstr "You do not have permissions to move the roles." + +msgid "Moving the roles failed." +msgstr "Moving the roles failed." + +msgid "Kicks a user from the guild." +msgstr "Kicks a user from the guild." + +msgid "The user must meet the :class:`abc.Snowflake` abc." +msgstr "The user must meet the :class:`abc.Snowflake` abc." + +msgid "You must have the :attr:`~Permissions.kick_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.kick_members` permission to do this." + +msgid "The user to kick from their guild." +msgstr "The user to kick from their guild." + +msgid "The reason the user got kicked." +msgstr "The reason the user got kicked." + +msgid "You do not have the proper permissions to kick." +msgstr "You do not have the proper permissions to kick." + +msgid "Kicking failed." +msgstr "Kicking failed." + +msgid "Bans a user from the guild." +msgstr "Bans a user from the guild." + +msgid "You must have the :attr:`~Permissions.ban_members` permission to do this." +msgstr "You must have the :attr:`~Permissions.ban_members` permission to do this." + +msgid "The user to ban from their guild." +msgstr "The user to ban from their guild." + +msgid "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." +msgstr "The number of seconds worth of messages to delete from the user in the guild. The minimum is 0 and the maximum is 604800 (i.e. 7 days). The default is 0." + +msgid "The reason the user got banned." +msgstr "The reason the user got banned." + +msgid "You do not have the proper permissions to ban." +msgstr "You do not have the proper permissions to ban." + +msgid "Banning failed." +msgstr "Banning failed." + +msgid "Bulk ban users from the guild." +msgstr "Bulk ban users from the guild." + +msgid "The users must meet the :class:`abc.Snowflake` abc." +msgstr "The users must meet the :class:`abc.Snowflake` abc." + +msgid "An argument list of users to ban from the guild, up to 200." +msgstr "An argument list of users to ban from the guild, up to 200." + +msgid "The reason the users were banned." +msgstr "The reason the users were banned." + +msgid "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." +msgstr "Returns two lists: the first contains members that were successfully banned, while the second is members that could not be banned." + +msgid "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" +msgstr "Tuple[List[:class:`abc.Snowflake`], List[:class:`abc.Snowflake`]]" + +msgid "You tried to ban more than 200 users." +msgstr "You tried to ban more than 200 users." + +msgid "No users were banned." +msgstr "No users were banned." + +msgid "Unbans a user from the guild." +msgstr "Unbans a user from the guild." + +msgid "The user to unban." +msgstr "The user to unban." + +msgid "You do not have the proper permissions to unban." +msgstr "You do not have the proper permissions to unban." + +msgid "Unbanning failed." +msgstr "Unbanning failed." + +msgid "Returns the guild's special vanity invite." +msgstr "Returns the guild's special vanity invite." + +msgid "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." +msgstr "The guild must have ``VANITY_URL`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this as well." + +msgid "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." +msgstr "The special vanity invite. If ``None`` then the guild does not have a vanity invite set." + +msgid "Optional[:class:`Invite`]" +msgstr "Optional[:class:`Invite`]" + +msgid "You do not have the proper permissions to get this." +msgstr "You do not have the proper permissions to get this." + +msgid "Retrieving the vanity invite failed." +msgstr "Retrieving the vanity invite failed." + +msgid "Returns the widget of the guild." +msgstr "Returns the widget of the guild." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`Widget`" +msgstr ":class:`Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "Edits the widget of the guild." +msgstr "Edits the widget of the guild." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission to use this" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission to use this" + +msgid "Whether to enable the widget for the guild." +msgstr "Whether to enable the widget for the guild." + +msgid "The new widget channel. ``None`` removes the widget channel." +msgstr "The new widget channel. ``None`` removes the widget channel." + +msgid "You do not have permission to edit the widget." +msgstr "You do not have permission to edit the widget." + +msgid "Editing the widget failed." +msgstr "Editing the widget failed." + +msgid "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." +msgstr "Requests all members that belong to this guild. In order to use this, :meth:`Intents.members` must be enabled." + +msgid "This is a websocket operation and can be slow." +msgstr "This is a websocket operation and can be slow." + +msgid "Whether to cache the members as well." +msgstr "Whether to cache the members as well." + +msgid "Request members that belong to this guild whose username starts with the query given." +msgstr "Request members that belong to this guild whose username starts with the query given." + +msgid "The string that the username's start with." +msgstr "The string that the username's start with." + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned. .. versionadded:: 1.4" + +msgid "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." +msgstr "List of user IDs to search for. If the user ID is not in the guild then it won't be returned." + +msgid "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." +msgstr "The maximum number of members to send back. If no query is passed, passing ``None`` returns all members. If a ``query`` or ``user_ids`` is passed, must be between 1 and 100. Defaults to 5." + +msgid "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" +msgstr "Whether to request for presences to be provided. This defaults to ``False``. .. versionadded:: 1.6" + +msgid "Whether to request for presences to be provided. This defaults to ``False``." +msgstr "Whether to request for presences to be provided. This defaults to ``False``." + +msgid "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." +msgstr "Whether to cache the members internally. This makes operations such as :meth:`get_member` work for those that matched. Defaults to ``True``." + +msgid "The query timed out waiting for the members." +msgstr "The query timed out waiting for the members." + +msgid "Invalid parameters were passed to the function" +msgstr "Invalid parameters were passed to the function" + +msgid "The presences intent is not enabled." +msgstr "The presences intent is not enabled." + +msgid "Changes client's voice state in the guild." +msgstr "Changes client's voice state in the guild." + +msgid "Channel the client wants to join. Use ``None`` to disconnect." +msgstr "Channel the client wants to join. Use ``None`` to disconnect." + +msgid "Indicates if the client should be self-muted." +msgstr "Indicates if the client should be self-muted." + +msgid "Indicates if the client should be self-deafened." +msgstr "Indicates if the client should be self-deafened." + +msgid "Returns the :class:`WelcomeScreen` of the guild." +msgstr "Returns the :class:`WelcomeScreen` of the guild." + +msgid "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." +msgstr "The guild must have ``COMMUNITY`` in :attr:`~Guild.features`." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in order to get this." + +msgid "The welcome screen of guild." +msgstr "The welcome screen of guild." + +msgid ":class:`WelcomeScreen`" +msgstr ":class:`WelcomeScreen`" + +msgid "Retrieving the welcome screen failed somehow." +msgstr "Retrieving the welcome screen failed somehow." + +msgid "The guild doesn't have a welcome screen or community feature is disabled." +msgstr "The guild doesn't have a welcome screen or community feature is disabled." + +msgid "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." +msgstr "A shorthand for :attr:`WelcomeScreen.edit` without fetching the welcome screen." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the guild to do this." + +msgid "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" +msgstr "The guild must have ``COMMUNITY`` in :attr:`Guild.features`" + +msgid "The new description of welcome screen." +msgstr "The new description of welcome screen." + +msgid "The welcome channels. The order of the channels would be same as the passed list order." +msgstr "The welcome channels. The order of the channels would be same as the passed list order." + +msgid "Whether the welcome screen should be displayed." +msgstr "Whether the welcome screen should be displayed." + +msgid "The reason that shows up on audit log." +msgstr "The reason that shows up on audit log." + +msgid "The edited welcome screen." +msgstr "The edited welcome screen." + +msgid "Editing the welcome screen failed somehow." +msgstr "Editing the welcome screen failed somehow." + +msgid "You don't have permissions to edit the welcome screen." +msgstr "You don't have permissions to edit the welcome screen." + +msgid "This welcome screen does not exist." +msgstr "This welcome screen does not exist." + +msgid "Returns a list of :class:`ScheduledEvent` in the guild." +msgstr "Returns a list of :class:`ScheduledEvent` in the guild." + +msgid "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." +msgstr "This method is an API call. For general usage, consider :attr:`scheduled_events` instead." + +msgid "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." +msgstr "If the scheduled event should be fetched with the number of users that are interested in the events. Defaults to ``True``." + +msgid "The fetched scheduled events." +msgstr "The fetched scheduled events." + +msgid "List[:class:`ScheduledEvent`]" +msgstr "List[:class:`ScheduledEvent`]" + +msgid "The scheduled events intent is not enabled." +msgstr "The scheduled events intent is not enabled." + +msgid "Getting the scheduled events failed." +msgstr "Getting the scheduled events failed." + +msgid "Retrieves a :class:`ScheduledEvent` from event ID." +msgstr "Retrieves a :class:`ScheduledEvent` from event ID." + +msgid "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." +msgstr "This method is an API call. If you have :attr:`Intents.scheduled_events`, consider :meth:`get_scheduled_event` instead." + +msgid "The event's ID to fetch with." +msgstr "The event's ID to fetch with." + +msgid "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." +msgstr "If the scheduled vent should be fetched with the number of users that are interested in the event. Defaults to ``True``." + +msgid "The scheduled event from the event ID." +msgstr "The scheduled event from the event ID." + +msgid "Optional[:class:`ScheduledEvent`]" +msgstr "Optional[:class:`ScheduledEvent`]" + +msgid "Fetching the event failed." +msgstr "Fetching the event failed." + +msgid "Event not found." +msgstr "Event not found." + +msgid "Returns a Scheduled Event with the given ID." +msgstr "Returns a Scheduled Event with the given ID." + +msgid "The scheduled event or ``None`` if not found." +msgstr "The scheduled event or ``None`` if not found." + +msgid "|coro| Creates a scheduled event." +msgstr "|coro| Creates a scheduled event." + +msgid "The name of the scheduled event." +msgstr "The name of the scheduled event." + +msgid "The description of the scheduled event." +msgstr "The description of the scheduled event." + +msgid "A datetime object of when the scheduled event is supposed to start." +msgstr "A datetime object of when the scheduled event is supposed to start." + +msgid "A datetime object of when the scheduled event is supposed to end." +msgstr "A datetime object of when the scheduled event is supposed to end." + +msgid "The location of where the event is happening." +msgstr "The location of where the event is happening." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to change this parameter." + +msgid "The reason to show in the audit log." +msgstr "The reason to show in the audit log." + +msgid "The cover image of the scheduled event" +msgstr "The cover image of the scheduled event" + +msgid "The created scheduled event." +msgstr "The created scheduled event." + +msgid "You do not have the Manage Events permission." +msgstr "You do not have the Manage Events permission." + +msgid "A list of scheduled events in this guild." +msgstr "A list of scheduled events in this guild." + +msgid "Retrieves a list of auto moderation rules for this guild." +msgstr "Retrieves a list of auto moderation rules for this guild." + +msgid "The auto moderation rules for this guild." +msgstr "The auto moderation rules for this guild." + +msgid "List[:class:`AutoModRule`]" +msgstr "List[:class:`AutoModRule`]" + +msgid "Getting the auto moderation rules failed." +msgstr "Getting the auto moderation rules failed." + +msgid "You do not have the Manage Guild permission." +msgstr "You do not have the Manage Guild permission." + +msgid "Retrieves a :class:`AutoModRule` from rule ID." +msgstr "Retrieves a :class:`AutoModRule` from rule ID." + +msgid "The requested auto moderation rule." +msgstr "The requested auto moderation rule." + +msgid ":class:`AutoModRule`" +msgstr ":class:`AutoModRule`" + +msgid "Getting the auto moderation rule failed." +msgstr "Getting the auto moderation rule failed." + +msgid "Creates an auto moderation rule." +msgstr "Creates an auto moderation rule." + +msgid "The name of the auto moderation rule." +msgstr "The name of the auto moderation rule." + +msgid "The type of event that triggers the rule." +msgstr "The type of event that triggers the rule." + +msgid "The rule's trigger type." +msgstr "The rule's trigger type." + +msgid "The rule's trigger metadata." +msgstr "The rule's trigger metadata." + +msgid "The actions to take when the rule is triggered." +msgstr "The actions to take when the rule is triggered." + +msgid "Whether the rule is enabled." +msgstr "Whether the rule is enabled." + +msgid "A list of roles that are exempt from the rule." +msgstr "A list of roles that are exempt from the rule." + +msgid "A list of channels that are exempt from the rule." +msgstr "A list of channels that are exempt from the rule." + +msgid "The reason for creating the rule. Shows up in the audit log." +msgstr "The reason for creating the rule. Shows up in the audit log." + +msgid "The new auto moderation rule." +msgstr "The new auto moderation rule." + +msgid "Creating the auto moderation rule failed." +msgstr "Creating the auto moderation rule failed." + +msgid "Returns the :class:`Onboarding` flow for the guild." +msgstr "Returns the :class:`Onboarding` flow for the guild." + +msgid "The onboarding flow for the guild." +msgstr "The onboarding flow for the guild." + +msgid ":class:`Onboarding`" +msgstr ":class:`Onboarding`" + +msgid "Retrieving the onboarding flow failed somehow." +msgstr "Retrieving the onboarding flow failed somehow." + +msgid "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." +msgstr "A shorthand for :attr:`Onboarding.edit` without fetching the onboarding flow." + +msgid "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` and :attr:`~Permissions.manage_roles` permissions in the guild to do this." + +msgid "The new list of prompts for this flow." +msgstr "The new list of prompts for this flow." + +msgid "The new default channels that users are opted into." +msgstr "The new default channels that users are opted into." + +msgid "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." +msgstr "Whether onboarding should be enabled. Setting this to ``True`` requires the guild to have ``COMMUNITY`` in :attr:`~Guild.features` and at least 7 ``default_channels``." + +msgid "The new onboarding mode." +msgstr "The new onboarding mode." + +msgid "The reason that shows up on Audit log." +msgstr "The reason that shows up on Audit log." + +msgid "The updated onboarding flow." +msgstr "The updated onboarding flow." + +msgid "Editing the onboarding flow failed somehow." +msgstr "Editing the onboarding flow failed somehow." + +msgid "You don't have permissions to edit the onboarding flow." +msgstr "You don't have permissions to edit the onboarding flow." + +msgid "Deletes an auto moderation rule." +msgstr "Deletes an auto moderation rule." + +msgid "The ID of the auto moderation rule." +msgstr "The ID of the auto moderation rule." + +msgid "The reason for deleting the rule. Shows up in the audit log." +msgstr "The reason for deleting the rule. Shows up in the audit log." + +msgid "Deleting the auto moderation rule failed." +msgstr "Deleting the auto moderation rule failed." + +msgid "Creates a test entitlement for the guild." +msgstr "Creates a test entitlement for the guild." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the guild's entitlements." + +msgid "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." +msgstr "This is identical to :meth:`Client.entitlements` with the ``guild`` parameter." + +msgid "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." +msgstr "A namedtuple which represents a ban returned from :meth:`~Guild.bans`." + +msgid "The reason this user was banned." +msgstr "The reason this user was banned." + +msgid "The :class:`User` that was banned." +msgstr "The :class:`User` that was banned." + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid "Represents a Discord member to a :class:`Guild`." +msgstr "Represents a Discord member to a :class:`Guild`." + +msgid "This implements a lot of the functionality of :class:`User`." +msgstr "This implements a lot of the functionality of :class:`User`." + +msgid "Checks if two members are equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are equal. Note that this works with :class:`User` instances too." + +msgid "Checks if two members are not equal. Note that this works with :class:`User` instances too." +msgstr "Checks if two members are not equal. Note that this works with :class:`User` instances too." + +msgid "Returns the member's hash." +msgstr "Returns the member's hash." + +msgid "Returns the member's name with the discriminator or global_name." +msgstr "Returns the member's name with the discriminator or global_name." + +msgid "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC that the member joined the guild. If the member left and rejoined the guild, this will be the latest date. In certain cases, this can be ``None``." + +msgid "The activities that the user is currently doing." +msgstr "The activities that the user is currently doing." + +msgid "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, a user's Spotify activity may not appear if they are listening to a song with a title longer than 128 characters." + +msgid "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Tuple[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "The guild that the member belongs to." +msgstr "The guild that the member belongs to." + +msgid "The guild specific nickname of the user." +msgstr "The guild specific nickname of the user." + +msgid "Whether the member is pending member verification." +msgstr "Whether the member is pending member verification." + +msgid "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." +msgstr "An aware datetime object that specifies the date and time in UTC when the member used their \"Nitro boost\" on the guild, if available. This could be ``None``." + +msgid "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." +msgstr "An aware datetime object that specifies the date and time in UTC when the member will be removed from timeout." + +msgid "Extra attributes of the member." +msgstr "Extra attributes of the member." + +msgid ":class:`MemberFlags`" +msgstr ":class:`MemberFlags`" + +msgid "Equivalent to :attr:`User.name`" +msgstr "Equivalent to :attr:`User.name`" + +msgid "Equivalent to :attr:`User.id`" +msgstr "Equivalent to :attr:`User.id`" + +msgid "Equivalent to :attr:`User.discriminator`" +msgstr "Equivalent to :attr:`User.discriminator`" + +msgid "Equivalent to :attr:`User.bot`" +msgstr "Equivalent to :attr:`User.bot`" + +msgid "Equivalent to :attr:`User.system`" +msgstr "Equivalent to :attr:`User.system`" + +msgid "Equivalent to :attr:`User.created_at`" +msgstr "Equivalent to :attr:`User.created_at`" + +msgid "Equivalent to :attr:`User.default_avatar`" +msgstr "Equivalent to :attr:`User.default_avatar`" + +msgid "Equivalent to :attr:`User.avatar`" +msgstr "Equivalent to :attr:`User.avatar`" + +msgid "Equivalent to :attr:`User.dm_channel`" +msgstr "Equivalent to :attr:`User.dm_channel`" + +msgid "Equivalent to :attr:`User.mutual_guilds`" +msgstr "Equivalent to :attr:`User.mutual_guilds`" + +msgid "Equivalent to :attr:`User.public_flags`" +msgstr "Equivalent to :attr:`User.public_flags`" + +msgid "Equivalent to :attr:`User.banner`" +msgstr "Equivalent to :attr:`User.banner`" + +msgid "Equivalent to :attr:`User.accent_color`" +msgstr "Equivalent to :attr:`User.accent_color`" + +msgid "Equivalent to :attr:`User.accent_colour`" +msgstr "Equivalent to :attr:`User.accent_colour`" + +msgid "The member's overall status as a string value." +msgstr "The member's overall status as a string value." + +msgid "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." +msgstr "The member's overall status. If the value is unknown, then it will be a :class:`str` instead." + +msgid "The member's status on a mobile device, if applicable." +msgstr "The member's status on a mobile device, if applicable." + +msgid "The member's status on the desktop client, if applicable." +msgstr "The member's status on the desktop client, if applicable." + +msgid "The member's status on the web client, if applicable." +msgstr "The member's status on the web client, if applicable." + +msgid "The member's global name, if applicable." +msgstr "The member's global name, if applicable." + +msgid "A helper function that determines if a member is active on a mobile device." +msgstr "A helper function that determines if a member is active on a mobile device." + +msgid "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a colour denoting the rendered colour for the member. If the default colour is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." +msgstr "A property that returns a color denoting the rendered color for the member. If the default color is the one rendered then an instance of :meth:`Colour.default` is returned." + +msgid "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." +msgstr "A :class:`list` of :class:`Role` that the member belongs to. Note that the first element of this list is always the default '@everyone' role." + +msgid "These roles are sorted by their position in the role hierarchy." +msgstr "These roles are sorted by their position in the role hierarchy." + +msgid "Returns a string that allows you to mention the member." +msgstr "Returns a string that allows you to mention the member." + +msgid "Returns the user's display name. This will either be their guild specific nickname, global name or username." +msgstr "Returns the user's display name. This will either be their guild specific nickname, global name or username." + +msgid "Returns the member's display avatar." +msgstr "Returns the member's display avatar." + +msgid "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." +msgstr "For regular members this is just their avatar, but if they have a guild specific avatar then that is returned instead." + +msgid "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." +msgstr "Returns an :class:`Asset` for the guild avatar the member has. If unavailable, ``None`` is returned." + +msgid "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." +msgstr "Returns the primary activity the user is currently doing. Could be ``None`` if no activity is being done." + +msgid "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." +msgstr "Due to a Discord API limitation, this may be ``None`` if the user is listening to a song on Spotify with a title longer than 128 characters." + +msgid "A user may have multiple activities, these can be accessed under :attr:`activities`." +msgstr "A user may have multiple activities, these can be accessed under :attr:`activities`." + +msgid "Checks if the member is mentioned in the specified message." +msgstr "Checks if the member is mentioned in the specified message." + +msgid "Indicates if the member is mentioned in the message." +msgstr "Indicates if the member is mentioned in the message." + +msgid "Returns the member's highest role." +msgstr "Returns the member's highest role." + +msgid "This is useful for figuring where a member stands in the role hierarchy chain." +msgstr "This is useful for figuring where a member stands in the role hierarchy chain." + +msgid "Returns the member's guild permissions." +msgstr "Returns the member's guild permissions." + +msgid "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." +msgstr "This only takes into consideration the guild permissions and not most of the implied permissions or any of the channel permission overwrites. For 100% accurate permission calculation, please use :meth:`abc.GuildChannel.permissions_for`." + +msgid "This does take into consideration guild ownership and the administrator implication." +msgstr "This does take into consideration guild ownership and the administrator implication." + +msgid "Returns the member's current voice state." +msgstr "Returns the member's current voice state." + +msgid "Returns whether the member is timed out." +msgstr "Returns whether the member is timed out." + +msgid "Bans this member. Equivalent to :meth:`Guild.ban`." +msgstr "Bans this member. Equivalent to :meth:`Guild.ban`." + +msgid "Unbans this member. Equivalent to :meth:`Guild.unban`." +msgstr "Unbans this member. Equivalent to :meth:`Guild.unban`." + +msgid "Kicks this member. Equivalent to :meth:`Guild.kick`." +msgstr "Kicks this member. Equivalent to :meth:`Guild.kick`." + +msgid "Edits the member's data." +msgstr "Edits the member's data." + +msgid "Depending on the parameter passed, this requires different permissions listed below:" +msgstr "Depending on the parameter passed, this requires different permissions listed below:" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Permission" +msgstr "Permission" + +msgid "nick" +msgstr "nick" + +msgid ":attr:`Permissions.manage_nicknames`" +msgstr ":attr:`Permissions.manage_nicknames`" + +msgid "mute" +msgstr "mute" + +msgid ":attr:`Permissions.mute_members`" +msgstr ":attr:`Permissions.mute_members`" + +msgid "deafen" +msgstr "deafen" + +msgid ":attr:`Permissions.deafen_members`" +msgstr ":attr:`Permissions.deafen_members`" + +msgid "roles" +msgstr "roles" + +msgid ":attr:`Permissions.manage_roles`" +msgstr ":attr:`Permissions.manage_roles`" + +msgid "voice_channel" +msgstr "voice_channel" + +msgid ":attr:`Permissions.move_members`" +msgstr ":attr:`Permissions.move_members`" + +msgid "communication_disabled_until" +msgstr "communication_disabled_until" + +msgid ":attr:`Permissions.moderate_members`" +msgstr ":attr:`Permissions.moderate_members`" + +msgid "bypass_verification" +msgstr "bypass_verification" + +msgid "See note below" +msgstr "See note below" + +msgid "`bypass_verification` may be edited under three scenarios:" +msgstr "`bypass_verification` may be edited under three scenarios:" + +msgid "Client has :attr:`Permissions.manage_guild`" +msgstr "Client has :attr:`Permissions.manage_guild`" + +msgid "Client has :attr:`Permissions.manage_roles`" +msgstr "Client has :attr:`Permissions.manage_roles`" + +msgid "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" +msgstr "Client has ALL THREE of :attr:`Permissions.moderate_members`, :attr:`Permissions.kick_members`, and :attr:`Permissions.ban_members`" + +msgid "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." +msgstr "Can now pass ``None`` to ``voice_channel`` to kick a member from voice." + +msgid "The newly member is now optionally returned, if applicable." +msgstr "The newly member is now optionally returned, if applicable." + +msgid "The member's new nickname. Use ``None`` to remove the nickname." +msgstr "The member's new nickname. Use ``None`` to remove the nickname." + +msgid "Indicates if the member should be guild muted or un-muted." +msgstr "Indicates if the member should be guild muted or un-muted." + +msgid "Indicates if the member should be guild deafened or un-deafened." +msgstr "Indicates if the member should be guild deafened or un-deafened." + +msgid "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" +msgstr "Indicates if the member should be suppressed in stage channels. .. versionadded:: 1.7" + +msgid "Indicates if the member should be suppressed in stage channels." +msgstr "Indicates if the member should be suppressed in stage channels." + +msgid "The member's new list of roles. This *replaces* the roles." +msgstr "The member's new list of roles. This *replaces* the roles." + +msgid "The voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "The reason for editing this member. Shows up on the audit log." +msgstr "The reason for editing this member. Shows up on the audit log." + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout. .. versionadded:: 2.0" + +msgid "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." +msgstr "Temporarily puts the member in timeout until this time. If the value is ``None``, then the user is removed from timeout." + +msgid "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" +msgstr "Indicates if the member should bypass the guild's verification requirements. .. versionadded:: 2.6" + +msgid "Indicates if the member should bypass the guild's verification requirements." +msgstr "Indicates if the member should bypass the guild's verification requirements." + +msgid "The newly updated member, if applicable. This is only returned when certain fields are updated." +msgstr "The newly updated member, if applicable. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.Member`]" +msgstr "Optional[:class:`.Member`]" + +msgid "You do not have the proper permissions to the action requested." +msgstr "You do not have the proper permissions to the action requested." + +msgid "Applies a timeout to a member in the guild until a set datetime." +msgstr "Applies a timeout to a member in the guild until a set datetime." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to timeout a member." + +msgid "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." +msgstr "The date and time to timeout the member for. If this is ``None`` then the member is removed from timeout." + +msgid "You do not have permissions to timeout members." +msgstr "You do not have permissions to timeout members." + +msgid "An error occurred doing the request." +msgstr "An error occurred doing the request." + +msgid "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." +msgstr "Applies a timeout to a member in the guild for a set duration. A shortcut method for :meth:`~.timeout`, and equivalent to ``timeout(until=datetime.utcnow() + duration, reason=reason)``." + +msgid "The duration to timeout the member for." +msgstr "The duration to timeout the member for." + +msgid "Removes the timeout from a member." +msgstr "Removes the timeout from a member." + +msgid "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." +msgstr "You must have the :attr:`~Permissions.moderate_members` permission to remove the timeout." + +msgid "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." +msgstr "This is equivalent to calling :meth:`~.timeout` and passing ``None`` to the ``until`` parameter." + +msgid "You do not have permissions to remove the timeout." +msgstr "You do not have permissions to remove the timeout." + +msgid "Request to speak in the connected channel." +msgstr "Request to speak in the connected channel." + +msgid "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Only applies to stage channels. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." +msgstr "Requesting members that are not the client is equivalent to :attr:`.edit` providing ``suppress`` as ``False``." + +msgid "Moves a member to a new voice channel (they must be connected first)." +msgstr "Moves a member to a new voice channel (they must be connected first)." + +msgid "You must have the :attr:`~Permissions.move_members` permission to use this." +msgstr "You must have the :attr:`~Permissions.move_members` permission to use this." + +msgid "This raises the same exceptions as :meth:`edit`." +msgstr "This raises the same exceptions as :meth:`edit`." + +msgid "Can now pass ``None`` to kick a member from voice." +msgstr "Can now pass ``None`` to kick a member from voice." + +msgid "The new voice channel to move the member to. Pass ``None`` to kick them from voice." +msgstr "The new voice channel to move the member to. Pass ``None`` to kick them from voice." + +msgid "Gives the member a number of :class:`Role`\\s." +msgstr "Gives the member a number of :class:`Role`\\s." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the added :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to give to the member." + +msgid "The reason for adding these roles. Shows up on the audit log." +msgstr "The reason for adding these roles. Shows up on the audit log." + +msgid "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically add roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to add these roles." +msgstr "You do not have permissions to add these roles." + +msgid "Adding roles failed." +msgstr "Adding roles failed." + +msgid "Equivalent to :attr:`User.avatar_decoration`" +msgstr "Equivalent to :attr:`User.avatar_decoration`" + +msgid "Equivalent to :attr:`User.is_migrated`" +msgstr "Equivalent to :attr:`User.is_migrated`" + +msgid "Equivalent to :attr:`User.jump_url`" +msgstr "Equivalent to :attr:`User.jump_url`" + +msgid "Removes :class:`Role`\\s from this member." +msgstr "Removes :class:`Role`\\s from this member." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this, and the removed :class:`Role`\\s must appear lower in the list of roles than the highest role of the member." + +msgid "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." +msgstr "An argument list of :class:`abc.Snowflake` representing a :class:`Role` to remove from the member." + +msgid "The reason for removing these roles. Shows up on the audit log." +msgstr "The reason for removing these roles. Shows up on the audit log." + +msgid "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." +msgstr "Whether to atomically remove roles. This will ensure that multiple operations will always be applied regardless of the current state of the cache." + +msgid "You do not have permissions to remove these roles." +msgstr "You do not have permissions to remove these roles." + +msgid "Removing the roles failed." +msgstr "Removing the roles failed." + +msgid "Returns a role with the given ID from roles which the member has." +msgstr "Returns a role with the given ID from roles which the member has." + +msgid "The role or ``None`` if not found in the member's roles." +msgstr "The role or ``None`` if not found in the member's roles." + +msgid "Represents a Discord template." +msgstr "Represents a Discord template." + +msgid "The template code." +msgstr "The template code." + +msgid "How many times the template has been used." +msgstr "How many times the template has been used." + +msgid "The creator of the template." +msgstr "The creator of the template." + +msgid "An aware datetime in UTC representing when the template was created." +msgstr "An aware datetime in UTC representing when the template was created." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." +msgstr "An aware datetime in UTC representing when the template was last updated. This is referred to as \"last synced\" in the official Discord client." + +msgid "The source guild." +msgstr "The source guild." + +msgid "Whether the template has unsynced changes." +msgstr "Whether the template has unsynced changes." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "Creates a :class:`.Guild` using the template." +msgstr "Creates a :class:`.Guild` using the template." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Sync the template to the guild's current state." +msgstr "Sync the template to the guild's current state." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this." + +msgid "The template is no longer synced in-place, instead it is returned." +msgstr "The template is no longer synced in-place, instead it is returned." + +msgid "The newly synced template." +msgstr "The newly synced template." + +msgid ":class:`Template`" +msgstr ":class:`Template`" + +msgid "Syncing the template failed." +msgstr "Syncing the template failed." + +msgid "You don't have permissions to sync the template." +msgstr "You don't have permissions to sync the template." + +msgid "This template does not exist." +msgstr "This template does not exist." + +msgid "Edit the template metadata." +msgstr "Edit the template metadata." + +msgid "The template is no longer edited in-place, instead it is returned." +msgstr "The template is no longer edited in-place, instead it is returned." + +msgid "The template's new name." +msgstr "The template's new name." + +msgid "The template's new description." +msgstr "The template's new description." + +msgid "The newly edited template." +msgstr "The newly edited template." + +msgid "Editing the template failed." +msgstr "Editing the template failed." + +msgid "You don't have permissions to edit the template." +msgstr "You don't have permissions to edit the template." + +msgid "Delete the template." +msgstr "Delete the template." + +msgid "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "You must have the :attr:`~Permissions.manage_guild` permission in the source guild to do this. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Deleting the template failed." +msgstr "Deleting the template failed." + +msgid "You don't have permissions to delete the template." +msgstr "You don't have permissions to delete the template." + +msgid "The template url." +msgstr "The template url." + +msgid "AutoMod" +msgstr "AutoMod" + +msgid "Represents a guild's auto moderation rule." +msgstr "Represents a guild's auto moderation rule." + +msgid "Checks if two rules are equal." +msgstr "Checks if two rules are equal." + +msgid "Checks if two rules are not equal." +msgstr "Checks if two rules are not equal." + +msgid "Returns the rule's hash." +msgstr "Returns the rule's hash." + +msgid "Returns the rule's name." +msgstr "Returns the rule's name." + +msgid "The rule's ID." +msgstr "The rule's ID." + +msgid "The rule's name." +msgstr "The rule's name." + +msgid "The ID of the user who created this rule." +msgstr "The ID of the user who created this rule." + +msgid "Indicates in what context the rule is checked." +msgstr "Indicates in what context the rule is checked." + +msgid ":class:`AutoModEventType`" +msgstr ":class:`AutoModEventType`" + +msgid "Indicates what type of information is checked to determine whether the rule is triggered." +msgstr "Indicates what type of information is checked to determine whether the rule is triggered." + +msgid ":class:`AutoModTriggerType`" +msgstr ":class:`AutoModTriggerType`" + +msgid ":class:`AutoModTriggerMetadata`" +msgstr ":class:`AutoModTriggerMetadata`" + +msgid "The actions to perform when the rule is triggered." +msgstr "The actions to perform when the rule is triggered." + +msgid "List[:class:`AutoModAction`]" +msgstr "List[:class:`AutoModAction`]" + +msgid "Whether this rule is enabled." +msgstr "Whether this rule is enabled." + +msgid "The IDs of the roles that are exempt from this rule." +msgstr "The IDs of the roles that are exempt from this rule." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "The IDs of the channels that are exempt from this rule." +msgstr "The IDs of the channels that are exempt from this rule." + +msgid "The guild this rule belongs to." +msgstr "The guild this rule belongs to." + +msgid "The member who created this rule." +msgstr "The member who created this rule." + +msgid "The roles that are exempt from this rule." +msgstr "The roles that are exempt from this rule." + +msgid "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a role is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "The channels that are exempt from this rule." +msgstr "The channels that are exempt from this rule." + +msgid "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." +msgstr "If a channel is not found in the guild's cache, then it will be returned as an :class:`Object`." + +msgid "Deletes this rule." +msgstr "Deletes this rule." + +msgid "The reason for deleting this rule. Shows up in the audit log." +msgstr "The reason for deleting this rule. Shows up in the audit log." + +msgid "Edits this rule." +msgstr "Edits this rule." + +msgid "The rule's new name." +msgstr "The rule's new name." + +msgid "The new context in which the rule is checked." +msgstr "The new context in which the rule is checked." + +msgid "The new trigger metadata." +msgstr "The new trigger metadata." + +msgid "The new actions to perform when the rule is triggered." +msgstr "The new actions to perform when the rule is triggered." + +msgid "The roles that will be exempt from this rule." +msgstr "The roles that will be exempt from this rule." + +msgid "The channels that will be exempt from this rule." +msgstr "The channels that will be exempt from this rule." + +msgid "The reason for editing this rule. Shows up in the audit log." +msgstr "The reason for editing this rule. Shows up in the audit log." + +msgid "The newly updated rule, if applicable. This is only returned when fields are updated." +msgstr "The newly updated rule, if applicable. This is only returned when fields are updated." + +msgid "Optional[:class:`.AutoModRule`]" +msgstr "Optional[:class:`.AutoModRule`]" + +msgid "Represents an action for a guild's auto moderation rule." +msgstr "Represents an action for a guild's auto moderation rule." + +msgid "The action's type." +msgstr "The action's type." + +msgid ":class:`AutoModActionType`" +msgstr ":class:`AutoModActionType`" + +msgid "The action's metadata." +msgstr "The action's metadata." + +msgid ":class:`AutoModActionMetadata`" +msgstr ":class:`AutoModActionMetadata`" + +msgid "Represents an action's metadata." +msgstr "Represents an action's metadata." + +msgid "Depending on the action's type, different attributes will be used." +msgstr "Depending on the action's type, different attributes will be used." + +msgid "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." +msgstr "The ID of the channel to send the message to. Only for actions of type :attr:`AutoModActionType.send_alert_message`." + +msgid "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." +msgstr "How long the member that triggered the action should be timed out for. Only for actions of type :attr:`AutoModActionType.timeout`." + +msgid ":class:`datetime.timedelta`" +msgstr ":class:`datetime.timedelta`" + +msgid "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." +msgstr "An additional message shown to members when their message is blocked. Maximum 150 characters. Only for actions of type :attr:`AutoModActionType.block_message`." + +msgid "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." +msgstr "Represents a rule's trigger metadata, defining additional data used to determine when a rule triggers." + +msgid "Depending on the trigger type, different metadata attributes will be used:" +msgstr "Depending on the trigger type, different metadata attributes will be used:" + +msgid "Attribute" +msgstr "Attribute" + +msgid "Trigger Types" +msgstr "Trigger Types" + +msgid ":attr:`keyword_filter`" +msgstr ":attr:`keyword_filter`" + +msgid ":attr:`AutoModTriggerType.keyword`" +msgstr ":attr:`AutoModTriggerType.keyword`" + +msgid ":attr:`regex_patterns`" +msgstr ":attr:`regex_patterns`" + +msgid ":attr:`presets`" +msgstr ":attr:`presets`" + +msgid ":attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`allow_list`" +msgstr ":attr:`allow_list`" + +msgid ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" +msgstr ":attr:`AutoModTriggerType.keyword`\\, :attr:`AutoModTriggerType.keyword_preset`" + +msgid ":attr:`mention_total_limit`" +msgstr ":attr:`mention_total_limit`" + +msgid ":attr:`AutoModTriggerType.mention_spam`" +msgstr ":attr:`AutoModTriggerType.mention_spam`" + +msgid "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." +msgstr "Each attribute has limits that may change based on the trigger type. See `here `_ for information on attribute limits." + +msgid "A list of substrings to filter." +msgstr "A list of substrings to filter." + +msgid "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." +msgstr "A list of regex patterns to filter using Rust-flavored regex, which is not fully compatible with regex syntax supported by the builtin `re` module." + +msgid "A list of preset keyword sets to filter." +msgstr "A list of preset keyword sets to filter." + +msgid "List[:class:`AutoModKeywordPresetType`]" +msgstr "List[:class:`AutoModKeywordPresetType`]" + +msgid "A list of substrings to allow, overriding keyword and regex matches." +msgstr "A list of substrings to allow, overriding keyword and regex matches." + +msgid "The total number of unique role and user mentions allowed." +msgstr "The total number of unique role and user mentions allowed." + +msgid "Invites" +msgstr "Invites" + +msgid "Represents a \"partial\" invite guild." +msgstr "Represents a \"partial\" invite guild." + +msgid "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." +msgstr "This model will be given when the user is not part of the guild the :class:`Invite` resolves to." + +msgid "Checks if two partial guilds are the same." +msgstr "Checks if two partial guilds are the same." + +msgid "Checks if two partial guilds are not the same." +msgstr "Checks if two partial guilds are not the same." + +msgid "Return the partial guild's hash." +msgstr "Return the partial guild's hash." + +msgid "Returns the partial guild's name." +msgstr "Returns the partial guild's name." + +msgid "The partial guild's name." +msgstr "The partial guild's name." + +msgid "The partial guild's ID." +msgstr "The partial guild's ID." + +msgid "The partial guild's verification level." +msgstr "The partial guild's verification level." + +msgid "A list of features the guild has. See :attr:`Guild.features` for more information." +msgstr "A list of features the guild has. See :attr:`Guild.features` for more information." + +msgid "The partial guild's description." +msgstr "The partial guild's description." + +msgid "Represents a \"partial\" invite channel." +msgstr "Represents a \"partial\" invite channel." + +msgid "Checks if two partial channels are the same." +msgstr "Checks if two partial channels are the same." + +msgid "Checks if two partial channels are not the same." +msgstr "Checks if two partial channels are not the same." + +msgid "Return the partial channel's hash." +msgstr "Return the partial channel's hash." + +msgid "Returns the partial channel's name." +msgstr "Returns the partial channel's name." + +msgid "The partial channel's name." +msgstr "The partial channel's name." + +msgid "The partial channel's ID." +msgstr "The partial channel's ID." + +msgid "The partial channel's type." +msgstr "The partial channel's type." + +msgid ":class:`ChannelType`" +msgstr ":class:`ChannelType`" + +msgid "The string that allows you to mention the channel." +msgstr "The string that allows you to mention the channel." + +msgid "Returns the channel's creation time in UTC." +msgstr "Returns the channel's creation time in UTC." + +msgid "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." +msgstr "Represents a Discord :class:`Guild` or :class:`abc.GuildChannel` invite." + +msgid "Checks if two invites are equal." +msgstr "Checks if two invites are equal." + +msgid "Checks if two invites are not equal." +msgstr "Checks if two invites are not equal." + +msgid "Returns the invite hash." +msgstr "Returns the invite hash." + +msgid "Returns the invite URL." +msgstr "Returns the invite URL." + +msgid "The following table illustrates what methods will obtain the attributes:" +msgstr "The following table illustrates what methods will obtain the attributes:" + +msgid "Method" +msgstr "Method" + +msgid ":attr:`max_age`" +msgstr ":attr:`max_age`" + +msgid ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites`\\, :meth:`Guild.invites`" + +msgid ":attr:`max_uses`" +msgstr ":attr:`max_uses`" + +msgid ":attr:`created_at`" +msgstr ":attr:`created_at`" + +msgid ":attr:`temporary`" +msgstr ":attr:`temporary`" + +msgid ":attr:`uses`" +msgstr ":attr:`uses`" + +msgid ":attr:`approximate_member_count`" +msgstr ":attr:`approximate_member_count`" + +msgid ":meth:`Client.fetch_invite` with `with_counts` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_counts` enabled" + +msgid ":attr:`approximate_presence_count`" +msgstr ":attr:`approximate_presence_count`" + +msgid ":attr:`expires_at`" +msgstr ":attr:`expires_at`" + +msgid ":meth:`Client.fetch_invite` with `with_expiration` enabled" +msgstr ":meth:`Client.fetch_invite` with `with_expiration` enabled" + +msgid "If it's not in the table above then it is available by all methods." +msgstr "If it's not in the table above then it is available by all methods." + +msgid "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." +msgstr "How long before the invite expires in seconds. A value of ``0`` indicates that it doesn't expire." + +msgid "The URL fragment used for the invite." +msgstr "The URL fragment used for the invite." + +msgid "The guild the invite is for. Can be ``None`` if it's from a group direct message." +msgstr "The guild the invite is for. Can be ``None`` if it's from a group direct message." + +msgid "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" +msgstr "Optional[Union[:class:`Guild`, :class:`Object`, :class:`PartialInviteGuild`]]" + +msgid "Indicates if the invite has been revoked." +msgstr "Indicates if the invite has been revoked." + +msgid "An aware UTC datetime object denoting the time the invite was created." +msgstr "An aware UTC datetime object denoting the time the invite was created." + +msgid "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." +msgstr "Indicates that the invite grants temporary membership. If ``True``, members who joined via this invite will be kicked upon disconnect." + +msgid "How many times the invite has been used." +msgstr "How many times the invite has been used." + +msgid "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." +msgstr "How many times the invite can be used. A value of ``0`` indicates that it has unlimited uses." + +msgid "The user who created the invite." +msgstr "The user who created the invite." + +msgid "Optional[:class:`User`]" +msgstr "Optional[:class:`User`]" + +msgid "The approximate number of members in the guild." +msgstr "The approximate number of members in the guild." + +msgid "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." +msgstr "The approximate number of members currently active in the guild. This includes idle, dnd, online, and invisible members. Offline members are excluded." + +msgid "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." +msgstr "The expiration date of the invite. If the value is ``None`` when received through `Client.fetch_invite` with `with_expiration` enabled, the invite will never expire." + +msgid "The channel the invite is for." +msgstr "The channel the invite is for." + +msgid "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" +msgstr "Union[:class:`abc.GuildChannel`, :class:`Object`, :class:`PartialInviteChannel`]" + +msgid "The type of target for the voice channel invite." +msgstr "The type of target for the voice channel invite." + +msgid ":class:`InviteTarget`" +msgstr ":class:`InviteTarget`" + +msgid "The user whose stream to display for this invite, if any." +msgstr "The user whose stream to display for this invite, if any." + +msgid "The embedded application the invite targets, if any." +msgstr "The embedded application the invite targets, if any." + +msgid "Optional[:class:`PartialAppInfo`]" +msgstr "Optional[:class:`PartialAppInfo`]" + +msgid "The scheduled event linked with the invite." +msgstr "The scheduled event linked with the invite." + +msgid "Returns the proper code portion of the invite." +msgstr "Returns the proper code portion of the invite." + +msgid "A property that retrieves the invite URL." +msgstr "A property that retrieves the invite URL." + +msgid "Revokes the instant invite." +msgstr "Revokes the instant invite." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to do this." + +msgid "The reason for deleting this invite. Shows up on the audit log." +msgstr "The reason for deleting this invite. Shows up on the audit log." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "Links the given scheduled event to this invite." +msgstr "Links the given scheduled event to this invite." + +msgid "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." +msgstr "Scheduled events aren't actually associated with invites on the API. Any guild channel invite can have an event attached to it. Using :meth:`abc.GuildChannel.create_invite`, :meth:`Client.fetch_invite`, or this method, you can link scheduled events." + +msgid "The scheduled event object to link." +msgstr "The scheduled event object to link." + +msgid "Role" +msgstr "Role" + +msgid "Represents a Discord role in a :class:`Guild`." +msgstr "Represents a Discord role in a :class:`Guild`." + +msgid "Checks if two roles are equal." +msgstr "Checks if two roles are equal." + +msgid "Checks if two roles are not equal." +msgstr "Checks if two roles are not equal." + +msgid "Checks if a role is higher than another in the hierarchy." +msgstr "Checks if a role is higher than another in the hierarchy." + +msgid "Checks if a role is lower than another in the hierarchy." +msgstr "Checks if a role is lower than another in the hierarchy." + +msgid "Checks if a role is higher or equal to another in the hierarchy." +msgstr "Checks if a role is higher or equal to another in the hierarchy." + +msgid "Checks if a role is lower or equal to another in the hierarchy." +msgstr "Checks if a role is lower or equal to another in the hierarchy." + +msgid "Return the role's hash." +msgstr "Return the role's hash." + +msgid "Returns the role's name." +msgstr "Returns the role's name." + +msgid "The ID for the role." +msgstr "The ID for the role." + +msgid "The name of the role." +msgstr "The name of the role." + +msgid "The guild the role belongs to." +msgstr "The guild the role belongs to." + +msgid "Indicates if the role will be displayed separately from other members." +msgstr "Indicates if the role will be displayed separately from other members." + +msgid "The position of the role. This number is usually positive. The bottom role has a position of 0." +msgstr "The position of the role. This number is usually positive. The bottom role has a position of 0." + +msgid "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." +msgstr "Multiple roles can have the same position number. As a consequence of this, comparing via role position is prone to subtle bugs if checking for role hierarchy. The recommended and correct way to compare for roles in the hierarchy is using the comparison operators on the role objects themselves." + +msgid "Indicates if the role is managed by the guild through some form of integrations such as Twitch." +msgstr "Indicates if the role is managed by the guild through some form of integrations such as Twitch." + +msgid "Indicates if the role can be mentioned by users." +msgstr "Indicates if the role can be mentioned by users." + +msgid "The role tags associated with this role." +msgstr "The role tags associated with this role." + +msgid "Optional[:class:`RoleTags`]" +msgstr "Optional[:class:`RoleTags`]" + +msgid "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." +msgstr "The role's unicode emoji. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`." + +msgid "Extra attributes of the role." +msgstr "Extra attributes of the role." + +msgid ":class:`RoleFlags`" +msgstr ":class:`RoleFlags`" + +msgid "Checks if the role is the default role." +msgstr "Checks if the role is the default role." + +msgid "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is associated with a bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is managed by an integration. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the role is able to be assigned or removed by the bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Returns the role's permissions." +msgstr "Returns the role's permissions." + +msgid "Returns the role colour. An alias exists under ``color``." +msgstr "Returns the role colour. An alias exists under ``color``." + +msgid "Returns the role color. An alias exists under ``colour``." +msgstr "Returns the role color. An alias exists under ``colour``." + +msgid "Returns the role's creation time in UTC." +msgstr "Returns the role's creation time in UTC." + +msgid "Returns a string that allows you to mention a role." +msgstr "Returns a string that allows you to mention a role." + +msgid "Returns all the members with this role." +msgstr "Returns all the members with this role." + +msgid "Returns the role's icon asset, if available." +msgstr "Returns the role's icon asset, if available." + +msgid "Edits the role." +msgstr "Edits the role." + +msgid "You must have the :attr:`~Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_roles` permission to use this." + +msgid "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." +msgstr "Edits are no longer in-place, the newly edited role is returned instead. Added ``icon`` and ``unicode_emoji``." + +msgid "The new role name to change to." +msgstr "The new role name to change to." + +msgid "The new permissions to change to." +msgstr "The new permissions to change to." + +msgid "The new colour to change to. (aliased to color as well)" +msgstr "The new colour to change to. (aliased to color as well)" + +msgid "Indicates if the role should be shown separately in the member list." +msgstr "Indicates if the role should be shown separately in the member list." + +msgid "Indicates if the role should be mentionable by others." +msgstr "Indicates if the role should be mentionable by others." + +msgid "The new role's position. This must be below your top role's position, or it will fail." +msgstr "The new role's position. This must be below your top role's position, or it will fail." + +msgid "The reason for editing this role. Shows up on the audit log." +msgstr "The reason for editing this role. Shows up on the audit log." + +msgid "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." +msgstr "A :term:`py:bytes-like object` representing the icon. Only PNG/JPEG/WebP is supported. If this argument is passed, ``unicode_emoji`` is set to None. Only available to guilds that contain ``ROLE_ICONS`` in :attr:`Guild.features`. Could be ``None`` to denote removal of the icon." + +msgid "The newly edited role." +msgstr "The newly edited role." + +msgid "You do not have permissions to change the role." +msgstr "You do not have permissions to change the role." + +msgid "Editing the role failed." +msgstr "Editing the role failed." + +msgid "An invalid position was given or the default role was asked to be moved." +msgstr "An invalid position was given or the default role was asked to be moved." + +msgid "Deletes the role." +msgstr "Deletes the role." + +msgid "The reason for deleting this role. Shows up on the audit log." +msgstr "The reason for deleting this role. Shows up on the audit log." + +msgid "You do not have permissions to delete the role." +msgstr "You do not have permissions to delete the role." + +msgid "Deleting the role failed." +msgstr "Deleting the role failed." + +msgid "Represents tags on a role." +msgstr "Represents tags on a role." + +msgid "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." +msgstr "A role tag is a piece of extra information attached to a managed role that gives it context for the reason the role is managed." + +msgid "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." +msgstr "While this can be accessed, a useful interface is also provided in the :class:`Role` and :class:`Guild` classes as well." + +msgid "The bot's user ID that manages this role." +msgstr "The bot's user ID that manages this role." + +msgid "The integration ID that manages the role." +msgstr "The integration ID that manages the role." + +msgid "Whether the role is associated with a bot." +msgstr "Whether the role is associated with a bot." + +msgid "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." +msgstr "Whether the role is the premium subscriber, AKA \"boost\", role for the guild." + +msgid "Whether the role is managed by an integration." +msgstr "Whether the role is managed by an integration." + +msgid "Scheduled Event" +msgstr "Scheduled Event" + +msgid "Represents a Discord Guild Scheduled Event." +msgstr "Represents a Discord Guild Scheduled Event." + +msgid "Checks if two scheduled events are equal." +msgstr "Checks if two scheduled events are equal." + +msgid "Checks if two scheduled events are not equal." +msgstr "Checks if two scheduled events are not equal." + +msgid "Returns the scheduled event's hash." +msgstr "Returns the scheduled event's hash." + +msgid "Returns the scheduled event's name." +msgstr "Returns the scheduled event's name." + +msgid "The guild where the scheduled event is happening." +msgstr "The guild where the scheduled event is happening." + +msgid "The time when the event will start" +msgstr "The time when the event will start" + +msgid "The time when the event is supposed to end." +msgstr "The time when the event is supposed to end." + +msgid "The status of the scheduled event." +msgstr "The status of the scheduled event." + +msgid ":class:`ScheduledEventStatus`" +msgstr ":class:`ScheduledEventStatus`" + +msgid "The location of the event. See :class:`ScheduledEventLocation` for more information." +msgstr "The location of the event. See :class:`ScheduledEventLocation` for more information." + +msgid ":class:`ScheduledEventLocation`" +msgstr ":class:`ScheduledEventLocation`" + +msgid "The number of users that have marked themselves as interested in the event." +msgstr "The number of users that have marked themselves as interested in the event." + +msgid "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." +msgstr "The ID of the user who created the event. It may be ``None`` because events created before October 25th, 2021 haven't had their creators tracked." + +msgid "The resolved user object of who created the event." +msgstr "The resolved user object of who created the event." + +msgid "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." +msgstr "The privacy level of the event. Currently, the only possible value is :attr:`ScheduledEventPrivacyLevel.guild_only`, which is default, so there is no need to use this attribute." + +msgid ":class:`ScheduledEventPrivacyLevel`" +msgstr ":class:`ScheduledEventPrivacyLevel`" + +msgid "Returns the scheduled event's creation time in UTC." +msgstr "Returns the scheduled event's creation time in UTC." + +msgid "An alias to :attr:`.subscriber_count`" +msgstr "An alias to :attr:`.subscriber_count`" + +msgid "The url to reference the scheduled event." +msgstr "The url to reference the scheduled event." + +msgid "Returns the scheduled event cover image asset, if available." +msgstr "Returns the scheduled event cover image asset, if available." + +msgid "Use the :attr:`image` property instead." +msgstr "Use the :attr:`image` property instead." + +msgid "Edits the Scheduled Event's data" +msgstr "Edits the Scheduled Event's data" + +msgid "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." +msgstr "All parameters are optional unless ``location.type`` is :attr:`ScheduledEventLocationType.external`, then ``end_time`` is required." + +msgid "Will return a new :class:`.ScheduledEvent` object if applicable." +msgstr "Will return a new :class:`.ScheduledEvent` object if applicable." + +msgid "The new name of the event." +msgstr "The new name of the event." + +msgid "The new description of the event." +msgstr "The new description of the event." + +msgid "The location of the event." +msgstr "The location of the event." + +msgid "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." +msgstr "The status of the event. It is recommended, however, to use :meth:`.start`, :meth:`.complete`, and :meth:`cancel` to edit statuses instead." + +msgid "The new starting time for the event." +msgstr "The new starting time for the event." + +msgid "The new ending time of the event." +msgstr "The new ending time of the event." + +msgid "The cover image of the scheduled event." +msgstr "The cover image of the scheduled event." + +msgid "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." +msgstr "The cover image of the scheduled event. .. deprecated:: 2.7 Use the `image` argument instead." + +msgid "Use the `image` argument instead." +msgstr "Use the `image` argument instead." + +msgid "The newly updated scheduled event object. This is only returned when certain fields are updated." +msgstr "The newly updated scheduled event object. This is only returned when certain fields are updated." + +msgid "Optional[:class:`.ScheduledEvent`]" +msgstr "Optional[:class:`.ScheduledEvent`]" + +msgid "Deletes the scheduled event." +msgstr "Deletes the scheduled event." + +msgid "Starts the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Starts the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.scheduled`." + +msgid "The newly updated scheduled event object." +msgstr "The newly updated scheduled event object." + +msgid "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Ends/completes the scheduled event. Shortcut from :meth:`.edit`." + +msgid "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." +msgstr "This method can only be used if :attr:`.status` is :attr:`ScheduledEventStatus.active`." + +msgid "Cancels the scheduled event. Shortcut from :meth:`.edit`." +msgstr "Cancels the scheduled event. Shortcut from :meth:`.edit`." + +msgid "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." +msgstr "Returns an :class:`AsyncIterator` representing the users or members subscribed to the event." + +msgid "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." +msgstr "The ``after`` and ``before`` parameters must represent member or user objects and meet the :class:`abc.Snowflake` abc." + +msgid "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." +msgstr "Even is ``as_member`` is set to ``True``, if the user is outside the guild, it will be a :class:`User` object." + +msgid "The maximum number of results to return." +msgstr "The maximum number of results to return." + +msgid "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." +msgstr "Whether to fetch :class:`Member` objects instead of user objects. There may still be :class:`User` objects if the user is outside the guild." + +msgid "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves users after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." +msgstr "Union[:class:`User`, :class:`Member`] -- The subscribed :class:`Member`. If ``as_member`` is set to ``False`` or the user is outside the guild, it will be a :class:`User` object." + +msgid "Fetching the subscribed users failed." +msgstr "Fetching the subscribed users failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ScheduledEventSubscribersIterator\\``" + +msgid "Getting members instead of user objects: ::" +msgstr "Getting members instead of user objects: ::" + +msgid "Represents a scheduled event's location." +msgstr "Represents a scheduled event's location." + +msgid "Setting the ``value`` to its corresponding type will set the location type automatically:" +msgstr "Setting the ``value`` to its corresponding type will set the location type automatically:" + +msgid "Type of Input" +msgstr "Type of Input" + +msgid "Location Type" +msgstr "Location Type" + +msgid ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" +msgstr ":class:`StageChannel` :class:`VoiceChannel` :class:`str`" + +msgid ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" +msgstr ":attr:`ScheduledEventLocationType.stage_instance` :attr:`ScheduledEventLocationType.voice` :attr:`ScheduledEventLocationType.external`" + +msgid "The actual location of the scheduled event." +msgstr "The actual location of the scheduled event." + +msgid "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" +msgstr "Union[:class:`str`, :class:`StageChannel`, :class:`VoiceChannel`, :class:`Object`]" + +msgid "The type of location." +msgstr "The type of location." + +msgid ":class:`ScheduledEventLocationType`" +msgstr ":class:`ScheduledEventLocationType`" + +msgid "Welcome Screen" +msgstr "Welcome Screen" + +msgid "Represents the welcome screen of a guild." +msgstr "Represents the welcome screen of a guild." + +msgid "The description text displayed on the welcome screen." +msgstr "The description text displayed on the welcome screen." + +msgid "A list of channels displayed on welcome screen." +msgstr "A list of channels displayed on welcome screen." + +msgid "List[:class:`WelcomeScreenChannel`]" +msgstr "List[:class:`WelcomeScreenChannel`]" + +msgid "Indicates whether the welcome screen is enabled or not." +msgstr "Indicates whether the welcome screen is enabled or not." + +msgid "The guild this welcome screen belongs to." +msgstr "The guild this welcome screen belongs to." + +msgid "Edits the welcome screen." +msgstr "Edits the welcome screen." + +msgid "Example" +msgstr "Example" + +msgid "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." +msgstr "Welcome channels can only accept custom emojis if :attr:`~Guild.premium_tier` is level 2 or above." + +msgid "Represents a welcome channel displayed on :class:`WelcomeScreen`" +msgstr "Represents a welcome channel displayed on :class:`WelcomeScreen`" + +msgid "The channel that is being referenced." +msgstr "The channel that is being referenced." + +msgid ":class:`abc.Snowflake`" +msgstr ":class:`abc.Snowflake`" + +msgid "The description of the channel that is shown on the welcome screen." +msgstr "The description of the channel that is shown on the welcome screen." + +msgid "The emoji of the channel that is shown on welcome screen." +msgstr "The emoji of the channel that is shown on welcome screen." + +msgid "Onboarding" +msgstr "Onboarding" + +msgid "Represents the onboarding flow for a guild." +msgstr "Represents the onboarding flow for a guild." + +msgid "A list of prompts displayed in the onboarding flow." +msgstr "A list of prompts displayed in the onboarding flow." + +msgid "List[:class:`OnboardingPrompt`]" +msgstr "List[:class:`OnboardingPrompt`]" + +msgid "Whether onboarding is enabled in the guild." +msgstr "Whether onboarding is enabled in the guild." + +msgid "The current onboarding mode." +msgstr "The current onboarding mode." + +msgid ":class:`OnboardingMode`" +msgstr ":class:`OnboardingMode`" + +msgid "The channels that members are opted into by default." +msgstr "The channels that members are opted into by default." + +msgid "Edits this onboarding flow." +msgstr "Edits this onboarding flow." + +msgid "The reason for editing this onboarding flow. Shows up on the audit log." +msgstr "The reason for editing this onboarding flow. Shows up on the audit log." + +msgid "Adds a new onboarding prompt." +msgstr "Adds a new onboarding prompt." + +msgid "The type of onboarding prompt." +msgstr "The type of onboarding prompt." + +msgid "The prompt's title." +msgstr "The prompt's title." + +msgid "The list of options available in the prompt." +msgstr "The list of options available in the prompt." + +msgid "Whether the user is limited to selecting one option on this prompt." +msgstr "Whether the user is limited to selecting one option on this prompt." + +msgid "Whether the user is required to answer this prompt." +msgstr "Whether the user is required to answer this prompt." + +msgid "Whether this prompt is displayed in the initial onboarding flow." +msgstr "Whether this prompt is displayed in the initial onboarding flow." + +msgid "The reason for adding this prompt. Shows up on the audit log." +msgstr "The reason for adding this prompt. Shows up on the audit log." + +msgid "Append an onboarding prompt onto this flow." +msgstr "Append an onboarding prompt onto this flow." + +msgid "The onboarding prompt to append." +msgstr "The onboarding prompt to append." + +msgid "The reason for appending this prompt. Shows up on the audit log." +msgstr "The reason for appending this prompt. Shows up on the audit log." + +msgid "Get an onboarding prompt with the given ID." +msgstr "Get an onboarding prompt with the given ID." + +msgid "The ID of the prompt to get." +msgstr "The ID of the prompt to get." + +msgid "The matching prompt, or None if it didn't exist." +msgstr "The matching prompt, or None if it didn't exist." + +msgid ":class:`OnboardingPrompt`" +msgstr ":class:`OnboardingPrompt`" + +msgid "Delete an onboarding prompt with the given ID." +msgstr "Delete an onboarding prompt with the given ID." + +msgid "The ID of the prompt to delete." +msgstr "The ID of the prompt to delete." + +msgid "The reason for deleting this prompt. Shows up on the audit log." +msgstr "The reason for deleting this prompt. Shows up on the audit log." + +msgid "No prompt with this ID exists." +msgstr "No prompt with this ID exists." + +msgid "Represents an onboarding prompt displayed in :class:`Onboarding`." +msgstr "Represents an onboarding prompt displayed in :class:`Onboarding`." + +msgid "The id of the prompt." +msgstr "The id of the prompt." + +msgid ":class:`PromptType`" +msgstr ":class:`PromptType`" + +msgid "List[:class:`PromptOption`]" +msgstr "List[:class:`PromptOption`]" + +msgid "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." +msgstr "Represents an onboarding prompt option displayed in :class:`OnboardingPrompt`." + +msgid "The id of the prompt option." +msgstr "The id of the prompt option." + +msgid "The channels assigned to the user when they select this option." +msgstr "The channels assigned to the user when they select this option." + +msgid "List[:class:`Snowflake`]" +msgstr "List[:class:`Snowflake`]" + +msgid "The roles assigned to the user when they select this option." +msgstr "The roles assigned to the user when they select this option." + +msgid "The emoji displayed with the option." +msgstr "The emoji displayed with the option." + +msgid "Union[:class:`Emoji`, :class:`PartialEmoji`]" +msgstr "Union[:class:`Emoji`, :class:`PartialEmoji`]" + +msgid "The option's title." +msgstr "The option's title." + +msgid "The option's description." +msgstr "The option's description." + +msgid "Integration" +msgstr "Integration" + +msgid "Represents a guild integration." +msgstr "Represents a guild integration." + +msgid "The integration name." +msgstr "The integration name." + +msgid "The guild of the integration." +msgstr "The guild of the integration." + +msgid "The integration type (i.e. Twitch)." +msgstr "The integration type (i.e. Twitch)." + +msgid "Whether the integration is currently enabled." +msgstr "Whether the integration is currently enabled." + +msgid "The account linked to this integration." +msgstr "The account linked to this integration." + +msgid ":class:`IntegrationAccount`" +msgstr ":class:`IntegrationAccount`" + +msgid "The user that added this integration." +msgstr "The user that added this integration." + +msgid "Deletes the integration." +msgstr "Deletes the integration." + +msgid "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" +msgstr "The reason the integration was deleted. Shows up on the audit log. .. versionadded:: 2.0" + +msgid "The reason the integration was deleted. Shows up on the audit log." +msgstr "The reason the integration was deleted. Shows up on the audit log." + +msgid "You do not have permission to delete the integration." +msgstr "You do not have permission to delete the integration." + +msgid "Deleting the integration failed." +msgstr "Deleting the integration failed." + +msgid "Represents an integration account." +msgstr "Represents an integration account." + +msgid "The account ID." +msgstr "The account ID." + +msgid "The account name." +msgstr "The account name." + +msgid "Represents a bot integration on discord." +msgstr "Represents a bot integration on discord." + +msgid "The integration account information." +msgstr "The integration account information." + +msgid "The application tied to this integration." +msgstr "The application tied to this integration." + +msgid ":class:`IntegrationApplication`" +msgstr ":class:`IntegrationApplication`" + +msgid "Represents an application for a bot integration." +msgstr "Represents an application for a bot integration." + +msgid "The ID for this application." +msgstr "The ID for this application." + +msgid "The application's name." +msgstr "The application's name." + +msgid "The application's icon hash." +msgstr "The application's icon hash." + +msgid "The application's description. Can be an empty string." +msgstr "The application's description. Can be an empty string." + +msgid "The summary of the application. Can be an empty string." +msgstr "The summary of the application. Can be an empty string." + +msgid "The bot user on this application." +msgstr "The bot user on this application." + +msgid "Represents a stream integration for Twitch or YouTube." +msgstr "Represents a stream integration for Twitch or YouTube." + +msgid "Where the integration is currently syncing." +msgstr "Where the integration is currently syncing." + +msgid "Whether emoticons should be synced for this integration (currently twitch only)." +msgstr "Whether emoticons should be synced for this integration (currently twitch only)." + +msgid "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour of expiring subscribers. Aliased to ``expire_behavior`` as well." + +msgid ":class:`ExpireBehaviour`" +msgstr ":class:`ExpireBehaviour`" + +msgid "The grace period (in days) for expiring subscribers." +msgstr "The grace period (in days) for expiring subscribers." + +msgid "The user for the integration." +msgstr "The user for the integration." + +msgid "An aware UTC datetime representing when the integration was last synced." +msgstr "An aware UTC datetime representing when the integration was last synced." + +msgid "An alias for :attr:`expire_behaviour`." +msgstr "An alias for :attr:`expire_behaviour`." + +msgid "The role which the integration uses for subscribers." +msgstr "The role which the integration uses for subscribers." + +msgid "Edits the integration." +msgstr "Edits the integration." + +msgid "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." +msgstr "The behaviour when an integration subscription lapses. Aliased to ``expire_behavior`` as well." + +msgid "The period (in days) where the integration will ignore lapsed subscriptions." +msgstr "The period (in days) where the integration will ignore lapsed subscriptions." + +msgid "Where emoticons should be synced for this integration (currently twitch only)." +msgstr "Where emoticons should be synced for this integration (currently twitch only)." + +msgid "You do not have permission to edit the integration." +msgstr "You do not have permission to edit the integration." + +msgid "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." +msgstr "``expire_behaviour`` did not receive a :class:`ExpireBehaviour`." + +msgid "Syncs the integration." +msgstr "Syncs the integration." + +msgid "You do not have permission to sync the integration." +msgstr "You do not have permission to sync the integration." + +msgid "Syncing the integration failed." +msgstr "Syncing the integration failed." + +msgid "Widget" +msgstr "Widget" + +msgid "Represents a :class:`Guild` widget." +msgstr "Represents a :class:`Guild` widget." + +msgid "Checks if two widgets are the same." +msgstr "Checks if two widgets are the same." + +msgid "Checks if two widgets are not the same." +msgstr "Checks if two widgets are not the same." + +msgid "Returns the widget's JSON URL." +msgstr "Returns the widget's JSON URL." + +msgid "The guild's name." +msgstr "The guild's name." + +msgid "The accessible voice channels in the guild." +msgstr "The accessible voice channels in the guild." + +msgid "List[:class:`WidgetChannel`]" +msgstr "List[:class:`WidgetChannel`]" + +msgid "The online members in the server. Offline members do not appear in the widget." +msgstr "The online members in the server. Offline members do not appear in the widget." + +msgid "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." +msgstr "Due to a Discord limitation, if this data is available the users will be \"anonymized\" with linear IDs and discriminator information being incorrect. Likewise, the number of members retrieved is capped." + +msgid "Returns the member's creation time in UTC." +msgstr "Returns the member's creation time in UTC." + +msgid "The JSON URL of the widget." +msgstr "The JSON URL of the widget." + +msgid "The invite URL for the guild, if available." +msgstr "The invite URL for the guild, if available." + +msgid "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." +msgstr "Retrieves an :class:`Invite` from the widget's invite URL. This is the same as :meth:`Client.fetch_invite`; the invite code is abstracted away." + +msgid "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`Invite.approximate_member_count` and :attr:`Invite.approximate_presence_count` fields." + +msgid "The invite from the widget's invite URL." +msgstr "The invite from the widget's invite URL." + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid "Represents a \"partial\" widget channel." +msgstr "Represents a \"partial\" widget channel." + +msgid "The channel's ID." +msgstr "The channel's ID." + +msgid "The channel's position" +msgstr "The channel's position" + +msgid "Represents a \"partial\" member of the widget's guild." +msgstr "Represents a \"partial\" member of the widget's guild." + +msgid "Checks if two widget members are the same." +msgstr "Checks if two widget members are the same." + +msgid "Checks if two widget members are not the same." +msgstr "Checks if two widget members are not the same." + +msgid "Return the widget member's hash." +msgstr "Return the widget member's hash." + +msgid "Returns the widget member's `name#discriminator`." +msgstr "Returns the widget member's `name#discriminator`." + +msgid "The member's ID." +msgstr "The member's ID." + +msgid "The member's username." +msgstr "The member's username." + +msgid "The member's discriminator." +msgstr "The member's discriminator." + +msgid "Whether the member is a bot." +msgstr "Whether the member is a bot." + +msgid "The member's status." +msgstr "The member's status." + +msgid ":class:`Status`" +msgstr ":class:`Status`" + +msgid "The member's nickname." +msgstr "The member's nickname." + +msgid "The member's avatar hash." +msgstr "The member's avatar hash." + +msgid "The member's activity." +msgstr "The member's activity." + +msgid "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" +msgstr "Optional[Union[:class:`BaseActivity`, :class:`Spotify`]]" + +msgid "Whether the member is currently deafened." +msgstr "Whether the member is currently deafened." + +msgid "Whether the member is currently muted." +msgstr "Whether the member is currently muted." + +msgid "Whether the member is currently being suppressed." +msgstr "Whether the member is currently being suppressed." + +msgid "Which channel the member is connected to." +msgstr "Which channel the member is connected to." + +msgid "Optional[:class:`WidgetChannel`]" +msgstr "Optional[:class:`WidgetChannel`]" + +msgid "Returns the member's display name." +msgstr "Returns the member's display name." + +msgid "Threads" +msgstr "Threads" + +msgid "Represents a Discord thread." +msgstr "Represents a Discord thread." + +msgid "Checks if two threads are equal." +msgstr "Checks if two threads are equal." + +msgid "Checks if two threads are not equal." +msgstr "Checks if two threads are not equal." + +msgid "Returns the thread's hash." +msgstr "Returns the thread's hash." + +msgid "Returns the thread's name." +msgstr "Returns the thread's name." + +msgid "The thread name." +msgstr "The thread name." + +msgid "The guild the thread belongs to." +msgstr "The guild the thread belongs to." + +msgid "The thread ID." +msgstr "The thread ID." + +msgid "This ID is the same as the thread starting message ID." +msgstr "This ID is the same as the thread starting message ID." + +msgid "The parent :class:`TextChannel` ID this thread belongs to." +msgstr "The parent :class:`TextChannel` ID this thread belongs to." + +msgid "The user's ID that created this thread." +msgstr "The user's ID that created this thread." + +msgid "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this thread. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "An approximate number of messages in this thread. This caps at 50." +msgstr "An approximate number of messages in this thread. This caps at 50." + +msgid "An approximate number of members in this thread. This caps at 50." +msgstr "An approximate number of members in this thread. This caps at 50." + +msgid "A thread member representing yourself, if you've joined the thread. This could not be available." +msgstr "A thread member representing yourself, if you've joined the thread. This could not be available." + +msgid "Optional[:class:`ThreadMember`]" +msgstr "Optional[:class:`ThreadMember`]" + +msgid "Whether the thread is archived." +msgstr "Whether the thread is archived." + +msgid "Whether the thread is locked." +msgstr "Whether the thread is locked." + +msgid "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. This is always ``True`` for public threads." + +msgid "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." +msgstr "The duration in minutes until the thread is automatically archived due to inactivity. Usually a value of 60, 1440, 4320 and 10080." + +msgid "An aware timestamp of when the thread's archived status was last updated in UTC." +msgstr "An aware timestamp of when the thread's archived status was last updated in UTC." + +msgid "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." +msgstr "An aware timestamp of when the thread was created. Only available for threads created after 2022-01-09." + +msgid "Extra features of the thread." +msgstr "Extra features of the thread." + +msgid ":class:`ChannelFlags`" +msgstr ":class:`ChannelFlags`" + +msgid "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." +msgstr "Number of messages ever sent in a thread. It's similar to message_count on message creation, but will not decrement the number when a message is deleted." + +msgid "The channel's Discord type." +msgstr "The channel's Discord type." + +msgid "The parent channel this thread belongs to." +msgstr "The parent channel this thread belongs to." + +msgid "The member this thread belongs to." +msgstr "The member this thread belongs to." + +msgid "The string that allows you to mention the thread." +msgstr "The string that allows you to mention the thread." + +msgid "Returns a URL that allows the client to jump to the thread." +msgstr "Returns a URL that allows the client to jump to the thread." + +msgid "A list of thread members in this thread, including the bot if it is a member of this thread." +msgstr "A list of thread members in this thread, including the bot if it is a member of this thread." + +msgid "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." +msgstr "This requires :attr:`Intents.members` to be properly filled. Most of the time however, this data is not provided by the gateway and a call to :meth:`fetch_members` is needed." + +msgid "A list of tags applied to this thread." +msgstr "A list of tags applied to this thread." + +msgid "This is only available for threads in forum channels." +msgstr "This is only available for threads in forum channels." + +msgid "List[:class:`ForumTag`]" +msgstr "List[:class:`ForumTag`]" + +msgid "Returns the last message from this thread in cache." +msgstr "Returns the last message from this thread in cache." + +msgid "The message might not be valid or point to an existing message." +msgstr "The message might not be valid or point to an existing message." + +msgid "Reliable Fetching" +msgstr "Reliable Fetching" + +msgid "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." +msgstr "For a slightly more reliable method of fetching the last message, consider using either :meth:`history` or :meth:`fetch_message` with the :attr:`last_message_id` attribute." + +msgid "The last message in this channel or ``None`` if not found." +msgstr "The last message in this channel or ``None`` if not found." + +msgid "Optional[:class:`Message`]" +msgstr "Optional[:class:`Message`]" + +msgid "The category channel the parent channel belongs to, if applicable." +msgstr "The category channel the parent channel belongs to, if applicable." + +msgid "The parent channel's category." +msgstr "The parent channel's category." + +msgid "Optional[:class:`CategoryChannel`]" +msgstr "Optional[:class:`CategoryChannel`]" + +msgid "The parent channel was not cached and returned ``None``." +msgstr "The parent channel was not cached and returned ``None``." + +msgid "The category channel ID the parent channel belongs to, if applicable." +msgstr "The category channel ID the parent channel belongs to, if applicable." + +msgid "The parent channel's category ID." +msgstr "The parent channel's category ID." + +msgid "Returns the message that started this thread." +msgstr "Returns the message that started this thread." + +msgid "The ID for this message is the same as the thread ID." +msgstr "The ID for this message is the same as the thread ID." + +msgid "The message that started this thread or ``None`` if not found in the cache." +msgstr "The message that started this thread or ``None`` if not found in the cache." + +msgid "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the thread is pinned to the top of its parent forum channel. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the thread is a private thread." +msgstr "Whether the thread is a private thread." + +msgid "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." +msgstr "A private thread is only viewable by those that have been explicitly invited or have :attr:`~.Permissions.manage_threads`." + +msgid "Whether the thread is a news thread." +msgstr "Whether the thread is a news thread." + +msgid "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." +msgstr "A news thread is a thread that has a parent that is a news channel, i.e. :meth:`.TextChannel.is_news` is ``True``." + +msgid "Whether the thread is NSFW or not." +msgstr "Whether the thread is NSFW or not." + +msgid "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." +msgstr "An NSFW thread is a thread that has a parent that is an NSFW channel, i.e. :meth:`.TextChannel.is_nsfw` is ``True``." + +msgid "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." +msgstr "Handles permission resolution for the :class:`~discord.Member` or :class:`~discord.Role`." + +msgid "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." +msgstr "Since threads do not have their own permissions, they inherit them from the parent channel. This is a convenience method for calling :meth:`~discord.TextChannel.permissions_for` on the parent channel." + +msgid "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." +msgstr "The object to resolve permissions for. This could be either a member or a role. If it's a role then member overwrites are not computed." + +msgid "The resolved permissions for the member or role." +msgstr "The resolved permissions for the member or role." + +msgid ":class:`~discord.Permissions`" +msgstr ":class:`~discord.Permissions`" + +msgid "The parent channel was not cached and returned ``None``" +msgstr "The parent channel was not cached and returned ``None``" + +msgid "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." +msgstr "Deletes a list of messages. This is similar to :meth:`Message.delete` except it bulk deletes multiple messages." + +msgid "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." +msgstr "As a special case, if the number of messages is 0, then nothing is done. If the number of messages is 1 then single message delete is done. If it's more than two, then bulk delete is used." + +msgid "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." +msgstr "You cannot bulk delete more than 100 messages or messages that are older than 14 days old." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to use this." + +msgid "Usable only by bot accounts." +msgstr "Usable only by bot accounts." + +msgid "An iterable of messages denoting which ones to bulk delete." +msgstr "An iterable of messages denoting which ones to bulk delete." + +msgid "The reason for deleting the messages. Shows up on the audit log." +msgstr "The reason for deleting the messages. Shows up on the audit log." + +msgid "The number of messages to delete was more than 100." +msgstr "The number of messages to delete was more than 100." + +msgid "You do not have proper permissions to delete the messages, or you're not using a bot account." +msgstr "You do not have proper permissions to delete the messages, or you're not using a bot account." + +msgid "If single delete, then the message was already deleted." +msgstr "If single delete, then the message was already deleted." + +msgid "Deleting the messages failed." +msgstr "Deleting the messages failed." + +msgid "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." +msgstr "Purges a list of messages that meet the criteria given by the predicate ``check``. If a ``check`` is not provided then all messages are deleted without discrimination." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own (unless you are a user account). The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." +msgstr "The number of messages to search through. This is not the number of messages that will be deleted, though it can be." + +msgid "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." +msgstr "The function used to check if a message should be deleted. It must take a :class:`Message` as its sole parameter." + +msgid "Same as ``before`` in :meth:`history`." +msgstr "Same as ``before`` in :meth:`history`." + +msgid "Same as ``after`` in :meth:`history`." +msgstr "Same as ``after`` in :meth:`history`." + +msgid "Same as ``around`` in :meth:`history`." +msgstr "Same as ``around`` in :meth:`history`." + +msgid "Same as ``oldest_first`` in :meth:`history`." +msgstr "Same as ``oldest_first`` in :meth:`history`." + +msgid "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." +msgstr "If ``True``, use bulk delete. Setting this to ``False`` is useful for mass-deleting a bot's own messages without :attr:`Permissions.manage_messages`. When ``True``, will fall back to single delete if messages are older than two weeks." + +msgid "The list of messages that were deleted." +msgstr "The list of messages that were deleted." + +msgid "List[:class:`.Message`]" +msgstr "List[:class:`.Message`]" + +msgid "You do not have proper permissions to do the actions required." +msgstr "You do not have proper permissions to do the actions required." + +msgid "Purging the messages failed." +msgstr "Purging the messages failed." + +msgid "Deleting bot's messages ::" +msgstr "Deleting bot's messages ::" + +msgid "Edits the thread." +msgstr "Edits the thread." + +msgid "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." +msgstr "Editing the thread requires :attr:`.Permissions.manage_threads`. The thread creator can also edit ``name``, ``archived`` or ``auto_archive_duration``. Note that if the thread is locked then only those with :attr:`.Permissions.manage_threads` can send messages in it or unarchive a thread." + +msgid "The thread must be unarchived to be edited." +msgstr "The thread must be unarchived to be edited." + +msgid "The new name of the thread." +msgstr "The new name of the thread." + +msgid "Whether to archive the thread or not." +msgstr "Whether to archive the thread or not." + +msgid "Whether to lock the thread or not." +msgstr "Whether to lock the thread or not." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads." + +msgid "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new duration in minutes before a thread is automatically archived for inactivity. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The reason for editing this thread. Shows up on the audit log." +msgstr "The reason for editing this thread. Shows up on the audit log." + +msgid "Whether to pin the thread or not. This only works if the thread is part of a forum." +msgstr "Whether to pin the thread or not. This only works if the thread is part of a forum." + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set. .. versionadded:: 2.3" + +msgid "The set of tags to apply to the thread. Each tag object should have an ID set." +msgstr "The set of tags to apply to the thread. Each tag object should have an ID set." + +msgid "The newly edited thread." +msgstr "The newly edited thread." + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid "You do not have permissions to edit the thread." +msgstr "You do not have permissions to edit the thread." + +msgid "Editing the thread failed." +msgstr "Editing the thread failed." + +msgid "Archives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Archives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Whether to lock the thread on archive, Defaults to ``False``." +msgstr "Whether to lock the thread on archive, Defaults to ``False``." + +msgid "The updated thread." +msgstr "The updated thread." + +msgid "Unarchives the thread. This is a shorthand of :meth:`.edit`." +msgstr "Unarchives the thread. This is a shorthand of :meth:`.edit`." + +msgid "Joins this thread." +msgstr "Joins this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to join a thread. If the thread is private, :attr:`~Permissions.manage_threads` is also needed." + +msgid "You do not have permissions to join the thread." +msgstr "You do not have permissions to join the thread." + +msgid "Joining the thread failed." +msgstr "Joining the thread failed." + +msgid "Leaves this thread." +msgstr "Leaves this thread." + +msgid "Leaving the thread failed." +msgstr "Leaving the thread failed." + +msgid "Adds a user to this thread." +msgstr "Adds a user to this thread." + +msgid "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." +msgstr "You must have :attr:`~Permissions.send_messages_in_threads` to add a user to a public thread. If the thread is private and :attr:`invitable` is ``False``, then :attr:`~Permissions.manage_threads` is required." + +msgid "The user to add to the thread." +msgstr "The user to add to the thread." + +msgid "You do not have permissions to add the user to the thread." +msgstr "You do not have permissions to add the user to the thread." + +msgid "Adding the user to the thread failed." +msgstr "Adding the user to the thread failed." + +msgid "Removes a user from this thread." +msgstr "Removes a user from this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." +msgstr "You must have :attr:`~Permissions.manage_threads` or be the creator of the thread to remove a user." + +msgid "The user to remove from the thread." +msgstr "The user to remove from the thread." + +msgid "You do not have permissions to remove the user from the thread." +msgstr "You do not have permissions to remove the user from the thread." + +msgid "Removing the user from the thread failed." +msgstr "Removing the user from the thread failed." + +msgid "Retrieves all :class:`ThreadMember` that are in this thread." +msgstr "Retrieves all :class:`ThreadMember` that are in this thread." + +msgid "This requires :attr:`Intents.members` to get information about members other than yourself." +msgstr "This requires :attr:`Intents.members` to get information about members other than yourself." + +msgid "All thread members in the thread." +msgstr "All thread members in the thread." + +msgid "List[:class:`ThreadMember`]" +msgstr "List[:class:`ThreadMember`]" + +msgid "Retrieving the members failed." +msgstr "Retrieving the members failed." + +msgid "Deletes this thread." +msgstr "Deletes this thread." + +msgid "You must have :attr:`~Permissions.manage_threads` to delete threads." +msgstr "You must have :attr:`~Permissions.manage_threads` to delete threads." + +msgid "You do not have permissions to delete this thread." +msgstr "You do not have permissions to delete this thread." + +msgid "Deleting the thread failed." +msgstr "Deleting the thread failed." + +msgid "Represents a Discord thread member." +msgstr "Represents a Discord thread member." + +msgid "Checks if two thread members are equal." +msgstr "Checks if two thread members are equal." + +msgid "Checks if two thread members are not equal." +msgstr "Checks if two thread members are not equal." + +msgid "Returns the thread member's hash." +msgstr "Returns the thread member's hash." + +msgid "Returns the thread member's name." +msgstr "Returns the thread member's name." + +msgid "The thread member's ID." +msgstr "The thread member's ID." + +msgid "The thread's ID." +msgstr "The thread's ID." + +msgid "The time the member joined the thread in UTC." +msgstr "The time the member joined the thread in UTC." + +msgid "The thread this member belongs to." +msgstr "The thread this member belongs to." + +msgid "Stages" +msgstr "Stages" + +msgid "Represents a Discord guild stage channel." +msgstr "Represents a Discord guild stage channel." + +msgid "Checks if two channels are equal." +msgstr "Checks if two channels are equal." + +msgid "Checks if two channels are not equal." +msgstr "Checks if two channels are not equal." + +msgid "Returns the channel's hash." +msgstr "Returns the channel's hash." + +msgid "Returns the channel's name." +msgstr "Returns the channel's name." + +msgid "The channel name." +msgstr "The channel name." + +msgid "The guild the channel belongs to." +msgstr "The guild the channel belongs to." + +msgid "The channel ID." +msgstr "The channel ID." + +msgid "The channel's topic. ``None`` if it isn't set." +msgstr "The channel's topic. ``None`` if it isn't set." + +msgid "The category channel ID this channel belongs to, if applicable." +msgstr "The category channel ID this channel belongs to, if applicable." + +msgid "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the channel list. This is a number that starts at 0. e.g. the top channel is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "The channel's limit for number of members that can be in a stage channel." +msgstr "The channel's limit for number of members that can be in a stage channel." + +msgid "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "Optional[:class:`VoiceRegion`]" +msgstr "Optional[:class:`VoiceRegion`]" + +msgid "The camera video quality for the stage channel's participants." +msgstr "The camera video quality for the stage channel's participants." + +msgid ":class:`VideoQualityMode`" +msgstr ":class:`VideoQualityMode`" + +msgid "Extra features of the channel." +msgstr "Extra features of the channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message. .. versionadded:: 2.5" + +msgid "A list of members who are requesting to speak in the stage channel." +msgstr "A list of members who are requesting to speak in the stage channel." + +msgid "A list of members who have been permitted to speak in the stage channel." +msgstr "A list of members who have been permitted to speak in the stage channel." + +msgid "A list of members who are listening in the stage channel." +msgstr "A list of members who are listening in the stage channel." + +msgid "Checks if the channel is NSFW." +msgstr "Checks if the channel is NSFW." + +msgid "Fetches the last message from this channel in cache." +msgstr "Fetches the last message from this channel in cache." + +msgid "You do not have proper permissions to delete the messages." +msgstr "You do not have proper permissions to delete the messages." + +msgid "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." +msgstr "You must have the :attr:`~Permissions.manage_messages` permission to delete messages even if they are your own. The :attr:`~Permissions.read_message_history` permission is also needed to retrieve message history." + +msgid "Gets the list of webhooks from this channel." +msgstr "Gets the list of webhooks from this channel." + +msgid "The webhooks for this channel." +msgstr "The webhooks for this channel." + +msgid "Creates a webhook for this channel." +msgstr "Creates a webhook for this channel." + +msgid "Added the ``reason`` keyword-only parameter." +msgstr "Added the ``reason`` keyword-only parameter." + +msgid "The webhook's name." +msgstr "The webhook's name." + +msgid "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." +msgstr "A :term:`py:bytes-like object` representing the webhook's default avatar. This operates similarly to :meth:`~ClientUser.edit`." + +msgid "The reason for creating this webhook. Shows up in the audit logs." +msgstr "The reason for creating this webhook. Shows up in the audit logs." + +msgid "The created webhook." +msgstr "The created webhook." + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creating the webhook failed." +msgstr "Creating the webhook failed." + +msgid "You do not have permissions to create a webhook." +msgstr "You do not have permissions to create a webhook." + +msgid "A list of members who are moderating the stage channel." +msgstr "A list of members who are moderating the stage channel." + +msgid "Clones this channel. This creates a channel with the same properties as this channel." +msgstr "Clones this channel. This creates a channel with the same properties as this channel." + +msgid "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.manage_channels` permission to do this." + +msgid "The name of the new channel. If not provided, defaults to this channel name." +msgstr "The name of the new channel. If not provided, defaults to this channel name." + +msgid "The reason for cloning this channel. Shows up on the audit log." +msgstr "The reason for cloning this channel. Shows up on the audit log." + +msgid ":class:`.abc.GuildChannel`" +msgstr ":class:`.abc.GuildChannel`" + +msgid "The running stage instance of the stage channel." +msgstr "The running stage instance of the stage channel." + +msgid "Create a stage instance." +msgstr "Create a stage instance." + +msgid "You must have the :attr:`~Permissions.manage_channels` permission to use this." +msgstr "You must have the :attr:`~Permissions.manage_channels` permission to use this." + +msgid "The stage instance's topic." +msgstr "The stage instance's topic." + +msgid "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." +msgstr "The stage instance's privacy level. Defaults to :attr:`StagePrivacyLevel.guild_only`." + +msgid "The reason the stage instance was created. Shows up on the audit log." +msgstr "The reason the stage instance was created. Shows up on the audit log." + +msgid "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." +msgstr "Send a notification to everyone in the server that the stage instance has started. Defaults to ``False``. Requires the ``mention_everyone`` permission." + +msgid "The newly created stage instance." +msgstr "The newly created stage instance." + +msgid ":class:`StageInstance`" +msgstr ":class:`StageInstance`" + +msgid "If the ``privacy_level`` parameter is not the proper type." +msgstr "If the ``privacy_level`` parameter is not the proper type." + +msgid "You do not have permissions to create a stage instance." +msgstr "You do not have permissions to create a stage instance." + +msgid "Creating a stage instance failed." +msgstr "Creating a stage instance failed." + +msgid "Gets the running :class:`StageInstance`." +msgstr "Gets the running :class:`StageInstance`." + +msgid "The stage instance." +msgstr "The stage instance." + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Edits the channel." +msgstr "Edits the channel." + +msgid "The ``topic`` parameter must now be set via :attr:`create_instance`." +msgstr "The ``topic`` parameter must now be set via :attr:`create_instance`." + +msgid "Edits are no longer in-place, the newly edited channel is returned instead." +msgstr "Edits are no longer in-place, the newly edited channel is returned instead." + +msgid "The new channel's name." +msgstr "The new channel's name." + +msgid "The new channel's position." +msgstr "The new channel's position." + +msgid "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." +msgstr "Whether to sync permissions with the channel's new or pre-existing category. Defaults to ``False``." + +msgid "The new category for this channel. Can be ``None`` to remove the category." +msgstr "The new category for this channel. Can be ``None`` to remove the category." + +msgid "The reason for editing this channel. Shows up on the audit log." +msgstr "The reason for editing this channel. Shows up on the audit log." + +msgid "The overwrites to apply to channel permissions. Useful for creating secret channels." +msgstr "The overwrites to apply to channel permissions. Useful for creating secret channels." + +msgid "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the stage channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" +msgstr "The camera video quality for the stage channel's participants. .. versionadded:: 2.0" + +msgid "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited stage channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.StageChannel`]" +msgstr "Optional[:class:`.StageChannel`]" + +msgid "If the permission overwrite information is not in proper form." +msgstr "If the permission overwrite information is not in proper form." + +msgid "You do not have permissions to edit the channel." +msgstr "You do not have permissions to edit the channel." + +msgid "Editing the channel failed." +msgstr "Editing the channel failed." + +msgid "The category this channel belongs to." +msgstr "The category this channel belongs to." + +msgid "If there is no category then this is ``None``." +msgstr "If there is no category then this is ``None``." + +msgid "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." +msgstr "Returns a list of roles that have been overridden from their default values in the :attr:`~discord.Guild.roles` attribute." + +msgid "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." +msgstr "Connects to voice and creates a :class:`VoiceClient` to establish your connection to the voice server." + +msgid "This requires :attr:`Intents.voice_states`." +msgstr "This requires :attr:`Intents.voice_states`." + +msgid "The timeout in seconds to wait for the voice endpoint." +msgstr "The timeout in seconds to wait for the voice endpoint." + +msgid "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." +msgstr "Whether the bot should automatically attempt a reconnect if a part of the handshake fails or the gateway goes down." + +msgid "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." +msgstr "A type that subclasses :class:`~discord.VoiceProtocol` to connect with. Defaults to :class:`~discord.VoiceClient`." + +msgid "A voice client that is fully connected to the voice server." +msgstr "A voice client that is fully connected to the voice server." + +msgid ":class:`~discord.VoiceProtocol`" +msgstr ":class:`~discord.VoiceProtocol`" + +msgid "Could not connect to the voice channel in time." +msgstr "Could not connect to the voice channel in time." + +msgid "You are already connected to a voice channel." +msgstr "You are already connected to a voice channel." + +msgid "The opus library has not been loaded." +msgstr "The opus library has not been loaded." + +msgid "Creates an instant invite from a text or voice channel." +msgstr "Creates an instant invite from a text or voice channel." + +msgid "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.create_instant_invite` permission to do this." + +msgid "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." +msgstr "How long the invite should last in seconds. If it's 0 then the invite doesn't expire. Defaults to ``0``." + +msgid "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." +msgstr "How many uses the invite could be used for. If it's 0 then there are unlimited uses. Defaults to ``0``." + +msgid "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." +msgstr "Denotes that the invite grants temporary membership (i.e. they get kicked after they disconnect). Defaults to ``False``." + +msgid "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." +msgstr "Indicates if a unique invite URL should be created. Defaults to True. If this is set to ``False`` then it will return a previously created invite." + +msgid "The reason for creating this invite. Shows up on the audit log." +msgstr "The reason for creating this invite. Shows up on the audit log." + +msgid "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" +msgstr "The type of target for the voice channel invite, if any. .. versionadded:: 2.0" + +msgid "The type of target for the voice channel invite, if any." +msgstr "The type of target for the voice channel invite, if any." + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel. .. versionadded:: 2.0" + +msgid "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." +msgstr "The user whose stream to display for this invite, required if `target_type` is `TargetType.stream`. The user must be streaming in the channel." + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`. .. versionadded:: 2.0" + +msgid "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." +msgstr "The id of the embedded application for the invite, required if `target_type` is `TargetType.embedded_application`." + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event` See :meth:`.Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" +msgstr "The scheduled event object to link to the event. Shortcut to :meth:`.Invite.set_scheduled_event`" + +msgid "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`.Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite that was created." +msgstr "The invite that was created." + +msgid ":class:`~discord.Invite`" +msgstr ":class:`~discord.Invite`" + +msgid "Invite creation failed." +msgstr "Invite creation failed." + +msgid "The channel that was passed is a category or an invalid channel." +msgstr "The channel that was passed is a category or an invalid channel." + +msgid "Deletes the channel." +msgstr "Deletes the channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` permission to use this." + +msgid "The reason for deleting this channel. Shows up on the audit log." +msgstr "The reason for deleting this channel. Shows up on the audit log." + +msgid "You do not have proper permissions to delete the channel." +msgstr "You do not have proper permissions to delete the channel." + +msgid "The channel was not found or was already deleted." +msgstr "The channel was not found or was already deleted." + +msgid "Deleting the channel failed." +msgstr "Deleting the channel failed." + +msgid "Returns a list of all active instant invites from this channel." +msgstr "Returns a list of all active instant invites from this channel." + +msgid "You must have :attr:`~discord.Permissions.manage_channels` to get this information." +msgstr "You must have :attr:`~discord.Permissions.manage_channels` to get this information." + +msgid "List[:class:`~discord.Invite`]" +msgstr "List[:class:`~discord.Invite`]" + +msgid "Returns a URL that allows the client to jump to the channel." +msgstr "Returns a URL that allows the client to jump to the channel." + +msgid "Returns all members that are currently inside this voice channel." +msgstr "Returns all members that are currently inside this voice channel." + +msgid "A rich interface to help move a channel relative to other channels." +msgstr "A rich interface to help move a channel relative to other channels." + +msgid "If exact position movement is required, ``edit`` should be used instead." +msgstr "If exact position movement is required, ``edit`` should be used instead." + +msgid "Voice channels will always be sorted below text channels. This is a Discord limitation." +msgstr "Voice channels will always be sorted below text channels. This is a Discord limitation." + +msgid "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." +msgstr "Whether to move the channel to the beginning of the channel list (or category if given). This is mutually exclusive with ``end``, ``before``, and ``after``." + +msgid "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." +msgstr "Whether to move the channel to the end of the channel list (or category if given). This is mutually exclusive with ``beginning``, ``before``, and ``after``." + +msgid "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." +msgstr "The channel that should be before our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``after``." + +msgid "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." +msgstr "The channel that should be after our current channel. This is mutually exclusive with ``beginning``, ``end``, and ``before``." + +msgid "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." +msgstr "The number of channels to offset the move by. For example, an offset of ``2`` with ``beginning=True`` would move it 2 after the beginning. A positive number moves it below while a negative number moves it above. Note that this number is relative and computed after the ``beginning``, ``end``, ``before``, and ``after`` parameters." + +msgid "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." +msgstr "The category to move this channel under. If ``None`` is given then it moves it out of the category. This parameter is ignored if moving a category channel." + +msgid "Whether to sync the permissions with the category (if given)." +msgstr "Whether to sync the permissions with the category (if given)." + +msgid "The reason for the move." +msgstr "The reason for the move." + +msgid "An invalid position was given or a bad mix of arguments was passed." +msgstr "An invalid position was given or a bad mix of arguments was passed." + +msgid "You do not have permissions to move the channel." +msgstr "You do not have permissions to move the channel." + +msgid "Moving the channel failed." +msgstr "Moving the channel failed." + +msgid "Returns all of the channel's overwrites." +msgstr "Returns all of the channel's overwrites." + +msgid "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." +msgstr "This is returned as a dictionary where the key contains the target which can be either a :class:`~discord.Role` or a :class:`~discord.Member` and the value is the overwrite as a :class:`~discord.PermissionOverwrite`." + +msgid "The channel's permission overwrites." +msgstr "The channel's permission overwrites." + +msgid "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" +msgstr "Dict[Union[:class:`~discord.Role`, :class:`~discord.Member`], :class:`~discord.PermissionOverwrite`]" + +msgid "Returns the channel-specific overwrites for a member or a role." +msgstr "Returns the channel-specific overwrites for a member or a role." + +msgid "The role or user denoting whose overwrite to get." +msgstr "The role or user denoting whose overwrite to get." + +msgid "The permission overwrites for this object." +msgstr "The permission overwrites for this object." + +msgid ":class:`~discord.PermissionOverwrite`" +msgstr ":class:`~discord.PermissionOverwrite`" + +msgid "This function takes into consideration the following cases:" +msgstr "This function takes into consideration the following cases:" + +msgid "Guild owner" +msgstr "Guild owner" + +msgid "Guild roles" +msgstr "Guild roles" + +msgid "Channel overrides" +msgstr "Channel overrides" + +msgid "Member overrides" +msgstr "Member overrides" + +msgid "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" +msgstr "If a :class:`~discord.Role` is passed, then it checks the permissions someone with that role would have, which is essentially:" + +msgid "The default role permissions" +msgstr "The default role permissions" + +msgid "The permissions of the role used as a parameter" +msgstr "The permissions of the role used as a parameter" + +msgid "The default role permission overwrites" +msgstr "The default role permission overwrites" + +msgid "The permission overwrites of the role used as a parameter" +msgstr "The permission overwrites of the role used as a parameter" + +msgid "The object passed in can now be a role object." +msgstr "The object passed in can now be a role object." + +msgid "Whether the permissions for this channel are synced with the category it belongs to." +msgstr "Whether the permissions for this channel are synced with the category it belongs to." + +msgid "If there is no category then this is ``False``." +msgstr "If there is no category then this is ``False``." + +msgid "Sets the channel specific permission overwrites for a target in the channel." +msgstr "Sets the channel specific permission overwrites for a target in the channel." + +msgid "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." +msgstr "The ``target`` parameter should either be a :class:`~discord.Member` or a :class:`~discord.Role` that belongs to guild." + +msgid "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." +msgstr "The ``overwrite`` parameter, if given, must either be ``None`` or :class:`~discord.PermissionOverwrite`. For convenience, you can pass in keyword arguments denoting :class:`~discord.Permissions` attributes. If this is done, then you cannot mix the keyword arguments with the ``overwrite`` parameter." + +msgid "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." +msgstr "If the ``overwrite`` parameter is ``None``, then the permission overwrites are deleted." + +msgid "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." +msgstr "You must have the :attr:`~discord.Permissions.manage_roles` permission to use this." + +msgid "This method *replaces* the old overwrites with the ones given." +msgstr "This method *replaces* the old overwrites with the ones given." + +msgid "Setting allow and deny: ::" +msgstr "Setting allow and deny: ::" + +msgid "Deleting overwrites ::" +msgstr "Deleting overwrites ::" + +msgid "Using :class:`~discord.PermissionOverwrite` ::" +msgstr "Using :class:`~discord.PermissionOverwrite` ::" + +msgid "The member or role to overwrite permissions for." +msgstr "The member or role to overwrite permissions for." + +msgid "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." +msgstr "The permissions to allow and deny to the target, or ``None`` to delete the overwrite." + +msgid "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." +msgstr "A keyword argument list of permissions to set for ease of use. Cannot be mixed with ``overwrite``." + +msgid "You do not have permissions to edit channel specific permissions." +msgstr "You do not have permissions to edit channel specific permissions." + +msgid "Editing channel specific permissions failed." +msgstr "Editing channel specific permissions failed." + +msgid "The role or member being edited is not part of the guild." +msgstr "The role or member being edited is not part of the guild." + +msgid "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." +msgstr "The overwrite parameter invalid or the target type was not :class:`~discord.Role` or :class:`~discord.Member`." + +msgid "Returns a mapping of member IDs who have voice states in this channel." +msgstr "Returns a mapping of member IDs who have voice states in this channel." + +msgid "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." +msgstr "This function is intentionally low level to replace :attr:`members` when the member cache is unavailable." + +msgid "The mapping of member ID to a voice state." +msgstr "The mapping of member ID to a voice state." + +msgid "Mapping[:class:`int`, :class:`VoiceState`]" +msgstr "Mapping[:class:`int`, :class:`VoiceState`]" + +msgid "Represents a stage instance of a stage channel in a guild." +msgstr "Represents a stage instance of a stage channel in a guild." + +msgid "Checks if two stage instances are equal." +msgstr "Checks if two stage instances are equal." + +msgid "Checks if two stage instances are not equal." +msgstr "Checks if two stage instances are not equal." + +msgid "Returns the stage instance's hash." +msgstr "Returns the stage instance's hash." + +msgid "The stage instance's ID." +msgstr "The stage instance's ID." + +msgid "The guild that the stage instance is running in." +msgstr "The guild that the stage instance is running in." + +msgid "The ID of the channel that the stage instance is running in." +msgstr "The ID of the channel that the stage instance is running in." + +msgid "The topic of the stage instance." +msgstr "The topic of the stage instance." + +msgid "The privacy level of the stage instance." +msgstr "The privacy level of the stage instance." + +msgid ":class:`StagePrivacyLevel`" +msgstr ":class:`StagePrivacyLevel`" + +msgid "Whether discoverability for the stage instance is disabled." +msgstr "Whether discoverability for the stage instance is disabled." + +msgid "The scheduled event linked with the stage instance, if any." +msgstr "The scheduled event linked with the stage instance, if any." + +msgid "The channel that stage instance is running in." +msgstr "The channel that stage instance is running in." + +msgid "Edits the stage instance." +msgstr "Edits the stage instance." + +msgid "The stage instance's new topic." +msgstr "The stage instance's new topic." + +msgid "The stage instance's new privacy level." +msgstr "The stage instance's new privacy level." + +msgid "The reason the stage instance was edited. Shows up on the audit log." +msgstr "The reason the stage instance was edited. Shows up on the audit log." + +msgid "You do not have permissions to edit the stage instance." +msgstr "You do not have permissions to edit the stage instance." + +msgid "Editing a stage instance failed." +msgstr "Editing a stage instance failed." + +msgid "Deletes the stage instance." +msgstr "Deletes the stage instance." + +msgid "The reason the stage instance was deleted. Shows up on the audit log." +msgstr "The reason the stage instance was deleted. Shows up on the audit log." + +msgid "You do not have permissions to delete the stage instance." +msgstr "You do not have permissions to delete the stage instance." + +msgid "Deleting the stage instance failed." +msgstr "Deleting the stage instance failed." + +msgid "Interactions" +msgstr "Interactions" + +msgid "Represents a Discord interaction." +msgstr "Represents a Discord interaction." + +msgid "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." +msgstr "An interaction happens when a user does an action that needs to be notified. Current examples are application commands, components, and modals." + +msgid "The interaction's ID." +msgstr "The interaction's ID." + +msgid "The interaction type." +msgstr "The interaction type." + +msgid ":class:`InteractionType`" +msgstr ":class:`InteractionType`" + +msgid "The guild ID the interaction was sent from." +msgstr "The guild ID the interaction was sent from." + +msgid "The channel the interaction was sent from." +msgstr "The channel the interaction was sent from." + +msgid "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" +msgstr "Optional[Union[:class:`abc.GuildChannel`, :class:`abc.PrivateChannel`, :class:`Thread`]]" + +msgid "The ID of the channel the interaction was sent from." +msgstr "The ID of the channel the interaction was sent from." + +msgid "The application ID that the interaction was for." +msgstr "The application ID that the interaction was for." + +msgid "The user or member that sent the interaction. Will be `None` in PING interactions." +msgstr "The user or member that sent the interaction. Will be `None` in PING interactions." + +msgid "Optional[Union[:class:`User`, :class:`Member`]]" +msgstr "Optional[Union[:class:`User`, :class:`Member`]]" + +msgid "The message that sent this interaction." +msgstr "The message that sent this interaction." + +msgid "The token to continue the interaction. These are valid for 15 minutes." +msgstr "The token to continue the interaction. These are valid for 15 minutes." + +msgid "The raw interaction data." +msgstr "The raw interaction data." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "The user's locale." +msgstr "The user's locale." + +msgid "The guilds preferred locale, if invoked in a guild." +msgstr "The guilds preferred locale, if invoked in a guild." + +msgid "The custom ID for the interaction." +msgstr "The custom ID for the interaction." + +msgid "Entitlements that apply to the invoking user, showing access to premium SKUs." +msgstr "Entitlements that apply to the invoking user, showing access to premium SKUs." + +msgid "list[:class:`Entitlement`]" +msgstr "list[:class:`Entitlement`]" + +msgid "Contains the entities (users or guilds) that authorized this interaction." +msgstr "Contains the entities (users or guilds) that authorized this interaction." + +msgid ":class:`AuthorizingIntegrationOwners`" +msgstr ":class:`AuthorizingIntegrationOwners`" + +msgid "The context in which this command was executed." +msgstr "The context in which this command was executed." + +msgid "Optional[:class:`InteractionContextType`]" +msgstr "Optional[:class:`InteractionContextType`]" + +msgid "Returns the client that sent the interaction." +msgstr "Returns the client that sent the interaction." + +msgid "The guild the interaction was sent from." +msgstr "The guild the interaction was sent from." + +msgid "Indicates whether the interaction is an application command." +msgstr "Indicates whether the interaction is an application command." + +msgid "Indicates whether the interaction is a message component." +msgstr "Indicates whether the interaction is a message component." + +msgid "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." +msgstr "Note that due to a Discord limitation, DM channels are not resolved since there is no data to complete them. These are :class:`PartialMessageable` instead." + +msgid "The resolved permissions of the member in the channel, including overwrites." +msgstr "The resolved permissions of the member in the channel, including overwrites." + +msgid "In a non-guild context where this doesn't apply, an empty permissions object is returned." +msgstr "In a non-guild context where this doesn't apply, an empty permissions object is returned." + +msgid "The resolved permissions of the application in the channel, including overwrites." +msgstr "The resolved permissions of the application in the channel, including overwrites." + +msgid "Returns an object responsible for handling responding to the interaction." +msgstr "Returns an object responsible for handling responding to the interaction." + +msgid "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." +msgstr "A response can only be done once. If secondary messages need to be sent, consider using :attr:`followup` instead." + +msgid "Returns the followup webhook for followup interactions." +msgstr "Returns the followup webhook for followup interactions." + +msgid "Fetches the original interaction response message associated with the interaction." +msgstr "Fetches the original interaction response message associated with the interaction." + +msgid "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." +msgstr "If the interaction response was :meth:`InteractionResponse.send_message` then this would return the message that was sent using that response. Otherwise, this would return the message that triggered the interaction." + +msgid "Repeated calls to this will return a cached value." +msgstr "Repeated calls to this will return a cached value." + +msgid "The original interaction response message." +msgstr "The original interaction response message." + +msgid "Fetching the original response message failed." +msgstr "Fetching the original response message failed." + +msgid "The channel for the message could not be resolved." +msgstr "The channel for the message could not be resolved." + +msgid "An alias for :meth:`original_response`." +msgstr "An alias for :meth:`original_response`." + +msgid "Edits the original interaction response message." +msgstr "Edits the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.edit` in case you do not want to fetch the message and save an HTTP request." + +msgid "This method is also the only way to edit the original message if the message sent was ephemeral." +msgstr "This method is also the only way to edit the original message if the message sent was ephemeral." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid ":class:`InteractionMessage`" +msgstr ":class:`InteractionMessage`" + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "An alias for :meth:`edit_original_response`." +msgstr "An alias for :meth:`edit_original_response`." + +msgid "Deletes the original interaction response message." +msgstr "Deletes the original interaction response message." + +msgid "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." +msgstr "This is a lower level interface to :meth:`InteractionMessage.delete` in case you do not want to fetch the message and save an HTTP request." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid "An alias for :meth:`delete_original_response`." +msgstr "An alias for :meth:`delete_original_response`." + +msgid "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." +msgstr "Sends either a response or a message using the followup webhook determined by whether the interaction has been responded to or not." + +msgid "The response, its type depending on whether it's an interaction response or a followup." +msgstr "The response, its type depending on whether it's an interaction response or a followup." + +msgid "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.Interaction`, :class:`discord.WebhookMessage`]" + +msgid "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." +msgstr "Either respond to the interaction with an edit_message or edits the existing response, determined by whether the interaction has been responded to or not." + +msgid "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" +msgstr "Union[:class:`discord.InteractionMessage`, :class:`discord.WebhookMessage`]" + +msgid "Converts this interaction object into a dict." +msgstr "Converts this interaction object into a dict." + +msgid "A dictionary of :class:`str` interaction keys bound to the respective value." +msgstr "A dictionary of :class:`str` interaction keys bound to the respective value." + +msgid "Dict[:class:`str`, Any]" +msgstr "Dict[:class:`str`, Any]" + +msgid "Represents a Discord interaction response." +msgstr "Represents a Discord interaction response." + +msgid "This type can be accessed through :attr:`Interaction.response`." +msgstr "This type can be accessed through :attr:`Interaction.response`." + +msgid "Indicates whether an interaction response has been done before." +msgstr "Indicates whether an interaction response has been done before." + +msgid "An interaction can only be responded to once." +msgstr "An interaction can only be responded to once." + +msgid "Defers the interaction response." +msgstr "Defers the interaction response." + +msgid "This is typically used when the interaction is acknowledged and a secondary action will be done later." +msgstr "This is typically used when the interaction is acknowledged and a secondary action will be done later." + +msgid "This can only be used with the following interaction types:" +msgstr "This can only be used with the following interaction types:" + +msgid ":attr:`InteractionType.application_command`" +msgstr ":attr:`InteractionType.application_command`" + +msgid ":attr:`InteractionType.component`" +msgstr ":attr:`InteractionType.component`" + +msgid ":attr:`InteractionType.modal_submit`" +msgstr ":attr:`InteractionType.modal_submit`" + +msgid "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." +msgstr "The follow-up response will also be non-ephemeral if the `ephemeral` argument is ``False``, and ephemeral if ``True``." + +msgid "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." +msgstr "Indicates whether the deferred message will eventually be ephemeral. This only applies to :attr:`InteractionType.application_command` interactions, or if ``invisible`` is ``False``." + +msgid "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." +msgstr "Indicates whether the deferred type should be 'invisible' (:attr:`InteractionResponseType.deferred_message_update`) instead of 'thinking' (:attr:`InteractionResponseType.deferred_channel_message`). In the Discord UI, this is represented as the bot thinking of a response. You must eventually send a followup message via :attr:`Interaction.followup` to make this thinking state go away. This parameter does not apply to interactions of type :attr:`InteractionType.application_command`." + +msgid "Deferring the interaction failed." +msgstr "Deferring the interaction failed." + +msgid "This interaction has already been responded to before." +msgstr "This interaction has already been responded to before." + +msgid "Pongs the ping interaction." +msgstr "Pongs the ping interaction." + +msgid "This should rarely be used." +msgstr "This should rarely be used." + +msgid "Ponging the interaction failed." +msgstr "Ponging the interaction failed." + +msgid "Responds to this interaction by sending a message." +msgstr "Responds to this interaction by sending a message." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "The view to send with the message." +msgstr "The view to send with the message." + +msgid "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user who started the interaction. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The interaction object associated with the sent message." +msgstr "The interaction object associated with the sent message." + +msgid ":class:`.Interaction`" +msgstr ":class:`.Interaction`" + +msgid "You specified both ``embed`` and ``embeds``." +msgstr "You specified both ``embed`` and ``embeds``." + +msgid "Responds to this interaction by editing the original message of a component or modal interaction." +msgstr "Responds to this interaction by editing the original message of a component or modal interaction." + +msgid "The new content to replace the message with. ``None`` removes the content." +msgstr "The new content to replace the message with. ``None`` removes the content." + +msgid "A new file to add to the message. This cannot be mixed with ``files`` parameter." +msgstr "A new file to add to the message. This cannot be mixed with ``files`` parameter." + +msgid "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." +msgstr "A list of new files to add to the message. Must be a maximum of 10. This cannot be mixed with the ``file`` parameter." + +msgid "|coro| Responds to this interaction by sending the autocomplete choices." +msgstr "|coro| Responds to this interaction by sending the autocomplete choices." + +msgid "A list of choices." +msgstr "A list of choices." + +msgid "Sending the result failed." +msgstr "Sending the result failed." + +msgid "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." +msgstr "|coro| Responds to this interaction by sending a modal dialog. This cannot be used to respond to another modal dialog submission." + +msgid "The modal dialog to display to the user." +msgstr "The modal dialog to display to the user." + +msgid "Sending the modal failed." +msgstr "Sending the modal failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" +msgstr "Responds to this interaction by sending a premium required message. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\``" + +msgid "A button with type :attr:`ButtonType.premium` should be used instead." +msgstr "A button with type :attr:`ButtonType.premium` should be used instead." + +msgid "Represents the original interaction response message." +msgstr "Represents the original interaction response message." + +msgid "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." +msgstr "This allows you to edit or delete the message associated with the interaction response. To retrieve this object see :meth:`Interaction.original_response`." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a Discord message interaction." +msgstr "Represents a Discord message interaction." + +msgid "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." +msgstr "This is sent on the message object when the message is a response to an interaction without an existing message e.g. application command." + +msgid "See :class:`InteractionMetadata`." +msgstr "See :class:`InteractionMetadata`." + +msgid "Responses to message components do not include this property." +msgstr "Responses to message components do not include this property." + +msgid "The name of the invoked application command." +msgstr "The name of the invoked application command." + +msgid "The user that sent the interaction." +msgstr "The user that sent the interaction." + +msgid "Represents metadata about an interaction." +msgstr "Represents metadata about an interaction." + +msgid "This is sent on the message object when the message is related to an interaction" +msgstr "This is sent on the message object when the message is related to an interaction" + +msgid "The authorizing user or server for the installation(s) relevant to the interaction." +msgstr "The authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the original response message. Only present on interaction follow-up messages." +msgstr "The ID of the original response message. Only present on interaction follow-up messages." + +msgid "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." +msgstr "The ID of the message that triggered the interaction. Only present on interactions of type :attr:`InteractionType.component`." + +msgid "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." +msgstr "The metadata of the interaction that opened the model. Only present on interactions of type :attr:`InteractionType.modal_submit`." + +msgid "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." +msgstr "The original response message. Returns ``None`` if the message is not in cache, or if :attr:`original_response_message_id` is ``None``." + +msgid "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." +msgstr "The message that triggered the interaction. Returns ``None`` if the message is not in cache, or if :attr:`interacted_message_id` is ``None``." + +msgid "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." +msgstr "Contains details on the authorizing user or server for the installation(s) relevant to the interaction." + +msgid "The ID of the user that authorized the integration." +msgstr "The ID of the user that authorized the integration." + +msgid ":class:`int` | None" +msgstr ":class:`int` | None" + +msgid "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." +msgstr "The ID of the guild that authorized the integration. This will be ``0`` if the integration was triggered from the user in the bot's DMs." + +msgid "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." +msgstr "The user that authorized the integration. Returns ``None`` if the user is not in cache, or if :attr:`user_id` is ``None``." + +msgid "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." +msgstr "The guild that authorized the integration. Returns ``None`` if the guild is not in cache, or if :attr:`guild_id` is ``0`` or ``None``." + +msgid "Represents a Discord Bot UI Kit Component." +msgstr "Represents a Discord Bot UI Kit Component." + +msgid "Currently, the only components supported by Discord are:" +msgstr "Currently, the only components supported by Discord are:" + +msgid ":class:`ActionRow`" +msgstr ":class:`ActionRow`" + +msgid ":class:`Button`" +msgstr ":class:`Button`" + +msgid ":class:`SelectMenu`" +msgstr ":class:`SelectMenu`" + +msgid "This class is abstract and cannot be instantiated." +msgstr "This class is abstract and cannot be instantiated." + +msgid "The type of component." +msgstr "The type of component." + +msgid ":class:`ComponentType`" +msgstr ":class:`ComponentType`" + +msgid "Represents a Discord Bot UI Kit Action Row." +msgstr "Represents a Discord Bot UI Kit Action Row." + +msgid "This is a component that holds up to 5 children components in a row." +msgstr "This is a component that holds up to 5 children components in a row." + +msgid "This inherits from :class:`Component`." +msgstr "This inherits from :class:`Component`." + +msgid "The children components that this holds, if any." +msgstr "The children components that this holds, if any." + +msgid "Represents a button from the Discord Bot UI Kit." +msgstr "Represents a button from the Discord Bot UI Kit." + +msgid "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." +msgstr "The user constructible and usable type to create a button is :class:`discord.ui.Button` not this one." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid ":class:`.ButtonStyle`" +msgstr ":class:`.ButtonStyle`" + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "Optional[:class:`PartialEmoji`]" +msgstr "Optional[:class:`PartialEmoji`]" + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "Represents a select menu from the Discord Bot UI Kit." +msgstr "Represents a select menu from the Discord Bot UI Kit." + +msgid "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." +msgstr "A select menu is functionally the same as a dropdown, however on mobile it renders a bit differently." + +msgid "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." +msgstr "The user constructible and usable type to create a select menu is :class:`discord.ui.Select` not this one." + +msgid "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." +msgstr "Added support for :attr:`ComponentType.user_select`, :attr:`ComponentType.role_select`, :attr:`ComponentType.mentionable_select`, and :attr:`ComponentType.channel_select`." + +msgid "The select menu's type." +msgstr "The select menu's type." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Will be an empty list for all component types except for :attr:`ComponentType.string_select`." + +msgid "List[:class:`SelectOption`]" +msgstr "List[:class:`SelectOption`]" + +msgid "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." +msgstr "A list of channel types that can be selected. Will be an empty list for all component types except for :attr:`ComponentType.channel_select`." + +msgid "List[:class:`ChannelType`]" +msgstr "List[:class:`ChannelType`]" + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "Emoji" +msgstr "Emoji" + +msgid "Represents a custom emoji." +msgstr "Represents a custom emoji." + +msgid "Depending on the way this object was created, some attributes can have a value of ``None``." +msgstr "Depending on the way this object was created, some attributes can have a value of ``None``." + +msgid "Checks if two emoji are the same." +msgstr "Checks if two emoji are the same." + +msgid "Checks if two emoji are not the same." +msgstr "Checks if two emoji are not the same." + +msgid "Return the emoji's hash." +msgstr "Return the emoji's hash." + +msgid "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." +msgstr "Returns an iterator of ``(field, value)`` pairs. This allows this class to be used as an iterable in list/dict/etc constructions." + +msgid "Returns the emoji rendered for discord." +msgstr "Returns the emoji rendered for discord." + +msgid "The name of the emoji." +msgstr "The name of the emoji." + +msgid "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." +msgstr "If colons are required to use this emoji in the client (:PJSalt: vs PJSalt)." + +msgid "Whether an emoji is animated or not." +msgstr "Whether an emoji is animated or not." + +msgid "If this emoji is managed by a Twitch integration." +msgstr "If this emoji is managed by a Twitch integration." + +msgid "The guild ID the emoji belongs to." +msgstr "The guild ID the emoji belongs to." + +msgid "Whether the emoji is available for use." +msgstr "Whether the emoji is available for use." + +msgid "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." +msgstr "The user that created the emoji. This can only be retrieved using :meth:`Guild.fetch_emoji` and having the :attr:`~Permissions.manage_emojis` permission." + +msgid "Returns the emoji's creation time in UTC." +msgstr "Returns the emoji's creation time in UTC." + +msgid "Returns the URL of the emoji." +msgstr "Returns the URL of the emoji." + +msgid "A :class:`list` of roles that is allowed to use this emoji." +msgstr "A :class:`list` of roles that is allowed to use this emoji." + +msgid "If roles is empty, the emoji is unrestricted." +msgstr "If roles is empty, the emoji is unrestricted." + +msgid "The guild this emoji belongs to." +msgstr "The guild this emoji belongs to." + +msgid "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the bot can use this emoji. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Deletes the custom emoji." +msgstr "Deletes the custom emoji." + +msgid "Edits the custom emoji." +msgstr "Edits the custom emoji." + +msgid "The newly updated emoji is returned." +msgstr "The newly updated emoji is returned." + +msgid "The new emoji name." +msgstr "The new emoji name." + +msgid "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." +msgstr "A list of roles that can use this emoji. An empty list can be passed to make it available to everyone." + +msgid "The reason for editing this emoji. Shows up on the audit log." +msgstr "The reason for editing this emoji. Shows up on the audit log." + +msgid "You are not allowed to edit emojis." +msgstr "You are not allowed to edit emojis." + +msgid "An error occurred editing the emoji." +msgstr "An error occurred editing the emoji." + +msgid "The newly updated emoji." +msgstr "The newly updated emoji." + +msgid "Represents a \"partial\" emoji." +msgstr "Represents a \"partial\" emoji." + +msgid "This model will be given in two scenarios:" +msgstr "This model will be given in two scenarios:" + +msgid "\"Raw\" data events such as :func:`on_raw_reaction_add`" +msgstr "\"Raw\" data events such as :func:`on_raw_reaction_add`" + +msgid "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" +msgstr "Custom emoji that the bot cannot see from e.g. :attr:`Message.reactions`" + +msgid "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." +msgstr "The custom emoji name, if applicable, or the unicode codepoint of the non-custom emoji. This can be ``None`` if the emoji got deleted (e.g. removing a reaction with a deleted emoji)." + +msgid "Whether the emoji is animated or not." +msgstr "Whether the emoji is animated or not." + +msgid "The ID of the custom emoji, if applicable." +msgstr "The ID of the custom emoji, if applicable." + +msgid "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." +msgstr "Converts a Discord string representation of an emoji to a :class:`PartialEmoji`." + +msgid "The formats accepted are:" +msgstr "The formats accepted are:" + +msgid "``a:name:id``" +msgstr "``a:name:id``" + +msgid "````" +msgstr "````" + +msgid "``name:id``" +msgstr "``name:id``" + +msgid "``<:name:id>``" +msgstr "``<:name:id>``" + +msgid "If the format does not match then it is assumed to be a unicode emoji." +msgstr "If the format does not match then it is assumed to be a unicode emoji." + +msgid "The string representation of an emoji." +msgstr "The string representation of an emoji." + +msgid "The partial emoji from this string." +msgstr "The partial emoji from this string." + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid "Checks if this is a custom non-Unicode emoji." +msgstr "Checks if this is a custom non-Unicode emoji." + +msgid "Checks if this is a Unicode emoji." +msgstr "Checks if this is a Unicode emoji." + +msgid "Returns the emoji's creation time in UTC, or None if Unicode emoji." +msgstr "Returns the emoji's creation time in UTC, or None if Unicode emoji." + +msgid "Returns the URL of the emoji, if it is custom." +msgstr "Returns the URL of the emoji, if it is custom." + +msgid "If this isn't a custom emoji then an empty string is returned" +msgstr "If this isn't a custom emoji then an empty string is returned" + +msgid "Channels" +msgstr "Channels" + +msgid "Represents a Discord text channel." +msgstr "Represents a Discord text channel." + +msgid "The channel's topic. ``None`` if it doesn't exist." +msgstr "The channel's topic. ``None`` if it doesn't exist." + +msgid "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." +msgstr "The last message ID of the message sent to this channel. It may *not* point to an existing or valid message." + +msgid "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." +msgstr "The number of seconds a member must wait between sending messages in this channel. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode." + +msgid "If the channel is marked as \"not safe for work\"." +msgstr "If the channel is marked as \"not safe for work\"." + +msgid "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." +msgstr "To check if the channel or the guild of that channel are marked as NSFW, consider :meth:`is_nsfw` instead." + +msgid "The default auto archive duration in minutes for threads created in this channel." +msgstr "The default auto archive duration in minutes for threads created in this channel." + +msgid "The initial slowmode delay to set on newly created threads in this channel." +msgstr "The initial slowmode delay to set on newly created threads in this channel." + +msgid "Checks if the channel is a news/announcements channel." +msgstr "Checks if the channel is a news/announcements channel." + +msgid "Equivalent to :meth:`is_news`." +msgstr "Equivalent to :meth:`is_news`." + +msgid "The ``overwrites`` keyword-only parameter was added." +msgstr "The ``overwrites`` keyword-only parameter was added." + +msgid "The ``type`` keyword-only parameter was added." +msgstr "The ``type`` keyword-only parameter was added." + +msgid "The new channel name." +msgstr "The new channel name." + +msgid "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." +msgstr "Specifies the slowmode rate limit for user in this channel, in seconds. A value of `0` disables slowmode. The maximum value possible is `21600`." + +msgid "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." +msgstr "Change the type of this text channel. Currently, only conversion between :attr:`ChannelType.text` and :attr:`ChannelType.news` is supported. This is only available to guilds that contain ``NEWS`` in :attr:`Guild.features`." + +msgid "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." +msgstr "The new default auto archive duration in minutes for threads created in this channel. Must be one of ``60``, ``1440``, ``4320``, or ``10080``." + +msgid "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" +msgstr "The new default slowmode delay in seconds for threads created in this channel. .. versionadded:: 2.3" + +msgid "The new default slowmode delay in seconds for threads created in this channel." +msgstr "The new default slowmode delay in seconds for threads created in this channel." + +msgid "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited text channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.TextChannel`]" +msgstr "Optional[:class:`.TextChannel`]" + +msgid "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." +msgstr "If position is less than 0 or greater than the number of channels, or if the permission overwrite information is not in proper form." + +msgid "Creates a thread in this text channel." +msgstr "Creates a thread in this text channel." + +msgid "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." +msgstr "To create a public thread, you must have :attr:`~discord.Permissions.create_public_threads`. For a private thread, :attr:`~discord.Permissions.create_private_threads` is needed instead." + +msgid "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." +msgstr "A snowflake representing the message to create the thread with. If ``None`` is passed then a private thread is created. Defaults to ``None``." + +msgid "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." +msgstr "The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. By default, this creates a private thread if this is ``None``." + +msgid "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." +msgstr "Specifies the slowmode rate limit for users in this thread, in seconds. A value of ``0`` disables slowmode. The maximum value possible is ``21600``." + +msgid "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." +msgstr "Whether non-moderators can add other non-moderators to this thread. Only available for private threads, where it defaults to True." + +msgid "The reason for creating a new thread. Shows up on the audit log." +msgstr "The reason for creating a new thread. Shows up on the audit log." + +msgid "The created thread" +msgstr "The created thread" + +msgid "Starting the thread failed." +msgstr "Starting the thread failed." + +msgid "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." +msgstr "Returns an :class:`~discord.AsyncIterator` that iterates over all archived threads in the guild." + +msgid "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." +msgstr "You must have :attr:`~Permissions.read_message_history` to use this. If iterating over private threads then :attr:`~Permissions.manage_threads` is also required." + +msgid "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of threads to retrieve. If ``None``, retrieves every archived thread in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve archived channels before the given date or ID." +msgstr "Retrieve archived channels before the given date or ID." + +msgid "Whether to retrieve private archived threads." +msgstr "Whether to retrieve private archived threads." + +msgid "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." +msgstr "Whether to retrieve private archived threads that you've joined. You cannot set ``joined`` to ``True`` and ``private`` to ``False``." + +msgid ":class:`Thread` -- The archived threads." +msgstr ":class:`Thread` -- The archived threads." + +msgid "You do not have permissions to get archived threads." +msgstr "You do not have permissions to get archived threads." + +msgid "The request to get the archived threads failed." +msgstr "The request to get the archived threads failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.ArchivedThreadIterator\\``" + +msgid "Follows a channel using a webhook." +msgstr "Follows a channel using a webhook." + +msgid "Only news channels can be followed." +msgstr "Only news channels can be followed." + +msgid "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." +msgstr "The webhook returned will not provide a token to do webhook actions, as Discord does not provide it." + +msgid "The channel you would like to follow from." +msgstr "The channel you would like to follow from." + +msgid "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" +msgstr "The reason for following the channel. Shows up on the destination guild's audit log. .. versionadded:: 1.4" + +msgid "The reason for following the channel. Shows up on the destination guild's audit log." +msgstr "The reason for following the channel. Shows up on the destination guild's audit log." + +msgid "Following the channel failed." +msgstr "Following the channel failed." + +msgid "You do not have the permissions to create a webhook." +msgstr "You do not have the permissions to create a webhook." + +msgid "Returns all members that can see this channel." +msgstr "Returns all members that can see this channel." + +msgid "Returns all the threads that you can see." +msgstr "Returns all the threads that you can see." + +msgid "Represents a Discord forum channel." +msgstr "Represents a Discord forum channel." + +msgid ":attr:`guidelines` exists as an alternative to this attribute." +msgstr ":attr:`guidelines` exists as an alternative to this attribute." + +msgid "The set of tags that can be used in a forum channel." +msgstr "The set of tags that can be used in a forum channel." + +msgid "The default sort order type used to order posts in this channel." +msgstr "The default sort order type used to order posts in this channel." + +msgid "Optional[:class:`SortOrder`]" +msgstr "Optional[:class:`SortOrder`]" + +msgid "The default forum reaction emoji." +msgstr "The default forum reaction emoji." + +msgid "Optional[:class:`str` | :class:`discord.Emoji`]" +msgstr "Optional[:class:`str` | :class:`discord.Emoji`]" + +msgid "The channel's guidelines. An alias of :attr:`topic`." +msgstr "The channel's guidelines. An alias of :attr:`topic`." + +msgid "Whether a tag is required to be specified when creating a thread in this forum channel." +msgstr "Whether a tag is required to be specified when creating a thread in this forum channel." + +msgid "Tags are specified in :attr:`applied_tags`." +msgstr "Tags are specified in :attr:`applied_tags`." + +msgid "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." +msgstr "Returns the :class:`ForumTag` from this forum channel with the given ID, if any." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumTag\\` \\| \\:py\\:obj\\:\\`None\\``" + +msgid "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" +msgstr "The default sort order type to use to order posts in this channel. .. versionadded:: 2.3" + +msgid "The default sort order type to use to order posts in this channel." +msgstr "The default sort order type to use to order posts in this channel." + +msgid "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" +msgstr "The default reaction emoji. Can be a unicode emoji or a custom emoji in the forms: :class:`Emoji`, snowflake ID, string representation (eg. ''). .. versionadded:: 2.5" + +msgid "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" +msgstr "The set of tags that can be used in this channel. Must be less than `20`. .. versionadded:: 2.3" + +msgid "The set of tags that can be used in this channel. Must be less than `20`." +msgstr "The set of tags that can be used in this channel. Must be less than `20`." + +msgid "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" +msgstr "Whether a tag should be required to be specified when creating a thread in this channel. .. versionadded:: 2.3" + +msgid "Whether a tag should be required to be specified when creating a thread in this channel." +msgstr "Whether a tag should be required to be specified when creating a thread in this channel." + +msgid "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited forum channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.ForumChannel`]" +msgstr "Optional[:class:`.ForumChannel`]" + +msgid "Creates a thread in this forum channel." +msgstr "Creates a thread in this forum channel." + +msgid "The time to wait before deleting the thread." +msgstr "The time to wait before deleting the thread." + +msgid "A list of tags to apply to the new thread." +msgstr "A list of tags to apply to the new thread." + +msgid "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." +msgstr "The number of seconds a member must wait between sending messages in the new thread. A value of `0` denotes that it is disabled. Bots and users with :attr:`~Permissions.manage_channels` or :attr:`~Permissions.manage_messages` bypass slowmode. If not provided, the forum channel's default slowmode is used." + +msgid "Represents a Discord guild voice channel." +msgstr "Represents a Discord guild voice channel." + +msgid "The ID of the last message sent to this channel. It may not always point to an existing or valid message." +msgstr "The ID of the last message sent to this channel. It may not always point to an existing or valid message." + +msgid "The channel's status, if set." +msgstr "The channel's status, if set." + +msgid "The new channel's bitrate." +msgstr "The new channel's bitrate." + +msgid "The new channel's user limit." +msgstr "The new channel's user limit." + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection. .. versionadded:: 1.7" + +msgid "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." +msgstr "The new region for the voice channel's voice communication. A value of ``None`` indicates automatic voice region detection." + +msgid "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited voice channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.VoiceChannel`]" +msgstr "Optional[:class:`.VoiceChannel`]" + +msgid "A shortcut method that creates an instant activity invite." +msgstr "A shortcut method that creates an instant activity invite." + +msgid "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." +msgstr "You must have the :attr:`~discord.Permissions.start_embedded_activities` permission to do this." + +msgid "The activity to create an invite for which can be an application id as well." +msgstr "The activity to create an invite for which can be an application id as well." + +msgid "If the activity is not a valid activity or application id." +msgstr "If the activity is not a valid activity or application id." + +msgid "Sets the status of the voice channel." +msgstr "Sets the status of the voice channel." + +msgid "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." +msgstr "You must have the :attr:`~Permissions.set_voice_channel_status` permission to use this." + +msgid "The new status." +msgstr "The new status." + +msgid "The reason for setting the status. Shows up on the audit log." +msgstr "The reason for setting the status. Shows up on the audit log." + +msgid "You do not have proper permissions to set the status." +msgstr "You do not have proper permissions to set the status." + +msgid "Setting the status failed." +msgstr "Setting the status failed." + +msgid "Represents a Discord channel category." +msgstr "Represents a Discord channel category." + +msgid "These are useful to group channels to logical compartments." +msgstr "These are useful to group channels to logical compartments." + +msgid "Returns the category's hash." +msgstr "Returns the category's hash." + +msgid "Returns the category's name." +msgstr "Returns the category's name." + +msgid "The category name." +msgstr "The category name." + +msgid "The guild the category belongs to." +msgstr "The guild the category belongs to." + +msgid "The category channel ID." +msgstr "The category channel ID." + +msgid "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." +msgstr "The position in the category list. This is a number that starts at 0. e.g. the top category is position 0. Can be ``None`` if the channel was received in an interaction." + +msgid "Checks if the category is NSFW." +msgstr "Checks if the category is NSFW." + +msgid "The new category's name." +msgstr "The new category's name." + +msgid "The new category's position." +msgstr "The new category's position." + +msgid "To mark the category as NSFW or not." +msgstr "To mark the category as NSFW or not." + +msgid "The reason for editing this category. Shows up on the audit log." +msgstr "The reason for editing this category. Shows up on the audit log." + +msgid "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." +msgstr "The newly edited category channel. If the edit was only positional then ``None`` is returned instead." + +msgid "Optional[:class:`.CategoryChannel`]" +msgstr "Optional[:class:`.CategoryChannel`]" + +msgid "If position is less than 0 or greater than the number of categories." +msgstr "If position is less than 0 or greater than the number of categories." + +msgid "You do not have permissions to edit the category." +msgstr "You do not have permissions to edit the category." + +msgid "Editing the category failed." +msgstr "Editing the category failed." + +msgid "Returns the channels that are under this category." +msgstr "Returns the channels that are under this category." + +msgid "These are sorted by the official Discord UI, which places voice channels below the text channels." +msgstr "These are sorted by the official Discord UI, which places voice channels below the text channels." + +msgid "Returns the text channels that are under this category." +msgstr "Returns the text channels that are under this category." + +msgid "Returns the voice channels that are under this category." +msgstr "Returns the voice channels that are under this category." + +msgid "Returns the stage channels that are under this category." +msgstr "Returns the stage channels that are under this category." + +msgid "Returns the forum channels that are under this category." +msgstr "Returns the forum channels that are under this category." + +msgid "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_text_channel` to create a :class:`TextChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_voice_channel` to create a :class:`VoiceChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_stage_channel` to create a :class:`StageChannel` in the category." + +msgid "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." +msgstr "A shortcut method to :meth:`Guild.create_forum_channel` to create a :class:`ForumChannel` in the category." + +msgid "Represents a Discord direct message channel." +msgstr "Represents a Discord direct message channel." + +msgid "Returns a string representation of the channel" +msgstr "Returns a string representation of the channel" + +msgid "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." +msgstr "The user you are participating with in the direct message channel. If this channel is received through the gateway, the recipient information may not be always available." + +msgid "The user presenting yourself." +msgstr "The user presenting yourself." + +msgid "The direct message channel ID." +msgstr "The direct message channel ID." + +msgid "Returns the direct message channel's creation time in UTC." +msgstr "Returns the direct message channel's creation time in UTC." + +msgid "Handles permission resolution for a :class:`User`." +msgstr "Handles permission resolution for a :class:`User`." + +msgid "This function is there for compatibility with other channel types." +msgstr "This function is there for compatibility with other channel types." + +msgid "Actual direct messages do not really have the concept of permissions." +msgstr "Actual direct messages do not really have the concept of permissions." + +msgid "This returns all the Text related permissions set to ``True`` except:" +msgstr "This returns all the Text related permissions set to ``True`` except:" + +msgid ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." +msgstr ":attr:`~Permissions.send_tts_messages`: You cannot send TTS messages in a DM." + +msgid ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." +msgstr ":attr:`~Permissions.manage_messages`: You cannot delete others messages in a DM." + +msgid "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." +msgstr "The user to check permissions for. This parameter is ignored but kept for compatibility with other ``permissions_for`` methods." + +msgid "The resolved permissions." +msgstr "The resolved permissions." + +msgid ":class:`Permissions`" +msgstr ":class:`Permissions`" + +msgid "Represents a Discord group channel." +msgstr "Represents a Discord group channel." + +msgid "The users you are participating with in the group channel." +msgstr "The users you are participating with in the group channel." + +msgid "List[:class:`User`]" +msgstr "List[:class:`User`]" + +msgid "The group channel ID." +msgstr "The group channel ID." + +msgid "The user that owns the group channel." +msgstr "The user that owns the group channel." + +msgid "The owner ID that owns the group channel." +msgstr "The owner ID that owns the group channel." + +msgid "The group channel's name if provided." +msgstr "The group channel's name if provided." + +msgid "Returns the channel's icon asset if available." +msgstr "Returns the channel's icon asset if available." + +msgid "This also checks the kick_members permission if the user is the owner." +msgstr "This also checks the kick_members permission if the user is the owner." + +msgid "The user to check permissions for." +msgstr "The user to check permissions for." + +msgid "The resolved permissions for the user." +msgstr "The resolved permissions for the user." + +msgid "Leave the group." +msgstr "Leave the group." + +msgid "If you are the only one in the group, this deletes it as well." +msgstr "If you are the only one in the group, this deletes it as well." + +msgid "Leaving the group failed." +msgstr "Leaving the group failed." + +msgid "Stickers" +msgstr "Stickers" + +msgid "Represents a sticker." +msgstr "Represents a sticker." + +msgid "Returns the name of the sticker." +msgstr "Returns the name of the sticker." + +msgid "Checks if the sticker is equal to another sticker." +msgstr "Checks if the sticker is equal to another sticker." + +msgid "Checks if the sticker is not equal to another sticker." +msgstr "Checks if the sticker is not equal to another sticker." + +msgid "The sticker's name." +msgstr "The sticker's name." + +msgid "The id of the sticker." +msgstr "The id of the sticker." + +msgid "The description of the sticker." +msgstr "The description of the sticker." + +msgid "The id of the sticker's pack." +msgstr "The id of the sticker's pack." + +msgid "The format for the sticker's image." +msgstr "The format for the sticker's image." + +msgid ":class:`StickerFormatType`" +msgstr ":class:`StickerFormatType`" + +msgid "The URL for the sticker's image." +msgstr "The URL for the sticker's image." + +msgid "Returns the sticker's creation time in UTC." +msgstr "Returns the sticker's creation time in UTC." + +msgid "Represents a sticker pack." +msgstr "Represents a sticker pack." + +msgid "Returns the name of the sticker pack." +msgstr "Returns the name of the sticker pack." + +msgid "Checks if the sticker pack is equal to another sticker pack." +msgstr "Checks if the sticker pack is equal to another sticker pack." + +msgid "Checks if the sticker pack is not equal to another sticker pack." +msgstr "Checks if the sticker pack is not equal to another sticker pack." + +msgid "The name of the sticker pack." +msgstr "The name of the sticker pack." + +msgid "The description of the sticker pack." +msgstr "The description of the sticker pack." + +msgid "The id of the sticker pack." +msgstr "The id of the sticker pack." + +msgid "The stickers of this sticker pack." +msgstr "The stickers of this sticker pack." + +msgid "List[:class:`StandardSticker`]" +msgstr "List[:class:`StandardSticker`]" + +msgid "The SKU ID of the sticker pack." +msgstr "The SKU ID of the sticker pack." + +msgid "The ID of the sticker used for the cover of the sticker pack." +msgstr "The ID of the sticker used for the cover of the sticker pack." + +msgid "The sticker used for the cover of the sticker pack." +msgstr "The sticker used for the cover of the sticker pack." + +msgid ":class:`StandardSticker`" +msgstr ":class:`StandardSticker`" + +msgid "The banner asset of the sticker pack." +msgstr "The banner asset of the sticker pack." + +msgid "Represents a sticker item." +msgstr "Represents a sticker item." + +msgid "Returns the name of the sticker item." +msgstr "Returns the name of the sticker item." + +msgid "Checks if the sticker item is equal to another sticker item." +msgstr "Checks if the sticker item is equal to another sticker item." + +msgid "Checks if the sticker item is not equal to another sticker item." +msgstr "Checks if the sticker item is not equal to another sticker item." + +msgid "Attempts to retrieve the full sticker data of the sticker item." +msgstr "Attempts to retrieve the full sticker data of the sticker item." + +msgid "Union[:class:`StandardSticker`, :class:`GuildSticker`]" +msgstr "Union[:class:`StandardSticker`, :class:`GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Represents a sticker that is found in a standard sticker pack." +msgstr "Represents a sticker that is found in a standard sticker pack." + +msgid "A list of tags for the sticker." +msgstr "A list of tags for the sticker." + +msgid "The sticker's sort order within its pack." +msgstr "The sticker's sort order within its pack." + +msgid "Retrieves the sticker pack that this sticker belongs to." +msgstr "Retrieves the sticker pack that this sticker belongs to." + +msgid "The retrieved sticker pack." +msgstr "The retrieved sticker pack." + +msgid ":class:`StickerPack`" +msgstr ":class:`StickerPack`" + +msgid "The corresponding sticker pack was not found." +msgstr "The corresponding sticker pack was not found." + +msgid "Retrieving the sticker pack failed." +msgstr "Retrieving the sticker pack failed." + +msgid "Represents a sticker that belongs to a guild." +msgstr "Represents a sticker that belongs to a guild." + +msgid "Whether this sticker is available for use." +msgstr "Whether this sticker is available for use." + +msgid "The ID of the guild that this sticker is from." +msgstr "The ID of the guild that this sticker is from." + +msgid "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." +msgstr "The user that created this sticker. This can only be retrieved using :meth:`Guild.fetch_sticker` and having the :attr:`~Permissions.manage_emojis_and_stickers` permission." + +msgid "The name of a unicode emoji that represents this sticker." +msgstr "The name of a unicode emoji that represents this sticker." + +msgid "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." +msgstr "The guild that this sticker is from. Could be ``None`` if the bot is not in the guild." + +msgid "Edits a :class:`GuildSticker` for the guild." +msgstr "Edits a :class:`GuildSticker` for the guild." + +msgid "The sticker's new name. Must be at least 2 characters." +msgstr "The sticker's new name. Must be at least 2 characters." + +msgid "The sticker's new description. Can be ``None``." +msgstr "The sticker's new description. Can be ``None``." + +msgid "The reason for editing this sticker. Shows up on the audit log." +msgstr "The reason for editing this sticker. Shows up on the audit log." + +msgid "The newly modified sticker." +msgstr "The newly modified sticker." + +msgid "You are not allowed to edit stickers." +msgstr "You are not allowed to edit stickers." + +msgid "An error occurred editing the sticker." +msgstr "An error occurred editing the sticker." + +msgid "Events" +msgstr "Events" + +msgid "Represents the payload for an :func:`on_auto_moderation_action_execution`" +msgstr "Represents the payload for an :func:`on_auto_moderation_action_execution`" + +msgid "The action that was executed." +msgstr "The action that was executed." + +msgid ":class:`AutoModAction`" +msgstr ":class:`AutoModAction`" + +msgid "The ID of the rule that the action belongs to." +msgstr "The ID of the rule that the action belongs to." + +msgid "The category of trigger the rule belongs to." +msgstr "The category of trigger the rule belongs to." + +msgid "The ID of the guild that the action was executed in." +msgstr "The ID of the guild that the action was executed in." + +msgid "The guild that the action was executed in, if cached." +msgstr "The guild that the action was executed in, if cached." + +msgid "The ID of the user that triggered the action." +msgstr "The ID of the user that triggered the action." + +msgid "The member that triggered the action, if cached." +msgstr "The member that triggered the action, if cached." + +msgid "The ID of the channel in which the member's content was posted." +msgstr "The ID of the channel in which the member's content was posted." + +msgid "The channel in which the member's content was posted, if cached." +msgstr "The channel in which the member's content was posted, if cached." + +msgid "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" +msgstr "Optional[Union[:class:`TextChannel`, :class:`Thread`, :class:`VoiceChannel`, :class:`StageChannel`]]" + +msgid "The ID of the message that triggered the action. This is only available if the message was not blocked." +msgstr "The ID of the message that triggered the action. This is only available if the message was not blocked." + +msgid "The message that triggered the action, if cached." +msgstr "The message that triggered the action, if cached." + +msgid "The ID of the system auto moderation message that was posted as a result of the action." +msgstr "The ID of the system auto moderation message that was posted as a result of the action." + +msgid "The system auto moderation message that was posted as a result of the action, if cached." +msgstr "The system auto moderation message that was posted as a result of the action, if cached." + +msgid "The content of the message that triggered the action." +msgstr "The content of the message that triggered the action." + +msgid "The word or phrase configured that was matched in the content." +msgstr "The word or phrase configured that was matched in the content." + +msgid "The substring in the content that was matched." +msgstr "The substring in the content that was matched." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_typing` event." +msgstr "Represents the payload for a :func:`on_raw_typing` event." + +msgid "The channel ID where the typing originated from." +msgstr "The channel ID where the typing originated from." + +msgid "The ID of the user that started typing." +msgstr "The ID of the user that started typing." + +msgid "When the typing started as an aware datetime in UTC." +msgstr "When the typing started as an aware datetime in UTC." + +msgid "The guild ID where the typing originated from, if applicable." +msgstr "The guild ID where the typing originated from, if applicable." + +msgid "The member who started typing. Only available if the member started typing in a guild." +msgstr "The member who started typing. Only available if the member started typing in a guild." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_message_delete` event." + +msgid "The channel ID where the deletion took place." +msgstr "The channel ID where the deletion took place." + +msgid "The guild ID where the deletion took place, if applicable." +msgstr "The guild ID where the deletion took place, if applicable." + +msgid "The message ID that got deleted." +msgstr "The message ID that got deleted." + +msgid "The cached message, if found in the internal message cache." +msgstr "The cached message, if found in the internal message cache." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." +msgstr "Represents the event payload for a :func:`on_raw_bulk_message_delete` event." + +msgid "A :class:`set` of the message IDs that were deleted." +msgstr "A :class:`set` of the message IDs that were deleted." + +msgid "Set[:class:`int`]" +msgstr "Set[:class:`int`]" + +msgid "The channel ID where the message got deleted." +msgstr "The channel ID where the message got deleted." + +msgid "The guild ID where the message got deleted, if applicable." +msgstr "The guild ID where the message got deleted, if applicable." + +msgid "The cached messages, if found in the internal message cache." +msgstr "The cached messages, if found in the internal message cache." + +msgid "List[:class:`Message`]" +msgstr "List[:class:`Message`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_message_edit` event." +msgstr "Represents the payload for a :func:`on_raw_message_edit` event." + +msgid "The message ID that got updated." +msgstr "The message ID that got updated." + +msgid "The channel ID where the update took place." +msgstr "The channel ID where the update took place." + +msgid "The guild ID where the message got updated, if applicable." +msgstr "The guild ID where the message got updated, if applicable." + +msgid "The raw data sent by the `gateway `_" +msgstr "The raw data sent by the `gateway `_" + +msgid "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." +msgstr "The cached message, if found in the internal message cache. Represents the message before it is modified by the data in :attr:`RawMessageUpdateEvent.data`." + +msgid "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_add` or :func:`on_raw_reaction_remove` event." + +msgid "The message ID that got or lost a reaction." +msgstr "The message ID that got or lost a reaction." + +msgid "The user ID who added the reaction or whose reaction was removed." +msgstr "The user ID who added the reaction or whose reaction was removed." + +msgid "The channel ID where the reaction got added or removed." +msgstr "The channel ID where the reaction got added or removed." + +msgid "The guild ID where the reaction got added or removed, if applicable." +msgstr "The guild ID where the reaction got added or removed, if applicable." + +msgid "The custom or unicode emoji being used." +msgstr "The custom or unicode emoji being used." + +msgid "The member who added the reaction. Only available if the reaction occurs within a guild." +msgstr "The member who added the reaction. Only available if the reaction occurs within a guild." + +msgid "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." +msgstr "The event type that triggered this action. Can be ``REACTION_ADD`` for reaction addition or ``REACTION_REMOVE`` for reaction removal." + +msgid "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." +msgstr "A list of hex codes this reaction can be. Only available if `event_type` is `REACTION_ADD` and this emoji has super reactions available." + +msgid "Optional[:class:`list`]" +msgstr "Optional[:class:`list`]" + +msgid "Alias for :attr:`burst_colours`." +msgstr "Alias for :attr:`burst_colours`." + +msgid "The type of reaction added." +msgstr "The type of reaction added." + +msgid ":class:`ReactionType`" +msgstr ":class:`ReactionType`" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear` event." + +msgid "The message ID that got its reactions cleared." +msgstr "The message ID that got its reactions cleared." + +msgid "The channel ID where the reactions got cleared." +msgstr "The channel ID where the reactions got cleared." + +msgid "The guild ID where the reactions got cleared." +msgstr "The guild ID where the reactions got cleared." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." +msgstr "Represents the payload for a :func:`on_raw_reaction_clear_emoji` event." + +msgid "The custom or unicode emoji being removed." +msgstr "The custom or unicode emoji being removed." + +msgid "Whether this reaction was a burst (super) reaction." +msgstr "Whether this reaction was a burst (super) reaction." + +msgid "The available HEX codes of the removed super reaction." +msgstr "The available HEX codes of the removed super reaction." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "The type of reaction removed." +msgstr "The type of reaction removed." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`on_raw_integration_delete` event." +msgstr "Represents the payload for a :func:`on_raw_integration_delete` event." + +msgid "The ID of the integration that got deleted." +msgstr "The ID of the integration that got deleted." + +msgid "The ID of the bot/OAuth2 application for this deleted integration." +msgstr "The ID of the bot/OAuth2 application for this deleted integration." + +msgid "The guild ID where the integration got deleted." +msgstr "The guild ID where the integration got deleted." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for :func:`on_raw_thread_delete` event." +msgstr "Represents the payload for :func:`on_raw_thread_delete` event." + +msgid "The ID of the thread that was deleted." +msgstr "The ID of the thread that was deleted." + +msgid "The channel type of the deleted thread." +msgstr "The channel type of the deleted thread." + +msgid ":class:`discord.ChannelType`" +msgstr ":class:`discord.ChannelType`" + +msgid "The ID of the guild the deleted thread belonged to." +msgstr "The ID of the guild the deleted thread belonged to." + +msgid "The ID of the channel the thread belonged to." +msgstr "The ID of the channel the thread belonged to." + +msgid "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." +msgstr "The thread that was deleted. This may be ``None`` if deleted thread is not found in internal cache." + +msgid "Optional[:class:`discord.Thread`]" +msgstr "Optional[:class:`discord.Thread`]" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." +msgstr "Represents the payload for a :func:`raw_scheduled_event_user_add` or :func:`raw_scheduled_event_user_remove` event." + +msgid "The event ID where the typing originated from." +msgstr "The event ID where the typing originated from." + +msgid "The ID of the user that subscribed/unsubscribed." +msgstr "The ID of the user that subscribed/unsubscribed." + +msgid "The guild where the subscription/unsubscription happened." +msgstr "The guild where the subscription/unsubscription happened." + +msgid "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." +msgstr "Can be either ``USER_ADD`` or ``USER_REMOVE`` depending on the event called." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_member_remove` event." + +msgid "The user that left the guild." +msgstr "The user that left the guild." + +msgid ":class:`discord.User`" +msgstr ":class:`discord.User`" + +msgid "The ID of the guild the user left." +msgstr "The ID of the guild the user left." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_thread_update` event." +msgstr "Represents the payload for an :func:`on_raw_thread_update` event." + +msgid "The ID of the updated thread." +msgstr "The ID of the updated thread." + +msgid "The channel type of the updated thread." +msgstr "The channel type of the updated thread." + +msgid "The ID of the guild the thread belongs to." +msgstr "The ID of the guild the thread belongs to." + +msgid "The ID of the channel the thread belongs to." +msgstr "The ID of the channel the thread belongs to." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "The thread, if it could be found in the internal cache." +msgstr "The thread, if it could be found in the internal cache." + +msgid ":class:`discord.Thread` | None" +msgstr ":class:`discord.Thread` | None" + +msgid "Represents the payload for an :func:`on_raw_thread_member_remove` event." +msgstr "Represents the payload for an :func:`on_raw_thread_member_remove` event." + +msgid "The ID of the thread that was updated." +msgstr "The ID of the thread that was updated." + +msgid "The ID of the guild the thread is in." +msgstr "The ID of the guild the thread is in." + +msgid "The approximate number of members in the thread. Maximum of 50." +msgstr "The approximate number of members in the thread. Maximum of 50." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_audit_log_entry` event." +msgstr "Represents the payload for an :func:`on_raw_audit_log_entry` event." + +msgid "The action that was done." +msgstr "The action that was done." + +msgid ":class:`AuditLogAction`" +msgstr ":class:`AuditLogAction`" + +msgid "The entry ID." +msgstr "The entry ID." + +msgid "The ID of the guild this action came from." +msgstr "The ID of the guild this action came from." + +msgid "The ID of the user who initiated this action." +msgstr "The ID of the user who initiated this action." + +msgid "The ID of the target that got changed." +msgstr "The ID of the target that got changed." + +msgid "The reason this action was done." +msgstr "The reason this action was done." + +msgid "The changes that were made to the target." +msgstr "The changes that were made to the target." + +msgid "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." +msgstr "Extra information that this entry has that might be useful. For most actions, this is ``None``. However, in some cases it contains extra information. See :class:`AuditLogAction` for which actions have this field filled out." + +msgid "Any" +msgstr "Any" + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." +msgstr "Represents the payload for an :func:`on_raw_voice_channel_status_update` event." + +msgid "The channel ID where the voice channel status update originated from." +msgstr "The channel ID where the voice channel status update originated from." + +msgid "The guild ID where the voice channel status update originated from." +msgstr "The guild ID where the voice channel status update originated from." + +msgid "The new new voice channel status." +msgstr "The new new voice channel status." + +msgid "The raw data sent by the `gateway `_." +msgstr "The raw data sent by the `gateway `_." + +msgid "Webhooks" +msgstr "Webhooks" + +msgid "Represents a partial guild for webhooks." +msgstr "Represents a partial guild for webhooks." + +msgid "These are typically given for channel follower webhooks." +msgstr "These are typically given for channel follower webhooks." + +msgid "Represents a partial channel for webhooks." +msgstr "Represents a partial channel for webhooks." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/sinks.po b/docs/locales/zh_CN/LC_MESSAGES/api/sinks.po new file mode 100644 index 0000000000..82436a6b02 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/sinks.po @@ -0,0 +1,106 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Sinks" +msgstr "Sinks" + +msgid "Core" +msgstr "Core" + +msgid "Filters for :class:`~.Sink`" +msgstr "Filters for :class:`~.Sink`" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Container of all Filters." +msgstr "Container of all Filters." + +msgid "A sink \"stores\" recorded audio data." +msgstr "A sink \"stores\" recorded audio data." + +msgid "Can be subclassed for extra customizablilty." +msgstr "Can be subclassed for extra customizablilty." + +msgid "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." +msgstr "It is recommended you use the officially provided sink classes, such as :class:`~discord.sinks.WaveSink`." + +msgid "just replace the following like so: ::" +msgstr "just replace the following like so: ::" + +msgid "Raises" +msgstr "Raises" + +msgid "An invalid encoding type was specified." +msgstr "An invalid encoding type was specified." + +msgid "Audio may only be formatted after recording is finished." +msgstr "Audio may only be formatted after recording is finished." + +msgid "Gets all audio files." +msgstr "Gets all audio files." + +msgid "Gets the audio file(s) of one specific user." +msgstr "Gets the audio file(s) of one specific user." + +msgid "Handles data that's been completely decrypted and decoded and is ready to be saved to file." +msgstr "Handles data that's been completely decrypted and decoded and is ready to be saved to file." + +msgid "Writes audio data." +msgstr "Writes audio data." + +msgid "The AudioData is already finished writing." +msgstr "The AudioData is already finished writing." + +msgid "Finishes and cleans up the audio data." +msgstr "Finishes and cleans up the audio data." + +msgid "Called when audio data is formatted." +msgstr "Called when audio data is formatted." + +msgid "The AudioData is still writing." +msgstr "The AudioData is still writing." + +msgid "Handles raw data from Discord so that it can be decrypted and decoded to be used." +msgstr "Handles raw data from Discord so that it can be decrypted and decoded to be used." + +msgid "Sink Classes" +msgstr "Sink Classes" + +msgid "A special sink for .wav(wave) files." +msgstr "A special sink for .wav(wave) files." + +msgid "Formats the recorded audio." +msgstr "Formats the recorded audio." + +msgid "Formatting the audio failed." +msgstr "Formatting the audio failed." + +msgid "A special sink for .mp3 files." +msgstr "A special sink for .mp3 files." + +msgid "A special sink for .mp4 files." +msgstr "A special sink for .mp4 files." + +msgid "A special sink for .m4a files." +msgstr "A special sink for .m4a files." + +msgid "A special sink for .mkv files." +msgstr "A special sink for .mkv files." + +msgid "A special sink for .mka files." +msgstr "A special sink for .mka files." + +msgid "A special sink for .ogg files." +msgstr "A special sink for .ogg files." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/ui_kit.po b/docs/locales/zh_CN/LC_MESSAGES/api/ui_kit.po new file mode 100644 index 0000000000..bcbfa362d8 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/ui_kit.po @@ -0,0 +1,535 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Bot UI Kit" +msgstr "Bot UI Kit" + +msgid "The library has helpers to help create component-based UIs." +msgstr "The library has helpers to help create component-based UIs." + +msgid "Shortcut decorators" +msgstr "Shortcut decorators" + +msgid "A decorator that attaches a button to a component." +msgstr "A decorator that attaches a button to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Button` being pressed and the :class:`discord.Interaction` you receive." + +msgid "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." +msgstr "Premium and link buttons cannot be created with this decorator. Consider creating a :class:`Button` object manually instead. These types of buttons do not have a callback associated since Discord doesn't handle them when clicked." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The label of the button, if any." +msgstr "The label of the button, if any." + +msgid "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the button that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." +msgstr "The style of the button. Defaults to :attr:`.ButtonStyle.grey`." + +msgid "Whether the button is disabled or not. Defaults to ``False``." +msgstr "Whether the button is disabled or not. Defaults to ``False``." + +msgid "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." +msgstr "The emoji of the button. This can be in string form or a :class:`.PartialEmoji` or a full :class:`.Emoji`." + +msgid "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this button belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`I\\`\\`\\, bound\\= Item\\)\\, \\:py\\:class\\:\\`\\~discord.interactions.Interaction\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\]`" + +msgid "A decorator that attaches a select menu to a component." +msgstr "A decorator that attaches a select menu to a component." + +msgid "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." +msgstr "The function being decorated should have three parameters, ``self`` representing the :class:`discord.ui.View`, the :class:`discord.ui.Select` being pressed and the :class:`discord.Interaction` you receive." + +msgid "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen within the callback use :attr:`Select.values`." + +msgid "Creating select menus of different types is now supported." +msgstr "Creating select menus of different types is now supported." + +msgid "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." +msgstr "The type of select to create. Must be one of :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, or :attr:`discord.ComponentType.channel_select`." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." +msgstr "The ID of the select menu that gets received during an interaction. It is recommended not to set this parameter to prevent conflicts." + +msgid "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this select menu belongs to. A Discord component can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 0 and 25." + +msgid "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The maximum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." +msgstr "A list of options that can be selected in this menu. Only valid for the :attr:`discord.ComponentType.string_select` type." + +msgid "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." +msgstr "The channel types that should be selectable. Only valid for the :attr:`discord.ComponentType.channel_select` type. Defaults to all channel types." + +msgid "Whether the select is disabled or not. Defaults to ``False``." +msgstr "Whether the select is disabled or not. Defaults to ``False``." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.string_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.user_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.role_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.mentionable_select`." + +msgid "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." +msgstr "A shortcut for :meth:`discord.ui.select` with select type :attr:`discord.ComponentType.channel_select`." + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a UI view." +msgstr "Represents a UI view." + +msgid "This object must be inherited to create a UI within Discord." +msgstr "This object must be inherited to create a UI within Discord." + +msgid "The initial items attached to this view." +msgstr "The initial items attached to this view." + +msgid "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout in seconds from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." +msgstr "Timeout from last interaction with the UI before no longer accepting input. If ``None`` then there is no timeout." + +msgid "type" +msgstr "type" + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "The list of children attached to this view." +msgstr "The list of children attached to this view." + +msgid "List[:class:`Item`]" +msgstr "List[:class:`Item`]" + +msgid "Whether to disable the view when the timeout is reached. Defaults to ``False``." +msgstr "Whether to disable the view when the timeout is reached. Defaults to ``False``." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The message that this view is attached to. If ``None`` then the view has not been sent with a message." +msgstr "The message that this view is attached to. If ``None`` then the view has not been sent with a message." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." +msgstr "The parent interaction which this view was sent from. If ``None`` then the view was not sent using :meth:`InteractionResponse.send_message`." + +msgid "Optional[:class:`.Interaction`]" +msgstr "Optional[:class:`.Interaction`]" + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "Returns" +msgstr "Returns" + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "|coro|" +msgstr "|coro|" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid "A callback that is called when a view's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a view's timeout elapses without being explicitly stopped." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Represents the base UI item that all UI components inherit from." +msgstr "Represents the base UI item that all UI components inherit from." + +msgid "The current UI items supported are:" +msgstr "The current UI items supported are:" + +msgid ":class:`discord.ui.Button`" +msgstr ":class:`discord.ui.Button`" + +msgid ":class:`discord.ui.Select`" +msgstr ":class:`discord.ui.Select`" + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "The callback associated with this UI item." +msgstr "The callback associated with this UI item." + +msgid "This can be overridden by subclasses." +msgstr "This can be overridden by subclasses." + +msgid "The interaction that triggered this UI item." +msgstr "The interaction that triggered this UI item." + +msgid "Represents a UI button." +msgstr "Represents a UI button." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." +msgstr "The ID of the button that gets received during an interaction. If this button is for a URL, it does not have a custom ID." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The label of the button, if any. Maximum of 80 chars." +msgstr "The label of the button, if any. Maximum of 80 chars." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "Represents a UI select menu." +msgstr "Represents a UI select menu." + +msgid "This is usually represented as a drop down menu." +msgstr "This is usually represented as a drop down menu." + +msgid "In order to get the selected items that the user has chosen, use :attr:`Select.values`." +msgstr "In order to get the selected items that the user has chosen, use :attr:`Select.values`." + +msgid "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." +msgstr "Added support for :attr:`discord.ComponentType.string_select`, :attr:`discord.ComponentType.user_select`, :attr:`discord.ComponentType.role_select`, :attr:`discord.ComponentType.mentionable_select`, and :attr:`discord.ComponentType.channel_select`." + +msgid "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." +msgstr "The ID of the select menu that gets received during an interaction. If not given then one is generated for you." + +msgid "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." +msgstr "The minimum number of items that must be chosen for this select menu. Defaults to 1 and must be between 1 and 25." + +msgid "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." +msgstr "A list of options that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.string_select`." + +msgid "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." +msgstr "A list of channel types that can be selected in this menu. Only valid for selects of type :attr:`discord.ComponentType.channel_select`." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "Represents a UI Modal dialog." +msgstr "Represents a UI Modal dialog." + +msgid "The initial InputText fields that are displayed in the modal dialog." +msgstr "The initial InputText fields that are displayed in the modal dialog." + +msgid "The title of the modal dialog. Must be 45 characters or fewer." +msgstr "The title of the modal dialog. Must be 45 characters or fewer." + +msgid "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." +msgstr "The ID of the modal dialog that gets received during an interaction. Must be 100 characters or fewer." + +msgid "The title of the modal dialog." +msgstr "The title of the modal dialog." + +msgid "The child components associated with the modal dialog." +msgstr "The child components associated with the modal dialog." + +msgid "The ID of the modal dialog that gets received during an interaction." +msgstr "The ID of the modal dialog that gets received during an interaction." + +msgid "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." +msgstr "The coroutine that is called when the modal dialog is submitted. Should be overridden to handle the values submitted by the user." + +msgid "The interaction that submitted the modal dialog." +msgstr "The interaction that submitted the modal dialog." + +msgid "Adds an InputText component to the modal dialog." +msgstr "Adds an InputText component to the modal dialog." + +msgid "The item to add to the modal dialog" +msgstr "The item to add to the modal dialog" + +msgid "Removes an InputText component from the modal dialog." +msgstr "Removes an InputText component from the modal dialog." + +msgid "The item to remove from the modal dialog." +msgstr "The item to remove from the modal dialog." + +msgid "Stops listening to interaction events from the modal dialog." +msgstr "Stops listening to interaction events from the modal dialog." + +msgid "Waits for the modal dialog to be submitted." +msgstr "Waits for the modal dialog to be submitted." + +msgid "A callback that is called when the modal's callback fails with an error." +msgstr "A callback that is called when the modal's callback fails with an error." + +msgid "A callback that is called when a modal's timeout elapses without being explicitly stopped." +msgstr "A callback that is called when a modal's timeout elapses without being explicitly stopped." + +msgid "Represents a UI text input field." +msgstr "Represents a UI text input field." + +msgid "The style of the input text field." +msgstr "The style of the input text field." + +msgid "The ID of the input text field that gets received during an interaction." +msgstr "The ID of the input text field that gets received during an interaction." + +msgid "The label for the input text field. Must be 45 characters or fewer." +msgstr "The label for the input text field. Must be 45 characters or fewer." + +msgid "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." +msgstr "The placeholder text that is shown if nothing is selected, if any. Must be 100 characters or fewer." + +msgid "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." +msgstr "The minimum number of characters that must be entered. Defaults to 0 and must be less than 4000." + +msgid "The maximum number of characters that can be entered. Must be between 1 and 4000." +msgstr "The maximum number of characters that can be entered. Must be between 1 and 4000." + +msgid "Whether the input text field is required or not. Defaults to ``True``." +msgstr "Whether the input text field is required or not. Defaults to ``True``." + +msgid "Pre-fills the input text field with this value. Must be 4000 characters or fewer." +msgstr "Pre-fills the input text field with this value. Must be 4000 characters or fewer." + +msgid "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." +msgstr "The relative row this input text field belongs to. A modal dialog can only have 5 rows. By default, items are arranged automatically into those 5 rows. If you'd like to control the relative positioning of the row then passing an index is advised. For example, row=1 will show up before row=2. Defaults to ``None``, which is automatic ordering. The row number must be between 0 and 4 (i.e. zero indexed)." + +msgid "The label of the input text field." +msgstr "The label of the input text field." + +msgid "The placeholder text that is shown before anything is entered, if any." +msgstr "The placeholder text that is shown before anything is entered, if any." + +msgid "The minimum number of characters that must be entered. Defaults to 0." +msgstr "The minimum number of characters that must be entered. Defaults to 0." + +msgid "The maximum number of characters that can be entered." +msgstr "The maximum number of characters that can be entered." + +msgid "The value entered in the text field." +msgstr "The value entered in the text field." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/utils.po b/docs/locales/zh_CN/LC_MESSAGES/api/utils.po new file mode 100644 index 0000000000..11cc3bc28c --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/utils.po @@ -0,0 +1,481 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Utility Functions" +msgstr "Utility Functions" + +msgid "A helper to return the first element found in the sequence that meets the predicate. For example: ::" +msgstr "A helper to return the first element found in the sequence that meets the predicate. For example: ::" + +msgid "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." +msgstr "would find the first :class:`~discord.Member` whose name is 'Mighty' and return it. If an entry is not found, then ``None`` is returned." + +msgid "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." +msgstr "This is different from :func:`py:filter` due to the fact it stops the moment it finds a valid entry." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A function that returns a boolean-like result." +msgstr "A function that returns a boolean-like result." + +msgid "The iterable to search through." +msgstr "The iterable to search through." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Optional\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." +msgstr "A helper that returns the first element in the iterable that meets all the traits passed in ``attrs``. This is an alternative for :func:`~discord.utils.find`." + +msgid "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." +msgstr "When multiple attributes are specified, they are checked using logical AND, not logical OR. Meaning they have to meet every attribute passed in and not one of them." + +msgid "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." +msgstr "To have a nested attribute search (i.e. search by ``x.y``) then pass in ``x__y`` as the keyword argument." + +msgid "If nothing is found that matches the attributes passed, then ``None`` is returned." +msgstr "If nothing is found that matches the attributes passed, then ``None`` is returned." + +msgid "Examples" +msgstr "Examples" + +msgid "Basic usage:" +msgstr "Basic usage:" + +msgid "Multiple attribute matching:" +msgstr "Multiple attribute matching:" + +msgid "Nested attribute matching:" +msgstr "Nested attribute matching:" + +msgid "An iterable to search through." +msgstr "An iterable to search through." + +msgid "Keyword arguments that denote attributes to search with." +msgstr "Keyword arguments that denote attributes to search with." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." +msgstr "Attempts to get an attribute from the object in cache. If it fails, it will attempt to fetch it. If the fetch also fails, an error will be raised." + +msgid "The object to use the get or fetch methods in" +msgstr "The object to use the get or fetch methods in" + +msgid "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." +msgstr "The attribute to get or fetch. Note the object must have both a ``get_`` and ``fetch_`` method for this attribute." + +msgid "The ID of the object" +msgstr "The ID of the object" + +msgid "The default value to return if the object is not found, instead of raising an error." +msgstr "The default value to return if the object is not found, instead of raising an error." + +msgid "Returns" +msgstr "Returns" + +msgid "The object found or the default value." +msgstr "The object found or the default value." + +msgid "Raises" +msgstr "Raises" + +msgid "The object is missing a ``get_`` or ``fetch_`` method" +msgstr "The object is missing a ``get_`` or ``fetch_`` method" + +msgid "Invalid ID for the object" +msgstr "Invalid ID for the object" + +msgid "An error occurred fetching the object" +msgstr "An error occurred fetching the object" + +msgid "You do not have permission to fetch the object" +msgstr "You do not have permission to fetch the object" + +msgid "Getting a guild from a guild ID: ::" +msgstr "Getting a guild from a guild ID: ::" + +msgid "Getting a channel from the guild. If the channel is not found, return None: ::" +msgstr "Getting a channel from the guild. If the channel is not found, return None: ::" + +msgid "A helper function that returns the OAuth2 URL for inviting the bot into guilds." +msgstr "A helper function that returns the OAuth2 URL for inviting the bot into guilds." + +msgid "The client ID for your bot." +msgstr "The client ID for your bot." + +msgid "The permissions you're requesting. If not given then you won't be requesting any permissions." +msgstr "The permissions you're requesting. If not given then you won't be requesting any permissions." + +msgid "The guild to pre-select in the authorization screen, if available." +msgstr "The guild to pre-select in the authorization screen, if available." + +msgid "An optional valid redirect URI." +msgstr "An optional valid redirect URI." + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``. .. versionadded:: 1.7" + +msgid "An optional valid list of scopes. Defaults to ``('bot',)``." +msgstr "An optional valid list of scopes. Defaults to ``('bot',)``." + +msgid "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" +msgstr "Whether to disallow the user from changing the guild dropdown. .. versionadded:: 2.0" + +msgid "Whether to disallow the user from changing the guild dropdown." +msgstr "Whether to disallow the user from changing the guild dropdown." + +msgid "The OAuth2 URL for inviting the bot into guilds." +msgstr "The OAuth2 URL for inviting the bot into guilds." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "A helper function that removes markdown characters." +msgstr "A helper function that removes markdown characters." + +msgid "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." +msgstr "This function is not markdown aware and may remove meaning from the original text. For example, if the input contains ``10 * 5`` then it will be converted into ``10 5``." + +msgid "The text to remove markdown from." +msgstr "The text to remove markdown from." + +msgid "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." +msgstr "Whether to leave links alone when removing markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. Defaults to ``True``." + +msgid "The text with the markdown special characters removed." +msgstr "The text with the markdown special characters removed." + +msgid "A helper function that escapes Discord's markdown." +msgstr "A helper function that escapes Discord's markdown." + +msgid "The text to escape markdown from." +msgstr "The text to escape markdown from." + +msgid "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." +msgstr "Whether to escape the markdown characters as needed. This means that it does not escape extraneous characters if it's not necessary, e.g. ``**hello**`` is escaped into ``\\*\\*hello**`` instead of ``\\*\\*hello\\*\\*``. Note however that this can open you up to some clever syntax abuse. Defaults to ``False``." + +msgid "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." +msgstr "Whether to leave links alone when escaping markdown. For example, if a URL in the text contains characters such as ``_`` then it will be left alone. This option is not supported with ``as_needed``. Defaults to ``True``." + +msgid "The text with the markdown special characters escaped with a slash." +msgstr "The text with the markdown special characters escaped with a slash." + +msgid "A helper function that escapes everyone, here, role, and user mentions." +msgstr "A helper function that escapes everyone, here, role, and user mentions." + +msgid "This does not include channel mentions." +msgstr "This does not include channel mentions." + +msgid "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." +msgstr "For more granular control over what mentions should be escaped within messages, refer to the :class:`~discord.AllowedMentions` class." + +msgid "The text to escape mentions from." +msgstr "The text to escape mentions from." + +msgid "The text with the mentions removed." +msgstr "The text with the mentions removed." + +msgid "Returns a list of user IDs matching ``<@user_id>`` in the string." +msgstr "Returns a list of user IDs matching ``<@user_id>`` in the string." + +msgid "The string to get user mentions from." +msgstr "The string to get user mentions from." + +msgid "A list of user IDs found in the string." +msgstr "A list of user IDs found in the string." + +msgid "List[:class:`int`]" +msgstr "List[:class:`int`]" + +msgid "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." +msgstr "Returns a list of channel IDs matching ``<@#channel_id>`` in the string." + +msgid "The string to get channel mentions from." +msgstr "The string to get channel mentions from." + +msgid "A list of channel IDs found in the string." +msgstr "A list of channel IDs found in the string." + +msgid "Returns a list of role IDs matching ``<@&role_id>`` in the string." +msgstr "Returns a list of role IDs matching ``<@&role_id>`` in the string." + +msgid "The string to get role mentions from." +msgstr "The string to get role mentions from." + +msgid "A list of role IDs found in the string." +msgstr "A list of role IDs found in the string." + +msgid "Resolves an invite from a :class:`~discord.Invite`, URL or code." +msgstr "Resolves an invite from a :class:`~discord.Invite`, URL or code." + +msgid "The invite." +msgstr "The invite." + +msgid "The invite code." +msgstr "The invite code." + +msgid "Resolves a template code from a :class:`~discord.Template`, URL or code." +msgstr "Resolves a template code from a :class:`~discord.Template`, URL or code." + +msgid "The code." +msgstr "The code." + +msgid "The template code." +msgstr "The template code." + +msgid "Sleep until a specified time." +msgstr "Sleep until a specified time." + +msgid "If the time supplied is in the past this function will yield instantly." +msgstr "If the time supplied is in the past this function will yield instantly." + +msgid "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." +msgstr "The timestamp in which to sleep until. If the datetime is naive then it is assumed to be local time." + +msgid "If provided is returned to the caller when the coroutine completes." +msgstr "If provided is returned to the caller when the coroutine completes." + +msgid "A helper function to return an aware UTC datetime representing the current time." +msgstr "A helper function to return an aware UTC datetime representing the current time." + +msgid "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." +msgstr "This should be preferred to :meth:`datetime.datetime.utcnow` since it is an aware datetime, compared to the naive datetime in the standard library." + +msgid "The current aware datetime in UTC." +msgstr "The current aware datetime in UTC." + +msgid ":class:`datetime.datetime`" +msgstr ":class:`datetime.datetime`" + +msgid "Converts a Discord snowflake ID to a UTC-aware datetime object." +msgstr "Converts a Discord snowflake ID to a UTC-aware datetime object." + +msgid "The snowflake ID." +msgstr "The snowflake ID." + +msgid "An aware datetime in UTC representing the creation time of the snowflake." +msgstr "An aware datetime in UTC representing the creation time of the snowflake." + +msgid "A helper function to convert an ISO 8601 timestamp to a datetime object." +msgstr "A helper function to convert an ISO 8601 timestamp to a datetime object." + +msgid "The timestamp to convert." +msgstr "The timestamp to convert." + +msgid "The converted datetime object." +msgstr "The converted datetime object." + +msgid "Optional[:class:`datetime.datetime`]" +msgstr "Optional[:class:`datetime.datetime`]" + +msgid "A helper function to format a :class:`datetime.datetime` for presentation within Discord." +msgstr "A helper function to format a :class:`datetime.datetime` for presentation within Discord." + +msgid "This allows for a locale-independent way of presenting data using Discord specific Markdown." +msgstr "This allows for a locale-independent way of presenting data using Discord specific Markdown." + +msgid "Style" +msgstr "Style" + +msgid "Example Output" +msgstr "Example Output" + +msgid "Description" +msgstr "Description" + +msgid "t" +msgstr "t" + +msgid "22:57" +msgstr "22:57" + +msgid "Short Time" +msgstr "Short Time" + +msgid "T" +msgstr "T" + +msgid "22:57:58" +msgstr "22:57:58" + +msgid "Long Time" +msgstr "Long Time" + +msgid "d" +msgstr "d" + +msgid "17/05/2016" +msgstr "17/05/2016" + +msgid "Short Date" +msgstr "Short Date" + +msgid "D" +msgstr "D" + +msgid "17 May 2016" +msgstr "17 May 2016" + +msgid "Long Date" +msgstr "Long Date" + +msgid "f (default)" +msgstr "f (default)" + +msgid "17 May 2016 22:57" +msgstr "17 May 2016 22:57" + +msgid "Short Date Time" +msgstr "Short Date Time" + +msgid "F" +msgstr "F" + +msgid "Tuesday, 17 May 2016 22:57" +msgstr "Tuesday, 17 May 2016 22:57" + +msgid "Long Date Time" +msgstr "Long Date Time" + +msgid "R" +msgstr "R" + +msgid "5 years ago" +msgstr "5 years ago" + +msgid "Relative Time" +msgstr "Relative Time" + +msgid "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." +msgstr "Note that the exact output depends on the user's locale setting in the client. The example output presented is using the ``en-GB`` locale." + +msgid "The datetime to format." +msgstr "The datetime to format." + +msgid "The style to format the datetime with." +msgstr "The style to format the datetime with." + +msgid "The formatted string." +msgstr "The formatted string." + +msgid "Returns a numeric snowflake pretending to be created at the given date." +msgstr "Returns a numeric snowflake pretending to be created at the given date." + +msgid "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." +msgstr "When using as the lower end of a range, use ``time_snowflake(high=False) - 1`` to be inclusive, ``high=True`` to be exclusive." + +msgid "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" +msgstr "When using as the higher end of a range, use ``time_snowflake(high=True) + 1`` to be inclusive, ``high=False`` to be exclusive" + +msgid "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." +msgstr "A datetime object to convert to a snowflake. If naive, the timezone is assumed to be local time." + +msgid "Whether to set the lower 22 bit to high or low." +msgstr "Whether to set the lower 22 bit to high or low." + +msgid "The snowflake representing the time given." +msgstr "The snowflake representing the time given." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." +msgstr "Returns a numeric snowflake pretending to be created at the given date but more accurate and random than :func:`time_snowflake`. If dt is not passed, it makes one from the current time using utcnow." + +msgid "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." +msgstr "A helper function to make a basic autocomplete for slash commands. This is a pretty standard autocomplete and will return any options that start with the value from the user, case-insensitive. If the ``values`` parameter is callable, it will be called with the AutocompleteContext." + +msgid "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." +msgstr "This is meant to be passed into the :attr:`discord.Option.autocomplete` attribute." + +msgid "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." +msgstr "Possible values for the option. Accepts an iterable of :class:`str`, a callable (sync or async) that takes a single argument of :class:`.AutocompleteContext`, or a coroutine. Must resolve to an iterable of :class:`str`." + +msgid "A wrapped callback for the autocomplete." +msgstr "A wrapped callback for the autocomplete." + +msgid "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" +msgstr "Callable[[:class:`.AutocompleteContext`], Awaitable[Union[Iterable[:class:`.OptionChoice`], Iterable[:class:`str`], Iterable[:class:`int`], Iterable[:class:`float`]]]]" + +msgid "Autocomplete cannot be used for options that have specified choices." +msgstr "Autocomplete cannot be used for options that have specified choices." + +msgid "Example" +msgstr "Example" + +msgid "A helper function that collects an iterator into chunks of a given size." +msgstr "A helper function that collects an iterator into chunks of a given size." + +msgid "The last chunk collected may not be as large as ``max_size``." +msgstr "The last chunk collected may not be as large as ``max_size``." + +msgid "The iterator to chunk, can be sync or async." +msgstr "The iterator to chunk, can be sync or async." + +msgid "The maximum chunk size." +msgstr "The maximum chunk size." + +msgid "A new iterator which yields chunks of a given size." +msgstr "A new iterator which yields chunks of a given size." + +msgid "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" +msgstr "Union[:class:`collections.abc.Iterator`, :class:`collections.abc.AsyncIterator`]" + +msgid "A helper function to filter out and replace certain keyword parameters" +msgstr "A helper function to filter out and replace certain keyword parameters" + +msgid "The initial parameters to filter." +msgstr "The initial parameters to filter." + +msgid "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." +msgstr "Key to value pairs where the key's contents would be moved to the value, or if the value is None, remove key's contents (see code example)." + +msgid "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." +msgstr "Warn about a deprecated function, with the ability to specify details about the deprecation. Emits a DeprecationWarning." + +msgid "The name of the deprecated function." +msgstr "The name of the deprecated function." + +msgid "A recommended alternative to the function." +msgstr "A recommended alternative to the function." + +msgid "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function was deprecated. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." +msgstr "The version in which the function is planned to be removed. This should be in the format ``major.minor(.patch)``, where the patch version is optional." + +msgid "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." +msgstr "A reference that explains the deprecation, typically a URL to a page such as a changelog entry or a GitHub issue/PR." + +msgid "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." +msgstr "The stacklevel kwarg passed to :func:`warnings.warn`. Defaults to 3." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." +msgstr "A decorator implementation of :func:`warn_deprecated`. This will automatically call :func:`warn_deprecated` when the decorated function is called." + +msgid "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." +msgstr "Whether to use the qualified name of the function in the deprecation warning. If ``False``, the short name of the function will be used instead. For example, __qualname__ will display as ``Client.login`` while __name__ will display as ``login``. Defaults to ``True``." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]`" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/version_info.po b/docs/locales/zh_CN/LC_MESSAGES/api/version_info.po new file mode 100644 index 0000000000..3e7ff6039a --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/version_info.po @@ -0,0 +1,28 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Related Info" +msgstr "Version Related Info" + +msgid "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." +msgstr "There are two main ways to query version information about the library. For guarantees, check :ref:`version_guarantees`." + +msgid "A named tuple that is similar to :obj:`py:sys.version_info`." +msgstr "A named tuple that is similar to :obj:`py:sys.version_info`." + +msgid "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." +msgstr "Just like :obj:`py:sys.version_info` the valid values for ``releaselevel`` are 'alpha', 'beta', 'candidate' and 'final'." + +msgid "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." +msgstr "A string representation of the version. e.g. ``'1.0.0rc1'``. This is based off of :pep:`440`." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/voice.po b/docs/locales/zh_CN/LC_MESSAGES/api/voice.po new file mode 100644 index 0000000000..6458abab9e --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/voice.po @@ -0,0 +1,505 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Voice Related" +msgstr "Voice Related" + +msgid "Objects" +msgstr "Objects" + +msgid "Represents a Discord voice connection." +msgstr "Represents a Discord voice connection." + +msgid "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." +msgstr "You do not create these, you typically get them from e.g. :meth:`VoiceChannel.connect`." + +msgid "The voice connection session ID." +msgstr "The voice connection session ID." + +msgid "type" +msgstr "type" + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "The voice connection token." +msgstr "The voice connection token." + +msgid "The endpoint we are connecting to." +msgstr "The endpoint we are connecting to." + +msgid "The voice channel connected to." +msgstr "The voice channel connected to." + +msgid ":class:`abc.Connectable`" +msgstr ":class:`abc.Connectable`" + +msgid "The event loop that the voice client is running on." +msgstr "The event loop that the voice client is running on." + +msgid ":class:`asyncio.AbstractEventLoop`" +msgstr ":class:`asyncio.AbstractEventLoop`" + +msgid "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." +msgstr "In order to use PCM based AudioSources, you must have the opus library installed on your system and loaded through :func:`opus.load_opus`. Otherwise, your AudioSources must be opus encoded (e.g. using :class:`FFmpegOpusAudio`) or the library will not be able to transmit audio." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The guild we're connected to, if applicable." +msgstr "The guild we're connected to, if applicable." + +msgid "The user connected to voice (i.e. ourselves)." +msgstr "The user connected to voice (i.e. ourselves)." + +msgid "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." +msgstr "This could be referred to as the Discord Voice WebSocket latency and is an analogue of user's voice latencies as seen in the Discord client." + +msgid "Average of most recent 20 HEARTBEAT latencies in seconds." +msgstr "Average of most recent 20 HEARTBEAT latencies in seconds." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Disconnects this voice client from voice." +msgstr "Disconnects this voice client from voice." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Moves you to a different voice channel." +msgstr "Moves you to a different voice channel." + +msgid "The channel to move to. Must be a voice channel." +msgstr "The channel to move to. Must be a voice channel." + +msgid "Indicates if the voice client is connected to voice." +msgstr "Indicates if the voice client is connected to voice." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Plays an :class:`AudioSource`." +msgstr "Plays an :class:`AudioSource`." + +msgid "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." +msgstr "The finalizer, ``after`` is called after the source has been exhausted or an error occurred." + +msgid "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." +msgstr "If an error happens while the audio player is running, the exception is caught and the audio player is then stopped. If no after callback is passed, any caught exception will be displayed as if it were raised." + +msgid "The audio source we're reading from." +msgstr "The audio source we're reading from." + +msgid "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." +msgstr "The finalizer that is called after the stream is exhausted. This function must have a single parameter, ``error``, that denotes an optional exception that was raised during playing." + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised. If False, None is returned and the function does not block. .. versionadded:: v2.5" + +msgid "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." +msgstr "If True, an awaitable will be returned, which can be used to wait for audio to stop playing. This awaitable will return an exception if raised, or None when no exception is raised." + +msgid "If False, None is returned and the function does not block." +msgstr "If False, None is returned and the function does not block." + +msgid "Raises" +msgstr "Raises" + +msgid "Already playing audio or not connected." +msgstr "Already playing audio or not connected." + +msgid "Source is not a :class:`AudioSource` or after is not a callable." +msgstr "Source is not a :class:`AudioSource` or after is not a callable." + +msgid "Source is not opus encoded and opus is not loaded." +msgstr "Source is not opus encoded and opus is not loaded." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\` \\| \\:py\\:class\\:\\`\\~\\_asyncio.Future\\``" + +msgid "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." +msgstr "Takes an audio packet received from Discord and decodes it into pcm audio data. If there are no users talking in the channel, `None` will be returned." + +msgid "You must be connected to receive audio." +msgstr "You must be connected to receive audio." + +msgid "Bytes received by Discord via the UDP connection used for sending and receiving voice data." +msgstr "Bytes received by Discord via the UDP connection used for sending and receiving voice data." + +msgid "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." +msgstr "The bot will begin recording audio from the current voice channel it is in. This function uses a thread so the current code line will not be stopped. Must be in a voice channel to use. Must not be already recording." + +msgid "A Sink which will \"store\" all the audio data." +msgstr "A Sink which will \"store\" all the audio data." + +msgid "A function which is called after the bot has stopped recording." +msgstr "A function which is called after the bot has stopped recording." + +msgid "Args which will be passed to the callback function." +msgstr "Args which will be passed to the callback function." + +msgid "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." +msgstr "If True, the recordings of subsequent users will start with silence. This is useful for recording audio just as it was heard." + +msgid "Not connected to a voice channel." +msgstr "Not connected to a voice channel." + +msgid "Already recording." +msgstr "Already recording." + +msgid "Must provide a Sink object." +msgstr "Must provide a Sink object." + +msgid "Stops the recording. Must be already recording." +msgstr "Stops the recording. Must be already recording." + +msgid "Not currently recording." +msgstr "Not currently recording." + +msgid "Pauses or unpauses the recording. Must be already recording." +msgstr "Pauses or unpauses the recording. Must be already recording." + +msgid "Indicates if we're currently playing audio." +msgstr "Indicates if we're currently playing audio." + +msgid "Indicates if we're playing audio, but if we're paused." +msgstr "Indicates if we're playing audio, but if we're paused." + +msgid "Stops playing audio." +msgstr "Stops playing audio." + +msgid "Pauses the audio playing." +msgstr "Pauses the audio playing." + +msgid "Resumes the audio playing." +msgstr "Resumes the audio playing." + +msgid "The audio source being played, if playing." +msgstr "The audio source being played, if playing." + +msgid "This property can also be used to change the audio source currently being played." +msgstr "This property can also be used to change the audio source currently being played." + +msgid "Sends an audio packet composed of the data." +msgstr "Sends an audio packet composed of the data." + +msgid "You must be connected to play audio." +msgstr "You must be connected to play audio." + +msgid "The :term:`py:bytes-like object` denoting PCM or Opus voice data." +msgstr "The :term:`py:bytes-like object` denoting PCM or Opus voice data." + +msgid "Indicates if ``data`` should be encoded into Opus." +msgstr "Indicates if ``data`` should be encoded into Opus." + +msgid "You are not connected." +msgstr "You are not connected." + +msgid "Encoding the data failed." +msgstr "Encoding the data failed." + +msgid "A class that represents the Discord voice protocol." +msgstr "A class that represents the Discord voice protocol." + +msgid "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." +msgstr "This is an abstract class. The library provides a concrete implementation under :class:`VoiceClient`." + +msgid "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." +msgstr "This class allows you to implement a protocol to allow for an external method of sending voice, such as Lavalink_ or a native library implementation." + +msgid "These classes are passed to :meth:`abc.Connectable.connect `." +msgstr "These classes are passed to :meth:`abc.Connectable.connect `." + +msgid "The client (or its subclasses) that started the connection request." +msgstr "The client (or its subclasses) that started the connection request." + +msgid "The voice channel that is being connected to." +msgstr "The voice channel that is being connected to." + +msgid "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." +msgstr "An abstract method that is called when the client's voice state has changed. This corresponds to ``VOICE_STATE_UPDATE``." + +msgid "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" +msgstr "The raw `voice state payload`__. .. _voice_state_update_payload: https://discord.com/developers/docs/resources/voice#voice-state-object __ voice_state_update_payload_" + +msgid "The raw `voice state payload`__." +msgstr "The raw `voice state payload`__." + +msgid "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." +msgstr "An abstract method that is called when initially connecting to voice. This corresponds to ``VOICE_SERVER_UPDATE``." + +msgid "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" +msgstr "The raw `voice server update payload`__. .. _voice_server_update_payload: https://discord.com/developers/docs/topics/gateway#voice-server-update-voice-server-update-event-fields __ voice_server_update_payload_" + +msgid "The raw `voice server update payload`__." +msgstr "The raw `voice server update payload`__." + +msgid "An abstract method called when the client initiates the connection request." +msgstr "An abstract method called when the client initiates the connection request." + +msgid "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." +msgstr "When a connection is requested initially, the library calls the constructor under ``__init__`` and then calls :meth:`connect`. If :meth:`connect` fails at some point then :meth:`disconnect` is called." + +msgid "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." +msgstr "Within this method, to start the voice connection flow it is recommended to use :meth:`Guild.change_voice_state` to start the flow. After which, :meth:`on_voice_server_update` and :meth:`on_voice_state_update` will be called. The order that these two are called is unspecified." + +msgid "The timeout for the connection." +msgstr "The timeout for the connection." + +msgid "Whether reconnection is expected." +msgstr "Whether reconnection is expected." + +msgid "An abstract method called when the client terminates the connection." +msgstr "An abstract method called when the client terminates the connection." + +msgid "See :meth:`cleanup`." +msgstr "See :meth:`cleanup`." + +msgid "Whether the disconnection was forced." +msgstr "Whether the disconnection was forced." + +msgid "This method *must* be called to ensure proper clean-up during a disconnect." +msgstr "This method *must* be called to ensure proper clean-up during a disconnect." + +msgid "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." +msgstr "It is advisable to call this from within :meth:`disconnect` when you are completely done with the voice protocol instance." + +msgid "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." +msgstr "This method removes it from the internal state cache that keeps track of currently alive voice clients. Failure to clean-up will cause subsequent connections to report that it's still connected." + +msgid "Represents an audio stream." +msgstr "Represents an audio stream." + +msgid "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." +msgstr "The audio stream can be Opus encoded or not, however if the audio stream is not Opus encoded then the audio format must be 16-bit 48KHz stereo PCM." + +msgid "The audio source reads are done in a separate thread." +msgstr "The audio source reads are done in a separate thread." + +msgid "Reads 20ms worth of audio." +msgstr "Reads 20ms worth of audio." + +msgid "Subclasses must implement this." +msgstr "Subclasses must implement this." + +msgid "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." +msgstr "If the audio is complete, then returning an empty :term:`py:bytes-like object` to signal this is the way to do so." + +msgid "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." +msgstr "If :meth:`~AudioSource.is_opus` method returns ``True``, then it must return 20ms worth of Opus encoded audio. Otherwise, it must be 20ms worth of 16-bit 48KHz stereo PCM, which is about 3,840 bytes per frame (20ms worth of audio)." + +msgid "Returns" +msgstr "Returns" + +msgid "A bytes like object that represents the PCM or Opus data." +msgstr "A bytes like object that represents the PCM or Opus data." + +msgid ":class:`bytes`" +msgstr ":class:`bytes`" + +msgid "Checks if the audio source is already encoded in Opus." +msgstr "Checks if the audio source is already encoded in Opus." + +msgid "Called when clean-up is needed to be done." +msgstr "Called when clean-up is needed to be done." + +msgid "Useful for clearing buffer data or processes after it is done playing audio." +msgstr "Useful for clearing buffer data or processes after it is done playing audio." + +msgid "Represents raw 16-bit 48KHz stereo PCM audio source." +msgstr "Represents raw 16-bit 48KHz stereo PCM audio source." + +msgid "A file-like object that reads byte data representing raw PCM." +msgstr "A file-like object that reads byte data representing raw PCM." + +msgid ":term:`py:file object`" +msgstr ":term:`py:file object`" + +msgid "Represents an FFmpeg (or AVConv) based AudioSource." +msgstr "Represents an FFmpeg (or AVConv) based AudioSource." + +msgid "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." +msgstr "User created AudioSources using FFmpeg differently from how :class:`FFmpegPCMAudio` and :class:`FFmpegOpusAudio` work should subclass this." + +msgid "An audio source from FFmpeg (or AVConv)." +msgstr "An audio source from FFmpeg (or AVConv)." + +msgid "This launches a sub-process to a specific input file given." +msgstr "This launches a sub-process to a specific input file given." + +msgid "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." +msgstr "You must have the ffmpeg or avconv executable in your path environment variable in order for this to work." + +msgid "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to PCM bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The executable name (and path) to use. Defaults to ``ffmpeg``." +msgstr "The executable name (and path) to use. Defaults to ``ffmpeg``." + +msgid "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." +msgstr "If ``True``, denotes that ``source`` parameter will be passed to the stdin of ffmpeg. Defaults to ``False``." + +msgid "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." +msgstr "A file-like object to pass to the Popen constructor. Could also be an instance of ``subprocess.PIPE``." + +msgid "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg before the ``-i`` flag." + +msgid "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." +msgstr "Extra command line arguments to pass to ffmpeg after the ``-i`` flag." + +msgid "The subprocess failed to be created." +msgstr "The subprocess failed to be created." + +msgid "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." +msgstr "This launches a sub-process to a specific input file given. However, rather than producing PCM packets like :class:`FFmpegPCMAudio` does that need to be encoded to Opus, this class produces Opus packets, skipping the encoding step done by the library." + +msgid "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." +msgstr "Alternatively, instead of instantiating this class directly, you can use :meth:`FFmpegOpusAudio.from_probe` to probe for bitrate and codec information. This can be used to opportunistically skip pointless re-encoding of existing Opus audio data for a boost in performance at the cost of a short initial delay to gather the information. The same can be achieved by passing ``copy`` to the ``codec`` parameter, but only if you know that the input source is Opus encoded beforehand." + +msgid "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." +msgstr "The input that ffmpeg will take and convert to Opus bytes. If ``pipe`` is ``True`` then this is a file-like object that is passed to the stdin of ffmpeg." + +msgid "The bitrate in kbps to encode the output to. Defaults to ``128``." +msgstr "The bitrate in kbps to encode the output to. Defaults to ``128``." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``. .. warning:: Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." +msgstr "The codec to use to encode the audio data. Normally this would be just ``libopus``, but is used by :meth:`FFmpegOpusAudio.from_probe` to opportunistically skip pointlessly re-encoding Opus audio data by passing ``copy`` as the codec value. Any values other than ``copy``, ``opus``, or ``libopus`` will be considered ``libopus``. Defaults to ``libopus``." + +msgid "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." +msgstr "Do not provide this parameter unless you are certain that the audio input is already Opus encoded. For typical use :meth:`FFmpegOpusAudio.from_probe` should be used to determine the proper value for this parameter." + +msgid "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." +msgstr "A factory method that creates a :class:`FFmpegOpusAudio` after probing the input source for audio codec and bitrate information." + +msgid "Identical to the ``source`` parameter for the constructor." +msgstr "Identical to the ``source`` parameter for the constructor." + +msgid "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." +msgstr "The probing method used to determine bitrate and codec information. As a string, valid values are ``native`` to use ffprobe (or avprobe) and ``fallback`` to use ffmpeg (or avconv). As a callable, it must take two string arguments, ``source`` and ``executable``. Both parameters are the same values passed to this factory function. ``executable`` will default to ``ffmpeg`` if not provided as a keyword argument." + +msgid "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." +msgstr "The remaining parameters to be passed to the :class:`FFmpegOpusAudio` constructor, excluding ``bitrate`` and ``codec``." + +msgid "An instance of this class." +msgstr "An instance of this class." + +msgid ":class:`FFmpegOpusAudio`" +msgstr ":class:`FFmpegOpusAudio`" + +msgid "Invalid probe method, must be ``'native'`` or ``'fallback'``." +msgstr "Invalid probe method, must be ``'native'`` or ``'fallback'``." + +msgid "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." +msgstr "Invalid value for ``probe`` parameter, must be :class:`str` or a callable." + +msgid "Examples" +msgstr "Examples" + +msgid "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" +msgstr "Use this function to create an :class:`FFmpegOpusAudio` instance instead of the constructor: ::" + +msgid "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" +msgstr "If you are on Windows and don't have ffprobe installed, use the ``fallback`` method to probe using ffmpeg instead: ::" + +msgid "Using a custom method of determining codec and bitrate: ::" +msgstr "Using a custom method of determining codec and bitrate: ::" + +msgid "Probes the input source for bitrate and codec information." +msgstr "Probes the input source for bitrate and codec information." + +msgid "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``source`` parameter for :class:`FFmpegOpusAudio`." + +msgid "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." +msgstr "Identical to the ``method`` parameter for :meth:`FFmpegOpusAudio.from_probe`." + +msgid "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." +msgstr "Identical to the ``executable`` parameter for :class:`FFmpegOpusAudio`." + +msgid "A 2-tuple with the codec and bitrate of the input source." +msgstr "A 2-tuple with the codec and bitrate of the input source." + +msgid "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" +msgstr "Optional[Tuple[Optional[:class:`str`], Optional[:class:`int`]]]" + +msgid "Transforms a previous :class:`AudioSource` to have volume controls." +msgstr "Transforms a previous :class:`AudioSource` to have volume controls." + +msgid "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." +msgstr "This does not work on audio sources that have :meth:`AudioSource.is_opus` set to ``True``." + +msgid "The original AudioSource to transform." +msgstr "The original AudioSource to transform." + +msgid "The initial volume to set it to. See :attr:`volume` for more info." +msgstr "The initial volume to set it to. See :attr:`volume` for more info." + +msgid "Not an audio source." +msgstr "Not an audio source." + +msgid "The audio source is opus encoded." +msgstr "The audio source is opus encoded." + +msgid "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." +msgstr "Retrieves or sets the volume as a floating point percentage (e.g. ``1.0`` for 100%)." + +msgid "Opus Library" +msgstr "Opus Library" + +msgid "Loads the libopus shared library for use with voice." +msgstr "Loads the libopus shared library for use with voice." + +msgid "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." +msgstr "If this function is not called then the library uses the function :func:`ctypes.util.find_library` and then loads that one if available." + +msgid "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." +msgstr "Not loading a library and attempting to use PCM based AudioSources will lead to voice not working." + +msgid "This function propagates the exceptions thrown." +msgstr "This function propagates the exceptions thrown." + +msgid "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." +msgstr "The bitness of the library must match the bitness of your python interpreter. If the library is 64-bit then your python interpreter must be 64-bit as well. Usually if there's a mismatch in bitness then the load will throw an exception." + +msgid "On Windows, this function should not need to be called as the binaries are automatically loaded." +msgstr "On Windows, this function should not need to be called as the binaries are automatically loaded." + +msgid "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." +msgstr "On Windows, the .dll extension is not necessary. However, on Linux the full extension is required to load the library, e.g. ``libopus.so.1``. On Linux however, :func:`ctypes.util.find_library` will usually find the library automatically without you having to call this." + +msgid "The filename of the shared library." +msgstr "The filename of the shared library." + +msgid "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." +msgstr "Function to check if opus lib is successfully loaded either via the :func:`ctypes.util.find_library` call of :func:`load_opus`." + +msgid "This must return ``True`` for voice to work." +msgstr "This must return ``True`` for voice to work." + +msgid "Indicates if the opus library has been loaded." +msgstr "Indicates if the opus library has been loaded." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/api/webhooks.po b/docs/locales/zh_CN/LC_MESSAGES/api/webhooks.po new file mode 100644 index 0000000000..37d7e63745 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/api/webhooks.po @@ -0,0 +1,553 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Webhook Support" +msgstr "Webhook Support" + +msgid "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." +msgstr "Pycord offers support for creating, editing, and executing webhooks through the :class:`Webhook` class." + +msgid "Represents an asynchronous Discord webhook." +msgstr "Represents an asynchronous Discord webhook." + +msgid "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." +msgstr "Webhooks are a form to send messages to channels in Discord without a bot user or authentication." + +msgid "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." +msgstr "There are two main ways to use Webhooks. The first is through the ones received by the library such as :meth:`.Guild.webhooks` and :meth:`.TextChannel.webhooks`. The ones received by the library will automatically be bound using the library's internal HTTP session." + +msgid "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." +msgstr "The second form involves creating a webhook object manually using the :meth:`~.Webhook.from_url` or :meth:`~.Webhook.partial` classmethods." + +msgid "For example, creating a webhook from a URL and using :doc:`aiohttp `:" +msgstr "For example, creating a webhook from a URL and using :doc:`aiohttp `:" + +msgid "For a synchronous counterpart, see :class:`SyncWebhook`." +msgstr "For a synchronous counterpart, see :class:`SyncWebhook`." + +msgid "Checks if two webhooks are equal." +msgstr "Checks if two webhooks are equal." + +msgid "Checks if two webhooks are not equal." +msgstr "Checks if two webhooks are not equal." + +msgid "Returns the webhook's hash." +msgstr "Returns the webhook's hash." + +msgid "Webhooks are now comparable and hashable." +msgstr "Webhooks are now comparable and hashable." + +msgid "The webhook's ID" +msgstr "The webhook's ID" + +msgid "type" +msgstr "type" + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "The type of the webhook." +msgstr "The type of the webhook." + +msgid ":class:`WebhookType`" +msgstr ":class:`WebhookType`" + +msgid "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." +msgstr "The authentication token of the webhook. If this is ``None`` then the webhook cannot be used to make requests." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The guild ID this webhook is for." +msgstr "The guild ID this webhook is for." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "The channel ID this webhook is for." +msgstr "The channel ID this webhook is for." + +msgid "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." +msgstr "The user this webhook was created by. If the webhook was received without authentication then this will be ``None``." + +msgid "Optional[:class:`abc.User`]" +msgstr "Optional[:class:`abc.User`]" + +msgid "The default name of the webhook." +msgstr "The default name of the webhook." + +msgid "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The guild of the channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookGuild`]" +msgstr "Optional[:class:`PartialWebhookGuild`]" + +msgid "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." +msgstr "The channel that this webhook is following. Only given if :attr:`type` is :attr:`WebhookType.channel_follower`." + +msgid "Optional[:class:`PartialWebhookChannel`]" +msgstr "Optional[:class:`PartialWebhookChannel`]" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Returns the webhook's url." +msgstr "Returns the webhook's url." + +msgid "Creates a partial :class:`Webhook`." +msgstr "Creates a partial :class:`Webhook`." + +msgid "The ID of the webhook." +msgstr "The ID of the webhook." + +msgid "The authentication token of the webhook." +msgstr "The authentication token of the webhook." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. .. versionadded:: 2.0" + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it." + +msgid "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" +msgstr "The bot authentication token for authenticated requests involving the webhook. .. versionadded:: 2.0" + +msgid "The bot authentication token for authenticated requests involving the webhook." +msgstr "The bot authentication token for authenticated requests involving the webhook." + +msgid "Returns" +msgstr "Returns" + +msgid "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." +msgstr "A partial :class:`Webhook`. A partial webhook is just a webhook object with an ID and a token." + +msgid "Return type" +msgstr "Return type" + +msgid ":class:`Webhook`" +msgstr ":class:`Webhook`" + +msgid "Creates a partial :class:`Webhook` from a webhook URL." +msgstr "Creates a partial :class:`Webhook` from a webhook URL." + +msgid "The URL of the webhook." +msgstr "The URL of the webhook." + +msgid "Raises" +msgstr "Raises" + +msgid "The URL is invalid." +msgstr "The URL is invalid." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Fetches the current webhook." +msgstr "Fetches the current webhook." + +msgid "This could be used to get a full webhook from a partial webhook." +msgstr "This could be used to get a full webhook from a partial webhook." + +msgid "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." +msgstr "When fetching with an unauthenticated webhook, i.e. :meth:`is_authenticated` returns ``False``, then the returned webhook does not contain any user information." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``." +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``." + +msgid "The fetched webhook." +msgstr "The fetched webhook." + +msgid "Could not fetch the webhook" +msgstr "Could not fetch the webhook" + +msgid "Could not find the webhook by this ID" +msgstr "Could not find the webhook by this ID" + +msgid "This webhook does not have a token associated with it." +msgstr "This webhook does not have a token associated with it." + +msgid "Deletes this Webhook." +msgstr "Deletes this Webhook." + +msgid "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for deleting this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for deleting this webhook. Shows up on the audit log." +msgstr "The reason for deleting this webhook. Shows up on the audit log." + +msgid "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" +msgstr "Whether to use the bot token over the webhook token if available. Defaults to ``True``. .. versionadded:: 2.0" + +msgid "Deleting the webhook failed." +msgstr "Deleting the webhook failed." + +msgid "This webhook does not exist." +msgstr "This webhook does not exist." + +msgid "You do not have permissions to delete this webhook." +msgstr "You do not have permissions to delete this webhook." + +msgid "Edits this Webhook." +msgstr "Edits this Webhook." + +msgid "The webhook's new default name." +msgstr "The webhook's new default name." + +msgid "A :term:`py:bytes-like object` representing the webhook's new default avatar." +msgstr "A :term:`py:bytes-like object` representing the webhook's new default avatar." + +msgid "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" +msgstr "The webhook's new channel. This requires an authenticated webhook. .. versionadded:: 2.0" + +msgid "The webhook's new channel. This requires an authenticated webhook." +msgstr "The webhook's new channel. This requires an authenticated webhook." + +msgid "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" +msgstr "The reason for editing this webhook. Shows up on the audit log. .. versionadded:: 1.4" + +msgid "The reason for editing this webhook. Shows up on the audit log." +msgstr "The reason for editing this webhook. Shows up on the audit log." + +msgid "Editing the webhook failed." +msgstr "Editing the webhook failed." + +msgid "This webhook does not have a token associated with it, or it tried editing a channel without authentication." +msgstr "This webhook does not have a token associated with it, or it tried editing a channel without authentication." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.async\\_.Webhook\\``" + +msgid "Sends a message using the webhook." +msgstr "Sends a message using the webhook." + +msgid "The content must be a type that can convert to a string through ``str(content)``." +msgstr "The content must be a type that can convert to a string through ``str(content)``." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`File` object." + +msgid "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." +msgstr "If the ``embed`` parameter is provided, it must be of type :class:`Embed` and it must be a rich embed type. You cannot mix the ``embed`` parameter with the ``embeds`` parameter, which must be a :class:`list` of :class:`Embed` objects to send." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``. If the type of webhook is :attr:`WebhookType.application` then this is always set to ``True``." + +msgid "The username to send with this message. If no username is provided then the default username for the webhook is used." +msgstr "The username to send with this message. If no username is provided then the default username for the webhook is used." + +msgid "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." +msgstr "The avatar URL to send with this message. If no avatar URL is provided then the default avatar for the webhook is used. If this is not a string then it is explicitly cast using ``str``." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes. .. versionadded:: 2.0" + +msgid "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." +msgstr "Indicates if the message should only be visible to the user. This is only available to :attr:`WebhookType.application` webhooks. If a view is sent with an ephemeral message, and it has no timeout set then the timeout is set to 15 minutes." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter." +msgstr "The file to upload. This cannot be mixed with ``files`` parameter." + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter." + +msgid "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." +msgstr "The rich embed for the content to send. This cannot be mixed with ``embeds`` parameter." + +msgid "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." +msgstr "A list of embeds to send with the content. Maximum of 10. This cannot be mixed with the ``embed`` parameter." + +msgid "Controls the mentions being processed in this message. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message." +msgstr "Controls the mentions being processed in this message." + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library. .. versionadded:: 2.0" + +msgid "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." +msgstr "The view to send with the message. You can only send a view if this webhook is not partial and has state attached. A webhook has state attached if the webhook is managed by the library." + +msgid "The thread to send this webhook to. .. versionadded:: 2.0" +msgstr "The thread to send this webhook to. .. versionadded:: 2.0" + +msgid "The thread to send this webhook to." +msgstr "The thread to send this webhook to." + +msgid "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" +msgstr "The name of the thread to create. Only works for forum channels. .. versionadded:: 2.0" + +msgid "The name of the thread to create. Only works for forum channels." +msgstr "The name of the thread to create. Only works for forum channels." + +msgid "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" +msgstr "A list of tags to apply to the message. Only works for threads. .. versionadded:: 2.5" + +msgid "A list of tags to apply to the message. Only works for threads." +msgstr "A list of tags to apply to the message. Only works for threads." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." +msgstr "If ``wait`` is ``True`` then the message that was sent, otherwise ``None``." + +msgid "Optional[:class:`WebhookMessage`]" +msgstr "Optional[:class:`WebhookMessage`]" + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "This webhook was not found." +msgstr "This webhook was not found." + +msgid "The authorization token for the webhook is incorrect." +msgstr "The authorization token for the webhook is incorrect." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``." + +msgid "The length of ``embeds`` was invalid." +msgstr "The length of ``embeds`` was invalid." + +msgid "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." +msgstr "Either there was no token associated with this webhook, ``ephemeral`` was passed with the improper webhook type, there was no state attached with this webhook when giving it a view, you specified both ``thread_name`` and ``thread``, or ``applied_tags`` was passed with neither ``thread_name`` nor ``thread`` specified." + +msgid "Returns an :class:`Asset` for the avatar the webhook has." +msgstr "Returns an :class:`Asset` for the avatar the webhook has." + +msgid "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." +msgstr "If the webhook does not have a traditional avatar, an asset for the default avatar is returned instead." + +msgid "The text channel this webhook belongs to." +msgstr "The text channel this webhook belongs to." + +msgid "If this is a partial webhook, then this will always return ``None``." +msgstr "If this is a partial webhook, then this will always return ``None``." + +msgid "Returns the webhook's creation time in UTC." +msgstr "Returns the webhook's creation time in UTC." + +msgid "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.WebhookMessage` owned by this webhook." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The ID of the thread that contains the message." +msgstr "The ID of the thread that contains the message." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.WebhookMessage`" +msgstr ":class:`~discord.WebhookMessage`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "There was no token associated with this webhook." +msgstr "There was no token associated with this webhook." + +msgid "The guild this webhook belongs to." +msgstr "The guild this webhook belongs to." + +msgid "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is authenticated with a bot token. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the webhook is a \"partial\" webhook. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Edits a message owned by this webhook." +msgstr "Edits a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.edit` in case you only have an ID." + +msgid "The edit is no longer in-place, instead the newly edited message is returned." +msgstr "The edit is no longer in-place, instead the newly edited message is returned." + +msgid "The message ID to edit." +msgstr "The message ID to edit." + +msgid "The content to edit the message with or ``None`` to clear it." +msgstr "The content to edit the message with or ``None`` to clear it." + +msgid "A list of embeds to edit the message with." +msgstr "A list of embeds to edit the message with." + +msgid "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." +msgstr "The embed to edit the message with. ``None`` suppresses the embeds. This should not be mixed with the ``embeds`` parameter." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed." + +msgid "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" +msgstr "The file to upload. This cannot be mixed with ``files`` parameter. .. versionadded:: 2.0" + +msgid "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" +msgstr "A list of files to send with the content. This cannot be mixed with the ``file`` parameter. .. versionadded:: 2.0" + +msgid "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." +msgstr "Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for more information." + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. The webhook must have state attached, similar to :meth:`send`." + +msgid "The thread that contains the message." +msgstr "The thread that contains the message." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "The newly edited webhook message." +msgstr "The newly edited webhook message." + +msgid ":class:`WebhookMessage`" +msgstr ":class:`WebhookMessage`" + +msgid "Editing the message failed." +msgstr "Editing the message failed." + +msgid "Edited a message that is not yours." +msgstr "Edited a message that is not yours." + +msgid "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" +msgstr "You specified both ``embed`` and ``embeds`` or ``file`` and ``files``" + +msgid "The length of ``embeds`` was invalid" +msgstr "The length of ``embeds`` was invalid" + +msgid "There was no token associated with this webhook or the webhook had no state." +msgstr "There was no token associated with this webhook or the webhook had no state." + +msgid "Deletes a message owned by this webhook." +msgstr "Deletes a message owned by this webhook." + +msgid "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." +msgstr "This is a lower level interface to :meth:`WebhookMessage.delete` in case you only have an ID." + +msgid "The message ID to delete." +msgstr "The message ID to delete." + +msgid "Deleting the message failed." +msgstr "Deleting the message failed." + +msgid "Deleted a message that is not yours." +msgstr "Deleted a message that is not yours." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Represents a message sent from your webhook." +msgstr "Represents a message sent from your webhook." + +msgid "This allows you to edit or delete a message sent by your webhook." +msgstr "This allows you to edit or delete a message sent by your webhook." + +msgid "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." +msgstr "This inherits from :class:`discord.Message` with changes to :meth:`edit` and :meth:`delete` to work." + +msgid "Edits the message." +msgstr "Edits the message." + +msgid "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" +msgstr "A list of attachments to keep in the message. If ``[]`` is passed then all attachments are removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed. .. versionadded:: 2.0" + +msgid "The updated view to update this message with. If ``None`` is passed then the view is removed." +msgstr "The updated view to update this message with. If ``None`` is passed then the view is removed." + +msgid "The newly edited message." +msgstr "The newly edited message." + +msgid "Deletes the message." +msgstr "Deletes the message." + +msgid "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." +msgstr "If provided, the number of seconds to wait before deleting the message. The waiting is done in the background and deletion failures are ignored." + +msgid "You do not have proper permissions to delete the message." +msgstr "You do not have proper permissions to delete the message." + +msgid "The message was deleted already." +msgstr "The message was deleted already." + +msgid "Represents a synchronous Discord webhook." +msgstr "Represents a synchronous Discord webhook." + +msgid "For an asynchronous counterpart, see :class:`Webhook`." +msgstr "For an asynchronous counterpart, see :class:`Webhook`." + +msgid "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." +msgstr "The session to use to send requests with. Note that the library does not manage the session and will not close it. If not given, the ``requests`` auto session creation functions are used instead." + +msgid ":class:`SyncWebhook`" +msgstr ":class:`SyncWebhook`" + +msgid "The newly edited webhook." +msgstr "The newly edited webhook." + +msgid "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." +msgstr "Whether the server should wait before sending a response. This essentially means that the return type of this function changes from ``None`` to a :class:`WebhookMessage` if set to ``True``." + +msgid "The thread to send this message to. .. versionadded:: 2.0" +msgstr "The thread to send this message to. .. versionadded:: 2.0" + +msgid "The thread to send this message to." +msgstr "The thread to send this message to." + +msgid "Optional[:class:`SyncWebhookMessage`]" +msgstr "Optional[:class:`SyncWebhookMessage`]" + +msgid "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." +msgstr "There was no token associated with this webhook, or you specified both a thread to send to and a thread to create (the ``thread`` and ``thread_name`` parameters)." + +msgid "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." +msgstr "Retrieves a single :class:`~discord.SyncWebhookMessage` owned by this webhook." + +msgid ":class:`~discord.SyncWebhookMessage`" +msgstr ":class:`~discord.SyncWebhookMessage`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.webhook.sync.SyncWebhookMessage\\``" + +msgid ":class:`SyncWebhookMessage`" +msgstr ":class:`SyncWebhookMessage`" + +msgid "If provided, the number of seconds to wait before deleting the message. This blocks the thread." +msgstr "If provided, the number of seconds to wait before deleting the message. This blocks the thread." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/changelog.po b/docs/locales/zh_CN/LC_MESSAGES/changelog.po new file mode 100644 index 0000000000..157985f7ef --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/changelog.po @@ -0,0 +1,1111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "All notable changes to this project will be documented in this file." +msgstr "All notable changes to this project will be documented in this file." + +msgid "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." +msgstr "The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) when possible (see our [Version Guarantees] for more info)." + +msgid "[Unreleased]" +msgstr "[Unreleased]" + +msgid "These changes are available on the `master` branch, but have not yet been released." +msgstr "These changes are available on the `master` branch, but have not yet been released." + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️" + +msgid "Changed" +msgstr "Changed" + +msgid "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" +msgstr "Renamed `cover` property of `ScheduledEvent` and `cover` argument of `ScheduledEvent.edit` to `image`. ([#2496](https://github.com/Pycord-Development/pycord/pull/2496))" + +msgid "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" +msgstr "⚠️ **This Version Removes Support For Python 3.8** ⚠️ ([#2521](https://github.com/Pycord-Development/pycord/pull/2521))" + +msgid "Added" +msgstr "Added" + +msgid "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" +msgstr "Added `Guild.fetch_role` method. ([#2528](https://github.com/Pycord-Development/pycord/pull/2528))" + +msgid "[2.6.0] - 2024-07-09" +msgstr "[2.6.0] - 2024-07-09" + +msgid "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" +msgstr "Added `banner` parameter to `ClientUser.edit`. ([#2396](https://github.com/Pycord-Development/pycord/pull/2396))" + +msgid "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Added `user` argument to `Paginator.edit`. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Added `bridge_option` decorator. Required for `bridge.Bot` in 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" +msgstr "Added `Guild.search_members`. ([#2418](https://github.com/Pycord-Development/pycord/pull/2418))" + +msgid "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Added bulk banning up to 200 users through `Guild.bulk_ban`. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" +msgstr "Added `member` data to the `raw_reaction_remove` event. ([#2412](https://github.com/Pycord-Development/pycord/pull/2412))" + +msgid "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" +msgstr "Added `Poll` and all related features. ([#2408](https://github.com/Pycord-Development/pycord/pull/2408))" + +msgid "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" +msgstr "Added `stacklevel` param to `utils.warn_deprecated` and `utils.deprecated`. ([#2450](https://github.com/Pycord-Development/pycord/pull/2450))" + +msgid "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "Added support for user-installable applications. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" +msgstr "Added support for one-time purchases for Discord monetization. ([#2438](https://github.com/Pycord-Development/pycord/pull/2438))" + +msgid "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" +msgstr "Added `Attachment.title`. ([#2486](https://github.com/Pycord-Development/pycord/pull/2486))" + +msgid "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `MemberFlags`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" +msgstr "Added `bypass_verification` parameter to `Member.edit`. ([#2489](https://github.com/Pycord-Development/pycord/pull/2489))" + +msgid "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" +msgstr "Added `RoleFlags`. ([#2487](https://github.com/Pycord-Development/pycord/pull/2487))" + +msgid "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" +msgstr "Added `MessageCall` information. ([#2488](https://github.com/Pycord-Development/pycord/pull/2488))" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" +msgstr "Fixed the type-hinting of `Member.move_to` and `Member.edit` to reflect actual behavior. ([#2386](https://github.com/Pycord-Development/pycord/pull/2386))" + +msgid "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" +msgstr "Fixed a deprecation warning from being displayed when running `python -m discord -v` by replacing the deprecated module. ([#2392](https://github.com/Pycord-Development/pycord/pull/2392))" + +msgid "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" +msgstr "Fixed `Paginator.edit` to no longer set user to the bot. ([#2390](https://github.com/Pycord-Development/pycord/pull/2390))" + +msgid "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" +msgstr "Fixed `NameError` in some instances of `Interaction`. ([#2402](https://github.com/Pycord-Development/pycord/pull/2402))" + +msgid "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" +msgstr "Fixed interactions being ignored due to `PartialMessage.id` being of type `str`. ([#2406](https://github.com/Pycord-Development/pycord/pull/2406))" + +msgid "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" +msgstr "Fixed the type-hinting of `ScheduledEvent.subscribers` to reflect actual behavior. ([#2400](https://github.com/Pycord-Development/pycord/pull/2400))" + +msgid "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" +msgstr "Fixed `ScheduledEvent.subscribers` behavior with `limit=None`. ([#2407](https://github.com/Pycord-Development/pycord/pull/2407))" + +msgid "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" +msgstr "Fixed invalid data being passed to `Interaction._guild` in certain cases. ([#2411](https://github.com/Pycord-Development/pycord/pull/2411))" + +msgid "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "Fixed option typehints being ignored when using `parameter_name`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" +msgstr "Fixed parameter `embed=None` causing `AttributeError` on `PartialMessage.edit`. ([#2446](https://github.com/Pycord-Development/pycord/pull/2446))" + +msgid "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" +msgstr "Fixed paginator to revert state if a page update callback fails. ([#2448](https://github.com/Pycord-Development/pycord/pull/2448))" + +msgid "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" +msgstr "Fixed missing `application_id` in `Entitlement.delete`. ([#2458](https://github.com/Pycord-Development/pycord/pull/2458))" + +msgid "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" +msgstr "Fixed issues with enums as `Option` types with long descriptions or too many values. ([#2463](https://github.com/Pycord-Development/pycord/pull/2463))" + +msgid "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" +msgstr "Fixed many inaccurate type hints throughout the library. ([#2457](https://github.com/Pycord-Development/pycord/pull/2457))" + +msgid "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" +msgstr "Fixed `AttributeError` due to `discord.Option` being initialised with `input_type` set to `None`. ([#2464](https://github.com/Pycord-Development/pycord/pull/2464))" + +msgid "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" +msgstr "Fixed `remove_application_command` causing issues while reloading extensions. ([#2480](https://github.com/Pycord-Development/pycord/pull/2480))" + +msgid "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Fixed outdated logic for filtering and sorting audit log entries. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" +msgstr "Further fixed logic when fetching audit logs. ([#2492](https://github.com/Pycord-Development/pycord/pull/2492))" + +msgid "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" +msgstr "Changed the type of `Guild.bitrate_limit` to `int`. ([#2387](https://github.com/Pycord-Development/pycord/pull/2387))" + +msgid "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" +msgstr "HTTP requests that fail with a 503 status are now re-tried. ([#2395](https://github.com/Pycord-Development/pycord/pull/2395))" + +msgid "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`option` decorator now accepts `input_type`. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" +msgstr "`Option` may be used instead of `BridgeOption` until 2.7. ([#2417](https://github.com/Pycord-Development/pycord/pull/2417))" + +msgid "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" +msgstr "`Guild.query_members` now accepts `limit=None` to retrieve all members. ([#2419](https://github.com/Pycord-Development/pycord/pull/2419))" + +msgid "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`ApplicationCommand.guild_only` is now deprecated in favor of `ApplicationCommand.contexts`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" +msgstr "`Message.interaction` is now deprecated in favor of `Message.interaction_metadata`. ([#2409](https://github.com/Pycord-Development/pycord/pull/2409))" + +msgid "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" +msgstr "Replaced `Client.fetch_entitlements` with `Client.entitlements`, which returns an `EntitlementIterator`. ([#2490](https://github.com/Pycord-Development/pycord/pull/2490))" + +msgid "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" +msgstr "Changed the error message that appears when attempting to add a subcommand group to a subcommand group. ([#2275](https://github.com/Pycord-Development/pycord/pull/2275))" + +msgid "Removed" +msgstr "Removed" + +msgid "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" +msgstr "Removed the `delete_message_days` parameter from ban methods. Please use `delete_message_seconds` instead. ([#2421](https://github.com/Pycord-Development/pycord/pull/2421))" + +msgid "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" +msgstr "Removed the `oldest_first` parameter from `Guild.audit_logs` in favor of the `before` and `after` parameters. ([#2371](https://github.com/Pycord-Development/pycord/pull/2371))" + +msgid "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" +msgstr "Removed the `vanity_code` parameter from `Guild.edit`. ([#2491](https://github.com/Pycord-Development/pycord/pull/2491))" + +msgid "[2.5.0] - 2024-03-02" +msgstr "[2.5.0] - 2024-03-02" + +msgid "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" +msgstr "Added method to start bot via async context manager. ([#1801](https://github.com/Pycord-Development/pycord/pull/1801))" + +msgid "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" +msgstr "Added parameters `author`, `footer`, `image` and `thumbnail` to `discord.Embed` initializer. ([#1996](https://github.com/Pycord-Development/pycord/pull/1996))" + +msgid "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" +msgstr "Added events `on_bridge_command`, `on_bridge_command_completion`, and `on_bridge_command_error`. ([#1916](https://github.com/Pycord-Development/pycord/pull/1916))" + +msgid "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" +msgstr "Added the `@client.once()` decorator, which serves as a one-time event listener. ([#1940](https://github.com/Pycord-Development/pycord/pull/1940))" + +msgid "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" +msgstr "Added support for text-related features in `StageChannel`. ([#1936](https://github.com/Pycord-Development/pycord/pull/1936))" + +msgid "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Added support for one-time event listeners in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" +msgstr "Added `current_page` argument to `Paginator.update()`. ([#1983](https://github.com/Pycord-Development/pycord/pull/1983))" + +msgid "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" +msgstr "Added application flag `application_auto_moderation_rule_create_badge`. ([#1992](https://github.com/Pycord-Development/pycord/pull/1992))" + +msgid "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" +msgstr "Added support for recording silence via new `sync_start` argument in `VoiceClient.start_recording()`. ([#1984](https://github.com/Pycord-Development/pycord/pull/1984))" + +msgid "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Added `custom_message` to AutoModActionMetadata. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" +msgstr "Added support for [voice messages](https://github.com/discord/discord-api-docs/pull/6082). ([#2016](https://github.com/Pycord-Development/pycord/pull/2016))" + +msgid "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" +msgstr "Added `data` attribute to all [Raw Event payloads](https://docs.pycord.dev/en/master/api/models.html#events). ([#2023](https://github.com/Pycord-Development/pycord/pull/2023))" + +msgid "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" +msgstr "Added and documented missing `AuditLogAction` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030), [#2171](https://github.com/Pycord-Development/pycord/pull/2171))" + +msgid "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" +msgstr "Added AutoMod-related models for `AuditLogDiff` enums. ([#2030](https://github.com/Pycord-Development/pycord/pull/2030))" + +msgid "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" +msgstr "Added `Interaction.respond` and `Interaction.edit` as shortcut responses. ([#2026](https://github.com/Pycord-Development/pycord/pull/2026))" + +msgid "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Added `view.parent` which is set when the view is sent by `interaction.response.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Added methods `bridge.Bot.walk_bridge_commands` and `BridgeCommandGroup.walk_commands`. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" +msgstr "Added support for usernames and modified multiple methods accordingly. ([#2042](https://github.com/Pycord-Development/pycord/pull/2042))" + +msgid "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" +msgstr "Added `icon` and `unicode_emoji` arguments to `Guild.create_role`. ([#2086](https://github.com/Pycord-Development/pycord/pull/2086))" + +msgid "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Added `cooldown` and `max_concurrency` attributes to `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" +msgstr "Added embedded activities Gartic Phone and Jamspace. ([#2102](https://github.com/Pycord-Development/pycord/pull/2102))" + +msgid "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" +msgstr "Added `bridge.Context` type as a `Union` of subclasses. ([#2106](https://github.com/Pycord-Development/pycord/pull/2106))" + +msgid "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" +msgstr "Added support for type-hinting slash command options with `typing.Annotated`. ([#2124](https://github.com/Pycord-Development/pycord/pull/2124))" + +msgid "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" +msgstr "Added `suppress` and `allowed_mentions` parameters to `Webhook` and `InteractionResponse` edit methods. ([#2138](https://github.com/Pycord-Development/pycord/pull/2138))" + +msgid "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" +msgstr "Added `wait_finish` parameter to `VoiceClient.play` for awaiting the end of a play. ([#2194](https://github.com/Pycord-Development/pycord/pull/2194))" + +msgid "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" +msgstr "Added support for custom bot status. ([#2206](https://github.com/Pycord-Development/pycord/pull/2206))" + +msgid "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" +msgstr "Added function `Guild.delete_auto_moderation_rule`. ([#2153](https://github.com/Pycord-Development/pycord/pull/2153))" + +msgid "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" +msgstr "Added `VoiceChannel.slowmode_delay`. ([#2112](https://github.com/Pycord-Development/pycord/pull/2112))" + +msgid "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `ForumChannel.default_reaction_emoji` attribute. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" +msgstr "Added `default_reaction_emoji` parameter to `Guild.create_forum_channel` and `ForumChannel.edit` methods. ([#2178](https://github.com/Pycord-Development/pycord/pull/2178))" + +msgid "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" +msgstr "Added `applied_tags` parameter to `Webhook.send` method. ([#2322](https://github.com/Pycord-Development/pycord/pull/2322))" + +msgid "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" +msgstr "Added `User.avatar_decoration`. ([#2131](https://github.com/Pycord-Development/pycord/pull/2131))" + +msgid "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" +msgstr "Added support for guild onboarding related features. ([#2127](https://github.com/Pycord-Development/pycord/pull/2127))" + +msgid "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" +msgstr "Added support for monetization related objects and events. ([#2273](https://github.com/Pycord-Development/pycord/pull/2273))" + +msgid "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" +msgstr "Added `AttachmentFlags` and attachment attributes `expires_at`, `issued_at` and `hm`. ([#2342](https://github.com/Pycord-Development/pycord/pull/2342))" + +msgid "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" +msgstr "Added `invitable` and `slowmode_delay` to `Thread` creation methods. ([#2350](https://github.com/Pycord-Development/pycord/pull/2350))" + +msgid "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" +msgstr "Added support for voice channel statuses. ([#2368](https://github.com/Pycord-Development/pycord/pull/2368))" + +msgid "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" +msgstr "Added `enforce_nonce` parameter for message sending. ([#2370](https://github.com/Pycord-Development/pycord/pull/2370))" + +msgid "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" +msgstr "Added audit log support for voice channel status. ([#2373](https://github.com/Pycord-Development/pycord/pull/2373))" + +msgid "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" +msgstr "Changed default for all `name_localizations` and `description_localizations` attributes from being `None` to being `MISSING`. ([#1866](https://github.com/Pycord-Development/pycord/pull/1866))" + +msgid "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" +msgstr "Changed `ffmpeg` output suppression when recording voice channels. ([#1993](https://github.com/Pycord-Development/pycord/pull/1993))" + +msgid "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" +msgstr "Changed file-upload size limit from 8 MB to 25 MB accordingly. ([#2014](https://github.com/Pycord-Development/pycord/pull/2014))" + +msgid "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" +msgstr "Changed the behavior of retrieving bans to accurately reflect the API. ([#1922](https://github.com/Pycord-Development/pycord/pull/1922))" + +msgid "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `Interaction.channel` to be received from the gateway, allowing it to be `DMChannel` or `GroupChannel`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" +msgstr "Changed `DMChannel.recipients` to potentially be `None`. ([#2025](https://github.com/Pycord-Development/pycord/pull/2025))" + +msgid "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" +msgstr "Changed the behavior to store `view.message` when receiving a component interaction, while also changing `view.message` not to be set when sending view through `InteractionResponse.send_message`. ([#2036](https://github.com/Pycord-Development/pycord/pull/2036))" + +msgid "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" +msgstr "Changed the fetching of attributes shared between text-based and Slash Commands in Bridge Commands to be dynamic. ([#1867](https://github.com/Pycord-Development/pycord/pull/1867))" + +msgid "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "`discord.Embed` attributes (such as author, footer, etc.) now return instances of their respective classes when set and `None` otherwise. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" +msgstr "Changed `default_avatar` behavior to depend on the user's username migration status. ([#2087](https://github.com/Pycord-Development/pycord/pull/2087))" + +msgid "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" +msgstr "Changed type hints of `command_prefix` and `help_command` arguments to be accurate. ([#2099](https://github.com/Pycord-Development/pycord/pull/2099))" + +msgid "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" +msgstr "Replaced `orjson` features with `msgspec` in the codebase. ([#2170](https://github.com/Pycord-Development/pycord/pull/2170))" + +msgid "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" +msgstr "`BridgeOption` must now be used for arguments in bridge commands. ([#2252](https://github.com/Pycord-Development/pycord/pull/2252))" + +msgid "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" +msgstr "Removed `Client.once` in favour of `once` argument in `Client.listen`. ([#1957](https://github.com/Pycord-Development/pycord/pull/1957))" + +msgid "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" +msgstr "Removed `Embed.Empty` in favour of `None`, and `EmbedProxy` in favour of individual classes. ([#2063](https://github.com/Pycord-Development/pycord/pull/2063))" + +msgid "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" +msgstr "Fixed `AttributeError` caused by [#1957](https://github.com/Pycord-Development/pycord/pull/1957) when using listeners in cogs. ([#1989](https://github.com/Pycord-Development/pycord/pull/1989))" + +msgid "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." +msgstr "Fixed an issue in editing webhook messages in forum posts and private threads. ([#1981](https://github.com/Pycord-Development/pycord/pull/1981))." + +msgid "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" +msgstr "Fixed `View.message` not being set when view is sent using webhooks, including `Interaction.followup.send` or when a message is edited. ([#1997](https://github.com/Pycord-Development/pycord/pull/1997))" + +msgid "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" +msgstr "Fixed `None` being handled incorrectly for avatar in `ClientUser.edit`. ([#1994](https://github.com/Pycord-Development/pycord/pull/1994))" + +msgid "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" +msgstr "Fixed scheduled events breaking when changing the location from external to a channel. ([#1998](https://github.com/Pycord-Development/pycord/pull/1998))" + +msgid "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed boolean converter breaking for Bridge Commands. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" +msgstr "Fixed bridge command options not working. ([#1999](https://github.com/Pycord-Development/pycord/pull/1999))" + +msgid "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" +msgstr "Fixed `TypeError` being raised when passing `name` argument to bridge groups. ([#2000](https://github.com/Pycord-Development/pycord/pull/2000))" + +msgid "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" +msgstr "Fixed `TypeError` in `AutoModRule`. ([#2029](https://github.com/Pycord-Development/pycord/pull/2029))" + +msgid "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" +msgstr "Fixed the functionality to override the default `on_application_command_error` behavior using listeners. ([#2044](https://github.com/Pycord-Development/pycord/pull/2044))" + +msgid "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" +msgstr "Fixed unloading of cogs with bridge commands. ([#2048](https://github.com/Pycord-Development/pycord/pull/2048))" + +msgid "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" +msgstr "Fixed the `individual` slash command synchronization method. ([#1925](https://github.com/Pycord-Development/pycord/pull/1925))" + +msgid "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" +msgstr "Fixed an issue that occurred when `webhooks_update` event payload channel ID was `None`. ([#2078](https://github.com/Pycord-Development/pycord/pull/2078))" + +msgid "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" +msgstr "Fixed major `TypeError` when an `AuditLogEntry` has no user. ([#2079](https://github.com/Pycord-Development/pycord/pull/2079))" + +msgid "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" +msgstr "Fixed `HTTPException` when trying to create a forum thread with files. ([#2075](https://github.com/Pycord-Development/pycord/pull/2075))" + +msgid "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" +msgstr "Fixed `before_invoke` not being run for `SlashCommandGroup`. ([#2091](https://github.com/Pycord-Development/pycord/pull/2091))" + +msgid "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" +msgstr "Fixed `AttributeError` when accessing a `Select` object's values when it hasn't been interacted with. ([#2104](https://github.com/Pycord-Development/pycord/pull/2104))" + +msgid "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" +msgstr "Fixed `before_invoke` being run twice for slash subcommands. ([#2139](https://github.com/Pycord-Development/pycord/pull/2139))" + +msgid "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" +msgstr "Fixed `Guild._member_count` sometimes not being set. ([#2145](https://github.com/Pycord-Development/pycord/pull/2145))" + +msgid "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" +msgstr "Fixed `Thread.applied_tags` not being updated. ([#2146](https://github.com/Pycord-Development/pycord/pull/2146))" + +msgid "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" +msgstr "Fixed type hinting of `author` property of `ApplicationContext` to include type-hinting of `User` or `Member`. ([#2148](https://github.com/Pycord-Development/pycord/pull/2148))" + +msgid "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" +msgstr "Fixed missing `delete_after` parameter in overload type-hinting for `Webhook.send()`. ([#2156](https://github.com/Pycord-Development/pycord/pull/2156))" + +msgid "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" +msgstr "Fixed `ScheduledEvent.creator_id` returning `str` instead of `int`. ([#2162](https://github.com/Pycord-Development/pycord/pull/2162))" + +msgid "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" +msgstr "Fixed `_bytes_to_base64_data` not defined. ([#2185](https://github.com/Pycord-Development/pycord/pull/2185))" + +msgid "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." +msgstr "Fixed inaccurate `Union` type hint of `values` argument of `basic_autocomplete` to include `Iterable[OptionChoice]`." + +msgid "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" +msgstr "Fixed initial message inside of the create thread payload sending legacy beta payload. ([#2191](https://github.com/Pycord-Development/pycord/pull/2191))" + +msgid "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" +msgstr "Fixed a misplaced payload object inside of the thread creation payload. ([#2192](https://github.com/Pycord-Development/pycord/pull/2192))" + +msgid "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" +msgstr "Fixed `DMChannel.recipient` and `User.dm_channel` being `None`. ([#2219](https://github.com/Pycord-Development/pycord/pull/2219))" + +msgid "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" +msgstr "Fixed `ffmpeg` being terminated prematurely when piping audio stream. ([#2240](https://github.com/Pycord-Development/pycord/pull/2240))" + +msgid "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" +msgstr "Fixed tasks looping infinitely when `tzinfo` is neither `None` nor UTC. ([#2196](https://github.com/Pycord-Development/pycord/pull/2196))" + +msgid "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" +msgstr "Fixed `AttributeError` when running permission checks without the `bot` scope. ([#2113](https://github.com/Pycord-Development/pycord/issues/2113))" + +msgid "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" +msgstr "Fixed `Option` not working on bridge commands because `ext.commands.Command` doesn't recognize them. ([#2256](https://github.com/Pycord-Development/pycord/pull/2256))" + +msgid "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" +msgstr "Fixed offset-aware tasks causing `TypeError` when being prepared. ([#2271](https://github.com/Pycord-Development/pycord/pull/2271))" + +msgid "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" +msgstr "Fixed `AttributeError` when serializing commands with `Annotated` type hints. ([#2243](https://github.com/Pycord-Development/pycord/pull/2243))" + +msgid "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" +msgstr "Fixed `Intents.all()` returning the wrong value. ([#2257](https://github.com/Pycord-Development/pycord/issues/2257))" + +msgid "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" +msgstr "Fixed `AuditLogIterator` not respecting the `after` parameter. ([#2295](https://github.com/Pycord-Development/pycord/issues/2295))" + +msgid "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" +msgstr "Fixed `AttributeError` when failing to establish initial websocket connection. ([#2301](https://github.com/Pycord-Development/pycord/pull/2301))" + +msgid "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" +msgstr "Fixed `AttributeError` caused by `command.cog` being `MISSING`. ([#2303](https://github.com/Pycord-Development/pycord/issues/2303))" + +msgid "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" +msgstr "Fixed `self.use_default_buttons` being assumed truthy by `Paginator.update`. ([#2319](https://github.com/Pycord-Development/pycord/pull/2319))" + +msgid "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" +msgstr "Fixed `AttributeError` when comparing application commands with non-command objects. ([#2299](https://github.com/Pycord-Development/pycord/issues/2299))" + +msgid "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" +msgstr "Fixed `AttributeError` when copying groups on startup. ([#2331](https://github.com/Pycord-Development/pycord/issues/2331))" + +msgid "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" +msgstr "Fixed application command options causing errors if declared through the option decorator or kwarg. ([#2332](https://github.com/Pycord-Development/pycord/issues/2332))" + +msgid "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" +msgstr "Fixed options declared using the parameter default value syntax always being optional. ([#2333](https://github.com/Pycord-Development/pycord/issues/2333))" + +msgid "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" +msgstr "Fixed `BridgeContext` type hints raising an exception for unsupported option type. ([#2337](https://github.com/Pycord-Development/pycord/pull/2337))" + +msgid "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" +msgstr "Fixed `TypeError` due to `(Sync)WebhookMessage._thread_id` being set to `None`. ([#2343](https://github.com/Pycord-Development/pycord/pull/2343))" + +msgid "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" +msgstr "Fixed `AttributeError` due to `entitlements` not being included in `Interaction.__slots__`. ([#2345](https://github.com/Pycord-Development/pycord/pull/2345))" + +msgid "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" +msgstr "Fixed `Thread.me` being out of date and added the thread owner to `Thread.members` on creation. ([#1296](https://github.com/Pycord-Development/pycord/issues/1296))" + +msgid "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" +msgstr "Fixed keyword argument wildcard of `bridge.has_permissions` having the wrong type hint. ([#2364](https://github.com/Pycord-Development/pycord/pull/2364))" + +msgid "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" +msgstr "Fixed enum to support stringified annotations. ([#2367](https://github.com/Pycord-Development/pycord/pull/2367))" + +msgid "[2.4.1] - 2023-03-20" +msgstr "[2.4.1] - 2023-03-20" + +msgid "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" +msgstr "Updated the values of the `Color.embed_background()` classmethod to correspond with new theme colors in the app. ([#1931](https://github.com/Pycord-Development/pycord/pull/1931))" + +msgid "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" +msgstr "Fixed the type-hinting of `SlashCommandGroup.walk_commands()` to reflect actual behavior. ([#1838](https://github.com/Pycord-Development/pycord/pull/1838))" + +msgid "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" +msgstr "Fixed the voice IP discovery due to the recent [announced change](https://discord.com/channels/613425648685547541/697138785317814292/1080623873629884486). ([#1955](https://github.com/Pycord-Development/pycord/pull/1955))" + +msgid "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" +msgstr "Fixed `reason` being passed to the wrong method in `guild.create_auto_moderation_rule`. ([#1960](https://github.com/Pycord-Development/pycord/pull/1960))" + +msgid "[2.4.0] - 2023-02-10" +msgstr "[2.4.0] - 2023-02-10" + +msgid "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" +msgstr "Added new AutoMod trigger metadata properties `regex_patterns`, `allow_list`, and `mention_total_limit`; and added the `mention_spam` trigger type. ([#1809](https://github.com/Pycord-Development/pycord/pull/1809))" + +msgid "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" +msgstr "Added missing `image` parameter to `Guild.create_scheduled_event()` method. ([#1831](https://github.com/Pycord-Development/pycord/pull/1831))" + +msgid "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" +msgstr "New `ApplicationRoleConnectionMetadata` class for application role connection metadata, along with the `fetch_role_connection_metadata_records` and `update_role_connection_metadata_records` methods in `Client`. ([#1791](https://github.com/Pycord-Development/pycord/pull/1791))" + +msgid "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" +msgstr "Added new message types, `role_subscription_purchase`, `interaction_premium_upsell`, `stage_start`, `stage_end`, `stage_speaker`, `stage_raise_hand`, `stage_topic`, and `guild_application_premium_subscription`. ([#1852](https://github.com/Pycord-Development/pycord/pull/1852))" + +msgid "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Added new `EmbeddedActivity` values. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" +msgstr "Added new `suppress_notifications` to `MessageFlags`. ([#1912](https://github.com/Pycord-Development/pycord/pull/1912))" + +msgid "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Added GIF sticker format type to the `StickerFormatType` enum. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" +msgstr "Added new raw events: `raw_member_remove`, `raw_thread_update`, and `raw_thread_member_remove`. ([#1880](https://github.com/Pycord-Development/pycord/pull/1880))" + +msgid "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" +msgstr "Improved support for setting channel types & added new channel types for `discord.Option`. ([#1883](https://github.com/Pycord-Development/pycord/pull/1883))" + +msgid "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" +msgstr "Changed `EmbeddedActivity` values to update accordingly with the new activities. ([#1859](https://github.com/Pycord-Development/pycord/pull/1859))" + +msgid "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "Advanced version info is now stored as a dict in `version_info.advanced` instead of attributes on the `version_info` object. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" +msgstr "The `version_info.release_level` attribute has been reverted to its previous name, `releaselevel`. ([#1920](https://github.com/Pycord-Development/pycord/pull/1920))" + +msgid "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" +msgstr "Fixed bugs in `Page.update_files` where file objects stored in memory were causing an `AttributeError`, and `io.BytesIO` files didn't send properly more than once. ([#1869](https://github.com/Pycord-Development/pycord/pull/1869) & [#1881](https://github.com/Pycord-Development/pycord/pull/1881))" + +msgid "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" +msgstr "Fixed bridge groups missing the `parent` attribute. ([#1823](https://github.com/Pycord-Development/pycord/pull/1823))" + +msgid "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" +msgstr "Fixed issues with creating auto moderation rules. ([#1822](https://github.com/Pycord-Development/pycord/pull/1822))" + +msgid "[2.3.3] - 2023-02-10" +msgstr "[2.3.3] - 2023-02-10" + +msgid "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" +msgstr "Fixed an unhandled `KeyError` exception when receiving GIF stickers, causing crashes. ([#1915](https://github.com/Pycord-Development/pycord/pull/1915))" + +msgid "[2.3.2] - 2022-12-03" +msgstr "[2.3.2] - 2022-12-03" + +msgid "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" +msgstr "Fixed another `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1815](https://github.com/Pycord-Development/pycord/pull/1815))" + +msgid "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" +msgstr "Fixed an `AttributeError` in select relating to the select type. ([#1814](https://github.com/Pycord-Development/pycord/pull/1814))" + +msgid "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" +msgstr "Fixed `Thread.applied_tags` always returning an empty list. ([#1817](https://github.com/Pycord-Development/pycord/pull/1817))" + +msgid "[2.3.1] - 2022-11-27" +msgstr "[2.3.1] - 2022-11-27" + +msgid "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" +msgstr "Fixed `AttributeError` relating to the new `bridge_commands` attribute on `ext.bridge.Bot`. ([#1802](https://github.com/Pycord-Development/pycord/pull/1802))" + +msgid "[2.3.0] - 2022-11-23" +msgstr "[2.3.0] - 2022-11-23" + +msgid "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" +msgstr "New brief Attribute to BridgeSlashCommand. ([#1676](https://github.com/Pycord-Development/pycord/pull/1676))" + +msgid "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" +msgstr "Python 3.11 support. ([#1680](https://github.com/Pycord-Development/pycord/pull/1680))" + +msgid "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" +msgstr "New select types `user`, `role`, `mentionable`, and `channel` - Along with their respective types and shortcut decorators. ([#1702](https://github.com/Pycord-Development/pycord/pull/1702))" + +msgid "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" +msgstr "Added support for age-restricted (NSFW) commands. ([#1775](https://github.com/Pycord-Development/pycord/pull/1775))" + +msgid "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" +msgstr "New flags: `PublicUserFlags.active_developer` & `ApplicationFlags.active`. ([#1776](https://github.com/Pycord-Development/pycord/pull/1776))" + +msgid "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new forum features including tags, default slowmode, and default sort order. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" +msgstr "Support for new thread attributes `total_message_sent` and `is_pinned`. ([#1636](https://github.com/Pycord-Development/pycord/pull/1636))" + +msgid "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" +msgstr "Added `bridge_commands` attribute to `ext.bridge.Bot` for access to bridge command objects. ([#1787](https://github.com/Pycord-Development/pycord/pull/1787))" + +msgid "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" +msgstr "Updated `Guild.features` to include new and previously missing features. ([#1788](https://github.com/Pycord-Development/pycord/pull/1788))" + +msgid "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" +msgstr "Fix bridge.has_permissions. ([#1695](https://github.com/Pycord-Development/pycord/pull/1695))" + +msgid "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" +msgstr "Fix audit log overwrite type always resulting in `None`. ([#1716](https://github.com/Pycord-Development/pycord/pull/1716))" + +msgid "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" +msgstr "Fixed error when using `suppress` kwarg in `send()`. ([#1719](https://github.com/Pycord-Development/pycord/pull/1719) & [#1723](https://github.com/Pycord-Development/pycord/pull/1723))" + +msgid "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` type kwarg now defaults to `ApplicationCommand`, so all command types can be retrieved by default. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" +msgstr "`get_application_command()` now supports retrieving subcommands and subcommand groups. ([#1678](https://github.com/Pycord-Development/pycord/pull/1678))" + +msgid "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" +msgstr "Removed the guild feature `PRIVATE_THREADS` due to paywall limitation removal. ([#1789](https://github.com/Pycord-Development/pycord/pull/1789))" + +msgid "[2.2.2] - 2022-10-05" +msgstr "[2.2.2] - 2022-10-05" + +msgid "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" +msgstr "Fixed `parent` attribute of second-level subcommands being set to the base level command instead of the direct parent. ([#1673](https://github.com/Pycord-Development/pycord/pull/1673))" + +msgid "[2.2.1] - 2022-10-05" +msgstr "[2.2.1] - 2022-10-05" + +msgid "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "New `SlashCommand.qualified_id` attribute. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" +msgstr "Fixed a `TypeError` in `ban()` methods related to the new `delete_message_seconds` parameter. ([#1666](https://github.com/Pycord-Development/pycord/pull/1666))" + +msgid "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" +msgstr "Fixed broken `cog` and `parent` attributes on commands in cogs. ([#1662](https://github.com/Pycord-Development/pycord/pull/1662))" + +msgid "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" +msgstr "Fixed `SlashCommand.mention` for subcommands. ([#1672](https://github.com/Pycord-Development/pycord/pull/1672))" + +msgid "[2.2.0] - 2022-10-02" +msgstr "[2.2.0] - 2022-10-02" + +msgid "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" +msgstr "New Guild Feature `INVITES_DISABLED`. ([#1613](https://github.com/Pycord-Development/pycord/pull/1613))" + +msgid "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" +msgstr "`suppress` kwarg to `Messageable.send()`. ([#1587](https://github.com/Pycord-Development/pycord/pull/1587))" + +msgid "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "`proxy` and `proxy_auth` params to many Webhook-related methods. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "`delete_message_seconds` parameter in ban methods. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" +msgstr "New `View.get_item()` method. ([#1659](https://github.com/Pycord-Development/pycord/pull/1659))" + +msgid "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "Permissions support for bridge commands. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" +msgstr "New `BridgeCommand.invoke()` method. ([#1642](https://github.com/Pycord-Development/pycord/pull/1642))" + +msgid "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" +msgstr "New `raw_mentions`, `raw_role_mentions` and `raw_channel_mentions` functions in `discord.utils`. ([#1658](https://github.com/Pycord-Development/pycord/pull/1658))" + +msgid "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "New methods `original_response`, `edit_original_response` & `delete_original_response` for `Interaction` objects. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Deprecated" +msgstr "Deprecated" + +msgid "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" +msgstr "The `delete_message_days` parameter in ban methods is now deprecated. Please use `delete_message_seconds` instead. ([#1557](https://github.com/Pycord-Development/pycord/pull/1557))" + +msgid "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" +msgstr "The `original_message`, `edit_original_message` & `delete_original_message` methods for `Interaction` are now deprecated. Please use the respective `original_response`, `edit_original_response` & `delete_original_response` methods instead. ([#1609](https://github.com/Pycord-Development/pycord/pull/1609))" + +msgid "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" +msgstr "Various fixes to ext.bridge groups. ([#1633](https://github.com/Pycord-Development/pycord/pull/1633) & [#1631](https://github.com/Pycord-Development/pycord/pull/1631))" + +msgid "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" +msgstr "Fix `VOICE_SERVER_UPDATE` error. ([#1624](https://github.com/Pycord-Development/pycord/pull/1624))" + +msgid "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" +msgstr "Removed unnecessary instance check in autocomplete. ([#1643](https://github.com/Pycord-Development/pycord/pull/1643))" + +msgid "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" +msgstr "Interaction responses are now passed the respective `proxy` and `proxy_auth` params as defined in `Client`. ([#1655](https://github.com/Pycord-Development/pycord/pull/1655))" + +msgid "[2.1.3] - 2022-09-06" +msgstr "[2.1.3] - 2022-09-06" + +msgid "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" +msgstr "Fix TypeError in `process_application_commands`. ([#1622](https://github.com/Pycord-Development/pycord/pull/1622))" + +msgid "[2.1.2] - 2022-09-06" +msgstr "[2.1.2] - 2022-09-06" + +msgid "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" +msgstr "Fix subcommands having MISSING cog attribute. ([#1594](https://github.com/Pycord-Development/pycord/pull/1594) & [#1605](https://github.com/Pycord-Development/pycord/pull/1605))" + +msgid "[2.1.1] - 2022-08-25" +msgstr "[2.1.1] - 2022-08-25" + +msgid "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" +msgstr "Bridge command detection in cogs. ([#1592](https://github.com/Pycord-Development/pycord/pull/1592))" + +msgid "[2.1.0] - 2022-08-25" +msgstr "[2.1.0] - 2022-08-25" + +msgid "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" +msgstr "Support for add, sub, union, intersect, and inverse operations on classes inheriting from `BaseFlags`. ([#1486](https://github.com/Pycord-Development/pycord/pull/1486))" + +msgid "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "A `disable_on_timeout` kwarg in the `View` constructor. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" +msgstr "New `mention` property for `SlashCommand` objects, allowing a shortcut for the new command markdown syntax. ([#1523](https://github.com/Pycord-Development/pycord/pull/1523))" + +msgid "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" +msgstr "An `app_commands_badge` value on `ApplicationFlags`. ([#1535](https://github.com/Pycord-Development/pycord/pull/1535) and [#1553](https://github.com/Pycord-Development/pycord/pull/1553))" + +msgid "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" +msgstr "A new `fetch_application` method in the `Client` object. ([#1536](https://github.com/Pycord-Development/pycord/pull/1536))" + +msgid "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" +msgstr "New `on_check_failure` event method for the `View` class. ([#799](https://github.com/Pycord-Development/pycord/pull/799))" + +msgid "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" +msgstr "A `set_mfa_required` method to `Guild`. ([#1552](https://github.com/Pycord-Development/pycord/pull/1552))" + +msgid "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for command groups with bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for `Attachment` type options for bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "`is_app` property for `BridgeContext` to better differentiate context types. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Support for localization on bridge commands. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "A `filter_params` helper function in `discord.utils`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" +msgstr "Support for `InteractionMessage` via the `message` property of `View`. ([#1492](https://github.com/Pycord-Development/pycord/pull/1492))" + +msgid "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" +msgstr "Use `slash_variant` and `ext_variant` attributes instead of `get_application_command()` and `get_ext_command()` methods on `BridgeCommand`. ([#1496](https://github.com/Pycord-Development/pycord/pull/1496))" + +msgid "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" +msgstr "Set `store` kwarg default to `False` in load_extension(s) method. ([#1520](https://github.com/Pycord-Development/pycord/pull/1520))" + +msgid "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" +msgstr "`commands.has_permissions()` check now returns `True` in DM channels. ([#1577](https://github.com/Pycord-Development/pycord/pull/1577))" + +msgid "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" +msgstr "Fix `VoiceChannel`/`CategoryChannel` data being invalidated on `Option._invoke`. ([#1490](https://github.com/Pycord-Development/pycord/pull/1490))" + +msgid "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" +msgstr "Fix type issues in `options.py` ([#1473](https://github.com/Pycord-Development/pycord/pull/1473))" + +msgid "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" +msgstr "Fix KeyError on AutoModActionExecution when the bot lacks the Message Content Intent. ([#1521](https://github.com/Pycord-Development/pycord/pull/1521))" + +msgid "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" +msgstr "Large code/documentation cleanup & minor bug fixes. ([#1476](https://github.com/Pycord-Development/pycord/pull/1476))" + +msgid "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" +msgstr "Fix `Option` with type `str` raising AttributeError when `min_length` or `max_length` kwargs are passed. ([#1527](https://github.com/Pycord-Development/pycord/pull/1527))" + +msgid "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" +msgstr "Fix `load_extensions` parameters not being passed through correctly. ([#1537](https://github.com/Pycord-Development/pycord/pull/1537))" + +msgid "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" +msgstr "Fix `SlashCommandGroup` descriptions to use the correct default string. ([#1539](https://github.com/Pycord-Development/pycord/pull/1539) and [#1586](https://github.com/Pycord-Development/pycord/pull/1586))" + +msgid "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" +msgstr "Fix Enum type options breaking due to `from_datatype()` method & Fix minor typing import. ([#1541](https://github.com/Pycord-Development/pycord/pull/1541))" + +msgid "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" +msgstr "Adjust category and guild `_channels` attributes to work with NoneType positions. ([#1530](https://github.com/Pycord-Development/pycord/pull/1530))" + +msgid "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" +msgstr "Make `SelectOption.emoji` a property. ([#1550](https://github.com/Pycord-Development/pycord/pull/1550))" + +msgid "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" +msgstr "Improve sticker creation by checking for minimum and maximum length on `name` and `description`. ([#1546](https://github.com/Pycord-Development/pycord/pull/1546))" + +msgid "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" +msgstr "Fix threads created with a base message being set to the wrong `message_reference`. ([#1551](https://github.com/Pycord-Development/pycord/pull/1551))" + +msgid "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" +msgstr "Avoid unnecessary calls to `sync_commands` during runtime. ([#1563](https://github.com/Pycord-Development/pycord/pull/1563))" + +msgid "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" +msgstr "Fix bug in `Modal.on_timeout()` by using `custom_id` to create timeout task. ([#1562](https://github.com/Pycord-Development/pycord/pull/1562))" + +msgid "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" +msgstr "Respect limit argument in `Guild.bans()`. ([#1573](https://github.com/Pycord-Development/pycord/pull/1573))" + +msgid "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" +msgstr "Fix `before` argument in `on_scheduled_event_update` event always set to `None` by converting ID to `int`. ([#1580](https://github.com/Pycord-Development/pycord/pull/1580))" + +msgid "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" +msgstr "Fix `__eq__` method `ApplicationCommand` accidentally comparing to self. ([#1585](https://github.com/Pycord-Development/pycord/pull/1585))" + +msgid "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" +msgstr "Apply `cog_check` method to `ApplicationCommand` invocations. ([#1575](https://github.com/Pycord-Development/pycord/pull/1575))" + +msgid "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" +msgstr "Fix `Interaction.edit_original_message()` using `ConnectionState` instead of `InteractionMessageState`. ([#1565](https://github.com/Pycord-Development/pycord/pull/1565))" + +msgid "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" +msgstr "Fix required parameters validation error. ([#1589](https://github.com/Pycord-Development/pycord/pull/1589))" + +msgid "Security" +msgstr "Security" + +msgid "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" +msgstr "Improved fix for application-based bots without the bot scope ([#1584](https://github.com/Pycord-Development/pycord/pull/1584))" + +msgid "[2.0.1] - 2022-08-16" +msgstr "[2.0.1] - 2022-08-16" + +msgid "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" +msgstr "Fix for application-based bots without the bot scope ([#1568](https://github.com/Pycord-Development/pycord/pull/1568))" + +msgid "[2.0.0] - 2022-07-08" +msgstr "[2.0.0] - 2022-07-08" + +msgid "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "New `news` property on `TextChannel`. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" +msgstr "New `invisible` kwarg to `defer()` method. ([#1379](https://github.com/Pycord-Development/pycord/pull/1379))" + +msgid "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Support for audit log event type 121 `APPLICATION_COMMAND_PERMISSION_UPDATE`. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" +msgstr "New `ForumChannelConverter`. ([#1440](https://github.com/Pycord-Development/pycord/pull/1440))" + +msgid "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" +msgstr "A shortcut `jump_url` property to users. ([#1444](https://github.com/Pycord-Development/pycord/pull/1444))" + +msgid "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" +msgstr "Ability for webhooks to create forum posts. ([#1405](https://github.com/Pycord-Development/pycord/pull/1405))" + +msgid "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" +msgstr "New `message` property to `View` ([#1446](https://github.com/Pycord-Development/pycord/pull/1446))" + +msgid "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" +msgstr "Support for `error`, `before_invoke`, and `after_invoke` handlers on `BridgeCommand`. ([#1411](https://github.com/Pycord-Development/pycord/pull/1411))" + +msgid "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "New `thread` property to `Message`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" +msgstr "A `starting_message` property to `Thread`. ([#1447](https://github.com/Pycord-Development/pycord/pull/1447))" + +msgid "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" +msgstr "An `app_permissions` property to `Interaction` and `ApplicationContext`. ([#1460](https://github.com/Pycord-Development/pycord/pull/1460))" + +msgid "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" +msgstr "Support for loading folders in `load_extension`, and a new helper function `load_extensions`. ([#1423](https://github.com/Pycord-Development/pycord/pull/1423))" + +msgid "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" +msgstr "Support for AutoMod ([#1316](https://github.com/Pycord-Development/pycord/pull/1316))" + +msgid "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" +msgstr "Support for `min_length` and `max_length` kwargs in `Option`. ([#1463](https://github.com/Pycord-Development/pycord/pull/1463))" + +msgid "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" +msgstr "Native timeout support for `Modal`. ([#1434](https://github.com/Pycord-Development/pycord/pull/1434))" + +msgid "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" +msgstr "Updated to new sticker limit for premium guilds. ([#1420](https://github.com/Pycord-Development/pycord/pull/1420))" + +msgid "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Replace deprecated endpoint in `HTTPClient.change_my_nickname`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" +msgstr "Updated deprecated IDENTIFY packet connection properties. ([#1430](https://github.com/Pycord-Development/pycord/pull/1430))" + +msgid "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" +msgstr "`Guild.region` attribute (Deprecated on API, VoiceChannel.rtc_region should be used instead). ([#1429](https://github.com/Pycord-Development/pycord/pull/1429))" + +msgid "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" +msgstr "Change `guild_only` to `dm_permission` in application command `to_dict` method. ([#1368](https://github.com/Pycord-Development/pycord/pull/1368))" + +msgid "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" +msgstr "Fix `repr(ScheduledEventLocation)` raising TypeError. ([#1369](https://github.com/Pycord-Development/pycord/pull/1369))" + +msgid "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" +msgstr "Fix `repr(TextChannel)` raising AttributeError. ([#1370](https://github.com/Pycord-Development/pycord/pull/1370))" + +msgid "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" +msgstr "Fix application command validation. ([#1372](https://github.com/Pycord-Development/pycord/pull/1372))" + +msgid "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" +msgstr "Fix scheduled event `cover` property raising AttributeError. ([#1381](https://github.com/Pycord-Development/pycord/pull/1381))" + +msgid "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" +msgstr "Fix `SlashCommandGroup` treating optional arguments as required. ([#1386](https://github.com/Pycord-Development/pycord/pull/1386))" + +msgid "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" +msgstr "Fix `remove_application_command` not always removing commands. ([#1391](https://github.com/Pycord-Development/pycord/pull/1391))" + +msgid "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" +msgstr "Fix busy-loop in `DecodeManager` when the decode queue is empty, causing 100% CPU consumption. ([#1395](https://github.com/Pycord-Development/pycord/pull/1395))" + +msgid "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" +msgstr "Fix incorrect activities and permissions on `Interaction` and `Option` objects. ([#1365](https://github.com/Pycord-Development/pycord/pull/1365))" + +msgid "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" +msgstr "Converted PartialMember `deaf` and `mute` from str annotation (incorrect) to bool annotation. ([#1424](https://github.com/Pycord-Development/pycord/pull/1424))" + +msgid "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" +msgstr "Use `PUT` instead of `POST` in `HTTPClient.join_thread`. ([#1426](https://github.com/Pycord-Development/pycord/pull/1426))" + +msgid "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" +msgstr "Fix enum options not setting `input_type` to a SlashCommandOptionType. ([#1428](https://github.com/Pycord-Development/pycord/pull/1428))" + +msgid "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" +msgstr "Fixed TypeError when using thread options. ([#1427](https://github.com/Pycord-Development/pycord/pull/1427))" + +msgid "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" +msgstr "Allow voice channels in PartialMessage. ([#1441](https://github.com/Pycord-Development/pycord/pull/1441))" + +msgid "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" +msgstr "Fixed `AuditLogAction.target_type` for application command permission updates. ([#1445](https://github.com/Pycord-Development/pycord/pull/1445))" + +msgid "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" +msgstr "Fix bridge commands to ignore the ephemeral kwarg. ([#1453](https://github.com/Pycord-Development/pycord/pull/1453))" + +msgid "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" +msgstr "Update `thread.members` on `thread.fetch_members`. ([#1464](https://github.com/Pycord-Development/pycord/pull/1464))" + +msgid "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" +msgstr "Fix the error when Discord doesn't send the `app_permissions` data in `Interaction`. ([#1467](https://github.com/Pycord-Development/pycord/pull/1467))" + +msgid "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" +msgstr "Fix AttributeError when voice client `play()` function isn't completed yet. ([#1360](https://github.com/Pycord-Development/pycord/pull/1360))" + +msgid "[2.0.0-rc.1] - 2022-05-17" +msgstr "[2.0.0-rc.1] - 2022-05-17" + +msgid "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" +msgstr "A `delete_after` kwarg to `Paginator.send`. ([#1245](https://github.com/Pycord-Development/pycord/pull/1245))" + +msgid "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" +msgstr "New `reason` kwarg to `Thread.delete_messages`. ([#1253](https://github.com/Pycord-Development/pycord/pull/1253))" + +msgid "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" +msgstr "A new `jump_url` property to channel and thread objects. ([#1254](https://github.com/Pycord-Development/pycord/pull/1254) & [#1259](https://github.com/Pycord-Development/pycord/pull/1259))" + +msgid "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" +msgstr "New `Paginator.edit()` method. ([#1258](https://github.com/Pycord-Development/pycord/pull/1258))" + +msgid "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" +msgstr "An `EmbedField` object. ([#1181](https://github.com/Pycord-Development/pycord/pull/1181))" + +msgid "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" +msgstr "Option names and descriptions are now validated locally. ([#1271](https://github.com/Pycord-Development/pycord/pull/1271))" + +msgid "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" +msgstr "Component field limits are now enforced at the library level ([#1065](https://github.com/Pycord-Development/pycord/pull/1065) & [#1289](https://github.com/Pycord-Development/pycord/pull/1289))" + +msgid "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" +msgstr "Support providing option channel types as a list. ([#1000](https://github.com/Pycord-Development/pycord/pull/1000))" + +msgid "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" +msgstr "New `Guild.jump_url` property. ([#1282](https://github.com/Pycord-Development/pycord/pull/1282))" + +msgid "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" +msgstr "ext.pages now supports ext.bridge. ([#1288](https://github.com/Pycord-Development/pycord/pull/1288))" + +msgid "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" +msgstr "Implement `None` check for check_guilds. ([#1291](https://github.com/Pycord-Development/pycord/pull/1291))" + +msgid "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" +msgstr "A debug warning to catch deprecated perms v1 usage until v2 perms are implemented. ([#1301](https://github.com/Pycord-Development/pycord/pull/1301))" + +msgid "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" +msgstr "A new `files` parameter to `Page` object. ([#1300](https://github.com/Pycord-Development/pycord/pull/1300))" + +msgid "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" +msgstr "A `disable_all_items` and `enable_all_items` methods to `View` object. ([#1199](https://github.com/Pycord-Development/pycord/pull/1199) & [#1319](https://github.com/Pycord-Development/pycord/pull/1319))" + +msgid "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" +msgstr "New `is_nsfw` attribute to voice channels. ([#1317](https://github.com/Pycord-Development/pycord/pull/1317))" + +msgid "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" +msgstr "Support for Permissions v2. ([#1328](https://github.com/Pycord-Development/pycord/pull/1328))" + +msgid "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" +msgstr "Allow using Enum to specify option choices. ([#1292](https://github.com/Pycord-Development/pycord/pull/1292))" + +msgid "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" +msgstr "The `file` and `files` parameters to `InteractionResponse.edit_message()`. ([#1340](https://github.com/Pycord-Development/pycord/pull/1340))" + +msgid "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" +msgstr "A `BridgeExtContext.delete()` method. ([#1348](https://github.com/Pycord-Development/pycord/pull/1348))" + +msgid "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" +msgstr "Forum channels support. ([#1249](https://github.com/Pycord-Development/pycord/pull/1249))" + +msgid "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" +msgstr "Implemented `Interaction.to_dict`. ([#1274](https://github.com/Pycord-Development/pycord/pull/1274))" + +msgid "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" +msgstr "Support event covers for audit logs. ([#1355](https://github.com/Pycord-Development/pycord/pull/1355))" + +msgid "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" +msgstr "Removed implicit defer call in `View`. ([#1260](https://github.com/Pycord-Development/pycord/pull/1260))" + +msgid "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" +msgstr "`Option` class and usage were rewritten. ([#1251](https://github.com/Pycord-Development/pycord/pull/1251))" + +msgid "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" +msgstr "`description` argument of `PageGroup` is now optional. ([#1330](https://github.com/Pycord-Development/pycord/pull/1330))" + +msgid "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" +msgstr "Allow `Modal.children` to be set on initialization. ([#1311](https://github.com/Pycord-Development/pycord/pull/1311))" + +msgid "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" +msgstr "Renamed `delete_exiting` to `delete_existing` (typo). ([#1336](https://github.com/Pycord-Development/pycord/pull/1336))" + +msgid "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" +msgstr "Fix `PartialMessage.edit()` setting `view` as `None` when `view` kwarg is not passed. ([#1256](https://github.com/Pycord-Development/pycord/pull/1256))" + +msgid "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Fix channel parsing in slash command invocations. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" +msgstr "Make the channel `position` attribute optional. ([#1257](https://github.com/Pycord-Development/pycord/pull/1257))" + +msgid "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" +msgstr "Fix `PaginatorMenu` to use interaction routes for updates. ([#1267](https://github.com/Pycord-Development/pycord/pull/1267))" + +msgid "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" +msgstr "Fix `PartialMessage.edit()` behavior when `content` is `None`. ([#1268](https://github.com/Pycord-Development/pycord/pull/1268))" + +msgid "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" +msgstr "Fix `Paginator.add_menu()` and `Paginator.add_default_buttons()` passing `custom_id` to `PaginatorMenu`. ([#1270](https://github.com/Pycord-Development/pycord/pull/1270))" + +msgid "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" +msgstr "Fix `process_application_commands` command not found fallback. ([#1262](https://github.com/Pycord-Development/pycord/pull/1262))" + +msgid "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" +msgstr "Fix interaction response race condition. ([#1039](https://github.com/Pycord-Development/pycord/pull/1039))" + +msgid "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" +msgstr "Remove voice client when the bot disconnects. ([#1273](https://github.com/Pycord-Development/pycord/pull/1273))" + +msgid "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" +msgstr "Fix conversion exception in `ext.bridge`. ([#1250](https://github.com/Pycord-Development/pycord/pull/1250))" + +msgid "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" +msgstr "`Context.me` returns ClientUser when guilds intent is absent. ([#1286](https://github.com/Pycord-Development/pycord/pull/1286))" + +msgid "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" +msgstr "Updated `Message.edit` type-hinting overload and removed resulting redundant overloads. ([#1299](https://github.com/Pycord-Development/pycord/pull/1299))" + +msgid "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" +msgstr "Improved validation regex for command names & options. ([#1309](https://github.com/Pycord-Development/pycord/pull/1309))" + +msgid "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" +msgstr "Correct `Guild.fetch_members()` type-hints. ([#1323](https://github.com/Pycord-Development/pycord/pull/1323))" + +msgid "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" +msgstr "Multiple fixes and enhancements for `PageGroup` handling. ([#1350](https://github.com/Pycord-Development/pycord/pull/1350))" + +msgid "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" +msgstr "Make `TextChannel._get_channel` async. ([#1358](https://github.com/Pycord-Development/pycord/pull/1358))" + +msgid "[2.0.0-beta.7] - 2022-04-09" +msgstr "[2.0.0-beta.7] - 2022-04-09" + +msgid "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" +msgstr "Fix py3.10 UnionType checks issue. ([#1240](https://github.com/Pycord-Development/pycord/pull/1240))" + +msgid "Older Versions" +msgstr "Older Versions" + +msgid "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." +msgstr "A changelog for versions prior to v2.0 can be found [here](old_changelog.rst)." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/cogs.po b/docs/locales/zh_CN/LC_MESSAGES/cogs.po new file mode 100644 index 0000000000..713392b91f --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/cogs.po @@ -0,0 +1,70 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.Cog`." + +msgid "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." +msgstr "Every command is marked with the :func:`discord.command` decorator or the corresponding shortcut command decorator." + +msgid "Every listener is marked with the :meth:`.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single slash command named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden." +msgstr "The name of the cog is automatically derived from the class name but can be overridden." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/discord.po b/docs/locales/zh_CN/LC_MESSAGES/discord.po new file mode 100644 index 0000000000..242f4b20a4 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/discord.po @@ -0,0 +1,121 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Creating a Bot Account" +msgstr "Creating a Bot Account" + +msgid "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." +msgstr "In order to work with the library and the Discord API in general, we must first create a Discord Bot account." + +msgid "Creating a Bot account is a pretty straightforward process." +msgstr "Creating a Bot account is a pretty straightforward process." + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_" +msgstr "Navigate to the `application page `_" + +msgid "Click on the \"New Application\" button." +msgstr "Click on the \"New Application\" button." + +msgid "The new application button." +msgstr "The new application button." + +msgid "Give the application a name and click \"Create\"." +msgstr "Give the application a name and click \"Create\"." + +msgid "The new application form filled in." +msgstr "The new application form filled in." + +msgid "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." +msgstr "Create a Bot User by navigating to the \"Bot\" tab and clicking \"Add Bot\"." + +msgid "Click \"Yes, do it!\" to continue." +msgstr "Click \"Yes, do it!\" to continue." + +msgid "The Add Bot button." +msgstr "The Add Bot button." + +msgid "Make sure that **Public Bot** is ticked if you want others to invite your bot." +msgstr "Make sure that **Public Bot** is ticked if you want others to invite your bot." + +msgid "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." +msgstr "You should also make sure that **Require OAuth2 Code Grant** is unchecked unless you are developing a service that needs it. If you're unsure, then **leave it unchecked**." + +msgid "How the Bot User options should look like for most people." +msgstr "How the Bot User options should look like for most people." + +msgid "Copy the token using the \"Copy\" button." +msgstr "Copy the token using the \"Copy\" button." + +msgid "**This is not the Client Secret at the General Information page.**" +msgstr "**This is not the Client Secret at the General Information page.**" + +msgid "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." +msgstr "It should be worth noting that this token is essentially your bot's password. You should **never** share this with someone else. In doing so, someone can log in to your bot and do malicious things, such as leaving servers, ban all members inside a server, or pinging everyone maliciously." + +msgid "The possibilities are endless, so **do not share this token.**" +msgstr "The possibilities are endless, so **do not share this token.**" + +msgid "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." +msgstr "If you accidentally leaked your token, click the \"Regenerate\" button as soon as possible. This revokes your old token and re-generates a new one. Now you need to use the new token to login." + +msgid "And that's it. You now have a bot account and you can login with that token." +msgstr "And that's it. You now have a bot account and you can login with that token." + +msgid "Inviting Your Bot" +msgstr "Inviting Your Bot" + +msgid "So you've made a Bot User but it's not actually in any server." +msgstr "So you've made a Bot User but it's not actually in any server." + +msgid "If you want to invite your bot you must create an invite URL for it." +msgstr "If you want to invite your bot you must create an invite URL for it." + +msgid "Click on your bot's page." +msgstr "Click on your bot's page." + +msgid "Expand the \"OAuth2\" tab and click on \"URL Generator\"." +msgstr "Expand the \"OAuth2\" tab and click on \"URL Generator\"." + +msgid "How the OAuth2 tab should look like." +msgstr "How the OAuth2 tab should look like." + +msgid "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." +msgstr "Tick the \"bot\" and \"applications.commands\" checkboxes under \"scopes\"." + +msgid "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." +msgstr "The scopes checkbox with \"bot\" and \"applications.commands\" ticked." + +msgid "Tick the permissions required for your bot to function under \"Bot Permissions\"." +msgstr "Tick the permissions required for your bot to function under \"Bot Permissions\"." + +msgid "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." +msgstr "Please be aware of the consequences of requiring your bot to have the \"Administrator\" permission." + +msgid "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." +msgstr "Bot owners must have 2FA enabled for certain actions and permissions when added in servers that have Server-Wide 2FA enabled. Check the `2FA support page `_ for more information." + +msgid "The permission checkboxes with some permissions checked." +msgstr "The permission checkboxes with some permissions checked." + +msgid "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." +msgstr "Now the resulting URL can be used to add your bot to a server. Copy and paste the URL into your browser, choose a server to invite the bot to, and click \"Authorize\"." + +msgid "The person adding the bot needs \"Manage Server\" permissions to do so." +msgstr "The person adding the bot needs \"Manage Server\" permissions to do so." + +msgid "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." +msgstr "If you want to generate this URL dynamically at run-time inside your bot and using the :class:`discord.Permissions` interface, you can use :func:`discord.utils.oauth_url`." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/ext/bridge/api.po b/docs/locales/zh_CN/LC_MESSAGES/ext/bridge/api.po new file mode 100644 index 0000000000..2e66ef4160 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/ext/bridge/api.po @@ -0,0 +1,388 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The reference manual that follows details the API of Pycord's bridge command extension module." +msgstr "The reference manual that follows details the API of Pycord's bridge command extension module." + +msgid "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." +msgstr "Using the prefixed command version (which uses the ``ext.commands`` extension) of bridge commands in guilds requires :attr:`Intents.message_context` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot, with support for cross-compatibility between command types." +msgstr "Represents a discord bot, with support for cross-compatibility between command types." + +msgid "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`.ext.commands.Bot` and as a result anything that you can do with a :class:`.ext.commands.Bot` you can do with this bot." + +msgid "Parameters" +msgstr "Parameters" + +msgid "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." +msgstr "Takes a :class:`.BridgeCommand` and adds both a slash and traditional (prefix-based) version of the command to the bot." + +msgid "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." +msgstr "A shortcut decorator that invokes :func:`bridge_command` and adds it to the internal command list via :meth:`~.Bot.add_bridge_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." +msgstr "A decorator that converts the provided method into an :class:`.BridgeCommand`, adds both a slash and traditional (prefix-based) version of the command to the bot, and returns the :class:`.BridgeCommand`." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`BridgeCommand`]" +msgstr "Callable[..., :class:`BridgeCommand`]" + +msgid "A decorator that is used to wrap a function as a bridge command group." +msgstr "A decorator that is used to wrap a function as a bridge command group." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)" + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`.ext.commands.AutoShardedBot` instead." + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the bridge extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and users input them correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "BridgeCommand" +msgstr "BridgeCommand" + +msgid "Compatibility class between prefixed-based commands and slash commands." +msgstr "Compatibility class between prefixed-based commands and slash commands." + +msgid "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." +msgstr "The callback to invoke when the command is executed. The first argument will be a :class:`BridgeContext`, and any additional arguments will be passed to the callback. This callback must be a coroutine." + +msgid "Parent of the BridgeCommand." +msgstr "Parent of the BridgeCommand." + +msgid "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" +msgstr "Keyword arguments that are directly passed to the respective command constructors. (:class:`.SlashCommand` and :class:`.ext.commands.Command`)" + +msgid "The slash command version of this bridge command." +msgstr "The slash command version of this bridge command." + +msgid "type" +msgstr "type" + +msgid ":class:`.BridgeSlashCommand`" +msgstr ":class:`.BridgeSlashCommand`" + +msgid "The prefix-based version of this bridge command." +msgstr "The prefix-based version of this bridge command." + +msgid ":class:`.BridgeExtCommand`" +msgstr ":class:`.BridgeExtCommand`" + +msgid "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" +msgstr "Returns name_localizations from :attr:`slash_variant` You can edit/set name_localizations directly with .. code-block:: python3" + +msgid "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.name_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.name_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" +msgstr "Returns description_localizations from :attr:`slash_variant` You can edit/set description_localizations directly with .. code-block:: python3" + +msgid "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" +msgstr "bridge_command.description_localizations[\"en-UK\"] = ... # or any other locale # or bridge_command.description_localizations = {\"en-UK\": ..., \"fr-FR\": ...}" + +msgid "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." +msgstr "Adds the command to a bot. This method is inherited by :class:`.BridgeCommandGroup`." + +msgid "The bot to add the command to." +msgstr "The bot to add the command to." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." +msgstr "This error handler is limited to the command it is defined to. However, higher scope handlers (per-cog and global) are still invoked afterwards as a catch-all. This handler also functions as the handler for both the prefixed and slash versions of the command." + +msgid "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." +msgstr "This error handler takes two parameters, a :class:`.BridgeContext` and a :class:`~discord.DiscordException`." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly before the command is called, making it useful for any sort of set up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." +msgstr "This hook is called directly after the command is called, making it useful for any sort of clean up required. This hook is called for both the prefixed and slash versions of the command." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.BridgeContext`." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "BridgeCommandGroup" +msgstr "BridgeCommandGroup" + +msgid "The slash command version of this command group." +msgstr "The slash command version of this command group." + +msgid ":class:`.SlashCommandGroup`" +msgstr ":class:`.SlashCommandGroup`" + +msgid "The prefix-based version of this command group." +msgstr "The prefix-based version of this command group." + +msgid ":class:`.ext.commands.Group`" +msgstr ":class:`.ext.commands.Group`" + +msgid "List of bridge commands in this group" +msgstr "List of bridge commands in this group" + +msgid "List[:class:`.BridgeCommand`]" +msgstr "List[:class:`.BridgeCommand`]" + +msgid "If :func:`map_to` is used, the mapped slash command." +msgstr "If :func:`map_to` is used, the mapped slash command." + +msgid "Optional[:class:`.SlashCommand`]" +msgstr "Optional[:class:`.SlashCommand`]" + +msgid "An iterator that recursively walks through all the bridge group's subcommands." +msgstr "An iterator that recursively walks through all the bridge group's subcommands." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.BridgeCommand` -- A bridge command of this bridge group." +msgstr ":class:`.BridgeCommand` -- A bridge command of this bridge group." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~collections.abc.Iterator\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.bridge.core.BridgeCommand\\`\\]`" + +msgid "A decorator to register a function as a subcommand." +msgstr "A decorator to register a function as a subcommand." + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that is used to wrap a function as a bridge command." +msgstr "A decorator that is used to wrap a function as a bridge command." + +msgid "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." +msgstr "Keyword arguments that are directly passed to the respective command constructors (:class:`.SlashCommandGroup` and :class:`.ext.commands.Group`)." + +msgid "To be used with bridge command groups, map the main command to a slash subcommand." +msgstr "To be used with bridge command groups, map the main command to a slash subcommand." + +msgid "The new name of the mapped command." +msgstr "The new name of the mapped command." + +msgid "The new description of the mapped command." +msgstr "The new description of the mapped command." + +msgid "Example" +msgstr "Example" + +msgid "Prefixed commands will not be affected, but slash commands will appear as:" +msgstr "Prefixed commands will not be affected, but slash commands will appear as:" + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in guilds, and also registers the command as guild only client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.guild_only` and :func:`discord.commands.guild_only`." + +msgid "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." +msgstr "Intended to work with :class:`.ApplicationCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to only run in nsfw contexts, and also registers the command as nsfw client-side (on discord)." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.is_nsfw` and :func:`discord.commands.is_nsfw`." + +msgid "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." +msgstr "In DMs, the prefixed-based command will always run as the user's privacy settings cannot be checked directly." + +msgid "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." +msgstr "Intended to work with :class:`.SlashCommand` and :class:`BridgeCommand`, adds a :func:`~ext.commands.check` that locks the command to be run by people with certain permissions inside guilds, and also registers the command as locked behind said permissions." + +msgid "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." +msgstr "Basically a utility function that wraps both :func:`discord.ext.commands.has_permissions` and :func:`discord.commands.default_permissions`." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Command Subclasses" +msgstr "Command Subclasses" + +msgid "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Command` that is used for bridge commands." + +msgid "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." +msgstr "A subclass of :class:`.ext.commands.Group` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommand` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommand` that is used for bridge commands." + +msgid "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." +msgstr "A subclass of :class:`.SlashCommandGroup` that is used for bridge commands." + +msgid "Context" +msgstr "Context" + +msgid "BridgeContext" +msgstr "BridgeContext" + +msgid "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." +msgstr "The base context class for compatibility commands. This class is an :term:`abstract base class` (also known as an ``abc``), which is subclassed by :class:`BridgeExtContext` and :class:`BridgeApplicationContext`. The methods in this class are meant to give parity between the two contexts, while still allowing for all of their functionality." + +msgid "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" +msgstr "When this is passed to a command, it will either be passed as :class:`BridgeExtContext`, or :class:`BridgeApplicationContext`. Since they are two separate classes, it's easy to use the :attr:`BridgeContext.is_app` attribute. to make different functionality for each context. For example, if you want to respond to a command with the command type that it was invoked with, you can do the following:" + +msgid "Helper for @overload to raise when called." +msgstr "Helper for @overload to raise when called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." +msgstr "Responds to the command with the respective response type to the current context. In :class:`BridgeExtContext`, this will be :meth:`~.Context.reply` while in :class:`BridgeApplicationContext`, this will be :meth:`~.ApplicationContext.respond`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.Interaction\\` \\| \\:py\\:class\\:\\`\\~discord.webhook.async\\_.WebhookMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Alias for :meth:`~.BridgeContext.respond`." +msgstr "Alias for :meth:`~.BridgeContext.respond`." + +msgid "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Defers the command with the respective approach to the current context. In :class:`BridgeExtContext`, this will be :meth:`~discord.abc.Messageable.trigger_typing` while in :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.defer`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." +msgstr "There is no ``trigger_typing`` alias for this method. ``trigger_typing`` will always provide the same functionality across contexts." + +msgid "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." +msgstr "Edits the original response message with the respective approach to the current context. In :class:`BridgeExtContext`, this will have a custom approach where :meth:`.respond` caches the message to be edited here. In :class:`BridgeApplicationContext`, this will be :attr:`~.ApplicationContext.edit`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.interactions.InteractionMessage\\` \\| \\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Whether the context is an :class:`BridgeApplicationContext` or not." +msgstr "Whether the context is an :class:`BridgeApplicationContext` or not." + +msgid "BridgeContext Subclasses" +msgstr "BridgeContext Subclasses" + +msgid "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The application context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.ApplicationContext`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." +msgstr "The ext.commands context class for compatibility commands. This class is a subclass of :class:`BridgeContext` and :class:`~.Context`. This class is meant to be used with :class:`BridgeCommand`." + +msgid "Deletes the original response message, if it exists." +msgstr "Deletes the original response message, if it exists." + +msgid "If provided, the number of seconds to wait before deleting the message." +msgstr "If provided, the number of seconds to wait before deleting the message." + +msgid "The reason for deleting the message. Shows up on the audit log." +msgstr "The reason for deleting the message. Shows up on the audit log." + +msgid "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." +msgstr "Alias of :data:`typing.Union` [ :class:`.BridgeExtContext`, :class:`.BridgeApplicationContext` ] for typing convenience." + +msgid "Option" +msgstr "Option" + +msgid "BridgeOption" +msgstr "BridgeOption" + +msgid "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." +msgstr "A subclass of :class:`discord.Option` which represents a selectable slash command option and a prefixed command argument for bridge commands." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/ext/bridge/index.po b/docs/locales/zh_CN/LC_MESSAGES/ext/bridge/index.po new file mode 100644 index 0000000000..5d04d47e3a --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/ext/bridge/index.po @@ -0,0 +1,22 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.bridge" +msgstr "discord.ext.bridge" + +msgid "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." +msgstr "This module allows using one command callback in order to make both a prefix command and a slash command. This page includes the API reference/documentation for the module, but only contains a short example. For a more detailed guide on how to use this, see our `discord.ext.bridge guide `_." + +msgid "Example usage:" +msgstr "Example usage:" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/ext/commands/api.po b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/api.po new file mode 100644 index 0000000000..eaacd057b9 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/api.po @@ -0,0 +1,4105 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "API Reference" +msgstr "API Reference" + +msgid "The following section outlines the API of Pycord's prefixed command extension module." +msgstr "The following section outlines the API of Pycord's prefixed command extension module." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Bots" +msgstr "Bots" + +msgid "Bot" +msgstr "Bot" + +msgid "Represents a discord bot." +msgstr "Represents a discord bot." + +msgid "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." +msgstr "This class is a subclass of :class:`discord.Bot` and as a result anything that you can do with a :class:`discord.Bot` you can do with this bot." + +msgid "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." +msgstr "This class also subclasses :class:`.GroupMixin` to provide the functionality to manage commands." + +msgid "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." +msgstr "Using prefixed commands requires :attr:`discord.Intents.message_content` to be enabled." + +msgid "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." +msgstr "The command prefix is what the message content must contain initially to have a command invoked. This prefix could either be a string to indicate what the prefix should be, or a callable that takes in the bot as its first parameter and :class:`discord.Message` as its second parameter and returns the prefix. This is to facilitate \"dynamic\" command prefixes. This callable can be either a regular function or a coroutine." + +msgid "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." +msgstr "An empty string as the prefix always matches, enabling prefix-less command invocation. While this may be useful in DMs it should be avoided in servers, as it's likely to cause performance issues and unintended command invocations." + +msgid "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." +msgstr "The command prefix could also be an iterable of strings indicating that multiple checks for the prefix should be used and the first one to match will be the invocation prefix. You can get this prefix via :attr:`.Context.prefix`. To avoid confusion empty iterables are not allowed." + +msgid "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." +msgstr "When passing multiple prefixes be careful to not pass a prefix that matches a longer prefix occurring later in the sequence. For example, if the command prefix is ``('!', '!?')`` the ``'!?'`` prefix will never be matched to any message as the previous one matches messages starting with ``!?``. This is especially important when passing an empty string, it should always be last as no prefix after it will be matched." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``. This attribute does not carry over to groups. You must set it to every group if you require group commands to be case-insensitive as well." + +msgid "type" +msgstr "type" + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." +msgstr "The help command implementation to use. This can be dynamically set at runtime. To remove the help command pass ``None``. For more information on implementing a help command, see :ref:`ext_commands_help_command`." + +msgid "Optional[:class:`.HelpCommand`]" +msgstr "Optional[:class:`.HelpCommand`]" + +msgid "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." +msgstr "Whether to strip whitespace characters after encountering the command prefix. This allows for ``! hello`` and ``!hello`` to both work if the ``command_prefix`` is set to ``!``. Defaults to ``False``." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a post-invoke hook. A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required. This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." +msgstr "Similar to :meth:`~.Bot.before_invoke`\\, this is not called unless checks and argument parsing procedures succeed. This hook is, however, **always** called regardless of the internal command callback raising an error (i.e. :exc:`.CommandInvokeError`\\). This makes it ideal for clean-up scenarios." + +msgid "The coroutine to register as the post-invoke hook." +msgstr "The coroutine to register as the post-invoke hook." + +msgid "Raises" +msgstr "Raises" + +msgid "The coroutine passed is not actually a coroutine." +msgstr "The coroutine passed is not actually a coroutine." + +msgid "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "A decorator that registers a coroutine as a pre-invoke hook. A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required. This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." +msgstr "The :meth:`~.Bot.before_invoke` and :meth:`~.Bot.after_invoke` hooks are only called if all checks and argument parsing procedures pass without error. If any check or argument parsing procedures fail then the hooks are not called." + +msgid "The coroutine to register as the pre-invoke hook." +msgstr "The coroutine to register as the pre-invoke hook." + +msgid "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." +msgstr "A decorator that adds a global check to the bot. A global check is similar to a :func:`.check` that is applied on a per-command basis except it is run before any command checks have been verified and applies to every command the bot has." + +msgid "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." +msgstr "This function can either be a regular function or a coroutine. Similar to a command :func:`.check`, this takes a single parameter of type :class:`.Context` and can only raise exceptions inherited from :exc:`.ApplicationCommandError`." + +msgid "Example" +msgstr "Example" + +msgid "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." +msgstr "A decorator that adds a \"call once\" global check to the bot. Unlike regular global checks, this one is called only once per :meth:`.Bot.invoke` call. Regular global checks are called whenever a command is called or :meth:`.Command.can_run` is called. This type of check bypasses that and ensures that it's called only once, even inside the default help command." + +msgid "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." +msgstr "When using this function the :class:`.Context` sent to a group subcommand may only parse the parent command and not the subcommands due to it being invoked once per :meth:`.Bot.invoke` call." + +msgid "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.command` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "Returns" +msgstr "Returns" + +msgid "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Command, adds it to the bot, then returns it." + +msgid "Return type" +msgstr "Return type" + +msgid "Callable[..., :class:`Command`]" +msgstr "Callable[..., :class:`Command`]" + +msgid "A decorator that registers an event to listen to." +msgstr "A decorator that registers an event to listen to." + +msgid "You can find more info about the events on the :ref:`documentation below `." +msgstr "You can find more info about the events on the :ref:`documentation below `." + +msgid "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." +msgstr "The events must be a :ref:`coroutine `, if not, :exc:`TypeError` is raised." + +msgid "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." +msgstr "This replaces any default handlers. Developers are encouraged to use :py:meth:`~discord.Client.listen` for adding additional handlers instead of :py:meth:`~discord.Client.event` unless default method replacement is intended." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." +msgstr "A shortcut decorator that invokes :func:`.group` and adds it to the internal command list via :meth:`~.GroupMixin.add_command`." + +msgid "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a Group, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`Group`]" +msgstr "Callable[..., :class:`Group`]" + +msgid "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" +msgstr "A decorator that registers another function as an external event listener. Basically this allows you to listen to multiple events from different places e.g. such as :func:`.on_ready`" + +msgid "The functions being listened to must be a :ref:`coroutine `." +msgstr "The functions being listened to must be a :ref:`coroutine `." + +msgid "The function being listened to is not a coroutine." +msgstr "The function being listened to is not a coroutine." + +msgid "The ``name`` (event name) does not start with 'on_'" +msgstr "The ``name`` (event name) does not start with 'on_'" + +msgid "Would print one and two in an unspecified order." +msgstr "Would print one and two in an unspecified order." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`Coro\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]`" + +msgid "The activity being used upon logging in." +msgstr "The activity being used upon logging in." + +msgid "Optional[:class:`.BaseActivity`]" +msgstr "Optional[:class:`.BaseActivity`]" + +msgid "Adds an :class:`.ApplicationCommand` into the internal list of commands." +msgstr "Adds an :class:`.ApplicationCommand` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`command` or other shortcut decorators are used instead." + +msgid "The command to add." +msgstr "The command to add." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." +msgstr "Adds a global check to the bot. This is the non-decorator interface to :meth:`.check` and :meth:`.check_once`." + +msgid "The function that was used as a global check." +msgstr "The function that was used as a global check." + +msgid "If the function should only be called once per :meth:`.Bot.invoke` call." +msgstr "If the function should only be called once per :meth:`.Bot.invoke` call." + +msgid "Adds a \"cog\" to the bot." +msgstr "Adds a \"cog\" to the bot." + +msgid "A cog is a class that has its own event listeners and commands." +msgstr "A cog is a class that has its own event listeners and commands." + +msgid ":exc:`.ClientException` is raised when a cog with the same name is already loaded." +msgstr ":exc:`.ClientException` is raised when a cog with the same name is already loaded." + +msgid "The cog to register to the bot." +msgstr "The cog to register to the bot." + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error. .. versionadded:: 2.0" + +msgid "If a previously loaded cog with the same name should be ejected instead of raising an error." +msgstr "If a previously loaded cog with the same name should be ejected instead of raising an error." + +msgid "The cog does not inherit from :class:`.Cog`." +msgstr "The cog does not inherit from :class:`.Cog`." + +msgid "An error happened during loading." +msgstr "An error happened during loading." + +msgid "A cog with the same name is already loaded." +msgstr "A cog with the same name is already loaded." + +msgid "Adds a :class:`.Command` into the internal list of commands." +msgstr "Adds a :class:`.Command` into the internal list of commands." + +msgid "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." +msgstr "This is usually not called, instead the :meth:`~.GroupMixin.command` or :meth:`~.GroupMixin.group` shortcut decorators are used instead." + +msgid "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" +msgstr "Raise :exc:`.CommandRegistrationError` instead of generic :exc:`.ClientException`" + +msgid "If the command or its alias is already registered by different command." +msgstr "If the command or its alias is already registered by different command." + +msgid "If the command passed is not a subclass of :class:`.Command`." +msgstr "If the command passed is not a subclass of :class:`.Command`." + +msgid "The non decorator alternative to :meth:`.listen`." +msgstr "The non decorator alternative to :meth:`.listen`." + +msgid "The function to call." +msgstr "The function to call." + +msgid "The name of the event to listen for. Defaults to ``func.__name__``." +msgstr "The name of the event to listen for. Defaults to ``func.__name__``." + +msgid "The ``func`` parameter is not a coroutine function." +msgstr "The ``func`` parameter is not a coroutine function." + +msgid "Registers a :class:`~discord.ui.View` for persistent listening." +msgstr "Registers a :class:`~discord.ui.View` for persistent listening." + +msgid "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." +msgstr "This method should be used for when a view is comprised of components that last longer than the lifecycle of the program." + +msgid "The view to register for dispatching." +msgstr "The view to register for dispatching." + +msgid "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." +msgstr "The message ID that the view is attached to. This is currently used to refresh the view's state during message update events. If not given then message update events are not propagated for the view." + +msgid "A view was not passed." +msgstr "A view was not passed." + +msgid "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." +msgstr "The view is not persistent. A persistent view has no timeout and all their components have an explicitly provided ``custom_id``." + +msgid "The allowed mention configuration." +msgstr "The allowed mention configuration." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`~.Bot.add_application_command`." + +msgid "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into an :class:`.ApplicationCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`ApplicationCommand`]" +msgstr "Callable[..., :class:`ApplicationCommand`]" + +msgid "The client's application flags." +msgstr "The client's application flags." + +msgid "The client's application ID." +msgstr "The client's application ID." + +msgid "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." +msgstr "If this is not passed via ``__init__`` then this is retrieved through the gateway when an event contains the data. Usually after :func:`~discord.on_connect` is called." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Retrieves the bot's application information." +msgstr "Retrieves the bot's application information." + +msgid "The bot's application information." +msgstr "The bot's application information." + +msgid ":class:`.AppInfo`" +msgstr ":class:`.AppInfo`" + +msgid "Retrieving the information failed somehow." +msgstr "Retrieving the information failed somehow." + +msgid "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." +msgstr "A hook that is called before IDENTIFYing a session. This is useful if you wish to have more control over the synchronization of multiple IDENTIFYing clients." + +msgid "The default implementation sleeps for 5 seconds." +msgstr "The default implementation sleeps for 5 seconds." + +msgid "The shard ID that requested being IDENTIFY'd" +msgstr "The shard ID that requested being IDENTIFY'd" + +msgid "Whether this IDENTIFY is the first initial IDENTIFY." +msgstr "Whether this IDENTIFY is the first initial IDENTIFY." + +msgid "Read-only list of messages the connected client has cached." +msgstr "Read-only list of messages the connected client has cached." + +msgid "Changes the client's presence." +msgstr "Changes the client's presence." + +msgid "The activity being done. ``None`` if no currently active activity is done." +msgstr "The activity being done. ``None`` if no currently active activity is done." + +msgid "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." +msgstr "Indicates what status to change to. If ``None``, then :attr:`.Status.online` is used." + +msgid "If the ``activity`` parameter is not the proper type." +msgstr "If the ``activity`` parameter is not the proper type." + +msgid "Removed the ``afk`` keyword-only parameter." +msgstr "Removed the ``afk`` keyword-only parameter." + +msgid "Clears the internal state of the bot." +msgstr "Clears the internal state of the bot." + +msgid "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." +msgstr "After this, the bot can be considered \"re-opened\", i.e. :meth:`is_closed` and :meth:`is_ready` both return ``False`` along with the bot's internal cache cleared." + +msgid "Closes the connection to Discord." +msgstr "Closes the connection to Discord." + +msgid "A read-only mapping of cog name to cog." +msgstr "A read-only mapping of cog name to cog." + +msgid "A unique set of commands without aliases that are registered." +msgstr "A unique set of commands without aliases that are registered." + +msgid "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." +msgstr "Creates a WebSocket connection and lets the WebSocket listen to messages from Discord. This is a loop that runs the entire event system and miscellaneous aspects of the library. Control is not resumed until the WebSocket connection is terminated." + +msgid "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." +msgstr "If we should attempt reconnecting, either due to internet failure or a specific failure on Discord's part. Certain disconnects that lead to bad state will not be handled (such as invalid sharding payloads or bad tokens)." + +msgid "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." +msgstr "The gateway to connect to Discord is not found. Usually if this is thrown then there is a Discord API outage." + +msgid "The WebSocket connection has been terminated." +msgstr "The WebSocket connection has been terminated." + +msgid "Creates a :class:`.DMChannel` with this user." +msgstr "Creates a :class:`.DMChannel` with this user." + +msgid "This should be rarely called, as this is done transparently for most people." +msgstr "This should be rarely called, as this is done transparently for most people." + +msgid "The user to create a DM with." +msgstr "The user to create a DM with." + +msgid "The channel that was created." +msgstr "The channel that was created." + +msgid ":class:`.DMChannel`" +msgstr ":class:`.DMChannel`" + +msgid "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut method that creates a slash command group with no subcommands and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create." +msgstr "The name of the group to create." + +msgid "The description of the group to create." +msgstr "The description of the group to create." + +msgid "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." +msgstr "A list of the IDs of each guild this group should be added to, making it a guild command. This will be a global command if ``None`` is passed." + +msgid "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." +msgstr "Any additional keyword arguments to pass to :class:`.SlashCommandGroup`." + +msgid "The slash command group that was created." +msgstr "The slash command group that was created." + +msgid "Creates a :class:`.Guild`." +msgstr "Creates a :class:`.Guild`." + +msgid "Bot accounts in more than 10 guilds are not allowed to create guilds." +msgstr "Bot accounts in more than 10 guilds are not allowed to create guilds." + +msgid "The name of the guild." +msgstr "The name of the guild." + +msgid "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." +msgstr "The :term:`py:bytes-like object` representing the icon. See :meth:`.ClientUser.edit` for more details on what is expected." + +msgid "The code for a template to create the guild with. .. versionadded:: 1.4" +msgstr "The code for a template to create the guild with. .. versionadded:: 1.4" + +msgid "The code for a template to create the guild with." +msgstr "The code for a template to create the guild with." + +msgid "The guild created. This is not the same guild that is added to cache." +msgstr "The guild created. This is not the same guild that is added to cache." + +msgid ":class:`.Guild`" +msgstr ":class:`.Guild`" + +msgid "Guild creation failed." +msgstr "Guild creation failed." + +msgid "Invalid icon image format given. Must be PNG or JPG." +msgstr "Invalid icon image format given. Must be PNG or JPG." + +msgid "Revokes an :class:`.Invite`, URL, or ID to an invite." +msgstr "Revokes an :class:`.Invite`, URL, or ID to an invite." + +msgid "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." +msgstr "You must have the :attr:`~.Permissions.manage_channels` permission in the associated guild to do this." + +msgid "The invite to revoke." +msgstr "The invite to revoke." + +msgid "You do not have permissions to revoke invites." +msgstr "You do not have permissions to revoke invites." + +msgid "The invite is invalid or expired." +msgstr "The invite is invalid or expired." + +msgid "Revoking the invite failed." +msgstr "Revoking the invite failed." + +msgid "The emojis that the connected client has." +msgstr "The emojis that the connected client has." + +msgid "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." +msgstr "Returns an :class:`.AsyncIterator` that enables fetching the application's entitlements." + +msgid "Limit the fetched entitlements to entitlements owned by this user." +msgstr "Limit the fetched entitlements to entitlements owned by this user." + +msgid "Limit the fetched entitlements to entitlements that are for these SKUs." +msgstr "Limit the fetched entitlements to entitlements that are for these SKUs." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC-aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." +msgstr "The number of entitlements to retrieve. If ``None``, retrieves every entitlement, which may be slow. Defaults to ``100``." + +msgid "Limit the fetched entitlements to entitlements owned by this guild." +msgstr "Limit the fetched entitlements to entitlements owned by this guild." + +msgid "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." +msgstr "Whether to limit the fetched entitlements to those that have not ended. Defaults to ``False``." + +msgid "Yields" +msgstr "Yields" + +msgid ":class:`.Entitlement` -- The application's entitlements." +msgstr ":class:`.Entitlement` -- The application's entitlements." + +msgid "Retrieving the entitlements failed." +msgstr "Retrieving the entitlements failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.EntitlementIterator\\``" + +msgid "Examples" +msgstr "Examples" + +msgid "Usage ::" +msgstr "Usage ::" + +msgid "Flattening into a list ::" +msgstr "Flattening into a list ::" + +msgid "All parameters are optional." +msgstr "All parameters are optional." + +msgid "A read-only mapping of extension name to extension." +msgstr "A read-only mapping of extension name to extension." + +msgid "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." +msgstr "|coro| Retrieves a :class:`.PartialAppInfo` from an application ID." + +msgid "The application ID to retrieve information from." +msgstr "The application ID to retrieve information from." + +msgid "The application information." +msgstr "The application information." + +msgid ":class:`.PartialAppInfo`" +msgstr ":class:`.PartialAppInfo`" + +msgid "An application with this ID does not exist." +msgstr "An application with this ID does not exist." + +msgid "Retrieving the application failed." +msgstr "Retrieving the application failed." + +msgid "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." +msgstr "Retrieves a :class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, or :class:`.Thread` with the specified ID." + +msgid "This method is an API call. For general usage, consider :meth:`get_channel` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_channel` instead." + +msgid "The channel from the ID." +msgstr "The channel from the ID." + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.abc.PrivateChannel`, :class:`.Thread`]" + +msgid "An unknown channel type was received from Discord." +msgstr "An unknown channel type was received from Discord." + +msgid "Retrieving the channel failed." +msgstr "Retrieving the channel failed." + +msgid "Invalid Channel ID." +msgstr "Invalid Channel ID." + +msgid "You do not have permission to fetch this channel." +msgstr "You do not have permission to fetch this channel." + +msgid "Retrieves a :class:`.Guild` from an ID." +msgstr "Retrieves a :class:`.Guild` from an ID." + +msgid "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." +msgstr "Using this, you will **not** receive :attr:`.Guild.channels`, :attr:`.Guild.members`, :attr:`.Member.activity` and :attr:`.Member.voice` per :class:`.Member`." + +msgid "This method is an API call. For general usage, consider :meth:`get_guild` instead." +msgstr "This method is an API call. For general usage, consider :meth:`get_guild` instead." + +msgid "The guild's ID to fetch from." +msgstr "The guild's ID to fetch from." + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields. .. versionadded:: 2.0" + +msgid "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." +msgstr "Whether to include count information in the guild. This fills the :attr:`.Guild.approximate_member_count` and :attr:`.Guild.approximate_presence_count` fields." + +msgid "The guild from the ID." +msgstr "The guild from the ID." + +msgid "You do not have access to the guild." +msgstr "You do not have access to the guild." + +msgid "Getting the guild failed." +msgstr "Getting the guild failed." + +msgid "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." +msgstr "Retrieves an :class:`.AsyncIterator` that enables receiving your guilds." + +msgid "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." +msgstr "Using this, you will only receive :attr:`.Guild.owner`, :attr:`.Guild.icon`, :attr:`.Guild.id`, and :attr:`.Guild.name` per :class:`.Guild`." + +msgid "This method is an API call. For general usage, consider :attr:`guilds` instead." +msgstr "This method is an API call. For general usage, consider :attr:`guilds` instead." + +msgid "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." +msgstr "The number of guilds to retrieve. If ``None``, it retrieves every guild you have access to. Note, however, that this would make it a slow operation. Defaults to ``100``." + +msgid "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieves guilds before this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve guilds after this date or object. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid ":class:`.Guild` -- The guild with the guild data parsed." +msgstr ":class:`.Guild` -- The guild with the guild data parsed." + +msgid "Getting the guilds failed." +msgstr "Getting the guilds failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.GuildIterator\\``" + +msgid "Gets an :class:`.Invite` from a discord.gg URL or ID." +msgstr "Gets an :class:`.Invite` from a discord.gg URL or ID." + +msgid "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." +msgstr "If the invite is for a guild you have not joined, the guild and channel attributes of the returned :class:`.Invite` will be :class:`.PartialInviteGuild` and :class:`.PartialInviteChannel` respectively." + +msgid "The Discord invite ID or URL (must be a discord.gg URL)." +msgstr "The Discord invite ID or URL (must be a discord.gg URL)." + +msgid "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." +msgstr "Whether to include count information in the invite. This fills the :attr:`.Invite.approximate_member_count` and :attr:`.Invite.approximate_presence_count` fields." + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field. .. versionadded:: 2.0" + +msgid "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." +msgstr "Whether to include the expiration date of the invite. This fills the :attr:`.Invite.expires_at` field." + +msgid "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" +msgstr "The ID of the scheduled event to be associated with the event. See :meth:`Invite.set_scheduled_event` for more info on event invite linking. .. versionadded:: 2.0" + +msgid "The ID of the scheduled event to be associated with the event." +msgstr "The ID of the scheduled event to be associated with the event." + +msgid "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." +msgstr "See :meth:`Invite.set_scheduled_event` for more info on event invite linking." + +msgid "The invite from the URL/ID." +msgstr "The invite from the URL/ID." + +msgid ":class:`.Invite`" +msgstr ":class:`.Invite`" + +msgid "The invite has expired or is invalid." +msgstr "The invite has expired or is invalid." + +msgid "Getting the invite failed." +msgstr "Getting the invite failed." + +msgid "Retrieves all available premium sticker packs." +msgstr "Retrieves all available premium sticker packs." + +msgid "All available premium sticker packs." +msgstr "All available premium sticker packs." + +msgid "List[:class:`.StickerPack`]" +msgstr "List[:class:`.StickerPack`]" + +msgid "Retrieving the sticker packs failed." +msgstr "Retrieving the sticker packs failed." + +msgid "Fetches the bot's role connection metadata records." +msgstr "Fetches the bot's role connection metadata records." + +msgid "The bot's role connection metadata records." +msgstr "The bot's role connection metadata records." + +msgid "List[:class:`.ApplicationRoleConnectionMetadata`]" +msgstr "List[:class:`.ApplicationRoleConnectionMetadata`]" + +msgid "Fetches the bot's SKUs." +msgstr "Fetches the bot's SKUs." + +msgid "The bot's SKUs." +msgstr "The bot's SKUs." + +msgid "List[:class:`.SKU`]" +msgstr "List[:class:`.SKU`]" + +msgid "Gets a :class:`.StageInstance` for a stage channel id." +msgstr "Gets a :class:`.StageInstance` for a stage channel id." + +msgid "The stage channel ID." +msgstr "The stage channel ID." + +msgid "The stage instance from the stage channel ID." +msgstr "The stage instance from the stage channel ID." + +msgid ":class:`.StageInstance`" +msgstr ":class:`.StageInstance`" + +msgid "The stage instance or channel could not be found." +msgstr "The stage instance or channel could not be found." + +msgid "Getting the stage instance failed." +msgstr "Getting the stage instance failed." + +msgid "Retrieves a :class:`.Sticker` with the specified ID." +msgstr "Retrieves a :class:`.Sticker` with the specified ID." + +msgid "The sticker you requested." +msgstr "The sticker you requested." + +msgid "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" +msgstr "Union[:class:`.StandardSticker`, :class:`.GuildSticker`]" + +msgid "Retrieving the sticker failed." +msgstr "Retrieving the sticker failed." + +msgid "Invalid sticker ID." +msgstr "Invalid sticker ID." + +msgid "Gets a :class:`.Template` from a discord.new URL or code." +msgstr "Gets a :class:`.Template` from a discord.new URL or code." + +msgid "The Discord Template Code or URL (must be a discord.new URL)." +msgstr "The Discord Template Code or URL (must be a discord.new URL)." + +msgid "The template from the URL/code." +msgstr "The template from the URL/code." + +msgid ":class:`.Template`" +msgstr ":class:`.Template`" + +msgid "The template is invalid." +msgstr "The template is invalid." + +msgid "Getting the template failed." +msgstr "Getting the template failed." + +msgid "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." +msgstr "Retrieves a :class:`~discord.User` based on their ID. You do not have to share any guilds with the user to get this information, however many operations do require that you do." + +msgid "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." +msgstr "This method is an API call. If you have :attr:`discord.Intents.members` and member cache enabled, consider :meth:`get_user` instead." + +msgid "The user's ID to fetch from." +msgstr "The user's ID to fetch from." + +msgid "The user you requested." +msgstr "The user you requested." + +msgid ":class:`~discord.User`" +msgstr ":class:`~discord.User`" + +msgid "A user with this ID does not exist." +msgstr "A user with this ID does not exist." + +msgid "Fetching the user failed." +msgstr "Fetching the user failed." + +msgid "Retrieves a :class:`.Webhook` with the specified ID." +msgstr "Retrieves a :class:`.Webhook` with the specified ID." + +msgid "The webhook you requested." +msgstr "The webhook you requested." + +msgid ":class:`.Webhook`" +msgstr ":class:`.Webhook`" + +msgid "Retrieving the webhook failed." +msgstr "Retrieving the webhook failed." + +msgid "Invalid webhook ID." +msgstr "Invalid webhook ID." + +msgid "You do not have permission to fetch this webhook." +msgstr "You do not have permission to fetch this webhook." + +msgid "Gets a :class:`.Widget` from a guild ID." +msgstr "Gets a :class:`.Widget` from a guild ID." + +msgid "The guild must have the widget enabled to get this information." +msgstr "The guild must have the widget enabled to get this information." + +msgid "The ID of the guild." +msgstr "The ID of the guild." + +msgid "The guild's widget." +msgstr "The guild's widget." + +msgid ":class:`.Widget`" +msgstr ":class:`.Widget`" + +msgid "The widget for this guild is disabled." +msgstr "The widget for this guild is disabled." + +msgid "Retrieving the widget failed." +msgstr "Retrieving the widget failed." + +msgid "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." +msgstr "A generator that retrieves every :class:`.abc.GuildChannel` the client can 'access'." + +msgid "This is equivalent to: ::" +msgstr "This is equivalent to: ::" + +msgid "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." +msgstr "Just because you receive a :class:`.abc.GuildChannel` does not mean that you can communicate in said channel. :meth:`.abc.GuildChannel.permissions_for` should be used for that." + +msgid ":class:`.abc.GuildChannel` -- A channel the client can 'access'." +msgstr ":class:`.abc.GuildChannel` -- A channel the client can 'access'." + +msgid "Returns a generator with every :class:`.Member` the client can see." +msgstr "Returns a generator with every :class:`.Member` the client can see." + +msgid ":class:`.Member` -- A member the client can see." +msgstr ":class:`.Member` -- A member the client can see." + +msgid "Get an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Get an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The qualified name of the command to get." +msgstr "The qualified name of the command to get." + +msgid "The guild ids associated to the command to get." +msgstr "The guild ids associated to the command to get." + +msgid "The type of the command to get. Defaults to :class:`.ApplicationCommand`." +msgstr "The type of the command to get. Defaults to :class:`.ApplicationCommand`." + +msgid "The command that was requested. If not found, returns ``None``." +msgstr "The command that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`.ApplicationCommand`]" +msgstr "Optional[:class:`.ApplicationCommand`]" + +msgid "Returns the invocation context from the interaction." +msgstr "Returns the invocation context from the interaction." + +msgid "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_application_commands` to allow users more fine-grained control over the processing." + +msgid "The interaction to get the invocation context from." +msgstr "The interaction to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.ApplicationContext`. Should a custom class be provided, it must be similar enough to :class:`.ApplicationContext`\\'s interface." + +msgid "The invocation context. The type of this can change via the ``cls`` parameter." +msgstr "The invocation context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.ApplicationContext`" +msgstr ":class:`.ApplicationContext`" + +msgid "Returns the autocomplete context from the interaction." +msgstr "Returns the autocomplete context from the interaction." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.AutocompleteContext`. Should a custom class be provided, it must be similar enough to :class:`.AutocompleteContext`\\'s interface." + +msgid "The autocomplete context. The type of this can change via the ``cls`` parameter." +msgstr "The autocomplete context. The type of this can change via the ``cls`` parameter." + +msgid ":class:`.AutocompleteContext`" +msgstr ":class:`.AutocompleteContext`" + +msgid "Returns a channel or thread with the given ID." +msgstr "Returns a channel or thread with the given ID." + +msgid "The ID to search for." +msgstr "The ID to search for." + +msgid "The returned channel or ``None`` if not found." +msgstr "The returned channel or ``None`` if not found." + +msgid "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" +msgstr "Optional[Union[:class:`.abc.GuildChannel`, :class:`.Thread`, :class:`.abc.PrivateChannel`]]" + +msgid "Gets the cog instance requested." +msgstr "Gets the cog instance requested." + +msgid "If the cog is not found, ``None`` is returned instead." +msgstr "If the cog is not found, ``None`` is returned instead." + +msgid "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." +msgstr "The name of the cog you are requesting. This is equivalent to the name passed via keyword argument in class creation or the class name if unspecified." + +msgid "The cog that was requested. If not found, returns ``None``." +msgstr "The cog that was requested. If not found, returns ``None``." + +msgid "Optional[:class:`Cog`]" +msgstr "Optional[:class:`Cog`]" + +msgid "Get a :class:`.Command` from the internal list of commands." +msgstr "Get a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to get aliases." +msgstr "This could also be used as a way to get aliases." + +msgid "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." +msgstr "The name could be fully qualified (e.g. ``'foo bar'``) will get the subcommand ``bar`` of the group command ``foo``. If a subcommand is not found then ``None`` is returned just as usual." + +msgid "The name of the command to get." +msgstr "The name of the command to get." + +msgid "Optional[:class:`Command`]" +msgstr "Optional[:class:`Command`]" + +msgid "Returns the invocation context from the message." +msgstr "Returns the invocation context from the message." + +msgid "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." +msgstr "This is a more low-level counter-part for :meth:`.process_commands` to allow users more fine-grained control over the processing." + +msgid "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." +msgstr "The returned context is not guaranteed to be a valid invocation context, :attr:`.Context.valid` must be checked to make sure it is. If the context is not valid then it is not a valid candidate to be invoked under :meth:`~.Bot.invoke`." + +msgid "The message to get the invocation context from." +msgstr "The message to get the invocation context from." + +msgid "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." +msgstr "The factory class that will be used to create the context. By default, this is :class:`.Context`. Should a custom class be provided, it must be similar enough to :class:`.Context`\\'s interface." + +msgid ":class:`.Context`" +msgstr ":class:`.Context`" + +msgid "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." +msgstr "Gets the list of commands that are desynced from discord. If ``guild_id`` is specified, it will only return guild commands that are desynced from said guild, else it will return global commands." + +msgid "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." +msgstr "This function is meant to be used internally, and should only be used if you want to override the default command registration behavior." + +msgid "The guild id to get the desynced commands for, else global commands if unspecified." +msgstr "The guild id to get the desynced commands for, else global commands if unspecified." + +msgid "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." +msgstr "If you already fetched the commands, you can pass them here to be used. Not recommended for typical usage." + +msgid "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." +msgstr "A list of the desynced commands. Each will come with at least the ``cmd`` and ``action`` keys, which respectively contain the command and the action to perform. Other keys may also be present depending on the action, including ``id``." + +msgid "List[Dict[:class:`str`, Any]]" +msgstr "List[Dict[:class:`str`, Any]]" + +msgid "Returns an emoji with the given ID." +msgstr "Returns an emoji with the given ID." + +msgid "The custom emoji or ``None`` if not found." +msgstr "The custom emoji or ``None`` if not found." + +msgid "Optional[:class:`.Emoji`]" +msgstr "Optional[:class:`.Emoji`]" + +msgid "Returns a guild with the given ID." +msgstr "Returns a guild with the given ID." + +msgid "The guild or ``None`` if not found." +msgstr "The guild or ``None`` if not found." + +msgid "Optional[:class:`.Guild`]" +msgstr "Optional[:class:`.Guild`]" + +msgid "Returns a message the given ID." +msgstr "Returns a message the given ID." + +msgid "This is useful if you have a message_id but don't want to do an API call to access the message." +msgstr "This is useful if you have a message_id but don't want to do an API call to access the message." + +msgid "The returned message or ``None`` if not found." +msgstr "The returned message or ``None`` if not found." + +msgid "Optional[:class:`.Message`]" +msgstr "Optional[:class:`.Message`]" + +msgid "Looks up a user in the user cache or fetches if not found." +msgstr "Looks up a user in the user cache or fetches if not found." + +msgid "The user or ``None`` if not found." +msgstr "The user or ``None`` if not found." + +msgid "Optional[:class:`~discord.User`]" +msgstr "Optional[:class:`~discord.User`]" + +msgid "Returns a partial messageable with the given channel ID." +msgstr "Returns a partial messageable with the given channel ID." + +msgid "This is useful if you have a channel_id but don't want to do an API call to send messages to it." +msgstr "This is useful if you have a channel_id but don't want to do an API call to send messages to it." + +msgid "The channel ID to create a partial messageable for." +msgstr "The channel ID to create a partial messageable for." + +msgid "The underlying channel type for the partial messageable." +msgstr "The underlying channel type for the partial messageable." + +msgid "The partial messageable" +msgstr "The partial messageable" + +msgid ":class:`.PartialMessageable`" +msgstr ":class:`.PartialMessageable`" + +msgid "Returns a poll attached to the given message ID." +msgstr "Returns a poll attached to the given message ID." + +msgid "The message ID of the poll to search for." +msgstr "The message ID of the poll to search for." + +msgid "The poll or ``None`` if not found." +msgstr "The poll or ``None`` if not found." + +msgid "Optional[:class:`.Poll`]" +msgstr "Optional[:class:`.Poll`]" + +msgid "Retrieves the prefix the bot is listening to with the message as a context." +msgstr "Retrieves the prefix the bot is listening to with the message as a context." + +msgid "The message context to get the prefix of." +msgstr "The message context to get the prefix of." + +msgid "A list of prefixes or a single prefix that the bot is listening for." +msgstr "A list of prefixes or a single prefix that the bot is listening for." + +msgid "Union[List[:class:`str`], :class:`str`]" +msgstr "Union[List[:class:`str`], :class:`str`]" + +msgid "Returns a stage instance with the given stage channel ID." +msgstr "Returns a stage instance with the given stage channel ID." + +msgid "The stage instance or ``None`` if not found." +msgstr "The stage instance or ``None`` if not found." + +msgid "Optional[:class:`.StageInstance`]" +msgstr "Optional[:class:`.StageInstance`]" + +msgid "Returns a guild sticker with the given ID." +msgstr "Returns a guild sticker with the given ID." + +msgid "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." +msgstr "To retrieve standard stickers, use :meth:`.fetch_sticker`. or :meth:`.fetch_premium_sticker_packs`." + +msgid "The sticker or ``None`` if not found." +msgstr "The sticker or ``None`` if not found." + +msgid "Optional[:class:`.GuildSticker`]" +msgstr "Optional[:class:`.GuildSticker`]" + +msgid "Returns a user with the given ID." +msgstr "Returns a user with the given ID." + +msgid "The guilds that the connected client is a member of." +msgstr "The guilds that the connected client is a member of." + +msgid "The intents configured for this connection." +msgstr "The intents configured for this connection." + +msgid "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "The invocation context to invoke." +msgstr "The invocation context to invoke." + +msgid "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." +msgstr "Invokes the application command given under the invocation context and handles all the internal event dispatch mechanisms." + +msgid "Indicates if the WebSocket connection is closed." +msgstr "Indicates if the WebSocket connection is closed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." +msgstr "Checks if a :class:`~discord.User` or :class:`~discord.Member` is the owner of this bot." + +msgid "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." +msgstr "If an :attr:`owner_id` is not set, it is fetched automatically through the use of :meth:`~.Bot.application_info`." + +msgid "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." +msgstr "The function also checks if the application is team-owned if :attr:`owner_ids` is not set." + +msgid "The user to check for." +msgstr "The user to check for." + +msgid "Whether the user is the owner." +msgstr "Whether the user is the owner." + +msgid "Specifies if the client's internal cache is ready for use." +msgstr "Specifies if the client's internal cache is ready for use." + +msgid "Whether the WebSocket is currently rate limited." +msgstr "Whether the WebSocket is currently rate limited." + +msgid "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "This can be useful to know when deciding whether you should query members using HTTP or via the gateway. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." +msgstr "Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds." + +msgid "This could be referred to as the Discord WebSocket protocol latency." +msgstr "This could be referred to as the Discord WebSocket protocol latency." + +msgid "Loads an extension." +msgstr "Loads an extension." + +msgid "An extension is a python module that contains commands, cogs, or listeners." +msgstr "An extension is a python module that contains commands, cogs, or listeners." + +msgid "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." +msgstr "An extension must have a global function, ``setup`` defined as the entry point on what to do when the extension is loaded. This entry point must have a single argument, the ``bot``." + +msgid "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." +msgstr "The extension passed can either be the direct name of a file within the current working directory or a folder that contains multiple extensions." + +msgid "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder name to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when loading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." +msgstr "If subdirectories under the given head directory should be recursively loaded. Defaults to ``False``." + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``. .. versionadded:: 2.0" + +msgid "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." +msgstr "If exceptions should be stored or raised. If set to ``True``, all exceptions encountered will be stored in a returned dictionary as a load status. If set to ``False``, if any exceptions are encountered they will be raised and the bot will be closed. If no exceptions are encountered, a list of loaded extension names will be returned. Defaults to ``False``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing a list of loaded extensions or nothing due to an encountered exception." + +msgid "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" +msgstr "Optional[Union[Dict[:class:`str`, Union[:exc:`errors.ExtensionError`, :class:`bool`]], List[:class:`str`]]]" + +msgid "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "The extension is already loaded." +msgstr "The extension is already loaded." + +msgid "The extension does not have a setup function." +msgstr "The extension does not have a setup function." + +msgid "The extension or its setup function had an execution error." +msgstr "The extension or its setup function had an execution error." + +msgid "Loads multiple extensions at once." +msgstr "Loads multiple extensions at once." + +msgid "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." +msgstr "This method simplifies the process of loading multiple extensions by handling the looping of ``load_extension``." + +msgid "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension or folder names to load. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." +msgstr "If the store parameter is set to ``True``, a dictionary will be returned that contains keys to represent the loaded extension names. The values bound to each key can either be an exception that occurred when loading that extension or a ``True`` boolean representing a successful load. If the store parameter is set to ``False``, either a list containing names of loaded extensions or nothing due to an encountered exception." + +msgid "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "A given extension could not be imported. This is also raised if the name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "A given extension is already loaded." +msgstr "A given extension is already loaded." + +msgid "A given extension does not have a setup function." +msgstr "A given extension does not have a setup function." + +msgid "A given extension or its setup function had an execution error." +msgstr "A given extension or its setup function had an execution error." + +msgid "Logs in the client with the specified credentials." +msgstr "Logs in the client with the specified credentials." + +msgid "The authentication token. Do not prefix this token with anything as the library will do it for you." +msgstr "The authentication token. Do not prefix this token with anything as the library will do it for you." + +msgid "The token was in invalid type." +msgstr "The token was in invalid type." + +msgid "The wrong credentials are passed." +msgstr "The wrong credentials are passed." + +msgid "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." +msgstr "An unknown HTTP related error occurred, usually when it isn't 200 or the known incorrect credentials passing status code." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.MessageCommand`." + +msgid "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.MessageCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`MessageCommand`]" +msgstr "Callable[..., :class:`MessageCommand`]" + +msgid "The default command error handler provided by the bot." +msgstr "The default command error handler provided by the bot." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "This only fires if you do not specify any listeners for command error." +msgstr "This only fires if you do not specify any listeners for command error." + +msgid "The default error handler provided by the client." +msgstr "The default error handler provided by the client." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation. Check :func:`~discord.on_error` for more details." + +msgid "A sequence of persistent views added to the client." +msgstr "A sequence of persistent views added to the client." + +msgid "The polls that the connected client has." +msgstr "The polls that the connected client has." + +msgid "The private channels that the connected client is participating on." +msgstr "The private channels that the connected client is participating on." + +msgid "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." +msgstr "This returns only up to 128 most recent private channels due to an internal working on how Discord deals with private channels." + +msgid "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." +msgstr "This function processes the commands that have been registered to the bot and other groups. Without this coroutine, none of the commands will be triggered." + +msgid "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_interaction` event. If you choose to override the :func:`.on_interaction` event, then you should invoke this coroutine as well." + +msgid "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." +msgstr "This function finds a registered command matching the interaction id from application commands and invokes it. If no matching command was found, it replies to the interaction with a default message." + +msgid "The interaction to process" +msgstr "The interaction to process" + +msgid "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." +msgstr "Whether to automatically sync and unregister the command if it is not found in the internal cache. This will invoke the :meth:`~.Bot.sync_commands` method on the context of the command, either globally or per-guild, based on the type of the command, respectively. Defaults to :attr:`.Bot.auto_sync_commands`." + +msgid "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." +msgstr "By default, this coroutine is called inside the :func:`.on_message` event. If you choose to override the :func:`.on_message` event, then you should invoke this coroutine as well." + +msgid "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." +msgstr "This is built using other low level tools, and is equivalent to a call to :meth:`~.Bot.get_context` followed by a call to :meth:`~.Bot.invoke`." + +msgid "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." +msgstr "This also checks if the message's author is a bot and doesn't call :meth:`~.Bot.get_context` or :meth:`~.Bot.invoke` if so." + +msgid "The message to process commands for." +msgstr "The message to process commands for." + +msgid "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." +msgstr "Registers a command. If the command has ``guild_ids`` set, or if the ``guild_ids`` parameter is passed, the command will be registered as a guild command for those guilds." + +msgid "The command to register." +msgstr "The command to register." + +msgid "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." +msgstr "Whether to force the command to be registered. If this is set to False, the command will only be registered if it seems to already be registered and up to date with our internal cache. Defaults to True." + +msgid "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the command for. If this is not set, the command's :attr:`ApplicationCommand.guild_ids` attribute will be used." + +msgid "The command that was registered" +msgstr "The command that was registered" + +msgid ":class:`~.ApplicationCommand`" +msgstr ":class:`~.ApplicationCommand`" + +msgid "Register a list of commands." +msgstr "Register a list of commands." + +msgid "A list of commands to register. If this is not set (``None``), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (``None``), then all commands will be registered." + +msgid "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." +msgstr "If this is set, the commands will be registered as a guild command for the respective guild. If it is not set, the commands will be registered according to their :attr:`ApplicationCommand.guild_ids` attribute." + +msgid "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." +msgstr "The method to use when registering the commands. If this is set to \"individual\", then each command will be registered individually. If this is set to \"bulk\", then all commands will be registered in bulk. If this is set to \"auto\", then the method will be determined automatically. Defaults to \"bulk\"." + +msgid "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." +msgstr "Registers the commands regardless of the state of the command on Discord. This uses one less API call, but can result in hitting rate limits more often. Defaults to False." + +msgid "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." +msgstr "Whether to delete existing commands that are not in the list of commands to register. Defaults to True." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.types.interactions.ApplicationCommand\\`\\]`" + +msgid "Atomically reloads an extension." +msgstr "Atomically reloads an extension." + +msgid "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." +msgstr "This replaces the extension with the same extension, only refreshed. This is equivalent to a :meth:`unload_extension` followed by a :meth:`load_extension` except done in an atomic way. That is, if an operation fails mid-reload then the bot will roll back to the prior working state." + +msgid "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to reload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when reloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The extension was not loaded." +msgstr "The extension was not loaded." + +msgid "The extension setup function had an execution error." +msgstr "The extension setup function had an execution error." + +msgid "Remove an :class:`.ApplicationCommand` from the internal list of commands." +msgstr "Remove an :class:`.ApplicationCommand` from the internal list of commands." + +msgid "The command to remove." +msgstr "The command to remove." + +msgid "The command that was removed. If the command has not been added, ``None`` is returned instead." +msgstr "The command that was removed. If the command has not been added, ``None`` is returned instead." + +msgid "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." +msgstr "Removes a global check from the bot. This function is idempotent and will not raise an exception if the function is not in the global checks." + +msgid "The function to remove from the global checks." +msgstr "The function to remove from the global checks." + +msgid "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." +msgstr "If the function was added with ``call_once=True`` in the :meth:`.Bot.add_check` call or using :meth:`.check_once`." + +msgid "Removes a cog from the bot and returns it." +msgstr "Removes a cog from the bot and returns it." + +msgid "All registered commands and event listeners that the cog has registered will be removed as well." +msgstr "All registered commands and event listeners that the cog has registered will be removed as well." + +msgid "If no cog is found then this method has no effect." +msgstr "If no cog is found then this method has no effect." + +msgid "The name of the cog to remove." +msgstr "The name of the cog to remove." + +msgid "The cog that was removed. ``None`` if not found." +msgstr "The cog that was removed. ``None`` if not found." + +msgid "Optional[:class:`.Cog`]" +msgstr "Optional[:class:`.Cog`]" + +msgid "Remove a :class:`.Command` from the internal list of commands." +msgstr "Remove a :class:`.Command` from the internal list of commands." + +msgid "This could also be used as a way to remove aliases." +msgstr "This could also be used as a way to remove aliases." + +msgid "The name of the command to remove." +msgstr "The name of the command to remove." + +msgid "The command that was removed. If the name is not valid then ``None`` is returned instead." +msgstr "The command that was removed. If the name is not valid then ``None`` is returned instead." + +msgid "Optional[:class:`.Command`]" +msgstr "Optional[:class:`.Command`]" + +msgid "Removes a listener from the pool of listeners." +msgstr "Removes a listener from the pool of listeners." + +msgid "The function that was used as a listener to remove." +msgstr "The function that was used as a listener to remove." + +msgid "The name of the event we want to remove. Defaults to ``func.__name__``." +msgstr "The name of the event we want to remove. Defaults to ``func.__name__``." + +msgid "A blocking call that abstracts away the event loop initialisation from you." +msgstr "A blocking call that abstracts away the event loop initialisation from you." + +msgid "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." +msgstr "If you want more control over the event loop then this function should not be used. Use :meth:`start` coroutine or :meth:`connect` + :meth:`login`." + +msgid "Roughly Equivalent to: ::" +msgstr "Roughly Equivalent to: ::" + +msgid "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." +msgstr "This function must be the last function to call due to the fact that it is blocking. That means that registration of events or anything being called after this function call will not execute until it returns." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.SlashCommand`." + +msgid "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.SlashCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`SlashCommand`]" +msgstr "Callable[..., :class:`SlashCommand`]" + +msgid "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." +msgstr "A shortcut decorator that initializes the provided subclass of :class:`.SlashCommandGroup` and adds it to the internal command list via :meth:`add_application_command`." + +msgid "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." +msgstr "The name of the group to create. This will resolve to the name of the decorated class if ``None`` is passed." + +msgid "A shorthand coroutine for :meth:`login` + :meth:`connect`." +msgstr "A shorthand coroutine for :meth:`login` + :meth:`connect`." + +msgid "An unexpected keyword argument was received." +msgstr "An unexpected keyword argument was received." + +msgid "The status being used upon logging on to Discord." +msgstr "The status being used upon logging on to Discord." + +msgid "The stickers that the connected client has." +msgstr "The stickers that the connected client has." + +msgid "The URL that leads to the application's store page for monetization." +msgstr "The URL that leads to the application's store page for monetization." + +msgid ":class:`str`" +msgstr ":class:`str`" + +msgid "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." +msgstr "Registers all commands that have been added through :meth:`.add_application_command`. This method cleans up all commands over the API and should sync them with the internal cache of commands. It attempts to register the commands in the most efficient way possible, unless ``force`` is set to ``True``, in which case it will always register all commands." + +msgid "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" +msgstr "By default, this coroutine is called inside the :func:`.on_connect` event. If you choose to override the :func:`.on_connect` event, then you should invoke this coroutine as well such as the following:" + +msgid "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." +msgstr "If you remove all guild commands from a particular guild, the library may not be able to detect and update the commands accordingly, as it would have to individually check for each guild. To force the library to unregister a guild's commands, call this function with ``commands=[]`` and ``guild_ids=[guild_id]``." + +msgid "A list of commands to register. If this is not set (None), then all commands will be registered." +msgstr "A list of commands to register. If this is not set (None), then all commands will be registered." + +msgid "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." +msgstr "A list of guild ids to register the commands for. If this is not set, the commands' :attr:`~.ApplicationCommand.guild_ids` attribute will be used." + +msgid "Whether to register guild commands. Defaults to True." +msgstr "Whether to register guild commands. Defaults to True." + +msgid "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." +msgstr "A list of guilds ids to check for commands to unregister, since the bot would otherwise have to check all guilds. Unlike ``guild_ids``, this does not alter the commands' :attr:`~.ApplicationCommand.guild_ids` attribute, instead it adds the guild ids to a list of guilds to sync commands for. If ``register_guild_commands`` is set to False, then this parameter is ignored." + +msgid "Unloads an extension." +msgstr "Unloads an extension." + +msgid "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." +msgstr "When the extension is unloaded, all commands, listeners, and cogs are removed from the bot and the module is un-imported." + +msgid "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." +msgstr "The extension can provide an optional global function, ``teardown``, to do miscellaneous clean-up if necessary. This function takes a single parameter, the ``bot``, similar to ``setup`` from :meth:`~.Bot.load_extension`." + +msgid "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." +msgstr "The extension name to unload. It must be dot separated like regular Python imports if accessing a submodule. e.g. ``foo.test`` if you want to import ``foo/test.py``." + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``. .. versionadded:: 1.7" + +msgid "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." +msgstr "The package name to resolve relative imports with. This is required when unloading an extension using a relative path, e.g ``.foo.test``. Defaults to ``None``." + +msgid "The name of the extension could not be resolved using the provided ``package`` parameter." +msgstr "The name of the extension could not be resolved using the provided ``package`` parameter." + +msgid "Updates the bot's role connection metadata records." +msgstr "Updates the bot's role connection metadata records." + +msgid "The new metadata records to send to Discord." +msgstr "The new metadata records to send to Discord." + +msgid "The updated role connection metadata records." +msgstr "The updated role connection metadata records." + +msgid "Represents the connected client. ``None`` if not logged in." +msgstr "Represents the connected client. ``None`` if not logged in." + +msgid "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." +msgstr "A shortcut decorator that invokes :func:`command` and adds it to the internal command list via :meth:`add_application_command`. This shortcut is made specifically for :class:`.UserCommand`." + +msgid "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." +msgstr "A decorator that converts the provided method into a :class:`.UserCommand`, adds it to the bot, then returns it." + +msgid "Callable[..., :class:`UserCommand`]" +msgstr "Callable[..., :class:`UserCommand`]" + +msgid "Returns a list of all the users the bot can see." +msgstr "Returns a list of all the users the bot can see." + +msgid "Represents a list of voice connections." +msgstr "Represents a list of voice connections." + +msgid "These are usually :class:`.VoiceClient` instances." +msgstr "These are usually :class:`.VoiceClient` instances." + +msgid "Waits for a WebSocket event to be dispatched." +msgstr "Waits for a WebSocket event to be dispatched." + +msgid "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." +msgstr "This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way." + +msgid "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." +msgstr "The ``timeout`` parameter is passed onto :func:`asyncio.wait_for`. By default, it does not timeout. Note that this does propagate the :exc:`asyncio.TimeoutError` for you in case of timeout and is provided for ease of use." + +msgid "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." +msgstr "In case the event returns multiple arguments, a :class:`tuple` containing those arguments is returned instead. Please check the :ref:`documentation ` for a list of events and their parameters." + +msgid "This function returns the **first event that meets the requirements**." +msgstr "This function returns the **first event that meets the requirements**." + +msgid "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." +msgstr "The event name, similar to the :ref:`event reference `, but without the ``on_`` prefix, to wait for." + +msgid "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." +msgstr "A predicate to check what to wait for. The arguments must meet the parameters of the event being waited for." + +msgid "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." +msgstr "The number of seconds to wait before timing out and raising :exc:`asyncio.TimeoutError`." + +msgid "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." +msgstr "Returns no arguments, a single argument, or a :class:`tuple` of multiple arguments that mirrors the parameters passed in the :ref:`event reference `." + +msgid "Raised if a timeout is provided and reached." +msgstr "Raised if a timeout is provided and reached." + +msgid "Waiting for a user reply: ::" +msgstr "Waiting for a user reply: ::" + +msgid "Waiting for a thumbs up reaction from the message author: ::" +msgstr "Waiting for a thumbs up reaction from the message author: ::" + +msgid "Waits until the client's internal cache is all ready." +msgstr "Waits until the client's internal cache is all ready." + +msgid "An iterator that recursively walks through all application commands and subcommands." +msgstr "An iterator that recursively walks through all application commands and subcommands." + +msgid ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." +msgstr ":class:`.ApplicationCommand` -- An application command from the internal list of application commands." + +msgid "An iterator that recursively walks through all commands and subcommands." +msgstr "An iterator that recursively walks through all commands and subcommands." + +msgid "Duplicates due to aliases are no longer returned" +msgstr "Duplicates due to aliases are no longer returned" + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the internal list of commands." + +msgid "AutoShardedBot" +msgstr "AutoShardedBot" + +msgid "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." +msgstr "This is similar to :class:`.Bot` except that it is inherited from :class:`discord.AutoShardedBot` instead." + +msgid "Prefix Helpers" +msgstr "Prefix Helpers" + +msgid "A callable that implements a command prefix equivalent to being mentioned." +msgstr "A callable that implements a command prefix equivalent to being mentioned." + +msgid "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." +msgstr "These are meant to be passed into the :attr:`.Bot.command_prefix` attribute." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]`" + +msgid "A callable that implements when mentioned or other prefixes provided." +msgstr "A callable that implements when mentioned or other prefixes provided." + +msgid ":func:`.when_mentioned`" +msgstr ":func:`.when_mentioned`" + +msgid "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" +msgstr "This callable returns another callable, so if this is done inside a custom callable, you must call the returned callable, for example:" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.bot.Bot\\` \\| \\:py\\:class\\:\\`\\~discord.ext.commands.bot.AutoShardedBot\\`\\, \\:py\\:class\\:\\`\\~discord.message.Message\\`\\]\\, \\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\]\\]`" + +msgid "Event Reference" +msgstr "Event Reference" + +msgid "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." +msgstr "These events function similar to :ref:`the regular events `, except they are custom to the command extension module." + +msgid "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." +msgstr "An error handler that is called when an error is raised inside a command either through user input error, check failure, or an error in your own code." + +msgid "A default one is provided (:meth:`.Bot.on_command_error`)." +msgstr "A default one is provided (:meth:`.Bot.on_command_error`)." + +msgid "The invocation context." +msgstr "The invocation context." + +msgid "The error that was raised." +msgstr "The error that was raised." + +msgid "An event that is called when a command is found and is about to be invoked." +msgstr "An event that is called when a command is found and is about to be invoked." + +msgid "This event is called regardless of whether the command itself succeeds via error or completes." +msgstr "This event is called regardless of whether the command itself succeeds via error or completes." + +msgid "An event that is called when a command has completed its invocation." +msgstr "An event that is called when a command has completed its invocation." + +msgid "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." +msgstr "This event is called only if the command succeeded, i.e. all checks have passed and the user input it correctly." + +msgid "Commands" +msgstr "Commands" + +msgid "Decorators" +msgstr "Decorators" + +msgid "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Command` or if called with :func:`.group`, :class:`.Group`." + +msgid "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." +msgstr "By default the ``help`` attribute is received automatically from the docstring of the function and is cleaned up with the use of ``inspect.cleandoc``. If the docstring is ``bytes``, then it is decoded into :class:`str` using utf-8 encoding." + +msgid "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." +msgstr "All checks added using the :func:`.check` & co. decorators are added into the function. There is no way to supply your own checks through this decorator." + +msgid "The name to create the command with. By default, this uses the function name unchanged." +msgstr "The name to create the command with. By default, this uses the function name unchanged." + +msgid "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." +msgstr "The class to construct with. By default, this is :class:`.Command`. You usually do not change this." + +msgid "Keyword arguments to pass into the construction of the class denoted by ``cls``." +msgstr "Keyword arguments to pass into the construction of the class denoted by ``cls``." + +msgid "If the function is not a coroutine or is already a command." +msgstr "If the function is not a coroutine or is already a command." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Command\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CommandT\\`\\`\\, bound\\= Command\\)\\]\\]`" + +msgid "A decorator that transforms a function into a :class:`.Group`." +msgstr "A decorator that transforms a function into a :class:`.Group`." + +msgid "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." +msgstr "This is similar to the :func:`.command` decorator but the ``cls`` parameter is set to :class:`Group` by default." + +msgid "The ``cls`` parameter can now be passed." +msgstr "The ``cls`` parameter can now be passed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.Concatenate\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ContextT\\`\\`\\, bound\\= Context\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\]\\]\\, \\:py\\:class\\:\\`\\~typing.Coroutine\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\]\\]\\]\\, \\:py\\:data\\:\\`\\~typing.Union\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.commands.core.Group\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`CogT\\`\\`\\, bound\\= Cog\\)\\, \\:py\\:class\\:\\`\\~typing.ParamSpec\\`\\\\ \\\\\\(\\`\\`P\\`\\`\\, bound\\= \\:py\\:obj\\:\\`None\\`\\)\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`GroupT\\`\\`\\, bound\\= Group\\)\\]\\]`" + +msgid "Command" +msgstr "Command" + +msgid "A class that implements the protocol for a bot text command." +msgstr "A class that implements the protocol for a bot text command." + +msgid "These are not created manually, instead they are created via the decorator or functional interface." +msgstr "These are not created manually, instead they are created via the decorator or functional interface." + +msgid "The name of the command." +msgstr "The name of the command." + +msgid "The coroutine that is executed when the command is called." +msgstr "The coroutine that is executed when the command is called." + +msgid ":ref:`coroutine `" +msgstr ":ref:`coroutine `" + +msgid "The long help text for the command." +msgstr "The long help text for the command." + +msgid "Optional[:class:`str`]" +msgstr "Optional[:class:`str`]" + +msgid "The short help text for the command." +msgstr "The short help text for the command." + +msgid "A replacement for arguments in the default help text." +msgstr "A replacement for arguments in the default help text." + +msgid "The list of aliases the command can be invoked under." +msgstr "The list of aliases the command can be invoked under." + +msgid "Union[List[:class:`str`], Tuple[:class:`str`]]" +msgstr "Union[List[:class:`str`], Tuple[:class:`str`]]" + +msgid "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." +msgstr "A boolean that indicates if the command is currently enabled. If the command is invoked while it is disabled, then :exc:`.DisabledCommand` is raised to the :func:`.on_command_error` event. Defaults to ``True``." + +msgid "The parent group that this command belongs to. ``None`` if there isn't one." +msgstr "The parent group that this command belongs to. ``None`` if there isn't one." + +msgid "Optional[:class:`Group`]" +msgstr "Optional[:class:`Group`]" + +msgid "The cog that this command belongs to. ``None`` if there isn't one." +msgstr "The cog that this command belongs to. ``None`` if there isn't one." + +msgid "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." +msgstr "A list of predicates that verifies if the command could be executed with the given :class:`.Context` as the sole parameter. If an exception is necessary to be thrown to signal failure, then one inherited from :exc:`.CommandError` should be used. Note that if the checks fail then :exc:`.CheckFailure` exception is raised to the :func:`.on_command_error` event." + +msgid "List[Callable[[:class:`.Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`.Context`], :class:`bool`]]" + +msgid "The message prefixed into the default help command." +msgstr "The message prefixed into the default help command." + +msgid "If ``True``\\, the default help command does not show this in the help output." +msgstr "If ``True``\\, the default help command does not show this in the help output." + +msgid "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." +msgstr "If ``False`` and a keyword-only argument is provided then the keyword only argument is stripped and handled as if it was a regular argument that handles :exc:`.MissingRequiredArgument` and default values in a regular matter rather than passing the rest completely raw. If ``True`` then the keyword-only argument will pass in the rest of the arguments in a completely raw matter. Defaults to ``False``." + +msgid "The subcommand that was invoked, if any." +msgstr "The subcommand that was invoked, if any." + +msgid "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." +msgstr "If ``True`` and a variadic positional argument is specified, requires the user to specify at least one argument. Defaults to ``False``." + +msgid "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." +msgstr "If ``True``\\, ignores extraneous strings passed to a command if all its requirements are met (e.g. ``?foo a b c`` when only expecting ``a`` and ``b``). Otherwise :func:`.on_command_error` and local error handlers are called with :exc:`.TooManyArguments`. Defaults to ``True``." + +msgid "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." +msgstr "If ``True``\\, cooldown processing is done after argument parsing, which calls converters. If ``False`` then cooldown processing is done first and then the converters are called second. Defaults to ``False``." + +msgid "A dict of user provided extras to attach to the Command." +msgstr "A dict of user provided extras to attach to the Command." + +msgid "This object may be copied by the library." +msgstr "This object may be copied by the library." + +msgid ":class:`dict`" +msgstr ":class:`dict`" + +msgid "cooldown: Optional[:class:`Cooldown`]" +msgstr "cooldown: Optional[:class:`Cooldown`]" + +msgid "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." +msgstr "The cooldown applied when the command is invoked. ``None`` if the command doesn't have a cooldown." + +msgid "A decorator that registers a coroutine as a post-invoke hook." +msgstr "A decorator that registers a coroutine as a post-invoke hook." + +msgid "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." +msgstr "A post-invoke hook is called directly after the command is called. This makes it a useful function to clean-up database connections or any type of clean up required." + +msgid "This post-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This post-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.after_invoke` for more info." +msgstr "See :meth:`.Bot.after_invoke` for more info." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`HookT\\`\\`\\, bound\\= Hook\\)`" + +msgid "A decorator that registers a coroutine as a pre-invoke hook." +msgstr "A decorator that registers a coroutine as a pre-invoke hook." + +msgid "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." +msgstr "A pre-invoke hook is called directly before the command is called. This makes it a useful function to set up database connections or any type of set up required." + +msgid "This pre-invoke hook takes a sole parameter, a :class:`.Context`." +msgstr "This pre-invoke hook takes a sole parameter, a :class:`.Context`." + +msgid "See :meth:`.Bot.before_invoke` for more info." +msgstr "See :meth:`.Bot.before_invoke` for more info." + +msgid "A decorator that registers a coroutine as a local error handler." +msgstr "A decorator that registers a coroutine as a local error handler." + +msgid "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." +msgstr "A local error handler is an :func:`.on_command_error` event limited to a single command. However, the :func:`.on_command_error` is still invoked afterwards as the catch-all." + +msgid "The coroutine to register as the local error handler." +msgstr "The coroutine to register as the local error handler." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ErrorT\\`\\`\\, bound\\= Error\\)`" + +msgid "Adds a check to the command." +msgstr "Adds a check to the command." + +msgid "This is the non-decorator interface to :func:`.check`." +msgstr "This is the non-decorator interface to :func:`.check`." + +msgid "The function that will be used as a check." +msgstr "The function that will be used as a check." + +msgid "Removes a check from the command." +msgstr "Removes a check from the command." + +msgid "This function is idempotent and will not raise an exception if the function is not in the command's checks." +msgstr "This function is idempotent and will not raise an exception if the function is not in the command's checks." + +msgid "The function to remove from the checks." +msgstr "The function to remove from the checks." + +msgid "Updates :class:`Command` instance with updated attribute." +msgstr "Updates :class:`Command` instance with updated attribute." + +msgid "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." +msgstr "This works similarly to the :func:`.command` decorator in terms of parameters in that they are passed to the :class:`Command` or subclass constructors, sans the name and callback." + +msgid "Calls the internal callback that the command holds." +msgstr "Calls the internal callback that the command holds." + +msgid "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." +msgstr "This bypasses all mechanisms -- including checks, converters, invoke hooks, cooldowns, etc. You must take care to pass the proper arguments and types to this function." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)`" + +msgid "Creates a copy of this command." +msgstr "Creates a copy of this command." + +msgid "A new instance of this command." +msgstr "A new instance of this command." + +msgid ":class:`Command`" +msgstr ":class:`Command`" + +msgid "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." +msgstr "Dict[:class:`str`, :class:`inspect.Parameter`]: Retrieves the parameter dictionary without the context or self parameters." + +msgid "Useful for inspecting signature." +msgstr "Useful for inspecting signature." + +msgid "Retrieves the fully qualified parent command name." +msgstr "Retrieves the fully qualified parent command name." + +msgid "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." +msgstr "This the base command name required to execute it. For example, in ``?one two three`` the parent name would be ``one two``." + +msgid "Retrieves the parents of this command." +msgstr "Retrieves the parents of this command." + +msgid "If the command has no parents then it returns an empty :class:`list`." +msgstr "If the command has no parents then it returns an empty :class:`list`." + +msgid "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." +msgstr "For example in commands ``?a b c test``, the parents are ``[c, b, a]``." + +msgid "Retrieves the root parent of this command." +msgstr "Retrieves the root parent of this command." + +msgid "If the command has no parents then it returns ``None``." +msgstr "If the command has no parents then it returns ``None``." + +msgid "For example in commands ``?a b c test``, the root parent is ``a``." +msgstr "For example in commands ``?a b c test``, the root parent is ``a``." + +msgid "Retrieves the fully qualified command name." +msgstr "Retrieves the fully qualified command name." + +msgid "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." +msgstr "This is the full parent name with the command name as well. For example, in ``?one two three`` the qualified name would be ``one two three``." + +msgid "Checks whether the command is currently on cooldown." +msgstr "Checks whether the command is currently on cooldown." + +msgid "The invocation context to use when checking the command's cooldown status." +msgstr "The invocation context to use when checking the command's cooldown status." + +msgid "A boolean indicating if the command is on cooldown." +msgstr "A boolean indicating if the command is on cooldown." + +msgid "Resets the cooldown on this command." +msgstr "Resets the cooldown on this command." + +msgid "The invocation context to reset the cooldown under." +msgstr "The invocation context to reset the cooldown under." + +msgid "Retrieves the amount of seconds before this command can be tried again." +msgstr "Retrieves the amount of seconds before this command can be tried again." + +msgid "The invocation context to retrieve the cooldown from." +msgstr "The invocation context to retrieve the cooldown from." + +msgid "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." +msgstr "The amount of time left on this command's cooldown in seconds. If this is ``0.0`` then the command isn't on cooldown." + +msgid ":class:`float`" +msgstr ":class:`float`" + +msgid "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Checks whether the command has an error handler registered. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "The name of the cog this command belongs to, if any." +msgstr "The name of the cog this command belongs to, if any." + +msgid "Gets the \"short\" documentation of a command." +msgstr "Gets the \"short\" documentation of a command." + +msgid "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." +msgstr "By default, this is the :attr:`.brief` attribute. If that lookup leads to an empty string then the first line of the :attr:`.help` attribute is used instead." + +msgid "Returns a POSIX-like signature useful for help command output." +msgstr "Returns a POSIX-like signature useful for help command output." + +msgid "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." +msgstr "Checks if the command can be executed by checking all the predicates inside the :attr:`~Command.checks` attribute. This also checks whether the command is disabled." + +msgid "Checks whether the command is disabled or not" +msgstr "Checks whether the command is disabled or not" + +msgid "The ctx of the command currently being invoked." +msgstr "The ctx of the command currently being invoked." + +msgid "A boolean indicating if the command can be invoked." +msgstr "A boolean indicating if the command can be invoked." + +msgid "Any command error that was raised during a check call will be propagated by this function." +msgstr "Any command error that was raised during a check call will be propagated by this function." + +msgid "Group" +msgstr "Group" + +msgid "A class that implements a grouping protocol for commands to be executed as subcommands." +msgstr "A class that implements a grouping protocol for commands to be executed as subcommands." + +msgid "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." +msgstr "This class is a subclass of :class:`.Command` and thus all options valid in :class:`.Command` are valid in here as well." + +msgid "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." +msgstr "Indicates if the group callback should begin parsing and invocation only if no subcommand was found. Useful for making it an error handling function to tell the user that no subcommand was found or to have different functionality in case no subcommand was found. If this is ``False``, then the group callback will always be invoked first. This means that the checks and the parsing dictated by its parameters will be executed. Defaults to ``False``." + +msgid "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." +msgstr "Indicates if the group's commands should be case-insensitive. Defaults to ``False``." + +msgid "Creates a copy of this :class:`Group`." +msgstr "Creates a copy of this :class:`Group`." + +msgid "A new instance of this group." +msgstr "A new instance of this group." + +msgid ":class:`Group`" +msgstr ":class:`Group`" + +msgid "GroupMixin" +msgstr "GroupMixin" + +msgid "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." +msgstr "A mixin that implements common functionality for classes that behave similar to :class:`.Group` and are allowed to register commands." + +msgid "A mapping of command name to :class:`.Command` objects." +msgstr "A mapping of command name to :class:`.Command` objects." + +msgid "Whether the commands should be case-insensitive. Defaults to ``False``." +msgstr "Whether the commands should be case-insensitive. Defaults to ``False``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Cog" +msgstr "Cog" + +msgid "An iterator that recursively walks through this cog's commands and subcommands." +msgstr "An iterator that recursively walks through this cog's commands and subcommands." + +msgid "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." +msgstr "Union[:class:`.Command`, :class:`.Group`] -- A command or group from the cog." + +msgid "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." +msgstr "A :class:`list` of commands that are defined inside this cog. .. note:: This does not include subcommands." + +msgid "A :class:`list` of commands that are defined inside this cog." +msgstr "A :class:`list` of commands that are defined inside this cog." + +msgid "This does not include subcommands." +msgstr "This does not include subcommands." + +msgid "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" +msgstr "List[Union[:class:`~discord.ApplicationCommand`, :class:`.Command`]]" + +msgid "CogMeta" +msgstr "CogMeta" + +msgid "A metaclass for defining a cog." +msgstr "A metaclass for defining a cog." + +msgid "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." +msgstr "Note that you should probably not use this directly. It is exposed purely for documentation purposes along with making custom metaclasses to intermix with other metaclasses such as the :class:`abc.ABCMeta` metaclass." + +msgid "For example, to create an abstract cog mixin class, the following would be done." +msgstr "For example, to create an abstract cog mixin class, the following would be done." + +msgid "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" +msgstr "When passing an attribute of a metaclass that is documented below, note that you must pass it as a keyword-only argument to the class creation like the following example:" + +msgid "The cog name. By default, it is the name of the class with no modification." +msgstr "The cog name. By default, it is the name of the class with no modification." + +msgid "The cog description. By default, it is the cleaned docstring of the class." +msgstr "The cog description. By default, it is the cleaned docstring of the class." + +msgid "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" +msgstr "A list of attributes to apply to every command inside this cog. The dictionary is passed into the :class:`Command` options at ``__init__``. If you specify attributes inside the command attribute in the class, it will override the one specified inside this attribute. For example:" + +msgid "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." +msgstr "A shortcut to :attr:`.command_attrs`, what ``guild_ids`` should all application commands have in the cog. You can override this by setting ``guild_ids`` per command." + +msgid "Optional[List[:class:`int`]]" +msgstr "Optional[List[:class:`int`]]" + +msgid "Help Commands" +msgstr "Help Commands" + +msgid "HelpCommand" +msgstr "HelpCommand" + +msgid "The base implementation for help command formatting." +msgstr "The base implementation for help command formatting." + +msgid "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." +msgstr "Internally instances of this class are deep copied every time the command itself is invoked to prevent a race condition mentioned in :dpy-issue:`2123`." + +msgid "This means that relying on the state of this class to be the same between command invocations would not work as expected." +msgstr "This means that relying on the state of this class to be the same between command invocations would not work as expected." + +msgid "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." +msgstr "The context that invoked this help formatter. This is generally set after the help command assigned, :func:`command_callback`\\, has been called." + +msgid "Optional[:class:`Context`]" +msgstr "Optional[:class:`Context`]" + +msgid "Specifies if hidden commands should be shown in the output. Defaults to ``False``." +msgstr "Specifies if hidden commands should be shown in the output. Defaults to ``False``." + +msgid "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." +msgstr "Specifies if commands should have their :attr:`.Command.checks` called and verified. If ``True``, always calls :attr:`.Command.checks`. If ``None``, only calls :attr:`.Command.checks` in a guild setting. If ``False``, never calls :attr:`.Command.checks`. Defaults to ``True``." + +msgid "Optional[:class:`bool`]" +msgstr "Optional[:class:`bool`]" + +msgid "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." +msgstr "A dictionary of options to pass in for the construction of the help command. This allows you to change the command behaviour without actually changing the implementation of the command. The attributes will be the same as the ones passed in the :class:`.Command` constructor." + +msgid "Adds a check to the help command." +msgstr "Adds a check to the help command." + +msgid "Removes a check from the help command." +msgstr "Removes a check from the help command." + +msgid "Retrieves the bot mapping passed to :meth:`send_bot_help`." +msgstr "Retrieves the bot mapping passed to :meth:`send_bot_help`." + +msgid "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." +msgstr "Similar to :attr:`Context.invoked_with` except properly handles the case where :meth:`Context.send_help` is used." + +msgid "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." +msgstr "If the help command was used regularly then this returns the :attr:`Context.invoked_with` attribute. Otherwise, if the help command was called using :meth:`Context.send_help` then it returns the internal command name of the help command." + +msgid "The command name that triggered this invocation." +msgstr "The command name that triggered this invocation." + +msgid "Retrieves the signature portion of the help page." +msgstr "Retrieves the signature portion of the help page." + +msgid "The command to get the signature of." +msgstr "The command to get the signature of." + +msgid "The signature for the command." +msgstr "The signature for the command." + +msgid "Removes mentions from the string to prevent abuse." +msgstr "Removes mentions from the string to prevent abuse." + +msgid "This includes ``@everyone``, ``@here``, member mentions and role mentions." +msgstr "This includes ``@everyone``, ``@here``, member mentions and role mentions." + +msgid "The string with mentions removed." +msgstr "The string with mentions removed." + +msgid "A property for retrieving or setting the cog for the help command." +msgstr "A property for retrieving or setting the cog for the help command." + +msgid "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." +msgstr "When a cog is set for the help command, it is as-if the help command belongs to that cog. All cog special methods will apply to the help command, and it will be automatically unset on unload." + +msgid "To unbind the cog from the help command, you can set it to ``None``." +msgstr "To unbind the cog from the help command, you can set it to ``None``." + +msgid "The cog that is currently set for the help command." +msgstr "The cog that is currently set for the help command." + +msgid "|maybecoro|" +msgstr "|maybecoro|" + +msgid "A method called when a command is not found in the help command. This is useful to override for i18n." +msgstr "A method called when a command is not found in the help command. This is useful to override for i18n." + +msgid "Defaults to ``No command called {0} found.``" +msgstr "Defaults to ``No command called {0} found.``" + +msgid "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid command. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when a command has not been found." +msgstr "The string to use when a command has not been found." + +msgid "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." +msgstr "A method called when a command did not have a subcommand requested in the help command. This is useful to override for i18n." + +msgid "Defaults to either:" +msgstr "Defaults to either:" + +msgid "``'Command \"{command.qualified_name}\" has no subcommands.'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommands.'``" + +msgid "If there is no subcommand in the ``command`` parameter." +msgstr "If there is no subcommand in the ``command`` parameter." + +msgid "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" +msgstr "``'Command \"{command.qualified_name}\" has no subcommand named {string}'``" + +msgid "If the ``command`` parameter has subcommands but not one named ``string``." +msgstr "If the ``command`` parameter has subcommands but not one named ``string``." + +msgid "The command that did not have the subcommand requested." +msgstr "The command that did not have the subcommand requested." + +msgid "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." +msgstr "The string that contains the invalid subcommand. Note that this has had mentions removed to prevent abuse." + +msgid "The string to use when the command did not have the subcommand requested." +msgstr "The string to use when the command did not have the subcommand requested." + +msgid "Returns a filtered list of commands and optionally sorts them." +msgstr "Returns a filtered list of commands and optionally sorts them." + +msgid "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." +msgstr "This takes into account the :attr:`verify_checks` and :attr:`show_hidden` attributes." + +msgid "An iterable of commands that are getting filtered." +msgstr "An iterable of commands that are getting filtered." + +msgid "Whether to sort the result." +msgstr "Whether to sort the result." + +msgid "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." +msgstr "An optional key function to pass to :func:`py:sorted` that takes a :class:`Command` as its sole parameter. If ``sort`` is passed as ``True`` then this will default as the command name." + +msgid "A list of commands that passed the filter." +msgstr "A list of commands that passed the filter." + +msgid "List[:class:`Command`]" +msgstr "List[:class:`Command`]" + +msgid "Returns the largest name length of the specified command list." +msgstr "Returns the largest name length of the specified command list." + +msgid "A sequence of commands to check for the largest size." +msgstr "A sequence of commands to check for the largest size." + +msgid "The maximum width of the commands." +msgstr "The maximum width of the commands." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "Returns the :class:`~discord.abc.Messageable` where the help command will be output." +msgstr "Returns the :class:`~discord.abc.Messageable` where the help command will be output." + +msgid "You can override this method to customise the behaviour." +msgstr "You can override this method to customise the behaviour." + +msgid "By default, this returns the context's channel." +msgstr "By default, this returns the context's channel." + +msgid "The destination where the help command will be output." +msgstr "The destination where the help command will be output." + +msgid ":class:`.abc.Messageable`" +msgstr ":class:`.abc.Messageable`" + +msgid "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." +msgstr "Handles the implementation when an error happens in the help command. For example, the result of :meth:`command_not_found` will be passed here." + +msgid "By default, this sends the error message to the destination specified by :meth:`get_destination`." +msgstr "By default, this sends the error message to the destination specified by :meth:`get_destination`." + +msgid "You can access the invocation context with :attr:`HelpCommand.context`." +msgstr "You can access the invocation context with :attr:`HelpCommand.context`." + +msgid "The error message to display to the user. Note that this has had mentions removed to prevent abuse." +msgstr "The error message to display to the user. Note that this has had mentions removed to prevent abuse." + +msgid "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." +msgstr "The help command's error handler, as specified by :ref:`ext_commands_error_handler`." + +msgid "Useful to override if you need some specific behaviour when the error handler is called." +msgstr "Useful to override if you need some specific behaviour when the error handler is called." + +msgid "By default, this method does nothing and just propagates to the default error handlers." +msgstr "By default, this method does nothing and just propagates to the default error handlers." + +msgid "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." +msgstr "Handles the implementation of the bot command page in the help command. This function is called when the help command is called with no arguments." + +msgid "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." +msgstr "It should be noted that this method does not return anything -- rather the actual message sending should be done inside this method. Well-behaved subclasses should use :meth:`get_destination` to know where to send, as this is a customisation point for other users." + +msgid "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "Also, the commands in the mapping are not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." +msgstr "A mapping of cogs to commands that have been requested by the user for help. The key of the mapping is the :class:`~.commands.Cog` that the command belongs to, or ``None`` if there isn't one, and the value is a list of commands that belongs to that cog." + +msgid "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." +msgstr "Handles the implementation of the cog page in the help command. This function is called when the help command is called with a cog as the argument." + +msgid "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this cog see :meth:`Cog.get_commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The cog that was requested for help." +msgstr "The cog that was requested for help." + +msgid "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." +msgstr "Handles the implementation of the group page in the help command. This function is called when the help command is called with a group as the argument." + +msgid "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." +msgstr "To get the commands that belong to this group without aliases see :attr:`Group.commands`. The commands returned not filtered. To do the filtering you will have to call :meth:`filter_commands` yourself." + +msgid "The group that was requested for help." +msgstr "The group that was requested for help." + +msgid "Handles the implementation of the single command page in the help command." +msgstr "Handles the implementation of the single command page in the help command." + +msgid "Showing Help" +msgstr "Showing Help" + +msgid "There are certain attributes and methods that are helpful for a help command to show such as the following:" +msgstr "There are certain attributes and methods that are helpful for a help command to show such as the following:" + +msgid ":attr:`Command.help`" +msgstr ":attr:`Command.help`" + +msgid ":attr:`Command.brief`" +msgstr ":attr:`Command.brief`" + +msgid ":attr:`Command.short_doc`" +msgstr ":attr:`Command.short_doc`" + +msgid ":attr:`Command.description`" +msgstr ":attr:`Command.description`" + +msgid ":meth:`get_command_signature`" +msgstr ":meth:`get_command_signature`" + +msgid "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." +msgstr "There are more than just these attributes but feel free to play around with these to help you get started to get the output that you want." + +msgid "The command that was requested for help." +msgstr "The command that was requested for help." + +msgid "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." +msgstr "A low level method that can be used to prepare the help command before it does anything. For example, if you need to prepare some state in your subclass before the command does its processing then this would be the place to do it." + +msgid "The default implementation does nothing." +msgstr "The default implementation does nothing." + +msgid "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." +msgstr "This is called *inside* the help command callback body. So all the usual rules that happen inside apply here as well." + +msgid "The argument passed to the help command." +msgstr "The argument passed to the help command." + +msgid "The actual implementation of the help command." +msgstr "The actual implementation of the help command." + +msgid "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." +msgstr "It is not recommended to override this method and instead change the behaviour through the methods that actually get dispatched." + +msgid ":meth:`send_bot_help`" +msgstr ":meth:`send_bot_help`" + +msgid ":meth:`send_cog_help`" +msgstr ":meth:`send_cog_help`" + +msgid ":meth:`send_group_help`" +msgstr ":meth:`send_group_help`" + +msgid ":meth:`send_command_help`" +msgstr ":meth:`send_command_help`" + +msgid ":meth:`get_destination`" +msgstr ":meth:`get_destination`" + +msgid ":meth:`command_not_found`" +msgstr ":meth:`command_not_found`" + +msgid ":meth:`subcommand_not_found`" +msgstr ":meth:`subcommand_not_found`" + +msgid ":meth:`send_error_message`" +msgstr ":meth:`send_error_message`" + +msgid ":meth:`on_help_command_error`" +msgstr ":meth:`on_help_command_error`" + +msgid ":meth:`prepare_help_command`" +msgstr ":meth:`prepare_help_command`" + +msgid "DefaultHelpCommand" +msgstr "DefaultHelpCommand" + +msgid "The implementation of the default help command." +msgstr "The implementation of the default help command." + +msgid "This inherits from :class:`HelpCommand`." +msgstr "This inherits from :class:`HelpCommand`." + +msgid "It extends it with the following attributes." +msgstr "It extends it with the following attributes." + +msgid "The maximum number of characters that fit in a line. Defaults to 80." +msgstr "The maximum number of characters that fit in a line. Defaults to 80." + +msgid "Whether to sort the commands in the output alphabetically. Defaults to ``True``." +msgstr "Whether to sort the commands in the output alphabetically. Defaults to ``True``." + +msgid "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." +msgstr "A tribool that indicates if the help command should DM the user instead of sending it to the channel it received it from. If the boolean is set to ``True``, then all help output is DM'd. If ``False``, none of the help output is DM'd. If ``None``, then the bot will only DM when the help message becomes too long (dictated by more than :attr:`dm_help_threshold` characters). Defaults to ``False``." + +msgid "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." +msgstr "The number of characters the paginator must accumulate before getting DM'd to the user if :attr:`dm_help` is set to ``None``. Defaults to 1000." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "How much to indent the commands from a heading. Defaults to ``2``." +msgstr "How much to indent the commands from a heading. Defaults to ``2``." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands:\"``" + +msgid "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" +msgstr "The string used when there is a command which does not belong to any category(cog). Useful for i18n. Defaults to ``\"No Category\"``" + +msgid "The paginator used to paginate the help command output." +msgstr "The paginator used to paginate the help command output." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "Shortens text to fit into the :attr:`width`." +msgstr "Shortens text to fit into the :attr:`width`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`str\\``" + +msgid "Returns help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "Indents a list of commands after the specified heading." +msgstr "Indents a list of commands after the specified heading." + +msgid "The formatting is added to the :attr:`paginator`." +msgstr "The formatting is added to the :attr:`paginator`." + +msgid "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." +msgstr "The default implementation is the command name indented by :attr:`indent` spaces, padded to ``max_size`` followed by the command's :attr:`Command.short_doc` and then shortened to fit into the :attr:`width`." + +msgid "A list of commands to indent for output." +msgstr "A list of commands to indent for output." + +msgid "The heading to add to the output. This is only added if the list of commands is greater than 0." +msgstr "The heading to add to the output. This is only added if the list of commands is greater than 0." + +msgid "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." +msgstr "The max size to use for the gap between indents. If unspecified, calls :meth:`~HelpCommand.get_max_size` on the commands parameter." + +msgid "A helper utility to send the page output from :attr:`paginator` to the destination." +msgstr "A helper utility to send the page output from :attr:`paginator` to the destination." + +msgid "A utility function to format the non-indented block of commands and groups." +msgstr "A utility function to format the non-indented block of commands and groups." + +msgid "The command to format." +msgstr "The command to format." + +msgid "MinimalHelpCommand" +msgstr "MinimalHelpCommand" + +msgid "An implementation of a help command with minimal output." +msgstr "An implementation of a help command with minimal output." + +msgid "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" +msgstr "The command list's heading string used when the help command is invoked with a category name. Useful for i18n. Defaults to ``\"Commands\"``" + +msgid "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." +msgstr "The alias list's heading string used to list the aliases of the command. Useful for i18n. Defaults to ``\"Aliases:\"``." + +msgid "Returns help command's opening note. This is mainly useful to override for i18n purposes." +msgstr "Returns help command's opening note. This is mainly useful to override for i18n purposes." + +msgid "The default implementation returns ::" +msgstr "The default implementation returns ::" + +msgid "The help command opening note." +msgstr "The help command opening note." + +msgid "Return the help command's ending note. This is mainly useful to override for i18n purposes." +msgstr "Return the help command's ending note. This is mainly useful to override for i18n purposes." + +msgid "The help command ending note." +msgstr "The help command ending note." + +msgid "Adds the minified bot heading with commands to the output." +msgstr "Adds the minified bot heading with commands to the output." + +msgid "The formatting should be added to the :attr:`paginator`." +msgstr "The formatting should be added to the :attr:`paginator`." + +msgid "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." +msgstr "The default implementation is a bold underline heading followed by commands separated by an EN SPACE (U+2002) in the next line." + +msgid "A list of commands that belong to the heading." +msgstr "A list of commands that belong to the heading." + +msgid "The heading to add to the line." +msgstr "The heading to add to the line." + +msgid "Adds formatting information on a subcommand." +msgstr "Adds formatting information on a subcommand." + +msgid "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." +msgstr "The default implementation is the prefix and the :attr:`Command.qualified_name` optionally followed by an En dash and the command's :attr:`Command.short_doc`." + +msgid "The command to show information of." +msgstr "The command to show information of." + +msgid "Adds the formatting information on a command's aliases." +msgstr "Adds the formatting information on a command's aliases." + +msgid "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." +msgstr "The default implementation is the :attr:`aliases_heading` bolded followed by a comma separated list of aliases." + +msgid "This is not called if there are no aliases to format." +msgstr "This is not called if there are no aliases to format." + +msgid "A list of aliases to format." +msgstr "A list of aliases to format." + +msgid "A utility function to format commands and groups." +msgstr "A utility function to format commands and groups." + +msgid "Paginator" +msgstr "Paginator" + +msgid "A class that aids in paginating code blocks for Discord messages." +msgstr "A class that aids in paginating code blocks for Discord messages." + +msgid "Returns the total number of characters in the paginator." +msgstr "Returns the total number of characters in the paginator." + +msgid "The prefix inserted to every page. e.g. three backticks." +msgstr "The prefix inserted to every page. e.g. three backticks." + +msgid "The suffix appended at the end of every page. e.g. three backticks." +msgstr "The suffix appended at the end of every page. e.g. three backticks." + +msgid "The maximum amount of codepoints allowed in a page." +msgstr "The maximum amount of codepoints allowed in a page." + +msgid "The character string inserted between lines. e.g. a newline character." +msgstr "The character string inserted between lines. e.g. a newline character." + +msgid "Clears the paginator to have no pages." +msgstr "Clears the paginator to have no pages." + +msgid "Adds a line to the current page." +msgstr "Adds a line to the current page." + +msgid "If the line exceeds the :attr:`max_size` then an exception is raised." +msgstr "If the line exceeds the :attr:`max_size` then an exception is raised." + +msgid "The line to add." +msgstr "The line to add." + +msgid "Indicates if another empty line should be added." +msgstr "Indicates if another empty line should be added." + +msgid "The line was too big for the current :attr:`max_size`." +msgstr "The line was too big for the current :attr:`max_size`." + +msgid "Prematurely terminate a page." +msgstr "Prematurely terminate a page." + +msgid "Returns the rendered list of pages." +msgstr "Returns the rendered list of pages." + +msgid "Enums" +msgstr "Enums" + +msgid "Specifies a type of bucket for, e.g. a cooldown." +msgstr "Specifies a type of bucket for, e.g. a cooldown." + +msgid "The default bucket operates on a global basis." +msgstr "The default bucket operates on a global basis." + +msgid "The user bucket operates on a per-user basis." +msgstr "The user bucket operates on a per-user basis." + +msgid "The guild bucket operates on a per-guild basis." +msgstr "The guild bucket operates on a per-guild basis." + +msgid "The channel bucket operates on a per-channel basis." +msgstr "The channel bucket operates on a per-channel basis." + +msgid "The member bucket operates on a per-member basis." +msgstr "The member bucket operates on a per-member basis." + +msgid "The category bucket operates on a per-category basis." +msgstr "The category bucket operates on a per-category basis." + +msgid "The role bucket operates on a per-role basis." +msgstr "The role bucket operates on a per-role basis." + +msgid "Checks" +msgstr "Checks" + +msgid "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." +msgstr "A decorator that adds a check to the :class:`.Command` or its subclasses. These checks could be accessed via :attr:`.Command.checks`." + +msgid "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." +msgstr "These checks should be predicates that take in a single parameter taking a :class:`.Context`. If the check returns a ``False``\\-like value then during invocation a :exc:`.CheckFailure` exception is raised and sent to the :func:`.on_command_error` event." + +msgid "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." +msgstr "If an exception should be thrown in the predicate then it should be a subclass of :exc:`.CommandError`. Any exception not subclassed from it will be propagated while those subclassed will be sent to :func:`.on_command_error`." + +msgid "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" +msgstr "A special attribute named ``predicate`` is bound to the value returned by this decorator to retrieve the predicate passed to the decorator. This allows the following introspection and chaining to be done:" + +msgid "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." +msgstr "The function returned by ``predicate`` is **always** a coroutine, even if the original function was not a coroutine." + +msgid "The ``predicate`` attribute was added." +msgstr "The ``predicate`` attribute was added." + +msgid "Creating a basic check to see if the command invoker is you." +msgstr "Creating a basic check to see if the command invoker is you." + +msgid "Transforming common checks into its own decorator:" +msgstr "Transforming common checks into its own decorator:" + +msgid "The predicate to check if the command should be invoked." +msgstr "The predicate to check if the command should be invoked." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." +msgstr "A :func:`check` that is added that checks if any of the checks passed will pass, i.e. using logical OR." + +msgid "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." +msgstr "If all checks fail then :exc:`.CheckAnyFailure` is raised to signal the failure. It inherits from :exc:`.CheckFailure`." + +msgid "The ``predicate`` attribute for this function **is** a coroutine." +msgstr "The ``predicate`` attribute for this function **is** a coroutine." + +msgid "An argument list of checks that have been decorated with the :func:`check` decorator." +msgstr "An argument list of checks that have been decorated with the :func:`check` decorator." + +msgid "A check passed has not been decorated with the :func:`check` decorator." +msgstr "A check passed has not been decorated with the :func:`check` decorator." + +msgid "Creating a basic check to see if it's the bot owner or the server owner:" +msgstr "Creating a basic check to see if it's the bot owner or the server owner:" + +msgid "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has the role specified via the name or ID specified." + +msgid "If a string is specified, you must give the exact name of the role, including caps and spelling." +msgstr "If a string is specified, you must give the exact name of the role, including caps and spelling." + +msgid "If an integer is specified, you must give the exact snowflake ID of the role." +msgstr "If an integer is specified, you must give the exact snowflake ID of the role." + +msgid "If the message is invoked in a private message context then the check will return ``False``." +msgstr "If the message is invoked in a private message context then the check will return ``False``." + +msgid "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingRole` if the user is missing a role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "The name or ID of the role to check." +msgstr "The name or ID of the role to check." + +msgid "A :func:`.check` that is added that checks if the member has all of the permissions necessary." +msgstr "A :func:`.check` that is added that checks if the member has all of the permissions necessary." + +msgid "Note that this check operates on the current channel permissions, not the guild wide permissions." +msgstr "Note that this check operates on the current channel permissions, not the guild wide permissions." + +msgid "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." +msgstr "The permissions passed in must be exactly like the properties shown under :class:`.discord.Permissions`." + +msgid "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.MissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "If the command is executed within a DM, it returns ``True``." +msgstr "If the command is executed within a DM, it returns ``True``." + +msgid "An argument list of permissions to check for." +msgstr "An argument list of permissions to check for." + +msgid "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." +msgstr "Similar to :func:`.has_permissions`, but operates on guild wide permissions instead of the current channel permissions." + +msgid "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." +msgstr "If this check is called in a DM context, it will raise an exception, :exc:`.NoPrivateMessage`." + +msgid "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." +msgstr "A :func:`.check` that is added that checks if the member invoking the command has **any** of the roles specified. This means that if they have one out of the three roles specified, then this check will return `True`." + +msgid "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." +msgstr "Similar to :func:`.has_role`\\, the names or IDs passed in must be exact." + +msgid "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.MissingAnyRole` if the user is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.MissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "An argument list of names or IDs to check that the member has roles wise." +msgstr "An argument list of names or IDs to check that the member has roles wise." + +msgid "Similar to :func:`.has_role` except checks if the bot itself has the role." +msgstr "Similar to :func:`.has_role` except checks if the bot itself has the role." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingRole` if the bot is missing the role, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" +msgstr "Raise :exc:`.BotMissingRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`" + +msgid "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." +msgstr "Similar to :func:`.has_permissions` except checks if the bot itself has the permissions listed." + +msgid "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.BotMissingPermissions` that is inherited from :exc:`.CheckFailure`." + +msgid "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." +msgstr "Similar to :func:`.has_guild_permissions`, but checks the bot members guild permissions." + +msgid "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." +msgstr "Similar to :func:`.has_any_role` except checks if the bot itself has any of the roles listed." + +msgid "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." +msgstr "This check raises one of two special exceptions, :exc:`.BotMissingAnyRole` if the bot is missing all roles, or :exc:`.NoPrivateMessage` if it is used in a private message. Both inherit from :exc:`.CheckFailure`." + +msgid "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." +msgstr "Raise :exc:`.BotMissingAnyRole` or :exc:`.NoPrivateMessage` instead of generic :exc:`.CheckFailure`." + +msgid "A decorator that adds a cooldown to a command" +msgstr "A decorator that adds a cooldown to a command" + +msgid "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." +msgstr "A cooldown allows a command to only be used a specific amount of times in a specific time frame. These cooldowns can be based either on a per-guild, per-channel, per-user, per-role or global basis. Denoted by the third argument of ``type`` which must be of enum type :class:`.BucketType`." + +msgid "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." +msgstr "If a cooldown is triggered, then :exc:`.CommandOnCooldown` is triggered in :func:`.on_command_error` and the local error handler." + +msgid "A command can only have a single cooldown." +msgstr "A command can only have a single cooldown." + +msgid "The number of times a command can be used before triggering a cooldown." +msgstr "The number of times a command can be used before triggering a cooldown." + +msgid "The amount of seconds to wait for a cooldown when it's been triggered." +msgstr "The amount of seconds to wait for a cooldown when it's been triggered." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping. .. versionchanged:: 1.7 Callables are now supported for custom bucket types." + +msgid "The type of cooldown to have. If callable, should return a key for the mapping." +msgstr "The type of cooldown to have. If callable, should return a key for the mapping." + +msgid "Callables are now supported for custom bucket types." +msgstr "Callables are now supported for custom bucket types." + +msgid "A decorator that adds a dynamic cooldown to a command" +msgstr "A decorator that adds a dynamic cooldown to a command" + +msgid "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." +msgstr "This differs from :func:`.cooldown` in that it takes a function that accepts a single parameter of type :class:`.discord.Message` and must return a :class:`.Cooldown` or ``None``. If ``None`` is returned then that cooldown is effectively bypassed." + +msgid "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." +msgstr "A function that takes a message and returns a cooldown that will apply to this invocation or ``None`` if the cooldown should be bypassed." + +msgid "The type of cooldown to have." +msgstr "The type of cooldown to have." + +msgid "A decorator that adds a maximum concurrency to a command" +msgstr "A decorator that adds a maximum concurrency to a command" + +msgid "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." +msgstr "This enables you to only allow a certain number of command invocations at the same time, for example if a command takes too long or if only one user can use it at a time. This differs from a cooldown in that there is no set waiting period or token bucket -- only a set number of people can run the command." + +msgid "The maximum number of invocations of this command that can be running at the same time." +msgstr "The maximum number of invocations of this command that can be running at the same time." + +msgid "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." +msgstr "The bucket that this concurrency is based on, e.g. ``BucketType.guild`` would allow it to be used up to ``number`` times per guild." + +msgid "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." +msgstr "Whether the command should wait for the queue to be over. If this is set to ``False`` then instead of waiting until the command can run again, the command raises :exc:`.MaxConcurrencyReached` to its error handler. If this is set to ``True`` then the command waits until it can be executed." + +msgid "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one before invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This allows you to refer to one after invoke hook for several commands that do not have to be within the same cog. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a guild context only. Basically, no private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NoPrivateMessage` that is inherited from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." +msgstr "A :func:`.check` that indicates this command must only be used in a DM context. Only private messages are allowed when using the command." + +msgid "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.PrivateMessageOnly` that is inherited from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "A :func:`.check` that checks if the person invoking this command is the owner of the bot." +msgstr "A :func:`.check` that checks if the person invoking this command is the owner of the bot." + +msgid "This is powered by :meth:`.Bot.is_owner`." +msgstr "This is powered by :meth:`.Bot.is_owner`." + +msgid "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." +msgstr "This check raises a special exception, :exc:`.NotOwner` that is derived from :exc:`.CheckFailure`." + +msgid "A :func:`.check` that checks if the channel is a NSFW channel." +msgstr "A :func:`.check` that checks if the channel is a NSFW channel." + +msgid "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" +msgstr "This check raises a special exception, :exc:`.NSFWChannelRequired` that is derived from :exc:`.CheckFailure`. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]\\, \\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\`\\`\\)\\]`" + +msgid "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." +msgstr "Raise :exc:`.NSFWChannelRequired` instead of generic :exc:`.CheckFailure`. DM channels will also now pass this check." + +msgid "Cooldown" +msgstr "Cooldown" + +msgid "Represents a cooldown for a command." +msgstr "Represents a cooldown for a command." + +msgid "The total number of tokens available per :attr:`per` seconds." +msgstr "The total number of tokens available per :attr:`per` seconds." + +msgid "The length of the cooldown period in seconds." +msgstr "The length of the cooldown period in seconds." + +msgid "Returns the number of available tokens before rate limiting is applied." +msgstr "Returns the number of available tokens before rate limiting is applied." + +msgid "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to calculate tokens at. If not supplied then :func:`time.time()` is used." + +msgid "The number of tokens available before the cooldown is to be applied." +msgstr "The number of tokens available before the cooldown is to be applied." + +msgid "Returns the time in seconds until the cooldown will be reset." +msgstr "Returns the time in seconds until the cooldown will be reset." + +msgid "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." +msgstr "The current time in seconds since Unix epoch. If not supplied, then :func:`time.time()` is used." + +msgid "The number of seconds to wait before this cooldown will be reset." +msgstr "The number of seconds to wait before this cooldown will be reset." + +msgid "Updates the cooldown rate limit." +msgstr "Updates the cooldown rate limit." + +msgid "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." +msgstr "The time in seconds since Unix epoch to update the rate limit at. If not supplied, then :func:`time.time()` is used." + +msgid "The retry-after time in seconds if rate limited." +msgstr "The retry-after time in seconds if rate limited." + +msgid "Optional[:class:`float`]" +msgstr "Optional[:class:`float`]" + +msgid "Reset the cooldown to its initial state." +msgstr "Reset the cooldown to its initial state." + +msgid "Creates a copy of this cooldown." +msgstr "Creates a copy of this cooldown." + +msgid "A new instance of this cooldown." +msgstr "A new instance of this cooldown." + +msgid ":class:`Cooldown`" +msgstr ":class:`Cooldown`" + +msgid "Context" +msgstr "Context" + +msgid "Represents the context in which a command is being invoked under." +msgstr "Represents the context in which a command is being invoked under." + +msgid "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." +msgstr "This class contains a lot of metadata to help you understand more about the invocation context. This class is not created manually and is instead passed around to commands as the first parameter." + +msgid "This class implements the :class:`~discord.abc.Messageable` ABC." +msgstr "This class implements the :class:`~discord.abc.Messageable` ABC." + +msgid "The message that triggered the command being executed." +msgstr "The message that triggered the command being executed." + +msgid ":class:`.Message`" +msgstr ":class:`.Message`" + +msgid "The bot that contains the command being executed." +msgstr "The bot that contains the command being executed." + +msgid ":class:`.Bot`" +msgstr ":class:`.Bot`" + +msgid "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." +msgstr "The list of transformed arguments that were passed into the command. If this is accessed during the :func:`.on_command_error` event then this list could be incomplete." + +msgid ":class:`list`" +msgstr ":class:`list`" + +msgid "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." +msgstr "A dictionary of transformed arguments that were passed into the command. Similar to :attr:`args`\\, if this is accessed in the :func:`.on_command_error` event then this dict could be incomplete." + +msgid "The parameter that is currently being inspected and converted. This is only of use for within converters." +msgstr "The parameter that is currently being inspected and converted. This is only of use for within converters." + +msgid "Optional[:class:`inspect.Parameter`]" +msgstr "Optional[:class:`inspect.Parameter`]" + +msgid "The prefix that was used to invoke the command." +msgstr "The prefix that was used to invoke the command." + +msgid "The command that is being invoked currently." +msgstr "The command that is being invoked currently." + +msgid "The command name that triggered this invocation. Useful for finding out which alias called the command." +msgstr "The command name that triggered this invocation. Useful for finding out which alias called the command." + +msgid "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." +msgstr "The command names of the parents that triggered this invocation. Useful for finding out which aliases called the command." + +msgid "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." +msgstr "For example in commands ``?a b c test``, the invoked parents are ``['a', 'b', 'c']``." + +msgid "List[:class:`str`]" +msgstr "List[:class:`str`]" + +msgid "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." +msgstr "The subcommand that was invoked. If no valid subcommand was invoked then this is equal to ``None``." + +msgid "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." +msgstr "The string that was attempted to call a subcommand. This does not have to point to a valid registered subcommand and could just point to a nonsense string. If nothing was passed to attempt a call to a subcommand then this is set to ``None``." + +msgid "A boolean that indicates if the command failed to be parsed, checked, or invoked." +msgstr "A boolean that indicates if the command failed to be parsed, checked, or invoked." + +msgid "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." +msgstr "Returns an :class:`~discord.AsyncIterator` that enables receiving the destination's message history." + +msgid "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." +msgstr "You must have :attr:`~discord.Permissions.read_message_history` permissions to use this." + +msgid "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." +msgstr "The number of messages to retrieve. If ``None``, retrieves every message in the channel. Note, however, that this would make it a slow operation." + +msgid "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages before this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." +msgstr "Retrieve messages after this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time." + +msgid "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." +msgstr "Retrieve messages around this date or message. If a datetime is provided, it is recommended to use a UTC aware datetime. If the datetime is naive, it is assumed to be local time. When using this argument, the maximum limit is 101. Note that if the limit is an even number, then this will return at most limit + 1 messages." + +msgid "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." +msgstr "If set to ``True``, return messages in oldest->newest order. Defaults to ``True`` if ``after`` is specified, otherwise ``False``." + +msgid ":class:`~discord.Message` -- The message with the message data parsed." +msgstr ":class:`~discord.Message` -- The message with the message data parsed." + +msgid "You do not have permissions to get channel message history." +msgstr "You do not have permissions to get channel message history." + +msgid "The request to get message history failed." +msgstr "The request to get message history failed." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.iterators.HistoryIterator\\``" + +msgid "Flattening into a list: ::" +msgstr "Flattening into a list: ::" + +msgid "Returns a context manager that allows you to type for an indefinite period of time." +msgstr "Returns a context manager that allows you to type for an indefinite period of time." + +msgid "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" +msgstr "This is useful for denoting long computations in your bot. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.context\\_managers.Typing\\``" + +msgid "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." +msgstr "This is both a regular context manager and an async context manager. This means that both ``with`` and ``async with`` work with this." + +msgid "Example Usage: ::" +msgstr "Example Usage: ::" + +msgid "Calls a command with the arguments given." +msgstr "Calls a command with the arguments given." + +msgid "This is useful if you want to just call the callback that a :class:`.Command` holds internally." +msgstr "This is useful if you want to just call the callback that a :class:`.Command` holds internally." + +msgid "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." +msgstr "This does not handle converters, checks, cooldowns, pre-invoke, or after-invoke hooks in any matter. It calls the internal callback directly as-if it was a regular function." + +msgid "You must take care in passing the proper arguments when using this function." +msgstr "You must take care in passing the proper arguments when using this function." + +msgid "The command that is going to be called." +msgstr "The command that is going to be called." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid "The command argument to invoke is missing." +msgstr "The command argument to invoke is missing." + +msgid "Calls the command again." +msgstr "Calls the command again." + +msgid "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." +msgstr "This is similar to :meth:`~.Context.invoke` except that it bypasses checks, cooldowns, and error handlers." + +msgid "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." +msgstr "If you want to bypass :exc:`.UserInputError` derived exceptions, it is recommended to use the regular :meth:`~.Context.invoke` as it will work more naturally. After all, this will end up using the old arguments the user has used and will thus just fail again." + +msgid "Whether to call the before and after invoke hooks." +msgstr "Whether to call the before and after invoke hooks." + +msgid "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." +msgstr "Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). The default is to start where we left off." + +msgid "The context to reinvoke is not valid." +msgstr "The context to reinvoke is not valid." + +msgid "Checks if the invocation context is valid to be invoked with." +msgstr "Checks if the invocation context is valid to be invoked with." + +msgid "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." +msgstr "The cleaned up invoke prefix. i.e. mentions are ``@name`` instead of ``<@id>``." + +msgid "Returns the cog associated with this context's command. None if it does not exist." +msgstr "Returns the cog associated with this context's command. None if it does not exist." + +msgid "Returns the guild associated with this context's command. None if not available." +msgstr "Returns the guild associated with this context's command. None if not available." + +msgid "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." +msgstr "Returns the channel associated with this context's command. Shorthand for :attr:`.Message.channel`." + +msgid "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" +msgstr "Union[:class:`~discord.User`, :class:`.Member`]: Returns the author associated with this context's command. Shorthand for :attr:`.Message.author`" + +msgid "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." +msgstr "Union[:class:`.Member`, :class:`.ClientUser`]: Similar to :attr:`.Guild.me` except it may return the :class:`.ClientUser` in private message message contexts, or when :meth:`Intents.guilds` is absent." + +msgid "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." +msgstr "A shortcut to :attr:`.Guild.voice_client`\\, if applicable." + +msgid "Shows the help command for the specified entity if given. The entity can be a command or a cog." +msgstr "Shows the help command for the specified entity if given. The entity can be a command or a cog." + +msgid "If no entity is given, then it'll show help for the entire bot." +msgstr "If no entity is given, then it'll show help for the entire bot." + +msgid "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." +msgstr "If the entity is a string, then it looks up whether it's a :class:`Cog` or a :class:`Command`." + +msgid "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." +msgstr "Due to the way this function works, instead of returning something similar to :meth:`~.commands.HelpCommand.command_not_found` this returns :class:`None` on bad input or no help command." + +msgid "The entity to show help for." +msgstr "The entity to show help for." + +msgid "The result of the help command, if any." +msgstr "The result of the help command, if any." + +msgid "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." +msgstr "Returns a :class:`bool` indicating whether you have the permissions to send the object(s)." + +msgid "Indicates whether you have the permissions to send the object(s)." +msgstr "Indicates whether you have the permissions to send the object(s)." + +msgid "An invalid type has been passed." +msgstr "An invalid type has been passed." + +msgid "Retrieves a single :class:`~discord.Message` from the destination." +msgstr "Retrieves a single :class:`~discord.Message` from the destination." + +msgid "The message ID to look for." +msgstr "The message ID to look for." + +msgid "The message asked for." +msgstr "The message asked for." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "The specified message was not found." +msgstr "The specified message was not found." + +msgid "You do not have the permissions required to get a message." +msgstr "You do not have the permissions required to get a message." + +msgid "Retrieving the message failed." +msgstr "Retrieving the message failed." + +msgid "Retrieves all messages that are currently pinned in the channel." +msgstr "Retrieves all messages that are currently pinned in the channel." + +msgid "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." +msgstr "Due to a limitation with the Discord API, the :class:`.Message` objects returned by this method do not contain complete :attr:`.Message.reactions` data." + +msgid "The messages that are currently pinned." +msgstr "The messages that are currently pinned." + +msgid "List[:class:`~discord.Message`]" +msgstr "List[:class:`~discord.Message`]" + +msgid "Retrieving the pinned messages failed." +msgstr "Retrieving the pinned messages failed." + +msgid "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." +msgstr "A shortcut method to :meth:`.abc.Messageable.send` to reply to the :class:`.Message`." + +msgid "The message that was sent." +msgstr "The message that was sent." + +msgid "Sending the message failed." +msgstr "Sending the message failed." + +msgid "You do not have the proper permissions to send the message." +msgstr "You do not have the proper permissions to send the message." + +msgid "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." +msgstr "The ``files`` list is not of the appropriate size, or you specified both ``file`` and ``files``." + +msgid "Sends a message to the destination with the content given." +msgstr "Sends a message to the destination with the content given." + +msgid "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." +msgstr "The content must be a type that can convert to a string through ``str(content)``. If the content is set to ``None`` (the default), then the ``embed`` parameter must be provided." + +msgid "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single file, the ``file`` parameter should be used with a single :class:`~discord.File` object. To upload multiple files, the ``files`` parameter should be used with a :class:`list` of :class:`~discord.File` objects. **Specifying both parameters will lead to an exception**." + +msgid "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." +msgstr "To upload a single embed, the ``embed`` parameter should be used with a single :class:`~discord.Embed` object. To upload multiple embeds, the ``embeds`` parameter should be used with a :class:`list` of :class:`~discord.Embed` objects. **Specifying both parameters will lead to an exception**." + +msgid "The content of the message to send." +msgstr "The content of the message to send." + +msgid "Indicates if the message should be sent using text-to-speech." +msgstr "Indicates if the message should be sent using text-to-speech." + +msgid "The rich embed for the content." +msgstr "The rich embed for the content." + +msgid "The file to upload." +msgstr "The file to upload." + +msgid "A list of files to upload. Must be a maximum of 10." +msgstr "A list of files to upload. Must be a maximum of 10." + +msgid "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." +msgstr "The nonce to use for sending this message. If the message was successfully sent, then the message will have a nonce with this value." + +msgid "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" +msgstr "Whether :attr:`nonce` is enforced to be validated. .. versionadded:: 2.5" + +msgid "Whether :attr:`nonce` is enforced to be validated." +msgstr "Whether :attr:`nonce` is enforced to be validated." + +msgid "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." +msgstr "If provided, the number of seconds to wait in the background before deleting the message we just sent. If the deletion fails, then it is silently ignored." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead. .. versionadded:: 1.4" + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``. .. versionadded:: 1.6" + +msgid "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying, this can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``. .. versionadded:: 1.6" + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "A Discord UI View to add to the message." +msgstr "A Discord UI View to add to the message." + +msgid "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" +msgstr "A list of embeds to upload. Must be a maximum of 10. .. versionadded:: 2.0" + +msgid "A list of embeds to upload. Must be a maximum of 10." +msgstr "A list of embeds to upload. Must be a maximum of 10." + +msgid "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" +msgstr "A list of stickers to upload. Must be a maximum of 3. .. versionadded:: 2.0" + +msgid "A list of stickers to upload. Must be a maximum of 3." +msgstr "A list of stickers to upload. Must be a maximum of 3." + +msgid "Whether to suppress embeds for the message." +msgstr "Whether to suppress embeds for the message." + +msgid "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" +msgstr "Whether to suppress push and desktop notifications for the message. .. versionadded:: 2.4" + +msgid "Whether to suppress push and desktop notifications for the message." +msgstr "Whether to suppress push and desktop notifications for the message." + +msgid "The poll to send. .. versionadded:: 2.6" +msgstr "The poll to send. .. versionadded:: 2.6" + +msgid "The poll to send." +msgstr "The poll to send." + +msgid "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." +msgstr "The ``files`` list is not of the appropriate size, you specified both ``file`` and ``files``, or you specified both ``embed`` and ``embeds``, or the ``reference`` object is not a :class:`~discord.Message`, :class:`~discord.MessageReference` or :class:`~discord.PartialMessage`." + +msgid "Triggers a *typing* indicator to the destination." +msgstr "Triggers a *typing* indicator to the destination." + +msgid "*Typing* indicator will go away after 10 seconds, or after a message is sent." +msgstr "*Typing* indicator will go away after 10 seconds, or after a message is sent." + +msgid "Converters" +msgstr "Converters" + +msgid "The base class of custom converters that require the :class:`.Context` to be passed to be useful." +msgstr "The base class of custom converters that require the :class:`.Context` to be passed to be useful." + +msgid "This allows you to implement converters that function similar to the special cased ``discord`` classes." +msgstr "This allows you to implement converters that function similar to the special cased ``discord`` classes." + +msgid "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." +msgstr "Classes that derive from this should override the :meth:`~.Converter.convert` method to do its conversion logic. This method must be a :ref:`coroutine `." + +msgid "The method to override to do conversion logic." +msgstr "The method to override to do conversion logic." + +msgid "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." +msgstr "If an error is found while converting, it is recommended to raise a :exc:`.CommandError` derived exception as it will properly propagate to the error handlers." + +msgid "The invocation context that the argument is being used in." +msgstr "The invocation context that the argument is being used in." + +msgid "The argument that is being converted." +msgstr "The argument that is being converted." + +msgid "A generic exception occurred when converting the argument." +msgstr "A generic exception occurred when converting the argument." + +msgid "The converter failed to convert the argument." +msgstr "The converter failed to convert the argument." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`T\\_co\\`\\`\\, covariant\\=True\\)`" + +msgid "Converts to a :class:`~discord.Object`." +msgstr "Converts to a :class:`~discord.Object`." + +msgid "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." +msgstr "The argument must follow the valid ID or mention formats (e.g. `<@80088516616269824>`)." + +msgid "The lookup strategy is as follows (in order):" +msgstr "The lookup strategy is as follows (in order):" + +msgid "Lookup by ID." +msgstr "Lookup by ID." + +msgid "Lookup by member, role, or channel mention." +msgstr "Lookup by member, role, or channel mention." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.object.Object\\``" + +msgid "Converts to a :class:`~discord.Member`." +msgstr "Converts to a :class:`~discord.Member`." + +msgid "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." +msgstr "All lookups are via the local guild. If in a DM context, then the lookup is done by the global cache." + +msgid "Lookup by mention." +msgstr "Lookup by mention." + +msgid "Lookup by name#discrim" +msgstr "Lookup by name#discrim" + +msgid "Lookup by name" +msgstr "Lookup by name" + +msgid "Lookup by nickname" +msgstr "Lookup by nickname" + +msgid "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.MemberNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." +msgstr "This converter now lazily fetches members from the gateway and HTTP APIs, optionally caching the result if :attr:`.MemberCacheFlags.joined` is enabled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.member.Member\\``" + +msgid "Converts to a :class:`~discord.User`." +msgstr "Converts to a :class:`~discord.User`." + +msgid "All lookups are via the global user cache." +msgstr "All lookups are via the global user cache." + +msgid "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.UserNotFound` instead of generic :exc:`.BadArgument`" + +msgid "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." +msgstr "This converter now lazily fetches users from the HTTP APIs if an ID is passed, and it's not available in cache." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.user.User\\``" + +msgid "Converts to a :class:`discord.Message`." +msgstr "Converts to a :class:`discord.Message`." + +msgid "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "Lookup by \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "Lookup by message ID (the message **must** be in the context channel)" +msgstr "Lookup by message ID (the message **must** be in the context channel)" + +msgid "Lookup by message URL" +msgstr "Lookup by message URL" + +msgid "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound`, :exc:`.MessageNotFound` or :exc:`.ChannelNotReadable` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.Message\\``" + +msgid "Converts to a :class:`discord.PartialMessage`." +msgstr "Converts to a :class:`discord.PartialMessage`." + +msgid "The creation strategy is as follows (in order):" +msgstr "The creation strategy is as follows (in order):" + +msgid "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" +msgstr "By \"{channel ID}-{message ID}\" (retrieved by shift-clicking on \"Copy ID\")" + +msgid "By message ID (The message is assumed to be in the context channel.)" +msgstr "By message ID (The message is assumed to be in the context channel.)" + +msgid "By message URL" +msgstr "By message URL" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.message.PartialMessage\\``" + +msgid "Converts to a :class:`~discord.abc.GuildChannel`." +msgstr "Converts to a :class:`~discord.abc.GuildChannel`." + +msgid "Lookup by name." +msgstr "Lookup by name." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.abc.GuildChannel\\``" + +msgid "Converts to a :class:`~discord.TextChannel`." +msgstr "Converts to a :class:`~discord.TextChannel`." + +msgid "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.ChannelNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.TextChannel\\``" + +msgid "Converts to a :class:`~discord.VoiceChannel`." +msgstr "Converts to a :class:`~discord.VoiceChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.VoiceChannel\\``" + +msgid "Converts to a :class:`~discord.StageChannel`." +msgstr "Converts to a :class:`~discord.StageChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.StageChannel\\``" + +msgid "Converts to a :class:`~discord.CategoryChannel`." +msgstr "Converts to a :class:`~discord.CategoryChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.CategoryChannel\\``" + +msgid "Converts to a :class:`~discord.ForumChannel`." +msgstr "Converts to a :class:`~discord.ForumChannel`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.channel.ForumChannel\\``" + +msgid "Converts to a :class:`~discord.Invite`." +msgstr "Converts to a :class:`~discord.Invite`." + +msgid "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." +msgstr "This is done via an HTTP request using :meth:`.Bot.fetch_invite`." + +msgid "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadInviteArgument` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.invite.Invite\\``" + +msgid "Converts to a :class:`~discord.Guild`." +msgstr "Converts to a :class:`~discord.Guild`." + +msgid "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." +msgstr "Lookup by name. (There is no disambiguation for Guilds with multiple matching names)." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.guild.Guild\\``" + +msgid "Converts to a :class:`~discord.Role`." +msgstr "Converts to a :class:`~discord.Role`." + +msgid "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." +msgstr "All lookups are via the local guild. If in a DM context, the converter raises :exc:`.NoPrivateMessage` exception." + +msgid "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.RoleNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.role.Role\\``" + +msgid "Converts to :class:`~discord.Game`." +msgstr "Converts to :class:`~discord.Game`." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.activity.Game\\``" + +msgid "Converts to a :class:`~discord.Colour`." +msgstr "Converts to a :class:`~discord.Colour`." + +msgid "Add an alias named ColorConverter" +msgstr "Add an alias named ColorConverter" + +msgid "The following formats are accepted:" +msgstr "The following formats are accepted:" + +msgid "``0x``" +msgstr "``0x``" + +msgid "``#``" +msgstr "``#``" + +msgid "``0x#``" +msgstr "``0x#``" + +msgid "``rgb(, , )``" +msgstr "``rgb(, , )``" + +msgid "Any of the ``classmethod`` in :class:`~discord.Colour`" +msgstr "Any of the ``classmethod`` in :class:`~discord.Colour`" + +msgid "The ``_`` in the name can be optionally replaced with spaces." +msgstr "The ``_`` in the name can be optionally replaced with spaces." + +msgid "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." +msgstr "Like CSS, ```` can be either 0-255 or 0-100% and ```` can be either a 6 digit hex number or a 3 digit hex shortcut (e.g. #fff)." + +msgid "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.BadColourArgument` instead of generic :exc:`.BadArgument`" + +msgid "Added support for ``rgb`` function and 3-digit hex shortcuts" +msgstr "Added support for ``rgb`` function and 3-digit hex shortcuts" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.colour.Colour\\``" + +msgid "Converts to a :class:`~discord.Emoji`." +msgstr "Converts to a :class:`~discord.Emoji`." + +msgid "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." +msgstr "All lookups are done for the local guild first, if available. If that lookup fails, then it checks the client's global cache." + +msgid "Lookup by extracting ID from the emoji." +msgstr "Lookup by extracting ID from the emoji." + +msgid "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.EmojiNotFound` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.emoji.Emoji\\``" + +msgid "Converts to a :class:`~discord.PartialEmoji`." +msgstr "Converts to a :class:`~discord.PartialEmoji`." + +msgid "This is done by extracting the animated flag, name and ID from the emoji." +msgstr "This is done by extracting the animated flag, name and ID from the emoji." + +msgid "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" +msgstr "Raise :exc:`.PartialEmojiConversionFailure` instead of generic :exc:`.BadArgument`" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.partial\\_emoji.PartialEmoji\\``" + +msgid "Coverts to a :class:`~discord.Thread`." +msgstr "Coverts to a :class:`~discord.Thread`." + +msgid "All lookups are via the local guild." +msgstr "All lookups are via the local guild." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.threads.Thread\\``" + +msgid "Converts to a :class:`~discord.GuildSticker`." +msgstr "Converts to a :class:`~discord.GuildSticker`." + +msgid "1. Lookup by ID. 3. Lookup by name" +msgstr "1. Lookup by ID. 3. Lookup by name" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.sticker.GuildSticker\\``" + +msgid "Converts the argument to mention scrubbed version of said content." +msgstr "Converts the argument to mention scrubbed version of said content." + +msgid "This behaves similarly to :attr:`~discord.Message.clean_content`." +msgstr "This behaves similarly to :attr:`~discord.Message.clean_content`." + +msgid "Whether to clean channel mentions." +msgstr "Whether to clean channel mentions." + +msgid "Whether to use nicknames when transforming mentions." +msgstr "Whether to use nicknames when transforming mentions." + +msgid "Whether to also escape special markdown characters." +msgstr "Whether to also escape special markdown characters." + +msgid "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" +msgstr "Whether to also remove special markdown characters. This option is not supported with ``escape_markdown``" + +msgid "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." +msgstr "A special converter that greedily consumes arguments until it can't. As a consequence of this behaviour, most input errors are silently discarded, since it is used as an indicator of when to stop parsing." + +msgid "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." +msgstr "When a parser error is met the greedy converter stops converting, undoes the internal string parsing routine, and continues parsing regularly." + +msgid "For example, in the following code:" +msgstr "For example, in the following code:" + +msgid "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." +msgstr "An invocation of ``[p]test 1 2 3 4 5 6 hello`` would pass ``numbers`` with ``[1, 2, 3, 4, 5, 6]`` and ``reason`` with ``hello``\\." + +msgid "For more information, check :ref:`ext_commands_special_converters`." +msgstr "For more information, check :ref:`ext_commands_special_converters`." + +msgid "Runs converters for a given converter, argument, and parameter." +msgstr "Runs converters for a given converter, argument, and parameter." + +msgid "This function does the same work that the library does under the hood." +msgstr "This function does the same work that the library does under the hood." + +msgid "The invocation context to run the converters under." +msgstr "The invocation context to run the converters under." + +msgid "The converter to run, this corresponds to the annotation in the function." +msgstr "The converter to run, this corresponds to the annotation in the function." + +msgid "The argument to convert to." +msgstr "The argument to convert to." + +msgid "The parameter being converted. This is mainly for error reporting." +msgstr "The parameter being converted. This is mainly for error reporting." + +msgid "The resulting conversion." +msgstr "The resulting conversion." + +msgid "The converter failed to convert." +msgstr "The converter failed to convert." + +msgid "Flag Converter" +msgstr "Flag Converter" + +msgid "A converter that allows for a user-friendly flag syntax." +msgstr "A converter that allows for a user-friendly flag syntax." + +msgid "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." +msgstr "The flags are defined using :pep:`526` type annotations similar to the :mod:`dataclasses` Python module. For more information on how this converter works, check the appropriate :ref:`documentation `." + +msgid "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." +msgstr "Returns an iterator of ``(flag_name, flag_value)`` pairs. This allows it to be, for example, constructed as a dict or a list of pairs. Note that aliases are not shown." + +msgid "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." +msgstr "A class parameter to toggle case insensitivity of the flag parsing. If ``True`` then flags are parsed in a case-insensitive manner. Defaults to ``False``." + +msgid "The prefix that all flags must be prefixed with. By default, there is no prefix." +msgstr "The prefix that all flags must be prefixed with. By default, there is no prefix." + +msgid "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." +msgstr "The delimiter that separates a flag's argument from the flag's name. By default, this is ``:``." + +msgid "A mapping of flag name to flag object this converter has." +msgstr "A mapping of flag name to flag object this converter has." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`dict\\`\\\\ \\\\\\[\\:py\\:class\\:\\`str\\`\\, \\:py\\:class\\:\\`\\~discord.ext.commands.flags.Flag\\`\\]`" + +msgid "The method that actually converters an argument to the flag mapping." +msgstr "The method that actually converters an argument to the flag mapping." + +msgid "The flag converter class." +msgstr "The flag converter class." + +msgid "The argument to convert from." +msgstr "The argument to convert from." + +msgid "The flag converter instance with all flags parsed." +msgstr "The flag converter instance with all flags parsed." + +msgid ":class:`FlagConverter`" +msgstr ":class:`FlagConverter`" + +msgid "A flag related parsing error." +msgstr "A flag related parsing error." + +msgid "A command related error." +msgstr "A command related error." + +msgid "Represents a flag parameter for :class:`FlagConverter`." +msgstr "Represents a flag parameter for :class:`FlagConverter`." + +msgid "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." +msgstr "The :func:`~discord.ext.commands.flag` function helps create these flag objects, but it is not necessary to do so. These cannot be constructed manually." + +msgid "The name of the flag." +msgstr "The name of the flag." + +msgid "The aliases of the flag name." +msgstr "The aliases of the flag name." + +msgid "The attribute in the class that corresponds to this flag." +msgstr "The attribute in the class that corresponds to this flag." + +msgid "The default value of the flag, if available." +msgstr "The default value of the flag, if available." + +msgid "Any" +msgstr "Any" + +msgid "The underlying evaluated annotation of the flag." +msgstr "The underlying evaluated annotation of the flag." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments." + +msgid "Whether multiple given values overrides the previous value." +msgstr "Whether multiple given values overrides the previous value." + +msgid "Whether the flag is required." +msgstr "Whether the flag is required." + +msgid "A required flag has no default value." +msgstr "A required flag has no default value." + +msgid "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." +msgstr "Override default functionality and parameters of the underlying :class:`FlagConverter` class attributes." + +msgid "The flag name. If not given, defaults to the attribute name." +msgstr "The flag name. If not given, defaults to the attribute name." + +msgid "Aliases to the flag name. If not given, no aliases are set." +msgstr "Aliases to the flag name. If not given, no aliases are set." + +msgid "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." +msgstr "The default parameter. This could be either a value or a callable that takes :class:`Context` as its sole parameter. If not given then it defaults to the default value given to the attribute." + +msgid "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." +msgstr "The maximum number of arguments the flag can accept. A negative value indicates an unlimited amount of arguments. The default value depends on the annotation given." + +msgid "Whether multiple given values overrides the previous value. The default value depends on the annotation given." +msgstr "Whether multiple given values overrides the previous value. The default value depends on the annotation given." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Exceptions" +msgstr "Exceptions" + +msgid "The base exception type for all command related errors." +msgstr "The base exception type for all command related errors." + +msgid "This inherits from :exc:`discord.DiscordException`." +msgstr "This inherits from :exc:`discord.DiscordException`." + +msgid "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." +msgstr "This exception and exceptions inherited from it are handled in a special way as they are caught and passed into a special event from :class:`.Bot`\\, :func:`.on_command_error`." + +msgid "Exception raised when a Converter class raises non-CommandError." +msgstr "Exception raised when a Converter class raises non-CommandError." + +msgid "This inherits from :exc:`CommandError`." +msgstr "This inherits from :exc:`CommandError`." + +msgid "The converter that failed." +msgstr "The converter that failed." + +msgid ":class:`discord.ext.commands.Converter`" +msgstr ":class:`discord.ext.commands.Converter`" + +msgid "The original exception that was raised. You can also get this via the ``__cause__`` attribute." +msgstr "The original exception that was raised. You can also get this via the ``__cause__`` attribute." + +msgid ":exc:`Exception`" +msgstr ":exc:`Exception`" + +msgid "Exception raised when parsing a command and a parameter that is required is not encountered." +msgstr "Exception raised when parsing a command and a parameter that is required is not encountered." + +msgid "This inherits from :exc:`UserInputError`" +msgstr "This inherits from :exc:`UserInputError`" + +msgid "The argument that is missing." +msgstr "The argument that is missing." + +msgid ":class:`inspect.Parameter`" +msgstr ":class:`inspect.Parameter`" + +msgid "An exception raised when the parser fails to parse a user's input." +msgstr "An exception raised when the parser fails to parse a user's input." + +msgid "This inherits from :exc:`UserInputError`." +msgstr "This inherits from :exc:`UserInputError`." + +msgid "There are child classes that implement more granular parsing errors for i18n purposes." +msgstr "There are child classes that implement more granular parsing errors for i18n purposes." + +msgid "An exception raised when the parser encounters a quote mark inside a non-quoted string." +msgstr "An exception raised when the parser encounters a quote mark inside a non-quoted string." + +msgid "This inherits from :exc:`ArgumentParsingError`." +msgstr "This inherits from :exc:`ArgumentParsingError`." + +msgid "The quote mark that was found inside the non-quoted string." +msgstr "The quote mark that was found inside the non-quoted string." + +msgid "An exception raised when a space is expected after the closing quote in a string but a different character is found." +msgstr "An exception raised when a space is expected after the closing quote in a string but a different character is found." + +msgid "The character found instead of the expected string." +msgstr "The character found instead of the expected string." + +msgid "An exception raised when a quote character is expected but not found." +msgstr "An exception raised when a quote character is expected but not found." + +msgid "The quote character expected." +msgstr "The quote character expected." + +msgid "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." +msgstr "Exception raised when a parsing or conversion failure is encountered on an argument to pass into a command." + +msgid "Exception raised when a :data:`typing.Union` converter fails for all its associated types." +msgstr "Exception raised when a :data:`typing.Union` converter fails for all its associated types." + +msgid "The parameter that failed being converted." +msgstr "The parameter that failed being converted." + +msgid "A tuple of converters attempted in conversion, in order of failure." +msgstr "A tuple of converters attempted in conversion, in order of failure." + +msgid "Tuple[Type, ``...``]" +msgstr "Tuple[Type, ``...``]" + +msgid "A list of errors that were caught from failing the conversion." +msgstr "A list of errors that were caught from failing the conversion." + +msgid "List[:class:`CommandError`]" +msgstr "List[:class:`CommandError`]" + +msgid "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." +msgstr "Exception raised when a :data:`typing.Literal` converter fails for all its associated values." + +msgid "A tuple of values compared against in conversion, in order of failure." +msgstr "A tuple of values compared against in conversion, in order of failure." + +msgid "Tuple[Any, ``...``]" +msgstr "Tuple[Any, ``...``]" + +msgid "Exception raised when an operation does not work outside of private message contexts." +msgstr "Exception raised when an operation does not work outside of private message contexts." + +msgid "This inherits from :exc:`CheckFailure`" +msgstr "This inherits from :exc:`CheckFailure`" + +msgid "Exception raised when an operation does not work in private message contexts." +msgstr "Exception raised when an operation does not work in private message contexts." + +msgid "Exception raised when the predicates in :attr:`.Command.checks` have failed." +msgstr "Exception raised when the predicates in :attr:`.Command.checks` have failed." + +msgid "This inherits from :exc:`CommandError`" +msgstr "This inherits from :exc:`CommandError`" + +msgid "Exception raised when all predicates in :func:`check_any` fail." +msgstr "Exception raised when all predicates in :func:`check_any` fail." + +msgid "This inherits from :exc:`CheckFailure`." +msgstr "This inherits from :exc:`CheckFailure`." + +msgid "A list of errors that were caught during execution." +msgstr "A list of errors that were caught during execution." + +msgid "List[:class:`CheckFailure`]" +msgstr "List[:class:`CheckFailure`]" + +msgid "A list of check predicates that failed." +msgstr "A list of check predicates that failed." + +msgid "List[Callable[[:class:`Context`], :class:`bool`]]" +msgstr "List[Callable[[:class:`Context`], :class:`bool`]]" + +msgid "Exception raised when a command is attempted to be invoked but no command under that name is found." +msgstr "Exception raised when a command is attempted to be invoked but no command under that name is found." + +msgid "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." +msgstr "This is not raised for invalid subcommands, rather just the initial main command that is attempted to be invoked." + +msgid "Exception raised when the command being invoked is disabled." +msgstr "Exception raised when the command being invoked is disabled." + +msgid "Exception raised when the command being invoked raised an exception." +msgstr "Exception raised when the command being invoked raised an exception." + +msgid "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." +msgstr "Exception raised when the command was passed too many arguments and its :attr:`.Command.ignore_extra` attribute was not set to ``True``." + +msgid "The base exception type for errors that involve errors regarding user input." +msgstr "The base exception type for errors that involve errors regarding user input." + +msgid "Exception raised when the command being invoked is on cooldown." +msgstr "Exception raised when the command being invoked is on cooldown." + +msgid "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." +msgstr "A class with attributes ``rate`` and ``per`` similar to the :func:`.cooldown` decorator." + +msgid ":class:`.Cooldown`" +msgstr ":class:`.Cooldown`" + +msgid "The type associated with the cooldown." +msgstr "The type associated with the cooldown." + +msgid ":class:`BucketType`" +msgstr ":class:`BucketType`" + +msgid "The amount of seconds to wait before you can retry again." +msgstr "The amount of seconds to wait before you can retry again." + +msgid "Exception raised when the command being invoked has reached its maximum concurrency." +msgstr "Exception raised when the command being invoked has reached its maximum concurrency." + +msgid "The maximum number of concurrent invokers allowed." +msgstr "The maximum number of concurrent invokers allowed." + +msgid "The bucket type passed to the :func:`.max_concurrency` decorator." +msgstr "The bucket type passed to the :func:`.max_concurrency` decorator." + +msgid ":class:`.BucketType`" +msgstr ":class:`.BucketType`" + +msgid "Exception raised when the message author is not the owner of the bot." +msgstr "Exception raised when the message author is not the owner of the bot." + +msgid "Exception raised when the message provided was not found in the channel." +msgstr "Exception raised when the message provided was not found in the channel." + +msgid "This inherits from :exc:`BadArgument`" +msgstr "This inherits from :exc:`BadArgument`" + +msgid "The message supplied by the caller that was not found" +msgstr "The message supplied by the caller that was not found" + +msgid "Exception raised when the member provided was not found in the bot's cache." +msgstr "Exception raised when the member provided was not found in the bot's cache." + +msgid "The member supplied by the caller that was not found" +msgstr "The member supplied by the caller that was not found" + +msgid "Exception raised when the guild provided was not found in the bot's cache." +msgstr "Exception raised when the guild provided was not found in the bot's cache." + +msgid "The guild supplied by the called that was not found" +msgstr "The guild supplied by the called that was not found" + +msgid "Exception raised when the user provided was not found in the bot's cache." +msgstr "Exception raised when the user provided was not found in the bot's cache." + +msgid "The user supplied by the caller that was not found" +msgstr "The user supplied by the caller that was not found" + +msgid "Exception raised when the bot can not find the channel." +msgstr "Exception raised when the bot can not find the channel." + +msgid "The channel supplied by the caller that was not found" +msgstr "The channel supplied by the caller that was not found" + +msgid "Exception raised when the bot does not have permission to read messages in the channel." +msgstr "Exception raised when the bot does not have permission to read messages in the channel." + +msgid "The channel supplied by the caller that was not readable" +msgstr "The channel supplied by the caller that was not readable" + +msgid "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" +msgstr "Union[:class:`.abc.GuildChannel`, :class:`.Thread`]" + +msgid "Exception raised when the bot can not find the thread." +msgstr "Exception raised when the bot can not find the thread." + +msgid "The thread supplied by the caller that was not found" +msgstr "The thread supplied by the caller that was not found" + +msgid "Exception raised when the colour is not valid." +msgstr "Exception raised when the colour is not valid." + +msgid "The colour supplied by the caller that was not valid" +msgstr "The colour supplied by the caller that was not valid" + +msgid "Exception raised when the bot can not find the role." +msgstr "Exception raised when the bot can not find the role." + +msgid "The role supplied by the caller that was not found" +msgstr "The role supplied by the caller that was not found" + +msgid "Exception raised when the invite is invalid or expired." +msgstr "Exception raised when the invite is invalid or expired." + +msgid "Exception raised when the bot can not find the emoji." +msgstr "Exception raised when the bot can not find the emoji." + +msgid "The emoji supplied by the caller that was not found" +msgstr "The emoji supplied by the caller that was not found" + +msgid "Exception raised when the emoji provided does not match the correct format." +msgstr "Exception raised when the emoji provided does not match the correct format." + +msgid "The emoji supplied by the caller that did not match the regex" +msgstr "The emoji supplied by the caller that did not match the regex" + +msgid "Exception raised when the bot can not find the sticker." +msgstr "Exception raised when the bot can not find the sticker." + +msgid "The sticker supplied by the caller that was not found" +msgstr "The sticker supplied by the caller that was not found" + +msgid "Exception raised when a boolean argument was not convertible." +msgstr "Exception raised when a boolean argument was not convertible." + +msgid "The boolean argument supplied by the caller that is not in the predefined list" +msgstr "The boolean argument supplied by the caller that is not in the predefined list" + +msgid "Exception raised when the command invoker lacks permissions to run a command." +msgstr "Exception raised when the command invoker lacks permissions to run a command." + +msgid "The required permissions that are missing." +msgstr "The required permissions that are missing." + +msgid "Exception raised when the bot's member lacks permissions to run a command." +msgstr "Exception raised when the bot's member lacks permissions to run a command." + +msgid "Exception raised when the command invoker lacks a role to run a command." +msgstr "Exception raised when the command invoker lacks a role to run a command." + +msgid "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." +msgstr "The required role that is missing. This is the parameter passed to :func:`~.commands.has_role`." + +msgid "Union[:class:`str`, :class:`int`]" +msgstr "Union[:class:`str`, :class:`int`]" + +msgid "Exception raised when the bot's member lacks a role to run a command." +msgstr "Exception raised when the bot's member lacks a role to run a command." + +msgid "Exception raised when the command invoker lacks any of the roles specified to run a command." +msgstr "Exception raised when the command invoker lacks any of the roles specified to run a command." + +msgid "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the invoker is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "List[Union[:class:`str`, :class:`int`]]" +msgstr "List[Union[:class:`str`, :class:`int`]]" + +msgid "Exception raised when the bot's member lacks any of the roles specified to run a command." +msgstr "Exception raised when the bot's member lacks any of the roles specified to run a command." + +msgid "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." +msgstr "The roles that the bot's member is missing. These are the parameters passed to :func:`~.commands.has_any_role`." + +msgid "Exception raised when a channel does not have the required NSFW setting." +msgstr "Exception raised when a channel does not have the required NSFW setting." + +msgid "The channel that does not have NSFW enabled." +msgstr "The channel that does not have NSFW enabled." + +msgid "The base exception type for all flag parsing related errors." +msgstr "The base exception type for all flag parsing related errors." + +msgid "This inherits from :exc:`BadArgument`." +msgstr "This inherits from :exc:`BadArgument`." + +msgid "An exception raised when a flag failed to convert a value." +msgstr "An exception raised when a flag failed to convert a value." + +msgid "This inherits from :exc:`FlagError`" +msgstr "This inherits from :exc:`FlagError`" + +msgid "The flag that failed to convert." +msgstr "The flag that failed to convert." + +msgid ":class:`~discord.ext.commands.Flag`" +msgstr ":class:`~discord.ext.commands.Flag`" + +msgid "An exception raised when a flag did not get a value." +msgstr "An exception raised when a flag did not get a value." + +msgid "The flag that did not get a value." +msgstr "The flag that did not get a value." + +msgid "An exception raised when a flag has received too many values." +msgstr "An exception raised when a flag has received too many values." + +msgid "This inherits from :exc:`FlagError`." +msgstr "This inherits from :exc:`FlagError`." + +msgid "The flag that received too many values." +msgstr "The flag that received too many values." + +msgid "The values that were passed." +msgstr "The values that were passed." + +msgid "An exception raised when a required flag was not given." +msgstr "An exception raised when a required flag was not given." + +msgid "The required flag that was not found." +msgstr "The required flag that was not found." + +msgid "An exception raised when the command can't be added because the name is already taken by a different command." +msgstr "An exception raised when the command can't be added because the name is already taken by a different command." + +msgid "This inherits from :exc:`discord.ClientException`" +msgstr "This inherits from :exc:`discord.ClientException`" + +msgid "The command name that had the error." +msgstr "The command name that had the error." + +msgid "Whether the name that conflicts is an alias of the command we try to add." +msgstr "Whether the name that conflicts is an alias of the command we try to add." + +msgid "Exception Hierarchy" +msgstr "Exception Hierarchy" + +msgid ":exc:`~.DiscordException`" +msgstr ":exc:`~.DiscordException`" + +msgid ":exc:`~.commands.CommandError`" +msgstr ":exc:`~.commands.CommandError`" + +msgid ":exc:`~.commands.ConversionError`" +msgstr ":exc:`~.commands.ConversionError`" + +msgid ":exc:`~.commands.UserInputError`" +msgstr ":exc:`~.commands.UserInputError`" + +msgid ":exc:`~.commands.MissingRequiredArgument`" +msgstr ":exc:`~.commands.MissingRequiredArgument`" + +msgid ":exc:`~.commands.TooManyArguments`" +msgstr ":exc:`~.commands.TooManyArguments`" + +msgid ":exc:`~.commands.BadArgument`" +msgstr ":exc:`~.commands.BadArgument`" + +msgid ":exc:`~.commands.MessageNotFound`" +msgstr ":exc:`~.commands.MessageNotFound`" + +msgid ":exc:`~.commands.MemberNotFound`" +msgstr ":exc:`~.commands.MemberNotFound`" + +msgid ":exc:`~.commands.GuildNotFound`" +msgstr ":exc:`~.commands.GuildNotFound`" + +msgid ":exc:`~.commands.UserNotFound`" +msgstr ":exc:`~.commands.UserNotFound`" + +msgid ":exc:`~.commands.ChannelNotFound`" +msgstr ":exc:`~.commands.ChannelNotFound`" + +msgid ":exc:`~.commands.ChannelNotReadable`" +msgstr ":exc:`~.commands.ChannelNotReadable`" + +msgid ":exc:`~.commands.BadColourArgument`" +msgstr ":exc:`~.commands.BadColourArgument`" + +msgid ":exc:`~.commands.RoleNotFound`" +msgstr ":exc:`~.commands.RoleNotFound`" + +msgid ":exc:`~.commands.BadInviteArgument`" +msgstr ":exc:`~.commands.BadInviteArgument`" + +msgid ":exc:`~.commands.EmojiNotFound`" +msgstr ":exc:`~.commands.EmojiNotFound`" + +msgid ":exc:`~.commands.GuildStickerNotFound`" +msgstr ":exc:`~.commands.GuildStickerNotFound`" + +msgid ":exc:`~.commands.PartialEmojiConversionFailure`" +msgstr ":exc:`~.commands.PartialEmojiConversionFailure`" + +msgid ":exc:`~.commands.BadBoolArgument`" +msgstr ":exc:`~.commands.BadBoolArgument`" + +msgid ":exc:`~.commands.ThreadNotFound`" +msgstr ":exc:`~.commands.ThreadNotFound`" + +msgid ":exc:`~.commands.FlagError`" +msgstr ":exc:`~.commands.FlagError`" + +msgid ":exc:`~.commands.BadFlagArgument`" +msgstr ":exc:`~.commands.BadFlagArgument`" + +msgid ":exc:`~.commands.MissingFlagArgument`" +msgstr ":exc:`~.commands.MissingFlagArgument`" + +msgid ":exc:`~.commands.TooManyFlags`" +msgstr ":exc:`~.commands.TooManyFlags`" + +msgid ":exc:`~.commands.MissingRequiredFlag`" +msgstr ":exc:`~.commands.MissingRequiredFlag`" + +msgid ":exc:`~.commands.BadUnionArgument`" +msgstr ":exc:`~.commands.BadUnionArgument`" + +msgid ":exc:`~.commands.BadLiteralArgument`" +msgstr ":exc:`~.commands.BadLiteralArgument`" + +msgid ":exc:`~.commands.ArgumentParsingError`" +msgstr ":exc:`~.commands.ArgumentParsingError`" + +msgid ":exc:`~.commands.UnexpectedQuoteError`" +msgstr ":exc:`~.commands.UnexpectedQuoteError`" + +msgid ":exc:`~.commands.InvalidEndOfQuotedStringError`" +msgstr ":exc:`~.commands.InvalidEndOfQuotedStringError`" + +msgid ":exc:`~.commands.ExpectedClosingQuoteError`" +msgstr ":exc:`~.commands.ExpectedClosingQuoteError`" + +msgid ":exc:`~.commands.CommandNotFound`" +msgstr ":exc:`~.commands.CommandNotFound`" + +msgid ":exc:`~.commands.CheckFailure`" +msgstr ":exc:`~.commands.CheckFailure`" + +msgid ":exc:`~.commands.CheckAnyFailure`" +msgstr ":exc:`~.commands.CheckAnyFailure`" + +msgid ":exc:`~.commands.PrivateMessageOnly`" +msgstr ":exc:`~.commands.PrivateMessageOnly`" + +msgid ":exc:`~.commands.NoPrivateMessage`" +msgstr ":exc:`~.commands.NoPrivateMessage`" + +msgid ":exc:`~.commands.NotOwner`" +msgstr ":exc:`~.commands.NotOwner`" + +msgid ":exc:`~.commands.MissingPermissions`" +msgstr ":exc:`~.commands.MissingPermissions`" + +msgid ":exc:`~.commands.BotMissingPermissions`" +msgstr ":exc:`~.commands.BotMissingPermissions`" + +msgid ":exc:`~.commands.MissingRole`" +msgstr ":exc:`~.commands.MissingRole`" + +msgid ":exc:`~.commands.BotMissingRole`" +msgstr ":exc:`~.commands.BotMissingRole`" + +msgid ":exc:`~.commands.MissingAnyRole`" +msgstr ":exc:`~.commands.MissingAnyRole`" + +msgid ":exc:`~.commands.BotMissingAnyRole`" +msgstr ":exc:`~.commands.BotMissingAnyRole`" + +msgid ":exc:`~.commands.NSFWChannelRequired`" +msgstr ":exc:`~.commands.NSFWChannelRequired`" + +msgid ":exc:`~.commands.DisabledCommand`" +msgstr ":exc:`~.commands.DisabledCommand`" + +msgid ":exc:`~.commands.CommandInvokeError`" +msgstr ":exc:`~.commands.CommandInvokeError`" + +msgid ":exc:`~.commands.CommandOnCooldown`" +msgstr ":exc:`~.commands.CommandOnCooldown`" + +msgid ":exc:`~.commands.MaxConcurrencyReached`" +msgstr ":exc:`~.commands.MaxConcurrencyReached`" + +msgid ":exc:`~.ClientException`" +msgstr ":exc:`~.ClientException`" + +msgid ":exc:`~.commands.CommandRegistrationError`" +msgstr ":exc:`~.commands.CommandRegistrationError`" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/ext/commands/cogs.po b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/cogs.po new file mode 100644 index 0000000000..324861b347 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/cogs.po @@ -0,0 +1,133 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Cogs" +msgstr "Cogs" + +msgid "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." +msgstr "There comes a point in your bot's development when you want to organize a collection of commands, listeners, and some state into one class. Cogs allow you to do just that." + +msgid "The gist:" +msgstr "The gist:" + +msgid "Each cog is a Python class that subclasses :class:`.commands.Cog`." +msgstr "Each cog is a Python class that subclasses :class:`.commands.Cog`." + +msgid "Every command is marked with the :func:`.commands.command` decorator." +msgstr "Every command is marked with the :func:`.commands.command` decorator." + +msgid "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." +msgstr "Every listener is marked with the :meth:`.commands.Cog.listener` decorator." + +msgid "Cogs are then registered with the :meth:`.Bot.add_cog` call." +msgstr "Cogs are then registered with the :meth:`.Bot.add_cog` call." + +msgid "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." +msgstr "Cogs are subsequently removed with the :meth:`.Bot.remove_cog` call." + +msgid "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." +msgstr "It should be noted that cogs are typically used alongside with :ref:`ext_commands_extensions`." + +msgid "Quick Example" +msgstr "Quick Example" + +msgid "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." +msgstr "This example cog defines a ``Greetings`` category for your commands, with a single :ref:`command ` named ``hello`` as well as a listener to listen to an :ref:`Event `." + +msgid "A couple of technical notes to take into consideration:" +msgstr "A couple of technical notes to take into consideration:" + +msgid "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." +msgstr "All listeners must be explicitly marked via decorator, :meth:`~.commands.Cog.listener`." + +msgid "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." +msgstr "The name of the cog is automatically derived from the class name but can be overridden. See :ref:`ext_commands_cogs_meta_options`." + +msgid "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." +msgstr "All commands must now take a ``self`` parameter to allow usage of instance attributes that can be used to maintain state." + +msgid "Cog Registration" +msgstr "Cog Registration" + +msgid "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." +msgstr "Once you have defined your cogs, you need to tell the bot to register the cogs to be used. We do this via the :meth:`~.commands.Bot.add_cog` method." + +msgid "This binds the cog to the bot, adding all commands and listeners to the bot automatically." +msgstr "This binds the cog to the bot, adding all commands and listeners to the bot automatically." + +msgid "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." +msgstr "Note that we reference the cog by name, which we can override through :ref:`ext_commands_cogs_meta_options`. So if we ever want to remove the cog eventually, we would have to do the following." + +msgid "Using Cogs" +msgstr "Using Cogs" + +msgid "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" +msgstr "Just as we remove a cog by its name, we can also retrieve it by its name as well. This allows us to use a cog as an inter-command communication protocol to share data. For example:" + +msgid "Special Methods" +msgstr "Special Methods" + +msgid "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." +msgstr "As cogs get more complicated and have more commands, there comes a point where we want to customise the behaviour of the entire cog or bot." + +msgid "They are as follows:" +msgstr "They are as follows:" + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid ":meth:`.Cog.cog_before_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke`" + +msgid ":meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_after_invoke`" + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "You can visit the reference to get more detail." +msgstr "You can visit the reference to get more detail." + +msgid "Meta Options" +msgstr "Meta Options" + +msgid "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" +msgstr "At the heart of a cog resides a metaclass, :class:`.commands.CogMeta`, which can take various options to customise some of the behaviour. To do this, we pass keyword arguments to the class definition line. For example, to change the cog name we can pass the ``name`` keyword argument as follows:" + +msgid "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." +msgstr "To see more options that you can set, see the documentation of :class:`.commands.CogMeta`." + +msgid "Inspection" +msgstr "Inspection" + +msgid "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." +msgstr "Since cogs ultimately are classes, we have some tools to help us inspect certain properties of the cog." + +msgid "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" +msgstr "To get a :class:`list` of commands, we can use :meth:`.Cog.get_commands`. ::" + +msgid "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" +msgstr "If we want to get the subcommands as well, we can use the :meth:`.Cog.walk_commands` generator. ::" + +msgid "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" +msgstr "To do the same with listeners, we can query them with :meth:`.Cog.get_listeners`. This returns a list of tuples -- the first element being the listener name and the second one being the actual function itself. ::" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/ext/commands/commands.po b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/commands.po new file mode 100644 index 0000000000..85b41501d1 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/commands.po @@ -0,0 +1,592 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Commands" +msgstr "Commands" + +msgid "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." +msgstr "One of the most appealing aspects of the command extension is how easy it is to define commands and how you can arbitrarily nest groups and commands to have a rich sub-command system." + +msgid "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." +msgstr "Using prefixed commands in guilds requires :attr:`Intents.message_content` to be enabled." + +msgid "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." +msgstr "Commands are defined by attaching it to a regular Python function. The command is then invoked by the user using a similar signature to the Python function." + +msgid "For example, in the given command definition:" +msgstr "For example, in the given command definition:" + +msgid "With the following prefix (``$``), it would be invoked by the user via:" +msgstr "With the following prefix (``$``), it would be invoked by the user via:" + +msgid "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." +msgstr "A command must always have at least one parameter, ``ctx``, which is the :class:`.Context` as the first one." + +msgid "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." +msgstr "There are two ways of registering a command. The first one is by using :meth:`.Bot.command` decorator, as seen in the example above. The second is using the :func:`~ext.commands.command` decorator followed by :meth:`.Bot.add_command` on the instance." + +msgid "Essentially, these two are equivalent: ::" +msgstr "Essentially, these two are equivalent: ::" + +msgid "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." +msgstr "Since the :meth:`.Bot.command` decorator is shorter and easier to comprehend, it will be the one used throughout the documentation here." + +msgid "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" +msgstr "Any parameter that is accepted by the :class:`.Command` constructor can be passed into the decorator. For example, to change the name to something other than the function would be as simple as doing this:" + +msgid "Parameters" +msgstr "Parameters" + +msgid "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." +msgstr "Since we define commands by making Python functions, we also define the argument passing behaviour by the function parameters." + +msgid "Certain parameter types do different things in the user side and most forms of parameter types are supported." +msgstr "Certain parameter types do different things in the user side and most forms of parameter types are supported." + +msgid "Positional" +msgstr "Positional" + +msgid "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" +msgstr "The most basic form of parameter passing is the positional parameter. This is where we pass a parameter as-is:" + +msgid "On the bot using side, you can provide positional arguments by just passing a regular string:" +msgstr "On the bot using side, you can provide positional arguments by just passing a regular string:" + +msgid "To make use of a word with spaces in between, you should quote it:" +msgstr "To make use of a word with spaces in between, you should quote it:" + +msgid "As a note of warning, if you omit the quotes, you will only get the first word:" +msgstr "As a note of warning, if you omit the quotes, you will only get the first word:" + +msgid "Since positional arguments are just regular Python arguments, you can have as many as you want:" +msgstr "Since positional arguments are just regular Python arguments, you can have as many as you want:" + +msgid "Variable" +msgstr "Variable" + +msgid "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" +msgstr "Sometimes you want users to pass in an undetermined number of parameters. The library supports this similar to how variable list parameters are done in Python:" + +msgid "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." +msgstr "This allows our user to accept either one or many arguments as they please. This works similar to positional arguments, so multi-word parameters should be quoted." + +msgid "For example, on the bot side:" +msgstr "For example, on the bot side:" + +msgid "If the user wants to input a multi-word argument, they have to quote it like earlier:" +msgstr "If the user wants to input a multi-word argument, they have to quote it like earlier:" + +msgid "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" +msgstr "Do note that similar to the Python function behaviour, a user can technically pass no arguments at all:" + +msgid "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." +msgstr "Since the ``args`` variable is a :class:`py:tuple`, you can do anything you would usually do with one." + +msgid "Keyword-Only Arguments" +msgstr "Keyword-Only Arguments" + +msgid "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" +msgstr "When you want to handle parsing of the argument yourself or do not feel like you want to wrap multi-word user input into quotes, you can ask the library to give you the rest as a single argument. We do this by using a **keyword-only argument**, seen below:" + +msgid "You can only have one keyword-only argument due to parsing ambiguities." +msgstr "You can only have one keyword-only argument due to parsing ambiguities." + +msgid "On the bot side, we do not need to quote input with spaces:" +msgstr "On the bot side, we do not need to quote input with spaces:" + +msgid "Do keep in mind that wrapping it in quotes leaves it as-is:" +msgstr "Do keep in mind that wrapping it in quotes leaves it as-is:" + +msgid "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." +msgstr "By default, the keyword-only arguments are stripped of white space to make it easier to work with. This behaviour can be toggled by the :attr:`.Command.rest_is_raw` argument in the decorator." + +msgid "Invocation Context" +msgstr "Invocation Context" + +msgid "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." +msgstr "As seen earlier, every command must take at least a single parameter, called the :class:`~ext.commands.Context`." + +msgid "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" +msgstr "This parameter gives you access to something called the \"invocation context\". Essentially all the information you need to know how the command was executed. It contains a lot of useful information:" + +msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." +msgstr ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any." + +msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command." +msgstr ":attr:`.Context.message` to fetch the :class:`Message` of the command." + +msgid ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." +msgstr ":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` that called the command." + +msgid ":meth:`.Context.send` to send a message to the channel the command was used in." +msgstr ":meth:`.Context.send` to send a message to the channel the command was used in." + +msgid "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." +msgstr "The context implements the :class:`abc.Messageable` interface, so anything you can do on a :class:`abc.Messageable` you can do on the :class:`~ext.commands.Context`." + +msgid "Converters" +msgstr "Converters" + +msgid "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." +msgstr "Adding bot arguments with function parameters is only the first step in defining your bot's command interface. To actually make use of the arguments, we usually want to convert the data into a target type. We call these :ref:`ext_commands_api_converters`." + +msgid "Converters come in a few flavours:" +msgstr "Converters come in a few flavours:" + +msgid "A regular callable object that takes an argument as a sole parameter and returns a different type." +msgstr "A regular callable object that takes an argument as a sole parameter and returns a different type." + +msgid "These range from your own function, to something like :class:`bool` or :class:`int`." +msgstr "These range from your own function, to something like :class:`bool` or :class:`int`." + +msgid "A custom class that inherits from :class:`~ext.commands.Converter`." +msgstr "A custom class that inherits from :class:`~ext.commands.Converter`." + +msgid "Basic Converters" +msgstr "Basic Converters" + +msgid "At its core, a basic converter is a callable that takes in an argument and turns it into something else." +msgstr "At its core, a basic converter is a callable that takes in an argument and turns it into something else." + +msgid "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" +msgstr "For example, if we wanted to add two numbers together, we could request that they are turned into integers for us by specifying the converter:" + +msgid "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." +msgstr "We specify converters by using something called a **function annotation**. This is a Python 3 exclusive feature that was introduced in :pep:`3107`." + +msgid "This works with any callable, such as a function that would convert a string to all upper-case:" +msgstr "This works with any callable, such as a function that would convert a string to all upper-case:" + +msgid "bool" +msgstr "bool" + +msgid "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" +msgstr "Unlike the other basic converters, the :class:`bool` converter is treated slightly different. Instead of casting directly to the :class:`bool` type, which would result in any non-empty argument returning ``True``, it instead evaluates the argument as ``True`` or ``False`` based on its given content:" + +msgid "Advanced Converters" +msgstr "Advanced Converters" + +msgid "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." +msgstr "Sometimes a basic converter doesn't have enough information that we need. For example, sometimes we want to get some information from the :class:`Message` that called the command or we want to do some asynchronous processing." + +msgid "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." +msgstr "For this, the library provides the :class:`~ext.commands.Converter` interface. This allows you to have access to the :class:`.Context` and have the callable be asynchronous. Defining a custom converter using this interface requires overriding a single method, :meth:`.Converter.convert`." + +msgid "An example converter:" +msgstr "An example converter:" + +msgid "The converter provided can either be constructed or not. Essentially these two are equivalent:" +msgstr "The converter provided can either be constructed or not. Essentially these two are equivalent:" + +msgid "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." +msgstr "Having the possibility of the converter be constructed allows you to set up some state in the converter's ``__init__`` for fine tuning the converter. An example of this is actually in the library, :class:`~ext.commands.clean_content`." + +msgid "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." +msgstr "If a converter fails to convert an argument to its designated target type, the :exc:`.BadArgument` exception must be raised." + +msgid "Inline Advanced Converters" +msgstr "Inline Advanced Converters" + +msgid "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." +msgstr "If we don't want to inherit from :class:`~ext.commands.Converter`, we can still provide a converter that has the advanced functionalities of an advanced converter and save us from specifying two types." + +msgid "For example, a common idiom would be to have a class and a converter for that class:" +msgstr "For example, a common idiom would be to have a class and a converter for that class:" + +msgid "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" +msgstr "This can get tedious, so an inline advanced converter is possible through a :func:`classmethod` inside the type:" + +msgid "Discord Converters" +msgstr "Discord Converters" + +msgid "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." +msgstr "Working with :ref:`discord_api_models` is a fairly common thing when defining commands, as a result the library makes working with them easy." + +msgid "For example, to receive a :class:`Member` you can just pass it as a converter:" +msgstr "For example, to receive a :class:`Member` you can just pass it as a converter:" + +msgid "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." +msgstr "When this command is executed, it attempts to convert the string given into a :class:`Member` and then passes it as a parameter for the function. This works by checking if the string is a mention, an ID, a nickname, a username + discriminator, or just a regular username. The default set of converters have been written to be as easy to use as possible." + +msgid "A lot of discord models work out of the gate as a parameter:" +msgstr "A lot of discord models work out of the gate as a parameter:" + +msgid ":class:`Object` (since v2.0)" +msgstr ":class:`Object` (since v2.0)" + +msgid ":class:`Member`" +msgstr ":class:`Member`" + +msgid ":class:`User`" +msgstr ":class:`User`" + +msgid ":class:`Message` (since v1.1)" +msgstr ":class:`Message` (since v1.1)" + +msgid ":class:`PartialMessage` (since v1.7)" +msgstr ":class:`PartialMessage` (since v1.7)" + +msgid ":class:`abc.GuildChannel` (since 2.0)" +msgstr ":class:`abc.GuildChannel` (since 2.0)" + +msgid ":class:`TextChannel`" +msgstr ":class:`TextChannel`" + +msgid ":class:`VoiceChannel`" +msgstr ":class:`VoiceChannel`" + +msgid ":class:`StageChannel` (since v1.7)" +msgstr ":class:`StageChannel` (since v1.7)" + +msgid ":class:`CategoryChannel`" +msgstr ":class:`CategoryChannel`" + +msgid ":class:`Invite`" +msgstr ":class:`Invite`" + +msgid ":class:`Guild` (since v1.7)" +msgstr ":class:`Guild` (since v1.7)" + +msgid ":class:`Role`" +msgstr ":class:`Role`" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Colour`" +msgstr ":class:`Colour`" + +msgid ":class:`Emoji`" +msgstr ":class:`Emoji`" + +msgid ":class:`PartialEmoji`" +msgstr ":class:`PartialEmoji`" + +msgid ":class:`Thread` (since v2.0)" +msgstr ":class:`Thread` (since v2.0)" + +msgid "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." +msgstr "Having any of these set as the converter will intelligently convert the argument to the appropriate target type you specify." + +msgid "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" +msgstr "Under the hood, these are implemented by the :ref:`ext_commands_adv_converters` interface. A table of the equivalent converter is given below:" + +msgid "Discord Class" +msgstr "Discord Class" + +msgid "Converter" +msgstr "Converter" + +msgid ":class:`Object`" +msgstr ":class:`Object`" + +msgid ":class:`~ext.commands.ObjectConverter`" +msgstr ":class:`~ext.commands.ObjectConverter`" + +msgid ":class:`~ext.commands.MemberConverter`" +msgstr ":class:`~ext.commands.MemberConverter`" + +msgid ":class:`~ext.commands.UserConverter`" +msgstr ":class:`~ext.commands.UserConverter`" + +msgid ":class:`Message`" +msgstr ":class:`Message`" + +msgid ":class:`~ext.commands.MessageConverter`" +msgstr ":class:`~ext.commands.MessageConverter`" + +msgid ":class:`PartialMessage`" +msgstr ":class:`PartialMessage`" + +msgid ":class:`~ext.commands.PartialMessageConverter`" +msgstr ":class:`~ext.commands.PartialMessageConverter`" + +msgid ":class:`.GuildChannel`" +msgstr ":class:`.GuildChannel`" + +msgid ":class:`~ext.commands.GuildChannelConverter`" +msgstr ":class:`~ext.commands.GuildChannelConverter`" + +msgid ":class:`~ext.commands.TextChannelConverter`" +msgstr ":class:`~ext.commands.TextChannelConverter`" + +msgid ":class:`~ext.commands.VoiceChannelConverter`" +msgstr ":class:`~ext.commands.VoiceChannelConverter`" + +msgid ":class:`StageChannel`" +msgstr ":class:`StageChannel`" + +msgid ":class:`~ext.commands.StageChannelConverter`" +msgstr ":class:`~ext.commands.StageChannelConverter`" + +msgid ":class:`~ext.commands.CategoryChannelConverter`" +msgstr ":class:`~ext.commands.CategoryChannelConverter`" + +msgid ":class:`~ext.commands.InviteConverter`" +msgstr ":class:`~ext.commands.InviteConverter`" + +msgid ":class:`Guild`" +msgstr ":class:`Guild`" + +msgid ":class:`~ext.commands.GuildConverter`" +msgstr ":class:`~ext.commands.GuildConverter`" + +msgid ":class:`~ext.commands.RoleConverter`" +msgstr ":class:`~ext.commands.RoleConverter`" + +msgid ":class:`~ext.commands.GameConverter`" +msgstr ":class:`~ext.commands.GameConverter`" + +msgid ":class:`~ext.commands.ColourConverter`" +msgstr ":class:`~ext.commands.ColourConverter`" + +msgid ":class:`~ext.commands.EmojiConverter`" +msgstr ":class:`~ext.commands.EmojiConverter`" + +msgid ":class:`~ext.commands.PartialEmojiConverter`" +msgstr ":class:`~ext.commands.PartialEmojiConverter`" + +msgid ":class:`Thread`" +msgstr ":class:`Thread`" + +msgid ":class:`~ext.commands.ThreadConverter`" +msgstr ":class:`~ext.commands.ThreadConverter`" + +msgid "By providing the converter it allows us to use them as building blocks for another converter:" +msgstr "By providing the converter it allows us to use them as building blocks for another converter:" + +msgid "Special Converters" +msgstr "Special Converters" + +msgid "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." +msgstr "The command extension also has support for certain converters to allow for more advanced and intricate use cases that go beyond the generic linear parsing. These converters allow you to introduce some more relaxed and dynamic grammar to your commands in an easy to use manner." + +msgid "typing.Union" +msgstr "typing.Union" + +msgid "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" +msgstr "A :data:`typing.Union` is a special type hint that allows for the command to take in any of the specific types instead of a singular type. For example, given the following:" + +msgid "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." +msgstr "The ``what`` parameter would either take a :class:`discord.TextChannel` converter or a :class:`discord.Member` converter. The way this works is through a left-to-right order. It first attempts to convert the input to a :class:`discord.TextChannel`, and if it fails it tries to convert it to a :class:`discord.Member`. If all converters fail, then a special error is raised, :exc:`~ext.commands.BadUnionArgument`." + +msgid "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." +msgstr "Note that any valid converter discussed above can be passed in to the argument list of a :data:`typing.Union`." + +msgid "typing.Optional" +msgstr "typing.Optional" + +msgid "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." +msgstr "A :data:`typing.Optional` is a special type hint that allows for \"back-referencing\" behaviour. If the converter fails to parse into the specified type, the parser will skip the parameter and then either ``None`` or the specified default will be passed into the parameter instead. The parser will then continue on to the next parameters and converters, if any." + +msgid "Consider the following example:" +msgstr "Consider the following example:" + +msgid "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." +msgstr "In this example, since the argument could not be converted into an ``int``, the default of ``99`` is passed and the parser resumes handling, which in this case would be to pass it into the ``liquid`` parameter." + +msgid "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." +msgstr "This converter only works in regular positional parameters, not variable parameters or keyword-only parameters." + +msgid "typing.Literal" +msgstr "typing.Literal" + +msgid "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" +msgstr "A :data:`typing.Literal` is a special type hint that requires the passed parameter to be equal to one of the listed values after being converted to the same type. For example, given the following:" + +msgid "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." +msgstr "The ``buy_sell`` parameter must be either the literal string ``\"buy\"`` or ``\"sell\"`` and ``amount`` must convert to the ``int`` ``1`` or ``2``. If ``buy_sell`` or ``amount`` don't match any value, then a special error is raised, :exc:`~.ext.commands.BadLiteralArgument`. Any literal values can be mixed and matched within the same :data:`typing.Literal` converter." + +msgid "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." +msgstr "Note that ``typing.Literal[True]`` and ``typing.Literal[False]`` still follow the :class:`bool` converter rules." + +msgid "Greedy" +msgstr "Greedy" + +msgid "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." +msgstr "The :class:`~ext.commands.Greedy` converter is a generalisation of the :data:`typing.Optional` converter, except applied to a list of arguments. In simple terms, this means that it tries to convert as much as it can until it can't convert any further." + +msgid "When invoked, it allows for any number of members to be passed in:" +msgstr "When invoked, it allows for any number of members to be passed in:" + +msgid "The type passed when using this converter depends on the parameter type that it is being attached to:" +msgstr "The type passed when using this converter depends on the parameter type that it is being attached to:" + +msgid "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." +msgstr "Positional parameter types will receive either the default parameter or a :class:`list` of the converted values." + +msgid "Variable parameter types will be a :class:`tuple` as usual." +msgstr "Variable parameter types will be a :class:`tuple` as usual." + +msgid "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." +msgstr "Keyword-only parameter types will be the same as if :class:`~ext.commands.Greedy` was not passed at all." + +msgid ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." +msgstr ":class:`~ext.commands.Greedy` parameters can also be made optional by specifying an optional value." + +msgid "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" +msgstr "When mixed with the :data:`typing.Optional` converter you can provide simple and expressive command invocation syntaxes:" + +msgid "This command can be invoked any of the following ways:" +msgstr "This command can be invoked any of the following ways:" + +msgid "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." +msgstr "The usage of :class:`~ext.commands.Greedy` and :data:`typing.Optional` are powerful and useful, however as a price, they open you up to some parsing ambiguities that might surprise some people." + +msgid "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." +msgstr "For example, a signature expecting a :data:`typing.Optional` of a :class:`discord.Member` followed by a :class:`int` could catch a member named after a number due to the different ways a :class:`~ext.commands.MemberConverter` decides to fetch members. You should take care to not introduce unintended parsing ambiguities in your code. One technique would be to clamp down the expected syntaxes allowed through custom converters or reordering the parameters to minimise clashes." + +msgid "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." +msgstr "To help aid with some parsing ambiguities, :class:`str`, ``None``, :data:`typing.Optional` and :class:`~ext.commands.Greedy` are forbidden as parameters for the :class:`~ext.commands.Greedy` converter." + +msgid "FlagConverter" +msgstr "FlagConverter" + +msgid "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." +msgstr "A :class:`~ext.commands.FlagConverter` allows the user to specify user-friendly \"flags\" using :pep:`526` type annotations or a syntax more reminiscent of the :mod:`py:dataclasses` module." + +msgid "For example, the following code:" +msgstr "For example, the following code:" + +msgid "Allows the user to invoke the command using a simple flag-like syntax:" +msgstr "Allows the user to invoke the command using a simple flag-like syntax:" + +msgid "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." +msgstr "Flags use a syntax that allows the user to not require quotes when passing in values to the flag. The goal of the flag syntax is to be as user-friendly as possible. This makes flags a good choice for complicated commands that can have multiple knobs to turn or simulating keyword-only parameters in your external command interface. **It is recommended to use keyword-only parameters with the flag converter**. This ensures proper parsing and behaviour with quoting." + +msgid "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." +msgstr "Internally, the :class:`~ext.commands.FlagConverter` class examines the class to find flags. A flag can either be a class variable with a type annotation or a class variable that's been assigned the result of the :func:`~ext.commands.flag` function. These flags are then used to define the interface that your users will use. The annotations correspond to the converters that the flag arguments must adhere to." + +msgid "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" +msgstr "For most use cases, no extra work is required to define flags. However, if customisation is needed to control the flag name or the default value then the :func:`~ext.commands.flag` function can come in handy:" + +msgid "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." +msgstr "This tells the parser that the ``members`` attribute is mapped to a flag named ``member`` and that the default value is an empty list. For greater customisability, the default can either be a value or a callable that takes the :class:`~ext.commands.Context` as a sole parameter. This callable can either be a function or a coroutine." + +msgid "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" +msgstr "In order to customise the flag syntax we also have a few options that can be passed to the class parameter list:" + +msgid "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." +msgstr "Despite the similarities in these examples to command like arguments, the syntax and parser is not a command line parser. The syntax is mainly inspired by Discord's search bar input and as a result all flags need a corresponding value." + +msgid "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." +msgstr "The flag converter is similar to regular commands and allows you to use most types of converters (with the exception of :class:`~ext.commands.Greedy`) as the type annotation. Some extra support is added for specific annotations as described below." + +msgid "typing.List" +msgstr "typing.List" + +msgid "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." +msgstr "If a list is given as a flag annotation it tells the parser that the argument can be passed multiple times." + +msgid "For example, augmenting the example above:" +msgstr "For example, augmenting the example above:" + +msgid "This is called by repeatedly specifying the flag:" +msgstr "This is called by repeatedly specifying the flag:" + +msgid "typing.Tuple" +msgstr "typing.Tuple" + +msgid "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" +msgstr "Since the above syntax can be a bit repetitive when specifying a flag many times, the :class:`py:tuple` type annotation allows for \"greedy-like\" semantics using a variadic tuple:" + +msgid "This allows the previous ``ban`` command to be called like this:" +msgstr "This allows the previous ``ban`` command to be called like this:" + +msgid "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" +msgstr "The :class:`py:tuple` annotation also allows for parsing of pairs. For example, given the following code:" + +msgid "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." +msgstr "Due to potential parsing ambiguities, the parser expects tuple arguments to be quoted if they require spaces. So if one of the inner types is :class:`str` and the argument requires spaces then quotes should be used to disambiguate it from the other element of the tuple." + +msgid "typing.Dict" +msgstr "typing.Dict" + +msgid "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." +msgstr "A :class:`dict` annotation is functionally equivalent to ``List[Tuple[K, V]]`` except with the return type given as a :class:`dict` rather than a :class:`list`." + +msgid "Error Handling" +msgstr "Error Handling" + +msgid "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." +msgstr "When our commands fail to parse we will, by default, receive a noisy error in ``stderr`` of our console that tells us that an error has happened and has been silently ignored." + +msgid "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." +msgstr "In order to handle our errors, we must use something called an error handler. There is a global error handler, called :func:`.on_command_error` which works like any other event in the :ref:`discord-api-events`. This global error handler is called for every error reached." + +msgid "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" +msgstr "Most of the time however, we want to handle an error local to the command itself. Luckily, commands come with local error handlers that allow us to do just that. First we decorate an error handler function with :meth:`.Command.error`:" + +msgid "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." +msgstr "The first parameter of the error handler is the :class:`.Context` while the second one is an exception that is derived from :exc:`~ext.commands.CommandError`. A list of errors is found in the :ref:`ext_commands_api_errors` page of the documentation." + +msgid "Checks" +msgstr "Checks" + +msgid "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." +msgstr "There are cases when we don't want a user to use our commands. They don't have permissions to do so or maybe we blocked them from using our bot earlier. The commands extension comes with full support for these things in a concept called a :ref:`ext_commands_api_checks`." + +msgid "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" +msgstr "A check is a basic predicate that can take in a :class:`.Context` as its sole parameter. Within it, you have the following options:" + +msgid "Return ``True`` to signal that the person can run the command." +msgstr "Return ``True`` to signal that the person can run the command." + +msgid "Return ``False`` to signal that the person cannot run the command." +msgstr "Return ``False`` to signal that the person cannot run the command." + +msgid "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." +msgstr "Raise a :exc:`~ext.commands.CommandError` derived exception to signal the person cannot run the command." + +msgid "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." +msgstr "This allows you to have custom error messages for you to handle in the :ref:`error handlers `." + +msgid "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" +msgstr "To register a check for a command, we would have two ways of doing so. The first is using the :meth:`~ext.commands.check` decorator. For example:" + +msgid "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" +msgstr "This would only evaluate the command if the function ``is_owner`` returns ``True``. Sometimes we re-use a check often and want to split it into its own decorator. To do that we can just add another level of depth:" + +msgid "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" +msgstr "Since an owner check is so common, the library provides it for you (:func:`~ext.commands.is_owner`):" + +msgid "When multiple checks are specified, **all** of them must be ``True``:" +msgstr "When multiple checks are specified, **all** of them must be ``True``:" + +msgid "If any of those checks fail in the example above, then the command will not be run." +msgstr "If any of those checks fail in the example above, then the command will not be run." + +msgid "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" +msgstr "When an error happens, the error is propagated to the :ref:`error handlers `. If you do not raise a custom :exc:`~ext.commands.CommandError` derived exception, then it will get wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:" + +msgid "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" +msgstr "If you want a more robust error system, you can derive from the exception and raise it instead of returning ``False``:" + +msgid "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." +msgstr "Since having a ``guild_only`` decorator is pretty common, it comes built-in via :func:`~ext.commands.guild_only`." + +msgid "Global Checks" +msgstr "Global Checks" + +msgid "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." +msgstr "Sometimes we want to apply a check to **every** command, not just certain commands. The library supports this as well using the global check concept." + +msgid "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." +msgstr "Global checks work similarly to regular checks except they are registered with the :meth:`.Bot.check` decorator." + +msgid "For example, to block all DMs we could do the following:" +msgstr "For example, to block all DMs we could do the following:" + +msgid "Be careful on how you write your global checks, as it could also lock you out of your own bot." +msgstr "Be careful on how you write your global checks, as it could also lock you out of your own bot." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/ext/commands/extensions.po b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/extensions.po new file mode 100644 index 0000000000..4f3fd6efcd --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/extensions.po @@ -0,0 +1,61 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." +msgstr "There comes a time in the bot development when you want to extend the bot functionality at run-time and quickly unload and reload code (also called hot-reloading). The command framework comes with this ability built-in, with a concept called **extensions**." + +msgid "Primer" +msgstr "Primer" + +msgid "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." +msgstr "An extension at its core is a python file with an entry point called ``setup``. This setup must be a plain Python function (not a coroutine). It takes a single parameter -- the :class:`~.commands.Bot` that loads the extension." + +msgid "An example extension looks like this:" +msgstr "An example extension looks like this:" + +msgid "hello.py" +msgstr "hello.py" + +msgid "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." +msgstr "In this example we define a simple command, and when the extension is loaded this command is added to the bot. Now the final step to this is loading the extension, which we do by calling :meth:`.Bot.load_extension`. To load this extension we call ``bot.load_extension('hello')``." + +msgid "Cogs" +msgstr "Cogs" + +msgid "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." +msgstr "Extensions are usually used in conjunction with cogs. To read more about them, check out the documentation, :ref:`ext_commands_cogs`." + +msgid "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." +msgstr "Extension paths are ultimately similar to the import mechanism. What this means is that if there is a folder, then it must be dot-qualified. For example to load an extension in ``plugins/hello.py`` then we use the string ``plugins.hello``." + +msgid "Reloading" +msgstr "Reloading" + +msgid "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." +msgstr "When you make a change to the extension and want to reload the references, the library comes with a function to do this for you, :meth:`.Bot.reload_extension`." + +msgid "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." +msgstr "Once the extension reloads, any changes that we did will be applied. This is useful if we want to add or remove functionality without restarting our bot. If an error occurred during the reloading process, the bot will pretend as if the reload never happened." + +msgid "Cleaning Up" +msgstr "Cleaning Up" + +msgid "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." +msgstr "Although rare, sometimes an extension needs to clean-up or know when it's being unloaded. For cases like these, there is another entry point named ``teardown`` which is similar to ``setup`` except called when the extension is unloaded." + +msgid "basic_ext.py" +msgstr "basic_ext.py" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/ext/commands/index.po b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/index.po new file mode 100644 index 0000000000..d05921587d --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/ext/commands/index.po @@ -0,0 +1,19 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.commands" +msgstr "discord.ext.commands" + +msgid "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." +msgstr "``Pycord`` offers a lower level aspect on interacting with Discord. Often times, the library is used for the creation of bots. However this task can be daunting and confusing to get correctly the first time. Many times there comes a repetition in creating a bot command framework that is extensible, flexible, and powerful. For this reason, ``Pycord`` comes with an extension library that handles this for you." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/ext/pages/index.po b/docs/locales/zh_CN/LC_MESSAGES/ext/pages/index.po new file mode 100644 index 0000000000..19c1622bfa --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/ext/pages/index.po @@ -0,0 +1,649 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.pages" +msgstr "discord.ext.pages" + +msgid "This module provides an easy pagination system with buttons, page groups, and custom view support." +msgstr "This module provides an easy pagination system with buttons, page groups, and custom view support." + +msgid "Example usage in a cog:" +msgstr "Example usage in a cog:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "Page" +msgstr "Page" + +msgid "Represents a page shown in the paginator." +msgstr "Represents a page shown in the paginator." + +msgid "Allows for directly referencing and modifying each page as a class instance." +msgstr "Allows for directly referencing and modifying each page as a class instance." + +msgid "Parameters" +msgstr "Parameters" + +msgid "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." +msgstr "The content of the page. Corresponds to the :class:`discord.Message.content` attribute." + +msgid "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." +msgstr "The embeds of the page. Corresponds to the :class:`discord.Message.embeds` attribute." + +msgid "A list of local files to be shown with the page." +msgstr "A list of local files to be shown with the page." + +msgid "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." +msgstr "The custom view shown when the page is visible. Overrides the `custom_view` attribute of the main paginator." + +msgid "|coro|" +msgstr "|coro|" + +msgid "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." +msgstr "The coroutine associated to a specific page. If `Paginator.page_action()` is used, this coroutine is called." + +msgid "The interaction associated with the callback, if any." +msgstr "The interaction associated with the callback, if any." + +msgid "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." +msgstr "Updates :class:`discord.File` objects so that they can be sent multiple times. This is called internally each time the page is sent." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.file.File\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Gets the content for the page." +msgstr "Gets the content for the page." + +msgid "Gets the embeds for the page." +msgstr "Gets the embeds for the page." + +msgid "Gets the custom view assigned to the page." +msgstr "Gets the custom view assigned to the page." + +msgid "Gets the files associated with the page." +msgstr "Gets the files associated with the page." + +msgid "Paginator" +msgstr "Paginator" + +msgid "Creates a paginator which can be sent as a message and uses buttons for navigation." +msgstr "Creates a paginator which can be sent as a message and uses buttons for navigation." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate. If a list of :class:`PageGroup` objects is provided and `show_menu` is ``False``, only the first page group will be displayed." + +msgid "Whether to show disabled buttons." +msgstr "Whether to show disabled buttons." + +msgid "Whether to show the page indicator when using the default buttons." +msgstr "Whether to show the page indicator when using the default buttons." + +msgid "Whether to show a select menu that allows the user to switch between groups of pages." +msgstr "Whether to show a select menu that allows the user to switch between groups of pages." + +msgid "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." +msgstr "The placeholder text to show in the page group menu when no page group has been selected yet. Defaults to \"Select Page Group\" if not provided." + +msgid "Whether only the original user of the command can change pages." +msgstr "Whether only the original user of the command can change pages." + +msgid "Whether the buttons get disabled when the paginator view times out." +msgstr "Whether the buttons get disabled when the paginator view times out." + +msgid "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" +msgstr "Whether to use the default buttons (i.e. ``first``, ``prev``, ``page_indicator``, ``next``, ``last``)" + +msgid "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." +msgstr "The row where the default paginator buttons are displayed. Has no effect if custom buttons are used." + +msgid "Whether to loop the pages when clicking prev/next while at the first/last page in the list." +msgstr "Whether to loop the pages when clicking prev/next while at the first/last page in the list." + +msgid "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." +msgstr "A custom view whose items are appended below the pagination components. If the currently displayed page has a `custom_view` assigned, it will replace these view components when that page is displayed." + +msgid "Timeout in seconds from last interaction with the paginator before no longer accepting input." +msgstr "Timeout in seconds from last interaction with the paginator before no longer accepting input." + +msgid "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." +msgstr "A list of PaginatorButtons to initialize the Paginator with. If ``use_default_buttons`` is ``True``, this parameter is ignored." + +msgid "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." +msgstr "Whether to automatically trigger the callback associated with a `Page` whenever it is displayed. Has no effect if no callback exists for a `Page`." + +msgid "The page group select menu associated with this paginator." +msgstr "The page group select menu associated with this paginator." + +msgid "type" +msgstr "type" + +msgid "Optional[List[:class:`PaginatorMenu`]]" +msgstr "Optional[List[:class:`PaginatorMenu`]]" + +msgid "List of :class:`PageGroup` objects the user can switch between." +msgstr "List of :class:`PageGroup` objects the user can switch between." + +msgid "Optional[List[:class:`PageGroup`]]" +msgstr "Optional[List[:class:`PageGroup`]]" + +msgid "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." +msgstr "The index of the default page group shown when the paginator is initially sent. Defined by setting ``default`` to ``True`` on a :class:`PageGroup`." + +msgid "Optional[:class:`int`]" +msgstr "Optional[:class:`int`]" + +msgid "A zero-indexed value showing the current page number." +msgstr "A zero-indexed value showing the current page number." + +msgid ":class:`int`" +msgstr ":class:`int`" + +msgid "A zero-indexed value showing the total number of pages." +msgstr "A zero-indexed value showing the total number of pages." + +msgid "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." +msgstr "A dictionary containing the :class:`~PaginatorButton` objects included in this paginator." + +msgid "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" +msgstr "Dict[:class:`str`, Dict[:class:`str`, Union[:class:`~PaginatorButton`, :class:`bool`]]]" + +msgid "The user or member that invoked the paginator." +msgstr "The user or member that invoked the paginator." + +msgid "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" +msgstr "Optional[Union[:class:`~discord.User`, :class:`~discord.Member`]]" + +msgid "The message the paginator is attached to." +msgstr "The message the paginator is attached to." + +msgid "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" +msgstr "Union[:class:`~discord.Message`, :class:`~discord.WebhookMessage`]" + +msgid "Updates the existing :class:`Paginator` instance with the provided options." +msgstr "Updates the existing :class:`Paginator` instance with the provided options." + +msgid "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." +msgstr "The list of :class:`PageGroup` objects, :class:`Page` objects, strings, embeds, or list of embeds to paginate." + +msgid "A custom view whose items are appended below the pagination components." +msgstr "A custom view whose items are appended below the pagination components." + +msgid "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." +msgstr "The interaction to use when updating the paginator. If not provided, the paginator will be updated by using its stored :attr:`message` attribute instead." + +msgid "The initial page number to display when updating the paginator." +msgstr "The initial page number to display when updating the paginator." + +msgid "Disables all buttons when the view times out." +msgstr "Disables all buttons when the view times out." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "Stops the paginator, disabling all of its components." +msgstr "Stops the paginator, disabling all of its components." + +msgid "Whether to disable components added via custom views." +msgstr "Whether to disable components added via custom views." + +msgid "The page content to show after disabling the paginator." +msgstr "The page content to show after disabling the paginator." + +msgid "Cancels the paginator, removing all of its components from the message." +msgstr "Cancels the paginator, removing all of its components from the message." + +msgid "Whether to remove components added via custom views." +msgstr "Whether to remove components added via custom views." + +msgid "The page content to show after canceling the paginator." +msgstr "The page content to show after canceling the paginator." + +msgid "Updates the paginator message to show the specified page number." +msgstr "Updates the paginator message to show the specified page number." + +msgid "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "The page to display. .. note:: Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The page to display." +msgstr "The page to display." + +msgid "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." +msgstr "Page numbers are zero-indexed when referenced internally, but appear as one-indexed when shown to the user." + +msgid "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." +msgstr "The interaction to use when editing the message. If not provided, the message will be edited using the paginator's stored :attr:`message` attribute instead." + +msgid "Returns" +msgstr "Returns" + +msgid "The message associated with the paginator." +msgstr "The message associated with the paginator." + +msgid ":class:`~discord.Message`" +msgstr ":class:`~discord.Message`" + +msgid "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." +msgstr "A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction." + +msgid "This is useful to override if, for example, you want to ensure that the interaction author is a given user." +msgstr "This is useful to override if, for example, you want to ensure that the interaction author is a given user." + +msgid "The default implementation of this returns ``True``." +msgstr "The default implementation of this returns ``True``." + +msgid "If this returns ``False``, :meth:`on_check_failure` is called." +msgstr "If this returns ``False``, :meth:`on_check_failure` is called." + +msgid "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." +msgstr "If an exception occurs within the body then the check is considered a failure and :meth:`on_error` is called." + +msgid "The interaction that occurred." +msgstr "The interaction that occurred." + +msgid "Whether the view children's callbacks should be called." +msgstr "Whether the view children's callbacks should be called." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Adds the default :class:`PaginatorMenu` instance to the paginator." +msgstr "Adds the default :class:`PaginatorMenu` instance to the paginator." + +msgid "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." +msgstr "Adds the full list of default buttons that can be used with the paginator. Includes ``first``, ``prev``, ``page_indicator``, ``next``, and ``last``." + +msgid "Adds a :class:`PaginatorButton` to the paginator." +msgstr "Adds a :class:`PaginatorButton` to the paginator." + +msgid "Removes a :class:`PaginatorButton` from the paginator." +msgstr "Removes a :class:`PaginatorButton` from the paginator." + +msgid "Updates the display state of the buttons (disabled/hidden)" +msgstr "Updates the display state of the buttons (disabled/hidden)" + +msgid "The dictionary of buttons that were updated." +msgstr "The dictionary of buttons that were updated." + +msgid "Updates the custom view shown on the paginator." +msgstr "Updates the custom view shown on the paginator." + +msgid "Returns a converted list of `Page` objects for the given page group based on the content of its pages." +msgstr "Returns a converted list of `Page` objects for the given page group based on the content of its pages." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`list\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\`\\]`" + +msgid "Converts a page into a :class:`Page` object based on its content." +msgstr "Converts a page into a :class:`Page` object based on its content." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~discord.ext.pages.pagination.Page\\``" + +msgid "Triggers the callback associated with the current page, if any." +msgstr "Triggers the callback associated with the current page, if any." + +msgid "The interaction that was used to trigger the page action." +msgstr "The interaction that was used to trigger the page action." + +msgid "Sends a message with the paginated items." +msgstr "Sends a message with the paginated items." + +msgid "A command's invocation context." +msgstr "A command's invocation context." + +msgid "A target where the paginated message should be sent, if different from the original :class:`Context`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`Context`" + +msgid "An optional message shown when the paginator message is sent elsewhere." +msgstr "An optional message shown when the paginator message is sent elsewhere." + +msgid "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." +msgstr "A reference to the :class:`~discord.Message` to which you are replying with the paginator. This can be created using :meth:`~discord.Message.to_reference` or passed directly as a :class:`~discord.Message`. You can control whether this mentions the author of the referenced message using the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions`` or by setting ``mention_author``." + +msgid "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." +msgstr "Controls the mentions being processed in this message. If this is passed, then the object is merged with :attr:`~discord.Client.allowed_mentions`. The merging behaviour only overrides attributes that have been explicitly passed to the object, otherwise it uses the attributes set in :attr:`~discord.Client.allowed_mentions`. If no object is passed at all then the defaults given by :attr:`~discord.Client.allowed_mentions` are used instead." + +msgid "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." +msgstr "If set, overrides the :attr:`~discord.AllowedMentions.replied_user` attribute of ``allowed_mentions``." + +msgid "If set, deletes the paginator after the specified time." +msgstr "If set, deletes the paginator after the specified time." + +msgid "The message that was sent with the paginator." +msgstr "The message that was sent with the paginator." + +msgid "Adds an item to the view." +msgstr "Adds an item to the view." + +msgid "The item to add to the view." +msgstr "The item to add to the view." + +msgid "Raises" +msgstr "Raises" + +msgid "An :class:`Item` was not passed." +msgstr "An :class:`Item` was not passed." + +msgid "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." +msgstr "Maximum number of children has been exceeded (25) or the row the item is trying to be added to is full." + +msgid "Removes all items from the view." +msgstr "Removes all items from the view." + +msgid "Disables all items in the view." +msgstr "Disables all items in the view." + +msgid "A list of items in `self.children` to not disable from the view." +msgstr "A list of items in `self.children` to not disable from the view." + +msgid "Edits an existing message to replace it with the paginator contents." +msgstr "Edits an existing message to replace it with the paginator contents." + +msgid "If invoked from an interaction, you will still need to respond to the interaction." +msgstr "If invoked from an interaction, you will still need to respond to the interaction." + +msgid "The message to edit with the paginator." +msgstr "The message to edit with the paginator." + +msgid "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." +msgstr "Whether to suppress embeds for the message. This removes all the embeds if set to ``True``. If set to ``False`` this brings the embeds back if they were suppressed. Using this parameter requires :attr:`~.Permissions.manage_messages`." + +msgid "If set, changes the user that this paginator belongs to." +msgstr "If set, changes the user that this paginator belongs to." + +msgid "The message that was edited. Returns ``None`` if the operation failed." +msgstr "The message that was edited. Returns ``None`` if the operation failed." + +msgid "Optional[:class:`discord.Message`]" +msgstr "Optional[:class:`discord.Message`]" + +msgid "Enables all items in the view." +msgstr "Enables all items in the view." + +msgid "A list of items in `self.children` to not enable from the view." +msgstr "A list of items in `self.children` to not enable from the view." + +msgid "Converts a message's components into a :class:`View`." +msgstr "Converts a message's components into a :class:`View`." + +msgid "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." +msgstr "The :attr:`.Message.components` of a message are read-only and separate types from those in the ``discord.ui`` namespace. In order to modify and edit message components they must be converted into a :class:`View` first." + +msgid "The message with components to convert into a view." +msgstr "The message with components to convert into a view." + +msgid "The timeout of the converted view." +msgstr "The timeout of the converted view." + +msgid "The converted view. This always returns a :class:`View` and not one of its subclasses." +msgstr "The converted view. This always returns a :class:`View` and not one of its subclasses." + +msgid ":class:`View`" +msgstr ":class:`View`" + +msgid "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." +msgstr "Get an item from the view with the given custom ID. Alias for `utils.get(view.children, custom_id=custom_id)`." + +msgid "The custom_id of the item to get" +msgstr "The custom_id of the item to get" + +msgid "The item with the matching ``custom_id`` if it exists." +msgstr "The item with the matching ``custom_id`` if it exists." + +msgid "Optional[:class:`Item`]" +msgstr "Optional[:class:`Item`]" + +msgid "Whether the view has been added for dispatching purposes." +msgstr "Whether the view has been added for dispatching purposes." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the view has finished interacting." +msgstr "Whether the view has finished interacting." + +msgid "Whether the view is set up as persistent." +msgstr "Whether the view is set up as persistent." + +msgid "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." +msgstr "A persistent view has all their components with a set ``custom_id`` and a :attr:`timeout` set to ``None``." + +msgid "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." +msgstr "|coro| A callback that is called when a :meth:`View.interaction_check` returns ``False``. This can be used to send a response when a check failure occurs." + +msgid "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." +msgstr "A callback that is called when an item's callback or :meth:`interaction_check` fails with an error." + +msgid "The default implementation prints the traceback to stderr." +msgstr "The default implementation prints the traceback to stderr." + +msgid "The exception that was raised." +msgstr "The exception that was raised." + +msgid "The item that failed the dispatch." +msgstr "The item that failed the dispatch." + +msgid "The interaction that led to the failure." +msgstr "The interaction that led to the failure." + +msgid "Removes an item from the view." +msgstr "Removes an item from the view." + +msgid "The item to remove from the view." +msgstr "The item to remove from the view." + +msgid "Stops listening to interaction events from this view." +msgstr "Stops listening to interaction events from this view." + +msgid "This operation cannot be undone." +msgstr "This operation cannot be undone." + +msgid "Waits until the view has finished interacting." +msgstr "Waits until the view has finished interacting." + +msgid "A view is considered finished when :meth:`stop` is called, or it times out." +msgstr "A view is considered finished when :meth:`stop` is called, or it times out." + +msgid "If ``True``, then the view timed out. If ``False`` then the view finished normally." +msgstr "If ``True``, then the view timed out. If ``False`` then the view finished normally." + +msgid "Sends an interaction response or followup with the paginated items." +msgstr "Sends an interaction response or followup with the paginated items." + +msgid "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." +msgstr "The interaction or BridgeContext which invoked the paginator. If passing a BridgeContext object, you cannot make this an ephemeral paginator." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead. .. warning:: If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." +msgstr "Whether the paginator message and its components are ephemeral. If ``target`` is specified, the ephemeral message content will be ``target_message`` instead." + +msgid "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." +msgstr "If your paginator is ephemeral, it cannot have a timeout longer than 15 minutes (and cannot be persistent)." + +msgid "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" +msgstr "A target where the paginated message should be sent, if different from the original :class:`discord.Interaction`" + +msgid "The content of the interaction response shown when the paginator message is sent elsewhere." +msgstr "The content of the interaction response shown when the paginator message is sent elsewhere." + +msgid "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." +msgstr "The :class:`~discord.Message` or :class:`~discord.WebhookMessage` that was sent with the paginator." + +msgid "PaginatorButton" +msgstr "PaginatorButton" + +msgid "Creates a button used to navigate the paginator." +msgstr "Creates a button used to navigate the paginator." + +msgid "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." +msgstr "The type of button being created. Must be one of ``first``, ``prev``, ``next``, ``last``, or ``page_indicator``." + +msgid "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" +msgstr "The label shown on the button. Defaults to a capitalized version of ``button_type`` (e.g. \"Next\", \"Prev\", etc.)" + +msgid "The emoji shown on the button in front of the label." +msgstr "The emoji shown on the button in front of the label." + +msgid "Whether to initially show the button as disabled." +msgstr "Whether to initially show the button as disabled." + +msgid "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." +msgstr "The label shown on the button when ``loop_pages`` is set to ``True`` in the Paginator class." + +msgid "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." +msgstr "The paginator class where this button is being used. Assigned to the button when ``Paginator.add_button`` is called." + +msgid ":class:`Paginator`" +msgstr ":class:`Paginator`" + +msgid "The label of the button, if available." +msgstr "The label of the button, if available." + +msgid "The emoji of the button, if available." +msgstr "The emoji of the button, if available." + +msgid "The style of the button." +msgstr "The style of the button." + +msgid "Whether the button is disabled or not." +msgstr "Whether the button is disabled or not." + +msgid "The coroutine that is called when the navigation button is clicked." +msgstr "The coroutine that is called when the navigation button is clicked." + +msgid "The interaction created by clicking the navigation button." +msgstr "The interaction created by clicking the navigation button." + +msgid "The ID of the button that gets received during an interaction." +msgstr "The ID of the button that gets received during an interaction." + +msgid "If this button is for a URL, it does not have a custom ID." +msgstr "If this button is for a URL, it does not have a custom ID." + +msgid "The ID of the SKU this button refers to." +msgstr "The ID of the SKU this button refers to." + +msgid "The URL this button sends you to." +msgstr "The URL this button sends you to." + +msgid "The underlying view for this item." +msgstr "The underlying view for this item." + +msgid "PaginatorMenu" +msgstr "PaginatorMenu" + +msgid "Creates a select menu used to switch between page groups, which can each have their own set of buttons." +msgstr "Creates a select menu used to switch between page groups, which can each have their own set of buttons." + +msgid "The placeholder text that is shown if nothing is selected." +msgstr "The placeholder text that is shown if nothing is selected." + +msgid "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." +msgstr "The paginator class where this menu is being used. Assigned to the menu when ``Paginator.add_menu`` is called." + +msgid "Adds an option to the select menu." +msgstr "Adds an option to the select menu." + +msgid "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." +msgstr "To append a pre-existing :class:`discord.SelectOption` use the :meth:`append_option` method instead." + +msgid "The label of the option. This is displayed to users. Can only be up to 100 characters." +msgstr "The label of the option. This is displayed to users. Can only be up to 100 characters." + +msgid "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." +msgstr "The value of the option. This is not displayed to users. If not given, defaults to the label. Can only be up to 100 characters." + +msgid "An additional description of the option, if any. Can only be up to 100 characters." +msgstr "An additional description of the option, if any. Can only be up to 100 characters." + +msgid "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." +msgstr "The emoji of the option, if available. This can either be a string representing the custom or unicode emoji or an instance of :class:`.PartialEmoji` or :class:`.Emoji`." + +msgid "Whether this option is selected by default." +msgstr "Whether this option is selected by default." + +msgid "The number of options exceeds 25." +msgstr "The number of options exceeds 25." + +msgid "Appends an option to the select menu." +msgstr "Appends an option to the select menu." + +msgid "The option to append to the select menu." +msgstr "The option to append to the select menu." + +msgid "A list of channel types that can be selected in this menu." +msgstr "A list of channel types that can be selected in this menu." + +msgid "The ID of the select menu that gets received during an interaction." +msgstr "The ID of the select menu that gets received during an interaction." + +msgid "Whether the select is disabled or not." +msgstr "Whether the select is disabled or not." + +msgid "The maximum number of items that must be chosen for this select menu." +msgstr "The maximum number of items that must be chosen for this select menu." + +msgid "The minimum number of items that must be chosen for this select menu." +msgstr "The minimum number of items that must be chosen for this select menu." + +msgid "A list of options that can be selected in this menu." +msgstr "A list of options that can be selected in this menu." + +msgid "The placeholder text that is shown if nothing is selected, if any." +msgstr "The placeholder text that is shown if nothing is selected, if any." + +msgid "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." +msgstr "List[:class:`str`] | List[:class:`discord.Member` | :class:`discord.User`]] | List[:class:`discord.Role`]] | List[:class:`discord.Member` | :class:`discord.User` | :class:`discord.Role`]] | List[:class:`discord.abc.GuildChannel`] | None: A list of values that have been selected by the user. This will be ``None`` if the select has not been interacted with yet." + +msgid "The coroutine that is called when a menu option is selected." +msgstr "The coroutine that is called when a menu option is selected." + +msgid "The interaction created by selecting the menu option." +msgstr "The interaction created by selecting the menu option." + +msgid "PageGroup" +msgstr "PageGroup" + +msgid "Creates a group of pages which the user can switch between." +msgstr "Creates a group of pages which the user can switch between." + +msgid "Each group of pages can have its own options, custom buttons, custom views, etc." +msgstr "Each group of pages can have its own options, custom buttons, custom views, etc." + +msgid "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." +msgstr "If multiple :class:`PageGroup` objects have different options, they should all be set explicitly when creating each instance." + +msgid "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." +msgstr "The list of :class:`Page` objects, strings, embeds, or list of embeds to include in the page group." + +msgid "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." +msgstr "The label shown on the corresponding PaginatorMenu dropdown option. Also used as the SelectOption value." + +msgid "The description shown on the corresponding PaginatorMenu dropdown option." +msgstr "The description shown on the corresponding PaginatorMenu dropdown option." + +msgid "The emoji shown on the corresponding PaginatorMenu dropdown option." +msgstr "The emoji shown on the corresponding PaginatorMenu dropdown option." + +msgid "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." +msgstr "Whether the page group should be the default page group initially shown when the paginator response is sent. Only one ``PageGroup`` can be the default page group." + +msgid "A custom view whose items are appended below the pagination buttons." +msgstr "A custom view whose items are appended below the pagination buttons." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/ext/tasks/index.po b/docs/locales/zh_CN/LC_MESSAGES/ext/tasks/index.po new file mode 100644 index 0000000000..6236de13f1 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/ext/tasks/index.po @@ -0,0 +1,283 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "discord.ext.tasks" +msgstr "discord.ext.tasks" + +msgid "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" +msgstr "One of the most common operations when making a bot is having a loop run in the background at a specified interval. This pattern is very common but has a lot of things you need to look out for:" + +msgid "How do I handle :exc:`asyncio.CancelledError`?" +msgstr "How do I handle :exc:`asyncio.CancelledError`?" + +msgid "What do I do if the internet goes out?" +msgstr "What do I do if the internet goes out?" + +msgid "What is the maximum number of seconds I can sleep anyway?" +msgstr "What is the maximum number of seconds I can sleep anyway?" + +msgid "The goal of this Pycord extension is to abstract all these worries away from you." +msgstr "The goal of this Pycord extension is to abstract all these worries away from you." + +msgid "Recipes" +msgstr "Recipes" + +msgid "A simple background task in a :class:`~discord.ext.commands.Cog`:" +msgstr "A simple background task in a :class:`~discord.ext.commands.Cog`:" + +msgid "Adding an exception to handle during reconnect:" +msgstr "Adding an exception to handle during reconnect:" + +msgid "Looping a certain amount of times before exiting:" +msgstr "Looping a certain amount of times before exiting:" + +msgid "Waiting until the bot is ready before the loop starts:" +msgstr "Waiting until the bot is ready before the loop starts:" + +msgid "Doing something during cancellation:" +msgstr "Doing something during cancellation:" + +msgid "API Reference" +msgstr "API Reference" + +msgid "A background task helper that abstracts the loop and reconnection logic for you." +msgstr "A background task helper that abstracts the loop and reconnection logic for you." + +msgid "The main interface to create this is through :func:`loop`." +msgstr "The main interface to create this is through :func:`loop`." + +msgid "Parameters" +msgstr "Parameters" + +msgid "A decorator that register a coroutine to be called after the loop finished running." +msgstr "A decorator that register a coroutine to be called after the loop finished running." + +msgid "The coroutine must take no arguments (except ``self`` in a class context)." +msgstr "The coroutine must take no arguments (except ``self`` in a class context)." + +msgid "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." +msgstr "This coroutine is called even during cancellation. If it is desirable to tell apart whether something was cancelled or not, check to see whether :meth:`is_being_cancelled` is ``True`` or not." + +msgid "The coroutine to register after the loop finishes." +msgstr "The coroutine to register after the loop finishes." + +msgid "Raises" +msgstr "Raises" + +msgid "The function was not a coroutine." +msgstr "The function was not a coroutine." + +msgid "Return type" +msgstr "Return type" + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`FT\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "A decorator that registers a coroutine to be called before the loop starts running." +msgstr "A decorator that registers a coroutine to be called before the loop starts running." + +msgid "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." +msgstr "This is useful if you want to wait for some bot state before the loop starts, such as :meth:`discord.Client.wait_until_ready`." + +msgid "The coroutine to register before the loop runs." +msgstr "The coroutine to register before the loop runs." + +msgid "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." +msgstr "A decorator that registers a coroutine to be called if the task encounters an unhandled exception." + +msgid "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." +msgstr "The coroutine must take only one argument the exception raised (except ``self`` in a class context)." + +msgid "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." +msgstr "By default, this prints to :data:`sys.stderr` however it could be overridden to have a different implementation." + +msgid "The coroutine to register in the event of an unhandled exception." +msgstr "The coroutine to register in the event of an unhandled exception." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`ET\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\, \\:py\\:class\\:\\`BaseException\\`\\]\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)`" + +msgid "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of seconds between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of minutes between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." +msgstr "Read-only value for the number of hours between each iteration. ``None`` if an explicit ``time`` value was passed instead." + +msgid "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." +msgstr "Read-only list for the exact times this loop runs at. ``None`` if relative times were passed instead." + +msgid "The current iteration of the loop." +msgstr "The current iteration of the loop." + +msgid "When the next iteration of the loop will occur." +msgstr "When the next iteration of the loop will occur." + +msgid "|coro|" +msgstr "|coro|" + +msgid "Calls the internal callback that the task holds." +msgstr "Calls the internal callback that the task holds." + +msgid "The arguments to use." +msgstr "The arguments to use." + +msgid "The keyword arguments to use." +msgstr "The keyword arguments to use." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Any\\``" + +msgid "Starts the internal task in the event loop." +msgstr "Starts the internal task in the event loop." + +msgid "A task has already been launched and is running." +msgstr "A task has already been launched and is running." + +msgid "Returns" +msgstr "Returns" + +msgid "The task that has been created." +msgstr "The task that has been created." + +msgid ":class:`asyncio.Task`" +msgstr ":class:`asyncio.Task`" + +msgid "Gracefully stops the task from running." +msgstr "Gracefully stops the task from running." + +msgid "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Unlike :meth:`cancel`\\, this allows the task to finish its current iteration before gracefully exiting. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." +msgstr "If the internal function raises an error that can be handled before finishing then it will retry until it succeeds." + +msgid "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." +msgstr "If this is undesirable, either remove the error handling before stopping via :meth:`clear_exception_types` or use :meth:`cancel` instead." + +msgid "Cancels the internal task, if it is running." +msgstr "Cancels the internal task, if it is running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "A convenience method to restart the internal task." +msgstr "A convenience method to restart the internal task." + +msgid "Due to the way this function works, the task is not returned like :meth:`start`." +msgstr "Due to the way this function works, the task is not returned like :meth:`start`." + +msgid "Adds exception types to be handled during the reconnect logic." +msgstr "Adds exception types to be handled during the reconnect logic." + +msgid "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." +msgstr "By default, the exception types handled are those handled by :meth:`discord.Client.connect`\\, which includes a lot of internet disconnection errors." + +msgid "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." +msgstr "This function is useful if you're interacting with a 3rd party library that raises its own set of exceptions." + +msgid "An argument list of exception classes to handle." +msgstr "An argument list of exception classes to handle." + +msgid "An exception passed is either not a class or not inherited from :class:`BaseException`." +msgstr "An exception passed is either not a class or not inherited from :class:`BaseException`." + +msgid "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" +msgstr "Removes all exception types that are handled. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:obj\\:\\`None\\``" + +msgid "This operation obviously cannot be undone!" +msgstr "This operation obviously cannot be undone!" + +msgid "Removes exception types from being handled during the reconnect logic." +msgstr "Removes exception types from being handled during the reconnect logic." + +msgid "Whether all exceptions were successfully removed." +msgstr "Whether all exceptions were successfully removed." + +msgid ":class:`bool`" +msgstr ":class:`bool`" + +msgid "Fetches the internal task or ``None`` if there isn't one running." +msgstr "Fetches the internal task or ``None`` if there isn't one running." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`\\~\\_asyncio.Task\\`\\\\ \\\\\\[\\:py\\:obj\\:\\`None\\`\\] \\| \\:py\\:obj\\:\\`None\\``" + +msgid "Whether the task is being cancelled." +msgstr "Whether the task is being cancelled." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Whether the internal task has failed. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" +msgstr "Check if the task is currently running. :rtype: :sphinx_autodoc_typehints_type:`\\:py\\:class\\:\\`bool\\``" + +msgid "Changes the interval for the sleep time." +msgstr "Changes the interval for the sleep time." + +msgid "The number of seconds between every iteration." +msgstr "The number of seconds between every iteration." + +msgid "The number of minutes between every iteration." +msgstr "The number of minutes between every iteration." + +msgid "The number of hours between every iteration." +msgstr "The number of hours between every iteration." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters. .. versionadded:: 2.0 .. note:: Duplicate times will be ignored, and only run once." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. This cannot be used in conjunction with the relative time parameters." + +msgid "Duplicate times will be ignored, and only run once." +msgstr "Duplicate times will be ignored, and only run once." + +msgid "An invalid value was given." +msgstr "An invalid value was given." + +msgid "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "An invalid value for the ``time`` parameter was passed, or the ``time`` parameter was passed in conjunction with relative time parameters." + +msgid "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." +msgstr "A decorator that schedules a task in the background for you with optional reconnect logic. The decorator returns a :class:`Loop`." + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time. This cannot be used in conjunction with the relative time parameters. .. note:: Duplicate times will be ignored, and only run once. .. versionadded:: 2.0" + +msgid "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." +msgstr "The exact times to run this loop at. Either a non-empty list or a single value of :class:`datetime.time` should be passed. Timezones are supported. If no timezone is given for the times, it is assumed to represent UTC time." + +msgid "This cannot be used in conjunction with the relative time parameters." +msgstr "This cannot be used in conjunction with the relative time parameters." + +msgid "The number of loops to do, ``None`` if it should be an infinite loop." +msgstr "The number of loops to do, ``None`` if it should be an infinite loop." + +msgid "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." +msgstr "Whether to handle errors and restart the task using an exponential back-off algorithm similar to the one used in :meth:`discord.Client.connect`." + +msgid "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." +msgstr "The loop to use to register the task, if not given defaults to :func:`asyncio.get_event_loop`." + +msgid "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." +msgstr "The function was not a coroutine, an invalid value for the ``time`` parameter was passed, or ``time`` parameter was passed in conjunction with relative time parameters." + +msgid ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" +msgstr ":sphinx_autodoc_typehints_type:`\\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\, \\:py\\:class\\:\\`\\~discord.ext.tasks.Loop\\`\\\\ \\\\\\[\\:py\\:class\\:\\`\\~typing.TypeVar\\`\\\\ \\\\\\(\\`\\`LF\\`\\`\\, bound\\= \\:py\\:data\\:\\`\\~typing.Callable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`...\\\\`\\, \\:py\\:class\\:\\`\\~typing.Awaitable\\`\\\\ \\\\\\[\\:py\\:data\\:\\`\\~typing.Any\\`\\]\\]\\)\\]\\]`" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/faq.po b/docs/locales/zh_CN/LC_MESSAGES/faq.po new file mode 100644 index 0000000000..91d04f72fb --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/faq.po @@ -0,0 +1,313 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Frequently Asked Questions" +msgstr "Frequently Asked Questions" + +msgid "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." +msgstr "This is a list of Frequently Asked Questions regarding using ``Pycord`` and its extension modules. Feel free to suggest a new question or submit one via pull requests." + +msgid "Coroutines" +msgstr "Coroutines" + +msgid "Questions regarding coroutines and asyncio belong here." +msgstr "Questions regarding coroutines and asyncio belong here." + +msgid "What is a coroutine?" +msgstr "What is a coroutine?" + +msgid "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." +msgstr "A |coroutine_link|_ is a function that must be invoked with ``await`` or ``yield from``. When Python encounters an ``await`` it stops the function's execution at that point and works on other things until it comes back to that point and finishes off its work. This allows for your program to be doing multiple things at the same time without using threads or complicated multiprocessing." + +msgid "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" +msgstr "**If you forget to await a coroutine then the coroutine will not run. Never forget to await a coroutine.**" + +msgid "Where can I use ``await``\\?" +msgstr "Where can I use ``await``\\?" + +msgid "You can only use ``await`` inside ``async def`` functions and nowhere else." +msgstr "You can only use ``await`` inside ``async def`` functions and nowhere else." + +msgid "What does \"blocking\" mean?" +msgstr "What does \"blocking\" mean?" + +msgid "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." +msgstr "In asynchronous programming a blocking call is essentially all the parts of the function that are not ``await``. Do not despair however, because not all forms of blocking are bad! Using blocking calls is inevitable, but you must work to make sure that you don't excessively block functions. Remember, if you block for too long then your bot will freeze since it has not stopped the function's execution at that point to do other things." + +msgid "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." +msgstr "If logging is enabled, this library will attempt to warn you that blocking is occurring with the message: ``Heartbeat blocked for more than N seconds.`` See :ref:`logging_setup` for details on enabling logging." + +msgid "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" +msgstr "A common source of blocking for too long is something like :func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. Similar to this example: ::" + +msgid "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." +msgstr "Another common source of blocking for too long is using HTTP requests with the famous module :doc:`requests `. While :doc:`requests ` is an amazing module for non-asynchronous programming, it is not a good choice for :mod:`asyncio` because certain requests can block the event loop too long. Instead, use the :doc:`aiohttp ` library which is installed on the side with this library." + +msgid "Consider the following example: ::" +msgstr "Consider the following example: ::" + +msgid "General" +msgstr "General" + +msgid "General questions regarding library usage belong here." +msgstr "General questions regarding library usage belong here." + +msgid "Where can I find usage examples?" +msgstr "Where can I find usage examples?" + +msgid "Example code can be found in the `examples folder `_ in the repository." +msgstr "Example code can be found in the `examples folder `_ in the repository." + +msgid "How do I set the \"Playing\" status?" +msgstr "How do I set the \"Playing\" status?" + +msgid "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." +msgstr "The ``activity`` keyword argument may be passed in the :class:`Client` constructor or :meth:`Client.change_presence`, given an :class:`Activity` object." + +msgid "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." +msgstr "The constructor may be used for static activities, while :meth:`Client.change_presence` may be used to update the activity at runtime." + +msgid "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." +msgstr "It is highly discouraged to use :meth:`Client.change_presence` or API calls in :func:`on_ready` as this event may be called many times while running, not just once." + +msgid "There is a high chance of disconnecting if presences are changed right after connecting." +msgstr "There is a high chance of disconnecting if presences are changed right after connecting." + +msgid "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" +msgstr "The status type (playing, listening, streaming, watching) can be set using the :class:`ActivityType` enum. For memory optimisation purposes, some activities are offered in slimmed-down versions:" + +msgid ":class:`Game`" +msgstr ":class:`Game`" + +msgid ":class:`Streaming`" +msgstr ":class:`Streaming`" + +msgid "Putting both of these pieces of info together, you get the following: ::" +msgstr "Putting both of these pieces of info together, you get the following: ::" + +msgid "How do I send a message to a specific channel?" +msgstr "How do I send a message to a specific channel?" + +msgid "You must fetch the channel directly and then call the appropriate method. Example: ::" +msgstr "You must fetch the channel directly and then call the appropriate method. Example: ::" + +msgid "How do I send a DM?" +msgstr "How do I send a DM?" + +msgid "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" +msgstr "Get the :class:`User` or :class:`Member` object and call :meth:`abc.Messageable.send`. For example: ::" + +msgid "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" +msgstr "If you are responding to an event, such as :func:`on_message`, you already have the :class:`User` object via :attr:`Message.author`: ::" + +msgid "How do I get the ID of a sent message?" +msgstr "How do I get the ID of a sent message?" + +msgid ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" +msgstr ":meth:`abc.Messageable.send` returns the :class:`Message` that was sent. The ID of a message can be accessed via :attr:`Message.id`: ::" + +msgid "How do I upload an image?" +msgstr "How do I upload an image?" + +msgid "To upload something to Discord you have to use the :class:`File` object." +msgstr "To upload something to Discord you have to use the :class:`File` object." + +msgid "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." +msgstr "A :class:`File` accepts two parameters, the file-like object (or file path) and the filename to pass to Discord when uploading." + +msgid "If you want to upload an image it's as simple as: ::" +msgstr "If you want to upload an image it's as simple as: ::" + +msgid "If you have a file-like object you can do as follows: ::" +msgstr "If you have a file-like object you can do as follows: ::" + +msgid "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" +msgstr "To upload multiple files, you can use the ``files`` keyword argument instead of ``file``\\: ::" + +msgid "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" +msgstr "If you want to upload something from a URL, you will have to use an HTTP request using :doc:`aiohttp ` and then pass an :class:`io.BytesIO` instance to :class:`File` like so:" + +msgid "How can I add a reaction to a message?" +msgstr "How can I add a reaction to a message?" + +msgid "You use the :meth:`Message.add_reaction` method." +msgstr "You use the :meth:`Message.add_reaction` method." + +msgid "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" +msgstr "If you want to use unicode emoji, you must pass a valid unicode code point in a string. In your code, you can write this in a few different ways:" + +msgid "``'👍'``" +msgstr "``'👍'``" + +msgid "``'\\U0001F44D'``" +msgstr "``'\\U0001F44D'``" + +msgid "``'\\N{THUMBS UP SIGN}'``" +msgstr "``'\\N{THUMBS UP SIGN}'``" + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." +msgstr "In case you want to use emoji that come from a message, you already get their code points in the content without needing to do anything special. You **cannot** send ``':thumbsup:'`` style shorthands." + +msgid "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." +msgstr "For custom emoji, you should pass an instance of :class:`Emoji`. You can also pass a ``'<:name:id>'`` string, but if you can use said emoji, you should be able to use :meth:`Client.get_emoji` to get an emoji via ID or use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or :attr:`Guild.emojis` collections." + +msgid "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." +msgstr "The name and ID of a custom emoji can be found with the client by prefixing ``:custom_emoji:`` with a backslash. For example, sending the message ``\\:python3:`` with the client will result in ``<:python3:232720527448342530>``." + +msgid "How do I pass a coroutine to the player's \"after\" function?" +msgstr "How do I pass a coroutine to the player's \"after\" function?" + +msgid "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." +msgstr "The library's music player launches on a separate thread, ergo it does not execute inside a coroutine. This does not mean that it is not possible to call a coroutine in the ``after`` parameter. To do so you must pass a callable that wraps up a couple of aspects." + +msgid "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." +msgstr "The first gotcha that you must be aware of is that calling a coroutine is not a thread-safe operation. Since we are technically in another thread, we must take caution in calling thread-safe operations so things do not bug out. Luckily for us, :mod:`asyncio` comes with a :func:`asyncio.run_coroutine_threadsafe` function that allows us to call a coroutine from another thread." + +msgid "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" +msgstr "However, this function returns a :class:`~concurrent.futures.Future` and to actually call it we have to fetch its result. Putting all of this together we can do the following: ::" + +msgid "How do I run something in the background?" +msgstr "How do I run something in the background?" + +msgid "`Check the background_task.py example. `_" +msgstr "`Check the background_task.py example. `_" + +msgid "How do I get a specific model?" +msgstr "How do I get a specific model?" + +msgid "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" +msgstr "There are multiple ways of doing this. If you have a specific model's ID then you can use one of the following functions:" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid ":meth:`Client.get_message`" +msgstr ":meth:`Client.get_message`" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid ":meth:`Client.get_user`" +msgstr ":meth:`Client.get_user`" + +msgid ":meth:`Client.get_emoji`" +msgstr ":meth:`Client.get_emoji`" + +msgid ":meth:`Guild.get_member`" +msgstr ":meth:`Guild.get_member`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid "The following use an HTTP request:" +msgstr "The following use an HTTP request:" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid ":meth:`Client.fetch_guilds`" +msgstr ":meth:`Client.fetch_guilds`" + +msgid ":meth:`Client.fetch_guild`" +msgstr ":meth:`Client.fetch_guild`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`Guild.fetch_emojis`" +msgstr ":meth:`Guild.fetch_emojis`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." +msgstr "If the functions above do not help you, then use of :func:`utils.find` or :func:`utils.get` would serve some use in finding specific models." + +msgid "How do I make a web request?" +msgstr "How do I make a web request?" + +msgid "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." +msgstr "To make a request, you should use a non-blocking library. This library already uses and requires a 3rd party library for making requests, :doc:`aiohttp `." + +msgid "See `aiohttp's full documentation `_ for more information." +msgstr "See `aiohttp's full documentation `_ for more information." + +msgid "How do I use a local image file for an embed image?" +msgstr "How do I use a local image file for an embed image?" + +msgid "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." +msgstr "Discord special-cases uploading an image attachment and using it within an embed so that it will not display separately, but instead in the embed's thumbnail, image, footer or author icon." + +msgid "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." +msgstr "To do so, upload the image normally with :meth:`abc.Messageable.send`, and set the embed's image URL to ``attachment://image.png``, where ``image.png`` is the filename of the image you will send." + +msgid "Is there an event for audit log entries being created?" +msgstr "Is there an event for audit log entries being created?" + +msgid "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." +msgstr "As of version 2.5, you can receive audit log entries with the :func:`on_audit_log_entry` event." + +msgid "Commands Extension" +msgstr "Commands Extension" + +msgid "Questions regarding ``discord.ext.commands`` belong here." +msgstr "Questions regarding ``discord.ext.commands`` belong here." + +msgid "Why does ``on_message`` make my commands stop working?" +msgstr "Why does ``on_message`` make my commands stop working?" + +msgid "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" +msgstr "Overriding the default provided ``on_message`` forbids any extra commands from running. To fix this, add a ``bot.process_commands(message)`` line at the end of your ``on_message``. For example: ::" + +msgid "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" +msgstr "Alternatively, you can place your ``on_message`` logic into a **listener**. In this setup, you should not manually call ``bot.process_commands()``. This also allows you to do multiple things asynchronously in response to a message. Example::" + +msgid "Why do my arguments require quotes?" +msgstr "Why do my arguments require quotes?" + +msgid "In a simple command defined as: ::" +msgstr "In a simple command defined as: ::" + +msgid "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" +msgstr "Calling it via ``?echo a b c`` will only fetch the first argument and disregard the rest. To fix this you should either call it via ``?echo \"a b c\"`` or change the signature to have \"consume rest\" behaviour. Example: ::" + +msgid "This will allow you to use ``?echo a b c`` without needing the quotes." +msgstr "This will allow you to use ``?echo a b c`` without needing the quotes." + +msgid "How do I get the original ``message``\\?" +msgstr "How do I get the original ``message``\\?" + +msgid "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." +msgstr "The :class:`~ext.commands.Context` contains an attribute, :attr:`~.Context.message` to get the original message." + +msgid "Example: ::" +msgstr "Example: ::" + +msgid "How do I make a subcommand?" +msgstr "How do I make a subcommand?" + +msgid "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." +msgstr "Use the :func:`~ext.commands.group` decorator. This will transform the callback into a :class:`~ext.commands.Group` which will allow you to add commands into the group operating as \"subcommands\". These groups can be arbitrarily nested as well." + +msgid "This could then be used as ``?git push origin master``." +msgstr "This could then be used as ``?git push origin master``." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/index.po b/docs/locales/zh_CN/LC_MESSAGES/index.po new file mode 100644 index 0000000000..f6843e1e93 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/index.po @@ -0,0 +1,115 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Extensions" +msgstr "Extensions" + +msgid "Meta" +msgstr "Meta" + +msgid "Welcome to Pycord" +msgstr "Welcome to Pycord" + +msgid "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." +msgstr "Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord." + +msgid "**Features:**" +msgstr "**Features:**" + +msgid "Modern Pythonic API using ``async``\\/``await`` syntax" +msgstr "Modern Pythonic API using ``async``\\/``await`` syntax" + +msgid "Sane rate limit handling that prevents 429s" +msgstr "Sane rate limit handling that prevents 429s" + +msgid "Command extension to aid with bot creation" +msgstr "Command extension to aid with bot creation" + +msgid "Easy to use with an object oriented design" +msgstr "Easy to use with an object oriented design" + +msgid "Optimised for both speed and memory" +msgstr "Optimised for both speed and memory" + +msgid "Getting started" +msgstr "Getting started" + +msgid "Is this your first time using the library? This is the place to get started!" +msgstr "Is this your first time using the library? This is the place to get started!" + +msgid "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" +msgstr "**First steps:** :doc:`installing` | :doc:`quickstart` | :doc:`logging` | :resource:`Guide `" + +msgid "**Working with Discord:** :doc:`discord` | :doc:`intents`" +msgstr "**Working with Discord:** :doc:`discord` | :doc:`intents`" + +msgid "**Examples:** Many examples are available in the :resource:`repository `." +msgstr "**Examples:** Many examples are available in the :resource:`repository `." + +msgid "Getting help" +msgstr "Getting help" + +msgid "If you're having trouble with something, these resources might help." +msgstr "If you're having trouble with something, these resources might help." + +msgid "Try the :doc:`faq` first, it's got answers to all common questions." +msgstr "Try the :doc:`faq` first, it's got answers to all common questions." + +msgid "Ask us and hang out with us in our :resource:`Discord ` server." +msgstr "Ask us and hang out with us in our :resource:`Discord ` server." + +msgid "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." +msgstr "If you're looking for something specific, try the :ref:`index ` or :ref:`searching `." + +msgid "Report bugs in the :resource:`issue tracker `." +msgstr "Report bugs in the :resource:`issue tracker `." + +msgid "Manuals" +msgstr "Manuals" + +msgid "These pages go into great detail about everything the API can do." +msgstr "These pages go into great detail about everything the API can do." + +msgid "Core API" +msgstr "Core API" + +msgid "These extensions help you during development when it comes to common tasks." +msgstr "These extensions help you during development when it comes to common tasks." + +msgid ":doc:`ext/commands/index` - Bot commands framework" +msgstr ":doc:`ext/commands/index` - Bot commands framework" + +msgid ":doc:`ext/tasks/index` - asyncio.Task helpers" +msgstr ":doc:`ext/tasks/index` - asyncio.Task helpers" + +msgid ":doc:`ext/pages/index` - A pagination extension module" +msgstr ":doc:`ext/pages/index` - A pagination extension module" + +msgid ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" +msgstr ":doc:`ext/bridge/index` - A module that bridges slash commands to prefixed commands" + +msgid "If you're looking for something related to the project itself, it's here." +msgstr "If you're looking for something related to the project itself, it's here." + +msgid ":doc:`changelog` - The changelog for the library." +msgstr ":doc:`changelog` - The changelog for the library." + +msgid ":doc:`version_guarantees` - The version guarantees for the library." +msgstr ":doc:`version_guarantees` - The version guarantees for the library." + +msgid ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." +msgstr ":doc:`migrating_to_v1` - How to migrate from v0.x to v1.x." + +msgid ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." +msgstr ":doc:`migrating_to_v2` - How to migrate from v1.x to v2.x." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/installing.po b/docs/locales/zh_CN/LC_MESSAGES/installing.po new file mode 100644 index 0000000000..f2d0f0d14d --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/installing.po @@ -0,0 +1,100 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Installing Pycord" +msgstr "Installing Pycord" + +msgid "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." +msgstr "This is the documentation for Pycord, a library for Python to aid in creating applications that utilise the Discord API." + +msgid "Prerequisites" +msgstr "Prerequisites" + +msgid "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." +msgstr "Pycord works with Python 3.8 or higher. Support for earlier versions of Python is not provided. Python 2.7 or lower is not supported. Python 3.7 or lower is not supported." + +msgid "Installing" +msgstr "Installing" + +msgid "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" +msgstr "For new features in upcoming versions, you will need to install the pre-release until a stable version is released. ::" + +msgid "For Windows users, this command should be used to install the pre-release: ::" +msgstr "For Windows users, this command should be used to install the pre-release: ::" + +msgid "You can get the library directly from PyPI: ::" +msgstr "You can get the library directly from PyPI: ::" + +msgid "If you are using Windows, then the following should be used instead: ::" +msgstr "If you are using Windows, then the following should be used instead: ::" + +msgid "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." +msgstr "To install additional packages for speedup, you should use ``py-cord[speed]`` instead of ``py-cord``, e.g." + +msgid "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" +msgstr "To get voice support, you should use ``py-cord[voice]`` instead of ``py-cord``, e.g. ::" + +msgid "On Linux environments, installing voice requires getting the following dependencies:" +msgstr "On Linux environments, installing voice requires getting the following dependencies:" + +msgid "`libffi `_" +msgstr "`libffi `_" + +msgid "`libnacl `_" +msgstr "`libnacl `_" + +msgid "`python3-dev `_" +msgstr "`python3-dev `_" + +msgid "For a Debian-based system, the following command will get these dependencies:" +msgstr "For a Debian-based system, the following command will get these dependencies:" + +msgid "Remember to check your permissions!" +msgstr "Remember to check your permissions!" + +msgid "Virtual Environments" +msgstr "Virtual Environments" + +msgid "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." +msgstr "Sometimes you want to keep libraries from polluting system installs or use a different version of libraries than the ones installed on the system. You might also not have permissions to install libraries system-wide. For this purpose, the standard library as of Python 3.3 comes with a concept called \"Virtual Environment\"s to help maintain these separate versions." + +msgid "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." +msgstr "A more in-depth tutorial is found on :doc:`py:tutorial/venv`." + +msgid "However, for the quick and dirty:" +msgstr "However, for the quick and dirty:" + +msgid "Go to your project's working directory:" +msgstr "Go to your project's working directory:" + +msgid "Activate the virtual environment:" +msgstr "Activate the virtual environment:" + +msgid "On Windows you activate it with:" +msgstr "On Windows you activate it with:" + +msgid "Use pip like usual:" +msgstr "Use pip like usual:" + +msgid "Congratulations. You now have a virtual environment all set up." +msgstr "Congratulations. You now have a virtual environment all set up." + +msgid "Basic Concepts" +msgstr "Basic Concepts" + +msgid "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." +msgstr "Pycord revolves around the concept of :ref:`events `. An event is something you listen to and then respond to. For example, when a message happens, you will receive an event about it that you can respond to." + +msgid "A quick example to showcase how events work:" +msgstr "A quick example to showcase how events work:" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/intents.po b/docs/locales/zh_CN/LC_MESSAGES/intents.po new file mode 100644 index 0000000000..7201bbd103 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/intents.po @@ -0,0 +1,238 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "A Primer to Gateway Intents" +msgstr "A Primer to Gateway Intents" + +msgid "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." +msgstr "In version 1.5 comes the introduction of :class:`Intents`. This is a radical change in how bots are written. An intent basically allows a bot to subscribe to specific buckets of events. The events that correspond to each intent is documented in the individual attribute of the :class:`Intents` documentation." + +msgid "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." +msgstr "These intents are passed to the constructor of :class:`Client` or its subclasses (:class:`AutoShardedClient`, :class:`~.AutoShardedBot`, :class:`~.Bot`) with the ``intents`` argument." + +msgid "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." +msgstr "If intents are not passed, then the library defaults to every intent being enabled except the privileged intents, currently :attr:`Intents.members`, :attr:`Intents.presences`, and :attr:`Intents.message_content`." + +msgid "What intents are needed?" +msgstr "What intents are needed?" + +msgid "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." +msgstr "The intents that are necessary for your bot can only be dictated by yourself. Each attribute in the :class:`Intents` class documents what :ref:`events ` it corresponds to and what kind of cache it enables." + +msgid "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" +msgstr "For example, if you want a bot that functions without spammy events like presences or typing then we could do the following:" + +msgid "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." +msgstr "Note that this doesn't enable :attr:`Intents.members` or :attr:`Intents.message_content` since they are privileged intents." + +msgid "Another example showing a bot that only deals with messages and guild information:" +msgstr "Another example showing a bot that only deals with messages and guild information:" + +msgid "Privileged Intents" +msgstr "Privileged Intents" + +msgid "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." +msgstr "With the API change requiring bot owners to specify intents, some intents were restricted further and require more manual steps. These intents are called **privileged intents**." + +msgid "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" +msgstr "A privileged intent is one that requires you to go to the developer portal and manually enable it. To enable privileged intents do the following:" + +msgid "Make sure you're logged on to the `Discord website `_." +msgstr "Make sure you're logged on to the `Discord website `_." + +msgid "Navigate to the `application page `_." +msgstr "Navigate to the `application page `_." + +msgid "Click on the bot you want to enable privileged intents for." +msgstr "Click on the bot you want to enable privileged intents for." + +msgid "Navigate to the bot tab on the left side of the screen." +msgstr "Navigate to the bot tab on the left side of the screen." + +msgid "The bot tab in the application page." +msgstr "The bot tab in the application page." + +msgid "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." +msgstr "Scroll down to the \"Privileged Gateway Intents\" section and enable the ones you want." + +msgid "The privileged gateway intents selector." +msgstr "The privileged gateway intents selector." + +msgid "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." +msgstr "Enabling privileged intents when your bot is in over 100 guilds requires going through `bot verification `_." + +msgid "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." +msgstr "Even if you enable intents through the developer portal, you still have to enable the intents through code as well." + +msgid "Do I need privileged intents?" +msgstr "Do I need privileged intents?" + +msgid "This is a quick checklist to see if you need specific privileged intents." +msgstr "This is a quick checklist to see if you need specific privileged intents." + +msgid "Presence Intent" +msgstr "Presence Intent" + +msgid "Whether you use :attr:`Member.status` at all to track member statuses." +msgstr "Whether you use :attr:`Member.status` at all to track member statuses." + +msgid "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." +msgstr "Whether you use :attr:`Member.activity` or :attr:`Member.activities` to check member's activities." + +msgid "Member Intent" +msgstr "Member Intent" + +msgid "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." +msgstr "Whether you track member joins or member leaves, corresponds to :func:`on_member_join` and :func:`on_member_remove` events." + +msgid "Whether you want to track member updates such as nickname or role changes." +msgstr "Whether you want to track member updates such as nickname or role changes." + +msgid "Whether you want to track user updates such as usernames, avatars, discriminators, etc." +msgstr "Whether you want to track user updates such as usernames, avatars, discriminators, etc." + +msgid "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." +msgstr "Whether you want to request the guild member list through :meth:`Guild.chunk` or :meth:`Guild.fetch_members`." + +msgid "Whether you want high accuracy member cache under :attr:`Guild.members`." +msgstr "Whether you want high accuracy member cache under :attr:`Guild.members`." + +msgid "Message Content Intent" +msgstr "Message Content Intent" + +msgid "Whether you have a message based command system using ext.commands" +msgstr "Whether you have a message based command system using ext.commands" + +msgid "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." +msgstr "Whether you use the :func:`on_message` event for anything using message content, such as auto-moderation." + +msgid "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." +msgstr "Whether you use message content in :func:`on_message_edit`, :func:`on_message_delete`, :func:`on_raw_message_edit`, :func:`on_raw_message_delete`." + +msgid "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." +msgstr "The bot can still receive message contents in DMs, when mentioned in guild messages, and for its own guild messages." + +msgid "Member Cache" +msgstr "Member Cache" + +msgid "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." +msgstr "Along with intents, Discord now further restricts the ability to cache members and expects bot authors to cache as little as is necessary. However, to properly maintain a cache the :attr:`Intents.members` intent is required in order to track the members who left and properly evict them." + +msgid "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." +msgstr "To aid with member cache where we don't need members to be cached, the library now has a :class:`MemberCacheFlags` flag to control the member cache. The documentation page for the class goes over the specific policies that are possible." + +msgid "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" +msgstr "It should be noted that certain things do not need a member cache since Discord will provide full member information if possible. For example:" + +msgid ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." +msgstr ":func:`on_message` will have :attr:`Message.author` be a member even if cache is disabled." + +msgid ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." +msgstr ":func:`on_voice_state_update` will have the ``member`` parameter be a member even if cache is disabled." + +msgid ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." +msgstr ":func:`on_reaction_add` will have the ``user`` parameter be a member when in a guild even if cache is disabled." + +msgid ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." +msgstr ":func:`on_raw_reaction_add` will have :attr:`RawReactionActionEvent.member` be a member when in a guild even if cache is disabled." + +msgid "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." +msgstr "The reaction add events do not contain additional information when in direct messages. This is a Discord limitation." + +msgid "The reaction removal events do not have member information. This is a Discord limitation." +msgstr "The reaction removal events do not have member information. This is a Discord limitation." + +msgid "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." +msgstr "Other events that take a :class:`Member` will require the use of the member cache. If absolute accuracy over the member cache is desirable, then it is advisable to have the :attr:`Intents.members` intent enabled." + +msgid "Retrieving Members" +msgstr "Retrieving Members" + +msgid "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" +msgstr "If the cache is disabled or you disable chunking guilds at startup, we might still need a way to load members. The library offers a few ways to do this:" + +msgid ":meth:`Guild.query_members`" +msgstr ":meth:`Guild.query_members`" + +msgid "Used to query members by a prefix matching nickname or username." +msgstr "Used to query members by a prefix matching nickname or username." + +msgid "This can also be used to query members by their user ID." +msgstr "This can also be used to query members by their user ID." + +msgid "This uses the gateway and not the HTTP." +msgstr "This uses the gateway and not the HTTP." + +msgid ":meth:`Guild.chunk`" +msgstr ":meth:`Guild.chunk`" + +msgid "This can be used to fetch the entire member list through the gateway." +msgstr "This can be used to fetch the entire member list through the gateway." + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid "Used to fetch a member by ID through the HTTP API." +msgstr "Used to fetch a member by ID through the HTTP API." + +msgid ":meth:`Guild.fetch_members`" +msgstr ":meth:`Guild.fetch_members`" + +msgid "used to fetch a large number of members through the HTTP API." +msgstr "used to fetch a large number of members through the HTTP API." + +msgid "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." +msgstr "It should be noted that the gateway has a strict rate limit of 120 requests per 60 seconds." + +msgid "Troubleshooting" +msgstr "Troubleshooting" + +msgid "Some common issues relating to the mandatory intent change." +msgstr "Some common issues relating to the mandatory intent change." + +msgid "Where'd my members go?" +msgstr "Where'd my members go?" + +msgid "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." +msgstr "Due to an :ref:`API change ` Discord is now forcing developers who want member caching to explicitly opt-in to it. This is a Discord mandated change and there is no way to bypass it. In order to get members back you have to explicitly enable the :ref:`members privileged intent ` and change the :attr:`Intents.members` attribute to true." + +msgid "For example:" +msgstr "For example:" + +msgid "Why does ``on_ready`` take so long to fire?" +msgstr "Why does ``on_ready`` take so long to fire?" + +msgid "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." +msgstr "As part of the API change regarding intents, Discord also changed how members are loaded in the beginning. Originally the library could request 75 guilds at once and only request members from guilds that have the :attr:`Guild.large` attribute set to ``True``. With the new intent changes, Discord mandates that we can only send 1 guild per request. This causes a 75x slowdown which is further compounded by the fact that *all* guilds, not just large guilds are being requested." + +msgid "There are a few solutions to fix this." +msgstr "There are a few solutions to fix this." + +msgid "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." +msgstr "The first solution is to request the privileged presences intent along with the privileged members intent and enable both of them. This allows the initial member list to contain online members just like the old gateway. Note that we're still limited to 1 guild per request but the number of guilds we request is significantly reduced." + +msgid "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." +msgstr "The second solution is to disable member chunking by setting ``chunk_guilds_at_startup`` to ``False`` when constructing a client. Then, when chunking for a guild is necessary you can use the various techniques to :ref:`retrieve members `." + +msgid "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." +msgstr "To illustrate the slowdown caused by the API change, take a bot who is in 840 guilds and 95 of these guilds are \"large\" (over 250 members)." + +msgid "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." +msgstr "Under the original system this would result in 2 requests to fetch the member list (75 guilds, 20 guilds) roughly taking 60 seconds. With :attr:`Intents.members` but not :attr:`Intents.presences` this requires 840 requests, with a rate limit of 120 requests per 60 seconds means that due to waiting for the rate limit it totals to around 7 minutes of waiting for the rate limit to fetch all the members. With both :attr:`Intents.members` and :attr:`Intents.presences` we mostly get the old behaviour so we're only required to request for the 95 guilds that are large, this is slightly less than our rate limit so it's close to the original timing to fetch the member list." + +msgid "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." +msgstr "Unfortunately due to this change being required from Discord there is nothing that the library can do to mitigate this." + +msgid "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." +msgstr "If you truly dislike the direction Discord is going with their API, you can contact them via `support `_." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/logging.po b/docs/locales/zh_CN/LC_MESSAGES/logging.po new file mode 100644 index 0000000000..8130d84e9f --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/logging.po @@ -0,0 +1,34 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Setting Up Logging" +msgstr "Setting Up Logging" + +msgid "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" +msgstr "*Pycord* logs errors and debug information via the :mod:`logging` python module. It is strongly recommended that the logging module is configured, as no errors or warnings will be output if it is not set up. Configuration of the ``logging`` module can be as simple as::" + +msgid "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." +msgstr "Placed at the start of the application. This will output the logs from discord as well as other libraries that use the ``logging`` module directly to the console." + +msgid "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." +msgstr "The optional ``level`` argument specifies what level of events to log out and can be any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and ``DEBUG`` and if not specified defaults to ``WARNING``." + +msgid "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" +msgstr "More advanced setups are possible with the :mod:`logging` module. For example to write the logs to a file called ``discord.log`` instead of outputting them to the console the following snippet can be used::" + +msgid "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." +msgstr "This is recommended, especially at verbose levels such as ``INFO`` and ``DEBUG``, as there are a lot of events logged and it would clog the stdout of your program." + +msgid "For more information, check the documentation and tutorial of the :mod:`logging` module." +msgstr "For more information, check the documentation and tutorial of the :mod:`logging` module." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/migrating_to_v1.po b/docs/locales/zh_CN/LC_MESSAGES/migrating_to_v1.po new file mode 100644 index 0000000000..ea81171aff --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/migrating_to_v1.po @@ -0,0 +1,1507 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v1.0" +msgstr "Migrating to v1.0" + +msgid "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." +msgstr "v1.0 is one of the biggest breaking changes in the library due to a complete redesign." + +msgid "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." +msgstr "The amount of changes are so massive and long that for all intents and purposes, it is a completely new library." + +msgid "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." +msgstr "Part of the redesign involves making things more easy to use and natural. Things are done on the :ref:`models ` instead of requiring a :class:`Client` instance to do any work." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.7 or higher, the library had to remove support for Python versions lower than 3.5.3, which essentially means that **support for Python 3.4 is dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major model changes that have happened in v1.0" +msgstr "Below are major model changes that have happened in v1.0" + +msgid "Snowflakes are int" +msgstr "Snowflakes are int" + +msgid "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." +msgstr "Before v1.0, all snowflakes (the ``id`` attribute) were strings. This has been changed to :class:`int`." + +msgid "Quick example: ::" +msgstr "Quick example: ::" + +msgid "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." +msgstr "This change allows for fewer errors when using the Copy ID feature in the official client since you no longer have to wrap it in quotes and allows for optimisation opportunities by allowing ETF to be used instead of JSON internally." + +msgid "Server is now Guild" +msgstr "Server is now Guild" + +msgid "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." +msgstr "The official API documentation calls the \"Server\" concept a \"Guild\" instead. In order to be more consistent with the API documentation when necessary, the model has been renamed to :class:`Guild` and all instances referring to it has been changed as well." + +msgid "A list of changes is as follows:" +msgstr "A list of changes is as follows:" + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``Message.server``" +msgstr "``Message.server``" + +msgid ":attr:`Message.guild`" +msgstr ":attr:`Message.guild`" + +msgid "``Channel.server``" +msgstr "``Channel.server``" + +msgid ":attr:`.GuildChannel.guild`" +msgstr ":attr:`.GuildChannel.guild`" + +msgid "``Client.servers``" +msgstr "``Client.servers``" + +msgid ":attr:`Client.guilds`" +msgstr ":attr:`Client.guilds`" + +msgid "``Client.get_server``" +msgstr "``Client.get_server``" + +msgid ":meth:`Client.get_guild`" +msgstr ":meth:`Client.get_guild`" + +msgid "``Emoji.server``" +msgstr "``Emoji.server``" + +msgid ":attr:`Emoji.guild`" +msgstr ":attr:`Emoji.guild`" + +msgid "``Role.server``" +msgstr "``Role.server``" + +msgid ":attr:`Role.guild`" +msgstr ":attr:`Role.guild`" + +msgid "``Invite.server``" +msgstr "``Invite.server``" + +msgid ":attr:`Invite.guild`" +msgstr ":attr:`Invite.guild`" + +msgid "``Member.server``" +msgstr "``Member.server``" + +msgid ":attr:`Member.guild`" +msgstr ":attr:`Member.guild`" + +msgid "``Permissions.manage_server``" +msgstr "``Permissions.manage_server``" + +msgid ":attr:`Permissions.manage_guild`" +msgstr ":attr:`Permissions.manage_guild`" + +msgid "``VoiceClient.server``" +msgstr "``VoiceClient.server``" + +msgid ":attr:`VoiceClient.guild`" +msgstr ":attr:`VoiceClient.guild`" + +msgid "``Client.create_server``" +msgstr "``Client.create_server``" + +msgid ":meth:`Client.create_guild`" +msgstr ":meth:`Client.create_guild`" + +msgid "Models are Stateful" +msgstr "Models are Stateful" + +msgid "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." +msgstr "As mentioned earlier, a lot of functionality was moved out of :class:`Client` and put into their respective :ref:`model `." + +msgid "A list of these changes is enumerated below." +msgstr "A list of these changes is enumerated below." + +msgid "``Client.add_reaction``" +msgstr "``Client.add_reaction``" + +msgid ":meth:`Message.add_reaction`" +msgstr ":meth:`Message.add_reaction`" + +msgid "``Client.add_roles``" +msgstr "``Client.add_roles``" + +msgid ":meth:`Member.add_roles`" +msgstr ":meth:`Member.add_roles`" + +msgid "``Client.ban``" +msgstr "``Client.ban``" + +msgid ":meth:`Member.ban` or :meth:`Guild.ban`" +msgstr ":meth:`Member.ban` or :meth:`Guild.ban`" + +msgid "``Client.change_nickname``" +msgstr "``Client.change_nickname``" + +msgid ":meth:`Member.edit`" +msgstr ":meth:`Member.edit`" + +msgid "``Client.clear_reactions``" +msgstr "``Client.clear_reactions``" + +msgid ":meth:`Message.clear_reactions`" +msgstr ":meth:`Message.clear_reactions`" + +msgid "``Client.create_channel``" +msgstr "``Client.create_channel``" + +msgid ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" +msgstr ":meth:`Guild.create_text_channel` and :meth:`Guild.create_voice_channel`" + +msgid "``Client.create_custom_emoji``" +msgstr "``Client.create_custom_emoji``" + +msgid ":meth:`Guild.create_custom_emoji`" +msgstr ":meth:`Guild.create_custom_emoji`" + +msgid "``Client.create_invite``" +msgstr "``Client.create_invite``" + +msgid ":meth:`abc.GuildChannel.create_invite`" +msgstr ":meth:`abc.GuildChannel.create_invite`" + +msgid "``Client.create_role``" +msgstr "``Client.create_role``" + +msgid ":meth:`Guild.create_role`" +msgstr ":meth:`Guild.create_role`" + +msgid "``Client.delete_channel``" +msgstr "``Client.delete_channel``" + +msgid ":meth:`abc.GuildChannel.delete`" +msgstr ":meth:`abc.GuildChannel.delete`" + +msgid "``Client.delete_channel_permissions``" +msgstr "``Client.delete_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" +msgstr ":meth:`abc.GuildChannel.set_permissions` with ``overwrite`` set to ``None``" + +msgid "``Client.delete_custom_emoji``" +msgstr "``Client.delete_custom_emoji``" + +msgid ":meth:`Emoji.delete`" +msgstr ":meth:`Emoji.delete`" + +msgid "``Client.delete_invite``" +msgstr "``Client.delete_invite``" + +msgid ":meth:`Invite.delete` or :meth:`Client.delete_invite`" +msgstr ":meth:`Invite.delete` or :meth:`Client.delete_invite`" + +msgid "``Client.delete_message``" +msgstr "``Client.delete_message``" + +msgid ":meth:`Message.delete`" +msgstr ":meth:`Message.delete`" + +msgid "``Client.delete_messages``" +msgstr "``Client.delete_messages``" + +msgid ":meth:`TextChannel.delete_messages`" +msgstr ":meth:`TextChannel.delete_messages`" + +msgid "``Client.delete_role``" +msgstr "``Client.delete_role``" + +msgid ":meth:`Role.delete`" +msgstr ":meth:`Role.delete`" + +msgid "``Client.delete_server``" +msgstr "``Client.delete_server``" + +msgid ":meth:`Guild.delete`" +msgstr ":meth:`Guild.delete`" + +msgid "``Client.edit_channel``" +msgstr "``Client.edit_channel``" + +msgid ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" +msgstr ":meth:`TextChannel.edit` or :meth:`VoiceChannel.edit`" + +msgid "``Client.edit_channel_permissions``" +msgstr "``Client.edit_channel_permissions``" + +msgid ":meth:`abc.GuildChannel.set_permissions`" +msgstr ":meth:`abc.GuildChannel.set_permissions`" + +msgid "``Client.edit_custom_emoji``" +msgstr "``Client.edit_custom_emoji``" + +msgid ":meth:`Emoji.edit`" +msgstr ":meth:`Emoji.edit`" + +msgid "``Client.edit_message``" +msgstr "``Client.edit_message``" + +msgid ":meth:`Message.edit`" +msgstr ":meth:`Message.edit`" + +msgid "``Client.edit_profile``" +msgstr "``Client.edit_profile``" + +msgid ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" +msgstr ":meth:`ClientUser.edit` (you get this from :attr:`Client.user`)" + +msgid "``Client.edit_role``" +msgstr "``Client.edit_role``" + +msgid ":meth:`Role.edit`" +msgstr ":meth:`Role.edit`" + +msgid "``Client.edit_server``" +msgstr "``Client.edit_server``" + +msgid ":meth:`Guild.edit`" +msgstr ":meth:`Guild.edit`" + +msgid "``Client.estimate_pruned_members``" +msgstr "``Client.estimate_pruned_members``" + +msgid ":meth:`Guild.estimate_pruned_members`" +msgstr ":meth:`Guild.estimate_pruned_members`" + +msgid "``Client.get_all_emojis``" +msgstr "``Client.get_all_emojis``" + +msgid ":attr:`Client.emojis`" +msgstr ":attr:`Client.emojis`" + +msgid "``Client.get_bans``" +msgstr "``Client.get_bans``" + +msgid ":meth:`Guild.bans`" +msgstr ":meth:`Guild.bans`" + +msgid "``Client.get_invite``" +msgstr "``Client.get_invite``" + +msgid ":meth:`Client.fetch_invite`" +msgstr ":meth:`Client.fetch_invite`" + +msgid "``Client.get_message``" +msgstr "``Client.get_message``" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid "``Client.get_reaction_users``" +msgstr "``Client.get_reaction_users``" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "``Client.get_user_info``" +msgstr "``Client.get_user_info``" + +msgid ":meth:`Client.fetch_user`" +msgstr ":meth:`Client.fetch_user`" + +msgid "``Client.invites_from``" +msgstr "``Client.invites_from``" + +msgid ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" +msgstr ":meth:`abc.GuildChannel.invites` or :meth:`Guild.invites`" + +msgid "``Client.join_voice_channel``" +msgstr "``Client.join_voice_channel``" + +msgid ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" +msgstr ":meth:`VoiceChannel.connect` (see :ref:`migrating_1_0_voice`)" + +msgid "``Client.kick``" +msgstr "``Client.kick``" + +msgid ":meth:`Guild.kick` or :meth:`Member.kick`" +msgstr ":meth:`Guild.kick` or :meth:`Member.kick`" + +msgid "``Client.leave_server``" +msgstr "``Client.leave_server``" + +msgid ":meth:`Guild.leave`" +msgstr ":meth:`Guild.leave`" + +msgid "``Client.logs_from``" +msgstr "``Client.logs_from``" + +msgid ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" +msgstr ":meth:`abc.Messageable.history` (see :ref:`migrating_1_0_async_iter`)" + +msgid "``Client.move_channel``" +msgstr "``Client.move_channel``" + +msgid "``Client.move_member``" +msgstr "``Client.move_member``" + +msgid "``Client.move_role``" +msgstr "``Client.move_role``" + +msgid "``Client.pin_message``" +msgstr "``Client.pin_message``" + +msgid ":meth:`Message.pin`" +msgstr ":meth:`Message.pin`" + +msgid "``Client.pins_from``" +msgstr "``Client.pins_from``" + +msgid ":meth:`abc.Messageable.pins`" +msgstr ":meth:`abc.Messageable.pins`" + +msgid "``Client.prune_members``" +msgstr "``Client.prune_members``" + +msgid ":meth:`Guild.prune_members`" +msgstr ":meth:`Guild.prune_members`" + +msgid "``Client.purge_from``" +msgstr "``Client.purge_from``" + +msgid ":meth:`TextChannel.purge`" +msgstr ":meth:`TextChannel.purge`" + +msgid "``Client.remove_reaction``" +msgstr "``Client.remove_reaction``" + +msgid ":meth:`Message.remove_reaction`" +msgstr ":meth:`Message.remove_reaction`" + +msgid "``Client.remove_roles``" +msgstr "``Client.remove_roles``" + +msgid ":meth:`Member.remove_roles`" +msgstr ":meth:`Member.remove_roles`" + +msgid "``Client.replace_roles``" +msgstr "``Client.replace_roles``" + +msgid "``Client.send_file``" +msgstr "``Client.send_file``" + +msgid ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" +msgstr ":meth:`abc.Messageable.send` (see :ref:`migrating_1_0_sending_messages`)" + +msgid "``Client.send_message``" +msgstr "``Client.send_message``" + +msgid "``Client.send_typing``" +msgstr "``Client.send_typing``" + +msgid ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" +msgstr ":meth:`abc.Messageable.trigger_typing` (use :meth:`abc.Messageable.typing`)" + +msgid "``Client.server_voice_state``" +msgstr "``Client.server_voice_state``" + +msgid "``Client.start_private_message``" +msgstr "``Client.start_private_message``" + +msgid ":meth:`User.create_dm`" +msgstr ":meth:`User.create_dm`" + +msgid "``Client.unban``" +msgstr "``Client.unban``" + +msgid ":meth:`Guild.unban` or :meth:`Member.unban`" +msgstr ":meth:`Guild.unban` or :meth:`Member.unban`" + +msgid "``Client.unpin_message``" +msgstr "``Client.unpin_message``" + +msgid ":meth:`Message.unpin`" +msgstr ":meth:`Message.unpin`" + +msgid "``Client.wait_for_message``" +msgstr "``Client.wait_for_message``" + +msgid ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" +msgstr ":meth:`Client.wait_for` (see :ref:`migrating_1_0_wait_for`)" + +msgid "``Client.wait_for_reaction``" +msgstr "``Client.wait_for_reaction``" + +msgid "``Client.wait_until_login``" +msgstr "``Client.wait_until_login``" + +msgid "Removed" +msgstr "Removed" + +msgid "``Client.wait_until_ready``" +msgstr "``Client.wait_until_ready``" + +msgid "No change" +msgstr "No change" + +msgid "Property Changes" +msgstr "Property Changes" + +msgid "In order to be a bit more consistent, certain things that were properties were changed to methods instead." +msgstr "In order to be a bit more consistent, certain things that were properties were changed to methods instead." + +msgid "The following are now methods instead of properties (requires parentheses):" +msgstr "The following are now methods instead of properties (requires parentheses):" + +msgid ":meth:`Role.is_default`" +msgstr ":meth:`Role.is_default`" + +msgid ":meth:`Client.is_ready`" +msgstr ":meth:`Client.is_ready`" + +msgid ":meth:`Client.is_closed`" +msgstr ":meth:`Client.is_closed`" + +msgid "Dict Value Change" +msgstr "Dict Value Change" + +msgid "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." +msgstr "Prior to v1.0 some aggregating properties that retrieved models would return \"dict view\" objects." + +msgid "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." +msgstr "As a consequence, when the dict would change size while you would iterate over it, a RuntimeError would be raised and crash the task. To alleviate this, the \"dict view\" objects were changed into lists." + +msgid "The following views were changed to a list:" +msgstr "The following views were changed to a list:" + +msgid ":attr:`Client.users` (new in v1.0)" +msgstr ":attr:`Client.users` (new in v1.0)" + +msgid ":attr:`Client.emojis` (new in v1.0)" +msgstr ":attr:`Client.emojis` (new in v1.0)" + +msgid ":attr:`Guild.channels`" +msgstr ":attr:`Guild.channels`" + +msgid ":attr:`Guild.text_channels` (new in v1.0)" +msgstr ":attr:`Guild.text_channels` (new in v1.0)" + +msgid ":attr:`Guild.voice_channels` (new in v1.0)" +msgstr ":attr:`Guild.voice_channels` (new in v1.0)" + +msgid ":attr:`Guild.emojis`" +msgstr ":attr:`Guild.emojis`" + +msgid ":attr:`Guild.members`" +msgstr ":attr:`Guild.members`" + +msgid "Voice State Changes" +msgstr "Voice State Changes" + +msgid "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." +msgstr "Earlier, in v0.11.0 a :class:`VoiceState` class was added to refer to voice states along with a :attr:`Member.voice` attribute to refer to it." + +msgid "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." +msgstr "However, it was transparent to the user. In an effort to make the library save more memory, the voice state change is now more visible." + +msgid "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." +msgstr "The only way to access voice attributes is via the :attr:`Member.voice` attribute. Note that if the member does not have a voice state this attribute can be ``None``." + +msgid "User and Member Type Split" +msgstr "User and Member Type Split" + +msgid "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." +msgstr "In v1.0 to save memory, :class:`User` and :class:`Member` are no longer inherited. Instead, they are \"flattened\" by having equivalent properties that map out to the functional underlying :class:`User`. Thus, there is no functional change in how they are used. However this breaks :func:`isinstance` checks and thus is something to keep in mind." + +msgid "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." +msgstr "These memory savings were accomplished by having a global :class:`User` cache, and as a positive consequence you can now easily fetch a :class:`User` by their ID by using the new :meth:`Client.get_user`. You can also get a list of all :class:`User` your client can see with :attr:`Client.users`." + +msgid "Channel Type Split" +msgstr "Channel Type Split" + +msgid "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." +msgstr "Prior to v1.0, channels were two different types, ``Channel`` and ``PrivateChannel`` with a ``is_private`` property to help differentiate between them." + +msgid "In order to save memory the channels have been split into 4 different types:" +msgstr "In order to save memory the channels have been split into 4 different types:" + +msgid ":class:`TextChannel` for guild text channels." +msgstr ":class:`TextChannel` for guild text channels." + +msgid ":class:`VoiceChannel` for guild voice channels." +msgstr ":class:`VoiceChannel` for guild voice channels." + +msgid ":class:`DMChannel` for DM channels with members." +msgstr ":class:`DMChannel` for DM channels with members." + +msgid ":class:`GroupChannel` for Group DM channels with members." +msgstr ":class:`GroupChannel` for Group DM channels with members." + +msgid "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." +msgstr "With this split came the removal of the ``is_private`` attribute. You should now use :func:`isinstance`." + +msgid "The types are split into two different :ref:`discord_api_abcs`:" +msgstr "The types are split into two different :ref:`discord_api_abcs`:" + +msgid ":class:`abc.GuildChannel` for guild channels." +msgstr ":class:`abc.GuildChannel` for guild channels." + +msgid ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." +msgstr ":class:`abc.PrivateChannel` for private channels (DMs and group DMs)." + +msgid "So to check if something is a guild channel you would do: ::" +msgstr "So to check if something is a guild channel you would do: ::" + +msgid "And to check if it's a private channel you would do: ::" +msgstr "And to check if it's a private channel you would do: ::" + +msgid "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" +msgstr "Of course, if you're looking for only a specific type you can pass that too, e.g. ::" + +msgid "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." +msgstr "With this type split also came event changes, which are enumerated in :ref:`migrating_1_0_event_changes`." + +msgid "Miscellaneous Model Changes" +msgstr "Miscellaneous Model Changes" + +msgid "There were lots of other things added or removed in the models in general." +msgstr "There were lots of other things added or removed in the models in general." + +msgid "They will be enumerated here." +msgstr "They will be enumerated here." + +msgid "**Removed**" +msgstr "**Removed**" + +msgid ":meth:`Client.login` no longer accepts email and password logins." +msgstr ":meth:`Client.login` no longer accepts email and password logins." + +msgid "Use a token and ``bot=False``." +msgstr "Use a token and ``bot=False``." + +msgid "Use :attr:`Client.emojis` instead." +msgstr "Use :attr:`Client.emojis` instead." + +msgid "``Client.messages``" +msgstr "``Client.messages``" + +msgid "Use read-only :attr:`Client.cached_messages` instead." +msgstr "Use read-only :attr:`Client.cached_messages` instead." + +msgid "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." +msgstr "``Client.wait_for_message`` and ``Client.wait_for_reaction`` are gone." + +msgid "Use :meth:`Client.wait_for` instead." +msgstr "Use :meth:`Client.wait_for` instead." + +msgid "``Channel.voice_members``" +msgstr "``Channel.voice_members``" + +msgid "Use :attr:`VoiceChannel.members` instead." +msgstr "Use :attr:`VoiceChannel.members` instead." + +msgid "``Channel.is_private``" +msgstr "``Channel.is_private``" + +msgid "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." +msgstr "Use ``isinstance`` instead with one of the :ref:`discord_api_abcs` instead." + +msgid "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." +msgstr "e.g. ``isinstance(channel, discord.abc.GuildChannel)`` will check if it isn't a private channel." + +msgid "``Client.accept_invite``" +msgstr "``Client.accept_invite``" + +msgid "There is no replacement for this one. This functionality is deprecated API wise." +msgstr "There is no replacement for this one. This functionality is deprecated API wise." + +msgid "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" +msgstr "``Guild.default_channel`` / ``Server.default_channel`` and ``Channel.is_default``" + +msgid "The concept of a default channel was removed from Discord. See `#329 `_." +msgstr "The concept of a default channel was removed from Discord. See `#329 `_." + +msgid "``Message.edited_timestamp``" +msgstr "``Message.edited_timestamp``" + +msgid "Use :attr:`Message.edited_at` instead." +msgstr "Use :attr:`Message.edited_at` instead." + +msgid "``Message.timestamp``" +msgstr "``Message.timestamp``" + +msgid "Use :attr:`Message.created_at` instead." +msgstr "Use :attr:`Message.created_at` instead." + +msgid "``Colour.to_tuple()``" +msgstr "``Colour.to_tuple()``" + +msgid "Use :meth:`Colour.to_rgb` instead." +msgstr "Use :meth:`Colour.to_rgb` instead." + +msgid "``Permissions.view_audit_logs``" +msgstr "``Permissions.view_audit_logs``" + +msgid "Use :attr:`Permissions.view_audit_log` instead." +msgstr "Use :attr:`Permissions.view_audit_log` instead." + +msgid "``Member.game``" +msgstr "``Member.game``" + +msgid "Use :attr:`Member.activities` instead." +msgstr "Use :attr:`Member.activities` instead." + +msgid "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" +msgstr "``Guild.role_hierarchy`` / ``Server.role_hierarchy``" + +msgid "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." +msgstr "Use :attr:`Guild.roles` instead. Note that while sorted, it is in the opposite order of what the old ``Guild.role_hierarchy`` used to be." + +msgid "**Changed**" +msgstr "**Changed**" + +msgid ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." +msgstr ":attr:`Member.avatar_url` and :attr:`User.avatar_url` now return the default avatar if a custom one is not set." + +msgid ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." +msgstr ":attr:`Message.embeds` is now a list of :class:`Embed` instead of :class:`dict` objects." + +msgid ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." +msgstr ":attr:`Message.attachments` is now a list of :class:`Attachment` instead of :class:`dict` object." + +msgid ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." +msgstr ":attr:`Guild.roles` is now sorted through hierarchy. The first element is always the ``@everyone`` role." + +msgid "**Added**" +msgstr "**Added**" + +msgid ":class:`Attachment` to represent a discord attachment." +msgstr ":class:`Attachment` to represent a discord attachment." + +msgid ":class:`CategoryChannel` to represent a channel category." +msgstr ":class:`CategoryChannel` to represent a channel category." + +msgid ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." +msgstr ":attr:`VoiceChannel.members` for fetching members connected to a voice channel." + +msgid ":attr:`TextChannel.members` for fetching members that can see the channel." +msgstr ":attr:`TextChannel.members` for fetching members that can see the channel." + +msgid ":attr:`Role.members` for fetching members that have the role." +msgstr ":attr:`Role.members` for fetching members that have the role." + +msgid ":attr:`Guild.text_channels` for fetching text channels only." +msgstr ":attr:`Guild.text_channels` for fetching text channels only." + +msgid ":attr:`Guild.voice_channels` for fetching voice channels only." +msgstr ":attr:`Guild.voice_channels` for fetching voice channels only." + +msgid ":attr:`Guild.categories` for fetching channel categories only." +msgstr ":attr:`Guild.categories` for fetching channel categories only." + +msgid ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." +msgstr ":attr:`TextChannel.category` and :attr:`VoiceChannel.category` to get the category a channel belongs to." + +msgid ":meth:`Guild.by_category` to get channels grouped by their category." +msgstr ":meth:`Guild.by_category` to get channels grouped by their category." + +msgid ":attr:`Guild.chunked` to check member chunking status." +msgstr ":attr:`Guild.chunked` to check member chunking status." + +msgid ":attr:`Guild.explicit_content_filter` to fetch the content filter." +msgstr ":attr:`Guild.explicit_content_filter` to fetch the content filter." + +msgid ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." +msgstr ":attr:`Guild.shard_id` to get a guild's Shard ID if you're sharding." + +msgid ":attr:`Client.users` to get all visible :class:`User` instances." +msgstr ":attr:`Client.users` to get all visible :class:`User` instances." + +msgid ":meth:`Client.get_user` to get a :class:`User` by ID." +msgstr ":meth:`Client.get_user` to get a :class:`User` by ID." + +msgid ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." +msgstr ":meth:`User.avatar_url_as` to get an avatar in a specific size or format." + +msgid ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." +msgstr ":meth:`Guild.vanity_invite` to fetch the guild's vanity invite." + +msgid ":meth:`Guild.audit_logs` to fetch the guild's audit logs." +msgstr ":meth:`Guild.audit_logs` to fetch the guild's audit logs." + +msgid ":attr:`Message.webhook_id` to fetch the message's webhook ID." +msgstr ":attr:`Message.webhook_id` to fetch the message's webhook ID." + +msgid ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." +msgstr ":attr:`Message.activity` and :attr:`Message.application` for Rich Presence related information." + +msgid ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." +msgstr ":meth:`TextChannel.is_nsfw` to check if a text channel is NSFW." + +msgid ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." +msgstr ":meth:`Colour.from_rgb` to construct a :class:`Colour` from RGB tuple." + +msgid ":meth:`Guild.get_role` to get a role by its ID." +msgstr ":meth:`Guild.get_role` to get a role by its ID." + +msgid "Sending Messages" +msgstr "Sending Messages" + +msgid "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." +msgstr "One of the changes that were done was the merger of the previous ``Client.send_message`` and ``Client.send_file`` functionality into a single method, :meth:`~abc.Messageable.send`." + +msgid "Basically: ::" +msgstr "Basically: ::" + +msgid "This supports everything that the old ``send_message`` supported such as embeds: ::" +msgstr "This supports everything that the old ``send_message`` supported such as embeds: ::" + +msgid "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" +msgstr "There is a caveat with sending files however, as this functionality was expanded to support multiple file attachments, you must now use a :class:`File` pseudo-namedtuple to upload a single file. ::" + +msgid "This change was to facilitate multiple file uploads: ::" +msgstr "This change was to facilitate multiple file uploads: ::" + +msgid "Asynchronous Iterators" +msgstr "Asynchronous Iterators" + +msgid "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." +msgstr "Prior to v1.0, certain functions like ``Client.logs_from`` would return a different type if done in Python 3.4 or 3.5+." + +msgid "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." +msgstr "In v1.0, this change has been reverted and will now return a singular type meeting an abstract concept called :class:`AsyncIterator`." + +msgid "This allows you to iterate over it like normal: ::" +msgstr "This allows you to iterate over it like normal: ::" + +msgid "Or turn it into a list: ::" +msgstr "Or turn it into a list: ::" + +msgid "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" +msgstr "A handy aspect of returning :class:`AsyncIterator` is that it allows you to chain functions together such as :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter`: ::" + +msgid "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." +msgstr "The functions passed to :meth:`AsyncIterator.map` or :meth:`AsyncIterator.filter` can be either coroutines or regular functions." + +msgid "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" +msgstr "You can also get single elements a la :func:`discord.utils.find` or :func:`discord.utils.get` via :meth:`AsyncIterator.get` or :meth:`AsyncIterator.find`: ::" + +msgid "The following return :class:`AsyncIterator`:" +msgstr "The following return :class:`AsyncIterator`:" + +msgid ":meth:`abc.Messageable.history`" +msgstr ":meth:`abc.Messageable.history`" + +msgid ":meth:`Guild.audit_logs`" +msgstr ":meth:`Guild.audit_logs`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid "A lot of events have gone through some changes." +msgstr "A lot of events have gone through some changes." + +msgid "Many events with ``server`` in the name were changed to use ``guild`` instead." +msgstr "Many events with ``server`` in the name were changed to use ``guild`` instead." + +msgid "Before:" +msgstr "Before:" + +msgid "``on_server_join``" +msgstr "``on_server_join``" + +msgid "``on_server_remove``" +msgstr "``on_server_remove``" + +msgid "``on_server_update``" +msgstr "``on_server_update``" + +msgid "``on_server_role_create``" +msgstr "``on_server_role_create``" + +msgid "``on_server_role_delete``" +msgstr "``on_server_role_delete``" + +msgid "``on_server_role_update``" +msgstr "``on_server_role_update``" + +msgid "``on_server_emojis_update``" +msgstr "``on_server_emojis_update``" + +msgid "``on_server_available``" +msgstr "``on_server_available``" + +msgid "``on_server_unavailable``" +msgstr "``on_server_unavailable``" + +msgid "After:" +msgstr "After:" + +msgid ":func:`on_guild_join`" +msgstr ":func:`on_guild_join`" + +msgid ":func:`on_guild_remove`" +msgstr ":func:`on_guild_remove`" + +msgid ":func:`on_guild_update`" +msgstr ":func:`on_guild_update`" + +msgid ":func:`on_guild_role_create`" +msgstr ":func:`on_guild_role_create`" + +msgid ":func:`on_guild_role_delete`" +msgstr ":func:`on_guild_role_delete`" + +msgid ":func:`on_guild_role_update`" +msgstr ":func:`on_guild_role_update`" + +msgid ":func:`on_guild_emojis_update`" +msgstr ":func:`on_guild_emojis_update`" + +msgid ":func:`on_guild_available`" +msgstr ":func:`on_guild_available`" + +msgid ":func:`on_guild_unavailable`" +msgstr ":func:`on_guild_unavailable`" + +msgid "The :func:`on_voice_state_update` event has received an argument change." +msgstr "The :func:`on_voice_state_update` event has received an argument change." + +msgid "Before: ::" +msgstr "Before: ::" + +msgid "After: ::" +msgstr "After: ::" + +msgid "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." +msgstr "Instead of two :class:`Member` objects, the new event takes one :class:`Member` object and two :class:`VoiceState` objects." + +msgid "The :func:`on_guild_emojis_update` event has received an argument change." +msgstr "The :func:`on_guild_emojis_update` event has received an argument change." + +msgid "The first argument is now the :class:`Guild` that the emojis were updated from." +msgstr "The first argument is now the :class:`Guild` that the emojis were updated from." + +msgid "The :func:`on_member_ban` event has received an argument change as well:" +msgstr "The :func:`on_member_ban` event has received an argument change as well:" + +msgid "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." +msgstr "As part of the change, the event can either receive a :class:`User` or :class:`Member`. To help in the cases that have :class:`User`, the :class:`Guild` is provided as the first parameter." + +msgid "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." +msgstr "The ``on_channel_`` events have received a type level split (see :ref:`migrating_1_0_channel_split`)." + +msgid "``on_channel_delete``" +msgstr "``on_channel_delete``" + +msgid "``on_channel_create``" +msgstr "``on_channel_create``" + +msgid "``on_channel_update``" +msgstr "``on_channel_update``" + +msgid ":func:`on_guild_channel_delete`" +msgstr ":func:`on_guild_channel_delete`" + +msgid ":func:`on_guild_channel_create`" +msgstr ":func:`on_guild_channel_create`" + +msgid ":func:`on_guild_channel_update`" +msgstr ":func:`on_guild_channel_update`" + +msgid ":func:`on_private_channel_delete`" +msgstr ":func:`on_private_channel_delete`" + +msgid ":func:`on_private_channel_create`" +msgstr ":func:`on_private_channel_create`" + +msgid ":func:`on_private_channel_update`" +msgstr ":func:`on_private_channel_update`" + +msgid "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." +msgstr "The ``on_guild_channel_`` events correspond to :class:`abc.GuildChannel` being updated (i.e. :class:`TextChannel` and :class:`VoiceChannel`) and the ``on_private_channel_`` events correspond to :class:`abc.PrivateChannel` being updated (i.e. :class:`DMChannel` and :class:`GroupChannel`)." + +msgid "Voice Changes" +msgstr "Voice Changes" + +msgid "Voice sending has gone through a complete redesign." +msgstr "Voice sending has gone through a complete redesign." + +msgid "In particular:" +msgstr "In particular:" + +msgid "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." +msgstr "Connection is done through :meth:`VoiceChannel.connect` instead of ``Client.join_voice_channel``." + +msgid "You no longer create players and operate on them (you no longer store them)." +msgstr "You no longer create players and operate on them (you no longer store them)." + +msgid "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." +msgstr "You instead request :class:`VoiceClient` to play an :class:`AudioSource` via :meth:`VoiceClient.play`." + +msgid "There are different built-in :class:`AudioSource`\\s." +msgstr "There are different built-in :class:`AudioSource`\\s." + +msgid ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" +msgstr ":class:`FFmpegPCMAudio` is the equivalent of ``create_ffmpeg_player``" + +msgid "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." +msgstr "create_ffmpeg_player/create_stream_player/create_ytdl_player have all been removed." + +msgid "The goal is to create :class:`AudioSource` instead." +msgstr "The goal is to create :class:`AudioSource` instead." + +msgid "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." +msgstr "Using :meth:`VoiceClient.play` will not return an ``AudioPlayer``." + +msgid "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." +msgstr "Instead, it's \"flattened\" like :class:`User` -> :class:`Member` is." + +msgid "The ``after`` parameter now takes a single parameter (the error)." +msgstr "The ``after`` parameter now takes a single parameter (the error)." + +msgid "Basically:" +msgstr "Basically:" + +msgid "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." +msgstr "With the changed :class:`AudioSource` design, you can now change the source that the :class:`VoiceClient` is playing at runtime via :attr:`VoiceClient.source`." + +msgid "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" +msgstr "For example, you can add a :class:`PCMVolumeTransformer` to allow changing the volume: ::" + +msgid "An added benefit of the redesign is that it will be much more resilient towards reconnections:" +msgstr "An added benefit of the redesign is that it will be much more resilient towards reconnections:" + +msgid "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." +msgstr "The voice websocket will now automatically re-connect and re-do the handshake when disconnected." + +msgid "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." +msgstr "The initial connect handshake will now retry up to 5 times so you no longer get as many ``asyncio.TimeoutError``." + +msgid "Audio will now stop and resume when a disconnect is found." +msgstr "Audio will now stop and resume when a disconnect is found." + +msgid "This includes changing voice regions etc." +msgstr "This includes changing voice regions etc." + +msgid "Waiting For Events" +msgstr "Waiting For Events" + +msgid "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." +msgstr "Prior to v1.0, the machinery for waiting for an event outside of the event itself was done through two different functions, ``Client.wait_for_message`` and ``Client.wait_for_reaction``. One problem with one such approach is that it did not allow you to wait for events outside of the ones provided by the library." + +msgid "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." +msgstr "In v1.0 the concept of waiting for another event has been generalised to work with any event as :meth:`Client.wait_for`." + +msgid "For example, to wait for a message: ::" +msgstr "For example, to wait for a message: ::" + +msgid "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." +msgstr "To facilitate multiple returns, :meth:`Client.wait_for` returns either a single argument, no arguments, or a tuple of arguments." + +msgid "For example, to wait for a reaction: ::" +msgstr "For example, to wait for a reaction: ::" + +msgid "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" +msgstr "Since this function now can return multiple arguments, the ``timeout`` parameter will now raise a :exc:`asyncio.TimeoutError` when reached instead of setting the return to ``None``. For example:" + +msgid "Upgraded Dependencies" +msgstr "Upgraded Dependencies" + +msgid "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." +msgstr "Following v1.0 of the library, we've updated our requirements to :doc:`aiohttp ` v2.0 or higher." + +msgid "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." +msgstr "Since this is a backwards incompatible change, it is recommended that you see the `changes `_ and the :doc:`aio:migration_to_2xx` pages for details on the breaking changes in :doc:`aiohttp `." + +msgid "Of the most significant for common users is the removal of helper functions such as:" +msgstr "Of the most significant for common users is the removal of helper functions such as:" + +msgid "``aiohttp.get``" +msgstr "``aiohttp.get``" + +msgid "``aiohttp.post``" +msgstr "``aiohttp.post``" + +msgid "``aiohttp.delete``" +msgstr "``aiohttp.delete``" + +msgid "``aiohttp.patch``" +msgstr "``aiohttp.patch``" + +msgid "``aiohttp.head``" +msgstr "``aiohttp.head``" + +msgid "``aiohttp.put``" +msgstr "``aiohttp.put``" + +msgid "``aiohttp.request``" +msgstr "``aiohttp.request``" + +msgid "It is recommended that you create a session instead: ::" +msgstr "It is recommended that you create a session instead: ::" + +msgid "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." +msgstr "Since it is better to not create a session for every request, you should store it in a variable and then call ``session.close`` on it when it needs to be disposed." + +msgid "Sharding" +msgstr "Sharding" + +msgid "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." +msgstr "The library has received significant changes on how it handles sharding and now has sharding as a first-class citizen." + +msgid "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." +msgstr "If using a Bot account and you want to shard your bot in a single process then you can use the :class:`AutoShardedClient`." + +msgid "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." +msgstr "This class allows you to use sharding without having to launch multiple processes or deal with complicated IPC." + +msgid "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." +msgstr "It should be noted that **the sharded client does not support user accounts**. This is due to the changes in connection logic and state handling." + +msgid "Usage is as simple as doing: ::" +msgstr "Usage is as simple as doing: ::" + +msgid "instead of using :class:`Client`." +msgstr "instead of using :class:`Client`." + +msgid "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." +msgstr "This will launch as many shards as your bot needs using the ``/gateway/bot`` endpoint, which allocates about 1000 guilds per shard." + +msgid "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" +msgstr "If you want more control over the sharding you can specify ``shard_count`` and ``shard_ids``. ::" + +msgid "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." +msgstr "For users of the command extension, there is also :class:`~ext.commands.AutoShardedBot` which behaves similarly." + +msgid "Connection Improvements" +msgstr "Connection Improvements" + +msgid "In v1.0, the auto reconnection logic has been powered up significantly." +msgstr "In v1.0, the auto reconnection logic has been powered up significantly." + +msgid ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." +msgstr ":meth:`Client.connect` has gained a new keyword argument, ``reconnect`` that defaults to ``True`` which controls the reconnect logic. When enabled, the client will automatically reconnect in all instances of your internet going offline or Discord going offline with exponential back-off." + +msgid ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." +msgstr ":meth:`Client.run` and :meth:`Client.start` gains this keyword argument as well, but for most cases you will not need to specify it unless turning it off." + +msgid "Command Extension Changes" +msgstr "Command Extension Changes" + +msgid "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." +msgstr "Due to the :ref:`migrating_1_0_model_state` changes, some of the design of the extension module had to undergo some design changes as well." + +msgid "Context Changes" +msgstr "Context Changes" + +msgid "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." +msgstr "In v1.0, the :class:`.Context` has received a lot of changes with how it's retrieved and used." + +msgid "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" +msgstr "The biggest change is that ``pass_context=True`` no longer exists, :class:`.Context` is always passed. Ergo:" + +msgid "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." +msgstr "The reason for this is because :class:`~ext.commands.Context` now meets the requirements of :class:`abc.Messageable`. This makes it have similar functionality to :class:`TextChannel` or :class:`DMChannel`. Using :meth:`~.Context.send` will either DM the user in a DM context or send a message in the channel it was in, similar to the old ``bot.say`` functionality. The old helpers have been removed in favour of the new :class:`abc.Messageable` interface. See :ref:`migrating_1_0_removed_helpers` for more information." + +msgid "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" +msgstr "Since the :class:`~ext.commands.Context` is now passed by default, several shortcuts have been added:" + +msgid "**New Shortcuts**" +msgstr "**New Shortcuts**" + +msgid ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." +msgstr ":attr:`ctx.author ` is a shortcut for ``ctx.message.author``." + +msgid ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." +msgstr ":attr:`ctx.guild ` is a shortcut for ``ctx.message.guild``." + +msgid ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." +msgstr ":attr:`ctx.channel ` is a shortcut for ``ctx.message.channel``." + +msgid ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." +msgstr ":attr:`ctx.me ` is a shortcut for ``ctx.message.guild.me`` or ``ctx.bot.user``." + +msgid ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." +msgstr ":attr:`ctx.voice_client ` is a shortcut for ``ctx.message.guild.voice_client``." + +msgid "**New Functionality**" +msgstr "**New Functionality**" + +msgid ":meth:`.Context.reinvoke` to invoke a command again." +msgstr ":meth:`.Context.reinvoke` to invoke a command again." + +msgid "This is useful for bypassing cooldowns." +msgstr "This is useful for bypassing cooldowns." + +msgid ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." +msgstr ":attr:`.Context.valid` to check if a context can be invoked with :meth:`.Bot.invoke`." + +msgid ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." +msgstr ":meth:`.Context.send_help` to show the help command for an entity using the new :class:`~.ext.commands.HelpCommand` system." + +msgid "This is useful if you want to show the user help if they misused a command." +msgstr "This is useful if you want to show the user help if they misused a command." + +msgid "Subclassing Context" +msgstr "Subclassing Context" + +msgid "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." +msgstr "In v1.0, there is now the ability to subclass :class:`~ext.commands.Context` and use it instead of the default provided one." + +msgid "For example, if you want to add some functionality to the context:" +msgstr "For example, if you want to add some functionality to the context:" + +msgid "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" +msgstr "Then you can use :meth:`~ext.commands.Bot.get_context` inside :func:`on_message` with combination with :meth:`~ext.commands.Bot.invoke` to use your custom context:" + +msgid "Now inside your commands you will have access to your custom context:" +msgstr "Now inside your commands you will have access to your custom context:" + +msgid "Removed Helpers" +msgstr "Removed Helpers" + +msgid "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." +msgstr "With the new :class:`.Context` changes, a lot of message sending helpers have been removed." + +msgid "For a full list of changes, see below:" +msgstr "For a full list of changes, see below:" + +msgid "``Bot.say``" +msgstr "``Bot.say``" + +msgid ":meth:`.Context.send`" +msgstr ":meth:`.Context.send`" + +msgid "``Bot.upload``" +msgstr "``Bot.upload``" + +msgid "``Bot.whisper``" +msgstr "``Bot.whisper``" + +msgid "``ctx.author.send``" +msgstr "``ctx.author.send``" + +msgid "``Bot.type``" +msgstr "``Bot.type``" + +msgid ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" +msgstr ":meth:`.Context.typing` or :meth:`.Context.trigger_typing`" + +msgid "``Bot.reply``" +msgstr "``Bot.reply``" + +msgid "No replacement." +msgstr "No replacement." + +msgid "Command Changes" +msgstr "Command Changes" + +msgid "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." +msgstr "As mentioned earlier, the first command change is that ``pass_context=True`` no longer exists, so there is no need to pass this as a parameter." + +msgid "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." +msgstr "Another change is the removal of ``no_pm=True``. Instead, use the new :func:`~ext.commands.guild_only` built-in check." + +msgid "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." +msgstr "The ``commands`` attribute of :class:`~ext.commands.Bot` and :class:`~ext.commands.Group` have been changed from a dictionary to a set that does not have aliases. To retrieve the previous dictionary behaviour, use ``all_commands`` instead." + +msgid "Command instances have gained new attributes and properties:" +msgstr "Command instances have gained new attributes and properties:" + +msgid ":attr:`~ext.commands.Command.signature` to get the signature of the command." +msgstr ":attr:`~ext.commands.Command.signature` to get the signature of the command." + +msgid ":attr:`~.Command.usage`, an attribute to override the default signature." +msgstr ":attr:`~.Command.usage`, an attribute to override the default signature." + +msgid ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." +msgstr ":attr:`~.Command.root_parent` to get the root parent group of a subcommand." + +msgid "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" +msgstr "For :class:`~ext.commands.Group` and :class:`~ext.commands.Bot` the following changed:" + +msgid "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." +msgstr "Changed :attr:`~.GroupMixin.commands` to be a :class:`set` without aliases." + +msgid "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." +msgstr "Use :attr:`~.GroupMixin.all_commands` to get the old :class:`dict` with all commands." + +msgid "Check Changes" +msgstr "Check Changes" + +msgid "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." +msgstr "Prior to v1.0, :func:`~ext.commands.check`\\s could only be synchronous. As of v1.0 checks can now be coroutines." + +msgid "Along with this change, a couple new checks were added." +msgstr "Along with this change, a couple new checks were added." + +msgid ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." +msgstr ":func:`~ext.commands.guild_only` replaces the old ``no_pm=True`` functionality." + +msgid ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." +msgstr ":func:`~ext.commands.is_owner` uses the :meth:`Client.application_info` endpoint by default to fetch owner ID." + +msgid "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." +msgstr "This is actually powered by a different function, :meth:`~ext.commands.Bot.is_owner`." + +msgid "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." +msgstr "You can set the owner ID yourself by setting :attr:`.Bot.owner_id`." + +msgid ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." +msgstr ":func:`~ext.commands.is_nsfw` checks if the channel the command is in is a NSFW channel." + +msgid "This is powered by the new :meth:`TextChannel.is_nsfw` method." +msgstr "This is powered by the new :meth:`TextChannel.is_nsfw` method." + +msgid "All command extension events have changed." +msgstr "All command extension events have changed." + +msgid "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." +msgstr "The extraneous ``command`` parameter in :func:`.on_command` and :func:`.on_command_completion` have been removed. The :class:`~ext.commands.Command` instance was not kept up-to date so it was incorrect. In order to get the up to date :class:`~ext.commands.Command` instance, use the :attr:`.Context.command` attribute." + +msgid "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." +msgstr "The error handlers, either :meth:`.Command.error` or :func:`.on_command_error`, have been re-ordered to use the :class:`~ext.commands.Context` as its first parameter to be consistent with other events and commands." + +msgid "HelpFormatter and Help Command Changes" +msgstr "HelpFormatter and Help Command Changes" + +msgid "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." +msgstr "The ``HelpFormatter`` class has been removed. It has been replaced with a :class:`~.commands.HelpCommand` class. This class now stores all the command handling and processing of the help command." + +msgid "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." +msgstr "The help command is now stored in the :attr:`.Bot.help_command` attribute. As an added extension, you can disable the help command completely by assigning the attribute to ``None`` or passing it at ``__init__`` as ``help_command=None``." + +msgid "The new interface allows the help command to be customised through special methods that can be overridden." +msgstr "The new interface allows the help command to be customised through special methods that can be overridden." + +msgid ":meth:`.HelpCommand.send_bot_help`" +msgstr ":meth:`.HelpCommand.send_bot_help`" + +msgid "Called when the user requested for help with the entire bot." +msgstr "Called when the user requested for help with the entire bot." + +msgid ":meth:`.HelpCommand.send_cog_help`" +msgstr ":meth:`.HelpCommand.send_cog_help`" + +msgid "Called when the user requested for help with a specific cog." +msgstr "Called when the user requested for help with a specific cog." + +msgid ":meth:`.HelpCommand.send_group_help`" +msgstr ":meth:`.HelpCommand.send_group_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Group`" +msgstr "Called when the user requested for help with a :class:`~.commands.Group`" + +msgid ":meth:`.HelpCommand.send_command_help`" +msgstr ":meth:`.HelpCommand.send_command_help`" + +msgid "Called when the user requested for help with a :class:`~.commands.Command`" +msgstr "Called when the user requested for help with a :class:`~.commands.Command`" + +msgid ":meth:`.HelpCommand.get_destination`" +msgstr ":meth:`.HelpCommand.get_destination`" + +msgid "Called to know where to send the help messages. Useful for deciding whether to DM or not." +msgstr "Called to know where to send the help messages. Useful for deciding whether to DM or not." + +msgid ":meth:`.HelpCommand.command_not_found`" +msgstr ":meth:`.HelpCommand.command_not_found`" + +msgid "A function (or coroutine) that returns a presentable no command found string." +msgstr "A function (or coroutine) that returns a presentable no command found string." + +msgid ":meth:`.HelpCommand.subcommand_not_found`" +msgstr ":meth:`.HelpCommand.subcommand_not_found`" + +msgid "A function (or coroutine) that returns a string when a subcommand is not found." +msgstr "A function (or coroutine) that returns a string when a subcommand is not found." + +msgid ":meth:`.HelpCommand.send_error_message`" +msgstr ":meth:`.HelpCommand.send_error_message`" + +msgid "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." +msgstr "A coroutine that gets passed the result of :meth:`.HelpCommand.command_not_found` and :meth:`.HelpCommand.subcommand_not_found`." + +msgid "By default it just sends the message. But you can, for example, override it to put it in an embed." +msgstr "By default it just sends the message. But you can, for example, override it to put it in an embed." + +msgid ":meth:`.HelpCommand.on_help_command_error`" +msgstr ":meth:`.HelpCommand.on_help_command_error`" + +msgid "The :ref:`error handler ` for the help command if you want to add one." +msgstr "The :ref:`error handler ` for the help command if you want to add one." + +msgid ":meth:`.HelpCommand.prepare_help_command`" +msgstr ":meth:`.HelpCommand.prepare_help_command`" + +msgid "A coroutine that is called right before the help command processing is done." +msgstr "A coroutine that is called right before the help command processing is done." + +msgid "Certain subclasses can implement more customisable methods." +msgstr "Certain subclasses can implement more customisable methods." + +msgid "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." +msgstr "The old ``HelpFormatter`` was replaced with :class:`~.commands.DefaultHelpCommand`\\, which implements all of the logic of the old help command. The customisable methods can be found in the accompanying documentation." + +msgid "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." +msgstr "The library now provides a new more minimalistic :class:`~.commands.HelpCommand` implementation that doesn't take as much space, :class:`~.commands.MinimalHelpCommand`. The customisable methods can also be found in the accompanying documentation." + +msgid "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." +msgstr "A frequent request was if you could associate a help command with a cog. The new design allows for dynamically changing of cog through binding it to the :attr:`.HelpCommand.cog` attribute. After this assignment the help command will pretend to be part of the cog and everything should work as expected. When the cog is unloaded then the help command will be \"unbound\" from the cog." + +msgid "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." +msgstr "For example, to implement a :class:`~.commands.HelpCommand` in a cog, the following snippet can be used." + +msgid "For more information, check out the relevant :ref:`documentation `." +msgstr "For more information, check out the relevant :ref:`documentation `." + +msgid "Cog Changes" +msgstr "Cog Changes" + +msgid "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." +msgstr "Cogs have completely been revamped. They are documented in :ref:`ext_commands_cogs` as well." + +msgid "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." +msgstr "Cogs are now required to have a base class, :class:`~.commands.Cog` for future proofing purposes. This comes with special methods to customise some behaviour." + +msgid ":meth:`.Cog.cog_unload`" +msgstr ":meth:`.Cog.cog_unload`" + +msgid "This is called when a cog needs to do some cleanup, such as cancelling a task." +msgstr "This is called when a cog needs to do some cleanup, such as cancelling a task." + +msgid ":meth:`.Cog.bot_check_once`" +msgstr ":meth:`.Cog.bot_check_once`" + +msgid "This registers a :meth:`.Bot.check_once` check." +msgstr "This registers a :meth:`.Bot.check_once` check." + +msgid ":meth:`.Cog.bot_check`" +msgstr ":meth:`.Cog.bot_check`" + +msgid "This registers a regular :meth:`.Bot.check` check." +msgstr "This registers a regular :meth:`.Bot.check` check." + +msgid ":meth:`.Cog.cog_check`" +msgstr ":meth:`.Cog.cog_check`" + +msgid "This registers a check that applies to every command in the cog." +msgstr "This registers a check that applies to every command in the cog." + +msgid ":meth:`.Cog.cog_command_error`" +msgstr ":meth:`.Cog.cog_command_error`" + +msgid "This is a special error handler that is called whenever an error happens inside the cog." +msgstr "This is a special error handler that is called whenever an error happens inside the cog." + +msgid ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" +msgstr ":meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`" + +msgid "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." +msgstr "A special method that registers a cog before and after invoke hook. More information can be found in :ref:`migrating_1_0_before_after_hook`." + +msgid "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." +msgstr "Those that were using listeners, such as ``on_message`` inside a cog will now have to explicitly mark them as such using the :meth:`.commands.Cog.listener` decorator." + +msgid "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." +msgstr "Along with that, cogs have gained the ability to have custom names through specifying it in the class definition line. More options can be found in the metaclass that facilitates all this, :class:`.commands.CogMeta`." + +msgid "An example cog with every special method registered and a custom name is as follows:" +msgstr "An example cog with every special method registered and a custom name is as follows:" + +msgid "Before and After Invocation Hooks" +msgstr "Before and After Invocation Hooks" + +msgid "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." +msgstr "Commands have gained new before and after invocation hooks that allow you to do an action before and after a command is run." + +msgid "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." +msgstr "They take a single parameter, :class:`~ext.commands.Context` and they must be a coroutine." + +msgid "They are on a global, per-cog, or per-command basis." +msgstr "They are on a global, per-cog, or per-command basis." + +msgid "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." +msgstr "The after invocation is hook always called, **regardless of an error in the command**. This makes it ideal for some error handling or clean up of certain resources such a database connection." + +msgid "The per-command registration is as follows: ::" +msgstr "The per-command registration is as follows: ::" + +msgid "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" +msgstr "The special cog method for these is :meth:`.Cog.cog_before_invoke` and :meth:`.Cog.cog_after_invoke`, e.g.:" + +msgid "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." +msgstr "To check if a command failed in the after invocation hook, you can use :attr:`.Context.command_failed`." + +msgid "The invocation order is as follows:" +msgstr "The invocation order is as follows:" + +msgid "Command local before invocation hook" +msgstr "Command local before invocation hook" + +msgid "Cog local before invocation hook" +msgstr "Cog local before invocation hook" + +msgid "Global before invocation hook" +msgstr "Global before invocation hook" + +msgid "The actual command" +msgstr "The actual command" + +msgid "Command local after invocation hook" +msgstr "Command local after invocation hook" + +msgid "Cog local after invocation hook" +msgstr "Cog local after invocation hook" + +msgid "Global after invocation hook" +msgstr "Global after invocation hook" + +msgid "Converter Changes" +msgstr "Converter Changes" + +msgid "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." +msgstr "Prior to v1.0, a converter was a type hint that could be a callable that could be invoked with a singular argument denoting the argument passed by the user as a string." + +msgid "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." +msgstr "This system was eventually expanded to support a :class:`~ext.commands.Converter` system to allow plugging in the :class:`~ext.commands.Context` and do more complicated conversions such as the built-in \"discord\" converters." + +msgid "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." +msgstr "In v1.0 this converter system was revamped to allow instances of :class:`~ext.commands.Converter` derived classes to be passed. For consistency, the :meth:`~ext.commands.Converter.convert` method was changed to always be a coroutine and will now take the two arguments as parameters." + +msgid "Essentially, before: ::" +msgstr "Essentially, before: ::" + +msgid "The command framework also got a couple new converters:" +msgstr "The command framework also got a couple new converters:" + +msgid ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." +msgstr ":class:`~ext.commands.clean_content` this is akin to :attr:`Message.clean_content` which scrubs mentions." + +msgid ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." +msgstr ":class:`~ext.commands.UserConverter` will now appropriately convert :class:`User` only." + +msgid "``ChannelConverter`` is now split into two different converters." +msgstr "``ChannelConverter`` is now split into two different converters." + +msgid ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." +msgstr ":class:`~ext.commands.TextChannelConverter` for :class:`TextChannel`." + +msgid ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." +msgstr ":class:`~ext.commands.VoiceChannelConverter` for :class:`VoiceChannel`." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/migrating_to_v2.po b/docs/locales/zh_CN/LC_MESSAGES/migrating_to_v2.po new file mode 100644 index 0000000000..4220fe4212 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/migrating_to_v2.po @@ -0,0 +1,418 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Migrating to v2.0" +msgstr "Migrating to v2.0" + +msgid "v2.0 introduced new Discord features and deprecated some old ones." +msgstr "v2.0 introduced new Discord features and deprecated some old ones." + +msgid "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." +msgstr "Part of the redesign involves making application commands and components. These changes include a new :class:`Bot` class, :class:`ui.View`, and a new :class:`ApplicationContext` class. If you're interested in creating them, please check out our :resource:`guide `." + +msgid "Python Version Change" +msgstr "Python Version Change" + +msgid "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." +msgstr "In order to make development easier and also to allow for our dependencies to upgrade to allow usage of 3.8 or higher, the library had to remove support for Python versions lower than 3.7, which essentially means that **support for Python 3.7 and below has been dropped**." + +msgid "Major Model Changes" +msgstr "Major Model Changes" + +msgid "Below are major changes that have happened in v2.0:" +msgstr "Below are major changes that have happened in v2.0:" + +msgid "Dropped User Accounts Support" +msgstr "Dropped User Accounts Support" + +msgid "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" +msgstr "Before v2.0, user accounts were supported. This has been against the spirit of the library and discord ToS and has been removed. Thus, these features that were only applicable to them are removed:" + +msgid "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" +msgstr "``bot`` argument of :meth:`Client.start` and :meth:`Client.run`" + +msgid "``afk`` argument of :meth:`Client.change_presence`" +msgstr "``afk`` argument of :meth:`Client.change_presence`" + +msgid "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" +msgstr "Classes ``Profile``, ``Relationship``, ``Call Message``, ``Group Call``" + +msgid "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" +msgstr "``RelationshipType``, ``HypeSquadHouse``, ``PremiumType``, ``UserContentFilter``, ``FriendFlags``, ``Theme``" + +msgid "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" +msgstr "``GroupChannel.add_recipients``, ``remove_recipients``, ``edit`` (NOTE: ``GroupChannel`` itself still remains)" + +msgid "``Guild.ack``" +msgstr "``Guild.ack``" + +msgid "``Client.self_bot``" +msgstr "``Client.self_bot``" + +msgid "``Client.fetch_user_profile``" +msgstr "``Client.fetch_user_profile``" + +msgid "``Message.call`` and ``ack``" +msgstr "``Message.call`` and ``ack``" + +msgid "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" +msgstr "``ClientUser.email``, ``premium``, ``premium_type``, ``get_relationship``, ``relationships``, ``friends``, ``blocked``, ``create_group``, ``edit_settings``" + +msgid "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" +msgstr "Arguments of ``ClientUser.edit``: ``password``, ``new_password``, ``email``, ``house``" + +msgid "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" +msgstr "``User.relationship``, ``mutual_friends``, ``is_friend``, ``is_blocked``, ``block``, ``unblock``, ``remove_friend``, ``send_friend_request``, ``profile``" + +msgid "Events: ``on_relationship_add`` and ``on_relationship_update``" +msgstr "Events: ``on_relationship_add`` and ``on_relationship_update``" + +msgid "Timezone-aware Time" +msgstr "Timezone-aware Time" + +msgid "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." +msgstr "``utcnow`` becomes ``now(datetime.timezone.utc)``. If you are constructing :class:`datetime.datetime`` yourself, pass ``tzinfo=datetime.timezone.utc``." + +msgid "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." +msgstr "Note that newly-added :meth:`utils.utcnow()` can be used as an alias of ``datetime.datetime.now(datetime.timezone.utc)``." + +msgid "Asset Changes" +msgstr "Asset Changes" + +msgid "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." +msgstr "Asset-related attributes that previously returned hash strings (e.g. :attr:`User.avatar`) now returns :class:`Asset`. :attr:`Asset.key` returns the hash from now on." + +msgid "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." +msgstr "``Class.x_url`` and ``Class.x_url_as`` are removed. :meth:`Asset.replace` or :meth:`Asset.with_x` methods can be used to get specific asset sizes or types." + +msgid ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." +msgstr ":attr:`Emoji.url` and :attr:`PartialEmoji.url` are now :class:`str`. :meth:`Emoji.save` and :meth:`Emoji.read` are added to save or read emojis." + +msgid "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." +msgstr "``Emoji.url_as`` and ``PartialEmoji.url_as`` are removed." + +msgid "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" +msgstr "Some :class:`AuditLogDiff` attributes now return :class:`Asset` instead of :class:`str`: :attr:`AuditLogDiff.splash`, :attr:`AuditLogDiff.icon`, :attr:`AuditLogDiff.avatar`" + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar; use :attr:`User.display_avatar` for pre-2.0 behavior." + +msgid "Before" +msgstr "Before" + +msgid "After" +msgstr "After" + +msgid "``str(user.avatar_url)``" +msgstr "``str(user.avatar_url)``" + +msgid "``user.display_avatar.url``" +msgstr "``user.display_avatar.url``" + +msgid "``str(user.avatar_url_as(size=128))``" +msgstr "``str(user.avatar_url_as(size=128))``" + +msgid "``user.display_avatar.with_size(128).url``" +msgstr "``user.display_avatar.with_size(128).url``" + +msgid "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" +msgstr "``str(user.avatar_url_as(size=128, static_format=\"png\"))``" + +msgid "``user.display_avatar.replace(size=128, static_format=\"png\").url``" +msgstr "``user.display_avatar.replace(size=128, static_format=\"png\").url``" + +msgid "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" +msgstr "``user.display_avatar.with_size(128).with_static_format(\"png\").url``" + +msgid "``await user.avatar_url.read()``" +msgstr "``await user.avatar_url.read()``" + +msgid "``await user.display_avatar.read()``" +msgstr "``await user.display_avatar.read()``" + +msgid "``str(emoji.url)``" +msgstr "``str(emoji.url)``" + +msgid "``emoji.url``" +msgstr "``emoji.url``" + +msgid "``str(emoji.url_as(size=32))``" +msgstr "``str(emoji.url_as(size=32))``" + +msgid "``emoji.with_size(32).url``" +msgstr "``emoji.with_size(32).url``" + +msgid "``str(url_as(size=128, static_format=\"png\"))``" +msgstr "``str(url_as(size=128, static_format=\"png\"))``" + +msgid "``emoji.replace(size=128, static_format=\"png\").url``" +msgstr "``emoji.replace(size=128, static_format=\"png\").url``" + +msgid "``str(sticker.image_url)``" +msgstr "``str(sticker.image_url)``" + +msgid "``sticker.url``" +msgstr "``sticker.url``" + +msgid "``str(partialemoji.url)``" +msgstr "``str(partialemoji.url)``" + +msgid "``partialemoji.url``" +msgstr "``partialemoji.url``" + +msgid "Webhook Changes" +msgstr "Webhook Changes" + +msgid ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." +msgstr ":class:`Webhook` and :class:`WebhookMessage` are now always asynchronous. For synchronous use (``requests``), use :class:`SyncWebhook` and :class:`SyncWebhookMessage`." + +msgid "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." +msgstr "``WebhookAdapter``, ``AsyncWebhookAdapter``, and ``RequestsWebhookAdapter`` are removed, since they are unnecessary." + +msgid "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." +msgstr "``adapter`` arguments of :meth:`Webhook.partial` and :meth:`Webhook.from_url` are removed. Sessions are now passed directly to ``partial`` / ``from_url``." + +msgid "Intents Changes" +msgstr "Intents Changes" + +msgid ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." +msgstr ":attr:`Intents.message_content` is now a privileged intent. Disabling it causes :attr:`Message.content`, :attr:`Message.embeds`, :attr:`Message.components`, and :attr:`Message.attachments` to be empty (an empty string or an empty array), directly causing :class:`ext.commands.Command` s to not run. See `here `_ for more information." + +msgid "Threads Introduced" +msgstr "Threads Introduced" + +msgid "The following methods and attributes can return :class:`Thread` objects:" +msgstr "The following methods and attributes can return :class:`Thread` objects:" + +msgid ":attr:`Message.channel`" +msgstr ":attr:`Message.channel`" + +msgid ":meth:`Client.fetch_channel`" +msgstr ":meth:`Client.fetch_channel`" + +msgid ":meth:`Guild.fetch_channel`" +msgstr ":meth:`Guild.fetch_channel`" + +msgid ":attr:`ext.commands.ChannelNotReadable.argument`" +msgstr ":attr:`ext.commands.ChannelNotReadable.argument`" + +msgid ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" +msgstr ":class:`ext.commands.NSFWChannelRequired`'s ``channel`` argument" + +msgid ":meth:`Client.get_channel`" +msgstr ":meth:`Client.get_channel`" + +msgid "Permission Changes" +msgstr "Permission Changes" + +msgid "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." +msgstr "``permissions_in`` has been removed in favor of checking the permissions of the channel for said user." + +msgid "``User.permissions_in``" +msgstr "``User.permissions_in``" + +msgid "``abc.GuildChannel.permissions_for``" +msgstr "``abc.GuildChannel.permissions_for``" + +msgid "``Member.permissions_in``" +msgstr "``Member.permissions_in``" + +msgid "Edit Method Behavior Change" +msgstr "Edit Method Behavior Change" + +msgid "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." +msgstr "``edit`` methods of most classes no longer update the cache in-place, and instead returns the modified object." + +msgid "Positional-Keyword Argument Split" +msgstr "Positional-Keyword Argument Split" + +msgid "The following are now positional only:" +msgstr "The following are now positional only:" + +msgid ":meth:`abc.GuildChannel.permissions_for`" +msgstr ":meth:`abc.GuildChannel.permissions_for`" + +msgid ":meth:`Guild.get_channel`" +msgstr ":meth:`Guild.get_channel`" + +msgid ":meth:`Guild.get_role`" +msgstr ":meth:`Guild.get_role`" + +msgid ":meth:`Guild.get_member_named`" +msgstr ":meth:`Guild.get_member_named`" + +msgid ":meth:`Guild.fetch_member`" +msgstr ":meth:`Guild.fetch_member`" + +msgid ":meth:`Guild.fetch_emoji`" +msgstr ":meth:`Guild.fetch_emoji`" + +msgid ":meth:`abc.Messageable.fetch_message`" +msgstr ":meth:`abc.Messageable.fetch_message`" + +msgid ":meth:`PartialMessageable.get_partial_message`" +msgstr ":meth:`PartialMessageable.get_partial_message`" + +msgid "The following are now keyword only:" +msgstr "The following are now keyword only:" + +msgid ":func:`utils.oauth_url`" +msgstr ":func:`utils.oauth_url`" + +msgid ":meth:`Reaction.users`" +msgstr ":meth:`Reaction.users`" + +msgid "Event Changes" +msgstr "Event Changes" + +msgid ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces `on_member_update` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." +msgstr "``on_private_channel_create/delete`` will no longer be dispatched due to Discord changes." + +msgid ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." +msgstr ":func:`on_socket_raw_receive` is no longer dispatched for incomplete data, and the value passed is always decompressed and decoded to :class:`str`. Previously, when received a multi-part zlib-compressed binary message, :func:`on_socket_raw_receive` was dispatched on all messages with the compressed, encoded :class:`bytes`." + +msgid "Message.type For Replies" +msgstr "Message.type For Replies" + +msgid ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." +msgstr ":attr:`Message.type` now returns :attr:`MessageType.reply` for replies, instead of :attr:`MessageType.default`." + +msgid "Sticker Changes" +msgstr "Sticker Changes" + +msgid "``Sticker.preview_image`` was removed as Discord no longer provides the data." +msgstr "``Sticker.preview_image`` was removed as Discord no longer provides the data." + +msgid "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." +msgstr "``StickerType``, an enum of sticker formats, is renamed to :class:`StickerFormatType`. Old name is used for a new enum with different purpose (checking if the sticker is guild sticker or Nitro sticker)." + +msgid ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." +msgstr ":attr:`Message.stickers` is now List[:class:`StickerItem`] instead of List[:class:`Sticker`]. While :class:`StickerItem` supports some operations of previous ``Sticker``, ``description`` and ``pack_id`` attributes do not exist. :class:`Sticker` can be fetched via :meth:`StickerItem.fetch` method." + +msgid "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." +msgstr "``Sticker.image`` is removed. :class:`Sticker` can still be fetched via :meth:`Sticker.read` or :meth:`Sticker.save` and its URL can be accessed via :attr:`Sticker.url`, just like new :class:`Emoji`." + +msgid "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." +msgstr "Due to the introduction of :class:`GuildSticker`, ``Sticker.tags`` is removed from the parent class :class:`Sticker` and moved to :attr:`StandardSticker.tags`." + +msgid "Type Changes" +msgstr "Type Changes" + +msgid "Many method arguments now reject ``None`` or return ``None``." +msgstr "Many method arguments now reject ``None`` or return ``None``." + +msgid ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." +msgstr ":attr:`DMChannel.recipient` is now optional, and will return ``None`` in many cases." + +msgid ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." +msgstr ":attr:`User.avatar` returns ``None`` if the avatar is not set and is instead the default avatar." + +msgid ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." +msgstr ":attr:`Guild.create_text_channel`'s ``topic`` argument no longer accepts ``None``." + +msgid ":attr:`Guild.vanity_invite` can now return ``None``." +msgstr ":attr:`Guild.vanity_invite` can now return ``None``." + +msgid ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." +msgstr ":attr:`Template.edit`'s ``name`` argument no longer accepts ``None``." + +msgid ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." +msgstr ":attr:`Member.edit`'s ``roles`` argument no longer accepts ``None``." + +msgid ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." +msgstr ":attr:`Bot.add_listener` and :attr:`Bot.remove_listener`'s ``name`` arguments no longer accept ``None``." + +msgid "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." +msgstr "The following :class:`.ext.commands.Context` attributes can now be ``None``: ``prefix``, ``command``, ``invoked_with``, ``invoked_subcommand``." + +msgid ":attr:`ext.commands.Command.help` can now be ``None``." +msgstr ":attr:`ext.commands.Command.help` can now be ``None``." + +msgid "Miscellaneous Changes" +msgstr "Miscellaneous Changes" + +msgid "The following were removed:" +msgstr "The following were removed:" + +msgid "``Client.request_offline_members``" +msgstr "``Client.request_offline_members``" + +msgid "``Client.logout``" +msgstr "``Client.logout``" + +msgid "``ExtensionNotFound.original``" +msgstr "``ExtensionNotFound.original``" + +msgid "``MemberCacheFlags.online``" +msgstr "``MemberCacheFlags.online``" + +msgid "``guild_subscriptions`` argument of :class:`Client`" +msgstr "``guild_subscriptions`` argument of :class:`Client`" + +msgid "``fetch_offline_members`` argument of :class:`Client`" +msgstr "``fetch_offline_members`` argument of :class:`Client`" + +msgid "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" +msgstr "``HelpCommand.clean_prefix`` moved to :attr:`ext.commands.Context.clean_prefix`" + +msgid "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." +msgstr "``VerificationLevel.table_flip`` (alias of ``high``) was removed. ``extreme``, ``very_high``, and ``double_table_flip`` attributes were removed and replaced with :attr:`VerificationLevel.highest`." + +msgid "The following were renamed:" +msgstr "The following were renamed:" + +msgid ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." +msgstr ":attr:`Colour.blurple` is renamed to :attr:`Colour.og_blurple`, and :attr:`Colour.blurple` now returns the newer color." + +msgid "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." +msgstr "``missing_perms`` arguments and attributes of :class:`ext.commands.MissingPermissions` and :class:`ext.commands.BotMissingPermissions` are renamed to ``missing_permissions``." + +msgid "The following were changed in behavior:" +msgstr "The following were changed in behavior:" + +msgid ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." +msgstr ":class:`Embed` that has a value is always considered truthy. Previously it only considered text fields." + +msgid ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." +msgstr ":meth:`Bot.add_cog` now raises an error when a cog with the same name is already registered. ``override`` argument can be used to bring back the 1.x behavior." + +msgid ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." +msgstr ":meth:`StageChannel.edit` can no longer edit ``topic``. Use :meth:`StageInstance.edit` instead." + +msgid ":meth:`StageChannel.clone` no longer clones its topic." +msgstr ":meth:`StageChannel.clone` no longer clones its topic." + +msgid "The following were changed in types:" +msgstr "The following were changed in types:" + +msgid ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." +msgstr ":attr:`ext.commands.Command.clean_params` is now a :class:`dict`, not :class:`OrderedDict`." + +msgid "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." +msgstr "``Reaction.custom_emoji`` is now :attr:`Reaction.is_custom_emoji` for consistency." + +msgid ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." +msgstr ":attr:`IntegrationAccount.id` is now :class:`str`, instead of :class:`int`, due to Discord changes." + +msgid ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." +msgstr ":attr:`AuditLogDiff.type` is now Union[:class:`ChannelType`, :class:`StickerType`], instead of :class:`ChannelType`." + +msgid "Parting Words" +msgstr "Parting Words" + +msgid "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." +msgstr "The v2.0 of the library implemented a lot of new features. To implement newer features, such as slash commands, they can be seen on our :resource:`guide `." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/old_changelog.po b/docs/locales/zh_CN/LC_MESSAGES/old_changelog.po new file mode 100644 index 0000000000..a1f5831ab1 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/old_changelog.po @@ -0,0 +1,2140 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Changelog" +msgstr "Changelog" + +msgid "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." +msgstr "This page keeps a detailed human-friendly rendering of what's new and changed in specific versions." + +msgid "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." +msgstr "This page is no longer maintained. For an updated changelog for version 2.0+, please check out our :doc:`new changelog ` instead." + +msgid "v2.0.0" +msgstr "v2.0.0" + +msgid "Fully deprecated/removed store channels" +msgstr "Fully deprecated/removed store channels" + +msgid "Buttons and Select Menus" +msgstr "Buttons and Select Menus" + +msgid "Slash commands, User commands, and Message commands (:issue:`31`)" +msgstr "Slash commands, User commands, and Message commands (:issue:`31`)" + +msgid "Message Content privileged intent (:issue:`332`)" +msgstr "Message Content privileged intent (:issue:`332`)" + +msgid "Voice receive API (:issue:`532`)" +msgstr "Voice receive API (:issue:`532`)" + +msgid "discord.ext.pages (Paginators) (:issue:`589`)" +msgstr "discord.ext.pages (Paginators) (:issue:`589`)" + +msgid "Input Text and Modal components (:issue:`630`)" +msgstr "Input Text and Modal components (:issue:`630`)" + +msgid "Discord API version changed from 9 to 10 (:issue:`1012`)" +msgstr "Discord API version changed from 9 to 10 (:issue:`1012`)" + +msgid "Application permissions v2 (:issue:`1129`)" +msgstr "Application permissions v2 (:issue:`1129`)" + +msgid "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" +msgstr "discord.ext.bridge (slash and prefixed commands) (:issue:`1131`)" + +msgid ":meth:`Client.get_message` (:issue:`1141`)" +msgstr ":meth:`Client.get_message` (:issue:`1141`)" + +msgid "Application Command Localization (:issue:`1185`)" +msgstr "Application Command Localization (:issue:`1185`)" + +msgid "Guild Ban List Paginated (:issue:`1217`)" +msgstr "Guild Ban List Paginated (:issue:`1217`)" + +msgid "Forum channels (:issue:`1249`)" +msgstr "Forum channels (:issue:`1249`)" + +msgid "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." +msgstr "Methods and attributes that returned :class:`TextChannel`, etc., can now return :class:`Thread`." + +msgid "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." +msgstr "Attributes that returned :class:`Asset` are renamed, e.g. attributes ending with ``_url`` (i.e.: ``avatar_url``) are changed to :attr:`avatar.url`. :attr:`User.avatar` returns ``None`` in case the default avatar is used." + +msgid ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." +msgstr ":func:`on_presence_update` replaces ``on_member_update`` for updates to :attr:`Member.status` and :attr:`Member.activities`." + +msgid ":class:`datetime.datetime` objects used in the library are now timezone-aware." +msgstr ":class:`datetime.datetime` objects used in the library are now timezone-aware." + +msgid "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." +msgstr "Sticker changes: ``StickerType`` has been renamed to :class:`StickerFormatType`, and the type of :attr:`Message.stickers` is altered. ``Sticker.preview_image``, ``Sticker.image`` and ``Sticker.tags`` are removed." + +msgid "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." +msgstr "Webhooks are changed significantly; ``WebhookAdapter`` is removed, and synchronous requests using requests is now inside :class:`SyncWebhook`." + +msgid "``edit`` method no longer updates the cache and instead returns modified instance." +msgstr "``edit`` method no longer updates the cache and instead returns modified instance." + +msgid "User accounts (userbots) are no longer supported." +msgstr "User accounts (userbots) are no longer supported." + +msgid "``Client.logout`` is removed; use :meth:`Client.close` instead." +msgstr "``Client.logout`` is removed; use :meth:`Client.close` instead." + +msgid "``on_private_channel_create/delete`` events are removed." +msgstr "``on_private_channel_create/delete`` events are removed." + +msgid "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." +msgstr "``User.permissions_in`` is removed; use :meth:`abc.GuildChannel.permissions_for` instead." + +msgid "``Message.type`` for replies are now :attr:`MessageType.reply`." +msgstr "``Message.type`` for replies are now :attr:`MessageType.reply`." + +msgid "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." +msgstr "``Reaction.custom_emoji`` property is changed to :meth:`Reaction.is_custom_emoji` method." + +msgid "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." +msgstr "``missing_perms`` attributes and arguments are renamed to ``missing_permissions``." + +msgid "Many method arguments now reject :class:`None`." +msgstr "Many method arguments now reject :class:`None`." + +msgid "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." +msgstr "Many arguments are now specified as positional-only or keyword-only; e.g. :meth:`utils.oauth_url` now takes keyword-only arguments, and methods starting with ``get_`` or ``fetch_`` take positional-only arguments." + +msgid ":doc:`migrating_to_v2`" +msgstr ":doc:`migrating_to_v2`" + +msgid "v1.7.3" +msgstr "v1.7.3" + +msgid "Bug Fixes" +msgstr "Bug Fixes" + +msgid "Fix a crash involving guild uploaded stickers" +msgstr "Fix a crash involving guild uploaded stickers" + +msgid "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." +msgstr "Fix :meth:`DMChannel.permissions_for` not having :attr:`Permissions.read_messages` set." + +msgid "v1.7.2" +msgstr "v1.7.2" + +msgid "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" +msgstr "Fix ``fail_if_not_exists`` causing certain message references to not be usable within :meth:`abc.Messageable.send` and :meth:`Message.reply` (:dpy-issue:`6726`)" + +msgid "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" +msgstr "Fix :meth:`Guild.chunk` hanging when the user left the guild. (:dpy-issue:`6730`)" + +msgid "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" +msgstr "Fix loop sleeping after final iteration rather than before (:dpy-issue:`6744`)" + +msgid "v1.7.1" +msgstr "v1.7.1" + +msgid "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." +msgstr "|commands| Fix :meth:`Cog.has_error_handler ` not working as intended." + +msgid "v1.7.0" +msgstr "v1.7.0" + +msgid "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." +msgstr "This version is mainly for improvements and bug fixes. This is more than likely the last major version in the 1.x series. Work after this will be spent on v2.0. As a result, **this is the last version to support Python 3.5**. Likewise, **this is the last version to support user bots**." + +msgid "Development of v2.0 will have breaking changes and support for newer API features." +msgstr "Development of v2.0 will have breaking changes and support for newer API features." + +msgid "New Features" +msgstr "New Features" + +msgid "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" +msgstr "Add support for stage channels via :class:`StageChannel` (:dpy-issue:`6602`, :dpy-issue:`6608`)" + +msgid "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" +msgstr "Add support for :attr:`MessageReference.fail_if_not_exists` (:dpy-issue:`6484`)" + +msgid "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." +msgstr "By default, if the message you're replying to doesn't exist then the API errors out. This attribute tells the Discord API that it's okay for that message to be missing." + +msgid "Add support for Discord's new permission serialisation scheme." +msgstr "Add support for Discord's new permission serialisation scheme." + +msgid "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" +msgstr "Add an easier way to move channels using :meth:`abc.GuildChannel.move`" + +msgid "Add :attr:`Permissions.use_slash_commands`" +msgstr "Add :attr:`Permissions.use_slash_commands`" + +msgid "Add :attr:`Permissions.request_to_speak`" +msgstr "Add :attr:`Permissions.request_to_speak`" + +msgid "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" +msgstr "Add support for voice regions in voice channels via :attr:`VoiceChannel.rtc_region` (:dpy-issue:`6606`)" + +msgid "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" +msgstr "Add support for :meth:`PartialEmoji.url_as` (:dpy-issue:`6341`)" + +msgid "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" +msgstr "Add :attr:`MessageReference.jump_url` (:dpy-issue:`6318`)" + +msgid "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" +msgstr "Add :attr:`File.spoiler` (:dpy-issue:`6317`)" + +msgid "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" +msgstr "Add support for passing ``roles`` to :meth:`Guild.estimate_pruned_members` (:dpy-issue:`6538`)" + +msgid "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" +msgstr "Allow callable class factories to be used in :meth:`abc.Connectable.play` (:dpy-issue:`6478`)" + +msgid "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" +msgstr "Add a way to get mutual guilds from the client's cache via :attr:`User.mutual_guilds` (:dpy-issue:`2539`, :dpy-issue:`6444`)" + +msgid ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" +msgstr ":meth:`PartialMessage.edit` now returns a full :class:`Message` upon success (:dpy-issue:`6309`)" + +msgid "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" +msgstr "Add :attr:`RawMessageUpdateEvent.guild_id` (:dpy-issue:`6489`)" + +msgid ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" +msgstr ":class:`AuditLogEntry` is now hashable (:dpy-issue:`6495`)" + +msgid ":class:`Attachment` is now hashable" +msgstr ":class:`Attachment` is now hashable" + +msgid "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" +msgstr "Add :attr:`Attachment.content_type` attribute (:dpy-issue:`6618`)" + +msgid "Add support for casting :class:`Attachment` to :class:`str` to get the URL." +msgstr "Add support for casting :class:`Attachment` to :class:`str` to get the URL." + +msgid "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" +msgstr "Add ``seed`` parameter for :class:`Colour.random` (:dpy-issue:`6562`)" + +msgid "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." +msgstr "This only seeds it for one call. If seeding for multiple calls is desirable, use :func:`random.seed`." + +msgid "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" +msgstr "Add a :func:`utils.remove_markdown` helper function (:dpy-issue:`6573`)" + +msgid "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" +msgstr "Add support for passing scopes to :func:`utils.oauth_url` (:dpy-issue:`6568`)" + +msgid "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" +msgstr "|commands| Add support for ``rgb`` CSS function as a parameter to :class:`ColourConverter ` (:dpy-issue:`6374`)" + +msgid "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" +msgstr "|commands| Add support for converting :class:`StoreChannel` via :class:`StoreChannelConverter ` (:dpy-issue:`6603`)" + +msgid "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." +msgstr "|commands| Add support for stripping whitespace after the prefix is encountered using the ``strip_after_prefix`` :class:`~ext.commands.Bot` constructor parameter." + +msgid "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" +msgstr "|commands| Add :attr:`Context.invoked_parents ` to get the aliases a command's parent was invoked with (:dpy-issue:`1874`, :dpy-issue:`6462`)" + +msgid "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" +msgstr "|commands| Add a converter for :class:`PartialMessage` under :class:`ext.commands.PartialMessageConverter` (:dpy-issue:`6308`)" + +msgid "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" +msgstr "|commands| Add a converter for :class:`Guild` under :class:`ext.commands.GuildConverter` (:dpy-issue:`6016`, :dpy-issue:`6365`)" + +msgid "|commands| Add :meth:`Command.has_error_handler `" +msgstr "|commands| Add :meth:`Command.has_error_handler `" + +msgid "This is also adds :meth:`Cog.has_error_handler `" +msgstr "This is also adds :meth:`Cog.has_error_handler `" + +msgid "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" +msgstr "|commands| Allow callable types to act as a bucket key for cooldowns (:dpy-issue:`6563`)" + +msgid "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" +msgstr "|commands| Add ``linesep`` keyword argument to :class:`Paginator ` (:dpy-issue:`5975`)" + +msgid "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" +msgstr "|commands| Allow ``None`` to be passed to :attr:`HelpCommand.verify_checks ` to only verify in a guild context (:dpy-issue:`2008`, :dpy-issue:`6446`)" + +msgid "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" +msgstr "|commands| Allow relative paths when loading extensions via a ``package`` keyword argument (:dpy-issue:`2465`, :dpy-issue:`6445`)" + +msgid "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" +msgstr "Fix mentions not working if ``mention_author`` is passed in :meth:`abc.Messageable.send` without :attr:`Client.allowed_mentions` set (:dpy-issue:`6192`, :dpy-issue:`6458`)" + +msgid "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" +msgstr "Fix user created instances of :class:`CustomActivity` triggering an error (:dpy-issue:`4049`)" + +msgid "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." +msgstr "Note that currently, bot users still cannot set a custom activity due to a Discord limitation." + +msgid "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" +msgstr "Fix :exc:`ZeroDivisionError` being raised from :attr:`VoiceClient.average_latency` (:dpy-issue:`6430`, :dpy-issue:`6436`)" + +msgid "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" +msgstr "Fix :attr:`User.public_flags` not updating upon edit (:dpy-issue:`6315`)" + +msgid "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" +msgstr "Fix :attr:`Message.call` sometimes causing attribute errors (:dpy-issue:`6390`)" + +msgid "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" +msgstr "Fix issue resending a file during request retries on newer versions of ``aiohttp`` (:dpy-issue:`6531`)" + +msgid "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" +msgstr "Raise an error when ``user_ids`` is empty in :meth:`Guild.query_members`" + +msgid "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." +msgstr "Fix ``__str__`` magic method raising when a :class:`Guild` is unavailable." + +msgid "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" +msgstr "Fix potential :exc:`AttributeError` when accessing :attr:`VoiceChannel.members` (:dpy-issue:`6602`)" + +msgid ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" +msgstr ":class:`Embed` constructor parameters now implicitly convert to :class:`str` (:dpy-issue:`6574`)" + +msgid "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" +msgstr "Ensure ``discord`` package is only run if executed as a script (:dpy-issue:`6483`)" + +msgid "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." +msgstr "|commands| Fix irrelevant commands potentially being unloaded during cog unload due to failure." + +msgid "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" +msgstr "|commands| Fix attribute errors when setting a cog to :class:`~.ext.commands.HelpCommand` (:dpy-issue:`5154`)" + +msgid "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" +msgstr "|commands| Fix :attr:`Context.invoked_with ` being improperly reassigned during a :meth:`~ext.commands.Context.reinvoke` (:dpy-issue:`6451`, :dpy-issue:`6462`)" + +msgid "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" +msgstr "|commands| Remove duplicates from :meth:`HelpCommand.get_bot_mapping ` (:dpy-issue:`6316`)" + +msgid "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" +msgstr "|commands| Properly handle positional-only parameters in bot command signatures (:dpy-issue:`6431`)" + +msgid "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" +msgstr "|commands| Group signatures now properly show up in :attr:`Command.signature ` (:dpy-issue:`6529`, :dpy-issue:`6530`)" + +msgid "Miscellaneous" +msgstr "Miscellaneous" + +msgid "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." +msgstr "User endpoints and all userbot related functionality has been deprecated and will be removed in the next major version of the library." + +msgid ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" +msgstr ":class:`Permission` class methods were updated to match the UI of the Discord client (:dpy-issue:`6476`)" + +msgid "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" +msgstr "``_`` and ``-`` characters are now stripped when making a new cog using the ``discord`` package (:dpy-issue:`6313`)" + +msgid "v1.6.0" +msgstr "v1.6.0" + +msgid "This version comes with support for replies and stickers." +msgstr "This version comes with support for replies and stickers." + +msgid "An entirely redesigned documentation. This was the cumulation of multiple months of effort." +msgstr "An entirely redesigned documentation. This was the cumulation of multiple months of effort." + +msgid "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." +msgstr "There's now a dark theme, feel free to navigate to the cog on the screen to change your setting, though this should be automatic." + +msgid "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" +msgstr "Add support for :meth:`AppInfo.icon_url_as` and :meth:`AppInfo.cover_image_url_as` (:dpy-issue:`5888`)" + +msgid "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" +msgstr "Add :meth:`Colour.random` to get a random colour (:dpy-issue:`6067`)" + +msgid "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" +msgstr "Add support for stickers via :class:`Sticker` (:dpy-issue:`5946`)" + +msgid "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" +msgstr "Add support for replying via :meth:`Message.reply` (:dpy-issue:`6061`)" + +msgid "This also comes with the :attr:`AllowedMentions.replied_user` setting." +msgstr "This also comes with the :attr:`AllowedMentions.replied_user` setting." + +msgid ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." +msgstr ":meth:`abc.Messageable.send` can now accept a :class:`MessageReference`." + +msgid ":class:`MessageReference` can now be constructed by users." +msgstr ":class:`MessageReference` can now be constructed by users." + +msgid ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." +msgstr ":meth:`Message.to_reference` can now convert a message to a :class:`MessageReference`." + +msgid "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." +msgstr "Add support for getting the replied to resolved message through :attr:`MessageReference.resolved`." + +msgid "Add support for role tags." +msgstr "Add support for role tags." + +msgid ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." +msgstr ":attr:`Guild.premium_subscriber_role` to get the \"Nitro Booster\" role (if available)." + +msgid ":attr:`Guild.self_role` to get the bot's own role (if available)." +msgstr ":attr:`Guild.self_role` to get the bot's own role (if available)." + +msgid ":attr:`Role.tags` to get the role's tags." +msgstr ":attr:`Role.tags` to get the role's tags." + +msgid ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." +msgstr ":meth:`Role.is_premium_subscriber` to check if a role is the \"Nitro Booster\" role." + +msgid ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." +msgstr ":meth:`Role.is_bot_managed` to check if a role is a bot role (i.e. the automatically created role for bots)." + +msgid ":meth:`Role.is_integration` to check if a role is role created by an integration." +msgstr ":meth:`Role.is_integration` to check if a role is role created by an integration." + +msgid "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." +msgstr "Add :meth:`Client.is_ws_ratelimited` to check if the websocket is rate limited." + +msgid ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." +msgstr ":meth:`ShardInfo.is_ws_ratelimited` is the equivalent for checking a specific shard." + +msgid "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" +msgstr "Add support for chunking an :class:`AsyncIterator` through :meth:`AsyncIterator.chunk` (:dpy-issue:`6100`, :dpy-issue:`6082`)" + +msgid "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" +msgstr "Add :attr:`PartialEmoji.created_at` (:dpy-issue:`6128`)" + +msgid "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" +msgstr "Add support for editing and deleting webhook sent messages (:dpy-issue:`6058`)" + +msgid "This adds :class:`WebhookMessage` as well to power this behaviour." +msgstr "This adds :class:`WebhookMessage` as well to power this behaviour." + +msgid "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" +msgstr "Add :class:`PartialMessage` to allow working with a message via channel objects and just a message_id (:dpy-issue:`5905`)" + +msgid "This is useful if you don't want to incur an extra API call to fetch the message." +msgstr "This is useful if you don't want to incur an extra API call to fetch the message." + +msgid "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" +msgstr "Add :meth:`Emoji.url_as` (:dpy-issue:`6162`)" + +msgid "Add support for :attr:`Member.pending` for the membership gating feature." +msgstr "Add support for :attr:`Member.pending` for the membership gating feature." + +msgid "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" +msgstr "Allow ``colour`` parameter to take ``int`` in :meth:`Guild.create_role` (:dpy-issue:`6195`)" + +msgid "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" +msgstr "Add support for ``presences`` in :meth:`Guild.query_members` (:dpy-issue:`2354`)" + +msgid "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" +msgstr "|commands| Add support for ``description`` keyword argument in :class:`commands.Cog ` (:dpy-issue:`6028`)" + +msgid "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." +msgstr "|tasks| Add support for calling the wrapped coroutine as a function via ``__call__``." + +msgid "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" +msgstr "Raise :exc:`DiscordServerError` when reaching 503s repeatedly (:dpy-issue:`6044`)" + +msgid "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" +msgstr "Fix :exc:`AttributeError` when :meth:`Client.fetch_template` is called (:dpy-issue:`5986`)" + +msgid "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" +msgstr "Fix errors when playing audio and moving to another channel (:dpy-issue:`5953`)" + +msgid "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" +msgstr "Fix :exc:`AttributeError` when voice channels disconnect too fast (:dpy-issue:`6039`)" + +msgid "Fix stale :class:`User` references when the members intent is off." +msgstr "Fix stale :class:`User` references when the members intent is off." + +msgid "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." +msgstr "Fix :func:`on_user_update` not dispatching in certain cases when a member is not cached but the user somehow is." + +msgid "Fix :attr:`Message.author` being overwritten in certain cases during message update." +msgstr "Fix :attr:`Message.author` being overwritten in certain cases during message update." + +msgid "This would previously make it so :attr:`Message.author` is a :class:`User`." +msgstr "This would previously make it so :attr:`Message.author` is a :class:`User`." + +msgid "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" +msgstr "Fix :exc:`UnboundLocalError` for editing ``public_updates_channel`` in :meth:`Guild.edit` (:dpy-issue:`6093`)" + +msgid "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" +msgstr "Fix uninitialised :attr:`CustomActivity.created_at` (:dpy-issue:`6095`)" + +msgid "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" +msgstr "|commands| Errors during cog unload no longer stops module cleanup (:dpy-issue:`6113`)" + +msgid "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" +msgstr "|commands| Properly cleanup lingering commands when a conflicting alias is found when adding commands (:dpy-issue:`6217`)" + +msgid "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" +msgstr "``ffmpeg`` spawned processes no longer open a window in Windows (:dpy-issue:`6038`)" + +msgid "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" +msgstr "Update dependencies to allow the library to work on Python 3.9+ without requiring build tools. (:dpy-issue:`5984`, :dpy-issue:`5970`)" + +msgid "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" +msgstr "Fix docstring issue leading to a SyntaxError in 3.9 (:dpy-issue:`6153`)" + +msgid "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" +msgstr "Update Windows opus binaries from 1.2.1 to 1.3.1 (:dpy-issue:`6161`)" + +msgid "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" +msgstr "Allow :meth:`Guild.create_role` to accept :class:`int` as the ``colour`` parameter (:dpy-issue:`6195`)" + +msgid "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" +msgstr "|commands| :class:`MessageConverter ` regex got updated to support ``www.`` prefixes (:dpy-issue:`6002`)" + +msgid "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." +msgstr "|commands| :class:`UserConverter ` now fetches the API if an ID is passed and the user is not cached." + +msgid "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" +msgstr "|commands| :func:`max_concurrency ` is now called before cooldowns (:dpy-issue:`6172`)" + +msgid "v1.5.1" +msgstr "v1.5.1" + +msgid "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping quotes properly (:dpy-issue:`5897`)" + +msgid "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" +msgstr "Fix :class:`Message` not being hashable (:dpy-issue:`5901`, :dpy-issue:`5866`)" + +msgid "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" +msgstr "Fix moving channels to the end of the channel list (:dpy-issue:`5923`)" + +msgid "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" +msgstr "Fix seemingly strange behaviour in ``__eq__`` for :class:`PermissionOverwrite` (:dpy-issue:`5929`)" + +msgid "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" +msgstr "Fix aliases showing up in ``__iter__`` for :class:`Intents` (:dpy-issue:`5945`)" + +msgid "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" +msgstr "Fix the bot disconnecting from voice when moving them to another channel (:dpy-issue:`5904`)" + +msgid "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." +msgstr "Fix attribute errors when chunking times out sometimes during delayed on_ready dispatching." + +msgid "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" +msgstr "Ensure that the bot's own member is not evicted from the cache (:dpy-issue:`5949`)" + +msgid "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" +msgstr "Members are now loaded during ``GUILD_MEMBER_UPDATE`` events if :attr:`MemberCacheFlags.joined` is set. (:dpy-issue:`5930`)" + +msgid "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." +msgstr "|commands| :class:`MemberConverter ` now properly lazily fetches members if not available from cache." + +msgid "This is the same as having ``discord.Member`` as the type-hint." +msgstr "This is the same as having ``discord.Member`` as the type-hint." + +msgid ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." +msgstr ":meth:`Guild.chunk` now allows concurrent calls without spamming the gateway with requests." + +msgid "v1.5.0" +msgstr "v1.5.0" + +msgid "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." +msgstr "This version came with forced breaking changes that Discord is requiring all bots to go through on October 7th. It is highly recommended to read the documentation on intents, :ref:`intents_primer`." + +msgid "API Changes" +msgstr "API Changes" + +msgid "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." +msgstr "Members and presences will no longer be retrieved due to an API change. See :ref:`privileged_intents` for more info." + +msgid "As a consequence, fetching offline members is disabled if the members intent is not enabled." +msgstr "As a consequence, fetching offline members is disabled if the members intent is not enabled." + +msgid "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." +msgstr "Support for gateway intents, passed via ``intents`` in :class:`Client` using :class:`Intents`." + +msgid "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" +msgstr "Add :attr:`VoiceRegion.south_korea` (:dpy-issue:`5233`)" + +msgid "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" +msgstr "Add support for ``__eq__`` for :class:`Message` (:dpy-issue:`5789`)" + +msgid "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" +msgstr "Add :meth:`Colour.dark_theme` factory method (:dpy-issue:`1584`)" + +msgid "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" +msgstr "Add :meth:`AllowedMentions.none` and :meth:`AllowedMentions.all` (:dpy-issue:`5785`)" + +msgid "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" +msgstr "Add more concrete exceptions for 500 class errors under :class:`DiscordServerError` (:dpy-issue:`5797`)" + +msgid "Implement :class:`VoiceProtocol` to better intersect the voice flow." +msgstr "Implement :class:`VoiceProtocol` to better intersect the voice flow." + +msgid "Add :meth:`Guild.chunk` to fully chunk a guild." +msgstr "Add :meth:`Guild.chunk` to fully chunk a guild." + +msgid "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." +msgstr "Add :class:`MemberCacheFlags` to better control member cache. See :ref:`intents_member_cache` for more info." + +msgid "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" +msgstr "Add support for :attr:`ActivityType.competing` (:dpy-issue:`5823`)" + +msgid "This seems currently unused API wise." +msgstr "This seems currently unused API wise." + +msgid "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" +msgstr "Add support for message references, :attr:`Message.reference` (:dpy-issue:`5754`, :dpy-issue:`5832`)" + +msgid "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" +msgstr "Add alias for :class:`ColourConverter` under ``ColorConverter`` (:dpy-issue:`5773`)" + +msgid "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" +msgstr "Add alias for :attr:`PublicUserFlags.verified_bot_developer` under :attr:`PublicUserFlags.early_verified_bot_developer` (:dpy-issue:`5849`)" + +msgid "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" +msgstr "|commands| Add support for ``require_var_positional`` for :class:`Command` (:dpy-issue:`5793`)" + +msgid "Fix issue with :meth:`Guild.by_category` not showing certain channels." +msgstr "Fix issue with :meth:`Guild.by_category` not showing certain channels." + +msgid "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" +msgstr "Fix :attr:`abc.GuildChannel.permissions_synced` always being ``False`` (:dpy-issue:`5772`)" + +msgid "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" +msgstr "Fix handling of cloudflare bans on webhook related requests (:dpy-issue:`5221`)" + +msgid "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" +msgstr "Fix cases where a keep-alive thread would ack despite already dying (:dpy-issue:`5800`)" + +msgid "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" +msgstr "Fix cases where a :class:`Member` reference would be stale when cache is disabled in message events (:dpy-issue:`5819`)" + +msgid "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" +msgstr "Fix ``allowed_mentions`` not being sent when sending a single file (:dpy-issue:`5835`)" + +msgid "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" +msgstr "Fix ``overwrites`` being ignored in :meth:`abc.GuildChannel.edit` if ``{}`` is passed (:dpy-issue:`5756`, :dpy-issue:`5757`)" + +msgid "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" +msgstr "|commands| Fix exceptions being raised improperly in command invoke hooks (:dpy-issue:`5799`)" + +msgid "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" +msgstr "|commands| Fix commands not being properly ejected during errors in a cog injection (:dpy-issue:`5804`)" + +msgid "|commands| Fix cooldown timing ignoring edited timestamps." +msgstr "|commands| Fix cooldown timing ignoring edited timestamps." + +msgid "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" +msgstr "|tasks| Fix tasks extending the next iteration on handled exceptions (:dpy-issue:`5762`, :dpy-issue:`5763`)" + +msgid "Webhook requests are now logged (:dpy-issue:`5798`)" +msgstr "Webhook requests are now logged (:dpy-issue:`5798`)" + +msgid "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." +msgstr "Remove caching layer from :attr:`AutoShardedClient.shards`. This was causing issues if queried before launching shards." + +msgid "Gateway rate limits are now handled." +msgstr "Gateway rate limits are now handled." + +msgid "Warnings logged due to missed caches are now changed to DEBUG log level." +msgstr "Warnings logged due to missed caches are now changed to DEBUG log level." + +msgid "Some strings are now explicitly interned to reduce memory usage." +msgstr "Some strings are now explicitly interned to reduce memory usage." + +msgid "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" +msgstr "Usage of namedtuples has been reduced to avoid potential breaking changes in the future (:dpy-issue:`5834`)" + +msgid "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" +msgstr "|commands| All :class:`BadArgument` exceptions from the built-in converters now raise concrete exceptions to better tell them apart (:dpy-issue:`5748`)" + +msgid "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" +msgstr "|tasks| Lazily fetch the event loop to prevent surprises when changing event loop policy (:dpy-issue:`5808`)" + +msgid "v1.4.2" +msgstr "v1.4.2" + +msgid "This is a maintenance release with backports from :ref:`vp1p5p0`." +msgstr "This is a maintenance release with backports from :ref:`vp1p5p0`." + +msgid "v1.4.1" +msgstr "v1.4.1" + +msgid "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" +msgstr "Properly terminate the connection when :meth:`Client.close` is called (:dpy-issue:`5207`)" + +msgid "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" +msgstr "Fix error being raised when clearing embed author or image when it was already cleared (:dpy-issue:`5210`, :dpy-issue:`5212`)" + +msgid "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" +msgstr "Fix ``__path__`` to allow editable extensions (:dpy-issue:`5213`)" + +msgid "v1.4.0" +msgstr "v1.4.0" + +msgid "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" +msgstr "Another version with a long development time. Features like Intents are slated to be released in a v1.5 release. Thank you for your patience!" + +msgid "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." +msgstr "Add support for :class:`AllowedMentions` to have more control over what gets mentioned." + +msgid "This can be set globally through :attr:`Client.allowed_mentions`" +msgstr "This can be set globally through :attr:`Client.allowed_mentions`" + +msgid "This can also be set on a per message basis via :meth:`abc.Messageable.send`" +msgstr "This can also be set on a per message basis via :meth:`abc.Messageable.send`" + +msgid ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" +msgstr ":class:`AutoShardedClient` has been completely redesigned from the ground up to better suit multi-process clusters (:dpy-issue:`2654`)" + +msgid "Add :class:`ShardInfo` which allows fetching specific information about a shard." +msgstr "Add :class:`ShardInfo` which allows fetching specific information about a shard." + +msgid "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." +msgstr "The :class:`ShardInfo` allows for reconnecting and disconnecting of a specific shard as well." + +msgid "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." +msgstr "Add :meth:`AutoShardedClient.get_shard` and :attr:`AutoShardedClient.shards` to get information about shards." + +msgid "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." +msgstr "Rework the entire connection flow to better facilitate the ``IDENTIFY`` rate limits." + +msgid "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." +msgstr "Add a hook :meth:`Client.before_identify_hook` to have better control over what happens before an ``IDENTIFY`` is done." + +msgid "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." +msgstr "Add more shard related events such as :func:`on_shard_connect`, :func:`on_shard_disconnect` and :func:`on_shard_resumed`." + +msgid "Add support for guild templates (:dpy-issue:`2652`)" +msgstr "Add support for guild templates (:dpy-issue:`2652`)" + +msgid "This adds :class:`Template` to read a template's information." +msgstr "This adds :class:`Template` to read a template's information." + +msgid ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." +msgstr ":meth:`Client.fetch_template` can be used to fetch a template's information from the API." + +msgid ":meth:`Client.create_guild` can now take an optional template to base the creation from." +msgstr ":meth:`Client.create_guild` can now take an optional template to base the creation from." + +msgid "Note that fetching a guild's template is currently restricted for bot accounts." +msgstr "Note that fetching a guild's template is currently restricted for bot accounts." + +msgid "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" +msgstr "Add support for guild integrations (:dpy-issue:`2051`, :dpy-issue:`1083`)" + +msgid ":class:`Integration` is used to read integration information." +msgstr ":class:`Integration` is used to read integration information." + +msgid ":class:`IntegrationAccount` is used to read integration account information." +msgstr ":class:`IntegrationAccount` is used to read integration account information." + +msgid ":meth:`Guild.integrations` will fetch all integrations in a guild." +msgstr ":meth:`Guild.integrations` will fetch all integrations in a guild." + +msgid ":meth:`Guild.create_integration` will create an integration." +msgstr ":meth:`Guild.create_integration` will create an integration." + +msgid ":meth:`Integration.edit` will edit an existing integration." +msgstr ":meth:`Integration.edit` will edit an existing integration." + +msgid ":meth:`Integration.delete` will delete an integration." +msgstr ":meth:`Integration.delete` will delete an integration." + +msgid ":meth:`Integration.sync` will sync an integration." +msgstr ":meth:`Integration.sync` will sync an integration." + +msgid "There is currently no support in the audit log for this." +msgstr "There is currently no support in the audit log for this." + +msgid "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" +msgstr "Add an alias for :attr:`VerificationLevel.extreme` under :attr:`VerificationLevel.very_high` (:dpy-issue:`2650`)" + +msgid "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" +msgstr "Add various grey to gray aliases for :class:`Colour` (:dpy-issue:`5130`)" + +msgid "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" +msgstr "Added :attr:`VoiceClient.latency` and :attr:`VoiceClient.average_latency` (:dpy-issue:`2535`)" + +msgid "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" +msgstr "Add ``use_cached`` and ``spoiler`` parameters to :meth:`Attachment.to_file` (:dpy-issue:`2577`, :dpy-issue:`4095`)" + +msgid "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" +msgstr "Add ``position`` parameter support to :meth:`Guild.create_category` (:dpy-issue:`2623`)" + +msgid "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" +msgstr "Allow passing ``int`` for the colour in :meth:`Role.edit` (:dpy-issue:`4057`)" + +msgid "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" +msgstr "Add :meth:`Embed.remove_author` to clear author information from an embed (:dpy-issue:`4068`)" + +msgid "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" +msgstr "Add the ability to clear images and thumbnails in embeds using :attr:`Embed.Empty` (:dpy-issue:`4053`)" + +msgid "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.max_video_channel_users` (:dpy-issue:`4120`)" + +msgid "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" +msgstr "Add :attr:`Guild.public_updates_channel` (:dpy-issue:`4120`)" + +msgid "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" +msgstr "Add ``guild_ready_timeout`` parameter to :class:`Client` and subclasses to control timeouts when the ``GUILD_CREATE`` stream takes too long (:dpy-issue:`4112`)" + +msgid "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" +msgstr "Add support for public user flags via :attr:`User.public_flags` and :class:`PublicUserFlags` (:dpy-issue:`3999`)" + +msgid "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" +msgstr "Allow changing of channel types via :meth:`TextChannel.edit` to and from a news channel (:dpy-issue:`4121`)" + +msgid "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" +msgstr "Add :meth:`Guild.edit_role_positions` to bulk edit role positions in a single API call (:dpy-issue:`2501`, :dpy-issue:`2143`)" + +msgid "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" +msgstr "Add :meth:`Guild.change_voice_state` to change your voice state in a guild (:dpy-issue:`5088`)" + +msgid "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.is_icon_animated` for checking if the invite guild has animated icon (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" +msgstr "Add :meth:`PartialInviteGuild.icon_url_as` now supports ``static_format`` for consistency (:dpy-issue:`4180`, :dpy-issue:`4181`)" + +msgid "Add support for ``user_ids`` in :meth:`Guild.query_members`" +msgstr "Add support for ``user_ids`` in :meth:`Guild.query_members`" + +msgid "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" +msgstr "Add support for pruning members by roles in :meth:`Guild.prune_members` (:dpy-issue:`4043`)" + +msgid "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" +msgstr "|commands| Implement :func:`~ext.commands.before_invoke` and :func:`~ext.commands.after_invoke` decorators (:dpy-issue:`1986`, :dpy-issue:`2502`)" + +msgid "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" +msgstr "|commands| Add a way to retrieve ``retry_after`` from a cooldown in a command via :meth:`Command.get_cooldown_retry_after <.ext.commands.Command.get_cooldown_retry_after>` (:dpy-issue:`5195`)" + +msgid "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" +msgstr "|commands| Add a way to dynamically add and remove checks from a :class:`HelpCommand <.ext.commands.HelpCommand>` (:dpy-issue:`5197`)" + +msgid "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" +msgstr "|tasks| Add :meth:`Loop.is_running <.ext.tasks.Loop.is_running>` method to the task objects (:dpy-issue:`2540`)" + +msgid "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" +msgstr "|tasks| Allow usage of custom error handlers similar to the command extensions to tasks using :meth:`Loop.error <.ext.tasks.Loop.error>` decorator (:dpy-issue:`2621`)" + +msgid "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" +msgstr "Fix issue with :attr:`PartialEmoji.url` reads leading to a failure (:dpy-issue:`4015`, :dpy-issue:`4016`)" + +msgid "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" +msgstr "Allow :meth:`abc.Messageable.history` to take a limit of ``1`` even if ``around`` is passed (:dpy-issue:`4019`)" + +msgid "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" +msgstr "Fix :attr:`Guild.member_count` not updating in certain cases when a member has left the guild (:dpy-issue:`4021`)" + +msgid "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" +msgstr "Fix the type of :attr:`Object.id` not being validated. For backwards compatibility ``str`` is still allowed but is converted to ``int`` (:dpy-issue:`4002`)" + +msgid "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" +msgstr "Fix :meth:`Guild.edit` not allowing editing of notification settings (:dpy-issue:`4074`, :dpy-issue:`4047`)" + +msgid "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" +msgstr "Fix crash when the guild widget contains channels that aren't in the payload (:dpy-issue:`4114`, :dpy-issue:`4115`)" + +msgid "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" +msgstr "Close ffmpeg stdin handling from spawned processes with :class:`FFmpegOpusAudio` and :class:`FFmpegPCMAudio` (:dpy-issue:`4036`)" + +msgid "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" +msgstr "Fix :func:`utils.escape_markdown` not escaping masked links (:dpy-issue:`4206`, :dpy-issue:`4207`)" + +msgid "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" +msgstr "Fix reconnect loop due to failed handshake on region change (:dpy-issue:`4210`, :dpy-issue:`3996`)" + +msgid "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" +msgstr "Fix :meth:`Guild.by_category` not returning empty categories (:dpy-issue:`4186`)" + +msgid "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" +msgstr "Fix certain JPEG images not being identified as JPEG (:dpy-issue:`5143`)" + +msgid "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" +msgstr "Fix a crash when an incomplete guild object is used when fetching reaction information (:dpy-issue:`5181`)" + +msgid "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" +msgstr "Fix a timeout issue when fetching members using :meth:`Guild.query_members`" + +msgid "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" +msgstr "Fix an issue with domain resolution in voice (:dpy-issue:`5188`, :dpy-issue:`5191`)" + +msgid "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" +msgstr "Fix an issue where :attr:`PartialEmoji.id` could be a string (:dpy-issue:`4153`, :dpy-issue:`4152`)" + +msgid "Fix regression where :attr:`Member.activities` would not clear." +msgstr "Fix regression where :attr:`Member.activities` would not clear." + +msgid "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" +msgstr "|commands| A :exc:`TypeError` is now raised when :obj:`typing.Optional` is used within :data:`commands.Greedy <.ext.commands.Greedy>` (:dpy-issue:`2253`, :dpy-issue:`5068`)" + +msgid "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" +msgstr "|commands| :meth:`Bot.walk_commands <.ext.commands.Bot.walk_commands>` no longer yields duplicate commands due to aliases (:dpy-issue:`2591`)" + +msgid "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" +msgstr "|commands| Fix regex characters not being escaped in :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` (:dpy-issue:`4058`, :dpy-issue:`4071`)" + +msgid "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" +msgstr "|commands| Fix :meth:`Bot.get_command <.ext.commands.Bot.get_command>` from raising errors when a name only has whitespace (:dpy-issue:`5124`)" + +msgid "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" +msgstr "|commands| Fix issue with :attr:`Context.subcommand_passed <.ext.commands.Context.subcommand_passed>` not functioning as expected (:dpy-issue:`5198`)" + +msgid "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" +msgstr "|tasks| Task objects are no longer stored globally so two class instances can now start two separate tasks (:dpy-issue:`2294`)" + +msgid "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" +msgstr "|tasks| Allow cancelling the loop within :meth:`before_loop <.ext.tasks.Loop.before_loop>` (:dpy-issue:`4082`)" + +msgid "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" +msgstr "The :attr:`Member.roles` cache introduced in v1.3 was reverted due to issues caused (:dpy-issue:`4087`, :dpy-issue:`4157`)" + +msgid ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" +msgstr ":class:`Webhook` objects are now comparable and hashable (:dpy-issue:`4182`)" + +msgid "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" +msgstr "Some more API requests got a ``reason`` parameter for audit logs (:dpy-issue:`5086`)" + +msgid ":meth:`TextChannel.follow`" +msgstr ":meth:`TextChannel.follow`" + +msgid ":meth:`Message.pin` and :meth:`Message.unpin`" +msgstr ":meth:`Message.pin` and :meth:`Message.unpin`" + +msgid ":meth:`Webhook.delete` and :meth:`Webhook.edit`" +msgstr ":meth:`Webhook.delete` and :meth:`Webhook.edit`" + +msgid "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." +msgstr "For performance reasons ``websockets`` has been dropped in favour of ``aiohttp.ws``." + +msgid "The blocking logging message now shows the stack trace of where the main thread was blocking" +msgstr "The blocking logging message now shows the stack trace of where the main thread was blocking" + +msgid "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" +msgstr "The domain name was changed from ``discordapp.com`` to ``discord.com`` to prepare for the required domain migration" + +msgid "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" +msgstr "Reduce memory usage when reconnecting due to stale references being held by the message cache (:dpy-issue:`5133`)" + +msgid "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." +msgstr "Optimize :meth:`abc.GuildChannel.permissions_for` by not creating as many temporary objects (20-32% savings)." + +msgid "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" +msgstr "|commands| Raise :exc:`~ext.commands.CommandRegistrationError` instead of :exc:`ClientException` when a duplicate error is registered (:dpy-issue:`4217`)" + +msgid "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" +msgstr "|tasks| No longer handle :exc:`HTTPException` by default in the task reconnect loop (:dpy-issue:`5193`)" + +msgid "v1.3.4" +msgstr "v1.3.4" + +msgid "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" +msgstr "Fix an issue with channel overwrites causing multiple issues including crashes (:dpy-issue:`5109`)" + +msgid "v1.3.3" +msgstr "v1.3.3" + +msgid "Change default WS close to 4000 instead of 1000." +msgstr "Change default WS close to 4000 instead of 1000." + +msgid "The previous close code caused sessions to be invalidated at a higher frequency than desired." +msgstr "The previous close code caused sessions to be invalidated at a higher frequency than desired." + +msgid "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" +msgstr "Fix ``None`` appearing in ``Member.activities``. (:dpy-issue:`2619`)" + +msgid "v1.3.2" +msgstr "v1.3.2" + +msgid "Another minor bug fix release." +msgstr "Another minor bug fix release." + +msgid "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." +msgstr "Higher the wait time during the ``GUILD_CREATE`` stream before ``on_ready`` is fired for :class:`AutoShardedClient`." + +msgid ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." +msgstr ":func:`on_voice_state_update` now uses the inner ``member`` payload which should make it more reliable." + +msgid "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" +msgstr "Fix various Cloudflare handling errors (:dpy-issue:`2572`, :dpy-issue:`2544`)" + +msgid "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." +msgstr "Fix crashes if :attr:`Message.guild` is :class:`Object` instead of :class:`Guild`." + +msgid "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." +msgstr "Fix :meth:`Webhook.send` returning an empty string instead of ``None`` when ``wait=False``." + +msgid "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" +msgstr "Fix invalid format specifier in webhook state (:dpy-issue:`2570`)" + +msgid "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." +msgstr "|commands| Passing invalid permissions to permission related checks now raises ``TypeError``." + +msgid "v1.3.1" +msgstr "v1.3.1" + +msgid "Minor bug fix release." +msgstr "Minor bug fix release." + +msgid "Fix fetching invites in guilds that the user is not in." +msgstr "Fix fetching invites in guilds that the user is not in." + +msgid "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" +msgstr "Fix the channel returned from :meth:`Client.fetch_channel` raising when sending messages. (:dpy-issue:`2531`)" + +msgid "Fix compatibility warnings when using the Python 3.9 alpha." +msgstr "Fix compatibility warnings when using the Python 3.9 alpha." + +msgid "Change the unknown event logging from WARNING to DEBUG to reduce noise." +msgstr "Change the unknown event logging from WARNING to DEBUG to reduce noise." + +msgid "v1.3.0" +msgstr "v1.3.0" + +msgid "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" +msgstr "This version comes with a lot of bug fixes and new features. It's been in development for a lot longer than was anticipated!" + +msgid "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" +msgstr "Add :meth:`Guild.fetch_members` to fetch members from the HTTP API. (:dpy-issue:`2204`)" + +msgid "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" +msgstr "Add :meth:`Guild.fetch_roles` to fetch roles from the HTTP API. (:dpy-issue:`2208`)" + +msgid "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" +msgstr "Add support for teams via :class:`Team` when fetching with :meth:`Client.application_info`. (:dpy-issue:`2239`)" + +msgid "Add support for suppressing embeds via :meth:`Message.edit`" +msgstr "Add support for suppressing embeds via :meth:`Message.edit`" + +msgid "Add support for guild subscriptions. See the :class:`Client` documentation for more details." +msgstr "Add support for guild subscriptions. See the :class:`Client` documentation for more details." + +msgid "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." +msgstr "Add :attr:`VoiceChannel.voice_states` to get voice states without relying on member cache." + +msgid "Add :meth:`Guild.query_members` to request members from the gateway." +msgstr "Add :meth:`Guild.query_members` to request members from the gateway." + +msgid "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" +msgstr "Add :class:`FFmpegOpusAudio` and other voice improvements. (:dpy-issue:`2258`)" + +msgid "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" +msgstr "Add :attr:`RawMessageUpdateEvent.channel_id` for retrieving channel IDs during raw message updates. (:dpy-issue:`2301`)" + +msgid "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." +msgstr "Add :attr:`RawReactionActionEvent.event_type` to disambiguate between reaction addition and removal in reaction events." + +msgid "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" +msgstr "Add :attr:`abc.GuildChannel.permissions_synced` to query whether permissions are synced with the category. (:dpy-issue:`2300`, :dpy-issue:`2324`)" + +msgid "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" +msgstr "Add :attr:`MessageType.channel_follow_add` message type for announcement channels being followed. (:dpy-issue:`2314`)" + +msgid "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." +msgstr "Add :meth:`Message.is_system` to allow for quickly filtering through system messages." + +msgid "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" +msgstr "Add :attr:`VoiceState.self_stream` to indicate whether someone is streaming via Go Live. (:dpy-issue:`2343`)" + +msgid "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" +msgstr "Add :meth:`Emoji.is_usable` to check if the client user can use an emoji. (:dpy-issue:`2349`)" + +msgid "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" +msgstr "Add :attr:`VoiceRegion.europe` and :attr:`VoiceRegion.dubai`. (:dpy-issue:`2358`, :dpy-issue:`2490`)" + +msgid "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" +msgstr "Add :meth:`TextChannel.follow` to follow a news channel. (:dpy-issue:`2367`)" + +msgid "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" +msgstr "Add :attr:`Permissions.view_guild_insights` permission. (:dpy-issue:`2415`)" + +msgid "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" +msgstr "Add support for new audit log types. See :ref:`discord-api-audit-logs` for more information. (:dpy-issue:`2427`)" + +msgid "Note that integration support is not finalized." +msgstr "Note that integration support is not finalized." + +msgid "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" +msgstr "Add :attr:`Webhook.type` to query the type of webhook (:class:`WebhookType`). (:dpy-issue:`2441`)" + +msgid "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" +msgstr "Allow bulk editing of channel overwrites through :meth:`abc.GuildChannel.edit`. (:dpy-issue:`2198`)" + +msgid "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" +msgstr "Add :class:`Activity.created_at` to see when an activity was started. (:dpy-issue:`2446`)" + +msgid "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" +msgstr "Add support for ``xsalsa20_poly1305_lite`` encryption mode for voice. (:dpy-issue:`2463`)" + +msgid "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" +msgstr "Add :attr:`RawReactionActionEvent.member` to get the member who did the reaction. (:dpy-issue:`2443`)" + +msgid "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" +msgstr "Add support for new YouTube streaming via :attr:`Streaming.platform` and :attr:`Streaming.game`. (:dpy-issue:`2445`)" + +msgid "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.discovery_splash_url` to get the discovery splash image asset. (:dpy-issue:`2482`)" + +msgid "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" +msgstr "Add :attr:`Guild.rules_channel` to get the rules channel of public guilds. (:dpy-issue:`2482`)" + +msgid "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." +msgstr "It should be noted that this feature is restricted to those who are either in Server Discovery or planning to be there." + +msgid "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" +msgstr "Add support for message flags via :attr:`Message.flags` and :class:`MessageFlags`. (:dpy-issue:`2433`)" + +msgid "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." +msgstr "Add :attr:`User.system` and :attr:`Profile.system` to know whether a user is an official Discord Trust and Safety account." + +msgid "Add :attr:`Profile.team_user` to check whether a user is a member of a team." +msgstr "Add :attr:`Profile.team_user` to check whether a user is a member of a team." + +msgid "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." +msgstr "Add :meth:`Attachment.to_file` to easily convert attachments to :class:`File` for sending." + +msgid "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" +msgstr "Add certain aliases to :class:`Permissions` to match the UI better. (:dpy-issue:`2496`)" + +msgid ":attr:`Permissions.manage_permissions`" +msgstr ":attr:`Permissions.manage_permissions`" + +msgid ":attr:`Permissions.view_channel`" +msgstr ":attr:`Permissions.view_channel`" + +msgid ":attr:`Permissions.use_external_emojis`" +msgstr ":attr:`Permissions.use_external_emojis`" + +msgid "Add support for passing keyword arguments when creating :class:`Permissions`." +msgstr "Add support for passing keyword arguments when creating :class:`Permissions`." + +msgid "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" +msgstr "Add support for custom activities via :class:`CustomActivity`. (:dpy-issue:`2400`)" + +msgid "Note that as of now, bots cannot send custom activities yet." +msgstr "Note that as of now, bots cannot send custom activities yet." + +msgid "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." +msgstr "Add support for :func:`on_invite_create` and :func:`on_invite_delete` events." + +msgid "Add support for clearing a specific reaction emoji from a message." +msgstr "Add support for clearing a specific reaction emoji from a message." + +msgid ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." +msgstr ":meth:`Message.clear_reaction` and :meth:`Reaction.clear` methods." + +msgid ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." +msgstr ":func:`on_raw_reaction_clear_emoji` and :func:`on_reaction_clear_emoji` events." + +msgid "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" +msgstr "Add :func:`utils.sleep_until` helper to sleep until a specific datetime. (:dpy-issue:`2517`, :dpy-issue:`2519`)" + +msgid "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" +msgstr "|commands| Add support for teams and :attr:`Bot.owner_ids <.ext.commands.Bot.owner_ids>` to have multiple bot owners. (:dpy-issue:`2239`)" + +msgid "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" +msgstr "|commands| Add new :attr:`BucketType.role <.ext.commands.BucketType.role>` bucket type. (:dpy-issue:`2201`)" + +msgid "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" +msgstr "|commands| Expose :attr:`Command.cog <.ext.commands.Command.cog>` property publicly. (:dpy-issue:`2360`)" + +msgid "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" +msgstr "|commands| Add non-decorator interface for adding checks to commands via :meth:`Command.add_check <.ext.commands.Command.add_check>` and :meth:`Command.remove_check <.ext.commands.Command.remove_check>`. (:dpy-issue:`2411`)" + +msgid "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`has_guild_permissions <.ext.commands.has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" +msgstr "|commands| Add :func:`bot_has_guild_permissions <.ext.commands.bot_has_guild_permissions>` check. (:dpy-issue:`2460`)" + +msgid "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." +msgstr "|commands| Add ``predicate`` attribute to checks decorated with :func:`~.ext.commands.check`." + +msgid "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." +msgstr "|commands| Add :func:`~.ext.commands.check_any` check to logical OR multiple checks." + +msgid "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." +msgstr "|commands| Add :func:`~.ext.commands.max_concurrency` to allow only a certain amount of users to use a command concurrently before waiting or erroring." + +msgid "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." +msgstr "|commands| Add support for calling a :class:`~.ext.commands.Command` as a regular function." + +msgid "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" +msgstr "|tasks| :meth:`Loop.add_exception_type <.ext.tasks.Loop.add_exception_type>` now allows multiple exceptions to be set. (:dpy-issue:`2333`)" + +msgid "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" +msgstr "|tasks| Add :attr:`Loop.next_iteration <.ext.tasks.Loop.next_iteration>` property. (:dpy-issue:`2305`)" + +msgid "Fix issue with permission resolution sometimes failing for guilds with no owner." +msgstr "Fix issue with permission resolution sometimes failing for guilds with no owner." + +msgid "Tokens are now stripped upon use. (:dpy-issue:`2135`)" +msgstr "Tokens are now stripped upon use. (:dpy-issue:`2135`)" + +msgid "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" +msgstr "Passing in a ``name`` is no longer required for :meth:`Emoji.edit`. (:dpy-issue:`2368`)" + +msgid "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" +msgstr "Fix issue with webhooks not re-raising after retries have run out. (:dpy-issue:`2272`, :dpy-issue:`2380`)" + +msgid "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" +msgstr "Fix mismatch in URL handling in :func:`utils.escape_markdown`. (:dpy-issue:`2420`)" + +msgid "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" +msgstr "Fix issue with ports being read in little endian when they should be big endian in voice connections. (:dpy-issue:`2470`)" + +msgid "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." +msgstr "Fix :meth:`Member.mentioned_in` not taking into consideration the message's guild." + +msgid "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." +msgstr "Fix bug with moving channels when there are gaps in positions due to channel deletion and creation." + +msgid "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" +msgstr "Fix :func:`on_shard_ready` not triggering when ``fetch_offline_members`` is disabled. (:dpy-issue:`2504`)" + +msgid "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." +msgstr "Fix issue with large sharded bots taking too long to actually dispatch :func:`on_ready`." + +msgid "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." +msgstr "Fix issue with fetching group DM based invites in :meth:`Client.fetch_invite`." + +msgid "Fix out of order files being sent in webhooks when there are 10 files." +msgstr "Fix out of order files being sent in webhooks when there are 10 files." + +msgid "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" +msgstr "|commands| Extensions that fail internally due to ImportError will no longer raise :exc:`~.ext.commands.ExtensionNotFound`. (:dpy-issue:`2244`, :dpy-issue:`2275`, :dpy-issue:`2291`)" + +msgid "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" +msgstr "|commands| Updating the :attr:`Paginator.suffix <.ext.commands.Paginator.suffix>` will not cause out of date calculations. (:dpy-issue:`2251`)" + +msgid "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" +msgstr "|commands| Allow converters from custom extension packages. (:dpy-issue:`2369`, :dpy-issue:`2374`)" + +msgid "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" +msgstr "|commands| Fix issue with paginator prefix being ``None`` causing empty pages. (:dpy-issue:`2471`)" + +msgid "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." +msgstr "|commands| :class:`~.commands.Greedy` now ignores parsing errors rather than propagating them." + +msgid "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." +msgstr "|commands| :meth:`Command.can_run <.ext.commands.Command.can_run>` now checks whether a command is disabled." + +msgid "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" +msgstr "|commands| :attr:`HelpCommand.clean_prefix <.ext.commands.HelpCommand.clean_prefix>` now takes into consideration nickname mentions. (:dpy-issue:`2489`)" + +msgid "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." +msgstr "|commands| :meth:`Context.send_help <.ext.commands.Context.send_help>` now properly propagates to the :meth:`HelpCommand.on_help_command_error <.ext.commands.HelpCommand.on_help_command_error>` handler." + +msgid "The library now fully supports Python 3.8 without warnings." +msgstr "The library now fully supports Python 3.8 without warnings." + +msgid "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" +msgstr "Bump the dependency of ``websockets`` to 8.0 for those who can use it. (:dpy-issue:`2453`)" + +msgid "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." +msgstr "Due to Discord providing :class:`Member` data in mentions, users will now be upgraded to :class:`Member` more often if mentioned." + +msgid ":func:`utils.escape_markdown` now properly escapes new quote markdown." +msgstr ":func:`utils.escape_markdown` now properly escapes new quote markdown." + +msgid "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." +msgstr "The message cache can now be disabled by passing ``None`` to ``max_messages`` in :class:`Client`." + +msgid "The default message cache size has changed from 5000 to 1000 to accommodate small bots." +msgstr "The default message cache size has changed from 5000 to 1000 to accommodate small bots." + +msgid "Lower memory usage by only creating certain objects as needed in :class:`Role`." +msgstr "Lower memory usage by only creating certain objects as needed in :class:`Role`." + +msgid "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." +msgstr "There is now a sleep of 5 seconds before re-IDENTIFYing during a reconnect to prevent long loops of session invalidation." + +msgid "The rate limiting code now uses millisecond precision to have more granular rate limit handling." +msgstr "The rate limiting code now uses millisecond precision to have more granular rate limit handling." + +msgid "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." +msgstr "Along with that, the rate limiting code now uses Discord's response to wait. If you need to use the system clock again for whatever reason, consider passing ``assume_synced_clock`` in :class:`Client`." + +msgid "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" +msgstr "The performance of :attr:`Guild.default_role` has been improved from O(N) to O(1). (:dpy-issue:`2375`)" + +msgid "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." +msgstr "The performance of :attr:`Member.roles` has improved due to usage of caching to avoid surprising performance traps." + +msgid "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." +msgstr "The GC is manually triggered during things that cause large deallocations (such as guild removal) to prevent memory fragmentation." + +msgid "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." +msgstr "There have been many changes to the documentation for fixes both for usability, correctness, and to fix some linter errors. Thanks to everyone who contributed to those." + +msgid "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." +msgstr "The loading of the opus module has been delayed which would make the result of :func:`opus.is_loaded` somewhat surprising." + +msgid "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" +msgstr "|commands| Usernames prefixed with @ inside DMs will properly convert using the :class:`User` converter. (:dpy-issue:`2498`)" + +msgid "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" +msgstr "|tasks| The task sleeping time will now take into consideration the amount of time the task body has taken before sleeping. (:dpy-issue:`2516`)" + +msgid "v1.2.5" +msgstr "v1.2.5" + +msgid "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." +msgstr "Fix a bug that caused crashes due to missing ``animated`` field in Emoji structures in reactions." + +msgid "v1.2.4" +msgstr "v1.2.4" + +msgid "Fix a regression when :attr:`Message.channel` would be ``None``." +msgstr "Fix a regression when :attr:`Message.channel` would be ``None``." + +msgid "Fix a regression where :attr:`Message.edited_at` would not update during edits." +msgstr "Fix a regression where :attr:`Message.edited_at` would not update during edits." + +msgid "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." +msgstr "Fix a crash that would trigger during message updates (GH-2265, :dpy-issue:`2287`)." + +msgid "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." +msgstr "Fix a bug when :meth:`VoiceChannel.connect` would not return (:dpy-issue:`2274`, :dpy-issue:`2372`, :dpy-issue:`2373`, :dpy-issue:`2377`)." + +msgid "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." +msgstr "Fix a crash relating to token-less webhooks (:dpy-issue:`2364`)." + +msgid "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." +msgstr "Fix issue where :attr:`Guild.premium_subscription_count` would be ``None`` due to a Discord bug. (:dpy-issue:`2331`, :dpy-issue:`2376`)." + +msgid "v1.2.3" +msgstr "v1.2.3" + +msgid "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" +msgstr "Fix an AttributeError when accessing :attr:`Member.premium_since` in :func:`on_member_update`. (:dpy-issue:`2213`)" + +msgid "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" +msgstr "Handle :exc:`asyncio.CancelledError` in :meth:`abc.Messageable.typing` context manager. (:dpy-issue:`2218`)" + +msgid "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" +msgstr "Raise the max encoder bitrate to 512kbps to account for nitro boosting. (:dpy-issue:`2232`)" + +msgid "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" +msgstr "Properly propagate exceptions in :meth:`Client.run`. (:dpy-issue:`2237`)" + +msgid "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." +msgstr "|commands| Ensure cooldowns are properly copied when used in cog level ``command_attrs``." + +msgid "v1.2.2" +msgstr "v1.2.2" + +msgid "Audit log related attribute access have been fixed to not error out when they shouldn't have." +msgstr "Audit log related attribute access have been fixed to not error out when they shouldn't have." + +msgid "v1.2.1" +msgstr "v1.2.1" + +msgid ":attr:`User.avatar_url` and related attributes no longer raise an error." +msgstr ":attr:`User.avatar_url` and related attributes no longer raise an error." + +msgid "More compatibility shims with the ``enum.Enum`` code." +msgstr "More compatibility shims with the ``enum.Enum`` code." + +msgid "v1.2.0" +msgstr "v1.2.0" + +msgid "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." +msgstr "This update mainly brings performance improvements and various nitro boosting attributes (referred to in the API as \"premium guilds\")." + +msgid "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." +msgstr "Add :attr:`Guild.premium_tier` to query the guild's current nitro boost level." + +msgid "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." +msgstr "Add :attr:`Guild.emoji_limit`, :attr:`Guild.bitrate_limit`, :attr:`Guild.filesize_limit` to query the new limits of a guild when taking into consideration boosting." + +msgid "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." +msgstr "Add :attr:`Guild.premium_subscription_count` to query how many members are boosting a guild." + +msgid "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." +msgstr "Add :attr:`Member.premium_since` to query since when a member has boosted a guild." + +msgid "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." +msgstr "Add :attr:`Guild.premium_subscribers` to query all the members currently boosting the guild." + +msgid "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." +msgstr "Add :attr:`Guild.system_channel_flags` to query the settings for a guild's :attr:`Guild.system_channel`." + +msgid "This includes a new type named :class:`SystemChannelFlags`" +msgstr "This includes a new type named :class:`SystemChannelFlags`" + +msgid "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." +msgstr "Add :attr:`Emoji.available` to query if an emoji can be used (within the guild or otherwise)." + +msgid "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." +msgstr "Add support for animated icons in :meth:`Guild.icon_url_as` and :attr:`Guild.icon_url`." + +msgid "Add :meth:`Guild.is_icon_animated`." +msgstr "Add :meth:`Guild.is_icon_animated`." + +msgid "Add support for the various new :class:`MessageType` involving nitro boosting." +msgstr "Add support for the various new :class:`MessageType` involving nitro boosting." + +msgid "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" +msgstr "Add :attr:`VoiceRegion.india`. (:dpy-issue:`2145`)" + +msgid "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" +msgstr "Add :meth:`Embed.insert_field_at`. (:dpy-issue:`2178`)" + +msgid "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" +msgstr "Add a ``type`` attribute for all channels to their appropriate :class:`ChannelType`. (:dpy-issue:`2185`)" + +msgid "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Client.fetch_channel` to fetch a channel by ID via HTTP. (:dpy-issue:`2169`)" + +msgid "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" +msgstr "Add :meth:`Guild.fetch_channels` to fetch all channels via HTTP. (:dpy-issue:`2169`)" + +msgid "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." +msgstr "|tasks| Add :meth:`Loop.stop <.ext.tasks.Loop.stop>` to gracefully stop a task rather than cancelling." + +msgid "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." +msgstr "|tasks| Add :meth:`Loop.failed <.ext.tasks.Loop.failed>` to query if a task had failed somehow." + +msgid "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" +msgstr "|tasks| Add :meth:`Loop.change_interval <.ext.tasks.Loop.change_interval>` to change the sleep interval at runtime (:dpy-issue:`2158`, :dpy-issue:`2162`)" + +msgid "Fix internal error when using :meth:`Guild.prune_members`." +msgstr "Fix internal error when using :meth:`Guild.prune_members`." + +msgid "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." +msgstr "|commands| Fix :attr:`.Command.invoked_subcommand` being invalid in many cases." + +msgid "|tasks| Reset iteration count when the loop terminates and is restarted." +msgstr "|tasks| Reset iteration count when the loop terminates and is restarted." + +msgid "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" +msgstr "|tasks| The decorator interface now works as expected when stacking (:dpy-issue:`2154`)" + +msgid "Improve performance of all Enum related code significantly." +msgstr "Improve performance of all Enum related code significantly." + +msgid "This was done by replacing the ``enum.Enum`` code with an API compatible one." +msgstr "This was done by replacing the ``enum.Enum`` code with an API compatible one." + +msgid "This should not be a breaking change for most users due to duck-typing." +msgstr "This should not be a breaking change for most users due to duck-typing." + +msgid "Improve performance of message creation by about 1.5x." +msgstr "Improve performance of message creation by about 1.5x." + +msgid "Improve performance of message editing by about 1.5-4x depending on payload size." +msgstr "Improve performance of message editing by about 1.5-4x depending on payload size." + +msgid "Improve performance of attribute access on :class:`Member` about by 2x." +msgstr "Improve performance of attribute access on :class:`Member` about by 2x." + +msgid "Improve performance of :func:`utils.get` by around 4-6x depending on usage." +msgstr "Improve performance of :func:`utils.get` by around 4-6x depending on usage." + +msgid "Improve performance of event parsing lookup by around 2.5x." +msgstr "Improve performance of event parsing lookup by around 2.5x." + +msgid "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" +msgstr "Keyword arguments in :meth:`Client.start` and :meth:`Client.run` are now validated (:dpy-issue:`953`, :dpy-issue:`2170`)" + +msgid "The Discord error code is now shown in the exception message for :exc:`HTTPException`." +msgstr "The Discord error code is now shown in the exception message for :exc:`HTTPException`." + +msgid "Internal tasks launched by the library will now have their own custom ``__repr__``." +msgstr "Internal tasks launched by the library will now have their own custom ``__repr__``." + +msgid "All public facing types should now have a proper and more detailed ``__repr__``." +msgstr "All public facing types should now have a proper and more detailed ``__repr__``." + +msgid "|tasks| Errors are now logged via the standard :mod:`py:logging` module." +msgstr "|tasks| Errors are now logged via the standard :mod:`py:logging` module." + +msgid "v1.1.1" +msgstr "v1.1.1" + +msgid "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" +msgstr "Webhooks do not overwrite data on retrying their HTTP requests (:dpy-issue:`2140`)" + +msgid "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." +msgstr "Add back signal handling to :meth:`Client.run` due to issues some users had with proper cleanup." + +msgid "v1.1.0" +msgstr "v1.1.0" + +msgid "**There is a new extension dedicated to making background tasks easier.**" +msgstr "**There is a new extension dedicated to making background tasks easier.**" + +msgid "You can check the documentation here: :ref:`ext_tasks_api`." +msgstr "You can check the documentation here: :ref:`ext_tasks_api`." + +msgid "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" +msgstr "Add :attr:`Permissions.stream` permission. (:dpy-issue:`2077`)" + +msgid "Add equality comparison and hash support to :class:`Asset`" +msgstr "Add equality comparison and hash support to :class:`Asset`" + +msgid "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" +msgstr "Add ``compute_prune_members`` parameter to :meth:`Guild.prune_members` (:dpy-issue:`2085`)" + +msgid "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" +msgstr "Add :attr:`Client.cached_messages` attribute to fetch the message cache (:dpy-issue:`2086`)" + +msgid "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" +msgstr "Add :meth:`abc.GuildChannel.clone` to clone a guild channel. (:dpy-issue:`2093`)" + +msgid "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" +msgstr "Add ``delay`` keyword-only argument to :meth:`Message.delete` (:dpy-issue:`2094`)" + +msgid "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" +msgstr "Add support for ``<:name:id>`` when adding reactions (:dpy-issue:`2095`)" + +msgid "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" +msgstr "Add :meth:`Asset.read` to fetch the bytes content of an asset (:dpy-issue:`2107`)" + +msgid "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" +msgstr "Add :meth:`Attachment.read` to fetch the bytes content of an attachment (:dpy-issue:`2118`)" + +msgid "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." +msgstr "Add support for voice kicking by passing ``None`` to :meth:`Member.move_to`." + +msgid "``discord.ext.commands``" +msgstr "``discord.ext.commands``" + +msgid "Add new :func:`~.commands.dm_only` check." +msgstr "Add new :func:`~.commands.dm_only` check." + +msgid "Support callable converters in :data:`~.commands.Greedy`" +msgstr "Support callable converters in :data:`~.commands.Greedy`" + +msgid "Add new :class:`~.commands.MessageConverter`." +msgstr "Add new :class:`~.commands.MessageConverter`." + +msgid "This allows you to use :class:`Message` as a type hint in functions." +msgstr "This allows you to use :class:`Message` as a type hint in functions." + +msgid "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" +msgstr "Allow passing ``cls`` in the :func:`~.commands.group` decorator (:dpy-issue:`2061`)" + +msgid "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" +msgstr "Add :attr:`.Command.parents` to fetch the parents of a command (:dpy-issue:`2104`)" + +msgid "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." +msgstr "Fix :exc:`AttributeError` when using ``__repr__`` on :class:`Widget`." + +msgid "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." +msgstr "Fix issue with :attr:`abc.GuildChannel.overwrites` returning ``None`` for keys." + +msgid "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." +msgstr "Remove incorrect legacy NSFW checks in e.g. :meth:`TextChannel.is_nsfw`." + +msgid "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." +msgstr "Fix :exc:`UnboundLocalError` when :class:`RequestsWebhookAdapter` raises an error." + +msgid "Fix bug where updating your own user did not update your member instances." +msgstr "Fix bug where updating your own user did not update your member instances." + +msgid "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" +msgstr "Tighten constraints of ``__eq__`` in :class:`Spotify` objects (:dpy-issue:`2113`, :dpy-issue:`2117`)" + +msgid "Fix lambda converters in a non-module context (e.g. ``eval``)." +msgstr "Fix lambda converters in a non-module context (e.g. ``eval``)." + +msgid "Use message creation time for reference time when computing cooldowns." +msgstr "Use message creation time for reference time when computing cooldowns." + +msgid "This prevents cooldowns from triggering during e.g. a RESUME session." +msgstr "This prevents cooldowns from triggering during e.g. a RESUME session." + +msgid "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" +msgstr "Fix the default :func:`on_command_error` to work with new-style cogs (:dpy-issue:`2094`)" + +msgid "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." +msgstr "DM channels are now recognised as NSFW in :func:`~.commands.is_nsfw` check." + +msgid "Fix race condition with help commands (:dpy-issue:`2123`)" +msgstr "Fix race condition with help commands (:dpy-issue:`2123`)" + +msgid "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" +msgstr "Fix cog descriptions not showing in :class:`~.commands.MinimalHelpCommand` (:dpy-issue:`2139`)" + +msgid "Improve the performance of internal enum creation in the library by about 5x." +msgstr "Improve the performance of internal enum creation in the library by about 5x." + +msgid "Make the output of ``python -m discord --version`` a bit more useful." +msgstr "Make the output of ``python -m discord --version`` a bit more useful." + +msgid "The loop cleanup facility has been rewritten again." +msgstr "The loop cleanup facility has been rewritten again." + +msgid "The signal handling in :meth:`Client.run` has been removed." +msgstr "The signal handling in :meth:`Client.run` has been removed." + +msgid "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" +msgstr "Custom exception classes are now used for all default checks in the library (:dpy-issue:`2101`)" + +msgid "v1.0.1" +msgstr "v1.0.1" + +msgid "Fix issue with speaking state being cast to ``int`` when it was invalid." +msgstr "Fix issue with speaking state being cast to ``int`` when it was invalid." + +msgid "Fix some issues with loop cleanup that some users experienced on Linux machines." +msgstr "Fix some issues with loop cleanup that some users experienced on Linux machines." + +msgid "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" +msgstr "Fix voice handshake race condition (:dpy-issue:`2056`, :dpy-issue:`2063`)" + +msgid "v1.0.0" +msgstr "v1.0.0" + +msgid "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." +msgstr "The changeset for this version are too big to be listed here, for more information please see :ref:`the migrating page `." + +msgid "v0.16.6" +msgstr "v0.16.6" + +msgid "Fix issue with :meth:`Client.create_server` that made it stop working." +msgstr "Fix issue with :meth:`Client.create_server` that made it stop working." + +msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``." +msgstr "Fix main thread being blocked upon calling ``StreamPlayer.stop``." + +msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs." +msgstr "Handle HEARTBEAT_ACK and resume gracefully when it occurs." + +msgid "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." +msgstr "Fix race condition when pre-emptively rate limiting that caused releasing an already released lock." + +msgid "Fix invalid state errors when immediately cancelling a coroutine." +msgstr "Fix invalid state errors when immediately cancelling a coroutine." + +msgid "v0.16.1" +msgstr "v0.16.1" + +msgid "This release is just a bug fix release with some better rate limit implementation." +msgstr "This release is just a bug fix release with some better rate limit implementation." + +msgid "Servers are now properly chunked for user bots." +msgstr "Servers are now properly chunked for user bots." + +msgid "The CDN URL is now used instead of the API URL for assets." +msgstr "The CDN URL is now used instead of the API URL for assets." + +msgid "Rate limit implementation now tries to use header information if possible." +msgstr "Rate limit implementation now tries to use header information if possible." + +msgid "Event loop is now properly propagated (:dpy-issue:`420`)" +msgstr "Event loop is now properly propagated (:dpy-issue:`420`)" + +msgid "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." +msgstr "Allow falsey values in :meth:`Client.send_message` and :meth:`Client.send_file`." + +msgid "v0.16.0" +msgstr "v0.16.0" + +msgid "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." +msgstr "Add :attr:`Channel.overwrites` to get all the permission overwrites of a channel." + +msgid "Add :attr:`Server.features` to get information about partnered servers." +msgstr "Add :attr:`Server.features` to get information about partnered servers." + +msgid "Timeout when waiting for offline members while triggering :func:`on_ready`." +msgstr "Timeout when waiting for offline members while triggering :func:`on_ready`." + +msgid "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." +msgstr "The fact that we did not timeout caused a gigantic memory leak in the library that caused thousands of duplicate :class:`Member` instances causing big memory spikes." + +msgid "Discard null sequences in the gateway." +msgstr "Discard null sequences in the gateway." + +msgid "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." +msgstr "The fact these were not discarded meant that :func:`on_ready` kept being called instead of :func:`on_resumed`. Since this has been corrected, in most cases :func:`on_ready` will be called once or twice with :func:`on_resumed` being called much more often." + +msgid "v0.15.1" +msgstr "v0.15.1" + +msgid "Fix crash on duplicate or out of order reactions." +msgstr "Fix crash on duplicate or out of order reactions." + +msgid "v0.15.0" +msgstr "v0.15.0" + +msgid "Rich Embeds for messages are now supported." +msgstr "Rich Embeds for messages are now supported." + +msgid "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." +msgstr "To do so, create your own :class:`Embed` and pass the instance to the ``embed`` keyword argument to :meth:`Client.send_message` or :meth:`Client.edit_message`." + +msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message." +msgstr "Add :meth:`Client.clear_reactions` to remove all reactions from a message." + +msgid "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." +msgstr "Add support for MESSAGE_REACTION_REMOVE_ALL event, under :func:`on_reaction_clear`." + +msgid "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." +msgstr "Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for bulk permission updates." + +msgid "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." +msgstr "This allows you to use e.g. ``p.update(read_messages=True, send_messages=False)`` in a single line." + +msgid "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." +msgstr "Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is empty (i.e. has no overwrites set explicitly as true or false)." + +msgid "For the command extension, the following changed:" +msgstr "For the command extension, the following changed:" + +msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes." +msgstr "``Context`` is no longer slotted to facilitate setting dynamic attributes." + +msgid "v0.14.3" +msgstr "v0.14.3" + +msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE" +msgstr "Fix crash when dealing with MESSAGE_REACTION_REMOVE" + +msgid "Fix incorrect buckets for reactions." +msgstr "Fix incorrect buckets for reactions." + +msgid "v0.14.2" +msgstr "v0.14.2" + +msgid ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." +msgstr ":meth:`Client.wait_for_reaction` now returns a namedtuple with ``reaction`` and ``user`` attributes." + +msgid "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." +msgstr "This is for better support in the case that ``None`` is returned since tuple unpacking can lead to issues." + +msgid "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." +msgstr "Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in :meth:`Client.wait_for_reaction`." + +msgid "v0.14.1" +msgstr "v0.14.1" + +msgid "Bug fixes" +msgstr "Bug fixes" + +msgid "Fix bug with `Reaction` not being visible at import." +msgstr "Fix bug with `Reaction` not being visible at import." + +msgid "This was also breaking the documentation." +msgstr "This was also breaking the documentation." + +msgid "v0.14.0" +msgstr "v0.14.0" + +msgid "This update adds new API features and a couple of bug fixes." +msgstr "This update adds new API features and a couple of bug fixes." + +msgid "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" +msgstr "Add support for Manage Webhooks permission under :attr:`Permissions.manage_webhooks`" + +msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." +msgstr "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`." + +msgid "Add support for reactions." +msgstr "Add support for reactions." + +msgid ":meth:`Client.add_reaction` to add a reactions" +msgstr ":meth:`Client.add_reaction` to add a reactions" + +msgid ":meth:`Client.remove_reaction` to remove a reaction." +msgstr ":meth:`Client.remove_reaction` to remove a reaction." + +msgid ":meth:`Client.get_reaction_users` to get the users that reacted to a message." +msgstr ":meth:`Client.get_reaction_users` to get the users that reacted to a message." + +msgid ":attr:`Permissions.add_reactions` permission bit support." +msgstr ":attr:`Permissions.add_reactions` permission bit support." + +msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." +msgstr "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`." + +msgid ":attr:`Message.reactions` to get reactions from a message." +msgstr ":attr:`Message.reactions` to get reactions from a message." + +msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." +msgstr ":meth:`Client.wait_for_reaction` to wait for a reaction from a user." + +msgid "Fix bug with Paginator still allowing lines that are too long." +msgstr "Fix bug with Paginator still allowing lines that are too long." + +msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." +msgstr "Fix the :attr:`Permissions.manage_emojis` bit being incorrect." + +msgid "v0.13.0" +msgstr "v0.13.0" + +msgid "This is a backwards compatible update with new features." +msgstr "This is a backwards compatible update with new features." + +msgid "Add the ability to manage emojis." +msgstr "Add the ability to manage emojis." + +msgid ":meth:`Client.create_custom_emoji` to create new emoji." +msgstr ":meth:`Client.create_custom_emoji` to create new emoji." + +msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji." +msgstr ":meth:`Client.edit_custom_emoji` to edit an old emoji." + +msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji." +msgstr ":meth:`Client.delete_custom_emoji` to delete a custom emoji." + +msgid "Add new :attr:`Permissions.manage_emojis` toggle." +msgstr "Add new :attr:`Permissions.manage_emojis` toggle." + +msgid "This applies for :class:`PermissionOverwrite` as well." +msgstr "This applies for :class:`PermissionOverwrite` as well." + +msgid "Add new statuses for :class:`Status`." +msgstr "Add new statuses for :class:`Status`." + +msgid ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." +msgstr ":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do Not Disturb." + +msgid ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." +msgstr ":attr:`Status.invisible` for setting your status to invisible (please see the docs for a caveat)." + +msgid "Deprecate :meth:`Client.change_status`" +msgstr "Deprecate :meth:`Client.change_status`" + +msgid "Use :meth:`Client.change_presence` instead for better more up to date functionality." +msgstr "Use :meth:`Client.change_presence` instead for better more up to date functionality." + +msgid "This method is subject for removal in a future API version." +msgstr "This method is subject for removal in a future API version." + +msgid "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." +msgstr "Add :meth:`Client.change_presence` for changing your status with the new Discord API change." + +msgid "This is the only method that allows changing your status to invisible or do not disturb." +msgstr "This is the only method that allows changing your status to invisible or do not disturb." + +msgid "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" +msgstr "Paginator pages do not exceed their max_size anymore (:dpy-issue:`340`)" + +msgid "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." +msgstr "Do Not Disturb users no longer show up offline due to the new :class:`Status` changes." + +msgid "v0.12.0" +msgstr "v0.12.0" + +msgid "This is a bug fix update that also comes with new features." +msgstr "This is a bug fix update that also comes with new features." + +msgid "Add custom emoji support." +msgstr "Add custom emoji support." + +msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`" +msgstr "Adds a new class to represent a custom Emoji named :class:`Emoji`" + +msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`." +msgstr "Adds a utility generator function, :meth:`Client.get_all_emojis`." + +msgid "Adds a list of emojis on a server, :attr:`Server.emojis`." +msgstr "Adds a list of emojis on a server, :attr:`Server.emojis`." + +msgid "Adds a new event, :func:`on_server_emojis_update`." +msgstr "Adds a new event, :func:`on_server_emojis_update`." + +msgid "Add new server regions to :class:`ServerRegion`" +msgstr "Add new server regions to :class:`ServerRegion`" + +msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." +msgstr ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`." + +msgid "Add support for new pinned system message under :attr:`MessageType.pins_add`." +msgstr "Add support for new pinned system message under :attr:`MessageType.pins_add`." + +msgid "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." +msgstr "Add order comparisons for :class:`Role` to allow it to be compared with regards to hierarchy." + +msgid "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." +msgstr "This means that you can now do ``role_a > role_b`` etc to check if ``role_b`` is lower in the hierarchy." + +msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." +msgstr "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy." + +msgid "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." +msgstr "Add :attr:`Member.server_permissions` to get a member's server permissions without their channel specific overwrites." + +msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." +msgstr "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID." + +msgid "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." +msgstr "Add a new ``Player`` property, ``Player.error`` to fetch the error that stopped the player." + +msgid "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." +msgstr "To help with this change, a player's ``after`` function can now take a single parameter denoting the current player." + +msgid "Add support for server verification levels." +msgstr "Add support for server verification levels." + +msgid "Adds a new enum called :class:`VerificationLevel`." +msgstr "Adds a new enum called :class:`VerificationLevel`." + +msgid "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." +msgstr "This enum can be used in :meth:`Client.edit_server` under the ``verification_level`` keyword argument." + +msgid "Adds a new attribute in the server, :attr:`Server.verification_level`." +msgstr "Adds a new attribute in the server, :attr:`Server.verification_level`." + +msgid "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." +msgstr "Add :attr:`Server.voice_client` shortcut property for :meth:`Client.voice_client_in`." + +msgid "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." +msgstr "This is technically old (was added in v0.10.0) but was undocumented until v0.12.0." + +msgid "For the command extension, the following are new:" +msgstr "For the command extension, the following are new:" + +msgid "Add custom emoji converter." +msgstr "Add custom emoji converter." + +msgid "All default converters that can take IDs can now convert via ID." +msgstr "All default converters that can take IDs can now convert via ID." + +msgid "Add coroutine support for ``Bot.command_prefix``." +msgstr "Add coroutine support for ``Bot.command_prefix``." + +msgid "Add a method to reset command cooldown." +msgstr "Add a method to reset command cooldown." + +msgid "Fix bug that caused the library to not work with the latest ``websockets`` library." +msgstr "Fix bug that caused the library to not work with the latest ``websockets`` library." + +msgid "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" +msgstr "Fix bug that leaked keep alive threads (:dpy-issue:`309`)" + +msgid "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." +msgstr "Fix bug that disallowed :class:`ServerRegion` from being used in :meth:`Client.edit_server`." + +msgid "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." +msgstr "Fix bug in :meth:`Channel.permissions_for` that caused permission resolution to happen out of order." + +msgid "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." +msgstr "Fix bug in :attr:`Member.top_role` that did not account for same-position roles." + +msgid "v0.11.0" +msgstr "v0.11.0" + +msgid "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." +msgstr "This is a minor bug fix update that comes with a gateway update (v5 -> v6)." + +msgid "Breaking Changes" +msgstr "Breaking Changes" + +msgid "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." +msgstr "``Permissions.change_nicknames`` has been renamed to :attr:`Permissions.change_nickname` to match the UI." + +msgid "Add the ability to prune members via :meth:`Client.prune_members`." +msgstr "Add the ability to prune members via :meth:`Client.prune_members`." + +msgid "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." +msgstr "Switch the websocket gateway version to v6 from v5. This allows the library to work with group DMs and 1-on-1 calls." + +msgid "Add :attr:`AppInfo.owner` attribute." +msgstr "Add :attr:`AppInfo.owner` attribute." + +msgid "Add :class:`CallMessage` for group voice call messages." +msgstr "Add :class:`CallMessage` for group voice call messages." + +msgid "Add :class:`GroupCall` for group voice call information." +msgstr "Add :class:`GroupCall` for group voice call information." + +msgid "Add :attr:`Message.system_content` to get the system message." +msgstr "Add :attr:`Message.system_content` to get the system message." + +msgid "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." +msgstr "Add the remaining VIP servers and the Brazil servers into :class:`ServerRegion` enum." + +msgid "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." +msgstr "Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to redirect stderr." + +msgid "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." +msgstr "The library now handles implicit permission resolution in :meth:`Channel.permissions_for`." + +msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." +msgstr "Add :attr:`Server.mfa_level` to query a server's 2FA requirement." + +msgid "Add :attr:`Permissions.external_emojis` permission." +msgstr "Add :attr:`Permissions.external_emojis` permission." + +msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." +msgstr "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`." + +msgid "For backwards compatibility, the member object will have properties mirroring the old behaviour." +msgstr "For backwards compatibility, the member object will have properties mirroring the old behaviour." + +msgid "Command cooldown system with the ``cooldown`` decorator." +msgstr "Command cooldown system with the ``cooldown`` decorator." + +msgid "``UserInputError`` exception for the hierarchy for user input related errors." +msgstr "``UserInputError`` exception for the hierarchy for user input related errors." + +msgid ":attr:`Client.email` is now saved when using a token for user accounts." +msgstr ":attr:`Client.email` is now saved when using a token for user accounts." + +msgid "Fix issue when removing roles out of order." +msgstr "Fix issue when removing roles out of order." + +msgid "Fix bug where discriminators would not update." +msgstr "Fix bug where discriminators would not update." + +msgid "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." +msgstr "Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to disconnect seemingly randomly." + +msgid "For the command extension, the following bug fixes apply:" +msgstr "For the command extension, the following bug fixes apply:" + +msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses." +msgstr "``Bot.check`` decorator is actually a decorator not requiring parentheses." + +msgid "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." +msgstr "``Bot.remove_command`` and ``Group.remove_command`` no longer throw if the command doesn't exist." + +msgid "Command names are no longer forced to be ``lower()``." +msgstr "Command names are no longer forced to be ``lower()``." + +msgid "Fix a bug where Member and User converters failed to work in private message contexts." +msgstr "Fix a bug where Member and User converters failed to work in private message contexts." + +msgid "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." +msgstr "``HelpFormatter`` now ignores hidden commands when deciding the maximum width." + +msgid "v0.10.0" +msgstr "v0.10.0" + +msgid "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." +msgstr "For breaking changes, see `0.10.0 migration `_. The breaking changes listed there will not be enumerated below. Since this version is rather a big departure from v0.9.2, this change log will be non-exhaustive." + +msgid "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." +msgstr "The library is now fully ``asyncio`` compatible, allowing you to write non-blocking code a lot more easily." + +msgid "The library now fully handles 429s and unconditionally retries on 502s." +msgstr "The library now fully handles 429s and unconditionally retries on 502s." + +msgid "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." +msgstr "A new command extension module was added but is currently undocumented. Figuring it out is left as an exercise to the reader." + +msgid "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." +msgstr "Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote permission errors or 404 errors." + +msgid "Added :meth:`Client.delete_invite` to revoke invites." +msgstr "Added :meth:`Client.delete_invite` to revoke invites." + +msgid "Added support for sending voice. Check :class:`VoiceClient` for more details." +msgstr "Added support for sending voice. Check :class:`VoiceClient` for more details." + +msgid "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." +msgstr "Added :meth:`Client.wait_for_message` coroutine to aid with follow up commands." + +msgid "Added :data:`version_info` named tuple to check version info of the library." +msgstr "Added :data:`version_info` named tuple to check version info of the library." + +msgid "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." +msgstr "Login credentials are now cached to have a faster login experience. You can disable this by passing in ``cache_auth=False`` when constructing a :class:`Client`." + +msgid "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." +msgstr "New utility function, :func:`discord.utils.get` to simplify retrieval of items based on attributes." + +msgid "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." +msgstr "All data classes now support ``!=``, ``==``, ``hash(obj)`` and ``str(obj)``." + +msgid "Added :meth:`Client.get_bans` to get banned members from a server." +msgstr "Added :meth:`Client.get_bans` to get banned members from a server." + +msgid "Added :meth:`Client.invites_from` to get currently active invites in a server." +msgstr "Added :meth:`Client.invites_from` to get currently active invites in a server." + +msgid "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." +msgstr "Added :attr:`Server.me` attribute to get the :class:`Member` version of :attr:`Client.user`." + +msgid "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." +msgstr "Most data classes now support a ``hash(obj)`` function to allow you to use them in ``set`` or ``dict`` classes or subclasses." + +msgid "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." +msgstr "Add :meth:`Message.clean_content` to get a text version of the content with the user and channel mentioned changed into their names." + +msgid "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." +msgstr "Added a way to remove the messages of the user that just got banned in :meth:`Client.ban`." + +msgid "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." +msgstr "Added :meth:`Client.wait_until_ready` to facilitate easy creation of tasks that require the client cache to be ready." + +msgid "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." +msgstr "Added :meth:`Client.wait_until_login` to facilitate easy creation of tasks that require the client to be logged in." + +msgid "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." +msgstr "Add :class:`discord.Game` to represent any game with custom text to send to :meth:`Client.change_status`." + +msgid "Add :attr:`Message.nonce` attribute." +msgstr "Add :attr:`Message.nonce` attribute." + +msgid "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." +msgstr "Add :meth:`Member.permissions_in` as another way of doing :meth:`Channel.permissions_for`." + +msgid "Add :meth:`Client.move_member` to move a member to another voice channel." +msgstr "Add :meth:`Client.move_member` to move a member to another voice channel." + +msgid "You can now create a server via :meth:`Client.create_server`." +msgstr "You can now create a server via :meth:`Client.create_server`." + +msgid "Added :meth:`Client.edit_server` to edit existing servers." +msgstr "Added :meth:`Client.edit_server` to edit existing servers." + +msgid "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." +msgstr "Added :meth:`Client.server_voice_state` to server mute or server deafen a member." + +msgid "If you are being rate limited, the library will now handle it for you." +msgstr "If you are being rate limited, the library will now handle it for you." + +msgid "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." +msgstr "Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger when a member is banned/unbanned." + +msgid "Performance Improvements" +msgstr "Performance Improvements" + +msgid "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." +msgstr "All data classes now use ``__slots__`` which greatly reduce the memory usage of things kept in cache." + +msgid "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." +msgstr "Due to the usage of ``asyncio``, the CPU usage of the library has gone down significantly." + +msgid "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." +msgstr "A lot of the internal cache lists were changed into dictionaries to change the ``O(n)`` lookup into ``O(1)``." + +msgid "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." +msgstr "Compressed READY is now on by default. This means if you're on a lot of servers (or maybe even a few) you would receive performance improvements by having to download and process less data." + +msgid "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." +msgstr "While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid unnecessary unicode character lookups." + +msgid "Fix bug where guilds being updated did not edit the items in cache." +msgstr "Fix bug where guilds being updated did not edit the items in cache." + +msgid "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." +msgstr "Fix bug where ``member.roles`` were empty upon joining instead of having the ``@everyone`` role." + +msgid "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." +msgstr "Fix bug where :meth:`Role.is_everyone` was not being set properly when the role was being edited." + +msgid ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." +msgstr ":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep the discord API limitation." + +msgid "Fix bug where a role being deleted would trigger a ``ValueError``." +msgstr "Fix bug where a role being deleted would trigger a ``ValueError``." + +msgid "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." +msgstr "Fix bug where :meth:`Permissions.kick_members` and :meth:`Permissions.ban_members` were flipped." + +msgid "Mentions are now triggered normally. This was changed due to the way discord handles it internally." +msgstr "Mentions are now triggered normally. This was changed due to the way discord handles it internally." + +msgid "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." +msgstr "Fix issue when a :class:`Message` would attempt to upgrade a :attr:`Message.server` when the channel is a :class:`Object`." + +msgid "Unavailable servers were not being added into cache, this has been corrected." +msgstr "Unavailable servers were not being added into cache, this has been corrected." + diff --git a/docs/locales/zh_CN/LC_MESSAGES/quickstart.po b/docs/locales/zh_CN/LC_MESSAGES/quickstart.po new file mode 100644 index 0000000000..018b5372f2 --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/quickstart.po @@ -0,0 +1,97 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Quickstart" +msgstr "Quickstart" + +msgid "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." +msgstr "This page gives a brief introduction to the library. It assumes you have the library installed. If you don't, check the :ref:`installing` portion." + +msgid "A Minimal Bot" +msgstr "A Minimal Bot" + +msgid "Let's make a bot that responds to a specific message and walk you through it." +msgstr "Let's make a bot that responds to a specific message and walk you through it." + +msgid "It looks something like this:" +msgstr "It looks something like this:" + +msgid "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." +msgstr "Because this example utilizes message content, it requires the :attr:`Intents.message_content` privileged intent." + +msgid "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." +msgstr "Let's name this file ``example_bot.py``. Make sure not to name it ``discord.py`` as that'll conflict with the library." + +msgid "There's a lot going on here, so let's walk you through it step by step:" +msgstr "There's a lot going on here, so let's walk you through it step by step:" + +msgid "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." +msgstr "The first line just imports the library, if this raises a `ModuleNotFoundError` or `ImportError` then head on over to :ref:`installing` section to properly install." + +msgid "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." +msgstr "Next, we create an instance of a :class:`Client`. This client is our connection to Discord." + +msgid "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." +msgstr "We then use the :meth:`Client.event` decorator to register an event. This library has many events. Since this library is asynchronous, we do things in a \"callback\" style manner." + +msgid "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." +msgstr "A callback is essentially a function that is called when something happens. In our case, the :func:`on_ready` event is called when the bot has finished logging in and setting things up and the :func:`on_message` event is called when the bot has received a message." + +msgid "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." +msgstr "Since the :func:`on_message` event triggers for *every* message received, we have to make sure that we ignore messages from ourselves. We do this by checking if the :attr:`Message.author` is the same as the :attr:`Client.user`." + +msgid "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." +msgstr "Afterwards, we check if the :class:`Message.content` starts with ``'$hello'``. If it does, then we send a message in the channel it was used in with ``'Hello!'``. This is a basic way of handling commands, which can be later automated with the :doc:`./ext/commands/index` framework." + +msgid "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." +msgstr "Finally, we run the bot with our login token. If you need help getting your token or creating a bot, look in the :ref:`discord-intro` section." + +msgid "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." +msgstr "Now that we've made a bot, we have to *run* the bot. Luckily, this is simple since this is just a Python script, we can run it directly." + +msgid "On Windows:" +msgstr "On Windows:" + +msgid "On other systems:" +msgstr "On other systems:" + +msgid "Now you can try playing around with your basic bot." +msgstr "Now you can try playing around with your basic bot." + +msgid "A Minimal Bot with Slash Commands" +msgstr "A Minimal Bot with Slash Commands" + +msgid "As a continuation, let's create a bot that registers a simple slash command!" +msgstr "As a continuation, let's create a bot that registers a simple slash command!" + +msgid "Let's look at the differences compared to the previous example, step-by-step:" +msgstr "Let's look at the differences compared to the previous example, step-by-step:" + +msgid "The first line remains unchanged." +msgstr "The first line remains unchanged." + +msgid "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." +msgstr "Next, we create an instance of :class:`.Bot`. This is different from :class:`.Client`, as it supports slash command creation and other features, while inheriting all the features of :class:`.Client`." + +msgid "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." +msgstr "We then use the :meth:`.Bot.slash_command` decorator to register a new slash command. The ``guild_ids`` attribute contains a list of guilds where this command will be active. If you omit it, the command will be globally available, and may take up to an hour to register." + +msgid "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." +msgstr "Afterwards, we trigger a response to the slash command in the form of a text reply. Please note that all slash commands must have some form of response, otherwise they will fail." + +msgid "Finally, we, once again, run the bot with our login token." +msgstr "Finally, we, once again, run the bot with our login token." + +msgid "Congratulations! Now you have created your first slash command!" +msgstr "Congratulations! Now you have created your first slash command!" + diff --git a/docs/locales/zh_CN/LC_MESSAGES/version_guarantees.po b/docs/locales/zh_CN/LC_MESSAGES/version_guarantees.po new file mode 100644 index 0000000000..fc3d82a0ee --- /dev/null +++ b/docs/locales/zh_CN/LC_MESSAGES/version_guarantees.po @@ -0,0 +1,58 @@ +msgid "" +msgstr "" +"Project-Id-Version: Pycord Documentation\\n" +"POT-Creation-Date: 2024-05-23 07:30-0000\\n" +"PO-Revision-Date: 2024-05-23 07:30-0000\\n" +"Last-Translator: \\n" +"Language-Team: none\\n" +"MIME-Version: 1.0\\n" +"Content-Type: text/plain; charset=UTF-8\\n" +"Content-Transfer-Encoding: 8bit\\n" +"Plural-Forms: nplurals=1; plural=0;\\n" +"X-Generator: Crowdin\\n" + +msgid "Version Guarantees" +msgstr "Version Guarantees" + +msgid "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." +msgstr "The library follows the `semantic versioning principle `_ which means that the major version is updated every time there is an incompatible API change. However due to the lack of guarantees on the Discord side when it comes to breaking changes along with the fairly dynamic nature of Python it can be hard to discern what can be considered a breaking change and what isn't." + +msgid "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." +msgstr "The first thing to keep in mind is that breaking changes only apply to **publicly documented functions and classes**. If it's not listed in the documentation here then it is not part of the public API and is thus bound to change. This includes attributes that start with an underscore or functions without an underscore that are not documented." + +msgid "The examples below are non-exhaustive." +msgstr "The examples below are non-exhaustive." + +msgid "Examples of Breaking Changes" +msgstr "Examples of Breaking Changes" + +msgid "Changing the default parameter value to something else." +msgstr "Changing the default parameter value to something else." + +msgid "Renaming a function without an alias to an old function." +msgstr "Renaming a function without an alias to an old function." + +msgid "Adding or removing parameters to an event." +msgstr "Adding or removing parameters to an event." + +msgid "Examples of Non-Breaking Changes" +msgstr "Examples of Non-Breaking Changes" + +msgid "Adding or removing private underscored attributes." +msgstr "Adding or removing private underscored attributes." + +msgid "Adding an element into the ``__slots__`` of a data class." +msgstr "Adding an element into the ``__slots__`` of a data class." + +msgid "Changing the behaviour of a function to fix a bug." +msgstr "Changing the behaviour of a function to fix a bug." + +msgid "Changes in the documentation." +msgstr "Changes in the documentation." + +msgid "Modifying the internal HTTP handling." +msgstr "Modifying the internal HTTP handling." + +msgid "Upgrading the dependencies to a new version, major or otherwise." +msgstr "Upgrading the dependencies to a new version, major or otherwise." + diff --git a/docs/make.bat b/docs/make.bat index aedd246e52..cc9a036a79 100644 --- a/docs/make.bat +++ b/docs/make.bat @@ -5,7 +5,7 @@ REM Command file for Sphinx documentation if "%SPHINXBUILD%" == "" ( set SPHINXBUILD=sphinx-build ) -set BUILDDIR=_build +set BUILDDIR=build set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% . set I18NSPHINXOPTS=%SPHINXOPTS% . if NOT "%PAPER%" == "" ( diff --git a/pycord.png b/pycord.png new file mode 100644 index 0000000000000000000000000000000000000000..5fe58a27ec6be90a557d52b5513bdb3648c70195 GIT binary patch literal 59586 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 literal 0 HcmV?d00001 diff --git a/pyproject.toml b/pyproject.toml index 0f3af97474..abbc5290bb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [build-system] requires = [ - "setuptools>=62.6,<70", - "setuptools-scm>=6.2,<8", + "setuptools>=62.6,<=72.2.0", + "setuptools-scm>=6.2,<=8.1.0", ] build-backend = "setuptools.build_meta" @@ -11,8 +11,8 @@ authors = [ {name = "Pycord Development"} ] description = "A Python wrapper for the Discord API" -readme = "README.rst" -requires-python = ">=3.8" +readme = {content-type = "text/x-rst", file = "README.rst"} +requires-python = ">=3.9" license = {text = "MIT"} classifiers = [ "Development Status :: 5 - Production/Stable", @@ -20,7 +20,6 @@ classifiers = [ "Intended Audience :: Developers", "Natural Language :: English", "Operating System :: OS Independent", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", @@ -53,10 +52,12 @@ packages = [ "discord.ext.tasks", "discord.ext.pages", "discord.ext.bridge", + "discord.bin", ] [tool.setuptools.dynamic] dependencies = {file = "requirements/_.txt"} +readme = {content-type = "text/x-rst", file = "README.rst"} [tool.setuptools.dynamic.optional-dependencies] docs = {file = "requirements/docs.txt"} @@ -66,7 +67,7 @@ voice = {file = "requirements/voice.txt"} [tool.setuptools_scm] [tool.black] -target-version = ['py38', 'py39', 'py310', 'py311', 'py312'] +target-version = ['py39', 'py310', 'py311', 'py312'] [tool.isort] profile = "black" @@ -85,7 +86,7 @@ extension-pkg-whitelist = [ "pydantic", "ujson" ] -py-version = 3.8 +py-version = 3.9 [tool.pylint.messages_control] enable = [ diff --git a/requirements/_locale.txt b/requirements/_locale.txt new file mode 100644 index 0000000000..c4d90559c4 --- /dev/null +++ b/requirements/_locale.txt @@ -0,0 +1,4 @@ +-r all.txt +build>=1.2.1 +setuptools>=72.2.0 +setuptools_scm>=8.1.0 diff --git a/requirements/_release.txt b/requirements/_release.txt new file mode 100644 index 0000000000..9969e06944 --- /dev/null +++ b/requirements/_release.txt @@ -0,0 +1,5 @@ +-r all.txt +setuptools>=72.2.0 +setuptools_scm>=8.1.0 +twine>=5.1.1 +build>=1.2.1 diff --git a/requirements/dev.txt b/requirements/dev.txt index 43a30c6eb5..a520804fe5 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -1,11 +1,11 @@ -r _.txt -pylint~=3.2.3 -pytest~=8.2.2 -pytest-asyncio~=0.23.3 +pylint~=3.2.7 +pytest~=8.3.2 +pytest-asyncio~=0.23.8 # pytest-order~=1.0.1 -mypy~=1.10.1 -coverage~=7.5 -pre-commit==3.5.0 +mypy~=1.11.2 +coverage~=7.6 +pre-commit==3.8.0 codespell==2.3.0 bandit==1.7.9 -flake8==7.1.0 +flake8==7.1.1 diff --git a/requirements/docs.txt b/requirements/docs.txt index d309bbdf31..1d9f4ba43d 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -1,8 +1,11 @@ -sphinx==5.3.0 +sphinx==8.0.2 sphinxcontrib_trio==1.1.2 -sphinxcontrib-websupport==1.2.4 -myst-parser==1.0.0 +sphinxcontrib-websupport==2.0.0 +myst-parser[linkify]==4.0.0 sphinxext-opengraph==0.9.1 sphinx-copybutton==0.5.2 -furo==2023.3.23 -sphinx-autodoc-typehints==1.23.0 +furo==2024.8.6 +sphinx-autodoc-typehints==2.2.3 +sphinx-intl==2.2.0 +typing_extensions==4.12.2 +levenshtein==0.25.1

    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 MA|WyH1B99X3y|MVx&QzG literal 0 HcmV?d00001 diff --git a/docs/build/locales/.doctrees/api/utils.doctree b/docs/build/locales/.doctrees/api/utils.doctree new file mode 100644 index 0000000000000000000000000000000000000000..4df3c01bc9fed74cbfb051ddd6117ad191fbe9b6 GIT binary patch literal 218733 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 m?=(3&(*p~WLuaa1QNV)cyKj}N zt2*`Jv6q0d4?$z;K7gn!pxvwhp%trW$pa6oec=y)7epS|m3TnWJ|L~M5)#r139a^b zZq==l;&Q=bn3Cn|kBRD;MOSxEhYQ?H#oY%kq4Sg^8H8d@~+0 zFG{|hJoC57*OC>{2#kB79|tB i4x$Rm3^OBcQxj^kB+YMV8fyctQ7e;o3Lf_LZ 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